<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/base, branch v2.6.14.4</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/base?h=v2.6.14.4</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/base?h=v2.6.14.4'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2005-10-08T22:00:57Z</updated>
<entry>
<title>[PATCH] gfp flags annotations - part 1</title>
<updated>2005-10-08T22:00:57Z</updated>
<author>
<name>Al Viro</name>
<email>viro@ftp.linux.org.uk</email>
</author>
<published>2005-10-07T06:46:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=dd0fc66fb33cd610bc1a5db8a5e232d34879b4d7'/>
<id>urn:sha1:dd0fc66fb33cd610bc1a5db8a5e232d34879b4d7</id>
<content type='text'>
 - added typedef unsigned int __nocast gfp_t;

 - replaced __nocast uses for gfp flags with gfp_t - it gives exactly
   the same warnings as far as sparse is concerned, doesn't change
   generated code (from gcc point of view we replaced unsigned int with
   typedef) and documents what's going on far better.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fix class symlinks in sysfs</title>
<updated>2005-09-22T14:58:24Z</updated>
<author>
<name>Bill Nottingham</name>
<email>notting@redhat.com</email>
</author>
<published>2005-09-22T07:47:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3e51377dc412df9d4933c4fd1a147b5b560abe10'/>
<id>urn:sha1:3e51377dc412df9d4933c4fd1a147b5b560abe10</id>
<content type='text'>
The class symlinks in sysfs don't properly handle changing device names.

To demonstrate, rename your network device from eth0 to eth1. Your
pci (or usb, or whatever) device will still have a 'net:eth0' link,
except now it points to /sys/class/net/eth1.

The attached patch makes sure the class symlink name changes when
the class device name changes. It isn't 100% correct, it should be
using sysfs_rename_link. Unfortunately, sysfs_rename_link doesn't exist.

Signed-off-by: Bill Nottingham &lt;notting@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] Driver Core: fis bus rescan devices race</title>
<updated>2005-09-22T14:58:24Z</updated>
<author>
<name>Daniel Ritz</name>
<email>daniel.ritz@gmx.ch</email>
</author>
<published>2005-09-22T07:47:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4c898c7f2f286b204fefc5dddb568f755d195d0c'/>
<id>urn:sha1:4c898c7f2f286b204fefc5dddb568f755d195d0c</id>
<content type='text'>
bus_rescan_devices_helper() does not hold the dev-&gt;sem when it checks for
!dev-&gt;driver().  device_attach() holds the sem, but calls again
device_bind_driver() even when dev-&gt;driver is set.

What happens is that a first device_attach() call (module insertion time)
is on the way binding the device to a driver.  Another thread calls
bus_rescan_devices().  Now when bus_rescan_devices_helper() checks for
dev-&gt;driver it is still NULL 'cos the the prior device_attach() is not yet
finished.  But as soon as the first one releases the dev-&gt;sem the second
device_attach() tries to rebind the already bound device again.
device_bind_driver() does this blindly which leads to a corrupt
driver-&gt;klist_devices list (the device links itself, the head points to the
device).  Later a call to device_release_driver() sets dev-&gt;driver to NULL
and breaks the link it has to itself on knode_driver.  Rmmoding the driver
later calls driver_detach() which leads to an endless loop 'cos the list
head in klist_devices still points to the device.  And since dev-&gt;driver is
NULL it's stuck with the same device forever.  Boom.  And rmmod hangs.

Very easy to reproduce with new-style pcmcia and a 16bit card.  Just loop
modprobe &lt;pcmcia-modules&gt; ;cardctl eject; rmmod &lt;card driver, pcmcia
modules&gt;.

Easiest fix is to check if the device is already bound to a driver in
device_bind_driver().  This avoids the double binding.

Signed-off-by: Daniel Ritz &lt;daniel.ritz@gmx.ch&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] drivers/base/*: use kzalloc instead of kmalloc+memset</title>
<updated>2005-09-13T15:22:27Z</updated>
<author>
<name>Jiri Slaby</name>
<email>jirislaby@gmail.com</email>
</author>
<published>2005-09-13T08:25:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4aed0644d684428e811bb6944f032b460a3ab165'/>
<id>urn:sha1:4aed0644d684428e811bb6944f032b460a3ab165</id>
<content type='text'>
Fixes a bunch of memset bugs too.

Signed-off-by: Lion Vollnhals &lt;webmaster@schiggl.de&gt;
Signed-off-by: Jiri Slaby &lt;xslaby@fi.muni.cz&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] dmapool: Fix "nocast type" warnings</title>
<updated>2005-09-10T17:06:29Z</updated>
<author>
<name>Victor Fusco</name>
<email>victor@cetuc.puc-rio.br</email>
</author>
<published>2005-09-10T07:26:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3a11ec5e502cb61ee31095008318f9c107d9db60'/>
<id>urn:sha1:3a11ec5e502cb61ee31095008318f9c107d9db60</id>
<content type='text'>
Fix the sparse warning "implicit cast to nocast type"

Signed-off-by: Victor Fusco &lt;victor@cetuc.puc-rio.br&gt;
Signed-off-by: Domen Puncer &lt;domen@coderock.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[SCSI] Re-do "final klist fixes"</title>
<updated>2005-09-08T01:44:33Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@g5.osdl.org</email>
</author>
<published>2005-09-08T01:44:33Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=caf39e87cc1182f7dae84eefc43ca14d54c78ef9'/>
<id>urn:sha1:caf39e87cc1182f7dae84eefc43ca14d54c78ef9</id>
<content type='text'>
With the previous commit that introduces the klist enhancements, we can
now re-do 2b7d6a8cb9718fc1d9e826201b64909c44a915f4 again.
</content>
</entry>
<entry>
<title>[PATCH] fix klist semantics for lists which have elements removed on traversal</title>
<updated>2005-09-08T01:26:54Z</updated>
<author>
<name>James Bottomley</name>
<email>James.Bottomley@HansenPartnership.com</email>
</author>
<published>2005-09-06T23:56:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=34bb61f9ddabd7a7f909cbfb05592eb775f6662a'/>
<id>urn:sha1:34bb61f9ddabd7a7f909cbfb05592eb775f6662a</id>
<content type='text'>
The problem is that klists claim to provide semantics for safe traversal of
lists which are being modified.  The failure case is when traversal of a
list causes element removal (a fairly common case).  The issue is that
although the list node is refcounted, if it is embedded in an object (which
is universally the case), then the object will be freed regardless of the
klist refcount leading to slab corruption because the klist iterator refers
to the prior element to get the next.

The solution is to make the klist take and release references to the
embedding object meaning that the embedding object won't be released until
the list relinquishes the reference to it.

(akpm: fast-track this because it's needed for the 2.6.13 scsi merge)

Signed-off-by: James Bottomley &lt;James.Bottomley@SteelEye.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[SCSI] Revert "final klist fixes"</title>
<updated>2005-09-08T00:50:58Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@g5.osdl.org</email>
</author>
<published>2005-09-08T00:50:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=df4edad1787bbfa3c9c10824e4f11e9f4a7ec5c6'/>
<id>urn:sha1:df4edad1787bbfa3c9c10824e4f11e9f4a7ec5c6</id>
<content type='text'>
Revert commit 2b7d6a8cb9718fc1d9e826201b64909c44a915f4.

The "fix" was known to not even compile.  Duh.  That's not a fix.
That's just stupid.

Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6 </title>
<updated>2005-09-08T00:31:27Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@g5.osdl.org</email>
</author>
<published>2005-09-08T00:31:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0481990b758628e12f4b0a9e15094e70cefc7cd1'/>
<id>urn:sha1:0481990b758628e12f4b0a9e15094e70cefc7cd1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[PATCH] modified firmware_class.c to support no hotplug</title>
<updated>2005-09-07T23:57:26Z</updated>
<author>
<name>Abhay Salunke</name>
<email>Abhay_Salunke@dell.com</email>
</author>
<published>2005-09-06T22:17:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6e3eaab02028c4087a92711b20abb9e72cc803a7'/>
<id>urn:sha1:6e3eaab02028c4087a92711b20abb9e72cc803a7</id>
<content type='text'>
Upgrade the request_firmware_nowait function to not start the hotplug
action on a firmware update.

This patch is tested along with dell_rbu driver on i386 and x86-64 systems.

Signed-off-by: Abhay Salunke &lt;Abhay_Salunke@dell.com&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
</feed>
