summaryrefslogtreecommitdiff
path: root/fs/btrfs/extent_map.c
diff options
context:
space:
mode:
authorAnand Jain <anand.jain@oracle.com>2024-03-01 03:42:13 +0300
committerDavid Sterba <dsterba@suse.com>2024-03-26 18:42:38 +0300
commit9f7eb8405dcbc79c5434821e9e3e92abe187ee8e (patch)
tree7f99d51bf300140ba4bcf413930e2a2e8692eb52 /fs/btrfs/extent_map.c
parent1ec17ef59168a1a6f1105f5dc517f783839a5302 (diff)
downloadlinux-9f7eb8405dcbc79c5434821e9e3e92abe187ee8e.tar.xz
btrfs: validate device maj:min during open
Boris managed to create a device capable of changing its maj:min without altering its device path. Only multi-devices can be scanned. A device that gets scanned and remains in the btrfs kernel cache might end up with an incorrect maj:min. Despite the temp-fsid feature patch did not introduce this bug, it could lead to issues if the above multi-device is converted to a single device with a stale maj:min. Subsequently, attempting to mount the same device with the correct maj:min might mistake it for another device with the same fsid, potentially resulting in wrongly auto-enabling the temp-fsid feature. To address this, this patch validates the device's maj:min at the time of device open and updates it if it has changed since the last scan. CC: stable@vger.kernel.org # 6.7+ Fixes: a5b8a5f9f835 ("btrfs: support cloned-device mount capability") Reported-by: Boris Burkov <boris@bur.io> Co-developed-by: Boris Burkov <boris@bur.io> Reviewed-by: Boris Burkov <boris@bur.io># Signed-off-by: Anand Jain <anand.jain@oracle.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/extent_map.c')
0 files changed, 0 insertions, 0 deletions