* [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 @ 2005-11-11 21:49 James Bottomley 2005-11-11 22:23 ` Christoph Hellwig 0 siblings, 1 reply; 6+ messages in thread From: James Bottomley @ 2005-11-11 21:49 UTC (permalink / raw) To: Linus Torvalds, Andrew Morton; +Cc: SCSI Mailing List, Linux Kernel This should be the final round of updates that I've been doing a few integration tests on. The patch should be available here (checked the permissions this time) master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6.git The short changelog is: Adrian Bunk: o remove the obsolete SCSI qlogicisp driver Alan Stern: o Fix refcount leak in scsi_report_lun_scan Andrew Vasquez: o qla2xxx: Update version number to 8.01.03-k o qla2xxx: Correct ISP24xx soft-reset handling o qla2xxx: Correct additional posting issues during NVRAM accesses Brian King: o ipr: Driver version 2.1.0 o ipr: Better handle failure of adapter bringup commands o ipr: Increase ipr device scanning limits o ipr: New PCI Ids o pci: PCI ids for new ipr adapters o ipr: Support device reset to RAID disks o ipr: Support new device queueing model o ipr: New adapter error types o ipr: Handle device autosense o ipr: Module parm to disable RAID 0 auto create o ipr: Runtime reset o ipr: handle new adapter errors o ipr: Provide reset_adapter retry method for offlined adapters o ipr: Runtime debugging options o ipr: Fix adapter microcode update DMA mapping leak o ipr: Convert to use kzalloc o ipr: Write caching state host attribute o ipr: slave_alloc optimization o ipr: Prevent upper layer driver binding o ipr: Include all disks in supported list o ipr: Error logging cleanup o ipr: Handle unknown errors o ipr: Generic adapter error cleaup o ipr: Physical resource error logging macro o ipr: Cleanup error structures o ipr: Disk array rescanning fix Christoph Hellwig: o remove Scsi_Device typedef o remove Scsi_Pointer typedef o remove Scsi_Host_Template typedef o aic79xx: remove scsi_assign_lock usage o aic7xxx: remove scsi_assign_lock usage o megaraid (legacy): remove scsi_assign_lock usage o megaraid_mbox: remove scsi_assign_lock usage o megaraid_sas: fix EH locking o use a completion in scsi_send_eh_cmnd o remove scsi_wait_req o remove Scsi_Host.eh_active o tidy up scsi_error_handler edward goggin: o fix usb storage oops Jack Hammer: o ips: remove "Version Matching" James Bottomley: o Merge by hand (whitespace conflicts in libata.h) o sd: fix issue_flush o Merge by hand (conflicts between pending drivers and kfree cleanups) o raid class update o Fix transport class oops Mark Haverkamp: o aacraid: Fix read capacity 16 return data Mike Miller: o cciss: scsi error handling Ravi Anand: o qla2xxx: Correct abort issue during loop-down state o qla2xxx: Correct loop-in-transition issues Stefan Richter: o Documentation: typo in scsi/scsi_eh.txt Willem Riede: o ide-scsi fails to call idescsi_check_condition for things like "Medium not present" The diffstat is: Documentation/scsi/qlogicisp.txt | 30 b/Documentation/cciss.txt | 29 b/Documentation/scsi/00-INDEX | 2 b/Documentation/scsi/qlogicfas.txt | 3 b/Documentation/scsi/scsi_eh.txt | 8 b/Documentation/scsi/scsi_mid_low_api.txt | 4 b/drivers/block/acsi.c | 1 b/drivers/block/cciss.c | 188 ++ b/drivers/block/cciss.h | 11 b/drivers/block/cciss_scsi.c | 82 + b/drivers/scsi/53c7xx.c | 6 b/drivers/scsi/53c7xx.h | 2 b/drivers/scsi/Kconfig | 29 b/drivers/scsi/Makefile | 1 b/drivers/scsi/NCR53C9x.c | 10 b/drivers/scsi/NCR53C9x.h | 6 b/drivers/scsi/NCR53c406a.c | 4 b/drivers/scsi/a2091.c | 4 b/drivers/scsi/a2091.h | 2 b/drivers/scsi/a3000.c | 4 b/drivers/scsi/a3000.h | 2 b/drivers/scsi/aacraid/aachba.c | 23 b/drivers/scsi/aacraid/commsup.c | 4 b/drivers/scsi/advansys.c | 6 b/drivers/scsi/advansys.h | 2 b/drivers/scsi/aha152x.c | 4 b/drivers/scsi/aha1542.c | 4 b/drivers/scsi/aha1542.h | 2 b/drivers/scsi/aha1740.c | 2 b/drivers/scsi/aic7xxx/aic79xx_osm.c | 37 b/drivers/scsi/aic7xxx/aic7xxx_osm.c | 39 b/drivers/scsi/aic7xxx_old.c | 18 b/drivers/scsi/amiga7xx.c | 8 b/drivers/scsi/amiga7xx.h | 2 b/drivers/scsi/arm/acornscsi.c | 6 b/drivers/scsi/arm/acornscsi.h | 2 b/drivers/scsi/arm/arxescsi.c | 8 b/drivers/scsi/arm/cumana_1.c | 2 b/drivers/scsi/arm/cumana_2.c | 8 b/drivers/scsi/arm/ecoscsi.c | 2 b/drivers/scsi/arm/eesox.c | 8 b/drivers/scsi/arm/fas216.c | 10 b/drivers/scsi/arm/fas216.h | 8 b/drivers/scsi/arm/oak.c | 2 b/drivers/scsi/arm/powertec.c | 6 b/drivers/scsi/arm/scsi.h | 8 b/drivers/scsi/atari_NCR5380.c | 2 b/drivers/scsi/atari_scsi.c | 4 b/drivers/scsi/atari_scsi.h | 2 b/drivers/scsi/blz1230.c | 4 b/drivers/scsi/blz2060.c | 4 b/drivers/scsi/bvme6000.c | 4 b/drivers/scsi/bvme6000.h | 2 b/drivers/scsi/cyberstorm.c | 4 b/drivers/scsi/cyberstormII.c | 4 b/drivers/scsi/dec_esp.c | 2 b/drivers/scsi/dpti.h | 2 b/drivers/scsi/dtc.c | 6 b/drivers/scsi/dtc.h | 2 b/drivers/scsi/fastlane.c | 4 b/drivers/scsi/fcal.c | 8 b/drivers/scsi/fcal.h | 4 b/drivers/scsi/fd_mcs.c | 4 b/drivers/scsi/g_NCR5380.c | 6 b/drivers/scsi/g_NCR5380.h | 2 b/drivers/scsi/gdth.c | 12 b/drivers/scsi/gdth.h | 4 b/drivers/scsi/gdth_proc.c | 10 b/drivers/scsi/gvp11.c | 4 b/drivers/scsi/gvp11.h | 2 b/drivers/scsi/ibmmca.c | 8 b/drivers/scsi/ibmmca.h | 2 b/drivers/scsi/ide-scsi.c | 2 b/drivers/scsi/in2000.c | 4 b/drivers/scsi/in2000.h | 2 b/drivers/scsi/ipr.c | 904 ++++++++++--- b/drivers/scsi/ipr.h | 243 ++- b/drivers/scsi/ips.c | 150 -- b/drivers/scsi/ips.h | 4 b/drivers/scsi/jazz_esp.c | 4 b/drivers/scsi/mac_esp.c | 4 b/drivers/scsi/mac_scsi.c | 6 b/drivers/scsi/mca_53c9x.c | 4 b/drivers/scsi/megaraid.c | 34 b/drivers/scsi/megaraid.h | 10 b/drivers/scsi/megaraid/mega_common.h | 2 b/drivers/scsi/megaraid/megaraid_mbox.c | 81 - b/drivers/scsi/megaraid/megaraid_sas.c | 5 b/drivers/scsi/mvme147.c | 4 b/drivers/scsi/mvme147.h | 2 b/drivers/scsi/mvme16x.c | 4 b/drivers/scsi/mvme16x.h | 2 b/drivers/scsi/nsp32.c | 6 b/drivers/scsi/oktagon_esp.c | 4 b/drivers/scsi/pas16.c | 6 b/drivers/scsi/pas16.h | 2 b/drivers/scsi/pci2000.h | 2 b/drivers/scsi/pcmcia/nsp_cs.c | 8 b/drivers/scsi/pcmcia/nsp_cs.h | 6 b/drivers/scsi/pcmcia/qlogic_stub.c | 4 b/drivers/scsi/pluto.c | 8 b/drivers/scsi/pluto.h | 4 b/drivers/scsi/psi240i.c | 4 b/drivers/scsi/qla1280.c | 8 b/drivers/scsi/qla2xxx/qla_dbg.c | 8 b/drivers/scsi/qla2xxx/qla_init.c | 28 b/drivers/scsi/qla2xxx/qla_mbx.c | 10 b/drivers/scsi/qla2xxx/qla_sup.c | 5 b/drivers/scsi/qla2xxx/qla_version.h | 4 b/drivers/scsi/qlogicfas.c | 6 b/drivers/scsi/qlogicfc.c | 4 b/drivers/scsi/raid_class.c | 96 + b/drivers/scsi/scsi_debug.c | 2 b/drivers/scsi/scsi_error.c | 157 -- b/drivers/scsi/scsi_lib.c | 58 b/drivers/scsi/scsi_priv.h | 1 b/drivers/scsi/scsi_scan.c | 54 b/drivers/scsi/scsi_sysfs.c | 9 b/drivers/scsi/scsi_typedefs.h | 3 b/drivers/scsi/sd.c | 22 b/drivers/scsi/seagate.c | 4 b/drivers/scsi/seagate.h | 2 b/drivers/scsi/sgiwd93.c | 6 b/drivers/scsi/sun3_NCR5380.c | 2 b/drivers/scsi/sun3_scsi.c | 6 b/drivers/scsi/sun3_scsi.h | 2 b/drivers/scsi/sun3_scsi_vme.c | 6 b/drivers/scsi/sun3x_esp.c | 4 b/drivers/scsi/sym53c416.c | 4 b/drivers/scsi/sym53c416.h | 2 b/drivers/scsi/t128.c | 6 b/drivers/scsi/t128.h | 2 b/drivers/scsi/u14-34f.c | 2 b/drivers/scsi/ultrastor.c | 8 b/drivers/scsi/ultrastor.h | 2 b/drivers/usb/image/microtek.c | 2 b/include/linux/libata.h | 2 b/include/linux/pci_ids.h | 2 b/include/linux/raid_class.h | 32 b/include/scsi/scsi_host.h | 7 b/include/scsi/scsi_request.h | 3 drivers/scsi/qlogicisp.c | 1934 ---------------------------- drivers/scsi/qlogicisp_asm.c | 2034 ------------------------------ 143 files changed, 1733 insertions(+), 5102 deletions(-) James ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 2005-11-11 21:49 [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 James Bottomley @ 2005-11-11 22:23 ` Christoph Hellwig 2005-11-11 22:38 ` Mike Christie 2005-11-11 22:54 ` Linus Torvalds 0 siblings, 2 replies; 6+ messages in thread From: Christoph Hellwig @ 2005-11-11 22:23 UTC (permalink / raw) To: James Bottomley Cc: Linus Torvalds, Andrew Morton, SCSI Mailing List, Linux Kernel On Fri, Nov 11, 2005 at 03:49:01PM -0600, James Bottomley wrote: > o remove scsi_wait_req This requires '[PATCH] kill libata scsi_wait_req usage (make libata compile in scsi-misc)' from Mike, because libata started to use this function in mainline about the same time it was removed in scsi-misc. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 2005-11-11 22:23 ` Christoph Hellwig @ 2005-11-11 22:38 ` Mike Christie 2005-11-11 22:39 ` Mike Christie 2005-11-11 22:54 ` Linus Torvalds 1 sibling, 1 reply; 6+ messages in thread From: Mike Christie @ 2005-11-11 22:38 UTC (permalink / raw) To: Christoph Hellwig Cc: James Bottomley, Linus Torvalds, Andrew Morton, SCSI Mailing List, Linux Kernel On Fri, 2005-11-11 at 22:23 +0000, Christoph Hellwig wrote: > On Fri, Nov 11, 2005 at 03:49:01PM -0600, James Bottomley wrote: > > o remove scsi_wait_req > > This requires '[PATCH] kill libata scsi_wait_req usage (make libata compile in > scsi-misc)' from Mike, because libata started to use this function in mainline > about the same time it was removed in scsi-misc. My previous patch needed to included scsi_eh.h. Someone sent a patch in -mm to d othis. Here is my patch plus the scsi_eh.h include patch rolled into one if you need it. rm scsi_wait_req() usage. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> diff --git a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c index bb30fcd..b101f8e 100644 --- a/drivers/scsi/libata-scsi.c +++ b/drivers/scsi/libata-scsi.c @@ -38,6 +38,7 @@ #include <linux/spinlock.h> #include <scsi/scsi.h> #include <scsi/scsi_host.h> +#include <scsi/scsi_eh.h> #include <scsi/scsi_device.h> #include <scsi/scsi_request.h> #include <linux/libata.h> @@ -147,7 +148,8 @@ int ata_cmd_ioctl(struct scsi_device *sc u8 scsi_cmd[MAX_COMMAND_SIZE]; u8 args[4], *argbuf = NULL; int argsize = 0; - struct scsi_request *sreq; + struct scsi_sense_hdr sshdr; + enum dma_data_direction data_dir; if (NULL == (void *)arg) return -EINVAL; @@ -155,10 +157,6 @@ int ata_cmd_ioctl(struct scsi_device *sc if (copy_from_user(args, arg, sizeof(args))) return -EFAULT; - sreq = scsi_allocate_request(scsidev, GFP_KERNEL); - if (!sreq) - return -EINTR; - memset(scsi_cmd, 0, sizeof(scsi_cmd)); if (args[3]) { @@ -172,11 +170,11 @@ int ata_cmd_ioctl(struct scsi_device *sc scsi_cmd[1] = (4 << 1); /* PIO Data-in */ scsi_cmd[2] = 0x0e; /* no off.line or cc, read from dev, block count in sector count field */ - sreq->sr_data_direction = DMA_FROM_DEVICE; + data_dir = DMA_FROM_DEVICE; } else { scsi_cmd[1] = (3 << 1); /* Non-data */ /* scsi_cmd[2] is already 0 -- no off.line, cc, or data xfer */ - sreq->sr_data_direction = DMA_NONE; + data_dir = DMA_NONE; } scsi_cmd[0] = ATA_16; @@ -194,9 +192,8 @@ int ata_cmd_ioctl(struct scsi_device *sc /* Good values for timeout and retries? Values below from scsi_ioctl_send_command() for default case... */ - scsi_wait_req(sreq, scsi_cmd, argbuf, argsize, (10*HZ), 5); - - if (sreq->sr_result) { + if (scsi_execute_req(scsidev, scsi_cmd, data_dir, argbuf, argsize, + &sshdr, (10*HZ), 5)) { rc = -EIO; goto error; } @@ -207,8 +204,6 @@ int ata_cmd_ioctl(struct scsi_device *sc && copy_to_user((void *)(arg + sizeof(args)), argbuf, argsize)) rc = -EFAULT; error: - scsi_release_request(sreq); - if (argbuf) kfree(argbuf); @@ -231,7 +226,7 @@ int ata_task_ioctl(struct scsi_device *s int rc = 0; u8 scsi_cmd[MAX_COMMAND_SIZE]; u8 args[7]; - struct scsi_request *sreq; + struct scsi_sense_hdr sshdr; if (NULL == (void *)arg) return -EINVAL; @@ -250,26 +245,13 @@ int ata_task_ioctl(struct scsi_device *s scsi_cmd[12] = args[5]; scsi_cmd[14] = args[0]; - sreq = scsi_allocate_request(scsidev, GFP_KERNEL); - if (!sreq) { - rc = -EINTR; - goto error; - } - - sreq->sr_data_direction = DMA_NONE; /* Good values for timeout and retries? Values below - from scsi_ioctl_send_command() for default case... */ - scsi_wait_req(sreq, scsi_cmd, NULL, 0, (10*HZ), 5); - - if (sreq->sr_result) { + from scsi_ioctl_send_command() for default case... */ + if (scsi_execute_req(scsidev, scsi_cmd, DMA_NONE, NULL, 0, &sshdr, + (10*HZ), 5)) rc = -EIO; - goto error; - } /* Need code to retrieve data from check condition? */ - -error: - scsi_release_request(sreq); return rc; } ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 2005-11-11 22:38 ` Mike Christie @ 2005-11-11 22:39 ` Mike Christie 0 siblings, 0 replies; 6+ messages in thread From: Mike Christie @ 2005-11-11 22:39 UTC (permalink / raw) To: Christoph Hellwig Cc: James Bottomley, Linus Torvalds, Andrew Morton, SCSI Mailing List, Linux Kernel Mike Christie wrote: > On Fri, 2005-11-11 at 22:23 +0000, Christoph Hellwig wrote: > >>On Fri, Nov 11, 2005 at 03:49:01PM -0600, James Bottomley wrote: >> >>> o remove scsi_wait_req >> >>This requires '[PATCH] kill libata scsi_wait_req usage (make libata compile in >>scsi-misc)' from Mike, because libata started to use this function in mainline >>about the same time it was removed in scsi-misc. > > > > My previous patch needed to included scsi_eh.h. Someone sent a patch in > -mm to d othis. Here is my patch plus the scsi_eh.h include patch rolled > into one if you need it. > > rm scsi_wait_req() usage. > oh yeah that patch was made agsint scsi-misc. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 2005-11-11 22:23 ` Christoph Hellwig 2005-11-11 22:38 ` Mike Christie @ 2005-11-11 22:54 ` Linus Torvalds 2005-11-12 1:57 ` Jeff Garzik 1 sibling, 1 reply; 6+ messages in thread From: Linus Torvalds @ 2005-11-11 22:54 UTC (permalink / raw) To: Christoph Hellwig Cc: James Bottomley, Andrew Morton, SCSI Mailing List, Linux Kernel On Fri, 11 Nov 2005, Christoph Hellwig wrote: > > On Fri, Nov 11, 2005 at 03:49:01PM -0600, James Bottomley wrote: > > o remove scsi_wait_req > > This requires '[PATCH] kill libata scsi_wait_req usage (make libata compile in > scsi-misc)' from Mike, because libata started to use this function in mainline > about the same time it was removed in scsi-misc. Yeah, I get drivers/built-in.o(.text+0x12e68c): In function `.ata_cmd_ioctl': : undefined reference to `.scsi_wait_req' drivers/built-in.o(.text+0x12e85c): In function `.ata_task_ioctl': : undefined reference to `.scsi_wait_req' right now. Can somebody forward that patch to me.. Linus ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 2005-11-11 22:54 ` Linus Torvalds @ 2005-11-12 1:57 ` Jeff Garzik 0 siblings, 0 replies; 6+ messages in thread From: Jeff Garzik @ 2005-11-12 1:57 UTC (permalink / raw) To: Linus Torvalds Cc: Christoph Hellwig, James Bottomley, Andrew Morton, SCSI Mailing List, Linux Kernel Linus Torvalds wrote: > > On Fri, 11 Nov 2005, Christoph Hellwig wrote: > >>On Fri, Nov 11, 2005 at 03:49:01PM -0600, James Bottomley wrote: >> >>> o remove scsi_wait_req >> >>This requires '[PATCH] kill libata scsi_wait_req usage (make libata compile in >>scsi-misc)' from Mike, because libata started to use this function in mainline >>about the same time it was removed in scsi-misc. > > > Yeah, I get > > drivers/built-in.o(.text+0x12e68c): In function `.ata_cmd_ioctl': > : undefined reference to `.scsi_wait_req' > drivers/built-in.o(.text+0x12e85c): In function `.ata_task_ioctl': > : undefined reference to `.scsi_wait_req' > > right now. Can somebody forward that patch to me.. Given that that's the primary path for users issuing hdparm/SMART commands, I'm still hoping someone will give this patch even a simple "it works" test before pushing... I requested this days ago, but haven't heard any results. Jeff ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2005-11-12 1:57 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2005-11-11 21:49 [GIT PATCH] final pre -rc pieces of SCSI for 2.6.14 James Bottomley 2005-11-11 22:23 ` Christoph Hellwig 2005-11-11 22:38 ` Mike Christie 2005-11-11 22:39 ` Mike Christie 2005-11-11 22:54 ` Linus Torvalds 2005-11-12 1:57 ` Jeff Garzik
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).