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

📄 entry.s

📁 内核linux2.4.20,可跟rtlinux3.2打补丁 组成实时linux系统,编译内核
💻 S
字号:
/* * This file is subject to the terms and conditions of the GNU General Public * License.  See the file "COPYING" in the main directory of this archive * for more details. * * Low level exception handling * * Copyright (C) 1994 - 2000, 2001 Ralf Baechle * Copyright (C) 1999, 2000 Silicon Graphics * Copyright (C) 2001 MIPS Technologies, Inc. */#include <linux/config.h>#include <asm/asm.h>#include <asm/regdef.h>#include <asm/mipsregs.h>#include <asm/stackframe.h>/* This duplicates the definition from <linux/sched.h> */#define PT_TRACESYS	0x00000002		/* tracing system calls */#define KU_USER 0x10		.text		.align 4FEXPORT(ret_from_fork)		move	a0, v0			# prev		jal	schedule_tail		lw	t0, TASK_PTRACE($28)	# syscall tracing enabled?		andi	t0, PT_TRACESYS		bnez	t0, tracesys_exit		j	ret_from_sys_calltracesys_exit:		jal	syscall_trace		b	ret_from_sys_callEXPORT(ret_from_irq)EXPORT(ret_from_exception)		lw	t0, PT_STATUS(sp)	# returning to kernel mode?		andi	t0, t0, KU_USER		bnez	t0, ret_from_sys_call		j	restore_allreschedule:	jal	schedule FEXPORT(ret_from_sys_call)		mfc0	t0, CP0_STATUS	# need_resched and signals atomic test		ori	t0, t0, 1		xori	t0, t0, 1		mtc0	t0, CP0_STATUS		ld	v0, TASK_NEED_RESCHED($28)		lw	v1, TASK_SIGPENDING($28)		bnez	v0, reschedule		bnez	v1, signal_returnrestore_all:	.set	noat		RESTORE_ALL		eret		.set	atsignal_return:	.type	signal_return, @function		mfc0	t0, CP0_STATUS		ori	t0, t0, 1		mtc0	t0, CP0_STATUS		move	a0, zero		move	a1, sp		jal	do_signal		b	restore_all/* * Common spurious interrupt handler. */		.text		.align  5LEAF(spurious_interrupt)		/*		 * Someone tried to fool us by sending an interrupt but we		 * couldn't find a cause for it.		 */		lui     t1,%hi(spurious_count)		lw      t0,%lo(spurious_count)(t1)		addiu   t0,1		sw      t0,%lo(spurious_count)(t1)		j	ret_from_irq		END(spurious_interrupt)

⌨️ 快捷键说明

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