sata_mv: implement IRQ coalescing (v2)
authorMark Lord <liml@rtr.ca>
Wed, 11 Mar 2009 02:01:17 +0000 (22:01 -0400)
committerJeff Garzik <jgarzik@redhat.com>
Wed, 25 Mar 2009 02:35:37 +0000 (22:35 -0400)
commit2b748a0a344847fe6b924407bbe153e1878c9f09
tree0a84cdbc70d0b9a7e974299bbaa0cba4b9610a58
parent40f21b1124a9552bc093469280eb8239dc5f73d7
sata_mv: implement IRQ coalescing (v2)

Add IRQ coalescing to sata_mv (off by default).

This feature can reduce total interrupt overhead for RAID setups
in some situations, by deferring the interrupt signal until one or both of:

 a) a specified io_count (completed SATA commands) is achieved, or
 b) a specified time interval elapses after an IO completion.

For now, module parameters are used to set the irq_coalescing_io_count
and irq_coalescing_usecs (timeout) globally.  These may eventually
be supplemented with sysfs attributes, so that thresholds can be set
on-the-fly and on a per-chip (or even per-host_controller) basis.

Signed-off-by: Mark Lord <mlord@pobox.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/sata_mv.c