u32 val;
struct zram *zram = dev_to_zram(dev);
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
val = init_done(zram);
return sysfs_emit(buf, "%u\n", val);
if (buf == tmp) /* no chars parsed, invalid input */
return -EINVAL;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
zram->limit_pages = PAGE_ALIGN(limit) >> PAGE_SHIFT;
return len;
if (err || val != 0)
return -EINVAL;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
if (init_done(zram)) {
atomic_long_set(&zram->stats.max_used_pages,
zs_get_total_pages(zram->mem_pool));
return -EINVAL;
}
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
if (!init_done(zram))
return -EINVAL;
struct zram *zram = dev_to_zram(dev);
ssize_t ret;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
ret = sysfs_emit(buf,
"%8llu %8llu %8llu\n",
FOUR_K((u64)atomic64_read(&zram->stats.bd_count)),
if (kstrtobool(buf, &val))
return -EINVAL;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
if (init_done(zram)) {
return -EBUSY;
}
bool val;
struct zram *zram = dev_to_zram(dev);
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
val = zram->wb_compressed;
return sysfs_emit(buf, "%d\n", val);
if (kstrtoull(buf, 10, &val))
return -EINVAL;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
zram->wb_limit_enable = val;
return len;
bool val;
struct zram *zram = dev_to_zram(dev);
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
val = zram->wb_limit_enable;
return sysfs_emit(buf, "%d\n", val);
*/
val = rounddown(val, PAGE_SIZE / 4096);
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
zram->bd_wb_limit = val;
return len;
u64 val;
struct zram *zram = dev_to_zram(dev);
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
val = zram->bd_wb_limit;
return sysfs_emit(buf, "%llu\n", val);
if (!val)
return -EINVAL;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
zram->wb_batch_size = val;
return len;
u32 val;
struct zram *zram = dev_to_zram(dev);
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
val = zram->wb_batch_size;
return sysfs_emit(buf, "%u\n", val);
char *p;
ssize_t ret;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
file = zram->backing_dev;
if (!file) {
memcpy(buf, "none\n", 5);
if (!file_name)
return -ENOMEM;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
if (init_done(zram)) {
pr_info("Can't setup backing device for initialized device\n");
err = -EBUSY;
static void zram_account_writeback_rollback(struct zram *zram)
{
- lockdep_assert_held_write(&zram->init_lock);
+ lockdep_assert_held_write(&zram->dev_lock);
if (zram->wb_limit_enable)
zram->bd_wb_limit += 1UL << (PAGE_SHIFT - 12);
static void zram_account_writeback_submit(struct zram *zram)
{
- lockdep_assert_held_write(&zram->init_lock);
+ lockdep_assert_held_write(&zram->dev_lock);
if (zram->wb_limit_enable && zram->bd_wb_limit > 0)
zram->bd_wb_limit -= 1UL << (PAGE_SHIFT - 12);
ssize_t ret = len;
int err, mode = 0;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
if (!init_done(zram))
return -EINVAL;
if (!kbuf)
return -ENOMEM;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
if (!init_done(zram)) {
kvfree(kbuf);
return -EINVAL;
return -EINVAL;
}
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
if (init_done(zram)) {
kfree(compressor);
pr_info("Can't change algorithm for initialized device\n");
struct zram *zram = dev_to_zram(dev);
ssize_t sz;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
sz = zcomp_available_show(zram->comp_algs[ZRAM_PRIMARY_COMP], buf, 0);
return sz;
}
ssize_t sz = 0;
u32 prio;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
for (prio = ZRAM_SECONDARY_COMP; prio < ZRAM_MAX_COMPS; prio++) {
if (!zram->comp_algs[prio])
continue;
{
struct zram *zram = dev_to_zram(dev);
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
if (!init_done(zram))
return -EINVAL;
struct zram *zram = dev_to_zram(dev);
ssize_t ret;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
ret = sysfs_emit(buf,
"%8llu %8llu 0 %8llu\n",
(u64)atomic64_read(&zram->stats.failed_reads),
memset(&pool_stats, 0x00, sizeof(struct zs_pool_stats));
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
if (init_done(zram)) {
mem_used = zs_get_total_pages(zram->mem_pool);
zs_pool_stats(zram->mem_pool, &pool_stats);
struct zram *zram = dev_to_zram(dev);
ssize_t ret;
- guard(rwsem_read)(&zram->init_lock);
+ guard(rwsem_read)(&zram->dev_lock);
ret = sysfs_emit(buf,
"version: %d\n0 %8llu\n",
version,
if (threshold >= huge_class_size)
return -EINVAL;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
if (!init_done(zram))
return -EINVAL;
static void zram_reset_device(struct zram *zram)
{
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
zram->limit_pages = 0;
if (!disksize)
return -EINVAL;
- guard(rwsem_write)(&zram->init_lock);
+ guard(rwsem_write)(&zram->dev_lock);
if (init_done(zram)) {
pr_info("Cannot change disksize for initialized device\n");
return -EBUSY;
goto out_free_dev;
device_id = ret;
- init_rwsem(&zram->init_lock);
+ init_rwsem(&zram->dev_lock);
#ifdef CONFIG_ZRAM_WRITEBACK
zram->wb_batch_size = 32;
zram->wb_compressed = false;