Re: [PATCH v5 2/4] zram: reject zero-size dictionary

From: Sergey Senozhatsky

Date: Tue Aug 04 2026 - 01:36:55 EST


On (26/08/03 22:12), Haoqin Huang wrote:
[..]
> @@ -1700,8 +1700,12 @@ static int comp_params_store(struct zram *zram, u32 prio, s32 level,
> INT_MAX,
> NULL,
> READING_POLICY);
> - if (sz < 0)
> + if (sz <= 0) {
> + pr_err("failed to load dictionary %s (err=%zd)\n",
> + dict_path, sz);

So for empty file this will read

"failed to load dictionary foo-bar (err=0)"

which might be confusing. I wonder if we want to separate these two:

if (sz < 0) {
pr_err("failed to load dictionary %s (err=%zd)\n",
dict_path, sz);
return sz;
}
if (sz == 0) {
pr_err("failed to load dictionary %s (empty file)\n",
dict_path);
return -EINVAL;
}