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 08:16:55AM -0600, David Mosberger-Tang wrote:
> On 5/17/07, Keith Owens <kaos@xxxxxxx> wrote:
> 
> >David Mosberger
> >reckons that unwind should never cause an error, maybe we should be
> >looking at adding more checks to the unwind code to cope with spurious
> >addresses?
> 
> That's correct.  If the unwinder causes MCAs, it's broken.  Robin, can
> you look into why the memory-access safety-checks in the unwinder
> aren't sufficient to avoid the MCAs you're seeing?

I don't think it got very far at all.

The task in question is calling get_wchan on itself.  It is at
>> px *(task_struct *)0xe003819a00000000 | grep ksp
                ksp = 0xe003819a00007900
>> px 0xe003819a00007900 + 16
0xe003819a00007910
>> px *(switch_stack *)0xe003819a00007910 | grep bsp
        ar_bspstore = 0xe003819a00000000


Here we start to run into difficulties.  ar_bspstore is the same address
as our task_struct.  info->regstk.top == 0xe003819a00000000 which leads
to unw_init_frame_info calculating info->bsp == 0xe0038199ffffff30
which is near the addresses causing problems (0xe0038199ffffff80 and
0xe0038199ffffffe0).  Notice it is in the page before our task_struct.

Well, time for bed.

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