Date: Wed, 27 Jan 2010 16:10:33 -0500 From: John Baldwin <jhb@freebsd.org> To: Fernando =?iso-8859-1?q?Apestegu=EDa?= <fernando.apesteguia@gmail.com> Cc: freebsd-hackers@freebsd.org Subject: Re: [PATCH] linprocfs dofilesystems Message-ID: <201001271610.33621.jhb@freebsd.org> In-Reply-To: <1bd550a01001271232r3131a00ci8cf08e0a4ff21816@mail.gmail.com> References: <1bd550a01001080919p20ec1b20t82b3761705cd1ff3@mail.gmail.com> <201001270856.24324.jhb@freebsd.org> <1bd550a01001271232r3131a00ci8cf08e0a4ff21816@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 27 January 2010 3:32:17 pm Fernando Apestegu=EDa wrote: > 2010/1/27 John Baldwin <jhb@freebsd.org>: > > On Tuesday 26 January 2010 4:52:35 pm Fernando Apestegu=EDa wrote: > >> 2010/1/15 John Baldwin <jhb@freebsd.org>: > >> > On Friday 08 January 2010 12:19:29 pm Fernando Apestegu=EDa wrote: > >> >> Hi all, > >> >> > >> >> This patch implements the "filesystems" file in the linux proc fs. > >> >> I have used it for some time without seeing any problems. Let me > >> >> know in case this is useful. > >> >> > >> >> Tested against 8.0-RELEASE-p1 > >> > > >> > This patch is not correct. It seems that /proc/filesystems is a lis= t of > >> > available filesystems, not a list of mounted filesystems. E.g.: > >> > > >> >> cat /proc/filesystems > >> > nodev sysfs > >> > nodev rootfs > >> > nodev bdev > >> > nodev proc > >> > nodev sockfs > >> > nodev binfmt_misc > >> > nodev usbfs > >> > nodev usbdevfs > >> > nodev futexfs > >> > nodev tmpfs > >> > nodev pipefs > >> > nodev eventpollfs > >> > nodev devpts > >> > ext2 > >> > nodev ramfs > >> > nodev hugetlbfs > >> > iso9660 > >> > nodev relayfs > >> > nodev mqueue > >> > ext3 > >> > nodev rpc_pipefs > >> > nodev nfs > >> > nodev nfs4 > >> > nodev autofs > >> > > >> > To do the same thing in FreeBSD you would need to walk the vfsconf l= ist > >> > instead. However, I'm not sure it is worth it to add this unless th= ere > >> > are apps people commonly use that need it. > >> > >> You are right. I have another patch to do the right thing. However as > >> you pointed > >> out maybe it is not useful after all. Is it possible to delete the PR? > >> > >> Sorry for the noise > >> > >> PS: My current patch does not distinguish between common filesystems > >> and pseudo filesystems, where could I find that info? > >> > >> Cheers > > > > Hmm, I'm not sure if there is an easy way to distinguish psuedo filesys= tems > > from device-backed filesystems. Hmm, maybe the VFCF_SYNTHETIC flag? If > > you have an updated patch I'm ok with reviewing it. What programs are = you > > using that use this file in linprocfs? >=20 > I don't need the file right now. I did it for completeness although it > could help to > procinfo[1] gsysinfo[2] and a personal application I wrote some time ago[= 3]. > I am not a kernel developer, but I found this interesting as an exercise. > That is the main reason I tried to implement this file. >=20 > The new patch is attached. VFCF_SYNTHETIC seems to work fine as this patc= h shows > in my system: >=20 > $ cat /compat/linux/proc/filesystems > nodev procfs > cd9660 > nfs > nodev devfs > ufs > msdosfs > nodev linprocfs > ntfs >=20 > I suspect using procfs is not the most portable way of gathering > information in a UNIX system > Am I right? If so, what is the preferred way? Using sysctl? I'm not aware of a portable way to obtain this information across all UNIX variants. For FreeBSD, there isn't a way for userland to obtain the list of filesystems cleanly. The patch looks good to me. I'll probably commit = it after some testing it locally. =2D-=20 John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001271610.33621.jhb>