From: Dust Li <dust.li@linux.alibaba.com>
To: Jan Karcher <jaka@linux.ibm.com>,
David Miller <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>
Cc: netdev@vger.kernel.org, linux-s390@vger.kernel.org,
Heiko Carstens <hca@linux.ibm.com>,
Alexandra Winter <wintera@linux.ibm.com>,
Wenjia Zhang <wenjia@linux.ibm.com>,
Thorsten Winkler <twinkler@linux.ibm.com>,
Stefan Raspl <raspl@linux.ibm.com>,
Karsten Graul <kgraul@linux.ibm.com>,
Nils Hoppmann <niho@linux.ibm.com>,
Halil Pasic <pasic@linux.ibm.com>,
Tony Lu <tonylu@linux.alibaba.com>,
Wen Gu <guwen@linux.alibaba.com>
Subject: Re: [net-next v2 0/8] drivers/s390/net/ism: Add generalized interface
Date: Sun, 29 Jan 2023 19:48:21 +0800 [thread overview]
Message-ID: <20230129114821.GF74595@linux.alibaba.com> (raw)
In-Reply-To: <20230123181752.1068-1-jaka@linux.ibm.com>
On Mon, Jan 23, 2023 at 07:17:44PM +0100, Jan Karcher wrote:
>Previously, there was no clean separation between SMC-D code and the ISM
>device driver.This patch series addresses the situation to make ISM available
>for uses outside of SMC-D.
>In detail: SMC-D offers an interface via struct smcd_ops, which only the
>ISM module implements so far. However, there is no real separation between
>the smcd and ism modules, which starts right with the ISM device
>initialization, which calls directly into the SMC-D code.
>This patch series introduces a new API in the ISM module, which allows
>registration of arbitrary clients via include/linux/ism.h: struct ism_client.
>Furthermore, it introduces a "pure" struct ism_dev (i.e. getting rid of
>dependencies on SMC-D in the device structure), and adds a number of API
>calls for data transfers via ISM (see ism_register_dmb() & friends).
>Still, the ISM module implements the SMC-D API, and therefore has a number
>of internal helper functions for that matter.
>Note that the ISM API is consciously kept thin for now (as compared to the
>SMC-D API calls), as a number of API calls are only used with SMC-D and
>hardly have any meaningful usage beyond SMC-D, e.g. the VLAN-related calls.
Hi,
Great work ! This makes the SMC & ISM code much more clear !
I like this patchset, just some questions on this refactor.
I still see there are some SMC related code in
'drivers/s390/net/ism_drv.c', mainly to implement smcd_ops.
As ISM is the lower layer of SMC, I think remove the dependency
on SMC would be better ? Do you have any plan to do that ?
One more thing:
I didn't find any call for smcd_ops->set_vlan_required/reset_vlan_required,
looks it's not needed, so why not remove it, am I missed something ?
Thanks!
>
>v1 -> v2:
> Removed s390x dependency which broke config for other archs.
>
>Stefan Raspl (8):
> net/smc: Terminate connections prior to device removal
> net/ism: Add missing calls to disable bus-mastering
> s390/ism: Introduce struct ism_dmb
> net/ism: Add new API for client registration
> net/smc: Register SMC-D as ISM client
> net/smc: Separate SMC-D and ISM APIs
> s390/ism: Consolidate SMC-D-related code
> net/smc: De-tangle ism and smc device initialization
>
> drivers/s390/net/ism.h | 19 +-
> drivers/s390/net/ism_drv.c | 376 ++++++++++++++++++++++++++++++-------
> include/linux/ism.h | 98 ++++++++++
> include/net/smc.h | 24 +--
> net/smc/af_smc.c | 9 +-
> net/smc/smc_clc.c | 11 +-
> net/smc/smc_core.c | 13 +-
> net/smc/smc_diag.c | 3 +-
> net/smc/smc_ism.c | 180 ++++++++++--------
> net/smc/smc_ism.h | 3 +-
> net/smc/smc_pnet.c | 40 ++--
> 11 files changed, 560 insertions(+), 216 deletions(-)
> create mode 100644 include/linux/ism.h
>
>--
>2.25.1
next prev parent reply other threads:[~2023-01-29 11:48 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-23 18:17 [net-next v2 0/8] drivers/s390/net/ism: Add generalized interface Jan Karcher
2023-01-23 18:17 ` [net-next v2 1/8] net/smc: Terminate connections prior to device removal Jan Karcher
2023-01-23 18:17 ` [net-next v2 2/8] net/ism: Add missing calls to disable bus-mastering Jan Karcher
2023-01-23 18:17 ` [net-next v2 3/8] s390/ism: Introduce struct ism_dmb Jan Karcher
2023-01-23 18:17 ` [net-next v2 4/8] net/ism: Add new API for client registration Jan Karcher
2023-01-23 18:17 ` [net-next v2 5/8] net/smc: Register SMC-D as ISM client Jan Karcher
2023-01-23 18:17 ` [net-next v2 6/8] net/smc: Separate SMC-D and ISM APIs Jan Karcher
2023-01-23 18:17 ` [net-next v2 7/8] s390/ism: Consolidate SMC-D-related code Jan Karcher
2023-01-23 18:17 ` [net-next v2 8/8] net/smc: De-tangle ism and smc device initialization Jan Karcher
2023-01-25 10:00 ` [net-next v2 0/8] drivers/s390/net/ism: Add generalized interface patchwork-bot+netdevbpf
2023-01-29 11:48 ` Dust Li [this message]
2023-02-06 10:57 ` Wenjia Zhang
2023-02-02 13:53 ` Wen Gu
2023-02-06 10:47 ` Wenjia Zhang
2023-02-08 11:59 ` Wen Gu
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=20230129114821.GF74595@linux.alibaba.com \
--to=dust.li@linux.alibaba.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=guwen@linux.alibaba.com \
--cc=hca@linux.ibm.com \
--cc=jaka@linux.ibm.com \
--cc=kgraul@linux.ibm.com \
--cc=kuba@kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=niho@linux.ibm.com \
--cc=pabeni@redhat.com \
--cc=pasic@linux.ibm.com \
--cc=raspl@linux.ibm.com \
--cc=tonylu@linux.alibaba.com \
--cc=twinkler@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox