[PATCH] [POWERPC] Rework EXC_LEVEL_EXCEPTION_PROLOG code

Kumar Gala galak at kernel.crashing.org
Fri May 2 03:48:55 EST 2008


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



More information about the Linuxppc-dev mailing list