Hi,<br><br>I am using libnl-3-200_3.2.7-2_i386.deb and libnl-route-3-200_3.2.7-2_i386.deb on Ubuntu to resolve IPv6 addresses into corresponding MAC addresses, in a multi-threaded application. I see the application crash with Segmentation fault after resolving close to 30,000 IPv6 addresses.<br>
The application creates a cache manager for both route/link and route/neigh and then uses nl_cache_mngr_poll function to receive neighbor cache updates. Here is a backtrace from gdb after the segmentation fault:<br><br>Program received signal SIGSEGV, Segmentation fault.<br>
[Switching to Thread -378549344 (LWP 3159)]<br>0xf7e081b3 in main_arena () from /lib/tls/i686/cmov/libc.so.6<br>(gdb) bt<br>#0 0xf7e081b3 in main_arena () from /lib/tls/i686/cmov/libc.so.6<br>#1 0xf7f968b6 in nl_recvmsgs () from /lib/libnl-3.so.200<br>
#2 0xf7f96e52 in nl_recvmsgs_default () from /lib/libnl-3.so.200<br>#3 0xf7f929ee in nl_cache_mngr_data_ready () from /lib/libnl-3.so.200<br>#4 0xf7f92a8a in nl_cache_mngr_poll () from /lib/libnl-3.so.200<br><br>I looked through logs of recent commits and did not find anything that mentions this problem. <br>
I would appreciate it if I could get your inputs on this, and also if libnl can handle high load from a multi-threaded applications.<br><br>Thanks,<br>Samriti<br>