qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] linux-user: shmctl() should ignore IPC_64


From: Riku Voipio
Subject: Re: [Qemu-devel] [PATCH] linux-user: shmctl() should ignore IPC_64
Date: Thu, 11 Jun 2009 00:41:02 +0300
User-agent: Mutt/1.5.18 (2008-05-17)

On Tue, Jun 02, 2009 at 12:32:37AM +0200, Laurent Vivier wrote:
> This has been detected trying to use "dbench" with m68k-linux-user/qemu-m68k 
> where
> "shmctl()" is called with "IPC_RMID | IPC_64".
> 
> IPC_64 is useless with IPC_RMID, SHM_LOCK, SHM_UNLOCK
> (as the only parameter is the id without shmid_ds) and
> already ignored with semctl() and msgctl().
> 
> Signed-off-by: Laurent Vivier <address@hidden>
> ---
>  linux-user/syscall.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index b1bba48..c3d1d73 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -2539,11 +2539,11 @@ static abi_long do_ipc(unsigned int call, int first,
>  
>       /* IPC_* and SHM_* command values are the same on all linux platforms */
>      case IPCOP_shmctl:
> -        switch(second) {
> +        switch(second & 0xff) {

This appears to be also taken care in this old patch
where shmctl was moved to do_shmctl()

https://git.maemo.org/projects/qemu/gitweb?p=qemu;a=commitdiff;h=d1f365ccd0615c57d2869d33fb5e0637b3623b64

>          case IPC_RMID:
>          case SHM_LOCK:
>          case SHM_UNLOCK:
> -            ret = get_errno(shmctl(first, second, NULL));
> +            ret = get_errno(shmctl(first, second & 0xff, NULL));
>              break;
>          default:
>              goto unimplemented;
> -- 
> 1.5.6.5
> 
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]