Re: [PATCH] get_wchan on running task sometimes MCAs the machine.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 17, 2007 at 09:38:59PM +1000, Keith Owens wrote:
> Robin Holt (on Thu, 17 May 2007 06:16:52 -0500) wrote:
...
> AFAICT there is no lock on struct task_struct p that stops it being
> scheduled to run after you test if it is running.  proc_task_lookup()
> only does get_task_struct() which prevents the task from being deleted,
> it does not prevent the task from being scheduled while you are looking
> at it.
> 
> So even with that check, it can race between not running and running
> while you do the unwind, and still get the MCA.

I realized the problem, but don't see an easy fix.  I think the hope
is we would be far enough back in the call trace so that portion of the
stack would be constant.

To me, this still seems like a reasonable check.  Do you object to
this patch or are you just pointing out the hole.  I see the other
architectures have the same problem.  Would you suggest repeating the
check before each call to unw_unwind()?

Thanks,
Robin
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Sparc Linux]     [DCCP]     [Linux ARM]     [Yosemite News]     [Linux SCSI]     [Linux x86_64]     [Linux for Ham Radio]

  Powered by Linux