On Mon, Oct 27, 2008 at 9:16 AM, Peter Avalos <[EMAIL PROTECTED]> wrote: > On Thu, Sep 11, 2008 at 07:36:02PM +0800, Sepherosa Ziehau wrote: >> Hi all, >> >> I have committed a patch to HEAD, which will print backtrace if >> rtfree_remote() is called. If you see this kind of messages on your >> console, please post them to [EMAIL PROTECTED] If you think your box could >> afford panicking (mainly to get coredumps), you could set >> net.route.remote_free_panic to 1, and post the URL to the coredump so >> we could fetch and debug it. >> > > rt remote free rt_cpuid 1, mycpuid 0 > Trace beginning at frame 0xda6fbcd8 > rtfree_remote(c0371380,1,0,da6fbd00,c023d118) at rtfree_remote+0x74 > rtfree_remote(f5447ba0,0) at rtfree_remote+0x74 > in_pcbdetach(db085900) at in_pcbdetach+0x82 > in_pcbremwildcardhash_handler(f0bc3740,f0bc3740,0,da6fbd84,c024d097) at > in_pcbremwildcardhash_handler+0x30 > netmsg_service(f0bc3740,1,0,c041d880,ff800000) at netmsg_service+0x44 > tcpmsg_service_loop(0,0,0,0,0) at tcpmsg_service_loop+0x40 > lwkt_exit() at lwkt_exit > > If this isn't known, let me know and I'll panic it next time it happens.
For a listen socket on tcp_input path, the listen socket's inp route cache will be used to send RST, if it receives a TCP segment with invalid flags combination. This may lead to this route entry remote free. Please test/review following patch: http://leaf.dragonflybsd.org/~sephe/tcp_respond.diff Best Regards, sephe -- Live Free or Die
