Re: [PATCH STABLE 5.4] btrfs: harden identification of a stale device

Greg KH
2022-09-06T12:01:41Z

On Sat, Sep 03, 2022 at 08:25:12PM +0800, Anand Jain wrote:
> On 9/2/22 17:23, Greg KH wrote:
> > On Fri, Sep 02, 2022 at 05:09:38PM +0800, Anand Jain wrote:
> > > commit 770c79fb65506fc7c16459855c3839429f46cb32 upstream
> > >
> > > Identifying and removing the stale device from the fs_uuids list is done
> > > by btrfs_free_stale_devices(). btrfs_free_stale_devices() in turn
> > > depends on device_path_matched() to check if the device appears in more
> > > than one btrfs_device structure.
> > >
> > > The matching of the device happens by its path, the device path. However,
> > > when device mapper is in use, the dm device paths are nothing but a link
> > > to the actual block device, which leads to the device_path_matched()
> > > failing to match.
> > >
> > > Fix this by matching the dev_t as provided by lookup_bdev() instead of
> > > plain string compare of the device paths.
> > >
> > > CC: stable@vger.kernel.org #5.4
> > > Reported-by: Josef Bacik <josef@toxicpanda.com>
> > > Signed-off-by: Anand Jain <anand.jain@oracle.com>
> > > Signed-off-by: David Sterba <dsterba@suse.com>
> > > ---
> > > fs/btrfs/volumes.c | 44 +++++++++++++++++++++++++++++++++++++-------
> > > 1 file changed, 37 insertions(+), 7 deletions(-)
> >
> > What about the same change for 5.10.y?
> >
>
> Thanks for reminding me.
> I have sent a separate patch for 5.10 as this patch won't apply to 5.10.

Both now queued up, thanks.

greg k-h