diff options
Diffstat (limited to 'Documentation/filesystems')
-rw-r--r-- | Documentation/filesystems/9p.txt | 2 | ||||
-rw-r--r-- | Documentation/filesystems/affs.txt | 2 | ||||
-rw-r--r-- | Documentation/filesystems/befs.txt | 4 | ||||
-rw-r--r-- | Documentation/filesystems/isofs.txt | 2 | ||||
-rw-r--r-- | Documentation/filesystems/nfs/nfsroot.txt | 2 | ||||
-rw-r--r-- | Documentation/filesystems/proc.txt | 4 | ||||
-rw-r--r-- | Documentation/filesystems/sysfs-pci.txt | 7 | ||||
-rw-r--r-- | Documentation/filesystems/sysfs.txt | 46 | ||||
-rw-r--r-- | Documentation/filesystems/vfat.txt | 3 | ||||
-rw-r--r-- | Documentation/filesystems/xfs.txt | 11 |
10 files changed, 42 insertions, 41 deletions
diff --git a/Documentation/filesystems/9p.txt b/Documentation/filesystems/9p.txt index c0236e753bc8..f9765e8cf086 100644 --- a/Documentation/filesystems/9p.txt +++ b/Documentation/filesystems/9p.txt | |||
@@ -128,7 +128,7 @@ OPTIONS | |||
128 | RESOURCES | 128 | RESOURCES |
129 | ========= | 129 | ========= |
130 | 130 | ||
131 | Our current recommendation is to use Inferno (http://www.vitanuova.com/inferno) | 131 | Our current recommendation is to use Inferno (http://www.vitanuova.com/nferno/index.html) |
132 | as the 9p server. You can start a 9p server under Inferno by issuing the | 132 | as the 9p server. You can start a 9p server under Inferno by issuing the |
133 | following command: | 133 | following command: |
134 | ; styxlisten -A tcp!*!564 export '#U*' | 134 | ; styxlisten -A tcp!*!564 export '#U*' |
diff --git a/Documentation/filesystems/affs.txt b/Documentation/filesystems/affs.txt index 2d1524469c25..81ac488e3758 100644 --- a/Documentation/filesystems/affs.txt +++ b/Documentation/filesystems/affs.txt | |||
@@ -216,4 +216,4 @@ due to an incompatibility with the Amiga floppy controller. | |||
216 | 216 | ||
217 | If you are interested in an Amiga Emulator for Linux, look at | 217 | If you are interested in an Amiga Emulator for Linux, look at |
218 | 218 | ||
219 | http://www.freiburg.linux.de/~uae/ | 219 | http://web.archive.org/web/*/http://www.freiburg.linux.de/~uae/ |
diff --git a/Documentation/filesystems/befs.txt b/Documentation/filesystems/befs.txt index 67391a15949a..6e49c363938e 100644 --- a/Documentation/filesystems/befs.txt +++ b/Documentation/filesystems/befs.txt | |||
@@ -31,7 +31,7 @@ Current maintainer: Sergey S. Kostyliov <rathamahata@php4.ru> | |||
31 | 31 | ||
32 | WHAT IS THIS DRIVER? | 32 | WHAT IS THIS DRIVER? |
33 | ================== | 33 | ================== |
34 | This module implements the native filesystem of BeOS <http://www.be.com/> | 34 | This module implements the native filesystem of BeOS http://www.beincorporated.com/ |
35 | for the linux 2.4.1 and later kernels. Currently it is a read-only | 35 | for the linux 2.4.1 and later kernels. Currently it is a read-only |
36 | implementation. | 36 | implementation. |
37 | 37 | ||
@@ -61,7 +61,7 @@ step 2. Configuration & make kernel | |||
61 | 61 | ||
62 | The linux kernel has many compile-time options. Most of them are beyond the | 62 | The linux kernel has many compile-time options. Most of them are beyond the |
63 | scope of this document. I suggest the Kernel-HOWTO document as a good general | 63 | scope of this document. I suggest the Kernel-HOWTO document as a good general |
64 | reference on this topic. <http://www.linux.com/howto/Kernel-HOWTO.html> | 64 | reference on this topic. http://www.linuxdocs.org/HOWTOs/Kernel-HOWTO-4.html |
65 | 65 | ||
66 | However, to use the BeFS module, you must enable it at configure time. | 66 | However, to use the BeFS module, you must enable it at configure time. |
67 | 67 | ||
diff --git a/Documentation/filesystems/isofs.txt b/Documentation/filesystems/isofs.txt index 3c367c3b3608..ba0a93384de0 100644 --- a/Documentation/filesystems/isofs.txt +++ b/Documentation/filesystems/isofs.txt | |||
@@ -41,7 +41,7 @@ Mount options unique to the isofs filesystem. | |||
41 | sbsector=xxx Session begins from sector xxx | 41 | sbsector=xxx Session begins from sector xxx |
42 | 42 | ||
43 | Recommended documents about ISO 9660 standard are located at: | 43 | Recommended documents about ISO 9660 standard are located at: |
44 | http://www.y-adagio.com/public/standards/iso_cdromr/tocont.htm | 44 | http://www.y-adagio.com/ |
45 | ftp://ftp.ecma.ch/ecma-st/Ecma-119.pdf | 45 | ftp://ftp.ecma.ch/ecma-st/Ecma-119.pdf |
46 | Quoting from the PDF "This 2nd Edition of Standard ECMA-119 is technically | 46 | Quoting from the PDF "This 2nd Edition of Standard ECMA-119 is technically |
47 | identical with ISO 9660.", so it is a valid and gratis substitute of the | 47 | identical with ISO 9660.", so it is a valid and gratis substitute of the |
diff --git a/Documentation/filesystems/nfs/nfsroot.txt b/Documentation/filesystems/nfs/nfsroot.txt index 3ba0b945aaf8..f2430a7974e1 100644 --- a/Documentation/filesystems/nfs/nfsroot.txt +++ b/Documentation/filesystems/nfs/nfsroot.txt | |||
@@ -124,6 +124,8 @@ ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf> | |||
124 | 124 | ||
125 | <hostname> Name of the client. May be supplied by autoconfiguration, | 125 | <hostname> Name of the client. May be supplied by autoconfiguration, |
126 | but its absence will not trigger autoconfiguration. | 126 | but its absence will not trigger autoconfiguration. |
127 | If specified and DHCP is used, the user provided hostname will | ||
128 | be carried in the DHCP request to hopefully update DNS record. | ||
127 | 129 | ||
128 | Default: Client IP address is used in ASCII notation. | 130 | Default: Client IP address is used in ASCII notation. |
129 | 131 | ||
diff --git a/Documentation/filesystems/proc.txt b/Documentation/filesystems/proc.txt index 9fb6cbe70bde..8fe8895894d8 100644 --- a/Documentation/filesystems/proc.txt +++ b/Documentation/filesystems/proc.txt | |||
@@ -73,9 +73,9 @@ contact Bodo Bauer at bb@ricochet.net. We'll be happy to add them to this | |||
73 | document. | 73 | document. |
74 | 74 | ||
75 | The latest version of this document is available online at | 75 | The latest version of this document is available online at |
76 | http://skaro.nightcrawler.com/~bb/Docs/Proc as HTML version. | 76 | http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/proc.html |
77 | 77 | ||
78 | If the above direction does not works for you, ypu could try the kernel | 78 | If the above direction does not works for you, you could try the kernel |
79 | mailing list at linux-kernel@vger.kernel.org and/or try to reach me at | 79 | mailing list at linux-kernel@vger.kernel.org and/or try to reach me at |
80 | comandante@zaralinux.com. | 80 | comandante@zaralinux.com. |
81 | 81 | ||
diff --git a/Documentation/filesystems/sysfs-pci.txt b/Documentation/filesystems/sysfs-pci.txt index 85354b32d731..74eaac26f8b8 100644 --- a/Documentation/filesystems/sysfs-pci.txt +++ b/Documentation/filesystems/sysfs-pci.txt | |||
@@ -39,7 +39,7 @@ files, each with their own function. | |||
39 | local_cpus nearby CPU mask (cpumask, ro) | 39 | local_cpus nearby CPU mask (cpumask, ro) |
40 | remove remove device from kernel's list (ascii, wo) | 40 | remove remove device from kernel's list (ascii, wo) |
41 | resource PCI resource host addresses (ascii, ro) | 41 | resource PCI resource host addresses (ascii, ro) |
42 | resource0..N PCI resource N, if present (binary, mmap) | 42 | resource0..N PCI resource N, if present (binary, mmap, rw[1]) |
43 | resource0_wc..N_wc PCI WC map resource N, if prefetchable (binary, mmap) | 43 | resource0_wc..N_wc PCI WC map resource N, if prefetchable (binary, mmap) |
44 | rom PCI ROM resource, if present (binary, ro) | 44 | rom PCI ROM resource, if present (binary, ro) |
45 | subsystem_device PCI subsystem device (ascii, ro) | 45 | subsystem_device PCI subsystem device (ascii, ro) |
@@ -54,13 +54,16 @@ files, each with their own function. | |||
54 | binary - file contains binary data | 54 | binary - file contains binary data |
55 | cpumask - file contains a cpumask type | 55 | cpumask - file contains a cpumask type |
56 | 56 | ||
57 | [1] rw for RESOURCE_IO (I/O port) regions only | ||
58 | |||
57 | The read only files are informational, writes to them will be ignored, with | 59 | The read only files are informational, writes to them will be ignored, with |
58 | the exception of the 'rom' file. Writable files can be used to perform | 60 | the exception of the 'rom' file. Writable files can be used to perform |
59 | actions on the device (e.g. changing config space, detaching a device). | 61 | actions on the device (e.g. changing config space, detaching a device). |
60 | mmapable files are available via an mmap of the file at offset 0 and can be | 62 | mmapable files are available via an mmap of the file at offset 0 and can be |
61 | used to do actual device programming from userspace. Note that some platforms | 63 | used to do actual device programming from userspace. Note that some platforms |
62 | don't support mmapping of certain resources, so be sure to check the return | 64 | don't support mmapping of certain resources, so be sure to check the return |
63 | value from any attempted mmap. | 65 | value from any attempted mmap. The most notable of these are I/O port |
66 | resources, which also provide read/write access. | ||
64 | 67 | ||
65 | The 'enable' file provides a counter that indicates how many times the device | 68 | The 'enable' file provides a counter that indicates how many times the device |
66 | has been enabled. If the 'enable' file currently returns '4', and a '1' is | 69 | has been enabled. If the 'enable' file currently returns '4', and a '1' is |
diff --git a/Documentation/filesystems/sysfs.txt b/Documentation/filesystems/sysfs.txt index 931c806642c5..5d1335faec2d 100644 --- a/Documentation/filesystems/sysfs.txt +++ b/Documentation/filesystems/sysfs.txt | |||
@@ -4,7 +4,7 @@ sysfs - _The_ filesystem for exporting kernel objects. | |||
4 | Patrick Mochel <mochel@osdl.org> | 4 | Patrick Mochel <mochel@osdl.org> |
5 | Mike Murphy <mamurph@cs.clemson.edu> | 5 | Mike Murphy <mamurph@cs.clemson.edu> |
6 | 6 | ||
7 | Revised: 22 February 2009 | 7 | Revised: 15 July 2010 |
8 | Original: 10 January 2003 | 8 | Original: 10 January 2003 |
9 | 9 | ||
10 | 10 | ||
@@ -124,7 +124,7 @@ show and store methods of the attribute owners. | |||
124 | 124 | ||
125 | struct sysfs_ops { | 125 | struct sysfs_ops { |
126 | ssize_t (*show)(struct kobject *, struct attribute *, char *); | 126 | ssize_t (*show)(struct kobject *, struct attribute *, char *); |
127 | ssize_t (*store)(struct kobject *, struct attribute *, const char *); | 127 | ssize_t (*store)(struct kobject *, struct attribute *, const char *, size_t); |
128 | }; | 128 | }; |
129 | 129 | ||
130 | [ Subsystems should have already defined a struct kobj_type as a | 130 | [ Subsystems should have already defined a struct kobj_type as a |
@@ -139,18 +139,22 @@ calls the associated methods. | |||
139 | 139 | ||
140 | To illustrate: | 140 | To illustrate: |
141 | 141 | ||
142 | #define to_dev(obj) container_of(obj, struct device, kobj) | ||
142 | #define to_dev_attr(_attr) container_of(_attr, struct device_attribute, attr) | 143 | #define to_dev_attr(_attr) container_of(_attr, struct device_attribute, attr) |
143 | #define to_dev(d) container_of(d, struct device, kobj) | ||
144 | 144 | ||
145 | static ssize_t | 145 | static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, |
146 | dev_attr_show(struct kobject * kobj, struct attribute * attr, char * buf) | 146 | char *buf) |
147 | { | 147 | { |
148 | struct device_attribute * dev_attr = to_dev_attr(attr); | 148 | struct device_attribute *dev_attr = to_dev_attr(attr); |
149 | struct device * dev = to_dev(kobj); | 149 | struct device *dev = to_dev(kobj); |
150 | ssize_t ret = 0; | 150 | ssize_t ret = -EIO; |
151 | 151 | ||
152 | if (dev_attr->show) | 152 | if (dev_attr->show) |
153 | ret = dev_attr->show(dev, buf); | 153 | ret = dev_attr->show(dev, dev_attr, buf); |
154 | if (ret >= (ssize_t)PAGE_SIZE) { | ||
155 | print_symbol("dev_attr_show: %s returned bad count\n", | ||
156 | (unsigned long)dev_attr->show); | ||
157 | } | ||
154 | return ret; | 158 | return ret; |
155 | } | 159 | } |
156 | 160 | ||
@@ -163,10 +167,9 @@ To read or write attributes, show() or store() methods must be | |||
163 | specified when declaring the attribute. The method types should be as | 167 | specified when declaring the attribute. The method types should be as |
164 | simple as those defined for device attributes: | 168 | simple as those defined for device attributes: |
165 | 169 | ||
166 | ssize_t (*show)(struct device * dev, struct device_attribute * attr, | 170 | ssize_t (*show)(struct device *dev, struct device_attribute *attr, char *buf); |
167 | char * buf); | 171 | ssize_t (*store)(struct device *dev, struct device_attribute *attr, |
168 | ssize_t (*store)(struct device * dev, struct device_attribute * attr, | 172 | const char *buf, size_t count); |
169 | const char * buf); | ||
170 | 173 | ||
171 | IOW, they should take only an object, an attribute, and a buffer as parameters. | 174 | IOW, they should take only an object, an attribute, and a buffer as parameters. |
172 | 175 | ||
@@ -209,8 +212,8 @@ Other notes: | |||
209 | 212 | ||
210 | - show() should always use snprintf(). | 213 | - show() should always use snprintf(). |
211 | 214 | ||
212 | - store() should return the number of bytes used from the buffer. This | 215 | - store() should return the number of bytes used from the buffer. If the |
213 | can be done using strlen(). | 216 | entire buffer has been used, just return the count argument. |
214 | 217 | ||
215 | - show() or store() can always return errors. If a bad value comes | 218 | - show() or store() can always return errors. If a bad value comes |
216 | through, be sure to return an error. | 219 | through, be sure to return an error. |
@@ -223,15 +226,18 @@ Other notes: | |||
223 | 226 | ||
224 | A very simple (and naive) implementation of a device attribute is: | 227 | A very simple (and naive) implementation of a device attribute is: |
225 | 228 | ||
226 | static ssize_t show_name(struct device *dev, struct device_attribute *attr, char *buf) | 229 | static ssize_t show_name(struct device *dev, struct device_attribute *attr, |
230 | char *buf) | ||
227 | { | 231 | { |
228 | return snprintf(buf, PAGE_SIZE, "%s\n", dev->name); | 232 | return snprintf(buf, PAGE_SIZE, "%s\n", dev->name); |
229 | } | 233 | } |
230 | 234 | ||
231 | static ssize_t store_name(struct device * dev, const char * buf) | 235 | static ssize_t store_name(struct device *dev, struct device_attribute *attr, |
236 | const char *buf, size_t count) | ||
232 | { | 237 | { |
233 | sscanf(buf, "%20s", dev->name); | 238 | snprintf(dev->name, sizeof(dev->name), "%.*s", |
234 | return strnlen(buf, PAGE_SIZE); | 239 | (int)min(count, sizeof(dev->name) - 1), buf); |
240 | return count; | ||
235 | } | 241 | } |
236 | 242 | ||
237 | static DEVICE_ATTR(name, S_IRUGO, show_name, store_name); | 243 | static DEVICE_ATTR(name, S_IRUGO, show_name, store_name); |
@@ -327,7 +333,7 @@ Structure: | |||
327 | struct bus_attribute { | 333 | struct bus_attribute { |
328 | struct attribute attr; | 334 | struct attribute attr; |
329 | ssize_t (*show)(struct bus_type *, char * buf); | 335 | ssize_t (*show)(struct bus_type *, char * buf); |
330 | ssize_t (*store)(struct bus_type *, const char * buf); | 336 | ssize_t (*store)(struct bus_type *, const char * buf, size_t count); |
331 | }; | 337 | }; |
332 | 338 | ||
333 | Declaring: | 339 | Declaring: |
diff --git a/Documentation/filesystems/vfat.txt b/Documentation/filesystems/vfat.txt index eed520fd0c8e..ead764b2728f 100644 --- a/Documentation/filesystems/vfat.txt +++ b/Documentation/filesystems/vfat.txt | |||
@@ -165,7 +165,8 @@ TEST SUITE | |||
165 | If you plan to make any modifications to the vfat filesystem, please | 165 | If you plan to make any modifications to the vfat filesystem, please |
166 | get the test suite that comes with the vfat distribution at | 166 | get the test suite that comes with the vfat distribution at |
167 | 167 | ||
168 | http://bmrc.berkeley.edu/people/chaffee/vfat.html | 168 | http://web.archive.org/web/*/http://bmrc.berkeley.edu/ |
169 | people/chaffee/vfat.html | ||
169 | 170 | ||
170 | This tests quite a few parts of the vfat filesystem and additional | 171 | This tests quite a few parts of the vfat filesystem and additional |
171 | tests for new features or untested features would be appreciated. | 172 | tests for new features or untested features would be appreciated. |
diff --git a/Documentation/filesystems/xfs.txt b/Documentation/filesystems/xfs.txt index 9878f50d6ed6..7bff3e4f35df 100644 --- a/Documentation/filesystems/xfs.txt +++ b/Documentation/filesystems/xfs.txt | |||
@@ -131,17 +131,6 @@ When mounting an XFS filesystem, the following options are accepted. | |||
131 | Don't check for double mounted file systems using the file system uuid. | 131 | Don't check for double mounted file systems using the file system uuid. |
132 | This is useful to mount LVM snapshot volumes. | 132 | This is useful to mount LVM snapshot volumes. |
133 | 133 | ||
134 | osyncisosync | ||
135 | Make O_SYNC writes implement true O_SYNC. WITHOUT this option, | ||
136 | Linux XFS behaves as if an "osyncisdsync" option is used, | ||
137 | which will make writes to files opened with the O_SYNC flag set | ||
138 | behave as if the O_DSYNC flag had been used instead. | ||
139 | This can result in better performance without compromising | ||
140 | data safety. | ||
141 | However if this option is not in effect, timestamp updates from | ||
142 | O_SYNC writes can be lost if the system crashes. | ||
143 | If timestamp updates are critical, use the osyncisosync option. | ||
144 | |||
145 | uquota/usrquota/uqnoenforce/quota | 134 | uquota/usrquota/uqnoenforce/quota |
146 | User disk quota accounting enabled, and limits (optionally) | 135 | User disk quota accounting enabled, and limits (optionally) |
147 | enforced. Refer to xfs_quota(8) for further details. | 136 | enforced. Refer to xfs_quota(8) for further details. |