* [PATCH] statfs.2: Update + Note for pipe() fds
@ 2014-06-10 16:04 Cyril Hrubis
[not found] ` <20140610160416.GA20354-HSzIOc4LzcM@public.gmane.org>
0 siblings, 1 reply; 4+ messages in thread
From: Cyril Hrubis @ 2014-06-10 16:04 UTC (permalink / raw)
To: Michael Kerrisk (man-pages); +Cc: linux-man-u79uwXL29TY76Z2rM5mHXA
* Update MAGIC constants, most of them are taken from
/usr/include/linux/magic.h, some were found by grepping Linux source.
* Add note about fstatfs(2) broken on fd from pipe(2) between
2.6.38 and 3.2
Signed-off-by: Cyril Hrubis <chrubis-AlSwsSmVLrQ@public.gmane.org>
---
man2/statfs.2 | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
diff --git a/man2/statfs.2 b/man2/statfs.2
index 8888307..53cff11 100644
--- a/man2/statfs.2
+++ b/man2/statfs.2
@@ -72,20 +72,30 @@ Filesystem types:
ADFS_SUPER_MAGIC 0xadf5
AFFS_SUPER_MAGIC 0xADFF
+ BDEVFS_MAGIC 0x62646576
BEFS_SUPER_MAGIC 0x42465331
BFS_MAGIC 0x1BADFACE
+ BINFMTFS_MAGIC 0x42494e4d
+ BTRFS_SUPER_MAGIC 0x9123683E
+ CGROUP_SUPER_MAGIC 0x27e0eb
CIFS_MAGIC_NUMBER 0xFF534D42
CODA_SUPER_MAGIC 0x73757245
COH_SUPER_MAGIC 0x012FF7B7
CRAMFS_MAGIC 0x28cd3d45
+ DEBUGFS_MAGIC 0x64626720
DEVFS_SUPER_MAGIC 0x1373
+ DEVPTS_SUPER_MAGIC 0x1cd1
+ EFIVARFS_MAGIC 0xde5e81e4
EFS_SUPER_MAGIC 0x00414A53
EXT_SUPER_MAGIC 0x137D
EXT2_OLD_SUPER_MAGIC 0xEF51
EXT2_SUPER_MAGIC 0xEF53
EXT3_SUPER_MAGIC 0xEF53
EXT4_SUPER_MAGIC 0xEF53
+ FUSE_SUPER_MAGIC 0x65735546
+ FUTEXFS_SUPER_MAGIC 0xBAD1DEA
HFS_SUPER_MAGIC 0x4244
+ HOSTFS_SUPER_MAGIC 0x00c0ffee
HPFS_SUPER_MAGIC 0xF995E849
HUGETLBFS_MAGIC 0x958458f6
ISOFS_SUPER_MAGIC 0x9660
@@ -95,29 +105,47 @@ Filesystem types:
MINIX_SUPER_MAGIC2 0x138F /* 30 char minix */
MINIX2_SUPER_MAGIC 0x2468 /* minix V2 */
MINIX2_SUPER_MAGIC2 0x2478 /* minix V2, 30 char names */
+ MINIX3_SUPER_MAGIC 0x4d5a /* minix V3 fs, 60 char names */
+ MQUEUE_MAGIC 0x19800202
MSDOS_SUPER_MAGIC 0x4d44
NCP_SUPER_MAGIC 0x564c
NFS_SUPER_MAGIC 0x6969
+ NILFS_SUPER_MAGIC 0x3434
NTFS_SB_MAGIC 0x5346544e
OPENPROM_SUPER_MAGIC 0x9fa1
+ PIPEFS_MAGIC 0x50495045
PROC_SUPER_MAGIC 0x9fa0
+ PSTOREFS_MAGIC 0x6165676C
QNX4_SUPER_MAGIC 0x002f
+ QNX6_SUPER_MAGIC 0x68191122
+ RAMFS_MAGIC 0x858458f6
REISERFS_SUPER_MAGIC 0x52654973
ROMFS_MAGIC 0x7275
+ SELINUX_MAGIC 0xf97cff8c
+ SMACK_MAGIC 0x43415d53
SMB_SUPER_MAGIC 0x517B
+ SOCKFS_MAGIC 0x534F434B
+ SQUASHFS_MAGIC 0x73717368
+ SYSFS_MAGIC 0x62656572
SYSV2_SUPER_MAGIC 0x012FF7B6
SYSV4_SUPER_MAGIC 0x012FF7B5
TMPFS_MAGIC 0x01021994
UDF_SUPER_MAGIC 0x15013346
UFS_MAGIC 0x00011954
USBDEVICE_SUPER_MAGIC 0x9fa2
+ V9FS_MAGIC 0x01021997
VXFS_SUPER_MAGIC 0xa501FCF5
+ XENFS_SUPER_MAGIC 0xabba1974
XENIX_SUPER_MAGIC 0x012FF7B4
XFS_SUPER_MAGIC 0x58465342
_XIAFS_SUPER_MAGIC 0x012FD16D
.fi
.in
.PP
+Most of these MAGIC constants are defined in
+.I /usr/include/linux/magic.h
+some are hardcoded in kernel sources.
+.PP
Nobody knows what
.I f_fsid
is supposed to contain (but see below).
@@ -221,6 +249,13 @@ Some systems only have \fI<sys/vfs.h>\fP, other systems also have
So it seems
including the former is the best choice.
+Between Linux 2.6.38 and Linux 3.2
+.\" broken in commit ff0c7d15f9787b7e8c601533c015295cc68329f8
+.\" fixed in commit d70ef97baf048412c395bb5d65791d8fe133a52b
+.BR fstatfs ()
+returned ENOSYS for file descriptor created by
+.BR pipe (2) .
+
LSB has deprecated the library calls
.BR statfs ()
and
--
1.8.5.5
--
Cyril Hrubis
chrubis-AlSwsSmVLrQ@public.gmane.org
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 4+ messages in thread[parent not found: <20140610160416.GA20354-HSzIOc4LzcM@public.gmane.org>]
* Re: [PATCH] statfs.2: Update + Note for pipe() fds [not found] ` <20140610160416.GA20354-HSzIOc4LzcM@public.gmane.org> @ 2014-06-10 20:27 ` Michael Kerrisk (man-pages) [not found] ` <53976A4D.1010501-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: Michael Kerrisk (man-pages) @ 2014-06-10 20:27 UTC (permalink / raw) To: Cyril Hrubis Cc: mtk.manpages-Re5JQEeQqe8AvxtiuMwx3w, linux-man-u79uwXL29TY76Z2rM5mHXA Hi Cyril, Thanks for this. I applied. However, for the future, I really would prefer unrelated changes such as the below to be submitted as separate patches. (I manually split your patch.) On 06/10/2014 06:04 PM, Cyril Hrubis wrote: > * Update MAGIC constants, most of them are taken from > /usr/include/linux/magic.h, some were found by grepping Linux source. > > * Add note about fstatfs(2) broken on fd from pipe(2) between > 2.6.38 and 3.2 I moved that patch piece to a (new) BUGS section. Looking at the following: $ git describe --contains ff0c7d15f9787b7e8c601533c01529 v2.6.38-rc1~60^2~30 $ git describe --contains d70ef97baf048412c395bb5d65791d v3.2-rc1~108^2~56 The breakage was from 2.6.38 to 3.1, right? (3.2 fixed things.) I reworded a little. And I just want to check. Was it really ff0c7d15f9787b7e8c601533c01529 that caused the breakage? At a quick glance, that patch looks unrelated, but perhaps something very subtle is going on... Cheers, Michael > Signed-off-by: Cyril Hrubis <chrubis-AlSwsSmVLrQ@public.gmane.org> > --- > man2/statfs.2 | 35 +++++++++++++++++++++++++++++++++++ > 1 file changed, 35 insertions(+) > > diff --git a/man2/statfs.2 b/man2/statfs.2 > index 8888307..53cff11 100644 > --- a/man2/statfs.2 > +++ b/man2/statfs.2 > @@ -72,20 +72,30 @@ Filesystem types: > > ADFS_SUPER_MAGIC 0xadf5 > AFFS_SUPER_MAGIC 0xADFF > + BDEVFS_MAGIC 0x62646576 > BEFS_SUPER_MAGIC 0x42465331 > BFS_MAGIC 0x1BADFACE > + BINFMTFS_MAGIC 0x42494e4d > + BTRFS_SUPER_MAGIC 0x9123683E > + CGROUP_SUPER_MAGIC 0x27e0eb > CIFS_MAGIC_NUMBER 0xFF534D42 > CODA_SUPER_MAGIC 0x73757245 > COH_SUPER_MAGIC 0x012FF7B7 > CRAMFS_MAGIC 0x28cd3d45 > + DEBUGFS_MAGIC 0x64626720 > DEVFS_SUPER_MAGIC 0x1373 > + DEVPTS_SUPER_MAGIC 0x1cd1 > + EFIVARFS_MAGIC 0xde5e81e4 > EFS_SUPER_MAGIC 0x00414A53 > EXT_SUPER_MAGIC 0x137D > EXT2_OLD_SUPER_MAGIC 0xEF51 > EXT2_SUPER_MAGIC 0xEF53 > EXT3_SUPER_MAGIC 0xEF53 > EXT4_SUPER_MAGIC 0xEF53 > + FUSE_SUPER_MAGIC 0x65735546 > + FUTEXFS_SUPER_MAGIC 0xBAD1DEA > HFS_SUPER_MAGIC 0x4244 > + HOSTFS_SUPER_MAGIC 0x00c0ffee > HPFS_SUPER_MAGIC 0xF995E849 > HUGETLBFS_MAGIC 0x958458f6 > ISOFS_SUPER_MAGIC 0x9660 > @@ -95,29 +105,47 @@ Filesystem types: > MINIX_SUPER_MAGIC2 0x138F /* 30 char minix */ > MINIX2_SUPER_MAGIC 0x2468 /* minix V2 */ > MINIX2_SUPER_MAGIC2 0x2478 /* minix V2, 30 char names */ > + MINIX3_SUPER_MAGIC 0x4d5a /* minix V3 fs, 60 char names */ > + MQUEUE_MAGIC 0x19800202 > MSDOS_SUPER_MAGIC 0x4d44 > NCP_SUPER_MAGIC 0x564c > NFS_SUPER_MAGIC 0x6969 > + NILFS_SUPER_MAGIC 0x3434 > NTFS_SB_MAGIC 0x5346544e > OPENPROM_SUPER_MAGIC 0x9fa1 > + PIPEFS_MAGIC 0x50495045 > PROC_SUPER_MAGIC 0x9fa0 > + PSTOREFS_MAGIC 0x6165676C > QNX4_SUPER_MAGIC 0x002f > + QNX6_SUPER_MAGIC 0x68191122 > + RAMFS_MAGIC 0x858458f6 > REISERFS_SUPER_MAGIC 0x52654973 > ROMFS_MAGIC 0x7275 > + SELINUX_MAGIC 0xf97cff8c > + SMACK_MAGIC 0x43415d53 > SMB_SUPER_MAGIC 0x517B > + SOCKFS_MAGIC 0x534F434B > + SQUASHFS_MAGIC 0x73717368 > + SYSFS_MAGIC 0x62656572 > SYSV2_SUPER_MAGIC 0x012FF7B6 > SYSV4_SUPER_MAGIC 0x012FF7B5 > TMPFS_MAGIC 0x01021994 > UDF_SUPER_MAGIC 0x15013346 > UFS_MAGIC 0x00011954 > USBDEVICE_SUPER_MAGIC 0x9fa2 > + V9FS_MAGIC 0x01021997 > VXFS_SUPER_MAGIC 0xa501FCF5 > + XENFS_SUPER_MAGIC 0xabba1974 > XENIX_SUPER_MAGIC 0x012FF7B4 > XFS_SUPER_MAGIC 0x58465342 > _XIAFS_SUPER_MAGIC 0x012FD16D > .fi > .in > .PP > +Most of these MAGIC constants are defined in > +.I /usr/include/linux/magic.h > +some are hardcoded in kernel sources. > +.PP > Nobody knows what > .I f_fsid > is supposed to contain (but see below). > @@ -221,6 +249,13 @@ Some systems only have \fI<sys/vfs.h>\fP, other systems also have > So it seems > including the former is the best choice. > > +Between Linux 2.6.38 and Linux 3.2 > +.\" broken in commit ff0c7d15f9787b7e8c601533c015295cc68329f8 > +.\" fixed in commit d70ef97baf048412c395bb5d65791d8fe133a52b > +.BR fstatfs () > +returned ENOSYS for file descriptor created by > +.BR pipe (2) . > + > LSB has deprecated the library calls > .BR statfs () > and > -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/ -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <53976A4D.1010501-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH] statfs.2: Update + Note for pipe() fds [not found] ` <53976A4D.1010501-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2014-06-10 21:29 ` chrubis-AlSwsSmVLrQ [not found] ` <20140610212940.GA22111-HSzIOc4LzcM@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: chrubis-AlSwsSmVLrQ @ 2014-06-10 21:29 UTC (permalink / raw) To: Michael Kerrisk (man-pages); +Cc: linux-man-u79uwXL29TY76Z2rM5mHXA Hi! > > * Update MAGIC constants, most of them are taken from > > /usr/include/linux/magic.h, some were found by grepping Linux source. > > > > * Add note about fstatfs(2) broken on fd from pipe(2) between > > 2.6.38 and 3.2 > > I moved that patch piece to a (new) BUGS section. > > Looking at the following: > > $ git describe --contains ff0c7d15f9787b7e8c601533c01529 > v2.6.38-rc1~60^2~30 > $ git describe --contains d70ef97baf048412c395bb5d65791d > v3.2-rc1~108^2~56 > > The breakage was from 2.6.38 to 3.1, right? (3.2 fixed things.) > I reworded a little. Ah, right. Sorry for the off by one mistake. > And I just want to check. Was it really ff0c7d15f9787b7e8c601533c01529 > that caused the breakage? At a quick glance, that patch looks > unrelated, but perhaps something very subtle is going on... Yep, it took me a while to notice. If you pass NULL as super_operations to mount_pseudo() function, which was the case before the patch, default structure super_operations (with contains only simple_statfs) is used (have a look at mount_pseudo() in fs/libfs.c). This patch added pipefs_ops without the statfs callback and passed it instead of the NULL. -- Cyril Hrubis chrubis-AlSwsSmVLrQ@public.gmane.org -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <20140610212940.GA22111-HSzIOc4LzcM@public.gmane.org>]
* Re: [PATCH] statfs.2: Update + Note for pipe() fds [not found] ` <20140610212940.GA22111-HSzIOc4LzcM@public.gmane.org> @ 2014-06-11 5:22 ` Michael Kerrisk (man-pages) 0 siblings, 0 replies; 4+ messages in thread From: Michael Kerrisk (man-pages) @ 2014-06-11 5:22 UTC (permalink / raw) To: Cyril Hrubis; +Cc: linux-man >> And I just want to check. Was it really ff0c7d15f9787b7e8c601533c01529 >> that caused the breakage? At a quick glance, that patch looks >> unrelated, but perhaps something very subtle is going on... > > Yep, it took me a while to notice. If you pass NULL as super_operations > to mount_pseudo() function, which was the case before the patch, default > structure super_operations (with contains only simple_statfs) is used > (have a look at mount_pseudo() in fs/libfs.c). This patch added > pipefs_ops without the statfs callback and passed it instead of the > NULL. Ahh -- okay. Thanks for the explanation. Cheers, Michael -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/ -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-06-11 5:22 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-10 16:04 [PATCH] statfs.2: Update + Note for pipe() fds Cyril Hrubis
[not found] ` <20140610160416.GA20354-HSzIOc4LzcM@public.gmane.org>
2014-06-10 20:27 ` Michael Kerrisk (man-pages)
[not found] ` <53976A4D.1010501-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-06-10 21:29 ` chrubis-AlSwsSmVLrQ
[not found] ` <20140610212940.GA22111-HSzIOc4LzcM@public.gmane.org>
2014-06-11 5:22 ` Michael Kerrisk (man-pages)
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox