From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Miller Date: Fri, 12 Oct 2007 08:50:07 +0000 Subject: Re: sun4v_data_access_exception on new 2.6.23 Message-Id: <20071012.015007.85686152.davem@davemloft.net> List-Id: References: <470E6F28.2010709@systella.fr> In-Reply-To: <470E6F28.2010709@systella.fr> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: sparclinux@vger.kernel.org From: BERTRAND_Jo=EBl Date: Fri, 12 Oct 2007 09:04:16 +0200 > Writing inode tables: Kernel unaligned access at TPC[56004c]=20 > xor_niagara_4+0x5c/0x128 > sun4v_data_access_exception: ADDR[000000000053d354] CTX[0000]=20 > TYPE[000a], going. Please try this patch: diff --git a/arch/sparc64/lib/xor.S b/arch/sparc64/lib/xor.S index a79c888..f44f58f 100644 --- a/arch/sparc64/lib/xor.S +++ b/arch/sparc64/lib/xor.S @@ -491,12 +491,12 @@ xor_niagara_4: /* %o0=3Dbytes, %o1=DEst, %o2=3Dsrc1,= %o3=3Dsrc2, %o4=3Dsrc3 */ ldda [%i1 + 0x10] %asi, %i2 /* %i2/%i3 =3D src1 + 0x10 */ xor %g2, %i4, %g2 xor %g3, %i5, %g3 - ldda [%i7 + 0x10] %asi, %i4 /* %i4/%i5 =3D src2 + 0x10 */ + ldda [%l7 + 0x10] %asi, %i4 /* %i4/%i5 =3D src2 + 0x10 */ xor %l0, %g2, %l0 xor %l1, %g3, %l1 stxa %l0, [%i0 + 0x00] %asi stxa %l1, [%i0 + 0x08] %asi - ldda [%i6 + 0x10] %asi, %g2 /* %g2/%g3 =3D src3 + 0x10 */ + ldda [%l6 + 0x10] %asi, %g2 /* %g2/%g3 =3D src3 + 0x10 */ ldda [%i0 + 0x10] %asi, %l0 /* %l0/%l1 =3D dest + 0x10 */ =20 xor %i4, %i2, %i4 @@ -504,12 +504,12 @@ xor_niagara_4: /* %o0=3Dbytes, %o1=DEst, %o2=3Dsrc1,= %o3=3Dsrc2, %o4=3Dsrc3 */ ldda [%i1 + 0x20] %asi, %i2 /* %i2/%i3 =3D src1 + 0x20 */ xor %g2, %i4, %g2 xor %g3, %i5, %g3 - ldda [%i7 + 0x20] %asi, %i4 /* %i4/%i5 =3D src2 + 0x20 */ + ldda [%l7 + 0x20] %asi, %i4 /* %i4/%i5 =3D src2 + 0x20 */ xor %l0, %g2, %l0 xor %l1, %g3, %l1 stxa %l0, [%i0 + 0x10] %asi stxa %l1, [%i0 + 0x18] %asi - ldda [%i6 + 0x20] %asi, %g2 /* %g2/%g3 =3D src3 + 0x20 */ + ldda [%l6 + 0x20] %asi, %g2 /* %g2/%g3 =3D src3 + 0x20 */ ldda [%i0 + 0x20] %asi, %l0 /* %l0/%l1 =3D dest + 0x20 */ =20 xor %i4, %i2, %i4 @@ -517,12 +517,12 @@ xor_niagara_4: /* %o0=3Dbytes, %o1=DEst, %o2=3Dsrc1,= %o3=3Dsrc2, %o4=3Dsrc3 */ ldda [%i1 + 0x30] %asi, %i2 /* %i2/%i3 =3D src1 + 0x30 */ xor %g2, %i4, %g2 xor %g3, %i5, %g3 - ldda [%i7 + 0x30] %asi, %i4 /* %i4/%i5 =3D src2 + 0x30 */ + ldda [%l7 + 0x30] %asi, %i4 /* %i4/%i5 =3D src2 + 0x30 */ xor %l0, %g2, %l0 xor %l1, %g3, %l1 stxa %l0, [%i0 + 0x20] %asi stxa %l1, [%i0 + 0x28] %asi - ldda [%i6 + 0x30] %asi, %g2 /* %g2/%g3 =3D src3 + 0x30 */ + ldda [%l6 + 0x30] %asi, %g2 /* %g2/%g3 =3D src3 + 0x30 */ ldda [%i0 + 0x30] %asi, %l0 /* %l0/%l1 =3D dest + 0x30 */ =20 prefetch [%i1 + 0x40], #one_read