Re: [vpp-dev] assert in pool_elt_at_index

2021-10-13 Thread Stanislav Zaikin
Hi Florin, Hi Rajith, It shouldn't be the pool expansion case, I have 8341f76fd1cd4351961cd8161cfed2814fc55103. Moreover, in this case _e would be different from &load_balance_pool[3604]. I've found some of those expansions (in other places), in those cases a pointer to the element has a different

Re: [vpp-dev] Unknown VPP Crash even when Heap and RAM are available

2021-10-13 Thread Benoit Ganne (bganne) via lists.fd.io
Classify tables uses their own heaps. > #3 0x76bdb6ca in vnet_classify_new_table (cm=0x77db9460 > , mask=0x7fffb9d52360 "", nbuckets=2, > memory_size=1024, > skip_n_vectors=1, match_n_vectors=2) at > /home/Immaculate/Oct12/vpp/src/vnet/classify/vnet_classify.c:194 You asked for

[vpp-dev] Unknown VPP Crash even when Heap and RAM are available

2021-10-13 Thread Akash S R
Hello Mates, I’m trying to create 50k classify tables with 6GB heap memory and 8GM docker RAM but the vpp crashes after the creation of 32k classify tables. Even though there are unused memory left in both heap and ram the vpp crashes due to out-of -memory. Is there any reason for it, if it

Re: [vpp-dev] assert in pool_elt_at_index

2021-10-13 Thread Rajith PR via lists.fd.io
HI Stanislav, My guess is you don't have the commit below. commit 8341f76fd1cd4351961cd8161cfed2814fc55103 Author: Dave Barach Date: Wed Jun 3 08:05:15 2020 -0400 fib: add barrier sync, pool/vector expand cases load_balance_alloc_i(...) is not thread safe when the load_balance_po

Re: [vpp-dev] assert in pool_elt_at_index

2021-10-13 Thread Florin Coras
Hi Stanislav, The only thing I can think of is that main thread grows the pool, or the pool’s bitmap, without a worker barrier while the worker that asserts is trying to access it. Is main thread busy doing something (e.g., adding routes/interfaces) when the assert happens? Regards, Florin

Re: [vpp-dev] assert in pool_elt_at_index

2021-10-13 Thread Stanislav Zaikin
Hi Florin, I wasn't aware of those helper functions, thanks! But yeah, it also returns 0 (sorry, but there's the trace of another crash) Thread 3 "vpp_wk_0" received signal SIGABRT, Aborted. [Switching to Thread 0x7f9cc0f6a700 (LWP 3546)] __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux

[vpp-dev] VPP 21.10 RC2 is done - release date is in two weeks (27 Oct 2021)

2021-10-13 Thread Andrew Yourtchenko
Hi all, just a note that VPP 21.10 RC2 images are available from the packagecloud repo. Only the critical bugfixes can go now into the stable/2110 branch. The release date is on the 27 October, according to the release plan [0]. thanks a lot! --a /* your friendly 21.10 release manager */ [0]

Re: [vpp-dev] assert in pool_elt_at_index

2021-10-13 Thread Florin Coras
Hi Stanislav, Just to make sure the gdb macro is okay, could you run from gdb: pifi(pool, index)? The function is defined in gdb_funcs.c. Regards, Florin > On Oct 13, 2021, at 11:30 AM, Stanislav Zaikin wrote: > > Hello folks, > > I'm facing a strange issue with 2 worker threads. Sometimes

[vpp-dev] assert in pool_elt_at_index

2021-10-13 Thread Stanislav Zaikin
Hello folks, I'm facing a strange issue with 2 worker threads. Sometimes I get a crash either in "ip6-lookup" or "mpls-lookup" nodes. They happen with assert in the *pool_elt_at_index* macro and always inside the "*load_balance_get*" function. But the load_balance dpo looks perfectly good, I mean

Re: [vpp-dev]: ASSERT in load_balance_get()

2021-10-13 Thread Rajith PR via lists.fd.io
Yes, mpls routes and ip routes that push label are not MP safe. I fixed this in our node that programs these routes. Fix is taking the barrier lock before programming such routes and releasing it once done. -Rajith On Wed, 13 Oct 2021 at 1:12 PM, Stanislav Zaikin wrote: > Hi Rajith, > > Did you

Re: [vpp-dev]: ASSERT in load_balance_get()

2021-10-13 Thread Stanislav Zaikin
Hi Rajith, Did you find the root cause? I'm facing the same problem, the load_balance element in the pool seems to be good. And event a helper from gdbinit says that the element isn't free: #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 51 ../sysdeps/unix/sysv/linux/rai