From: Dominique Martinet <dominique.martinet@atmark-techno.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: stable@vger.kernel.org, patches@lists.linux.dev,
Kairui Song <kasong@tencent.com>,
Desheng Wu <deshengwu@tencent.com>,
Sergey Senozhatsky <senozhatsky@chromium.org>,
Andrew Morton <akpm@linux-foundation.org>,
Sasha Levin <sashal@kernel.org>
Subject: Re: [PATCH 5.15 0/3] ZRAM not releasing backing device backport
Date: Tue, 14 Jan 2025 16:39:04 +0900 [thread overview]
Message-ID: <Z4YUmMI5e2yPmzHl@atmark-techno.com> (raw)
In-Reply-To: <2025011201-scorebook-kebab-2288@gregkh>
Greg Kroah-Hartman wrote on Sun, Jan 12, 2025 at 11:03:42AM +0100:
> On Fri, Jan 10, 2025 at 04:58:41PM +0900, Dominique Martinet wrote:
> > I've picked the "do not keep dangling zcomp pointer" patch from the
> > linux-rc tree at the time, so kept Sasha's SOB and added mine on top
> > -- please let me know if it wasn't appropriate.
>
> It's tricky to know, I dropped it and took what was in Linus's tree as
> Sasha didn't actually review this one.
Thanks for saying this; I hadn't actually checked the stable backport
(enough) either so I had another look, and the 6d2453c3dbc5
("drivers/block/zram/zram_drv.c: do not keep dangling zcomp pointer
after zram reset") backport by itself is wrong even if it did
cherry-pick cleanly from master and a quick test appeared to work.
The commit messages says "We do all reset operations under write lock"
but that isn't true without also backporting 6f1637795f28 ("zram: fix
race between zram_reset_device() and disksize_store()"), so with the
current backport we've traded leaking zram->comp behind with a data race
on disksize and comp.
With that extra commit as well, I think we're sane enough, but I'm not
familiar with the zram code so I might have missed another prerequisite.
With that and the previous problems, and given that manipulating
zram devices is a privileged operation (so we're not looking at a must
fix vulnerability), I'm actually rather inclined to just drop all the
zram patches and not backport these to 5.15/5.10 unless someone actually
reports problems around zram reset (or perhaps keep 5.15 but skip 5.10
as you see fit)
(
I'm not opposed to Kairui or someone else actually do these backport,
but I'm not confident it's worth the effort and think we're trading a
known problem (current behaviour) with potential unknown ones if
we're just cherry-picking an arbitrary subset of patches.
If someone wants to take over, the commits I had identified (from
Sasha's initial backport and this mail) for 5.10 were as follow:
3b4f85d02a4b ("loop: let set_capacity_revalidate_and_notify update the bdev size")
5dd55749b79c ("nvme: let set_capacity_revalidate_and_notify update the bdev size")
b200e38c493b ("sd: update the bdev size in sd_revalidate_disk")
449f4ec9892e ("block: remove the update_bdev parameter to set_capacity_revalidate_and_notify")
6e017a3931d7 ("zram: use set_capacity_and_notify")
6f1637795f28 ("zram: fix race between zram_reset_device() and disksize_store()")
6d2453c3dbc5 ("drivers/block/zram/zram_drv.c: do not keep dangling zcomp pointer after zram reset")
677294e4da96 ("zram: check comp is non-NULL before calling comp_destroy")
74363ec674cb ("zram: fix uninitialized ZRAM not releasing backing device")
)
Thank you Greg for the follow-ups, and thank you Kairui for the
suggestions during my earlier bug report.
--
Dominique
prev parent reply other threads:[~2025-01-14 7:39 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-10 7:58 [PATCH 5.15 0/3] ZRAM not releasing backing device backport Dominique Martinet
2025-01-10 7:58 ` [PATCH 5.15 1/3] drivers/block/zram/zram_drv.c: do not keep dangling zcomp pointer after zram reset Dominique Martinet
2025-01-11 19:04 ` Sasha Levin
2025-01-10 7:58 ` [PATCH 5.15 2/3] zram: check comp is non-NULL before calling comp_destroy Dominique Martinet
2025-01-10 22:59 ` kernel test robot
2025-01-11 19:05 ` Sasha Levin
2025-01-10 7:58 ` [PATCH 5.15 3/3] zram: fix uninitialized ZRAM not releasing backing device Dominique Martinet
2025-01-11 19:04 ` Sasha Levin
2025-01-12 10:03 ` [PATCH 5.15 0/3] ZRAM not releasing backing device backport Greg Kroah-Hartman
2025-01-14 7:39 ` Dominique Martinet [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z4YUmMI5e2yPmzHl@atmark-techno.com \
--to=dominique.martinet@atmark-techno.com \
--cc=akpm@linux-foundation.org \
--cc=deshengwu@tencent.com \
--cc=gregkh@linuxfoundation.org \
--cc=kasong@tencent.com \
--cc=patches@lists.linux.dev \
--cc=sashal@kernel.org \
--cc=senozhatsky@chromium.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.