Debugging return.exp on ARM

Pedro Alves palves@redhat.com
Thu May 26 19:11:00 GMT 2016


On 05/26/2016 04:15 PM, Simon Marchi wrote:
> Given that we give the right input to the kernel, even in the cases that
> fail, I assume that the problem must be something like wrong cache invalidation
> or memory barrier/sequencing.
> 
> I ran this test in a loop and got these results:
> 
> ODroid XU-4:
>   263 fails
>   737 successes
> 
> Firefly RK3288:
>   336 fails
>   163 success
> 
> First, is anybody able to reproduce the problem on other boards?  Then, does anybody
> have an idea what could cause this?

- I'd suspect something odd with caches / barriers too.
  Did you try sprinkling in memory barrier instructions, and
  see whether it makes a difference?

- I'd also try "si" + "info regs" instead of "next" after the return,
  and see if a register with a bad value pops up always at some
  specific instruction.

- I'd try to see if pinning the thread to a core makes a difference.

- Might help to show the kernel version.

Thanks,
Pedro Alves



More information about the Gdb mailing list