diff options
author | Thomas Huth <thuth@redhat.com> | 2017-06-08 13:22:06 +0200 |
---|---|---|
committer | Alexey Kardashevskiy <aik@ozlabs.ru> | 2017-06-15 16:11:32 +1000 |
commit | 8c41240bc4e9f4e3a0b331af18d7305caae024b7 (patch) | |
tree | b45bad54e0917096e159d255e2c2bb7615849888 /lib/libnet/ipv6.c | |
parent | fa94a3bb20734cb8e0280b232d16b6d466ec3d53 (diff) | |
download | SLOF-8c41240bc4e9f4e3a0b331af18d7305caae024b7.zip SLOF-8c41240bc4e9f4e3a0b331af18d7305caae024b7.tar.gz SLOF-8c41240bc4e9f4e3a0b331af18d7305caae024b7.tar.bz2 |
libnet: Allocate ICMPv6 packet space on the heap, not on the stack
While doing IPv6 network booting in SLOF, I recently ran into
"ERROR: stack overflow in engine()!" messages. Looks like the
huge ether_packet arrays that are created on the stack in icmpv6.c
can cause these stack overflows. Fix this issue by allocating
the ether_packets from the heap instead (the functions should
not be timing critical, so the additional overhead should not
be an issue here).
Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Diffstat (limited to 'lib/libnet/ipv6.c')
0 files changed, 0 insertions, 0 deletions