Message ID | SY4PR01MB84389A4F80A5A14C4AC26809CD5C9@SY4PR01MB8438.ausprd01.prod.outlook.com |
---|---|
State | Accepted |
Commit | ccd26e79e5d24dd19e59d53337b51ce167966530 |
Headers | show |
Series | [ovs-dev,v1] ovs-tcpdump: Fix bond port unable to capture jumbo frames. | expand |
Context | Check | Description |
---|---|---|
ovsrobot/apply-robot | success | apply and check: success |
ovsrobot/github-robot-_Build_and_Test | success | github build: passed |
ovsrobot/intel-ovs-compilation | success | test: success |
miterv@outlook.com writes: > From: Lin Huang <linhuang@ruijie.com.cn> > > Currently the ovs-tcpdump utility creates a tap port to capture the > frames of a bond port. > > If a user want to capture the packets from the bond port which member > interface's mtu is more than 1500. By default the utility creates a > tap port which mtu is 1500, regardless the member interface's mtu config. > So that user cann't get the bond port frames which mtu is lager than 1500. > > This patch fix this issiue by checking the member interface's mtu and > set maximal mtu value to the tap port. > > Signed-off-by: Lin Huang <linhuang@ruijie.com.cn> > --- I did some basic testing with this, and it seems to work for me. patch subject for an update patch is typically v2, but I guess you started at '0' for this series ;) Acked-by: Aaron Conole <aconole@redhat.com>
On 10/10/22 22:07, Aaron Conole wrote: > miterv@outlook.com writes: > >> From: Lin Huang <linhuang@ruijie.com.cn> >> >> Currently the ovs-tcpdump utility creates a tap port to capture the >> frames of a bond port. >> >> If a user want to capture the packets from the bond port which member >> interface's mtu is more than 1500. By default the utility creates a >> tap port which mtu is 1500, regardless the member interface's mtu config. >> So that user cann't get the bond port frames which mtu is lager than 1500. >> >> This patch fix this issiue by checking the member interface's mtu and >> set maximal mtu value to the tap port. >> >> Signed-off-by: Lin Huang <linhuang@ruijie.com.cn> >> --- > > I did some basic testing with this, and it seems to work for me. > > patch subject for an update patch is typically v2, but I guess you > started at '0' for this series ;) > > Acked-by: Aaron Conole <aconole@redhat.com> > Thanks! Applied and backported down to 2.17. Best regards, Ilya Maximets.
diff --git a/utilities/ovs-tcpdump.in b/utilities/ovs-tcpdump.in index 7fd26e405..e12bab889 100755 --- a/utilities/ovs-tcpdump.in +++ b/utilities/ovs-tcpdump.in @@ -225,6 +225,13 @@ class OVSDB(object): def interface_mtu(self, intf_name): try: intf = self._find_row_by_name('Interface', intf_name) + if intf is None: + mtu = 1500 + port = self._find_row_by_name('Port', intf_name) + for intf in port.interfaces: + if mtu < intf.mtu[0]: + mtu = intf.mtu[0] + return mtu return intf.mtu[0] except Exception: return None