Re: [PATCH] arch: tile: kernel: kgdb.c: Use memcpy() instead of pointer copy one by one

From: Chris Metcalf
Date: Wed Nov 12 2014 - 15:15:49 EST


On 11/1/14 21:17, Chen Gang wrote:
>Not only memcpy() is faster than pointer copy, but also let code more
>clearer and simple, which can avoid compiling warning (the original
>implementation copy registers by exceeding member array border).
>
>The related warning (with allmodconfig under tile):
>
> CC arch/tile/kernel/kgdb.o
> arch/tile/kernel/kgdb.c: In function 'sleeping_thread_to_gdb_regs':
> arch/tile/kernel/kgdb.c:140:31: warning: iteration 53u invokes undefined behavior [-Waggressive-loop-optimizations]
> *(ptr++) = thread_regs->regs[reg];
> ^
> arch/tile/kernel/kgdb.c:139:2: note: containing loop
> for (reg = 0; reg <= TREG_LAST_GPR; reg++)
> ^
>
>Signed-off-by: Chen Gang<gang.chen.5i5j@xxxxxxxxx>
>---
> arch/tile/kernel/kgdb.c | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
>

Taken into the tile tree - thanks!

See my recent email about changing the shape of the pt_regs and sigcontext
structures to make the regs[] usage explicit. But even with that, I
think your change makes sense to simplify the code in this location.

--
Chris Metcalf, EZChip Semiconductor
http://www.ezchip.com

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/