diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2008-05-07 11:48:14 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-05-21 21:47:43 -0400 |
commit | 00242c40a167113688dd7ed46ec94e8a4c47f603 (patch) | |
tree | 8ac4ce2660feb8e1c4c6df90d3bae4e797a1a87f /net/mac80211/mesh_pathtbl.c | |
parent | 4caf86c6928cfaca270327bc944f901c2e2a8f50 (diff) |
mac80211: Report allocation failure from mesh_path_node_copy.
Now - return the -ENOMEM in case kmalloc fails.
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/mesh_pathtbl.c')
-rw-r--r-- | net/mac80211/mesh_pathtbl.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index 512bfa112c6a..fe1ceeea07f1 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c | |||
@@ -469,9 +469,12 @@ static int mesh_path_node_copy(struct hlist_node *p, struct mesh_table *newtbl) | |||
469 | struct mpath_node *node, *new_node; | 469 | struct mpath_node *node, *new_node; |
470 | u32 hash_idx; | 470 | u32 hash_idx; |
471 | 471 | ||
472 | new_node = kmalloc(sizeof(struct mpath_node), GFP_KERNEL); | ||
473 | if (new_node == NULL) | ||
474 | return -ENOMEM; | ||
475 | |||
472 | node = hlist_entry(p, struct mpath_node, list); | 476 | node = hlist_entry(p, struct mpath_node, list); |
473 | mpath = node->mpath; | 477 | mpath = node->mpath; |
474 | new_node = kmalloc(sizeof(struct mpath_node), GFP_KERNEL); | ||
475 | new_node->mpath = mpath; | 478 | new_node->mpath = mpath; |
476 | hash_idx = mesh_table_hash(mpath->dst, mpath->dev, newtbl); | 479 | hash_idx = mesh_table_hash(mpath->dst, mpath->dev, newtbl); |
477 | hlist_add_head(&new_node->list, | 480 | hlist_add_head(&new_node->list, |