Kernel Tree For Xiaomi 11 Lite NE 5G
Go to file
Yuezhang Mo f6c705d1d9 exfat: support handle zero-size directory
After repairing a corrupted file system with exfatprogs' fsck.exfat,
zero-size directories may result. It is also possible to create
zero-size directories in other exFAT implementation, such as Paragon
ufsd dirver.

As described in the specification, the lower directory size limits
is 0 bytes.

Without this commit, sub-directories and files cannot be created
under a zero-size directory, and it cannot be removed.

Signed-off-by: Yuezhang Mo <Yuezhang.Mo@sony.com>
Reviewed-by: Andy Wu <Andy.Wu@sony.com>
Reviewed-by: Aoyama Wataru <wataru.aoyama@sony.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
2023-09-04 11:09:54 +09:00
.github/workflows exfat: github action: make space for running xfstests 2023-07-14 17:08:12 +09:00
balloc.c exfat: add necessary header for vmalloc 2023-07-16 23:58:02 +09:00
cache.c exfat: fix use of uninitialized spinlock on error path 2020-10-12 22:56:52 +09:00
dir.c exfat: vfs: get rid of old '->iterate' directory operation 2023-08-30 22:22:58 +09:00
exfat_fs.h exfat: add ioctls for accessing attributes 2023-09-04 11:05:50 +09:00
exfat_raw.h exfat: handle unreconized benign secondary entries 2023-01-13 22:53:51 +09:00
fatent.c exfat: fix the newly allocated clusters are not freed in error handling 2023-07-11 22:20:45 +09:00
file.c exfat: add ioctls for accessing attributes 2023-09-04 11:05:50 +09:00
inode.c exfat: remove ->writepage 2023-07-11 22:20:39 +09:00
Kconfig exfat: fs: build the legacy direct I/O code conditionally 2023-07-11 22:35:47 +09:00
Makefile exfat: fix typo in Makefile 2021-10-14 22:24:23 -07:00
misc.c exfat: Expand exfat_err() and co directly to pr_*() macro 2022-07-29 17:26:04 +09:00
namei.c exfat: support handle zero-size directory 2023-09-04 11:09:54 +09:00
nls.c exfat: Drop superfluous new line for error messages 2022-07-29 17:26:12 +09:00
README.md exfat: fix typo 2020-02-10 21:35:58 +09:00
super.c exfat: fix inode->i_blocks for non-512 byte sector size device 2023-01-08 18:15:09 +09:00

exFAT filesystem

This is the exfat filesystem for support from the linux 4.1 kernel to the latest kernel.

Installing as a stand-alone module

Install prerequisite package for Fedora, RHEL:

	yum install kernel-devel-$(uname -r)

Build step:

	make
	sudo make install

To load the driver manually, run this as root:

	modprobe exfat

Installing as a part of the kernel

  1. Let's take [linux] as the path to your kernel source dir.
	cd [linux]
	cp -ar exfat [linux]/fs/
  1. edit [linux]/fs/Kconfig
	source "fs/fat/Kconfig"
	+source "fs/exfat/Kconfig"
	source "fs/ntfs/Kconfig"
  1. edit [linux]/fs/Makefile
	obj-$(CONFIG_FAT_FS)          += fat/
	+obj-$(CONFIG_EXFAT_FS)       += exfat/
	obj-$(CONFIG_BFS_FS)          += bfs/
  1. make menuconfig and set exfat
	File systems  --->
		DOS/FAT/NT Filesystems  --->
			<M> exFAT filesystem support
			(utf8) Default iocharset for exFAT

build your kernel