No description
  • C 98.2%
  • Assembly 1%
  • Makefile 0.3%
  • Shell 0.2%
  • Python 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Namjae Jeon df7fdcfcbf exfat: attr: handle idmapped mounts
When file attributes are changed most filesystems rely on the
setattr_prepare(), setattr_copy(), and notify_change() helpers for
initialization and permission checking. Let them handle idmapped mounts.
If the inode is accessed through an idmapped mount map it into the
mount's user namespace. Afterwards the checks are identical to
non-idmapped mounts. If the initial user namespace is passed nothing
changes so non-idmapped mounts will see identical behavior as before.

Helpers that perform checks on the ia_uid and ia_gid fields in struct
iattr assume that ia_uid and ia_gid are intended values and have already
been mapped correctly at the userspace-kernelspace boundary as we
already do today. If the initial user namespace is passed nothing
changes so non-idmapped mounts will see identical behavior as before.

Link: https://lore.kernel.org/r/20210121131959.646623-8-christian.brauner@ubuntu.com
Cc: Christoph Hellwig <hch@lst.de>
Cc: David Howells <dhowells@redhat.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: linux-fsdevel@vger.kernel.org
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
2021-03-25 08:10:55 +09:00
.travis.yml exfat: add FITRIM ioctl tests 2021-03-25 08:10:44 +09:00
.travis_cmd_wrapper.pl
.travis_get_mainline_kernel
balloc.c exfat: improve write performance when dirsync enabled 2021-03-25 08:10:51 +09:00
cache.c
dir.c exfat: improve write performance when dirsync enabled 2021-03-25 08:10:51 +09:00
exfat_fs.h exfat: improve write performance when dirsync enabled 2021-03-25 08:10:51 +09:00
exfat_raw.h exfat: fix shift-out-of-bounds in exfat_fill_super() 2021-02-01 10:35:05 +09:00
fatent.c exfat: improve write performance when dirsync enabled 2021-03-25 08:10:51 +09:00
file.c exfat: attr: handle idmapped mounts 2021-03-25 08:10:55 +09:00
inode.c exfat: improve write performance when dirsync enabled 2021-03-25 08:10:51 +09:00
Kconfig
Makefile
misc.c exfat: Fix date for year < 1980 and > 2108 2021-03-25 08:10:47 +09:00
namei.c exfat: improve write performance when dirsync enabled 2021-03-25 08:10:51 +09:00
nls.c exfat: Avoid allocating upcase table using kcalloc() 2020-12-08 12:51:04 +09:00
README.md
super.c exfat: introduce bitmap_lock for cluster bitmap access 2021-03-25 08:10:12 +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