From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vincent Bernat Subject: Re: [next] bonding: pass link-local packets to bonding master also. Date: Thu, 20 Dec 2018 06:55:45 +0100 Message-ID: <87ftuseo7y.fsf@bernat.ch> References: <20180716011246.225647-1-mahesh@bandewar.net> <120845b4-3828-4473-19bc-ec3ab0b49d4c@ziu.info> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Cc: Mahesh Bandewar , Jay Vosburgh , Andy Gospodarek , Veaceslav Falico , David Miller , Netdev , Mahesh Bandewar , Chonggang Li To: Michal Soltys Return-path: Received: from out1-smtp.messagingengine.com ([66.111.4.25]:55527 "EHLO out1-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726716AbeLTFzy (ORCPT ); Thu, 20 Dec 2018 00:55:54 -0500 In-Reply-To: <120845b4-3828-4473-19bc-ec3ab0b49d4c@ziu.info> (Michal Soltys's message of "Wed, 19 Dec 2018 23:57:13 +0100") Sender: netdev-owner@vger.kernel.org List-ID: =E2=9D=A6 19 d=C3=A9cembre 2018 23:57 +01, Michal Soltys : >>> Commit b89f04c61efe ("bonding: deliver link-local packets with >>> skb->dev set to link that packets arrived on") changed the behavior >>> of how link-local-multicast packets are processed. The change in >>> the behavior broke some legacy use cases where these packets are >>> expected to arrive on bonding master device also. >>=20 >> Unfortunately, this doesn't completely restore the previous >> functionality as PACKET_ORIGDEV is broken for the copy: the original >> interface is lost through the call to netif_rx(). A LLDP daemon >> listening to the master interface won't get the original interface like >> it was able to before 4.12. >>=20 >> I am a bit lost of what the original patch was trying to achieve. I am >> using the following test program: >>=20 > > Basing on what you wrote below, it seems that everything was already > possible before the Chonggang Li's commit ? > > If I understand correctly: > > - if listening on master, you could get both slave interface > (PACKET_ORIGDEV) as well as bonding master > - if listening on slave, you would just get the slave interface > > Right ? Yes. This has been this way since 2.6.27. --=20 Test programs at their boundary values. - The Elements of Programming Style (Kernighan & Plauger)