1-6 are simple bugfixes that I am confident should be in 2.6.2.
7 is a bugfix that is fairly important, but could probably do with a
bit more testing first. It is not impossible that it could deadlock,
though I think I have caught and fixed all the problems.
8-10 are code simplication.
So maybe 7-10 should only go in -mm for now, but if it is a while
before 2.6.2, then maybe they can go in a 2.6.2-pre.
From: Mike Tran <mhtran@us.ibm.com>
If cannot find the device, return error (ENODEV) Otherwise, return success
(0)