mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
Merge branch 'staging/kernel-msm/MMI-U1UGS34.23-110-23-2' into lineage-22.2
Based on tag 'MMI-U1UGS34.23-110-23-2' of https://github.com/MotorolaMobilityLLC/kernel-msm "Fogos push for Android 14" * staging/kernel-msm/MMI-U1UGS34.23-110-23-2: (698 commits) mmc: sdhci-msm: Move MMC_CAP2_MAX_DISCARD_SIZE to prevent merge conflict Reapply "UPSTREAM: binder: fix the missing BR_FROZEN_REPLY in binder_return_strings" Revert "qseecom: Suppress suspend warning if without bus scaling." Revert "Penang: fix for device suspend tests fail. [1/2]" Revert "Penang: resolve kasan panic" Revert "Penang: kasan panic" Revert "penang: device suspend tests fail" Revert "net: qrtr: get svc_id before queueing sk_buff" Revert "af_unix: Do not use atomic ops for unix_sk(sk)->inflight." Revert "af_unix: Fix garbage collector racing against connect()" Revert "BACKPORT: net: fix __dst_negative_advice() race" Revert "ANDROID: ABI fixup for abi break in struct dst_ops" Revert "BACKPORT:sched: Provide sched_set_fifo()" Revert "msm: npu: Fix use after free issue" Revert "fs:EROFS:Porting 5.10 erofs to 5.4" Revert "BACKPORT:erofs: add per-cpu threads for decompression as an option" Revert "UPSTREAM: erofs: fix an error code in z_erofs_init_zip_subsystem()" msm: adsprpc: Avoid taking reference for group_info adsprpc: Handle UAF scenario in put_args msm: adsprpc: use-after-free (UAF) in global maps ... Change-Id: Ia48438f247670d77560472205994632fa62062dd
This commit is contained in:
commit
869b1e64a6
229 changed files with 20042 additions and 329 deletions
|
|
@ -25,6 +25,7 @@
|
|||
#include <linux/genhd.h>
|
||||
#include <linux/highmem.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/swap.h>
|
||||
#include <linux/backing-dev.h>
|
||||
#include <linux/string.h>
|
||||
#include <linux/vmalloc.h>
|
||||
|
|
@ -1636,6 +1637,27 @@ static void zram_slot_free_notify(struct block_device *bdev,
|
|||
zram_slot_unlock(zram, index);
|
||||
}
|
||||
|
||||
/* Moto huangzq2: check sync_io state on swap entry,
|
||||
* return 0 on wb page, else return 1.
|
||||
*/
|
||||
#ifdef CONFIG_ZRAM_WRITEBACK
|
||||
static int zram_ioctl(struct block_device *bdev, fmode_t mode,
|
||||
unsigned int cmd, unsigned long index)
|
||||
{
|
||||
struct zram *zram;
|
||||
int has_sync_io = 1;
|
||||
|
||||
if (cmd != SWP_SYNCHRONOUS_IO) return -EINVAL;
|
||||
|
||||
zram = bdev->bd_disk->private_data;
|
||||
zram_slot_lock(zram, index);
|
||||
has_sync_io = zram_test_flag(zram, index, ZRAM_WB) ? 0 : 1;
|
||||
zram_slot_unlock(zram, index);
|
||||
|
||||
return has_sync_io;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int zram_rw_page(struct block_device *bdev, sector_t sector,
|
||||
struct page *page, unsigned int op)
|
||||
{
|
||||
|
|
@ -1828,6 +1850,9 @@ static int zram_open(struct block_device *bdev, fmode_t mode)
|
|||
static const struct block_device_operations zram_devops = {
|
||||
.open = zram_open,
|
||||
.swap_slot_free_notify = zram_slot_free_notify,
|
||||
#ifdef CONFIG_ZRAM_WRITEBACK
|
||||
.ioctl = zram_ioctl,
|
||||
#endif
|
||||
.rw_page = zram_rw_page,
|
||||
.owner = THIS_MODULE
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in a new issue