~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/filesystems/quota.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/filesystems/quota.rst (Version linux-6.12-rc7) and /Documentation/filesystems/quota.rst (Version linux-5.13.19)


  1 .. SPDX-License-Identifier: GPL-2.0                 1 .. SPDX-License-Identifier: GPL-2.0
  2                                                     2 
  3 ===============                                     3 ===============
  4 Quota subsystem                                     4 Quota subsystem
  5 ===============                                     5 ===============
  6                                                     6 
  7 Quota subsystem allows system administrator to      7 Quota subsystem allows system administrator to set limits on used space and
  8 number of used inodes (inode is a filesystem s      8 number of used inodes (inode is a filesystem structure which is associated with
  9 each file or directory) for users and/or group      9 each file or directory) for users and/or groups. For both used space and number
 10 of used inodes there are actually two limits.      10 of used inodes there are actually two limits. The first one is called softlimit
 11 and the second one hardlimit.  A user can neve     11 and the second one hardlimit.  A user can never exceed a hardlimit for any
 12 resource (unless he has CAP_SYS_RESOURCE capab     12 resource (unless he has CAP_SYS_RESOURCE capability). User is allowed to exceed
 13 softlimit but only for limited period of time.     13 softlimit but only for limited period of time. This period is called "grace
 14 period" or "grace time". When grace time is ov     14 period" or "grace time". When grace time is over, user is not able to allocate
 15 more space/inodes until he frees enough of the     15 more space/inodes until he frees enough of them to get below softlimit.
 16                                                    16 
 17 Quota limits (and amount of grace time) are se     17 Quota limits (and amount of grace time) are set independently for each
 18 filesystem.                                        18 filesystem.
 19                                                    19 
 20 For more details about quota design, see the d     20 For more details about quota design, see the documentation in quota-tools package
 21 (https://sourceforge.net/projects/linuxquota).     21 (https://sourceforge.net/projects/linuxquota).
 22                                                    22 
 23 Quota netlink interface                            23 Quota netlink interface
 24 =======================                            24 =======================
 25 When user exceeds a softlimit, runs out of gra     25 When user exceeds a softlimit, runs out of grace time or reaches hardlimit,
 26 quota subsystem traditionally printed a messag     26 quota subsystem traditionally printed a message to the controlling terminal of
 27 the process which caused the excess. This meth     27 the process which caused the excess. This method has the disadvantage that
 28 when user is using a graphical desktop he usua     28 when user is using a graphical desktop he usually cannot see the message.
 29 Thus quota netlink interface has been designed     29 Thus quota netlink interface has been designed to pass information about
 30 the above events to userspace. There they can      30 the above events to userspace. There they can be captured by an application
 31 and processed accordingly.                         31 and processed accordingly.
 32                                                    32 
 33 The interface uses generic netlink framework (     33 The interface uses generic netlink framework (see
 34 https://lwn.net/Articles/208755/ and http://ww     34 https://lwn.net/Articles/208755/ and http://www.infradead.org/~tgr/libnl/ for
 35 more details about this layer). The name of th     35 more details about this layer). The name of the quota generic netlink interface
 36 is "VFS_DQUOT". Definitions of constants below     36 is "VFS_DQUOT". Definitions of constants below are in <linux/quota.h>.  Since
 37 the quota netlink protocol is not namespace aw     37 the quota netlink protocol is not namespace aware, quota netlink messages are
 38 sent only in initial network namespace.            38 sent only in initial network namespace.
 39                                                    39 
 40 Currently, the interface supports only one mes     40 Currently, the interface supports only one message type QUOTA_NL_C_WARNING.
 41 This command is used to send a notification ab     41 This command is used to send a notification about any of the above mentioned
 42 events. Each message has six attributes. These     42 events. Each message has six attributes. These are (type of the argument is
 43 in parentheses):                                   43 in parentheses):
 44                                                    44 
 45         QUOTA_NL_A_QTYPE (u32)                     45         QUOTA_NL_A_QTYPE (u32)
 46           - type of quota being exceeded (one      46           - type of quota being exceeded (one of USRQUOTA, GRPQUOTA)
 47         QUOTA_NL_A_EXCESS_ID (u64)                 47         QUOTA_NL_A_EXCESS_ID (u64)
 48           - UID/GID (depends on quota type) of     48           - UID/GID (depends on quota type) of user / group whose limit
 49             is being exceeded.                     49             is being exceeded.
 50         QUOTA_NL_A_CAUSED_ID (u64)                 50         QUOTA_NL_A_CAUSED_ID (u64)
 51           - UID of a user who caused the event     51           - UID of a user who caused the event
 52         QUOTA_NL_A_WARNING (u32)                   52         QUOTA_NL_A_WARNING (u32)
 53           - what kind of limit is exceeded:        53           - what kind of limit is exceeded:
 54                                                    54 
 55                 QUOTA_NL_IHARDWARN                 55                 QUOTA_NL_IHARDWARN
 56                     inode hardlimit                56                     inode hardlimit
 57                 QUOTA_NL_ISOFTLONGWARN             57                 QUOTA_NL_ISOFTLONGWARN
 58                     inode softlimit is exceede     58                     inode softlimit is exceeded longer
 59                     than given grace period        59                     than given grace period
 60                 QUOTA_NL_ISOFTWARN                 60                 QUOTA_NL_ISOFTWARN
 61                     inode softlimit                61                     inode softlimit
 62                 QUOTA_NL_BHARDWARN                 62                 QUOTA_NL_BHARDWARN
 63                     space (block) hardlimit        63                     space (block) hardlimit
 64                 QUOTA_NL_BSOFTLONGWARN             64                 QUOTA_NL_BSOFTLONGWARN
 65                     space (block) softlimit is     65                     space (block) softlimit is exceeded
 66                     longer than given grace pe     66                     longer than given grace period.
 67                 QUOTA_NL_BSOFTWARN                 67                 QUOTA_NL_BSOFTWARN
 68                     space (block) softlimit        68                     space (block) softlimit
 69                                                    69 
 70           - four warnings are also defined for     70           - four warnings are also defined for the event when user stops
 71             exceeding some limit:                  71             exceeding some limit:
 72                                                    72 
 73                 QUOTA_NL_IHARDBELOW                73                 QUOTA_NL_IHARDBELOW
 74                     inode hardlimit                74                     inode hardlimit
 75                 QUOTA_NL_ISOFTBELOW                75                 QUOTA_NL_ISOFTBELOW
 76                     inode softlimit                76                     inode softlimit
 77                 QUOTA_NL_BHARDBELOW                77                 QUOTA_NL_BHARDBELOW
 78                     space (block) hardlimit        78                     space (block) hardlimit
 79                 QUOTA_NL_BSOFTBELOW                79                 QUOTA_NL_BSOFTBELOW
 80                     space (block) softlimit        80                     space (block) softlimit
 81                                                    81 
 82         QUOTA_NL_A_DEV_MAJOR (u32)                 82         QUOTA_NL_A_DEV_MAJOR (u32)
 83           - major number of a device with the      83           - major number of a device with the affected filesystem
 84         QUOTA_NL_A_DEV_MINOR (u32)                 84         QUOTA_NL_A_DEV_MINOR (u32)
 85           - minor number of a device with the      85           - minor number of a device with the affected filesystem
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php