From patchwork Tue Oct 16 16:47:16 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Maximets X-Patchwork-Id: 984844 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=samsung.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=samsung.com header.i=@samsung.com header.b="U4yERYyc"; dkim-atps=neutral Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 42ZLkt050Mz9s8T for ; Wed, 17 Oct 2018 03:44:52 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 4C8C02977; Tue, 16 Oct 2018 16:44:49 +0000 (UTC) X-Original-To: ovs-dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 3BF53296F for ; Tue, 16 Oct 2018 16:44:48 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 4D14D7F0 for ; Tue, 16 Oct 2018 16:44:47 +0000 (UTC) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20181016164445euoutp0203ce94ea45d42dcdadc860c870fadada~eJIcLuNhe2162221622euoutp02I; Tue, 16 Oct 2018 16:44:45 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20181016164445euoutp0203ce94ea45d42dcdadc860c870fadada~eJIcLuNhe2162221622euoutp02I DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1539708285; bh=37uqVLoABqUoDpSU/p+I7TWa9Qxh++wnCHaB5smhOfY=; h=From:To:Cc:Subject:Date:References:From; b=U4yERYycVI3AvLRsNBdETyhygMkqRF6ExY6OJatYaaJR2ruwXYNFXfwP9Q8Gs1PUy IiufTsx//Yb4KtN6dHwyuRXmUufjrcDghaigitwrQ0Doabj1j3iSePmm84aN0U7EVS F9bnijKugiACi/7LSXbhQZVrKE0p7aqKyUo7/d7w= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20181016164444eucas1p212c41f7d2f58894c5d03fafd19aea1bb~eJIbq86NT2743527435eucas1p2r; Tue, 16 Oct 2018 16:44:44 +0000 (GMT) Received: from eucas1p2.samsung.com ( [182.198.249.207]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id D1.6A.04806.C7516CB5; Tue, 16 Oct 2018 17:44:44 +0100 (BST) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20181016164443eucas1p17011f613039d12a8c0ee88ed72e2bf27~eJIazAhxI1116711167eucas1p1l; Tue, 16 Oct 2018 16:44:43 +0000 (GMT) X-AuditID: cbfec7f5-367ff700000012c6-6a-5bc6157c0acb Received: from eusync4.samsung.com ( [203.254.199.214]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 0D.E2.04284.B7516CB5; Tue, 16 Oct 2018 17:44:43 +0100 (BST) Received: from imaximets.rnd.samsung.ru ([106.109.129.180]) by eusync4.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0PGP00BN6AIF9U70@eusync4.samsung.com>; Tue, 16 Oct 2018 17:44:43 +0100 (BST) From: Ilya Maximets To: ovs-dev@openvswitch.org, Ben Pfaff Date: Tue, 16 Oct 2018 19:47:16 +0300 Message-id: <20181016164716.11776-1-i.maximets@samsung.com> X-Mailer: git-send-email 2.17.1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprEIsWRmVeSWpSXmKPExsWy7djP87o1oseiDdZP4bd4NbmB0eJK+092 i40Pz7JanO35yWQx99NzRgdWjxmf5rN4LN7zksnj2c3/jB7Pr/WwePRtWcUYwBrFZZOSmpNZ llqkb5fAlfHmXxtjwS7ziksPprE3MPbKdDFyckgImEgc+ziJpYuRi0NIYAWjRO/ZNnYI5zOj xM1ZV1lgqn5fecgIYgsJLGOUWLfdCaKomUni4fS77CAJNgEdiVOrj4AViQA1LJv6jQ3EZhYo k3hzezXYIGGBUImWc++BbA4OFgFViQdzk0HCvALWEpvfXmaC2CUvsXrDAWaQ+RICD1klzi3b wAqRcJGY/uYNVJGwxKvjW9ghbBmJzo6DUPF6ifstLxkhmjsYJaYf+geVsJfY8vocO8RBfBKT tk1nBjlCQoBXoqNNCKLEQ2JR302oJ2MlZhzaxDKBUWIBI8MqRvHU0uLc9NRi47zUcr3ixNzi 0rx0veT83E2MwJg6/e/41x2M+/4kHWIU4GBU4uH9cf1ItBBrYllxZe4hRgkOZiUR3vRLR6OF eFMSK6tSi/Lji0pzUosPMUpzsCiJ8y6btzFaSCA9sSQ1OzW1ILUIJsvEwSnVwHh6WU1qxXuN i1YJUyYd/HNi66Q/LPfPFzpqe6fNXHS3Pvm7tK3hoR0/9r/bvIZpk+7quXLa+2wSzUVcJhpf T0rLmRvza+laM36jxZP+OWzt1YjtqVws9L1Qg2mpzPeZ32Xuqx2bWbSoY8pMudsz1gnP3x59 WMblbpqA3evZa2+8FC5V0T1nJZWixFKckWioxVxUnAgADuu6LaUCAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrKJMWRmVeSWpSXmKPExsVy+t/xa7rVoseiDY7+57V4NbmB0eJK+092 i40Pz7JanO35yWQx99NzRgdWjxmf5rN4LN7zksnj2c3/jB7Pr/WwePRtWcUYwBrFZZOSmpNZ llqkb5fAlfHmXxtjwS7ziksPprE3MPbKdDFyckgImEj8vvKQsYuRi0NIYAmjxNGXu9ghnFYm iW3fdzCBVLEJ6EicWn2EEcQWAepYNvUbG4jNLFAmse9oN5gtLBAq0XLuPUsXIwcHi4CqxIO5 ySBhXgFric1vLzNBLJOXWL3hAPMERq4FjAyrGEVSS4tz03OLDfWKE3OLS/PS9ZLzczcxAj2/ 7djPzTsYL20MPsQowMGoxMP74/qRaCHWxLLiytxDjBIczEoivOmXjkYL8aYkVlalFuXHF5Xm pBYfYpTmYFES5z1vUBklJJCeWJKanZpakFoEk2Xi4JRqYGReupDdr9fm18bfVzxY1Z+Eqj4/ qi25gjnmeuceJw3TNws7l3NffP4i4VDnptMOZZ53Xitps9tsrvm4IfREiP/S1DXra2zu1N/x eSrZ9Ov2RPsT53V46nXO5s/a5SP5896fID8l/U1+26bFn/9y69cBlY+bqg1yE1IkXuwqXaZy 7llOuIWng5ESS3FGoqEWc1FxIgDRcYfO+AEAAA== X-CMS-MailID: 20181016164443eucas1p17011f613039d12a8c0ee88ed72e2bf27 X-Msg-Generator: CA CMS-TYPE: 201P X-CMS-RootMailID: 20181016164443eucas1p17011f613039d12a8c0ee88ed72e2bf27 References: X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: Ilya Maximets , Olivier Cochard Subject: [ovs-dev] [PATCH] netdev-bsd: Fix build failure because of undefined NO_OFFLOAD_API. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org NO_OFFLOAD_API was removed while netdev classes initialization refactoring, but netdev-bsd still uses it. Instead of redefining it, I just refactored the BSD classes to be same as other netdevs. CC: Ben Pfaff Fixes: 89c09c1cd1f0 ("netdev: Clean up class initialization.") Signed-off-by: Ilya Maximets --- lib/netdev-bsd.c | 125 ++++++++++++++--------------------------------- 1 file changed, 38 insertions(+), 87 deletions(-) diff --git a/lib/netdev-bsd.c b/lib/netdev-bsd.c index a153aa259..99d4f4842 100644 --- a/lib/netdev-bsd.c +++ b/lib/netdev-bsd.c @@ -1479,94 +1479,45 @@ netdev_bsd_update_flags(struct netdev *netdev_, enum netdev_flags off, return error; } -/* Linux has also different GET_STATS, SET_STATS, - * GET_STATUS) - */ -#define NETDEV_BSD_CLASS(NAME, CONSTRUCT, \ - GET_FEATURES) \ -{ \ - NAME, \ - false, /* is_pmd */ \ - \ - NULL, /* init */ \ - netdev_bsd_run, \ - netdev_bsd_wait, \ - netdev_bsd_alloc, \ - CONSTRUCT, \ - netdev_bsd_destruct, \ - netdev_bsd_dealloc, \ - NULL, /* get_config */ \ - NULL, /* set_config */ \ - NULL, /* get_tunnel_config */ \ - NULL, /* build header */ \ - NULL, /* push header */ \ - NULL, /* pop header */ \ - NULL, /* get_numa_id */ \ - NULL, /* set_tx_multiq */ \ - \ - netdev_bsd_send, \ - netdev_bsd_send_wait, \ - \ - netdev_bsd_set_etheraddr, \ - netdev_bsd_get_etheraddr, \ - netdev_bsd_get_mtu, \ - NULL, /* set_mtu */ \ - netdev_bsd_get_ifindex, \ - netdev_bsd_get_carrier, \ - NULL, /* get_carrier_resets */ \ - NULL, /* set_miimon_interval */ \ - netdev_bsd_get_stats, \ - NULL, /* get_custom_stats */ \ - GET_FEATURES, \ - NULL, /* set_advertisement */ \ - NULL, /* get_pt_mode */ \ - NULL, /* set_policing */ \ - NULL, /* get_qos_type */ \ - NULL, /* get_qos_capabilities */ \ - NULL, /* get_qos */ \ - NULL, /* set_qos */ \ - NULL, /* get_queue */ \ - NULL, /* set_queue */ \ - NULL, /* delete_queue */ \ - NULL, /* get_queue_stats */ \ - NULL, /* queue_dump_start */ \ - NULL, /* queue_dump_next */ \ - NULL, /* queue_dump_done */ \ - NULL, /* dump_queue_stats */ \ - \ - netdev_bsd_set_in4, \ - netdev_bsd_get_addr_list, \ - NULL, /* add_router */ \ - netdev_bsd_get_next_hop, \ - NULL, /* get_status */ \ - netdev_bsd_arp_lookup, /* arp_lookup */ \ - \ - netdev_bsd_update_flags, \ - NULL, /* reconfigure */ \ - \ - netdev_bsd_rxq_alloc, \ - netdev_bsd_rxq_construct, \ - netdev_bsd_rxq_destruct, \ - netdev_bsd_rxq_dealloc, \ - netdev_bsd_rxq_recv, \ - netdev_bsd_rxq_wait, \ - netdev_bsd_rxq_drain, \ - \ - NO_OFFLOAD_API, \ - NULL /* get_block_id */ \ -} +#define NETDEV_BSD_CLASS_COMMON \ + .run = netdev_bsd_run, \ + .wait = netdev_bsd_wait, \ + .alloc = netdev_bsd_alloc, \ + .destruct = netdev_bsd_destruct, \ + .dealloc = netdev_bsd_dealloc, \ + .send = netdev_bsd_send, \ + .send_wait = netdev_bsd_send_wait, \ + .set_etheraddr = netdev_bsd_set_etheraddr, \ + .get_etheraddr = netdev_bsd_get_etheraddr, \ + .get_mtu = netdev_bsd_get_mtu, \ + .get_ifindex = netdev_bsd_get_ifindex, \ + .get_carrier = netdev_bsd_get_carrier, \ + .get_stats = netdev_bsd_get_stats, \ + .get_features = netdev_bsd_get_features, \ + .set_in4 = netdev_bsd_set_in4, \ + .get_addr_list = netdev_bsd_get_addr_list, \ + .get_next_hop = netdev_bsd_get_next_hop, \ + .arp_lookup = netdev_bsd_arp_lookup, \ + .update_flags = netdev_bsd_update_flags, \ + .rxq_alloc = netdev_bsd_rxq_alloc, \ + .rxq_construct = netdev_bsd_rxq_construct, \ + .rxq_destruct = netdev_bsd_rxq_destruct, \ + .rxq_dealloc = netdev_bsd_rxq_dealloc, \ + .rxq_recv = netdev_bsd_rxq_recv, \ + .rxq_wait = netdev_bsd_rxq_wait, \ + .rxq_drain = netdev_bsd_rxq_drain + +const struct netdev_class netdev_bsd_class = { + NETDEV_BSD_CLASS_COMMON, + .type = "system", + .construct = netdev_bsd_construct_system, +}; -const struct netdev_class netdev_bsd_class = - NETDEV_BSD_CLASS( - "system", - netdev_bsd_construct_system, - netdev_bsd_get_features); - -const struct netdev_class netdev_tap_class = - NETDEV_BSD_CLASS( - "tap", - netdev_bsd_construct_tap, - netdev_bsd_get_features); +const struct netdev_class netdev_tap_class = { + NETDEV_BSD_CLASS_COMMON, + .type = "tap", + .construct = netdev_bsd_construct_tap, +}; static void