All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/3] mctp serial minor fixes
@ 2021-11-25  6:07 Jeremy Kerr
  2021-11-25  6:07 ` [PATCH net-next v2 1/3] mctp: serial: cancel tx work on ldisc close Jeremy Kerr
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Jeremy Kerr @ 2021-11-25  6:07 UTC (permalink / raw)
  To: netdev
  Cc: Matt Johnston, David S. Miller, Jakub Kicinski,
	Greg Kroah-Hartman, Jiri Slaby

We had a few minor fixes queued for a v4 of the original series, so
they're sent here as separate changes.

Cheers,


Jeremy

---
v2:
 - fix ordering of cancel_work vs. unregister_netdev.

Jeremy Kerr (3):
  mctp: serial: cancel tx work on ldisc close
  mctp: serial: enforce fixed MTU
  mctp: serial: remove unnecessary ldisc data check

 drivers/net/mctp/mctp-serial.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

-- 
2.30.2


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH net-next v2 1/3] mctp: serial: cancel tx work on ldisc close
  2021-11-25  6:07 [PATCH net-next v2 0/3] mctp serial minor fixes Jeremy Kerr
@ 2021-11-25  6:07 ` Jeremy Kerr
  2021-11-25  6:07 ` [PATCH net-next v2 2/3] mctp: serial: enforce fixed MTU Jeremy Kerr
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Jeremy Kerr @ 2021-11-25  6:07 UTC (permalink / raw)
  To: netdev
  Cc: Matt Johnston, David S. Miller, Jakub Kicinski,
	Greg Kroah-Hartman, Jiri Slaby

We want to ensure that the tx work has finished before returning from
the ldisc close op, so do a synchronous cancel.

Reported-by: Jiri Slaby <jirislaby@kernel.org>
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>

---
v2:
 - cancel work after netdev unregister
---
 drivers/net/mctp/mctp-serial.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/mctp/mctp-serial.c b/drivers/net/mctp/mctp-serial.c
index 9ac0e187f36e..85b407f4df11 100644
--- a/drivers/net/mctp/mctp-serial.c
+++ b/drivers/net/mctp/mctp-serial.c
@@ -479,6 +479,7 @@ static void mctp_serial_close(struct tty_struct *tty)
 	int idx = dev->idx;
 
 	unregister_netdev(dev->netdev);
+	cancel_work_sync(&dev->tx_work);
 	ida_free(&mctp_serial_ida, idx);
 }
 
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH net-next v2 2/3] mctp: serial: enforce fixed MTU
  2021-11-25  6:07 [PATCH net-next v2 0/3] mctp serial minor fixes Jeremy Kerr
  2021-11-25  6:07 ` [PATCH net-next v2 1/3] mctp: serial: cancel tx work on ldisc close Jeremy Kerr
@ 2021-11-25  6:07 ` Jeremy Kerr
  2021-11-25  6:07 ` [PATCH net-next v2 3/3] mctp: serial: remove unnecessary ldisc data check Jeremy Kerr
  2021-11-26  4:00 ` [PATCH net-next v2 0/3] mctp serial minor fixes patchwork-bot+netdevbpf
  3 siblings, 0 replies; 5+ messages in thread
From: Jeremy Kerr @ 2021-11-25  6:07 UTC (permalink / raw)
  To: netdev
  Cc: Matt Johnston, David S. Miller, Jakub Kicinski,
	Greg Kroah-Hartman, Jiri Slaby

The current serial driver requires a maximum MTU of 68, and it doesn't
make sense to set a MTU below the MCTP-required baseline (of 68) either.

This change sets the min_mtu & max_mtu of the mctp netdev, essentially
disallowing changes. By using these instead of a ndo_change_mtu op, we
get the netlink extacks reported too.

Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
---
 drivers/net/mctp/mctp-serial.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/net/mctp/mctp-serial.c b/drivers/net/mctp/mctp-serial.c
index 85b407f4df11..b0e14a63b10d 100644
--- a/drivers/net/mctp/mctp-serial.c
+++ b/drivers/net/mctp/mctp-serial.c
@@ -410,7 +410,14 @@ static const struct net_device_ops mctp_serial_netdev_ops = {
 static void mctp_serial_setup(struct net_device *ndev)
 {
 	ndev->type = ARPHRD_MCTP;
+
+	/* we limit at the fixed MTU, which is also the MCTP-standard
+	 * baseline MTU, so is also our minimum
+	 */
 	ndev->mtu = MCTP_SERIAL_MTU;
+	ndev->max_mtu = MCTP_SERIAL_MTU;
+	ndev->min_mtu = MCTP_SERIAL_MTU;
+
 	ndev->hard_header_len = 0;
 	ndev->addr_len = 0;
 	ndev->tx_queue_len = DEFAULT_TX_QUEUE_LEN;
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH net-next v2 3/3] mctp: serial: remove unnecessary ldisc data check
  2021-11-25  6:07 [PATCH net-next v2 0/3] mctp serial minor fixes Jeremy Kerr
  2021-11-25  6:07 ` [PATCH net-next v2 1/3] mctp: serial: cancel tx work on ldisc close Jeremy Kerr
  2021-11-25  6:07 ` [PATCH net-next v2 2/3] mctp: serial: enforce fixed MTU Jeremy Kerr
@ 2021-11-25  6:07 ` Jeremy Kerr
  2021-11-26  4:00 ` [PATCH net-next v2 0/3] mctp serial minor fixes patchwork-bot+netdevbpf
  3 siblings, 0 replies; 5+ messages in thread
From: Jeremy Kerr @ 2021-11-25  6:07 UTC (permalink / raw)
  To: netdev
  Cc: Matt Johnston, David S. Miller, Jakub Kicinski,
	Greg Kroah-Hartman, Jiri Slaby

Jiri assures me that a ldisc->open with tty->disc_data set should never
happen, so this check doesn't do anything.

Reported-by: Jiri Slaby <jirislaby@kernel.org>
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
---
 drivers/net/mctp/mctp-serial.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/net/mctp/mctp-serial.c b/drivers/net/mctp/mctp-serial.c
index b0e14a63b10d..eaa6fb3224bc 100644
--- a/drivers/net/mctp/mctp-serial.c
+++ b/drivers/net/mctp/mctp-serial.c
@@ -439,9 +439,6 @@ static int mctp_serial_open(struct tty_struct *tty)
 	if (!tty->ops->write)
 		return -EOPNOTSUPP;
 
-	if (tty->disc_data)
-		return -EEXIST;
-
 	idx = ida_alloc(&mctp_serial_ida, GFP_KERNEL);
 	if (idx < 0)
 		return idx;
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH net-next v2 0/3] mctp serial minor fixes
  2021-11-25  6:07 [PATCH net-next v2 0/3] mctp serial minor fixes Jeremy Kerr
                   ` (2 preceding siblings ...)
  2021-11-25  6:07 ` [PATCH net-next v2 3/3] mctp: serial: remove unnecessary ldisc data check Jeremy Kerr
@ 2021-11-26  4:00 ` patchwork-bot+netdevbpf
  3 siblings, 0 replies; 5+ messages in thread
From: patchwork-bot+netdevbpf @ 2021-11-26  4:00 UTC (permalink / raw)
  To: Jeremy Kerr; +Cc: netdev, matt, davem, kuba, gregkh, jirislaby

Hello:

This series was applied to netdev/net-next.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Thu, 25 Nov 2021 14:07:36 +0800 you wrote:
> We had a few minor fixes queued for a v4 of the original series, so
> they're sent here as separate changes.
> 
> Cheers,
> 
> 
> Jeremy
> 
> [...]

Here is the summary with links:
  - [net-next,v2,1/3] mctp: serial: cancel tx work on ldisc close
    https://git.kernel.org/netdev/net-next/c/7bd9890f3d74
  - [net-next,v2,2/3] mctp: serial: enforce fixed MTU
    https://git.kernel.org/netdev/net-next/c/d154cd078ac2
  - [net-next,v2,3/3] mctp: serial: remove unnecessary ldisc data check
    https://git.kernel.org/netdev/net-next/c/d1c99f365a1f

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-11-26  4:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-25  6:07 [PATCH net-next v2 0/3] mctp serial minor fixes Jeremy Kerr
2021-11-25  6:07 ` [PATCH net-next v2 1/3] mctp: serial: cancel tx work on ldisc close Jeremy Kerr
2021-11-25  6:07 ` [PATCH net-next v2 2/3] mctp: serial: enforce fixed MTU Jeremy Kerr
2021-11-25  6:07 ` [PATCH net-next v2 3/3] mctp: serial: remove unnecessary ldisc data check Jeremy Kerr
2021-11-26  4:00 ` [PATCH net-next v2 0/3] mctp serial minor fixes patchwork-bot+netdevbpf

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.