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

Reply via email to