diff options
-rw-r--r-- | drivers/infiniband/hw/qib/qib_sysfs.c | 6 | ||||
-rw-r--r-- | drivers/infiniband/hw/qib/qib_verbs.c | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/qib/qib_sysfs.c b/drivers/infiniband/hw/qib/qib_sysfs.c index 034cc821de5c..3c8e4e3caca6 100644 --- a/drivers/infiniband/hw/qib/qib_sysfs.c +++ b/drivers/infiniband/hw/qib/qib_sysfs.c | |||
@@ -808,10 +808,14 @@ int qib_verbs_register_sysfs(struct qib_devdata *dd) | |||
808 | for (i = 0; i < ARRAY_SIZE(qib_attributes); ++i) { | 808 | for (i = 0; i < ARRAY_SIZE(qib_attributes); ++i) { |
809 | ret = device_create_file(&dev->dev, qib_attributes[i]); | 809 | ret = device_create_file(&dev->dev, qib_attributes[i]); |
810 | if (ret) | 810 | if (ret) |
811 | return ret; | 811 | goto bail; |
812 | } | 812 | } |
813 | 813 | ||
814 | return 0; | 814 | return 0; |
815 | bail: | ||
816 | for (i = 0; i < ARRAY_SIZE(qib_attributes); ++i) | ||
817 | device_remove_file(&dev->dev, qib_attributes[i]); | ||
818 | return ret; | ||
815 | } | 819 | } |
816 | 820 | ||
817 | /* | 821 | /* |
diff --git a/drivers/infiniband/hw/qib/qib_verbs.c b/drivers/infiniband/hw/qib/qib_verbs.c index 7c0ab16a2fe2..904c384aa361 100644 --- a/drivers/infiniband/hw/qib/qib_verbs.c +++ b/drivers/infiniband/hw/qib/qib_verbs.c | |||
@@ -2234,7 +2234,8 @@ int qib_register_ib_device(struct qib_devdata *dd) | |||
2234 | if (ret) | 2234 | if (ret) |
2235 | goto err_agents; | 2235 | goto err_agents; |
2236 | 2236 | ||
2237 | if (qib_verbs_register_sysfs(dd)) | 2237 | ret = qib_verbs_register_sysfs(dd); |
2238 | if (ret) | ||
2238 | goto err_class; | 2239 | goto err_class; |
2239 | 2240 | ||
2240 | goto bail; | 2241 | goto bail; |