diff options
author | Nithin Sujir <nsujir@broadcom.com> | 2011-03-18 01:13:27 +0100 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2011-03-23 17:37:00 +0100 |
commit | 6702ca1dffbc864497b6f2c68543aad9bbf0bcee (patch) | |
tree | 6c53aac4e8de5150a4378ae67acafb93e0e905d9 | |
parent | [SCSI] bnx2fc: Avoid holding cq_lock when iounmap() is called (diff) | |
download | linux-6702ca1dffbc864497b6f2c68543aad9bbf0bcee.tar.xz linux-6702ca1dffbc864497b6f2c68543aad9bbf0bcee.zip |
[SCSI] bnx2fc: Remove rtnl_trylock/restart_syscall checks
Call rtnl_lock instead of rtnl_trylock & restart_syscall. This is bnx2fc
counterpart of fcoe fixes, here is the reference:
https://lists.open-fcoe.org/pipermail/devel/2011-March/011199.html
Signed-off-by: Nithin Nayak Sujir <nsujir@broadcom.com>
Signed-off-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
-rw-r--r-- | drivers/scsi/bnx2fc/bnx2fc_fcoe.c | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c index e476e8753079..13271a43cd35 100644 --- a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c +++ b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c @@ -1432,8 +1432,7 @@ static int bnx2fc_destroy(struct net_device *netdev) struct net_device *phys_dev; int rc = 0; - if (!rtnl_trylock()) - return restart_syscall(); + rtnl_lock(); mutex_lock(&bnx2fc_dev_lock); #ifdef CONFIG_SCSI_BNX2X_FCOE_MODULE @@ -1805,10 +1804,7 @@ static int bnx2fc_disable(struct net_device *netdev) struct ethtool_drvinfo drvinfo; int rc = 0; - if (!rtnl_trylock()) { - printk(KERN_ERR PFX "retrying for rtnl_lock\n"); - return -EIO; - } + rtnl_lock(); mutex_lock(&bnx2fc_dev_lock); @@ -1867,10 +1863,7 @@ static int bnx2fc_enable(struct net_device *netdev) struct ethtool_drvinfo drvinfo; int rc = 0; - if (!rtnl_trylock()) { - printk(KERN_ERR PFX "retrying for rtnl_lock\n"); - return -EIO; - } + rtnl_lock(); BNX2FC_MISC_DBG("Entered %s\n", __func__); mutex_lock(&bnx2fc_dev_lock); @@ -1942,10 +1935,8 @@ static int bnx2fc_create(struct net_device *netdev, enum fip_state fip_mode) return -EIO; } - if (!rtnl_trylock()) { - printk(KERN_ERR "trying for rtnl_lock\n"); - return -EIO; - } + rtnl_lock(); + mutex_lock(&bnx2fc_dev_lock); #ifdef CONFIG_SCSI_BNX2X_FCOE_MODULE |