[ovs-dev] [v5] dpif-netdev: Modified ovs-appctl dpctl/dump-flows command
Ilya Maximets
i.maximets at ovn.org
Mon Jan 20 16:21:37 UTC 2020
On 20.01.2020 17:20, Roi Dayan wrote:
>
>
> On 2020-01-17 6:00 PM, Stokes, Ian wrote:
>> --- a/lib/dpctl.c
>> +++ b/lib/dpctl.c
>> @@ -829,6 +829,10 @@ format_dpif_flow(struct ds *ds, const struct
>> dpif_flow *f, struct hmap *ports,
>> }
>> ds_put_cstr(ds, ", actions:");
>> format_odp_actions(ds, f->actions, f->actions_len, ports);
>> + if (dpctl_p->verbosity && f->attrs.dp_extra_info) {
>> + ds_put_format(ds, ", dp-extra-info:%s", f->attrs.dp_extra_info);
>> + }
>> + free(f->attrs.dp_extra_info);
>> }
>
>
> Hi,
>
> We see ovs-vswitchd crashes with this patch.
> Looks like from the call to free() on dp_extra_info.
Yes, try this: https://patchwork.ozlabs.org/patch/1225037/
>
> (gdb) bt
> #0 __GI___libc_free (mem=0x1000) at malloc.c:3104
> #1 0x0000000000626487 in format_dpif_flow (ds=0x7fff1ef1bb40, f=0x7fff1ef1b570, ports=0x0, dpctl_p=0x7fff1ef1bbe0) at lib/dpctl.c:835
> (gdb) frame 1
> #1 0x0000000000626487 in format_dpif_flow (ds=0x7fff1ef1bb40, f=0x7fff1ef1b570, ports=0x0, dpctl_p=0x7fff1ef1bbe0) at lib/dpctl.c:835
> 835 free(f->attrs.dp_extra_info);
> (gdb) print f->attrs.dp_extra_info
> $1 = 0x1000 <error: Cannot access memory at address 0x1000>
> (gdb) print f->attrs
> $2 = {offloaded = true, dp_layer = 0x686086 "tc", dp_extra_info = 0x1000 <error: Cannot access memory at address 0x1000>}
>
>
> Thanks,
> Roi
>
More information about the dev
mailing list