From owner-svn-src-head@FreeBSD.ORG Sun Apr 19 20:40:10 2009 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 499111065688; Sun, 19 Apr 2009 20:40:10 +0000 (UTC) (envelope-from dchagin@dchagin.static.corbina.ru) Received: from contrabass.post.ru (contrabass.post.ru [85.21.78.5]) by mx1.freebsd.org (Postfix) with ESMTP id BA83B8FC15; Sun, 19 Apr 2009 20:40:09 +0000 (UTC) (envelope-from dchagin@dchagin.static.corbina.ru) Received: from corbina.ru (mail.post.ru [195.14.50.16]) by contrabass.post.ru (Postfix) with ESMTP id 722B689D0B; Mon, 20 Apr 2009 00:40:07 +0400 (MSD) X-Virus-Scanned: by cgpav Uf39PSi9pFi9oFi9 Received: from [10.208.17.3] (HELO dchagin.static.corbina.ru) by corbina.ru (CommuniGate Pro SMTP 5.1.14) with ESMTPS id 1747494717; Mon, 20 Apr 2009 00:40:07 +0400 Received: from dchagin.static.corbina.ru (localhost.chd.net [127.0.0.1]) by dchagin.static.corbina.ru (8.14.3/8.14.3) with ESMTP id n3JKe5QR006774; Mon, 20 Apr 2009 00:40:05 +0400 (MSD) (envelope-from dchagin@dchagin.static.corbina.ru) Received: (from dchagin@localhost) by dchagin.static.corbina.ru (8.14.3/8.14.3/Submit) id n3JKe3c6006773; Mon, 20 Apr 2009 00:40:03 +0400 (MSD) (envelope-from dchagin) Date: Mon, 20 Apr 2009 00:40:03 +0400 From: Chagin Dmitry To: Roman Divacky Message-ID: <20090419204002.GA6716@dchagin.static.corbina.ru> References: <200904191348.n3JDmhVH010871@svn.freebsd.org> <20090419202253.GA28306@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="BOKacYhQ+x31HxR3" Content-Disposition: inline In-Reply-To: <20090419202253.GA28306@freebsd.org> User-Agent: Mutt/1.5.19 (2009-01-05) Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn commit: r191269 - head/sys/compat/linux X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 19 Apr 2009 20:40:10 -0000 --BOKacYhQ+x31HxR3 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Apr 19, 2009 at 10:22:53PM +0200, Roman Divacky wrote: > On Sun, Apr 19, 2009 at 01:48:43PM +0000, Dmitry Chagin wrote: > > Author: dchagin > > Date: Sun Apr 19 13:48:42 2009 > > New Revision: 191269 > > URL: http://svn.freebsd.org/changeset/base/191269 > >=20 > > Log: > > Remove support for FUTEX_REQUEUE operation. > > Glibc does not use this operation since 2.3.3 version (Jun 2004), > > as it is racy and replaced by FUTEX_CMP_REQUEUE operation. > > Glibc versions prior to 2.3.3 fall back to FUTEX_WAKE when > > FUTEX_REQUEUE returned EINVAL. > > =20 > > Any application directly using FUTEX_REQUEUE without return > > value checking are definitely broken. > > =20 > > Limit quantity of messages per process about unsupported > > operation. > > =20 > > Approved by: kib (mentor) > > MFC after: 1 month > >=20 > > Modified: > > head/sys/compat/linux/linux_emul.c > > head/sys/compat/linux/linux_emul.h > > head/sys/compat/linux/linux_futex.c > >=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 Sun Apr 19 12:41:37 2009 (r19126= 8) > > +++ head/sys/compat/linux/linux_emul.c Sun Apr 19 13:48:42 2009 (r19126= 9) > > @@ -86,6 +86,7 @@ linux_proc_init(struct thread *td, pid_t > > em =3D malloc(sizeof *em, M_LINUX, M_WAITOK | M_ZERO); > > em->pid =3D child; > > em->pdeath_signal =3D 0; > > + em->used_requeue =3D 0; > > em->robust_futexes =3D NULL; > > if (flags & LINUX_CLONE_THREAD) { > > /* handled later in the code */ > >=20 > > Modified: head/sys/compat/linux/linux_emul.h > > =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.h Sun Apr 19 12:41:37 2009 (r19126= 8) > > +++ head/sys/compat/linux/linux_emul.h Sun Apr 19 13:48:42 2009 (r19126= 9) > > @@ -51,6 +51,7 @@ struct linux_emuldata { > > struct linux_emuldata_shared *shared; > > =20 > > int pdeath_signal; /* parent death signal */ > > + int used_requeue; /* uses deprecated futex op */ >=20 > what is the point of this variable? it's only set and never read hi, hmm, it is the counter. it is used, you cut off this piece of a code in the reply. --=20 Have fun! chd --BOKacYhQ+x31HxR3 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.10 (FreeBSD) iEYEARECAAYFAknrjCEACgkQ0t2Tb3OO/O2IIQCfRWaDZsKuJ6fiQHWucTliPTHQ jvoAoJp23sOXWtgIssVgPwErUEYbgKmI =ASMW -----END PGP SIGNATURE----- --BOKacYhQ+x31HxR3--