lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4F1875DE.8010805@linux.intel.com>
Date:	Thu, 19 Jan 2012 11:58:22 -0800
From:	"H. Peter Anvin" <hpa@...ux.intel.com>
To:	"Bryn M. Reeves" <bmr@...hat.com>
CC:	device-mapper development <dm-devel@...hat.com>,
	"Kasatkin, Dmitry" <dmitry.kasatkin@...el.com>,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [dm-devel] dmsetup fails on latest kernel

On 01/19/2012 10:06 AM, Bryn M. Reeves wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 01/19/2012 04:10 PM, Kasatkin, Dmitry wrote:
>> It seems "semget" is missing from:
>> arch/x86/syscalls/syscall_32.tbl But it presents in:
>> arch/x86/syscalls/syscall_64.tbl
>>
>> Is it a bug then?
>
> Maybe; I noticed that too but it's also missing in the old x86
> unistd_32.h.
>
> I thought Linux only provided the ipc(2) call - glibc sources seem to
> confirm that (sysdeps/unix/sysv/linux/semget.c).
>
> sys_sem* and friends are present in include/asm-generic/unistd.h so
> maybe these values just need to be propagated to syscall_32.tbl?
>
> Actually there's a bunch of SysV IPC calls defined in syscall_64.tbl
> that are not present in syscall_32.tbl:
>
> $ egrep 'shm|sem|msg[a-z]' arch/x86/syscalls/syscall_32.tbl
> $ egrep 'shm|sem|msg[a-z]' arch/x86/syscalls/syscall_64.tbl
> 29	64	shmget			sys_shmget
> 30	64	shmat			sys_shmat
> 31	64	shmctl			sys_shmctl
> 64	64	semget			sys_semget
> 65	64	semop			sys_semop
> 66	64	semctl			sys_semctl
> 67	64	shmdt			sys_shmdt
> 68	64	msgget			sys_msgget
> 69	64	msgsnd			sys_msgsnd
> 70	64	msgrcv			sys_msgrcv
> 71	64	msgctl			sys_msgctl
> 220	64	semtimedop		sys_semtimedop
>
> But sys_ipc is there:
>
> $ grep sys_ipc arch/x86/syscalls/syscall_32.tbl
> 117	i386	ipc			sys_ipc				sys32_ipc
>

No, the i386 ABI uses several system call multiplexes (sys_ipc, 
sys_socketcall) which are deprecated for new ABIs.  x86-64 and other new 
ABIs use plain system calls.  Thus, this is all as one should expect; 
the right thing to do is to compare against the old 32-bit system call 
table.

	-hpa

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ