On Tue, Mar 08, 2011 at 04:27:36PM -0500, John Baldwin wrote: > On Tuesday, March 08, 2011 2:01:45 pm Dmitry Chagin wrote: > > Author: dchagin > > Date: Tue Mar 8 19:01:45 2011 > > New Revision: 219405 > > URL: http://svn.freebsd.org/changeset/base/219405 > > > > Log: > > Extend struct sysvec with new method sv_schedtail, which is used for an > > explicit process at fork trampoline path instead of eventhadler(schedtail) > > invocation for each child process. > > > > Remove eventhandler(schedtail) code and change linux ABI to use newly > > added > > sysvec method. > > > > While here replace explicit comparing of module sysentvec structure with > > the > > newly created process sysentvec to detect the linux ABI. > > > > Discussed with: kib > > > > MFC after: 2 Week > > > > Modified: head/sys/compat/linux/linux_emul.c > > ============================================================================== > > --- head/sys/compat/linux/linux_emul.c Tue Mar 8 18:39:41 2011 > > (r219404) > > +++ head/sys/compat/linux/linux_emul.c Tue Mar 8 19:01:45 2011 > > (r219405) > > @@ -300,13 +300,16 @@ linux_proc_exec(void *arg __unused, stru > > } > > > > void > > -linux_schedtail(void *arg __unused, struct proc *p) > > +linux_schedtail(struct thread *td) > > { > > struct linux_emuldata *em; > > + struct proc *p; > > int error = 0; > > int *child_set_tid; > > > > - if (__predict_true(p->p_sysent != &elf_linux_sysvec)) > > + p = td->td_proc; > > + > > + if (SV_PROC_ABI(p) != SV_ABI_LINUX) > > return; > > Isn't this always false now? >
Indeed, even a bit funny. fixed, thanks!! -- Have fun! chd
pgpH6lfCzddrw.pgp
Description: PGP signature
