Hi Ben, > -----Original Message----- > From: Ben Pfaff <[email protected]> > Sent: Saturday, April 13, 2019 1:38 AM > To: Chris Mi <[email protected]> > Cc: [email protected]; [email protected]; > [email protected]; Roi Dayan <[email protected]> > Subject: Re: [ovs-dev][PATCH v3] netdev-vport: Use the dst_port in tunnel > netdev name > > On Mon, Apr 01, 2019 at 08:37:23AM -0400, Chris Mi wrote: > > If tunnel device dst_port is not the default one, "ovs-dpctl dump-flows" > > will fail. The error message for vxlan is: > > > > netdev_linux|INFO|ioctl(SIOCGIFINDEX) on vxlan_sys_4789 device failed: > > No such device > > > > That's because when calling netdev_vport_construct() for netdev > > vxlan_sys_xxxx, the default dst_port is used. Actually, the dst_port > > value is in the netdev name. Use it to avoid the error. > > > > Signed-off-by: Chris Mi <[email protected]> > > Reviewed-by: Roi Dayan <[email protected]> > > Thanks for the bug fix. > > This makes lots of tests fail. Here's a typical Address Sanitizer > report: > > ========================================================== > ======= > ==17273==ERROR: AddressSanitizer: SEGV on unknown address > 0x000000000000 (pc 0x7f59d4295571 bp 0x7ffd20ad0cf0 sp 0x7ffd20ad0478 T0) > ==17273==The signal is caused by a READ memory access. > ==17273==Hint: address points to the zero page. > #0 0x7f59d4295570 (/lib/x86_64-linux-gnu/libc.so.6+0x15c570) > #1 0x7f59d49ba3bc (/lib/x86_64-linux-gnu/libasan.so.5+0xa83bc) > #2 0x555e5c332bc0 in netdev_vport_construct ../lib/netdev-vport.c:202 > #3 0x555e5c3366fc in netdev_open ../lib/netdev.c:426 > #4 0x555e5c161916 in iface_do_create ../vswitchd/bridge.c:1789 > #5 0x555e5c161916 in iface_create ../vswitchd/bridge.c:1842 > #6 0x555e5c161916 in bridge_add_ports__ ../vswitchd/bridge.c:936 > #7 0x555e5c16e656 in bridge_add_ports ../vswitchd/bridge.c:952 > #8 0x555e5c16e656 in bridge_reconfigure ../vswitchd/bridge.c:666 > #9 0x555e5c17584e in bridge_run ../vswitchd/bridge.c:3037 > #10 0x555e5c157534 in main ../vswitchd/ovs-vswitchd.c:125 > #11 0x7f59d415d09a in __libc_start_main ../csu/libc-start.c:308 > #12 0x555e5c159f79 in _start (/home/blp/nicira/ovs/_build/vswitchd/ovs- > vswitchd+0x11af79) > > AddressSanitizer can not provide additional info. > SUMMARY: AddressSanitizer: SEGV (/lib/x86_64-linux- > gnu/libc.so.6+0x15c570) > ==17273==ABORTING Thanks for verifying it. I think the error is because strlen() can't deal with NULL pointer correctly. I added another check for NULL pointer. Hopefully we're fine this time. Please help review v4 again.
Thanks, Chris > > Thanks, > > Ben. _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
