Skip to content

Commit

Permalink
ipv6: In fragmentation code, handle error returned from register_pern…
Browse files Browse the repository at this point in the history
…et_subsys.

The error code is ignored now, but ipv6 is a module and one can
be loaded under memory pressure, so the error may occur (in theory).

Besides, I'm going to handle error returned from registering a
read-only part of the table, so ignoring this one, while handing
the other one would look strange.

(However, this possibility of error is rather small, so I'm not 
 sure whether this is a candidate for current net tree).

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Pavel Emelyanov authored and David S. Miller committed May 19, 2008
1 parent 0a64b4b commit 0002c63
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion net/ipv6/reassembly.c
Original file line number Diff line number Diff line change
Expand Up @@ -750,7 +750,9 @@ int __init ipv6_frag_init(void)
if (ret)
goto out;

register_pernet_subsys(&ip6_frags_ops);
ret = register_pernet_subsys(&ip6_frags_ops);
if (ret)
goto err_pernet;

ip6_frags.hashfn = ip6_hashfn;
ip6_frags.constructor = ip6_frag_init;
Expand All @@ -763,6 +765,10 @@ int __init ipv6_frag_init(void)
inet_frags_init(&ip6_frags);
out:
return ret;

err_pernet:
inet6_del_protocol(&frag_protocol, IPPROTO_FRAGMENT);
goto out;
}

void ipv6_frag_exit(void)
Expand Down

0 comments on commit 0002c63

Please sign in to comment.