[ovs-build] Passed: ovsrobot/ovn#451 (series_162516 - ea2464d)

Travis CI builds at travis-ci.com
Thu Mar 5 07:33:52 UTC 2020


Build Update for ovsrobot/ovn
-------------------------------------

Build: #451
Status: Passed

Duration: 18 mins and 24 secs
Commit: ea2464d (series_162516)
Author: Damijan Skvarc
Message: logical-fields: fix memory leak caused by initialize ovnfield_by_name twice

ovnfield_by_name is hash of strings which is used to quickly find
field by name. This hash is initialized from ovn_init_symtab(). In case
the latter function is called multiple times then also ovnfield_by_name is
initialized multiple times but without freeing previously allocated
memory resources what cause memory leaks.  This actually happens in
ovn-controller which calls ovn_init_symtab() function twice, once from
ofctrl.c and the other time from lflow.c files.

Problem was solved by initializing ovnfield_by_name entity only once
and using design pattern from stopwatch.c or meta_flow.c files (ovs).

Problem was reported by valgrind with flood of messages (190) while executing
ovn test suite:

    ==5999== 47 (32 direct, 15 indirect) bytes in 1 blocks are definitely lost in loss record 86 of 102
    ==5999==    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==5999==    by 0x50635D: xmalloc (util.c:138)
    ==5999==    by 0x4F6513: shash_add_nocopy__ (shash.c:109)
    ==5999==    by 0x4F6585: shash_add_nocopy (shash.c:121)
    ==5999==    by 0x4F65BD: shash_add (shash.c:129)
    ==5999==    by 0x4F6602: shash_add_once (shash.c:136)
    ==5999==    by 0x4395B7: ovn_init_symtab (logical-fields.c:261)
    ==5999==    by 0x406C91: main (ovn-controller.c:1750)

Signed-off-by: Damijan Skvarc <damjan.skvarc at gmail.com>
Signed-off-by: 0-day Robot <robot at bytheb.org>

View the changeset: https://github.com/ovsrobot/ovn/compare/fc58e59d56bc^...ea2464d8e0c6

View the full build log and details: https://travis-ci.com/ovsrobot/ovn/builds/151892793?utm_medium=notification&utm_source=email

--

You can unsubscribe from build emails from the ovsrobot/ovn repository going to https://travis-ci.com/account/preferences/unsubscribe?repository=9136199&utm_medium=notification&utm_source=email.
Or unsubscribe from *all* email updating your settings at https://travis-ci.com/account/preferences/unsubscribe?utm_medium=notification&utm_source=email.
Or configure specific recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-build/attachments/20200305/22140eef/attachment.html>


More information about the build mailing list