freebsd-dev/sys/fs
Fedor Uporov 56242a4c65 Add extended attributes
The extattrs follows semantic of ufs, mean it cannot
be set to char/block devices and fifos. The attributes
are allocated using regular malloc with M_WAITOK
allocation with the own malloc tag M_TMPFSEA. The memory
consumed by extended attributes is limited to avoid OOM
triggereing by tmpfs_mount variable tm_ea_memory_max,
which is set initialy to 16 MB. The extended attributes
entries are stored as linked list in the tmpfs node.
The mount point lock is required only under setextattr
and deleteextattr to update extended attributes
memory-inuse counter, all other operations are doing
under vnode lock.

Reviewed by:    kib
MFC after:      2 week
Differential revision:  https://reviews.freebsd.org/D38052
2023-01-29 11:13:14 +03:00
..
autofs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
cd9660 Stop cleaning MNT_LOCAL on unmount 2023-01-14 20:28:11 +02:00
cuse cuse(3): Cosmetic change about testing boolean values. 2022-10-04 13:51:06 +02:00
deadfs vn_open(): If the vnode is reclaimed during open(2), do not return error. 2021-02-12 03:02:20 +02:00
devfs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
ext2fs Fix block bitmap end position computation 2023-01-29 11:11:02 +03:00
fdescfs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
fifofs fifos: delegate unhandled kqueue filters to underlying filesystem 2021-10-12 02:43:07 -05:00
fuse vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
mntfs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
msdosfs Stop cleaning MNT_LOCAL on unmount 2023-01-14 20:28:11 +02:00
nfs nfsserver: Fix vrele() panic in nfsvno_open() 2023-01-12 16:48:53 -08:00
nfsclient nfscl: Improve NFSv4 error message for NFSERR_WRONGSEC 2023-01-11 13:28:44 -08:00
nfsserver nfsserver: Fix handling of SP4_NONE 2023-01-15 14:07:40 -08:00
nullfs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
procfs vm_pager: Remove references to KVME_TYPE_DEFAULT in the kernel 2022-07-17 07:09:48 -04:00
pseudofs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00
smbfs Stop cleaning MNT_LOCAL on unmount 2023-01-14 20:28:11 +02:00
tmpfs Add extended attributes 2023-01-29 11:13:14 +03:00
udf Stop cleaning MNT_LOCAL on unmount 2023-01-14 20:28:11 +02:00
unionfs vfs: add the concept of vnode state transitions 2022-12-26 17:35:12 +00:00