On Tue, 24 Jul 2007 13:12:19 +0300 Boaz Harrosh wrote: > Randy Dunlap wrote: > > I prefer either of the !HIGHMEM or slave_alloc changes to adding > > a BUG_ON(). However, the SCSI people likely won't want to use the > > slave_alloc() change because then the driver may never get fixed. > > (Of course, it hasn't got fixed with the BUG happening either.) > > > > Anyway, I'll re-read Documentation/DMA*.txt to see if I can fix it. > > --- > > Hi Randy. > > could you please send me the patch you have with the .slave_alloc > solution for now. I would like to revise the patchset and send them > for inclusion now. They do fix some problems and let users work. > We can put a big fat warring and explanation about highmem in the > commit log comments so people can watch out. From: Randy Dunlap <randy.dunlap@xxxxxxxxxx> Cause highmem buffers to be bounced to low memory until this driver supports highmem addresses. Otherwise it just oopses on NULL buffer addresses. Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx> --- drivers/scsi/aha152x.c | 7 +++++++ 1 file changed, 7 insertions(+) --- linux-2622.orig/drivers/scsi/aha152x.c +++ linux-2622/drivers/scsi/aha152x.c @@ -3476,6 +3476,12 @@ static int aha152x_proc_info(struct Scsi return thislength < length ? thislength : length; } +static int aha152x_adjust_queue(struct scsi_device *device) +{ + blk_queue_bounce_limit(device->request_queue, BLK_BOUNCE_HIGH); + return 0; +} + static struct scsi_host_template aha152x_driver_template = { .module = THIS_MODULE, .name = AHA152X_REVID, @@ -3492,6 +3498,7 @@ static struct scsi_host_template aha152x .sg_tablesize = SG_ALL, .cmd_per_lun = 1, .use_clustering = DISABLE_CLUSTERING, + .slave_alloc = aha152x_adjust_queue, }; #if !defined(PCMCIA) - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html