Bug 164755 - SysV IPC operation incorrectly handled on x86-64
Summary: SysV IPC operation incorrectly handled on x86-64
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: strace (Show other bugs)
(Show other bugs)
Version: rawhide
Hardware: x86_64 Linux
medium
medium
Target Milestone: ---
Assignee: Roland McGrath
QA Contact: Brian Brock
URL:
Whiteboard:
Keywords:
Depends On:
Blocks: FC4Update
TreeView+ depends on / blocked
 
Reported: 2005-08-01 00:03 UTC by Ulrich Drepper
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

Fixed In Version: 4.5.14
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-04-03 08:34:47 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Remove special linux demux handling for x86-64 (2.91 KB, patch)
2005-08-01 00:03 UTC, Ulrich Drepper
no flags Details | Diff
strace-4.5.13-drepper-x86_64-ipc.patch (3.57 KB, patch)
2005-08-08 17:21 UTC, Dmitry V. Levin
no flags Details | Diff

Description Ulrich Drepper 2005-08-01 00:03:30 UTC
Description of problem:
Unlike some/most other archs, x86-64 has real syscalls for the SysV IPC
operations.  This means the special #ifdef LINUX code in the various sys_*
functions must be avoided for x86-64.

Version-Release number of selected component (if applicable):
strace-4.5.12-1.x86_64

How reproducible:
always

Steps to Reproduce:
1.strace any code using msgsnd, msgrcv, ...
2.
3.
  
Actual results:
[pid 19816] msgsnd(98304, {6549608, umovestr: Input/output error
0x8}, 140737484181616, 0x4 /* MSG_??? */) = 0


Expected results:
[pid 24526] msgsnd(262149, {1, "\0\0\0\0"}, 4, 0) = 0


Additional info:
Attached patch should fix it.  There are also some syscall number bugs.

2005-07-31  Ulrich Drepper  <drepper@redhat.com>

	* linux/x86_64/syscallent.h: Fix syscall parameter count for msgrcv and
	msgctl.
	* ipc.c: Don't use LINUX specific code in sys_msgctl, sys_msgsnd,
	sys_msgrcv, sys_semop, sys_shmctl, sys_shmat, sys_shmdt.  Add
	appropriate non-demux code to sys_semtimedop.

Comment 1 Ulrich Drepper 2005-08-01 00:03:30 UTC
Created attachment 117330 [details]
Remove special linux demux handling for x86-64

Comment 2 Dmitry V. Levin 2005-08-08 17:21:02 UTC
Created attachment 117546 [details]
strace-4.5.13-drepper-x86_64-ipc.patch

Rediffed for strace-4.5.13.

Comment 3 Roland McGrath 2005-12-02 03:54:55 UTC
Your patch breaks it for 32-bit inferiors.
I've put in changes upstream that should do the trick.

Comment 4 Roland McGrath 2006-04-03 08:34:47 UTC
Fixed in fc4 update and in fc5.


Note You need to log in before you can comment on or make changes to this bug.