mirror of https://gitee.com/openkylin/linux.git
[SCSI] add failure return to scsi_init_shared_tag_map()
And use it in the stex driver. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
cf355883f5
commit
deb81d80ba
|
@ -1108,9 +1108,8 @@ stex_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||
if (err)
|
||||
goto out_free_irq;
|
||||
|
||||
scsi_init_shared_tag_map(host, ST_CAN_QUEUE);
|
||||
if (host->bqt == NULL) {
|
||||
err = -ENOMEM;
|
||||
err = scsi_init_shared_tag_map(host, ST_CAN_QUEUE);
|
||||
if (err) {
|
||||
printk(KERN_ERR DRV_NAME "(%s): init shared queue failed\n",
|
||||
pci_name(pdev));
|
||||
goto out_free_irq;
|
||||
|
|
|
@ -138,9 +138,10 @@ static inline struct scsi_cmnd *scsi_find_tag(struct scsi_device *sdev, int tag)
|
|||
* @shost: the host to share the tag map among all devices
|
||||
* @depth: the total depth of the map
|
||||
*/
|
||||
static inline void scsi_init_shared_tag_map(struct Scsi_Host *shost, int depth)
|
||||
static inline int scsi_init_shared_tag_map(struct Scsi_Host *shost, int depth)
|
||||
{
|
||||
shost->bqt = blk_init_tags(depth);
|
||||
return shost->bqt ? 0 : -ENOMEM;
|
||||
}
|
||||
|
||||
#endif /* _SCSI_SCSI_TCQ_H */
|
||||
|
|
Loading…
Reference in New Issue