On May 1, 2008, at 11:42 AM, Scott Wood wrote:
On Thu, May 01, 2008 at 11:33:34AM -0500, Kumar Gala wrote:
Let me ask the question differently. Are there cases that some event
occurs in the system and a signal is delivered to the current process
regardless of what that process is.
Yes, timers that expire based on CPU usage.
I'm guessing so, based on the tty example.
I don't think tty interrupts would -- it'd go to the process group
associated with the tty.
So for the specific case I'm looking at (kprobes & debug exceptions
from kernel space), I think its reasonable to BUG_ON() if
thread_info-
flags changes such that TIF_SIGPENDING or TIF_NEED_RESCHED get set
we aren't from user-space.
Why? It may not happen currently, but it seems more future-proof to
just
copy the flags. And it's certainly not reasonable for normal
interrupts.
copying the flags isn't the issue. Its acting on the flags thats the
problem. I'm not 100% sure the C code that might clear the flags is
consistent on how it access them. So if one bit of code clears
task_struct->stack->thread_info->flags and other clears
thread_info(STACK)->flags we get into an issue on how to merge after
that.
I'd rather be safe for now since we don't need to send a signal in the
debug from kernel case.
- k
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev