From 38f58fe8744d17b230880b4a3c588f285e325d39 Mon Sep 17 00:00:00 2001 From: James Smart Date: Fri, 21 Mar 2008 17:18:23 -0400 Subject: [PATCH] --- yaml --- r: 88053 b: refs/heads/master c: 77cca462c69d827fabee0ef3fdab86109c2fe8d8 h: refs/heads/master i: 88051: 0251b3766c4ead8c9ed08c8660859e7696fc4c2a v: v3 --- [refs] | 2 +- trunk/drivers/scsi/hosts.c | 16 +++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 8529f83389f9..88c19b7a451e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0feed274d2dfa2162d2c37c254eede96926d3717 +refs/heads/master: 77cca462c69d827fabee0ef3fdab86109c2fe8d8 diff --git a/trunk/drivers/scsi/hosts.c b/trunk/drivers/scsi/hosts.c index 880c78bff0e1..ed7e0a1fc34d 100644 --- a/trunk/drivers/scsi/hosts.c +++ b/trunk/drivers/scsi/hosts.c @@ -218,18 +218,24 @@ int scsi_add_host(struct Scsi_Host *shost, struct device *dev) get_device(&shost->shost_gendev); - if (shost->transportt->host_size && - (shost->shost_data = kzalloc(shost->transportt->host_size, - GFP_KERNEL)) == NULL) - goto out_del_classdev; + if (shost->transportt->host_size) { + shost->shost_data = kzalloc(shost->transportt->host_size, + GFP_KERNEL); + if (shost->shost_data == NULL) { + error = -ENOMEM; + goto out_del_classdev; + } + } if (shost->transportt->create_work_queue) { snprintf(shost->work_q_name, KOBJ_NAME_LEN, "scsi_wq_%d", shost->host_no); shost->work_q = create_singlethread_workqueue( shost->work_q_name); - if (!shost->work_q) + if (!shost->work_q) { + error = -EINVAL; goto out_free_shost_data; + } } error = scsi_sysfs_add_host(shost);