⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uaccess.s

📁 linux-2.4.29操作系统的源码
💻 S
字号:
/* *  arch/s390/lib/uaccess.S *    __copy_{from|to}_user functions. * *  s390 *    Copyright (C) 2000,2002 IBM Deutschland Entwicklung GmbH, IBM Corporation *    Authors(s): Martin Schwidefsky (schwidefsky@de.ibm.com) * *  These functions have standard call interface */#include <asm/lowcore.h>        .text        .align 4        .globl __copy_from_user_asm__copy_from_user_asm:	lr	%r5,%r3	sacf	5120:	mvcle	%r2,%r4,0	jo	0b1:	sacf	0	lr	%r2,%r5	br	%r142:	lhi	%r1,-4096	lr	%r3,%r4	slr	%r3,%r1      # %r3 = %r4 + 4096	nr	%r3,%r1      # %r3 = (%r4 + 4096) & -4096	slr	%r3,%r4      # %r3 = #bytes to next user page boundary	clr	%r5,%r3      # copy crosses next page boundary ?	jnh	1b           # no, this page fauled	# The page after the current user page might have faulted.	# We cant't find out which page because the program check handler	# might have callled schedule, destroying all lowcore information.	# We retry with the shortened length.3:	mvcle	%r2,%r4,0	jo	3b	j	1b        .section __ex_table,"a"	.long	0b,2b	.long	3b,1b        .previous        .align 4        .text        .globl __copy_to_user_asm__copy_to_user_asm:	lr	%r5,%r3	sacf	5120:	mvcle	%r4,%r2,0	jo	0b1:	sacf	0	lr	%r2,%r3	br	%r142:	lhi	%r1,-4096	lr	%r5,%r4	slr	%r5,%r1      # %r5 = %r4 + 4096	nr	%r5,%r1      # %r5 = (%r4 + 4096) & -4096	slr	%r5,%r4      # %r5 = #bytes to next user page boundary	clr	%r3,%r5      # copy crosses next page boundary ?	jnh	1b           # no, the current page fauled	# The page after the current user page might have faulted.	# We cant't find out which page because the program check handler	# might have callled schedule, destroying all lowcore information.	# We retry with the shortened length.3:	mvcle	%r4,%r2,0	jo	3b	j	1b        .section __ex_table,"a"	.long	0b,2b	.long	3b,1b        .previous        .align 4        .text        .globl __clear_user_asm__clear_user_asm:	lr	%r4,%r2	lr	%r5,%r3	sr	%r2,%r2	sr	%r3,%r3	sacf	5120:	mvcle	%r4,%r2,0	jo	0b1:	sacf	0	br	%r142:	lr	%r2,%r5	lhi	%r1,-4096	slr	%r5,%r1      # %r5 = %r4 + 4096	nr	%r5,%r1      # %r5 = (%r4 + 4096) & -4096	slr	%r5,%r4      # %r5 = #bytes to next user page boundary	clr	%r2,%r5      # copy crosses next page boundary ?	jnh	1b           # no, the current page fauled	# The page after the current user page might have faulted.	# We cant't find out which page because the program check handler	# might have callled schedule, destroying all lowcore information.	# We retry with the shortened length.	slr	%r2,%r53:	mvcle	%r4,%r2,0	jo	3b	j	1b4:	alr	%r2,%r5	j	1b        .section __ex_table,"a"	.long	0b,2b        .long	3b,4b        .previous

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -