Actions
Bug #5469
closedosmo-ggsn: segfault when creating 1024 concurrent pdp contexts
Start date:
02/28/2022
Due date:
% Done:
100%
Spec Reference:
Description
This happens with the new TTCN3 test I just wrote, which attempts exhaustion on a /20 address pool as configured in the docker-plahyground.git test suite.
20220228112108064 DGGSN <0002> ggsn.c:569 PDP(262426933763493:1): Successful PDP Context Creation: APN=internet(internet), TEIC=1020, IPv4=176.16.19.252, IPv6=none 20220228112108071 DGGSN <0002> ggsn.c:569 PDP(262427894584996:1): Successful PDP Context Creation: APN=internet(internet), TEIC=1021, IPv4=176.16.19.253, IPv6=none 20220228112108078 DGGSN <0002> ggsn.c:569 PDP(262424027375564:1): Successful PDP Context Creation: APN=internet(internet), TEIC=1022, IPv4=176.16.19.254, IPv6=none 20220228112108084 DGGSN <0002> ggsn.c:569 PDP(262423780500353:1): Successful PDP Context Creation: APN=internet(internet), TEIC=1023, IPv4=176.16.19.255, IPv6=none 20220228112108091 DGGSN <0002> ggsn.c:569 PDP(262420335723619:1): Successful PDP Context Creation: APN=internet(internet), TEIC=1024, IPv4=176.16.20.0, IPv6=none Program received signal SIGSEGV, Segmentation fault. 0x000055ce49e0fd28 in create_context_ind (pdp=0x7ffe620d1570) at ggsn.c:435 435 struct ggsn_ctx *ggsn = gsn->priv; #0 0x000055ce49e0fd28 in create_context_ind (pdp=0x7ffe620d1570) at ggsn.c:435 #1 0x00007fa84b5a0b59 in gtp_create_pdp_ind (gsn=gsn@entry=0x7fa84a3dd010, version=version@entry=1, peer=peer@entry=0x7ffe620d2640, fd=fd@entry=10, pack=pack@entry=0x7ffe620d2e50, len=len@entry=99) at gtp.c:1816 #2 0x00007fa84b5a2619 in gtp_decaps1c (gsn=0x7fa84a3dd010) at gtp.c:3237 #3 0x00007fa84b48d0f8 in ?? () from /usr/lib/x86_64-linux-gnu/libosmocore.so.18 #4 0x00007fa84b48d1d7 in osmo_select_main () from /usr/lib/x86_64-linux-gnu/libosmocore.so.18 #5 0x000055ce49e0bb27 in main (argc=3, argv=0x7ffe620d5018) at ggsn_main.c:249
Related issues
Updated by pespin about 2 years ago
- Status changed from New to Feedback
- % Done changed from 0 to 90
Can be reproduced by:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/27350 ggsn: Introduce test TC_addr_pool_exhaustion
Fixed here:
remote: https://gerrit.osmocom.org/c/osmo-ggsn/+/27351 libgtp: Fix ggsn crash if pdp alloc array is full (PDP_MAX) [NEW]
remote: https://gerrit.osmocom.org/c/osmo-ggsn/+/27352 libgtp: Define retransmit QUEUE_SIZE relative to PDP_MAX (increase) [NEW]
Updated by pespin about 2 years ago
- Status changed from Feedback to Resolved
- % Done changed from 90 to 100
Merged, closing.
Updated by pespin about 2 years ago
- Related to Bug #5357: no more than PDP_MAX == 1024 PDP contexts possible in libgtp added
Actions