linux_sysvec.c (72999) | linux_sysvec.c (73011) |
---|---|
1/*- 2 * Copyright (c) 1994-1996 S�ren Schmidt 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * | 1/*- 2 * Copyright (c) 1994-1996 S�ren Schmidt 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * |
28 * $FreeBSD: head/sys/i386/linux/linux_sysvec.c 72999 2001-02-24 22:20:11Z obrien $ | 28 * $FreeBSD: head/sys/i386/linux/linux_sysvec.c 73011 2001-02-25 06:29:04Z jake $ |
29 */ 30 31/* XXX we use functions that might not exist. */ 32#include "opt_compat.h" 33 34#ifndef COMPAT_43 35#error "Unable to compile Linux-emulator due to missing COMPAT_43 option!" 36#endif --- 157 unchanged lines hidden (view full) --- 194 imgp->auxargs = NULL; 195 196 (*stack_base)--; 197 **stack_base = (long)imgp->argc; 198 return 0; 199} 200 201extern int _ucodesel, _udatasel; | 29 */ 30 31/* XXX we use functions that might not exist. */ 32#include "opt_compat.h" 33 34#ifndef COMPAT_43 35#error "Unable to compile Linux-emulator due to missing COMPAT_43 option!" 36#endif --- 157 unchanged lines hidden (view full) --- 194 imgp->auxargs = NULL; 195 196 (*stack_base)--; 197 **stack_base = (long)imgp->argc; 198 return 0; 199} 200 201extern int _ucodesel, _udatasel; |
202extern unsigned long _linux_sznonrtsigcode; | 202extern unsigned long linux_sznonrtsigcode; |
203 204static void 205linux_rt_sendsig(sig_t catcher, int sig, sigset_t *mask, u_long code) 206{ 207 register struct proc *p = curproc; 208 register struct trapframe *regs; 209 struct linux_rt_sigframe *fp, frame; 210 int oonstack; --- 113 unchanged lines hidden (view full) --- 324 /* NOTREACHED */ 325 } 326 327 /* 328 * Build context to run handler in. 329 */ 330 regs->tf_esp = (int)fp; 331 regs->tf_eip = PS_STRINGS - *(p->p_sysent->sv_szsigcode) + | 203 204static void 205linux_rt_sendsig(sig_t catcher, int sig, sigset_t *mask, u_long code) 206{ 207 register struct proc *p = curproc; 208 register struct trapframe *regs; 209 struct linux_rt_sigframe *fp, frame; 210 int oonstack; --- 113 unchanged lines hidden (view full) --- 324 /* NOTREACHED */ 325 } 326 327 /* 328 * Build context to run handler in. 329 */ 330 regs->tf_esp = (int)fp; 331 regs->tf_eip = PS_STRINGS - *(p->p_sysent->sv_szsigcode) + |
332 _linux_sznonrtsigcode; | 332 linux_sznonrtsigcode; |
333 regs->tf_eflags &= ~PSL_VM; 334 regs->tf_cs = _ucodesel; 335 regs->tf_ds = _udatasel; 336 regs->tf_es = _udatasel; 337 regs->tf_fs = _udatasel; 338 load_gs(_udatasel); 339 regs->tf_ss = _udatasel; 340} --- 516 unchanged lines hidden --- | 333 regs->tf_eflags &= ~PSL_VM; 334 regs->tf_cs = _ucodesel; 335 regs->tf_ds = _udatasel; 336 regs->tf_es = _udatasel; 337 regs->tf_fs = _udatasel; 338 load_gs(_udatasel); 339 regs->tf_ss = _udatasel; 340} --- 516 unchanged lines hidden --- |