<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/block/floppy.c, branch linux-2.6.18.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.18.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.18.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2006-09-01T18:39:08+00:00</updated>
<entry>
<title>[PATCH] exit early in floppy_init when no floppy exists</title>
<updated>2006-09-01T18:39:08+00:00</updated>
<author>
<name>Olaf Hering</name>
<email>olaf@aepfle.de</email>
</author>
<published>2006-09-01T04:27:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ef16b5194f3233a11851180cd82eafb76542047d'/>
<id>urn:sha1:ef16b5194f3233a11851180cd82eafb76542047d</id>
<content type='text'>
modprobe -v floppy on a Apple G5 writes incorrect stuff to dmesg:

Floppy drive(s): fd0 is 2.88M

The reason is that the legacy io check happens very late,
when part of the floppy stuff is already initialized.
check_legacy_ioport() returns either -ENODEV right away, or it walks
the device-tree looking for a floppy node.

Signed-off-by: Olaf Hering &lt;olaf@aepfle.de&gt;
Acked-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.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>[PATCH] lockdep: floppy.c irq release fix</title>
<updated>2006-07-03T22:27:00+00:00</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2006-07-03T07:24:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3e541a4ae534a7e59ad464af9abea382b3035724'/>
<id>urn:sha1:3e541a4ae534a7e59ad464af9abea382b3035724</id>
<content type='text'>
The lock validator triggered a number of bugs in the floppy driver, all
related to the floppy driver allocating and freeing irq and dma resources from
interrupt context.  The initial solution was to use schedule_work() to push
this into process context, but this caused further problems: for example the
current floppy driver in -mm2 is totally broken and all floppy commands time
out with an error.  (as reported by Barry K.  Nathan)

This patch tries another solution: simply get rid of all that dynamic IRQ and
DMA allocation/freeing.  I doubt it made much sense back in the heydays of
floppies (if two devices raced for DMA or IRQ resources then we didnt handle
those cases too gracefully anyway), and today it makes near zero sense.

So the new code does the simplest and most straightforward thing: allocate IRQ
and DMA resources at module init time, and free them at module removal time.
Dont try to release while the driver is operational.  This, besides making the
floppy driver functional again has an added bonus, floppy IRQ stats are
finally persistent and visible in /proc/interrupts:

  6: 63 XT-PIC-level floppy

Besides normal floppy IO i have also tested IO error handling, motor-off
timeouts, etc.  - and everything seems to be working fine.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.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] devfs: Remove the devfs_fs_kernel.h file from the tree</title>
<updated>2006-06-26T19:25:08+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2005-06-21T04:15:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ff23eca3e8f613034e0d20ff86f6a89b62f5a14e'/>
<id>urn:sha1:ff23eca3e8f613034e0d20ff86f6a89b62f5a14e</id>
<content type='text'>
Also fixes up all files that #include it.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>[PATCH] devfs: Remove devfs_remove() function from the kernel tree</title>
<updated>2006-06-26T19:25:07+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2005-06-21T04:15:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8ab5e4c15b53e147c08031a959d9f776823dbe73'/>
<id>urn:sha1:8ab5e4c15b53e147c08031a959d9f776823dbe73</id>
<content type='text'>
Removes the devfs_remove() function and all callers of it.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>[PATCH] devfs: Remove devfs_mk_bdev() function from the kernel tree</title>
<updated>2006-06-26T19:25:06+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2005-06-21T04:15:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1a715c5cf917326a285533d1116d725f5f2593c2'/>
<id>urn:sha1:1a715c5cf917326a285533d1116d725f5f2593c2</id>
<content type='text'>
Removes the devfs_mk_bdev() function and all callers of it.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>[PATCH] devfs: Remove devfs_mk_dir() function from the kernel tree</title>
<updated>2006-06-26T19:25:06+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2005-06-21T04:15:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=95dc112a5770dc670a1b45a3d9ee346fdd2b2697'/>
<id>urn:sha1:95dc112a5770dc670a1b45a3d9ee346fdd2b2697</id>
<content type='text'>
Removes the devfs_mk_dir() function and all callers of it.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>[PATCH] powerpc: Use check_legacy_ioport() on ppc32 too.</title>
<updated>2006-04-28T11:04:55+00:00</updated>
<author>
<name>David Woodhouse</name>
<email>dwmw2@infradead.org</email>
</author>
<published>2006-04-24T22:22:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1269277a5e7c6d7ae1852e648a8bcdb78035e9fa'/>
<id>urn:sha1:1269277a5e7c6d7ae1852e648a8bcdb78035e9fa</id>
<content type='text'>
Some people report that we die on some Macs when we are expecting to
catch machine checks after poking at some random I/O address. I'd seen
it happen on my dual G4 with serial ports until we fixed those to use
OF, but now other users are reporting it with i8042.

This expands the use of check_legacy_ioport() to avoid that situation
even on 32-bit kernels.

Signed-off-by: David Woodhouse &lt;dwmw2@infradead.org&gt;
Signed-off-by: Paul Mackerras &lt;paulus@samba.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] drivers/block/*: use time_after() and friends</title>
<updated>2006-03-28T17:16:06+00:00</updated>
<author>
<name>Marcelo Feitoza Parisi</name>
<email>marcelo@feitoza.com.br</email>
</author>
<published>2006-03-28T09:56:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=50297cbf07427b47f0fff5ade8e21cdabf860249'/>
<id>urn:sha1:50297cbf07427b47f0fff5ade8e21cdabf860249</id>
<content type='text'>
They deal with wrapping correctly and are nicer to read.

Signed-off-by: Marcelo Feitoza Parisi &lt;marcelo@feitoza.com.br&gt;
Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Cc: Jens Axboe &lt;axboe@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>[PATCH] drivers/block/floppy.c: dont free_irq() from irq context</title>
<updated>2006-03-26T16:56:53+00:00</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2006-03-26T09:36:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6dc659d813fdd1789e605d69d0b8762d284e8c60'/>
<id>urn:sha1:6dc659d813fdd1789e605d69d0b8762d284e8c60</id>
<content type='text'>
free_irq() should not be executed from softirq context.

Found by the lock validator.  The fix is to push fd_free_irq() into
keventd.  The code validates fine with this patch applied.

(akpm: this is revolting, but so is floppy.c)

[akpm@osdl.org: added flush_scheduled_work()]
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&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] block/floppy: fix section mismatch warnings</title>
<updated>2006-03-25T16:22:53+00:00</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2006-03-25T11:07:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1efa64696bc55cc396eefa9838a90d106dfab6bf'/>
<id>urn:sha1:1efa64696bc55cc396eefa9838a90d106dfab6bf</id>
<content type='text'>
In latest -mm a number of section mismatch warnings are generated for
floppy.o like the following:

WARNING: drivers/block/floppy.o - Section mismatch: reference to    \
.init.data: from .text between 'init_module' (at offset 0x6976) and \
'cleanup_module'

The warning are caused by a reference to floppy_init() which is __init from
init_module() which is not declared __init.  Declaring init_module() _init
fixes this.

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
</feed>
