powerpc/sstep: Fix array out of bound warning
authorRavi Bangoria <ravi.bangoria@linux.ibm.com>
Fri, 29 Jan 2021 07:17:45 +0000 (12:47 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Sat, 30 Jan 2021 11:23:26 +0000 (22:23 +1100)
commit344717a14cd7272f88346022a77742323346299e
treefffc93e2ce9a766d8b6e7d4a708adf9434a2e161
parent4025c784c573cab7e3f84746cc82b8033923ec62
powerpc/sstep: Fix array out of bound warning

Compiling kernel with -Warray-bounds throws below warning:

  In function 'emulate_vsx_store':
  warning: array subscript is above array bounds [-Warray-bounds]
  buf.d[2] = byterev_8(reg->d[1]);
  ~~~~~^~~
  buf.d[3] = byterev_8(reg->d[0]);
  ~~~~~^~~

Fix it by using temporary array variable 'union vsx_reg buf32[]' in
that code block. Also, with element_size = 32, 'union vsx_reg *reg'
is an array of size 2. So, use 'reg' as an array instead of pointer
in the same code block.

Fixes: af99da74333b ("powerpc/sstep: Support VSX vector paired storage access instructions")
Suggested-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Signed-off-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
Tested-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210129071745.111466-1-ravi.bangoria@linux.ibm.com
arch/powerpc/lib/sstep.c