From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:47953) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Twhr9-0002lP-BC for qemu-devel@nongnu.org; Sat, 19 Jan 2013 18:29:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Twhr7-0006cq-TY for qemu-devel@nongnu.org; Sat, 19 Jan 2013 18:29:47 -0500 Received: from moutng.kundenserver.de ([212.227.126.187]:57287) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Twhr7-0006cf-Km for qemu-devel@nongnu.org; Sat, 19 Jan 2013 18:29:45 -0500 Message-ID: <1358638176.3091.2.camel@Quad> From: Laurent Vivier Date: Sun, 20 Jan 2013 00:29:36 +0100 In-Reply-To: References: <1356037211-19530-1-git-send-email-laurent@vivier.eu> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH] linux-user: correct msgrcv() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Riku Voipio , qemu-devel@nongnu.org Le mercredi 02 janvier 2013 =C3=A0 00:03 +0000, Peter Maydell a =C3=A9crit = : > On 20 December 2012 21:00, Laurent Vivier wrote: > > All parameters must be swapped before the call of do_msgrcv(). > > --- a/linux-user/syscall.c > > +++ b/linux-user/syscall.c > > @@ -2901,7 +2901,7 @@ static inline abi_long do_msgrcv(int msqid, abi_l= ong msgp, > > return -TARGET_EFAULT; > > > > host_mb =3D g_malloc(msgsz+sizeof(long)); > > - ret =3D get_errno(msgrcv(msqid, host_mb, msgsz, tswapal(msgtyp), m= sgflg)); > > + ret =3D get_errno(msgrcv(msqid, host_mb, msgsz, msgtyp, msgflg)); > > > > if (ret > 0) { > > abi_ulong target_mtext_addr =3D msgp + sizeof(abi_ulong); > > @@ -3199,7 +3199,7 @@ static abi_long do_ipc(unsigned int call, int fir= st, > > break; > > } > > > > - ret =3D do_msgrcv(first, tmp->msgp, second, tmp->msgty= p, third); > > + ret =3D do_msgrcv(first, tswapal(tmp->msgp), second, t= swapal(tmp->msgtyp), third); > > > > unlock_user_struct(tmp, ptr, 0); > > break; >=20 > Untested but looks right. > Reviewed-by: Peter Maydell ping ? Laurent --=20 "Just play. Have fun. Enjoy the game." - Michael Jordan