signal_pending() set without a signal?
lee_merrill_at_yahoo.com
Date: 09/15/05
- Previous message: Måns Rullgård: "Re: Ever seen OOM killer pick a process while it is core dumping to tmpfs?"
- Next in thread: lee_merrill_at_yahoo.com: "Re: signal_pending() set without a signal?"
- Reply: lee_merrill_at_yahoo.com: "Re: signal_pending() set without a signal?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: 15 Sep 2005 14:02:21 -0700
Hi everyone,
It looks like I am getting signal_pending() true sometimes, when a
signal is not set (checking via dequeue_signal() returns no signal).
Yet code is being called in the kernel which does a
set_tsk_thread_flag(... TIF_SIGPENDING):
recalc_sigpending_tsk line 229
do_sigaction+0x184/0x210
sys_rt_sigaction+0x88/0x100
smp_apic_timer_interrupt+0xea/0x160
Apparently (t->signal->group_stop_count > 0 ||
PENDING(&t->pending, &t->blocked) ||
PENDING(&t->signal->shared_pending, &t->blocked))
is true.
Yet checking for an active signal in recalc_sigpending_tsk doesn't turn
up an active signal, and when the driver sees signal_pending(), no
active signal is present then, either. So this causes my driver to
think it should stop and return an error, when apparently it shouldn't,
because there doesn't seem to be a signal set, also, the application
calling the driver doesn't use signals, and shouldn't be getting them.
So any suggestions on this would be appreciated...
Thanks,
Lee
- Previous message: Måns Rullgård: "Re: Ever seen OOM killer pick a process while it is core dumping to tmpfs?"
- Next in thread: lee_merrill_at_yahoo.com: "Re: signal_pending() set without a signal?"
- Reply: lee_merrill_at_yahoo.com: "Re: signal_pending() set without a signal?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|