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
--sdtB3X0nJg68CQEu Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable 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 > >=20 > > Log: > > Extend struct sysvec with new method sv_schedtail, which is used for = an > > explicit process at fork trampoline path instead of eventhadler(sched= tail) > > invocation for each child process. > > =20 > > Remove eventhandler(schedtail) code and change linux ABI to use newly= added > > sysvec method. > > =20 > > While here replace explicit comparing of module sysentvec structure w= ith the > > newly created process sysentvec to detect the linux ABI. > > =20 > > Discussed with: kib > > =20 > > MFC after: 2 Week > >=20 > > Modified: head/sys/compat/linux/linux_emul.c > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > > --- head/sys/compat/linux/linux_emul.c Tue Mar 8 18:39:41 2011 (r21940= 4) > > +++ head/sys/compat/linux/linux_emul.c Tue Mar 8 19:01:45 2011 (r21940= 5) > > @@ -300,13 +300,16 @@ linux_proc_exec(void *arg __unused, stru > > } > > =20 > > void > > -linux_schedtail(void *arg __unused, struct proc *p) > > +linux_schedtail(struct thread *td) > > { > > struct linux_emuldata *em; > > + struct proc *p; > > int error =3D 0; > > int *child_set_tid; > > =20 > > - if (__predict_true(p->p_sysent !=3D &elf_linux_sysvec)) > > + p =3D td->td_proc; > > + > > + if (SV_PROC_ABI(p) !=3D SV_ABI_LINUX) > > return; >=20 > Isn't this always false now? >=20 Indeed, even a bit funny. fixed, thanks!! --=20 Have fun! chd --sdtB3X0nJg68CQEu Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (FreeBSD) iEYEARECAAYFAk13F7MACgkQ0t2Tb3OO/O3p9QCeJK/F9I43jMxC2vZwTVDsyrLj E9YAoMfdhgjpbGYv63l3I1Jtu/UD1CsH =bajL -----END PGP SIGNATURE----- --sdtB3X0nJg68CQEu--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110309060123.GA4088>