[PATCH] osmo-iuh[master]: segfault: context_map gc: use llist_for_each_entry_safe()

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Neels Hofmeyr gerrit-no-reply at lists.osmocom.org
Sun Dec 24 23:46:43 UTC 2017


Review at  https://gerrit.osmocom.org/5574

segfault: context_map gc: use llist_for_each_entry_safe()

The context map garbage collector removes entries from the list, hence it must
use llist_for_each_entry_safe().

We haven't hit this before since nothing is yet flagging context maps to be
discarded.

Related: OS#2776
Change-Id: I9d5899923054d1bf862d542fec862fb1e6f07dce
---
M src/context_map.c
1 file changed, 2 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-iuh refs/changes/74/5574/1

diff --git a/src/context_map.c b/src/context_map.c
index 0c891cf..dca276a 100644
--- a/src/context_map.c
+++ b/src/context_map.c
@@ -146,10 +146,10 @@
 {
 	struct hnb_gw *gw = data;
 	struct hnbgw_cnlink *cn = gw->sccp.cnlink;
-	struct hnbgw_context_map *map;
+	struct hnbgw_context_map *map, *next_map;
 
 	DEBUGP(DMAIN, "Running context mapper garbage collection\n");
-	llist_for_each_entry(map, &cn->map_list, cn_list) {
+	llist_for_each_entry_safe(map, next_map, &cn->map_list, cn_list) {
 		switch (map->state) {
 		case MAP_S_RESERVED1:
 			/* first time we see this reserved

-- 
To view, visit https://gerrit.osmocom.org/5574
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9d5899923054d1bf862d542fec862fb1e6f07dce
Gerrit-PatchSet: 1
Gerrit-Project: osmo-iuh
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de>



More information about the gerrit-log mailing list