Re: [PATCH] MIPS:wrong usage of l_exc_copy in octeon-memcpy.S

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Mon, Feb 20, 2017 at 11:42:58AM +0800, jianchao.wang wrote:
> l_exc_copy() is usually to be used like this:
> 1 EXC(	LOAD	t0, UNIT(0)(src),	l_exc)
> 2 EXC(	LOAD	t1, UNIT(1)(src),	l_exc_copy)
> 3 EXC(	LOAD	t2, UNIT(2)(src),	l_exc_copy)
> 4 EXC(	LOAD	t3, UNIT(3)(src),	l_exc_copy)
> When the fault occurs on row 4, l_exc_copy will get the bad
> addr through THREAD_BUADDR(), complete the copy of row
> 1,2 and 3, and then return the len that has not been copied.
> l_exc_copy assumes the src is smaller thann the bad addr.It will
> increase src by 1 until reach the bad addr.
> 
> octeon-memcpy.S use the l_exc_copy with wrong way which make src
> could be greater than bad addr. We will fix it in this patch.
> We add the max offset of LOAD to 15 here to fix the issue without
> adding new commands . Howerver, the side effect is that, when LOAD
> fails in few case, l_exc_copy has to copy more.

Is this trying to fix the same issue as the following patch?

https://patchwork.linux-mips.org/patch/14978/

Thanks
James

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux