Bitten by this again. Behaviour blames back to at least 2005
(probably original to shmem.c), documented upstream in
Documentation/filesystems/tmpfs.rst (formerly .txt).
For example:
# mount -t tmpfs -o size=0 tmpfs /etc/
# df /etc/
Filesystem 1k-blocks Used Avail Use% Mounted on
tmpfs 0 0 0 - /etc
# head -c100M < /dev/urandom > /etc/passwd
# df /etc/
Filesystem 1k-blocks Used Avail Use% Mounted on
tmpfs 0 0 0 - /etc
# ls -l /etc/passwd
-rw-r--r-- 1 0 0
104857600 08-12 19:55 /etc/passwd
# du /etc/passwd
204800 /etc/passwd
whereas the current manual insinuates head should ENOSPC instantly.
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>
Cc: Jakub Wilk <jwilk@jwilk.net>
Signed-off-by: Alejandro Colomar <alx@kernel.org>
.BR size "=\fIbytes\fP"
Specify an upper limit on the size of the filesystem.
The size is given in bytes, and rounded up to entire pages.
+The limit is removed if the size is
+.BR 0 .
.IP
The size may have a
.BR k ,
The maximum number of inodes for this instance.
The default is half of the number of your physical RAM pages, or (on a
machine with highmem) the number of lowmem RAM pages, whichever is smaller.
+The limit is removed if the number is
+.BR 0 .
.IP
Inodes may be specified with
.BR k ,