site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com I think all TCP sockets should have a PCB for as long as they exist. -josh On Oct 20, 2006, at 1:46 AM, Stephane wrote: On Oct 19, 2006, at 7:11 PM, Josh Graessley wrote: -joh On Oct 19, 2006, at 4:20 AM, Stephane wrote: Stupid question: ---------------- I can imagine 2 cases for which this case (pcb == null) can happen: - there was originally no pcb for the socket So I'm just trying to know if I can eliminate case 1. _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... This email sent to site_archiver@lists.apple.com You may have stumbled across a bug. It could be a bug in the kernel or it could be a bug in your socket filter. What sort of sockets are you talking about? Most sockets have a PCB. The PCB is where the protocol hangs the protocol specific data off the socket. Is it possible for a socket without a pcb to be seen by a (KPI) socket filter? It's just that after inspecting a kernel panic, the backtrace shows that the panic is coming from the tcp_lock method because the method does not see the pcb (it's null). the tcp_lock is called by socket_lock called itself by socket_data_inject_in which is called in a delayed method using the bsd_timesomething method. - the socket somehow changed between the socket output filter and the execution of the delayed call (maybe disconnection). smime.p7s
participants (1)
-
Josh Graessley