[libata] kill ata_sg_is_last()
commit3be6cbd73f74b4a3da82cc7d6e1688a4ae595fc7
authorJeff Garzik <jeff@garzik.org>
Thu, 18 Oct 2007 20:21:18 +0000 (18 16:21 -0400)
committerJeff Garzik <jeff@garzik.org>
Thu, 18 Oct 2007 20:21:18 +0000 (18 16:21 -0400)
treea077cf70d1cd438db34f5def23dd8f72f42b5a8c
parent858c9c406688bc7244986b5836265071edfd1d3f
[libata] kill ata_sg_is_last()

Short term, this works around a bug introduced by early sg-chaining
work.

Long term, removing this function eliminates a branch from a hot
path loop in each scatter/gather table build.  Also, as this code
demonstrates, we don't need to _track_ the end of the s/g list, as
long as we mark it in some way.  And doing so programatically is nice.
So its a useful cleanup, regardless of its short term effects.

Based conceptually on a quick patch by Jens Axboe.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/ata/pdc_adma.c
drivers/ata/sata_mv.c
drivers/ata/sata_sil24.c
drivers/scsi/ipr.c
include/linux/libata.h