From: Kenn H. <ke...@us...> - 2002-05-31 01:58:44
|
Update of /cvsroot/linux-vax/kernel-2.5/drivers/scsi In directory usw-pr-cvs1:/tmp/cvs-serv7433/drivers/scsi Modified Files: Makefile scsi_ioctl.c scsi_merge.c Log Message: Merge with Linux 2.5.1. Index: Makefile =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/drivers/scsi/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- Makefile 20 May 2002 00:33:36 -0000 1.2 +++ Makefile 31 May 2002 01:58:39 -0000 1.3 @@ -135,9 +135,10 @@ list-multi := scsi_mod.o sd_mod.o sr_mod.o initio.o a100u2w.o cpqfc.o scsi_mod-objs := scsi.o hosts.o scsi_ioctl.o constants.o \ scsicam.o scsi_proc.o scsi_error.o \ - scsi_obsolete.o scsi_queue.o scsi_lib.o \ + scsi_queue.o scsi_lib.o \ scsi_merge.o scsi_dma.o scsi_scan.o \ scsi_syms.o + sd_mod-objs := sd.o sr_mod-objs := sr.o sr_ioctl.o sr_vendor.o initio-objs := ini9100u.o i91uscsi.o Index: scsi_ioctl.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/drivers/scsi/scsi_ioctl.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- scsi_ioctl.c 20 May 2002 00:33:36 -0000 1.2 +++ scsi_ioctl.c 31 May 2002 01:58:39 -0000 1.3 @@ -78,8 +78,7 @@ * *(char *) ((int *) arg)[2] the actual command byte. * * Note that if more than MAX_BUF bytes are requested to be transferred, - * the ioctl will fail with error EINVAL. MAX_BUF can be increased in - * the future by increasing the size that scsi_malloc will accept. + * the ioctl will fail with error EINVAL. * * This size *does not* include the initial lengths that were passed. * @@ -197,10 +196,14 @@ unsigned int inlen, outlen, cmdlen; unsigned int needed, buf_needed; int timeout, retries, result; - int data_direction; + int data_direction, gfp_mask = GFP_KERNEL; if (!sic) return -EINVAL; + + if (dev->host->unchecked_isa_dma) + gfp_mask |= GFP_DMA; + /* * Verify that we can read at least this much. */ @@ -232,7 +235,7 @@ buf_needed = (buf_needed + 511) & ~511; if (buf_needed > MAX_BUF) buf_needed = MAX_BUF; - buf = (char *) scsi_malloc(buf_needed); + buf = (char *) kmalloc(buf_needed, gfp_mask); if (!buf) return -ENOMEM; memset(buf, 0, buf_needed); @@ -341,7 +344,7 @@ error: if (buf) - scsi_free(buf, buf_needed); + kfree(buf); return result; Index: scsi_merge.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/drivers/scsi/scsi_merge.c,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 --- scsi_merge.c 30 May 2002 23:46:02 -0000 1.1.1.2 +++ scsi_merge.c 31 May 2002 01:58:39 -0000 1.2 @@ -135,6 +135,7 @@ */ bounce_limit = BLK_BOUNCE_HIGH; if (SHpnt->highmem_io && (SDpnt->type == TYPE_DISK)) { +#if CONFIG_PCI if (!PCI_DMA_BUS_IS_PHYS) /* Platforms with virtual-DMA translation * hardware have no practical limit. @@ -142,6 +143,7 @@ bounce_limit = BLK_BOUNCE_ANY; else bounce_limit = SHpnt->pci_dev->dma_mask; +#endif } if (SHpnt->unchecked_isa_dma) bounce_limit = BLK_BOUNCE_ISA; |