<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/init/do_mounts.c, branch v3.4.52</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/init/do_mounts.c?h=v3.4.52</id>
<link rel='self' href='https://git.amat.us/linux/atom/init/do_mounts.c?h=v3.4.52'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-05-05T17:04:40Z</updated>
<entry>
<title>init: don't try mounting device as nfs root unless type fully matches</title>
<updated>2012-05-05T17:04:40Z</updated>
<author>
<name>Sasha Levin</name>
<email>levinsasha928@gmail.com</email>
</author>
<published>2012-05-05T15:06:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=377485f6244af255b04d662cf19cddbbc4ae4310'/>
<id>urn:sha1:377485f6244af255b04d662cf19cddbbc4ae4310</id>
<content type='text'>
Currently, we'll try mounting any device who's major device number is
UNNAMED_MAJOR as NFS root.  This would happen for non-NFS devices as
well (such as 9p devices) but it wouldn't cause any issues since
mounting the device as NFS would fail quickly and the code proceeded to
doing the proper mount:

       [  101.522716] VFS: Unable to mount root fs via NFS, trying floppy.
       [  101.534499] VFS: Mounted root (9p filesystem) on device 0:18.

Commit 6829a048102a ("NFS: Retry mounting NFSROOT") introduced retries
when mounting NFS root, which means that now we don't immediately fail
and instead it takes an additional 90+ seconds until we stop retrying,
which has revealed the issue this patch fixes.

This meant that it would take an additional 90 seconds to boot when
we're not using a device type which gets detected in order before NFS.

This patch modifies the NFS type check to require device type to be
'Root_NFS' instead of requiring the device to have an UNNAMED_MAJOR
major.  This makes boot process cleaner since we now won't go through
the NFS mounting code at all when the device isn't an NFS root
("/dev/nfs").

Signed-off-by: Sasha Levin &lt;levinsasha928@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>init/do_mounts.c: print error code on mount failure</title>
<updated>2012-03-23T23:58:38Z</updated>
<author>
<name>Bernhard Walle</name>
<email>bernhard@bwalle.de</email>
</author>
<published>2012-03-23T22:02:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0e0cb892a8dac7c76321c899934705e5f0812574'/>
<id>urn:sha1:0e0cb892a8dac7c76321c899934705e5f0812574</id>
<content type='text'>
Printing the error code makes it easier to debug the cause of a mount
failure.  For example I had the problem that the root file system could
not be mounted read-writeable because my SD card was write-protected.
Without an error code it looks like the SD card was not detected at all.

Signed-off-by: Bernhard Walle &lt;bernhard@bwalle.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'nfs-for-3.3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs</title>
<updated>2012-01-10T22:57:40Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2012-01-10T22:57:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=57eccf1c2acae2fcb748730881ba75643fc31c81'/>
<id>urn:sha1:57eccf1c2acae2fcb748730881ba75643fc31c81</id>
<content type='text'>
* 'nfs-for-3.3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
  NFSv4: Change the default setting of the nfs4_disable_idmapping parameter
  NFSv4: Save the owner/group name string when doing open
  NFS: Remove pNFS bloat from the generic write path
  pnfs-obj: Must return layout on IO error
  pnfs-obj: pNFS errors are communicated on iodata-&gt;pnfs_error
  NFS: Cache state owners after files are closed
  NFS: Clean up nfs4_find_state_owners_locked()
  NFSv4: include bitmap in nfsv4 get acl data
  nfs: fix a minor do_div portability issue
  NFSv4.1: cleanup comment and debug printk
  NFSv4.1: change nfs4_free_slot parameters for dynamic slots
  NFSv4.1: cleanup init and reset of session slot tables
  NFSv4.1: fix backchannel slotid off-by-one bug
  nfs: fix regression in handling of context= option in NFSv4
  NFS - fix recent breakage to NFS error handling.
  NFS: Retry mounting NFSROOT
  SUNRPC: Clean up the RPCSEC_GSS service ticket requests
</content>
</entry>
<entry>
<title>vfs: prefer -&gt;dentry-&gt;d_sb to -&gt;mnt-&gt;mnt_sb</title>
<updated>2012-01-07T04:16:53Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2011-12-07T23:16:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d8c9584ea2a92879f471fd3a2be3af6c534fb035'/>
<id>urn:sha1:d8c9584ea2a92879f471fd3a2be3af6c534fb035</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>NFS: Retry mounting NFSROOT</title>
<updated>2012-01-05T15:42:39Z</updated>
<author>
<name>Chuck Lever</name>
<email>chuck.lever@oracle.com</email>
</author>
<published>2011-12-05T20:40:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=43717c7daebf10b43f12e68512484b3095bb1ba5'/>
<id>urn:sha1:43717c7daebf10b43f12e68512484b3095bb1ba5</id>
<content type='text'>
Lukas Razik &lt;linux@razik.name&gt; reports that on his SPARC system,
booting with an NFS root file system stopped working after commit
56463e50 "NFS: Use super.c for NFSROOT mount option parsing."

We found that the network switch to which Lukas' client was attached
was delaying access to the LAN after the client's NIC driver reported
that its link was up.  The delay was longer than the timeouts used in
the NFS client during mounting.

NFSROOT worked for Lukas before commit 56463e50 because in those
kernels, the client's first operation was an rpcbind request to
determine which port the NFS server was listening on.  When that
request failed after a long timeout, the client simply selected the
default NFS port (2049).  By that time the switch was allowing access
to the LAN, and the mount succeeded.

Neither of these client behaviors is desirable, so reverting 56463e50
is really not a choice.  Instead, introduce a mechanism that retries
the NFSROOT mount request several times.  This is the same tactic that
normal user space NFS mounts employ to overcome server and network
delays.

Signed-off-by: Lukas Razik &lt;linux@razik.name&gt;
[ cel: match kernel coding style, add proper patch description ]
[ cel: add exponential back-off ]
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Tested-by: Lukas Razik &lt;linux@razik.name&gt;
Cc: stable@kernel.org # &gt; 2.6.38
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>init: add root=PARTUUID=UUID/PARTNROFF=%d support</title>
<updated>2011-11-02T23:07:01Z</updated>
<author>
<name>Will Drewry</name>
<email>wad@chromium.org</email>
</author>
<published>2011-11-02T20:38:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=79975f1327850ef198ada994c2fc44b7d1ea8935'/>
<id>urn:sha1:79975f1327850ef198ada994c2fc44b7d1ea8935</id>
<content type='text'>
Expand root=PARTUUID=UUID syntax to support selecting a root partition by
integer offset from a known, unique partition.  This approach provides
similar properties to specifying a device and partition number, but using
the UUID as the unique path prior to evaluating the offset.

For example,
  root=PARTUUID=99DE9194-FC15-4223-9192-FC243948F88B/PARTNROFF=1
selects the partition with UUID 99DE.. then select the next
partition.

This change is motivated by a particular usecase in Chromium OS where the
bootloader can easily determine what partition it is on (by UUID) but
doesn't perform general partition table walking.

That said, support for this model provides a direct mechanism for the user
to modify the root partition to boot without specifically needing to
extract each UUID or update the bootloader explicitly when the root
partition UUID is changed (if it is recreated to be larger, for instance).
 Pinning to a /boot-style partition UUID allows the arbitrary root
partition reconfiguration/modifications with slightly less ambiguity than
just [dev][partition] and less stringency than the specific root partition
UUID.

[sfr@canb.auug.org.au: fix init sections warning]
Signed-off-by: Will Drewry &lt;wad@chromium.org&gt;
Cc: Kay Sievers &lt;kay.sievers@vrfy.org&gt;
Cc: Randy Dunlap &lt;rdunlap@xenotime.net&gt;
Cc: Namhyung Kim &lt;namhyung@gmail.com&gt;
Cc: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
Cc: Jens Axboe &lt;axboe@kernel.dk&gt;
Signed-off-by: Stephen Rothwell &lt;sfr@canb.auug.org.au&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Fix common misspellings</title>
<updated>2011-03-31T14:26:23Z</updated>
<author>
<name>Lucas De Marchi</name>
<email>lucas.demarchi@profusion.mobi</email>
</author>
<published>2011-03-31T01:57:33Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=25985edcedea6396277003854657b5f3cb31a628'/>
<id>urn:sha1:25985edcedea6396277003854657b5f3cb31a628</id>
<content type='text'>
Fixes generated by 'codespell' and manually reviewed.

Signed-off-by: Lucas De Marchi &lt;lucas.demarchi@profusion.mobi&gt;
</content>
</entry>
<entry>
<title>fs: use appropriate printk priority levels</title>
<updated>2011-03-23T00:44:10Z</updated>
<author>
<name>Mandeep Singh Baines</name>
<email>msb@chromium.org</email>
</author>
<published>2011-03-22T23:33:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=80cdc6dae76ea67d2b21bdca8df17ef47251eb8b'/>
<id>urn:sha1:80cdc6dae76ea67d2b21bdca8df17ef47251eb8b</id>
<content type='text'>
printk()s without a priority level default to KERN_WARNING.  To reduce
noise at KERN_WARNING, this patch set the priority level appriopriately
for unleveled printks()s.  This should be useful to folks that look at
dmesg warnings closely.

Signed-off-by: Mandeep Singh Baines &lt;msb@chromium.org&gt;
Cc: Jens Axboe &lt;axboe@kernel.dk&gt;
Cc: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>name_to_dev_t() must not call __init code</title>
<updated>2011-01-03T19:48:11Z</updated>
<author>
<name>Jan Beulich</name>
<email>JBeulich@novell.com</email>
</author>
<published>2011-01-03T15:07:02Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a1cf11d8f673a3ad91012c5da96beed06ecefde1'/>
<id>urn:sha1:a1cf11d8f673a3ad91012c5da96beed06ecefde1</id>
<content type='text'>
The function can't be __init itself (being called from some sysfs
handler), and hence none of the functions it calls can be either.

Signed-off-by: Jan Beulich &lt;jbeulich@novell.com&gt;
Acked-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>init: mark __user address space on string literals</title>
<updated>2010-10-26T23:52:15Z</updated>
<author>
<name>Namhyung Kim</name>
<email>namhyung@gmail.com</email>
</author>
<published>2010-10-26T21:22:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=562f5e638de4ef451226552fe8dd7847bacea24e'/>
<id>urn:sha1:562f5e638de4ef451226552fe8dd7847bacea24e</id>
<content type='text'>
When calling syscall service routines in kernel, some of arguments should
be user pointers but were missing __user markup on string literals.  Add
it.  Removes some sparse warnings.

Signed-off-by: Namhyung Kim &lt;namhyung@gmail.com&gt;
Cc: Phillip Lougher &lt;phillip@lougher.demon.co.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
