From patchwork Fri Dec 17 06:44:58 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: miter X-Patchwork-Id: 1569771 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=outlook.com header.i=@outlook.com header.a=rsa-sha256 header.s=selector1 header.b=WbWwO3Jz; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.133; helo=smtp2.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4JFfcW3RSyz9t9b for ; Fri, 17 Dec 2021 17:45:13 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 1F35A40B7B; Fri, 17 Dec 2021 06:45:10 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8SrfC2pZWplt; Fri, 17 Dec 2021 06:45:08 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp2.osuosl.org (Postfix) with ESMTPS id AD22040B51; Fri, 17 Dec 2021 06:45:07 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 86223C002F; Fri, 17 Dec 2021 06:45:07 +0000 (UTC) X-Original-To: ovs-dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133]) by lists.linuxfoundation.org (Postfix) with ESMTP id CEBD8C0012 for ; Fri, 17 Dec 2021 06:45:05 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id A7BE440B68 for ; Fri, 17 Dec 2021 06:45:05 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id pnPF24BlgbSm for ; Fri, 17 Dec 2021 06:45:04 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from AUS01-ME3-obe.outbound.protection.outlook.com (mail-me3aus01olkn20817.outbound.protection.outlook.com [IPv6:2a01:111:f403:7004::817]) by smtp2.osuosl.org (Postfix) with ESMTPS id 09AFD40B51 for ; Fri, 17 Dec 2021 06:45:03 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BccsFbEIO9fmxDRwxe39gqrTP9RzBV2JNgo5Dy5hk2bRDHZFw6yTgcvJLGZ53QoS1Qg0i7OYtdtRjTyUFhkjnuXwtvLa0y7BzD2bSzJ8FFer3SXlCwXcCuEBiCnVD1PgI0DCm3uZVhbr78e6MPG0zRCoaVCuOdOXIRr9ZmeqstYkRw6+bud5T44VV2wltigAHWyuBqP4ngmXbwuQbontGq4u6Y/s2PLBnbsmpEYb+HdiblwfO/ylSww0CGrN/gTBVpsy4VQSyDYXh67MOUZtkx44ZfXBhlWpk2viyJ5FoUOPdGShnE57bmo9CUyIAl/hu53guhWdz9ECi5f7sHFC3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ikckOWD0/J+drNxNsaqbc7YTo0gFWSFNlHWvpIX1Xz8=; b=llRlTdK9wmPEDDAg4IjD1KqHJ/VOAwx8tUDSe5SHcxmILp2EhFtPdBlJMLupowZy8wr9hFwd/KvpJaaWsGhDx4yyW9AqPneddgwNOrts6iWOuqyBcDfoV+GSdnFqupmqqeYSjAQx3OpEJy1yrM0vYPQm2ZI6mYR7o8dNS0KNlVkkwF010TBx+68AwzCMqEI2Yxuj26h9/0y7tkHRTxRPDzSMXA0YDknhJ1uJs+0sQ/q5FWr2vVv2ppcQWKljSrOmjBC5BuyWtiKn00ST6nv7dE5d9ItVjNZlaNjsDO9CuEVMu/mXthqHdQTXVdILnH6L1sDuFW1vPx+m1B3zCT6Eug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ikckOWD0/J+drNxNsaqbc7YTo0gFWSFNlHWvpIX1Xz8=; b=WbWwO3Jznr8jEQgXkyHGItIrGAganw8Fi5GNeLXMCdlNbZTzBMcF/OXa42k4TvTlVeiQmlRn4G2X6fr9AVRUrqH6cQOqUCPWV/mJVgS6PDoVBPRJSUlUCS456m1jWy6k2uPwsmD1MNYdlLLucjAoH9eRqEH9nL2CIIKcrRjEg3IIZBGJsjN883VZy09chPy4Bj6uDvLnUYC5JKwk3NcUyzxxCK66wVgbbN0zUELx43J/txHTLF17G3xgdJSJQea514ZrA/OfchWKyUL3f1rpgmXUwKDrLZNWKvzkc5wGfBbyXQJqSBQC4rpKL+qh75TzdvYRXBLvRVYoT0YRziGbcg== Received: from MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM (2603:10c6:220:15b::24) by ME3P282MB2747.AUSP282.PROD.OUTLOOK.COM (2603:10c6:220:13c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.15; Fri, 17 Dec 2021 06:44:58 +0000 Received: from MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM ([fe80::81a0:500:1358:af50]) by MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM ([fe80::81a0:500:1358:af50%6]) with mapi id 15.20.4801.015; Fri, 17 Dec 2021 06:44:58 +0000 From: lin huang To: Ilya Maximets , "ovs-dev@openvswitch.org" Thread-Topic: [ovs-dev] [PATCH] bridge: Fix incorrect configuration of netdev's dpif type. Thread-Index: AQHX8tnuouw8/17bwk+uXp0DYo5D9Kw2PSEa Date: Fri, 17 Dec 2021 06:44:58 +0000 Message-ID: References: <20211217000557.1563487-1-i.maximets@ovn.org> In-Reply-To: <20211217000557.1563487-1-i.maximets@ovn.org> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: suggested_attachment_session_id: ceb338f2-91e0-74cb-dfb8-5235be14c6ba x-tmn: [Rj40nrTb23pBuW75oiMothMUq7nTCEy7] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 836306ee-99ee-44a7-ba90-08d9c128be15 x-ms-traffictypediagnostic: ME3P282MB2747:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: AGJwoWoQXwv1V8rKlnsdRWLLn697lvjL0stM35b2NhcnZVT0ba128A3XrsCYTvc6bIpcyR1GsRiRDlRnMbsZ3JCXCPRHZfXtV0hVQr+VFmejECCeM0azshaWhNoXoB9DHHHe17J86UhgFPeyYDjfRzj4JXgEED7hPuOsTkAVClt6kzcBd10n1B8tJzx3rQu2RTyub/1+vPaw1lFoTX7us64CUiQ/bliNWN98csh5oKimmDsSQrel+UJSVBUovYh55rwDTGe4Sbk/md6VmtTnHL0IVZw+YKUYHrEuclGc308dZPkt+7sakkrJUTIk2qjTuVAhm3IQDXxygiasoaUblnIF1JNBRcOl5TozuVUKPBASqMrau/sk0MdhP9ubDpthxZLEPHgDtZ1yd+OKhd82320vVROUZ3fM6mLCHNwGMmgirLVEEuq82hElcrczfsb5LztO+JC/ssJ6ur7kPqc6NBICug/AaflkE6GqWsjffJdKRffXAvcwQp1EDMxBCVr65tzw8MJF2yHocJzKO9vtyO0Ve4oO7zUCCt+pImSYaCSHf3AOolfjmqodzgUmkKMYYfmONg0KuW7bt038pnzJO8K1c5iw0hL6CBQ/LmmkxgZEKQYhoC89rtjy8dRw981rJ5hAW7T/gEVv36Tuf8SGKunB3IUWJo49twAvIkfuQq4= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: KisLD2NG0zRPXG9NzsC0Zb/nUSiHPEkQ3jgvgLrZyaQ2ZFueAalpUGh2pokHJ7uJ3R26KbfnR9yoIdbBXemVb3UkQlnmGmvaVuCEaYFbETE156C7HImwQclKJ1cBp+iwof0gXSWF6MVmf58hzFWfMSZ/0tT5YMS8I8N3YSP69OIi/NuCewny3K3dsjut+RkmJ95gSDDygS/LTxk4XqXctqn4wKc+ezfjxKtm4+TnJOsyXyw4nwSlM4znlz2rSsRRm7VLrObzkcjRArpdUQNDHqJpvKDTaRlGtubycKBzXEVNG1sXJfomntn4Jrfx8wjBuIxqt2HlCoCXT4M7vKW/aYoWOeIOEQ/gpoXVEZAwnlyP7A2V0JfwVpfhlgyKyodkqoFPtH5uqsO/YcSULaBu6OYw0C/s35hVDv0a8a7hsxS2AP9gCvyw1Yk1Ixo5gNPw6BQhzTt8sl7nFP5E1dVm4xn+FVxzkDukKi4EhlfHWHhqxjbDMYipLgy/bYcfAaPcK7EEfKJfqpMxQFbBGIZzBd5tP97TCilgRKl09+fqi6rNQWmIpkaJv2BnJlYpEFNb/2Cqyd+Fd8RFZCUDD/KDwn4FeIFGqWvv+Q40RjAsHWU10DBwpDR5paZDp9KZKfw6vOFlkgcNOsLMZ5q/ednhtxQPB7Mqhd350YqQ2IBYkU+IbMFD+ndCyL/ihcVzPMnj6NBiL4rxpBt8ogoDYdSUv8TlPK1wJDcxKFPmXVYPQWOBtJpd0grQqu6fvXHrMcieAczDYt0i66ttEdmD0/eRIVH2+8IEbAMwvQa4mGFKgcO450LepQGXsLP+1Oi7h+qX0G1Byhy+AnBDhr3J9buMfCzl6bktc2vfYT9LypLxd2QRWwv0ux4TgOo/A3GpPqHqj/NR7Zxi3AvkKn20Ye23uAPN0+wFrnN+o95GoC2yrs2X64jKCz7W4VmwTm+R70N6 MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 836306ee-99ee-44a7-ba90-08d9c128be15 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Dec 2021 06:44:58.0646 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: ME3P282MB2747 Cc: Lin Huang Subject: [ovs-dev] =?eucgb2312_cn?b?u9i4tDogIFtQQVRDSF0gYnJpZGdlOiBGaXggaW5jb3Jy?= =?eucgb2312_cn?b?ZWN0IGNvbmZpZ3VyYXRpb24gb2YgbmV0ZGV2J3MJZHBpZiB0eXBlLg==?= X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" Hi Ilya, I am sorry for what I have done. This patch looks good to me. diff --git a/lib/dpif.c b/lib/dpif.c index 38bcb47cb..cff0bc2db 100644 --- a/lib/dpif.c +++ b/lib/dpif.c @@ -364,7 +364,8 @@ do_open(const char *name, const char *type, bool create, struct dpif **dpifp) err = netdev_open(dpif_port.name, dpif_port.type, &netdev); if (!err) { - netdev_ports_insert(netdev, dpif_type_str, &dpif_port); + netdev_set_dpif_type(netdev, dpif_type_str); + netdev_ports_insert(netdev, &dpif_port); netdev_close(netdev); } else { VLOG_WARN("could not open netdev %s type %s: %s", @@ -602,10 +603,12 @@ dpif_port_add(struct dpif *dpif, struct netdev *netdev, odp_port_t *port_nop) const char *dpif_type_str = dpif_normalize_type(dpif_type(dpif)); struct dpif_port dpif_port; + netdev_set_dpif_type(netdev, dpif_type_str); + dpif_port.type = CONST_CAST(char *, netdev_get_type(netdev)); dpif_port.name = CONST_CAST(char *, netdev_name); dpif_port.port_no = port_no; - netdev_ports_insert(netdev, dpif_type_str, &dpif_port); + netdev_ports_insert(netdev, &dpif_port); } } else { VLOG_WARN_RL(&error_rl, "%s: failed to add %s as port: %s", diff --git a/lib/netdev-offload.c b/lib/netdev-offload.c index 8075cfbd8..b8dc108f3 100644 --- a/lib/netdev-offload.c +++ b/lib/netdev-offload.c @@ -573,12 +573,14 @@ netdev_ports_lookup(odp_port_t port_no, const char *dpif_type) } int -netdev_ports_insert(struct netdev *netdev, const char *dpif_type, - struct dpif_port *dpif_port) +netdev_ports_insert(struct netdev *netdev, struct dpif_port *dpif_port) { + const char *dpif_type = netdev_get_dpif_type(netdev); struct port_to_netdev_data *data; int ifindex = netdev_get_ifindex(netdev); + ovs_assert(dpif_type); + ovs_rwlock_wrlock(&netdev_hmap_rwlock); if (netdev_ports_lookup(dpif_port->port_no, dpif_type)) { ovs_rwlock_unlock(&netdev_hmap_rwlock); @@ -596,8 +598,6 @@ netdev_ports_insert(struct netdev *netdev, const char *dpif_type, data->ifindex = -1; } - netdev_set_dpif_type(netdev, dpif_type); - hmap_insert(&port_to_netdev, &data->portno_node, netdev_ports_hash(dpif_port->port_no, dpif_type)); ovs_rwlock_unlock(&netdev_hmap_rwlock); diff --git a/lib/netdev-offload.h b/lib/netdev-offload.h index e7fcedae9..43a98d499 100644 --- a/lib/netdev-offload.h +++ b/lib/netdev-offload.h @@ -108,8 +108,7 @@ bool netdev_is_offload_rebalance_policy_enabled(void); int netdev_flow_get_n_flows(struct netdev *netdev, uint64_t *n_flows); struct dpif_port; -int netdev_ports_insert(struct netdev *, const char *dpif_type, - struct dpif_port *); +int netdev_ports_insert(struct netdev *, struct dpif_port *); struct netdev *netdev_ports_get(odp_port_t port, const char *dpif_type); int netdev_ports_remove(odp_port_t port, const char *dpif_type); odp_port_t netdev_ifindex_to_odp_port(int ifindex); diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c index 513ef7ea9..5223aa897 100644 --- a/vswitchd/bridge.c +++ b/vswitchd/bridge.c @@ -2052,8 +2052,6 @@ iface_do_create(const struct bridge *br, goto error; } - netdev_set_dpif_type(netdev, br->ofproto->type); - error = iface_set_netdev_config(iface_cfg, netdev, errp); if (error) { goto error;