fat: Hook up sb->s_uuid
authorKent Overstreet <kent.overstreet@linux.dev>
Wed, 7 Feb 2024 02:56:18 +0000 (21:56 -0500)
committerChristian Brauner <brauner@kernel.org>
Thu, 8 Feb 2024 20:20:12 +0000 (21:20 +0100)
Now that we have a standard ioctl for querying the filesystem UUID,
initialize sb->s_uuid so that it works.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Link: https://lore.kernel.org/r/20240207025624.1019754-5-kent.overstreet@linux.dev
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/fat/inode.c

index 1fac3dabf13031fdf02e257f363d451190721a9e..5c813696d1ff282220ee5a28b1173d0eb02aaa25 100644 (file)
@@ -1762,6 +1762,9 @@ int fat_fill_super(struct super_block *sb, void *data, int silent, int isvfat,
        else /* fat 16 or 12 */
                sbi->vol_id = bpb.fat16_vol_id;
 
+       __le32 vol_id_le = cpu_to_le32(sbi->vol_id);
+       super_set_uuid(sb, (void *) &vol_id_le, sizeof(vol_id_le));
+
        sbi->dir_per_block = sb->s_blocksize / sizeof(struct msdos_dir_entry);
        sbi->dir_per_block_bits = ffs(sbi->dir_per_block) - 1;