All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Lu <tonylu@linux.alibaba.com>
To: Wenjia Zhang <wenjia@linux.ibm.com>
Cc: David Miller <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>,
	netdev@vger.kernel.org, linux-s390@vger.kernel.org,
	Heiko Carstens <hca@linux.ibm.com>,
	Karsten Graul <kgraul@linux.ibm.com>,
	Alexandra Winter <wintera@linux.ibm.com>,
	Stefan Raspl <raspl@linux.ibm.com>
Subject: Re: [PATCH net-next 3/4] net/smc: Pass on DMBE bit mask in IRQ handler
Date: Tue, 26 Jul 2022 11:11:59 +0800	[thread overview]
Message-ID: <Yt9bf/u0M2bjRvLI@TonyMac-Alibaba> (raw)
In-Reply-To: <20220725141000.70347-4-wenjia@linux.ibm.com>

On Mon, Jul 25, 2022 at 04:09:59PM +0200, Wenjia Zhang wrote:
> From: Stefan Raspl <raspl@linux.ibm.com>
> 
> Make the DMBE bits, which are passed on individually in ism_move() as
> parameter idx, available to the receiver.
> 
> Signed-off-by: Stefan Raspl <raspl@linux.ibm.com>
> Signed-off-by: Wenjia Zhang < wenjia@linux.ibm.com>

LGTM.

Reviewed-by: Tony Lu <tonylu@linux.alibaba.com>

> ---
>  drivers/s390/net/ism_drv.c | 4 +++-
>  include/net/smc.h          | 2 +-
>  net/smc/smc_ism.c          | 6 +++---
>  3 files changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/s390/net/ism_drv.c b/drivers/s390/net/ism_drv.c
> index 4665e9a0e048..d34bb6ec1490 100644
> --- a/drivers/s390/net/ism_drv.c
> +++ b/drivers/s390/net/ism_drv.c
> @@ -443,6 +443,7 @@ static irqreturn_t ism_handle_irq(int irq, void *data)
>  	struct ism_dev *ism = data;
>  	unsigned long bit, end;
>  	unsigned long *bv;
> +	u16 dmbemask;
>  
>  	bv = (void *) &ism->sba->dmb_bits[ISM_DMB_WORD_OFFSET];
>  	end = sizeof(ism->sba->dmb_bits) * BITS_PER_BYTE - ISM_DMB_BIT_OFFSET;
> @@ -456,9 +457,10 @@ static irqreturn_t ism_handle_irq(int irq, void *data)
>  			break;
>  
>  		clear_bit_inv(bit, bv);
> +		dmbemask = ism->sba->dmbe_mask[bit + ISM_DMB_BIT_OFFSET];
>  		ism->sba->dmbe_mask[bit + ISM_DMB_BIT_OFFSET] = 0;
>  		barrier();
> -		smcd_handle_irq(ism->smcd, bit + ISM_DMB_BIT_OFFSET);
> +		smcd_handle_irq(ism->smcd, bit + ISM_DMB_BIT_OFFSET, dmbemask);
>  	}
>  
>  	if (ism->sba->e) {
> diff --git a/include/net/smc.h b/include/net/smc.h
> index 1868a5014dea..c926d3313e05 100644
> --- a/include/net/smc.h
> +++ b/include/net/smc.h
> @@ -101,5 +101,5 @@ int smcd_register_dev(struct smcd_dev *smcd);
>  void smcd_unregister_dev(struct smcd_dev *smcd);
>  void smcd_free_dev(struct smcd_dev *smcd);
>  void smcd_handle_event(struct smcd_dev *dev, struct smcd_event *event);
> -void smcd_handle_irq(struct smcd_dev *dev, unsigned int bit);
> +void smcd_handle_irq(struct smcd_dev *dev, unsigned int bit, u16 dmbemask);
>  #endif	/* _SMC_H */
> diff --git a/net/smc/smc_ism.c b/net/smc/smc_ism.c
> index e51c0cdff8e0..911fe08bc54b 100644
> --- a/net/smc/smc_ism.c
> +++ b/net/smc/smc_ism.c
> @@ -508,13 +508,13 @@ void smcd_handle_event(struct smcd_dev *smcd, struct smcd_event *event)
>  EXPORT_SYMBOL_GPL(smcd_handle_event);
>  
>  /* SMCD Device interrupt handler. Called from ISM device interrupt handler.
> - * Parameters are smcd device pointer and DMB number. Find the connection and
> - * schedule the tasklet for this connection.
> + * Parameters are smcd device pointer, DMB number, and the DMBE bitmask.
> + * Find the connection and schedule the tasklet for this connection.
>   *
>   * Context:
>   * - Function called in IRQ context from ISM device driver IRQ handler.
>   */
> -void smcd_handle_irq(struct smcd_dev *smcd, unsigned int dmbno)
> +void smcd_handle_irq(struct smcd_dev *smcd, unsigned int dmbno, u16 dmbemask)
>  {
>  	struct smc_connection *conn = NULL;
>  	unsigned long flags;
> -- 
> 2.35.2

  reply	other threads:[~2022-07-26  3:12 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-25 14:09 [PATCH net-next 0/4] net/smc: updates 2022-7-25 Wenjia Zhang
2022-07-25 14:09 ` [PATCH net-next 1/4] net/smc: Eliminate struct smc_ism_position Wenjia Zhang
2022-07-26  2:48   ` Tony Lu
2022-07-25 14:09 ` [PATCH net-next 2/4] s390/ism: Cleanups Wenjia Zhang
2022-07-26  3:13   ` Tony Lu
2022-07-25 14:09 ` [PATCH net-next 3/4] net/smc: Pass on DMBE bit mask in IRQ handler Wenjia Zhang
2022-07-26  3:11   ` Tony Lu [this message]
2022-07-25 14:10 ` [PATCH net-next 4/4] net/smc: Enable module load on netlink usage Wenjia Zhang
2022-07-26  2:54   ` Tony Lu
2022-07-26  3:31 ` [PATCH net-next 0/4] net/smc: updates 2022-7-25 Tony Lu
2022-07-26  8:02   ` Wenjia Zhang
2022-07-27 12:30 ` 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=Yt9bf/u0M2bjRvLI@TonyMac-Alibaba \
    --to=tonylu@linux.alibaba.com \
    --cc=davem@davemloft.net \
    --cc=hca@linux.ibm.com \
    --cc=kgraul@linux.ibm.com \
    --cc=kuba@kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=raspl@linux.ibm.com \
    --cc=wenjia@linux.ibm.com \
    --cc=wintera@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.