From a60cc587d456c83e8bf77bc3d7fe3c9ed10f3c40 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Thu, 23 Nov 2023 05:19:24 +0900 Subject: [PATCH] network: update MTU after CAN specific configs applied Changing FD mode may trigger change of MTU and maximum MTU size. See kernel documents about CAN FD mode: https://docs.kernel.org/networking/can.html#can-fd-flexible-data-rate-driver-support --- src/network/networkd-setlink.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/network/networkd-setlink.c b/src/network/networkd-setlink.c index 2b37c86d23..854699833d 100644 --- a/src/network/networkd-setlink.c +++ b/src/network/networkd-setlink.c @@ -563,12 +563,20 @@ static int link_is_ready_to_set_link(Link *link, Request *req) { break; } case REQUEST_TYPE_SET_LINK_MTU: { - Request req_ipoib = { - .link = link, - .type = REQUEST_TYPE_SET_LINK_IPOIB, - }; + if (ordered_set_contains(link->manager->request_queue, + &(const Request) { + .link = link, + .type = REQUEST_TYPE_SET_LINK_IPOIB, + })) + return false; - return !ordered_set_contains(link->manager->request_queue, &req_ipoib); + /* Changing FD mode may affect MTU. */ + if (ordered_set_contains(link->manager->request_queue, + &(const Request) { + .link = link, + .type = REQUEST_TYPE_SET_LINK_CAN, + })) + return false; } default: break; -- 2.25.1