#
573eb4a3 |
| 01-Dec-2023 |
Su Hui <suhui@nfschina.com> |
scsi: aic7xxx: Return negative error codes in ahc_linux_register_host()
ahc_linux_register_host() returns both positive and negative error codes. It's better to make this function only return negati
scsi: aic7xxx: Return negative error codes in ahc_linux_register_host()
ahc_linux_register_host() returns both positive and negative error codes. It's better to make this function only return negative error codes.
Signed-off-by: Su Hui <suhui@nfschina.com> Link: https://lore.kernel.org/r/20231201025955.1584260-2-suhui@nfschina.com Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
10f5aa01 |
| 02-Oct-2023 |
Hannes Reinecke <hare@suse.de> |
scsi: aic7xxx: Do not reference SCSI command when resetting device
When sending a device reset we should not take a reference to the SCSI command.
Signed-off-by: Hannes Reinecke <hare@suse.de> Link
scsi: aic7xxx: Do not reference SCSI command when resetting device
When sending a device reset we should not take a reference to the SCSI command.
Signed-off-by: Hannes Reinecke <hare@suse.de> Link: https://lore.kernel.org/r/20231002154328.43718-8-hare@suse.de Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
958230bc |
| 02-Oct-2023 |
Hannes Reinecke <hare@suse.de> |
scsi: aic7xxx: Make BUILD_SCSIID() a function
Convert BUILD_SCSIID() into a function and add a scsi_device argument.
Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Hannes Reinecke <h
scsi: aic7xxx: Make BUILD_SCSIID() a function
Convert BUILD_SCSIID() into a function and add a scsi_device argument.
Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Hannes Reinecke <hare@suse.de> Link: https://lore.kernel.org/r/20231002154328.43718-7-hare@suse.de Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
af049dfd |
| 07-Oct-2021 |
Bart Van Assche <bvanassche@acm.org> |
scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions
The DEF_SCSI_QCMD() macro passes the addresses of the SCSI host lock and also that of the scsi_done function to the queuec
scsi: core: Remove the 'done' argument from SCSI queuecommand_lck functions
The DEF_SCSI_QCMD() macro passes the addresses of the SCSI host lock and also that of the scsi_done function to the queuecommand_lck() function implementations. Remove the 'scsi_done' argument since its address is now a constant and instead call 'scsi_done' directly from inside the queuecommand_lck() functions.
Link: https://lore.kernel.org/r/20211007204618.2196847-14-bvanassche@acm.org Signed-off-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
07ebbc3a |
| 07-Oct-2021 |
Bart Van Assche <bvanassche@acm.org> |
scsi: aic7xxx: Call scsi_done() directly
Conditional statements are faster than indirect calls. Hence call scsi_done() directly.
Link: https://lore.kernel.org/r/20211007202923.2174984-22-bvanassche
scsi: aic7xxx: Call scsi_done() directly
Conditional statements are faster than indirect calls. Hence call scsi_done() directly.
Link: https://lore.kernel.org/r/20211007202923.2174984-22-bvanassche@acm.org Signed-off-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
464a00c9 |
| 27-Apr-2021 |
Hannes Reinecke <hare@suse.de> |
scsi: core: Kill DRIVER_SENSE
Replace the check for DRIVER_SENSE with a check for scsi_status_is_check_condition().
Audit all callsites to ensure the SAM status is set correctly. For backwards comp
scsi: core: Kill DRIVER_SENSE
Replace the check for DRIVER_SENSE with a check for scsi_status_is_check_condition().
Audit all callsites to ensure the SAM status is set correctly. For backwards compability move the DRIVER_SENSE definition to sg.h, and update sg, bsg, and scsi_ioctl to set the DRIVER_SENSE driver_status whenever SAM_STAT_CHECK_CONDITION is present.
[mkp: fix zeroday srp warning]
Link: https://lore.kernel.org/r/20210427083046.31620-10-hare@suse.de Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
fix
show more ...
|
#
d8cd784f |
| 13-Jan-2021 |
Hannes Reinecke <hare@suse.de> |
scsi: aic7xxx: aic79xx: Drop internal SCSI message definition
Use the standard SCSI message definitions instead of the driver-internal ones.
Link: https://lore.kernel.org/r/20210113090500.129644-20
scsi: aic7xxx: aic79xx: Drop internal SCSI message definition
Use the standard SCSI message definitions instead of the driver-internal ones.
Link: https://lore.kernel.org/r/20210113090500.129644-20-hare@suse.de Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
54c9f6fd |
| 13-Jan-2021 |
Hannes Reinecke <hare@suse.de> |
scsi: aic7xxx: aic79xx: Remove driver-defined SAM status definitions
Replace the driver-defined SAM status definitions with the standard mid-layer defined ones.
Link: https://lore.kernel.org/r/2021
scsi: aic7xxx: aic79xx: Remove driver-defined SAM status definitions
Replace the driver-defined SAM status definitions with the standard mid-layer defined ones.
Link: https://lore.kernel.org/r/20210113090500.129644-9-hare@suse.de Reviewed-by: Bart van Assche <bvanassche@acm.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
7662d923 |
| 13-Jan-2021 |
Hannes Reinecke <hare@suse.de> |
scsi: aic7xxx: aic79xx: Whitespace cleanup
Link: https://lore.kernel.org/r/20210113090500.129644-7-hare@suse.de Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Martin K. Petersen <marti
scsi: aic7xxx: aic79xx: Whitespace cleanup
Link: https://lore.kernel.org/r/20210113090500.129644-7-hare@suse.de Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
715f43c6 |
| 16-Aug-2020 |
Tong Zhang <ztong0001@gmail.com> |
scsi: aic7xxx: Fix error code handling
ahc_linux_queue_recovery_cmd returns SUCCESS(0x2002) or FAIL(0x2003), but the caller is checking error case using != 0.
Link: https://lore.kernel.org/r/202008
scsi: aic7xxx: Fix error code handling
ahc_linux_queue_recovery_cmd returns SUCCESS(0x2002) or FAIL(0x2003), but the caller is checking error case using != 0.
Link: https://lore.kernel.org/r/20200816070242.978839-1-ztong0001@gmail.com Signed-off-by: Tong Zhang <ztong0001@gmail.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
aa89d74e |
| 13-Jul-2020 |
Lee Jones <lee.jones@linaro.org> |
scsi: aic7xxx: Fix 'amount_xferred' set but not used issue
'amount_xferred' is used, but only in certain circumstances. Place the same stipulations on the defining/allocating of 'amount_xferred' as
scsi: aic7xxx: Fix 'amount_xferred' set but not used issue
'amount_xferred' is used, but only in certain circumstances. Place the same stipulations on the defining/allocating of 'amount_xferred' as is placed when using it.
We've been careful not to change any of the ordering semantics here.
Fixes the following W=1 kernel build warning(s):
drivers/scsi/aic7xxx/aic7xxx_osm.c: In function ‘ahc_done’: drivers/scsi/aic7xxx/aic7xxx_osm.c:1725:12: warning: variable ‘amount_xferred’ set but not used [-Wunused-but-set-variable] 1725 | uint32_t amount_xferred; | ^~~~~~~~~~~~~~
Link: https://lore.kernel.org/r/20200713074645.126138-22-lee.jones@linaro.org Cc: Hannes Reinecke <hare@suse.com> Cc: "Daniel M. Eischen" <deischen@iworks.InterWorks.org> Cc: Doug Ledford <dledford@redhat.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
7097a517 |
| 13-Jul-2020 |
Lee Jones <lee.jones@linaro.org> |
scsi: aic7xxx: Remove unused variable 'targ'
Looks like checking the 'targ' was removed in 2005.
Fixes the following W=1 kernel build warning(s):
drivers/scsi/aic7xxx/aic7xxx_osm.c: In function ‘
scsi: aic7xxx: Remove unused variable 'targ'
Looks like checking the 'targ' was removed in 2005.
Fixes the following W=1 kernel build warning(s):
drivers/scsi/aic7xxx/aic7xxx_osm.c: In function ‘ahc_send_async’: drivers/scsi/aic7xxx/aic7xxx_osm.c:1604:28: warning: variable ‘targ’ set but not used [-Wunused-but-set-variable] 1604 | struct ahc_linux_target *targ; | ^~~~
Link: https://lore.kernel.org/r/20200713074645.126138-21-lee.jones@linaro.org Cc: Hannes Reinecke <hare@suse.com> Cc: "Daniel M. Eischen" <deischen@iworks.InterWorks.org> Cc: Doug Ledford <dledford@redhat.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
614fc2f9 |
| 13-Jul-2020 |
Lee Jones <lee.jones@linaro.org> |
scsi: aic7xxx: Remove unused variable 'ahc'
Looks as though 'ahc' hasn't been used since 2005.
Fixes the following W=1 kernel build warning(s):
drivers/scsi/aic7xxx/aic7xxx_osm.c: In function ‘ah
scsi: aic7xxx: Remove unused variable 'ahc'
Looks as though 'ahc' hasn't been used since 2005.
Fixes the following W=1 kernel build warning(s):
drivers/scsi/aic7xxx/aic7xxx_osm.c: In function ‘ahc_linux_slave_configure’: drivers/scsi/aic7xxx/aic7xxx_osm.c:674:20: warning: variable ‘ahc’ set but not used [-Wunused-but-set-variable] 674 | struct ahc_softc *ahc; | ^~~
Link: https://lore.kernel.org/r/20200713074645.126138-20-lee.jones@linaro.org Cc: Hannes Reinecke <hare@suse.com> Cc: "Daniel M. Eischen" <deischen@iworks.InterWorks.org> Cc: Doug Ledford <dledford@redhat.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
e3f58eee |
| 13-Jul-2020 |
Lee Jones <lee.jones@linaro.org> |
scsi: aic7xxx: Remove unused variable 'tinfo'
Looks like none of the artifact from ahc_fetch_transinfo() are used anymore.
Fixes the following W=1 kernel build warning(s):
drivers/scsi/aic7xxx/ai
scsi: aic7xxx: Remove unused variable 'tinfo'
Looks like none of the artifact from ahc_fetch_transinfo() are used anymore.
Fixes the following W=1 kernel build warning(s):
drivers/scsi/aic7xxx/aic7xxx_osm.c: In function ‘ahc_linux_target_alloc’: drivers/scsi/aic7xxx/aic7xxx_osm.c:567:30: warning: variable ‘tinfo’ set but not used [-Wunused-but-set-variable] 567 | struct ahc_initiator_tinfo *tinfo; | ^~~~~
Link: https://lore.kernel.org/r/20200713074645.126138-19-lee.jones@linaro.org Cc: Hannes Reinecke <hare@suse.com> Cc: "Daniel M. Eischen" <deischen@iworks.InterWorks.org> Cc: Doug Ledford <dledford@redhat.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
a10183d7 |
| 24-Mar-2020 |
Christoph Hellwig <hch@lst.de> |
scsi: simplify scsi_partsize
Call scsi_bios_ptable from scsi_partsize instead of requiring boilerplate code in the callers. Also switch the calling convention to match that of the ->bios_param inst
scsi: simplify scsi_partsize
Call scsi_bios_ptable from scsi_partsize instead of requiring boilerplate code in the callers. Also switch the calling convention to match that of the ->bios_param instances calling this function, and use true/false for the return value instead of the weird -1 convention.
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
show more ...
|
#
144ec974 |
| 18-Apr-2019 |
Christoph Hellwig <hch@lst.de> |
scsi: aic7xxx: fix EISA support
Instead of relying on the now removed NULL argument to pci_alloc_consistent, switch to the generic DMA API, and store the struct device so that we can pass it.
Fixes
scsi: aic7xxx: fix EISA support
Instead of relying on the now removed NULL argument to pci_alloc_consistent, switch to the generic DMA API, and store the struct device so that we can pass it.
Fixes: 4167b2ad5182 ("PCI: Remove NULL device handling from PCI DMA API") Reported-by: Matthew Whitehead <tedheadster@gmail.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Tested-by: Matthew Whitehead <tedheadster@gmail.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
2a3d4eb8 |
| 13-Dec-2018 |
Christoph Hellwig <hch@lst.de> |
scsi: flip the default on use_clustering
Most SCSI drivers want to enable "clustering", that is merging of segments so that they might span more than a single page. Remove the ENABLE_CLUSTERING def
scsi: flip the default on use_clustering
Most SCSI drivers want to enable "clustering", that is merging of segments so that they might span more than a single page. Remove the ENABLE_CLUSTERING define, and require drivers to explicitly set DISABLE_CLUSTERING to disable this feature.
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
4efea4f6 |
| 05-Oct-2017 |
Colin Ian King <colin.king@canonical.com> |
scsi: aic7xxx: make a couple of functions static
Functions ahc_devlimited_syncrate and ahc_linux_initialize_scsi_bus are declared static in their prototypes but are missing in their definitions, so
scsi: aic7xxx: make a couple of functions static
Functions ahc_devlimited_syncrate and ahc_linux_initialize_scsi_bus are declared static in their prototypes but are missing in their definitions, so add the missing static.
Cleans up sparse warnings: symbol 'ahc_devlimited_syncrate' was not declared. Should it be static? symbol 'ahc_linux_initialize_scsi_bus' was not declared. Should it be static?
Signed-off-by: Colin Ian King <colin.king@canonical.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
fef124c3 |
| 03-Aug-2017 |
Michał Mirosław <mirq-linux@rere.qmqm.pl> |
scsi: aic7xxx: remove empty function
ahc_platform_dump_card_state() does nothing. Remove it.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Reviewed-by: Hannes Reinecke <hare@suse.com> Si
scsi: aic7xxx: remove empty function
ahc_platform_dump_card_state() does nothing. Remove it.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> Reviewed-by: Hannes Reinecke <hare@suse.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
5a51a7ab |
| 15-Feb-2016 |
Alan <gnomes@lxorguk.ukuu.org.uk> |
aic7xxx: Fix queue depth handling
We were setting the queue depth correctly, then setting it back to two. If you hit this as a bisection point then please send me an email as it would imply we've be
aic7xxx: Fix queue depth handling
We were setting the queue depth correctly, then setting it back to two. If you hit this as a bisection point then please send me an email as it would imply we've been hiding other bugs with this one.
Cc: <stable@vger.kernel.org> Signed-off-by: Alan Cox <alan@linux.intel.com> Reviewed-by: Hannes Reinicke <hare@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
64d513ac |
| 08-Oct-2015 |
Christoph Hellwig <hch@lst.de> |
scsi: use host wide tags by default
This patch changes the !blk-mq path to the same defaults as the blk-mq I/O path by always enabling block tagging, and always using host wide tags. We've had blk-
scsi: use host wide tags by default
This patch changes the !blk-mq path to the same defaults as the blk-mq I/O path by always enabling block tagging, and always using host wide tags. We've had blk-mq available for a few releases so bugs with this mode should have been ironed out, and this ensures we get better coverage of over tagging setup over different configs.
Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Jens Axboe <axboe@kernel.dk> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Odin.com>
show more ...
|
#
114fc1d9 |
| 27-Mar-2015 |
Michael Opdenacker <michael.opdenacker@free-electrons.com> |
aic7xxx: replace kmalloc/memset by kzalloc
This replaces kmalloc + memset by a call to kzalloc
This also fixes one checkpatch.pl issue in the process.
This improvement was suggested by "make cocci
aic7xxx: replace kmalloc/memset by kzalloc
This replaces kmalloc + memset by a call to kzalloc
This also fixes one checkpatch.pl issue in the process.
This improvement was suggested by "make coccicheck"
Signed-off-by: Michael Opdenacker <michael.opdenacker@free-electrons.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
show more ...
|
#
db5ed4df |
| 13-Nov-2014 |
Christoph Hellwig <hch@lst.de> |
scsi: drop reason argument from ->change_queue_depth
Drop the now unused reason argument from the ->change_queue_depth method. Also add a return value to scsi_adjust_queue_depth, and rename it to sc
scsi: drop reason argument from ->change_queue_depth
Drop the now unused reason argument from the ->change_queue_depth method. Also add a return value to scsi_adjust_queue_depth, and rename it to scsi_change_queue_depth now that it can be used as the default ->change_queue_depth implementation.
Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Reviewed-by: Hannes Reinecke <hare@suse.de>
show more ...
|
#
c8b09f6f |
| 03-Nov-2014 |
Christoph Hellwig <hch@lst.de> |
scsi: don't set tagging state from scsi_adjust_queue_depth
Remove the tagged argument from scsi_adjust_queue_depth, and just let it handle the queue depth. For most drivers those two are fairly sep
scsi: don't set tagging state from scsi_adjust_queue_depth
Remove the tagged argument from scsi_adjust_queue_depth, and just let it handle the queue depth. For most drivers those two are fairly separate, given that most modern drivers don't care about the SCSI "tagged" status of a command at all, and many old drivers allow queuing of multiple untagged commands in the driver.
Instead we start out with the ->simple_tags flag set before calling ->slave_configure, which is how all drivers actually looking at ->simple_tags except for one worke anyway. The one other case looks broken, but I've kept the behavior as-is for now.
Except for that we only change ->simple_tags from the ->change_queue_type, and when rejecting a tag message in a single driver, so keeping this churn out of scsi_adjust_queue_depth is a clear win.
Now that the usage of scsi_adjust_queue_depth is more obvious we can also remove all the trivial instances in ->slave_alloc or ->slave_configure that just set it to the cmd_per_lun default.
Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Reviewed-by: Hannes Reinecke <hare@suse.de> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
show more ...
|
#
2ecb204d |
| 03-Nov-2014 |
Christoph Hellwig <hch@lst.de> |
scsi: always assign block layer tags if enabled
Allow a driver to ask for block layer tags by setting .use_blk_tags in the host template, in which case it will always see a valid value in request->t
scsi: always assign block layer tags if enabled
Allow a driver to ask for block layer tags by setting .use_blk_tags in the host template, in which case it will always see a valid value in request->tag, similar to the behavior when using blk-mq. This means even SCSI "untagged" commands will now have a tag, which is especially useful when using a host-wide tag map.
Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Reviewed-by: Hannes Reinecke <hare@suse.de>
show more ...
|