Date: Wed, 9 Mar 2011 09:01:23 +0300 From: Chagin Dmitry <dchagin@freebsd.org> To: John Baldwin <jhb@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r219405 - in head/sys: amd64/amd64 amd64/linux32 arm/arm compat/ia32 compat/linux compat/svr4 i386/i386 i386/ibcs2 i386/linux ia64/ia64 kern mips/mips powerpc/powerpc sparc64/sparc64 sys Message-ID: <20110309060123.GA4088@dchagin.static.corbina.ru> In-Reply-To: <201103081627.37026.jhb@freebsd.org> References: <201103081901.p28J1jjh083821@svn.freebsd.org> <201103081627.37026.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] 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 [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (FreeBSD) iEYEARECAAYFAk13F7MACgkQ0t2Tb3OO/O3p9QCeJK/F9I43jMxC2vZwTVDsyrLj E9YAoMfdhgjpbGYv63l3I1Jtu/UD1CsH =bajL -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110309060123.GA4088>
