Re: signal_pending() and schedule()

Melkor Ainur (melkorainur@yahoo.com)
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.

Thanks,
Melkor

--- Joel Becker <Joel.Becker@oracle.com> 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®
http://movies.yahoo.com/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/