RE: [Linux-ia64] kernel update (relative to 2.4.0) - copy_user fi

Mallick, Asit K
2001-01-10T03:26:31Z

[-- Attachment #1: Type: text/plain, Size: 596 bytes --]

There is one return path in the __copy_user that do not restore the ar.lc
register. This is causing applications that uses ar.lc to fail. Attached is
a patch to fix it (file is also attached).

Thanks,
Asit

--- linux-2.4.0/arch/ia64/lib/copy_user.S Thu Jan 4 12:50:17 2001
+++ linux/arch/ia64/lib/copy_user.S Tue Jan 9 05:35:36 2001
@@ -319,6 +319,7 @@
EX(failure_out,(EPI) st1 [dst1]=val1[PIPE_DEPTH-1],1)
br.ctop.dptk.few 5b
;;
+ mov ar.lc=saved_lc
mov pr=saved_pr,0xffffffffffff0000
mov ar.pfs=saved_pfs
br.ret.dptk.few rp

[-- Attachment #2: copyu.diff --]
[-- Type: application/octet-stream, Size: 343 bytes --]

--- linux-2.4.0/arch/ia64/lib/copy_user.S Thu Jan 4 12:50:17 2001
+++ linux/arch/ia64/lib/copy_user.S Tue Jan 9 05:35:36 2001
@@ -319,6 +319,7 @@
EX(failure_out,(EPI) st1 [dst1]=val1[PIPE_DEPTH-1],1)
br.ctop.dptk.few 5b
;;
+ mov ar.lc=saved_lc
mov pr=saved_pr,0xffffffffffff0000
mov ar.pfs=saved_pfs
br.ret.dptk.few rp