diff options
author | Alexander Bluhm <bluhm@cvs.openbsd.org> | 2013-09-06 18:35:17 +0000 |
---|---|---|
committer | Alexander Bluhm <bluhm@cvs.openbsd.org> | 2013-09-06 18:35:17 +0000 |
commit | bc23a9b3e6bdf0d746f65ad457049b06e8709f37 (patch) | |
tree | 5af840ee3e67847411cab339826f9b11784372dc /sys/compat | |
parent | c32df1304e2f8c683b2850c0d0300a0e4d237bd3 (diff) |
In one core dump the pointers to socket, inpcb, tcpcb on the stack
of tcp_input() and tcp_output() were very inconsistent. Especially
the so->so_pcb is NULL which can only happen after the inp has been
detached. The whole issue looks similar to the old panic:
pool_do_get(inpcbpl): free list modified.
http://marc.info/?l=openbsd-bugs&m=132630237316970&w=2
To get more information, add some asserts that guarantee the
consistency of the socket, inpcb, tcpcb linking. They should trigger
when an inp is taken from the pcb hashes after it has been freed.
OK henning@
Diffstat (limited to 'sys/compat')
0 files changed, 0 insertions, 0 deletions