<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/block/cciss.c, branch v2.6.16</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>[PATCH] cciss: softirq handler needs to save interrupt flags</title>
<updated>2006-02-07T18:11:19+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>axboe@suse.de</email>
</author>
<published>2006-02-07T14:00:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=d43da75fd6be4197c280903e1553eafcc39218e2'/>
<id>d43da75fd6be4197c280903e1553eafcc39218e2</id>
<content type='text'>
The softirq rq completion handler needs to save/restore interrupt flags
appropriately.

Signed-off-by: Jens Axboe &lt;axboe@suse.de&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The softirq rq completion handler needs to save/restore interrupt flags
appropriately.

Signed-off-by: Jens Axboe &lt;axboe@suse.de&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[PATCH] drivers/block: Replace pci_module_init() with pci_register_driver()</title>
<updated>2006-01-09T20:13:22+00:00</updated>
<author>
<name>Richard Knutsson</name>
<email>ricknu-0@student.ltu.se</email>
</author>
<published>2005-11-29T23:59:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=9bfab8cec652c80b4864b4d9247520dca042c2df'/>
<id>9bfab8cec652c80b4864b4d9247520dca042c2df</id>
<content type='text'>
Replace obsolete pci_module_init() with pci_register_driver().

Signed-off-by: Richard Knutsson &lt;ricknu-0@student.ltu.se&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace obsolete pci_module_init() with pci_register_driver().

Signed-off-by: Richard Knutsson &lt;ricknu-0@student.ltu.se&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[BLOCK] CCISS: update for blk softirq completions</title>
<updated>2006-01-09T15:04:06+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>axboe@suse.de</email>
</author>
<published>2006-01-09T15:04:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=a9925a06ea52a44b4bf4a941342e8240eaf22417'/>
<id>a9925a06ea52a44b4bf4a941342e8240eaf22417</id>
<content type='text'>
Signed-off-by: Jens Axboe &lt;axboe@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Jens Axboe &lt;axboe@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[PATCH] cciss: avoid defining useless MAJOR_NR macro</title>
<updated>2006-01-09T04:14:09+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2006-01-08T09:05:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=564de74a7e2778e1d11b2d2e50ee8dab1cf1456a'/>
<id>564de74a7e2778e1d11b2d2e50ee8dab1cf1456a</id>
<content type='text'>
This sneaked in with one of the updates.

Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This sneaked in with one of the updates.

Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[PATCH] drivers/block: Use ARRAY_SIZE macro</title>
<updated>2006-01-09T04:14:08+00:00</updated>
<author>
<name>Tobias Klauser</name>
<email>tklauser@nuerscht.ch</email>
</author>
<published>2006-01-08T09:05:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=945f390f02ce44a13aefc6d9449c99f33c9286a5'/>
<id>945f390f02ce44a13aefc6d9449c99f33c9286a5</id>
<content type='text'>
Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove a
duplicate of ARRAY_SIZE. Some trailing whitespaces are also removed.

drivers/block/acsi* has been left out as it's marked BROKEN.

Signed-off-by: Tobias Klauser &lt;tklauser@nuerscht.ch&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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove a
duplicate of ARRAY_SIZE. Some trailing whitespaces are also removed.

drivers/block/acsi* has been left out as it's marked BROKEN.

Signed-off-by: Tobias Klauser &lt;tklauser@nuerscht.ch&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;
</pre>
</div>
</content>
</entry>
<entry>
<title>[PATCH] cciss: adds MSI and MSI-X support</title>
<updated>2006-01-09T04:14:00+00:00</updated>
<author>
<name>Mike Miller</name>
<email>mike.miller@hp.com</email>
</author>
<published>2006-01-08T09:03:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=fb86a35b9ded8a7e53a432cbf28df603cdd4849c'/>
<id>fb86a35b9ded8a7e53a432cbf28df603cdd4849c</id>
<content type='text'>
This creates a new function, cciss_interrupt_mode called from
cciss_pci_init.  This function determines what type of interrupt vector to
use, i.e., MSI, MSI-X, or IO-APIC.

One noticeable difference is changing the interrupt field of the controller
struct to an array of 4 unsigned ints.  The Smart Array HW is capable of
generating 4 distinct interrupts depending on the transport method in use
during operation.  These are:

#define DOORBELL_INT 0
Used to notify the contoller of configuration updates. We only use
this feature when in polling mode.

#define PERF_MODE_INT 0
Used when the controller is in Performant Mode.

#define SIMPLE_MODE_INT 2
Used when the controller is in Simple Mode (current Linux implementation).

#define MEMQ_INT_MODE 3
Not used.

When using IO-APIC interrupts these 4 lines are OR'ed together so when any
one fires an interrupt an is generated.  In MSI or MSI-X mode this hardware
OR'ing is ignored.  We must register for our interrupt depending on what
mode the controller is running.  For Linux we use SIMPLE_MODE_INT
exclusively at this time.  Please consider this for inclusion.

Signed-off-by: Mike Miller &lt;mike.miller@hp.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This creates a new function, cciss_interrupt_mode called from
cciss_pci_init.  This function determines what type of interrupt vector to
use, i.e., MSI, MSI-X, or IO-APIC.

One noticeable difference is changing the interrupt field of the controller
struct to an array of 4 unsigned ints.  The Smart Array HW is capable of
generating 4 distinct interrupts depending on the transport method in use
during operation.  These are:

#define DOORBELL_INT 0
Used to notify the contoller of configuration updates. We only use
this feature when in polling mode.

#define PERF_MODE_INT 0
Used when the controller is in Performant Mode.

#define SIMPLE_MODE_INT 2
Used when the controller is in Simple Mode (current Linux implementation).

#define MEMQ_INT_MODE 3
Not used.

When using IO-APIC interrupts these 4 lines are OR'ed together so when any
one fires an interrupt an is generated.  In MSI or MSI-X mode this hardware
OR'ing is ignored.  We must register for our interrupt depending on what
mode the controller is running.  For Linux we use SIMPLE_MODE_INT
exclusively at this time.  Please consider this for inclusion.

Signed-off-by: Mike Miller &lt;mike.miller@hp.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;
</pre>
</div>
</content>
</entry>
<entry>
<title>[PATCH] Add block_device_operations.getgeo block device method</title>
<updated>2006-01-09T04:13:54+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2006-01-08T09:02:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=a885c8c4316e1c1d2d2c8755da3f3d14f852528d'/>
<id>a885c8c4316e1c1d2d2c8755da3f3d14f852528d</id>
<content type='text'>
HDIO_GETGEO is implemented in most block drivers, and all of them have to
duplicate the code to copy the structure to userspace, as well as getting
the start sector.  This patch moves that to common code [1] and adds a
-&gt;getgeo method to fill out the raw kernel hd_geometry structure.  For many
drivers this means -&gt;ioctl can go away now.

[1] the s390 block drivers are odd in this respect.  xpram sets -&gt;start
    to 4 always which seems more than odd, and the dasd driver shifts
    the start offset around, probably because of it's non-standard
    sector size.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: Jens Axboe &lt;axboe@suse.de&gt;
Cc: &lt;mike.miller@hp.com&gt;
Cc: Jeff Dike &lt;jdike@addtoit.com&gt;
Cc: Paolo Giarrusso &lt;blaisorblade@yahoo.it&gt;
Cc: Bartlomiej Zolnierkiewicz &lt;B.Zolnierkiewicz@elka.pw.edu.pl&gt;
Cc: Neil Brown &lt;neilb@cse.unsw.edu.au&gt;
Cc: Markus Lidel &lt;Markus.Lidel@shadowconnect.com&gt;
Cc: Russell King &lt;rmk@arm.linux.org.uk&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Cc: James Bottomley &lt;James.Bottomley@steeleye.com&gt;
Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
HDIO_GETGEO is implemented in most block drivers, and all of them have to
duplicate the code to copy the structure to userspace, as well as getting
the start sector.  This patch moves that to common code [1] and adds a
-&gt;getgeo method to fill out the raw kernel hd_geometry structure.  For many
drivers this means -&gt;ioctl can go away now.

[1] the s390 block drivers are odd in this respect.  xpram sets -&gt;start
    to 4 always which seems more than odd, and the dasd driver shifts
    the start offset around, probably because of it's non-standard
    sector size.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: Jens Axboe &lt;axboe@suse.de&gt;
Cc: &lt;mike.miller@hp.com&gt;
Cc: Jeff Dike &lt;jdike@addtoit.com&gt;
Cc: Paolo Giarrusso &lt;blaisorblade@yahoo.it&gt;
Cc: Bartlomiej Zolnierkiewicz &lt;B.Zolnierkiewicz@elka.pw.edu.pl&gt;
Cc: Neil Brown &lt;neilb@cse.unsw.edu.au&gt;
Cc: Markus Lidel &lt;Markus.Lidel@shadowconnect.com&gt;
Cc: Russell King &lt;rmk@arm.linux.org.uk&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Cc: James Bottomley &lt;James.Bottomley@steeleye.com&gt;
Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[BLOCK] add @uptodate to end_that_request_last() and @error to rq_end_io_fn()</title>
<updated>2006-01-06T08:49:03+00:00</updated>
<author>
<name>Tejun Heo</name>
<email>htejun@gmail.com</email>
</author>
<published>2006-01-06T08:49:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=8ffdc6550c47f75ca4e6c9f30a2a89063e035cf2'/>
<id>8ffdc6550c47f75ca4e6c9f30a2a89063e035cf2</id>
<content type='text'>
add @uptodate argument to end_that_request_last() and @error
to rq_end_io_fn().  there's no generic way to pass error code
to request completion function, making generic error handling
of non-fs request difficult (rq-&gt;errors is driver-specific and
each driver uses it differently).  this patch adds @uptodate
to end_that_request_last() and @error to rq_end_io_fn().

for fs requests, this doesn't really matter, so just using the
same uptodate argument used in the last call to
end_that_request_first() should suffice.  imho, this can also
help the generic command-carrying request jens is working on.

Signed-off-by: tejun heo &lt;htejun@gmail.com&gt;
Signed-Off-By: Jens Axboe &lt;axboe@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
add @uptodate argument to end_that_request_last() and @error
to rq_end_io_fn().  there's no generic way to pass error code
to request completion function, making generic error handling
of non-fs request difficult (rq-&gt;errors is driver-specific and
each driver uses it differently).  this patch adds @uptodate
to end_that_request_last() and @error to rq_end_io_fn().

for fs requests, this doesn't really matter, so just using the
same uptodate argument used in the last call to
end_that_request_first() should suffice.  imho, this can also
help the generic command-carrying request jens is working on.

Signed-off-by: tejun heo &lt;htejun@gmail.com&gt;
Signed-Off-By: Jens Axboe &lt;axboe@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[PATCH] cciss: fix for deregister_disk</title>
<updated>2005-12-13T06:31:16+00:00</updated>
<author>
<name>Mike Miller</name>
<email>mike.miller@hp.com</email>
</author>
<published>2005-12-13T06:17:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=2f6331faf58a4727a9f1138cd6db30d05b124220'/>
<id>2f6331faf58a4727a9f1138cd6db30d05b124220</id>
<content type='text'>
This patch adds setting our drv-&gt;queue = NULL back in deregister_disk.  The
drv-&gt;queue is part of our controller struct.  blk_cleanup_queue works only
on the queue in the gendisk struct.

Signed-off-by: Mike Miller &lt;mike.miller@hp.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds setting our drv-&gt;queue = NULL back in deregister_disk.  The
drv-&gt;queue is part of our controller struct.  blk_cleanup_queue works only
on the queue in the gendisk struct.

Signed-off-by: Mike Miller &lt;mike.miller@hp.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;
</pre>
</div>
</content>
</entry>
<entry>
<title>[PATCH] cciss: double put_disk()</title>
<updated>2005-12-12T16:57:43+00:00</updated>
<author>
<name>Jens Axboe</name>
<email>axboe@suse.de</email>
</author>
<published>2005-12-12T08:37:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=b4788f6d55548e587ced330ece711456f40ec8f1'/>
<id>b4788f6d55548e587ced330ece711456f40ec8f1</id>
<content type='text'>
This undoes the put_disk patch I sent in before.

If I had been paying attention I would have seen that we call put_disk
from free_hba during driver unload.  That's the only time we want to
call it.  If it's called from deregister disk we may remove the
controller (cNd0) unintentionally.

Signed-off-by: Mike Miller &lt;mike.miller@hp.com&gt;
Signed-off-by: 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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This undoes the put_disk patch I sent in before.

If I had been paying attention I would have seen that we call put_disk
from free_hba during driver unload.  That's the only time we want to
call it.  If it's called from deregister disk we may remove the
controller (cNd0) unintentionally.

Signed-off-by: Mike Miller &lt;mike.miller@hp.com&gt;
Signed-off-by: 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;
</pre>
</div>
</content>
</entry>
</feed>
