On Wed, Feb 15, 2023 at 12:53:03PM +0800, Anand Jain wrote: > commit 5f58d783fd7823b2c2d5954d1126e702f94bfc4c upstream > > We have this check to make sure we don't accidentally add older devices > that may have disappeared and re-appeared with an older generation from > being added to an fs_devices (such as a replace source device). This > makes sense, we don't want stale disks in our file system. However for > single disks this doesn't really make sense. > > I've seen this in testing, but I was provided a reproducer from a > project that builds btrfs images on loopback devices. The loopback > device gets cached with the new generation, and then if it is re-used to > generate a new file system we'll fail to mount it because the new fs is > "older" than what we have in cache. > > Fix this by freeing the cache when closing the device for a single device > filesystem. This will ensure that the mount command passed device path is > scanned successfully during the next mount. > > CC: stable@xxxxxxxxxxxxxxx # 5.10+ > Reported-by: Daan De Meyer <daandemeyer@xxxxxx> > Signed-off-by: Josef Bacik <josef@xxxxxxxxxxxxxx> > Signed-off-by: Anand Jain <anand.jain@xxxxxxxxxx> > Reviewed-by: David Sterba <dsterba@xxxxxxxx> > Signed-off-by: David Sterba <dsterba@xxxxxxxx> > Signed-off-by: Anand Jain <anand.jain@xxxxxxxxxx> > --- > This patch has already been submitted for the LTS stable 5.10 and above. Now queued up, thanks. greg k-h