Re: [PATCH net-next] ibmvnic: Bail from ibmvnic_open if driver is already open

2018-03-12 Thread John Allen
On 03/12/2018 02:01 PM, Andrew Lunn wrote:
> On Mon, Mar 12, 2018 at 01:47:51PM -0500, John Allen wrote:
>> If the driver is already in the "open" state, don't attempt the procedure
>> for opening the driver.
>>
>> Signed-off-by: John Allen 
>> ---
>> diff --git a/drivers/net/ethernet/ibm/ibmvnic.c 
>> b/drivers/net/ethernet/ibm/ibmvnic.c
>> index 7be4b06..98c4f75 100644
>> --- a/drivers/net/ethernet/ibm/ibmvnic.c
>> +++ b/drivers/net/ethernet/ibm/ibmvnic.c
>> @@ -1057,6 +1057,9 @@ static int ibmvnic_open(struct net_device *netdev)
>>
>>  mutex_lock(&adapter->reset_lock);
>>
>> +if (adapter->state == VNIC_OPEN)
>> +return 0;
>> +
> 
> I've not looked at the actual code, but what about the lock it just
> took and does not unlock before returning?
Ah yes, I missed that. I will update and send a new version.

> 
>   Andrew
> 



Re: [PATCH net-next] ibmvnic: Bail from ibmvnic_open if driver is already open

2018-03-12 Thread Andrew Lunn
On Mon, Mar 12, 2018 at 01:47:51PM -0500, John Allen wrote:
> If the driver is already in the "open" state, don't attempt the procedure
> for opening the driver.
> 
> Signed-off-by: John Allen 
> ---
> diff --git a/drivers/net/ethernet/ibm/ibmvnic.c 
> b/drivers/net/ethernet/ibm/ibmvnic.c
> index 7be4b06..98c4f75 100644
> --- a/drivers/net/ethernet/ibm/ibmvnic.c
> +++ b/drivers/net/ethernet/ibm/ibmvnic.c
> @@ -1057,6 +1057,9 @@ static int ibmvnic_open(struct net_device *netdev)
> 
>   mutex_lock(&adapter->reset_lock);
> 
> + if (adapter->state == VNIC_OPEN)
> + return 0;
> +

I've not looked at the actual code, but what about the lock it just
took and does not unlock before returning?

Andrew


[PATCH net-next] ibmvnic: Bail from ibmvnic_open if driver is already open

2018-03-12 Thread John Allen
If the driver is already in the "open" state, don't attempt the procedure
for opening the driver.

Signed-off-by: John Allen 
---
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c 
b/drivers/net/ethernet/ibm/ibmvnic.c
index 7be4b06..98c4f75 100644
--- a/drivers/net/ethernet/ibm/ibmvnic.c
+++ b/drivers/net/ethernet/ibm/ibmvnic.c
@@ -1057,6 +1057,9 @@ static int ibmvnic_open(struct net_device *netdev)

mutex_lock(&adapter->reset_lock);

+   if (adapter->state == VNIC_OPEN)
+   return 0;
+
if (adapter->state != VNIC_CLOSED) {
rc = ibmvnic_login(netdev);
if (rc) {