IB/srp: Make login failures easier to debug
authorBart Van Assche <bart.vanassche@sandisk.com>
Mon, 21 Nov 2016 21:57:24 +0000 (13:57 -0800)
committerDoug Ledford <dledford@redhat.com>
Wed, 14 Dec 2016 18:31:37 +0000 (13:31 -0500)
If login fails because memory region allocation failed it can be
hard to figure out what happened. Make it easier to figure out
why login failed by logging a message if ib_alloc_mr() fails.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/ulp/srp/ib_srp.c

index c216c6eaef268c884d4359bfe735a8b7cb06abc3..81cb27f2f0e67ca7b96f9cee39dec93cee792c25 100644 (file)
@@ -389,6 +389,9 @@ static struct srp_fr_pool *srp_create_fr_pool(struct ib_device *device,
                                 max_page_list_len);
                if (IS_ERR(mr)) {
                        ret = PTR_ERR(mr);
+                       if (ret == -ENOMEM)
+                               pr_info("%s: ib_alloc_mr() failed. Try to reduce max_cmd_per_lun, max_sect or ch_count\n",
+                                       dev_name(&device->dev));
                        goto destroy_pool;
                }
                d->mr = mr;