All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dany Madden <drt@linux.ibm.com>
To: Sukadev Bhattiprolu <sukadev@linux.ibm.com>
Cc: netdev@vger.kernel.org, Brian King <brking@linux.ibm.com>,
	Rick Lindsley <ricklind@linux.ibm.com>
Subject: Re: [PATCH net 4/4] ibmvnic: remove unused ->wait_capability
Date: Sat, 22 Jan 2022 16:33:08 -0800	[thread overview]
Message-ID: <384d39bb4ca9a2a785ee83de94f0ccde@imap.linux.ibm.com> (raw)
In-Reply-To: <20220122025921.199446-4-sukadev@linux.ibm.com>

On 2022-01-21 18:59, Sukadev Bhattiprolu wrote:
> With previous bug fix, ->wait_capability flag is no longer needed and 
> can
> be removed.
> 
> Fixes: 249168ad07cd ("ibmvnic: Make CRQ interrupt tasklet wait for all
> capabilities crqs")
> Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.ibm.com>
Reviewed-by: Dany Madden <drt@linux.ibm.com>

> ---
>  drivers/net/ethernet/ibm/ibmvnic.c | 38 +++++++++++-------------------
>  drivers/net/ethernet/ibm/ibmvnic.h |  1 -
>  2 files changed, 14 insertions(+), 25 deletions(-)
> 
> diff --git a/drivers/net/ethernet/ibm/ibmvnic.c
> b/drivers/net/ethernet/ibm/ibmvnic.c
> index 682a440151a8..8ed0b95147db 100644
> --- a/drivers/net/ethernet/ibm/ibmvnic.c
> +++ b/drivers/net/ethernet/ibm/ibmvnic.c
> @@ -4876,10 +4876,8 @@ static void handle_request_cap_rsp(union
> ibmvnic_crq *crq,
>  	}
> 
>  	/* Done receiving requested capabilities, query IP offload support */
> -	if (atomic_read(&adapter->running_cap_crqs) == 0) {
> -		adapter->wait_capability = false;
> +	if (atomic_read(&adapter->running_cap_crqs) == 0)
>  		send_query_ip_offload(adapter);
> -	}
>  }
> 
>  static int handle_login_rsp(union ibmvnic_crq *login_rsp_crq,
> @@ -5177,10 +5175,8 @@ static void handle_query_cap_rsp(union 
> ibmvnic_crq *crq,
>  	}
> 
>  out:
> -	if (atomic_read(&adapter->running_cap_crqs) == 0) {
> -		adapter->wait_capability = false;
> +	if (atomic_read(&adapter->running_cap_crqs) == 0)
>  		send_request_cap(adapter, 0);
> -	}
>  }
> 
>  static int send_query_phys_parms(struct ibmvnic_adapter *adapter)
> @@ -5476,27 +5472,21 @@ static void ibmvnic_tasklet(struct 
> tasklet_struct *t)
>  	struct ibmvnic_crq_queue *queue = &adapter->crq;
>  	union ibmvnic_crq *crq;
>  	unsigned long flags;
> -	bool done = false;
> 
>  	spin_lock_irqsave(&queue->lock, flags);
> -	while (!done) {
> -		/* Pull all the valid messages off the CRQ */
> -		while ((crq = ibmvnic_next_crq(adapter)) != NULL) {
> -			/* This barrier makes sure ibmvnic_next_crq()'s
> -			 * crq->generic.first & IBMVNIC_CRQ_CMD_RSP is loaded
> -			 * before ibmvnic_handle_crq()'s
> -			 * switch(gen_crq->first) and switch(gen_crq->cmd).
> -			 */
> -			dma_rmb();
> -			ibmvnic_handle_crq(crq, adapter);
> -			crq->generic.first = 0;
> -		}
> +
> +	/* Pull all the valid messages off the CRQ */
> +	while ((crq = ibmvnic_next_crq(adapter)) != NULL) {
> +		/* This barrier makes sure ibmvnic_next_crq()'s
> +		 * crq->generic.first & IBMVNIC_CRQ_CMD_RSP is loaded
> +		 * before ibmvnic_handle_crq()'s
> +		 * switch(gen_crq->first) and switch(gen_crq->cmd).
> +		 */
> +		dma_rmb();
> +		ibmvnic_handle_crq(crq, adapter);
> +		crq->generic.first = 0;
>  	}
> -	/* if capabilities CRQ's were sent in this tasklet, the following
> -	 * tasklet must wait until all responses are received
> -	 */
> -	if (atomic_read(&adapter->running_cap_crqs) != 0)
> -		adapter->wait_capability = true;
> +
>  	spin_unlock_irqrestore(&queue->lock, flags);
>  }
> 
> diff --git a/drivers/net/ethernet/ibm/ibmvnic.h
> b/drivers/net/ethernet/ibm/ibmvnic.h
> index b8e42f67d897..a80f94e161ad 100644
> --- a/drivers/net/ethernet/ibm/ibmvnic.h
> +++ b/drivers/net/ethernet/ibm/ibmvnic.h
> @@ -921,7 +921,6 @@ struct ibmvnic_adapter {
>  	int login_rsp_buf_sz;
> 
>  	atomic_t running_cap_crqs;
> -	bool wait_capability;
> 
>  	struct ibmvnic_sub_crq_queue **tx_scrq ____cacheline_aligned;
>  	struct ibmvnic_sub_crq_queue **rx_scrq ____cacheline_aligned;

  reply	other threads:[~2022-01-23  0:33 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-22  2:59 [PATCH net 1/4] ibmvnic: Allow extra failures before disabling Sukadev Bhattiprolu
2022-01-22  2:59 ` [PATCH net 2/4] ibmvnic: init ->running_cap_crqs early Sukadev Bhattiprolu
2022-01-23  0:30   ` Dany Madden
2022-01-22  2:59 ` [PATCH net 3/4] ibmvnic: don't spin in tasklet Sukadev Bhattiprolu
2022-01-23  0:32   ` Dany Madden
2022-01-22  2:59 ` [PATCH net 4/4] ibmvnic: remove unused ->wait_capability Sukadev Bhattiprolu
2022-01-23  0:33   ` Dany Madden [this message]
2022-01-23  0:22 ` [PATCH net 1/4] ibmvnic: Allow extra failures before disabling Dany Madden
2022-01-24 12:10 ` patchwork-bot+netdevbpf

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=384d39bb4ca9a2a785ee83de94f0ccde@imap.linux.ibm.com \
    --to=drt@linux.ibm.com \
    --cc=brking@linux.ibm.com \
    --cc=netdev@vger.kernel.org \
    --cc=ricklind@linux.ibm.com \
    --cc=sukadev@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.