Re: signal_pending() and schedule()

Melkor Ainur (
Tue, 26 Mar 2002 19:52:05 -0800 (PST)

Hi Joel, everyone,

Thanks for the info about the SIGALRM. I had not
noticed this until I did an strace on netscape.

I had been simple minded in my implementation of
tcp_sendmsg. For a userspace application such as
netscape, I allocate a kernel buffer(s)and copy the
data from user space into this/these buffer(s)
(because I am unaware of a way around singlecopy
when the app uses a userspace buffer). I then schedule
dma. After that I put the calling application to
sleep. I don't have a good idea of how I would
handle this if the application got woken up out of the
sleep by a signal before the dma was done. I suppose
I could spin but that seems unclean. I will
look through other drivers and see if/how this is
handled but any leads would be greatly appreciated.


--- Joel Becker <> wrote:
> A signal has arrived. Netscape's userspace
> "threading" is based
> entirely on signals. Netscape sends itself SIGALRM
> almost continuously.
> You'll have to expect this from Netscape and work
> around or with it.
> Joel

Do You Yahoo!?
Yahoo! Movies - coverage of the 74th Academy Awards®
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at