Re: 2.1.68 and Xu

Alan Cox (alan@lxorguk.ukuu.org.uk)
Wed, 3 Dec 1997 10:37:34 +0000 (GMT)


> I am facing a bug where a socket's inode is freed (and cleaned)
> while a process is still executing a select() system call referring that
> socket. sk->sleep then points to storage inside the cleaned inode. When the
> process exiting from the select() system call tries to remove itself from
> the (wild pointer refered) wait queue ... => big bang.

For that to occur would imply the X25 stuff generated a file handle with a
wrong usage count. Are you using threads in this application ?

> My bug occurs with x25 sockets. Unfortunately, I haven't seen any bug
> reports indicating a similar problem with other protocol family sockets.
> Maybe the X problem is one (af_x25 and af_unix share the same poll method
> datagram_poll() ).

I think its more likely x25_something-else freed a descriptor it shouldnt have
and then you got blown up in datagram_poll