Re: memory leak in scsi_cmd_cache 2.6.15

From: James Bottomley
Date: Sun Jan 29 2006 - 11:37:18 EST


On Sun, 2006-01-29 at 17:50 +0200, Pasi Kärkkäinen wrote:
> Are all sata drivers affected by this bug in 2.6.15?

Well, all SCSI drivers are affected by it, yes. However, SATA devices
are peculiarly affected because the ordered_flush method of enforcing
barriers, which is where the leak is, can only be implemented for
devices that don't do tag command queueing (i.e. don't have multiple
commands outstanding for a given single device). By and large, SATA
drivers are the only drivers in the SCSI subsystem that can't do tag
command queueing, which is why the problem didn't show up for any other
type of SCSI driver.

> Any 'official' patch available?

Well, yes, 2.6.16-rc1 has this fixed. I can't see backporting this to
2.6.15.x since it represents a significant functionality enhancement as
well, so I'd lean towards just forcing ordered_flush to zero in 2.6.15.x
which seems to be the best bug fix.

> Or is the recommended workaround to set ordered_flush to 0 to fix this..
> does that have any downsides?

setting ordered_flush to zero for 2.6.15 turns off the flushing
functionality and restores the old behaviour. I don't see that there
would be any down side to this.

James


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/