linux/Documentation
Miklos Szeredi f84e3f521e mount options: add documentation
This series addresses the problem of showing mount options in
/proc/mounts.

Several filesystems which use mount options, have not implemented a
.show_options superblock operation.  Several others have implemented
this callback, but have not kept it fully up to date with the parsed
options.

Q: Why do we need correct option showing in /proc/mounts?
A: We want /proc/mounts to fully replace /etc/mtab.  The reasons for
   this are:
    - unprivileged mounters won't be able to update /etc/mtab
    - /etc/mtab doesn't work with private mount namespaces
    - /etc/mtab can become out-of-sync with reality

Q: Can't this be done, so that filesystems need not bother with
   implementing a .show_mounts callback, and keeping it up to date?
A: Only in some cases.  Certain filesystems allow modification of a
   subset of options in their remount_fs method.  It is not possible
   to take this into account without knowing exactly how the
   filesystem handles options.

For the simple case (no remount or remount resets all options) the
patchset introduces two helpers:

  generic_show_options()
  save_mount_options()

These can also be used to emulate the old /etc/mtab behavior, until
proper support is added.  Even if this is not 100% correct, it's still
better than showing no options at all.

The following patches fix up most in-tree filesystems, some have been
compile tested only, some have been reviewed and acked by the
maintainer.

Table displaying status of all in-kernel filesystems:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
legend:

  none - fs has options, but doesn't define ->show_options()
  some - fs defines ->show_options(), but some only options are shown
  good - fs shows all options
  noopt - fs does not have options
  patch - a patch will be posted
  merged - a patch has been merged by subsystem maintainer

9p          good
adfs        patch
affs        patch
afs         patch
autofs      patch
autofs4     patch
befs        patch
bfs         noopt
cifs        some
coda        noopt
configfs    noopt
cramfs      noopt
debugfs     noopt
devpts      patch
ecryptfs    good
efs         noopt
ext2        patch
ext3        good
ext4        merged
fat         patch
freevxfs    noopt
fuse        patch
fusectl	    noopt
gfs2        good
gfs2meta    noopt
hfs         good
hfsplus     good
hostfs      patch
hpfs        patch
hppfs       noopt
hugetlbfs   patch
isofs       patch
jffs2       noopt
jfs         merged
minix       noopt
msdos       ->fat
ncpfs       patch
nfs         some
nfsd        noopt
ntfs        good
ocfs2       good
ocfs2/dlmfs noopt
openpromfs  noopt
proc        noopt
qnx4        noopt
ramfs       noopt
reiserfs    patch
romfs       noopt
smbfs       good
sysfs       noopt
sysv        noopt
udf         patch
ufs         good
vfat        ->fat
xfs         good

mm/shmem.c                                    patch
drivers/oprofile/oprofilefs.c                 noopt
drivers/infiniband/hw/ipath/ipath_fs.c        noopt
drivers/misc/ibmasm/ibmasmfs.c                noopt
drivers/usb/core (usbfs)                      merged
drivers/usb/gadget (gadgetfs)                 noopt
drivers/isdn/capi/capifs.c                    patch
kernel/cpuset.c                               noopt
fs/binfmt_misc.c                              noopt
net/sunrpc/rpc_pipe.c                         noopt
arch/powerpc/platforms/cell/spufs             patch
arch/s390/hypfs                               good
ipc/mqueue.c                                  noopt
security (securityfs)                         noopt
security/selinux/selinuxfs.c                  noopt
kernel/cgroup.c                               good
security/smack/smackfs.c                      noopt

in -mm:

reiser4     some
unionfs     good
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

This patch:

Document the rules for handling mount options in the .show_options
super operation.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-08 09:22:39 -08:00
..
ABI Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2008-02-07 09:45:58 -08:00
DocBook [SCSI] update my email address 2008-02-07 18:02:42 -06:00
RCU Preempt-RCU: update RCU Documentation. 2008-01-25 21:08:25 +01:00
accounting make getdelays cgroupstats aware 2007-11-14 18:45:38 -08:00
acpi Merge branches 'release' and 'dsdt-override' into release 2008-02-07 04:01:53 -05:00
aoe aoe: user can ask driver to forget previously detected devices 2008-02-08 09:22:31 -08:00
arm fix typo 'the same the\>' 2008-02-03 14:59:11 +02:00
auxdisplay
blackfin
block
cdrom Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
connector
console
controllers update Documentation/controller/memory.txt 2008-02-07 08:42:22 -08:00
cpu-freq [ARM] pxa: add cpufreq support 2008-01-26 15:07:52 +00:00
cris
crypto [CRYPTO] doc: Update api-intro.txt 2008-01-11 08:16:14 +11:00
device-mapper dm: uevent generate events 2007-10-20 02:01:26 +01:00
driver-model Driver core: Update some prototypes in platform.txt 2008-02-02 15:14:49 -08:00
dvb V4L/DVB (7077): bt878: remove handcrafted PCI subsystem ID check 2008-01-25 19:05:22 -02:00
early-userspace
fault-injection
fb fb: defio nopage 2008-02-06 10:41:15 -08:00
filesystems mount options: add documentation 2008-02-08 09:22:39 -08:00
firmware_class
frv move frv docs one level up 2008-02-03 15:54:28 +02:00
hrtimer
hrtimers
hwmon hwmon: (w83627ehf) The W83627DHG has 8 VID pins 2008-02-07 20:39:45 -05:00
i2c hwmon: Update the lm-sensors website address 2008-02-07 20:39:42 -05:00
i2o
i386 x86 boot: document for 32 bit boot protocol 2007-10-30 00:22:22 +01:00
ia64 [IA64] aliasing-test: fix gcc warnings on non-ia64 2008-02-04 15:23:10 -08:00
ide ide-tape: move historical changelog to Documentation/ide/ChangeLog.ide-tape.1995-2002 2008-02-02 19:56:48 +01:00
infiniband
input Input: fix bug in example code 2008-01-21 01:11:07 -05:00
ioctl
isdn spelling fixes: Documentation/ 2007-10-20 01:30:25 +02:00
ja_JP Add ja_JP translation of stable_kernel_rules.txt 2008-02-02 15:14:48 -08:00
kbuild kconfig: document use of HAVE_* 2008-01-28 23:21:19 +01:00
kdump Add documentation for extended crashkernel syntax 2007-10-19 11:53:51 -07:00
ko_KR HOWTO: update misspelling and word incorrected 2007-12-17 10:33:19 -08:00
lguest virtio: reset function 2008-02-04 23:50:03 +11:00
m68k [SCSI] 53c7xx: fix removal fallout 2008-01-11 18:22:30 -06:00
make
mips [MIPS] remove Documentation/mips/GT64120.README 2008-01-29 10:15:05 +00:00
mn10300 mn10300: add the MN10300/AM33 architecture to the kernel 2008-02-08 09:22:30 -08:00
namespaces The namespaces compatibility list doc 2007-11-29 09:24:53 -08:00
netlabel
networking Documentation: "decnet=" should read "decnet.addr=". 2008-02-03 15:18:45 +02:00
parisc
pcmcia pcmcia: replace kio_addr_t with unsigned int everywhere 2008-02-05 09:44:08 -08:00
power PM: documentation cleanups 2008-02-07 01:27:17 -05:00
powerpc Merge branch 'virtex-for-2.6.25' of git://git.secretlab.ca/git/linux-2.6-virtex into for-2.6.25 2008-02-06 21:06:45 -06:00
s390 [S390] cio: Dump ccw device information in case of timeout. 2008-01-26 14:10:55 +01:00
scheduler Documentation: create new scheduler/ subdirectory 2008-02-07 08:42:17 -08:00
scsi [SCSI] arcmsr: updates (1.20.00.15) 2008-02-07 18:02:44 -06:00
serial
sh
sound [ALSA] hda-codec - Add Dell T3400 support 2008-01-31 17:30:22 +01:00
sparc
spi Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
sysctl oom: add sysctl to enable task memory dump 2008-02-07 08:42:19 -08:00
telephony
thermal the generic thermal sysfs driver 2008-02-01 23:12:19 -05:00
uml
usb USB: add Printer Gadget Driver 2008-02-01 14:34:49 -08:00
video4linux V4L/DVB (7043): New card supported(partially): Pinnacle 800i 2008-01-25 19:05:06 -02:00
vm SLUB: Support for performance statistics 2008-02-07 17:47:41 -08:00
w1 w1-gpio: add GPIO w1 bus master driver 2008-02-06 10:41:15 -08:00
watchdog [WATCHDOG] clarify watchdog operation in documentation 2008-01-18 21:23:05 +00:00
x86_64 documentation: add Documentation/x86-64/00-INDEX 2008-02-04 16:48:02 +01:00
zh_CN Chinese: add translation of Codingstyle 2008-01-24 20:40:04 -08:00
00-INDEX Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2008-02-07 09:45:58 -08:00
BUG-HUNTING Documentation: add hint about call traces & module symbols to BUG-HUNTING 2008-02-06 10:41:09 -08:00
Changes
CodingStyle
DMA-API.txt
DMA-ISA-LPC.txt
DMA-mapping.txt
HOWTO
IO-mapping.txt
IPMI.txt IPMI: new NMI handling 2007-10-18 14:37:32 -07:00
IRQ-affinity.txt
IRQ.txt
Intel-IOMMU.txt Intel IOMMU: Iommu Gfx workaround 2007-10-22 08:13:19 -07:00
MSI-HOWTO.txt
ManagementStyle
PCIEBUS-HOWTO.txt
README.DAC960
README.cycladesZ
SAK.txt
SM501.txt
SecurityBugs
Smack.txt Smack: Simplified Mandatory Access Control Kernel 2008-02-05 09:44:20 -08:00
SubmitChecklist Documentation: Fix typo in SubmitChecklist. 2007-10-20 03:13:09 +02:00
SubmittingDrivers Update 2.4 maintainer in document 2007-10-20 02:02:12 +02:00
SubmittingPatches Documentation: mention email-clients.txt in SubmittingPatches 2008-02-03 18:06:58 +02:00
VGA-softcursor.txt
applying-patches.txt
atomic_ops.txt
basic_profiling.txt
binfmt_misc.txt
cachetlb.txt remove unused flush_tlb_pgtables 2007-10-19 11:53:34 -07:00
cciss.txt
cgroups.txt cgroups: move cgroups destroy() callbacks to cgroup_diput() 2008-02-07 08:42:18 -08:00
cli-sti-removal.txt
computone.txt
cpqarray.txt
cpu-hotplug.txt [S390] Get rid of additional_cpus kernel parameter. 2008-01-26 14:11:15 +01:00
cpu-load.txt
cpusets.txt cpusets: update_cpumask documentation fix 2008-02-07 08:42:23 -08:00
cputopology.txt
dcdbas.txt
debugging-modules.txt Documentation: Clarify when module debugging actually works. 2008-02-03 15:27:38 +02:00
debugging-via-ohci1394.txt x86: early boot debugging via FireWire (ohci1394_dma=early) 2008-01-30 13:34:11 +01:00
dell_rbu.txt
devices.txt typo fixes 2007-10-20 01:34:40 +02:00
digiepca.txt
dontdiff [SCSI] 53c7xx: fix removal fallout 2008-01-11 18:22:30 -06:00
edac.txt move edac.txt two levels up 2008-02-07 08:42:17 -08:00
eisa.txt
email-clients.txt email-clients.txt: sylpheed is OK at IMAP 2008-02-07 08:42:17 -08:00
exception.txt
feature-removal-schedule.txt The scheduled 'time' option removal 2008-02-08 09:22:36 -08:00
floppy.txt
gpio.txt gpiolib: update Documentation/gpio.txt 2008-02-05 09:44:13 -08:00
hayes-esp.txt
highuid.txt
hpet.txt
hw_random.txt
ide.txt ide: remove broken disk byte-swapping support 2008-01-26 20:13:09 +01:00
initrd.txt use the newc archive format as requested by initramfs 2008-02-03 14:54:41 +02:00
io_ordering.txt
ioctl-number.txt ocfs2: Reserve ioctl range 2008-01-25 14:48:57 -08:00
iostats.txt
irqflags-tracing.txt
isapnp.txt
java.txt Documentation/java.txt: typo and grammar fixes 2007-10-20 02:37:21 +02:00
kernel-doc-nano-HOWTO.txt
kernel-docs.txt typo fixes 2007-10-20 01:34:40 +02:00
kernel-parameters.txt The scheduled 'time' option removal 2008-02-08 09:22:36 -08:00
keys-request-key.txt
keys.txt
kobject.txt kobject: update the kobject/kset documentation 2008-01-24 20:40:41 -08:00
kprobes.txt kprobes: kretprobe user entry-handler 2008-02-06 10:41:11 -08:00
kref.txt docs: convert kref semaphore to mutex 2008-02-06 10:41:09 -08:00
laptop-mode.txt
ldm.txt
leds-class.txt leds: Add support for hardware accelerated LED flashing 2008-02-07 09:49:38 +00:00
local_ops.txt Revert "local_t Documentation update" 2008-01-17 15:38:59 -08:00
lockdep-design.txt
lockstat.txt
logo.gif
logo.txt
magic-number.txt
markers.txt Linux Kernel Markers: document format string 2007-11-14 18:45:40 -08:00
mca.txt
md.txt md: allow a maximum extent to be set for resyncing 2008-02-06 10:41:18 -08:00
memory-barriers.txt
memory-hotplug.txt memory hotplug: document the memory hotplug notifier 2007-10-22 08:13:17 -07:00
memory.txt
mono.txt
moxa-smartio
mtrr.txt
mutex-design.txt Documentation: Add nested versions of mutex locks to docs 2007-10-20 00:15:26 +02:00
nbd.txt
nfsroot.txt [IPV4] ipconfig: Fix regression in ip command line processing 2008-01-08 23:29:58 -08:00
nmi_watchdog.txt
nommu-mmap.txt
numastat.txt
oops-tracing.txt
paride.txt
parport-lowlevel.txt plip: fix parport_register_device name parameter 2007-11-26 19:39:01 -08:00
parport.txt
pci-error-recovery.txt
pci.txt PCI: Remove pci_enable_device_bars() from documentation 2008-02-01 15:04:28 -08:00
pcieaer-howto.txt
pi-futex.txt
pm.txt
pm_qos_interface.txt pm qos infrastructure and interface 2008-02-05 09:44:22 -08:00
pnp.txt Documentation: Replace obsolete "driverfs" with "sysfs". 2008-01-24 20:40:04 -08:00
power_supply_class.txt power_supply: add few more values and props 2008-02-02 02:43:00 +03:00
preempt-locking.txt
prio_tree.txt
ramdisk.txt
rbtree.txt
rfkill.txt
riscom8.txt
robust-futex-ABI.txt
robust-futexes.txt
rocket.txt
rpc-cache.txt
rt-mutex-design.txt
rt-mutex.txt
rtc.txt rtc: cleanup example code 2008-02-06 10:41:14 -08:00
serial-console.txt
sgi-ioc4.txt
sgi-visws.txt
smart-config.txt
sony-laptop.txt
sonypi.txt
sparse.txt
specialix.txt
spinlocks.txt
stable_api_nonsense.txt
stable_kernel_rules.txt
stallion.txt
svga.txt
sx.txt
sysfs-rules.txt
sysrq.txt
thinkpad-acpi.txt ACPI: thinkpad-acpi: bump up version to 0.19 2008-02-01 22:26:08 -05:00
tty.txt termios: document callback more clearly 2007-11-29 09:24:52 -08:00
unaligned-memory-access.txt Documentation about unaligned memory access 2008-02-06 10:41:07 -08:00
unicode.txt
unshare.txt
video-output.txt
volatile-considered-harmful.txt
voyager.txt
zorro.txt

README.cycladesZ

The Cyclades-Z must have firmware loaded onto the card before it will
operate.  This operation should be performed during system startup,

The firmware, loader program and the latest device driver code are
available from Cyclades at
    ftp://ftp.cyclades.com/pub/cyclades/cyclades-z/linux/