Changing FAT label of mounted file system

From: Pali RohÃr
Date: Tue Sep 05 2017 - 10:15:08 EST


Hello!

On most file system it is possible to change its label at anytime, when
mounted or unmounted. But FAT is such special file system on which is
label stored in two location, plus one is in directory structure (which
cannot be modified when file system is mounted).

I would like to ask what about providing FAT specific IOCTL for vfat
kernel driver which would allow to change volume label?

Currently vfat provides FAT_IOCTL_GET_VOLUME_ID which returns volume
serial number, so in similar way it could be extended to provide
FAT_IOCTL_GET_VOLUME_LABEL and FAT_IOCTL_SET_VOLUME_LABEL.

Now when partition manager program wants to change label of FAT
partition, it first needs to unmount it, then change label and after
that mount it again. Providing IOCTL would help partition manager
programs to implement operation for changing volume label easier. Also
unmounting partition is now always possible (when busy).

Next typical usage is opening file manager and in its window "renaming"
volume label. Currently such thing is not possible to implement (without
hacks) for FAT as once file manager has opened location of FAT partition
it needs to be mounted -- and changing volume label is not possible.

Other file systems do not have this problem as label is not stored in
directory structure, managed by kernel driver.

--
Pali RohÃr
pali.rohar@xxxxxxxxx

Attachment: signature.asc
Description: This is a digitally signed message part.