Bug 218043 - umovestr I/O errors on 32-bit binaries
Summary: umovestr I/O errors on 32-bit binaries
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: strace
Version: 4.0
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Roland McGrath
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks: 218433
TreeView+ depends on / blocked
 
Reported: 2006-12-01 15:07 UTC by Bastien Nocera
Modified: 2018-10-19 21:27 UTC (History)
2 users (show)

Fixed In Version: RHBA-2007-0820
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-11-15 16:05:42 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
writevx.c (2.88 KB, text/plain)
2006-12-01 15:07 UTC, Bastien Nocera
no flags Details
strace-biarch-iovec.patch (4.40 KB, patch)
2006-12-05 10:57 UTC, Jakub Jelinek
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2007:0820 0 normal SHIPPED_LIVE strace bug fix and enhancement update 2007-11-14 17:31:15 UTC

Description Bastien Nocera 2006-12-01 15:07:23 UTC
strace-4.5.14-0.EL4.1.x86_64

On x86-64, with a 32-bit binary.

1. gcc -m32 -o writex writex.c
2. sudo strace -o foo -v ./writevx 127.0.0.1 22
[ Process PID=4407 runs in 32 bit mode. ]
umovestr: Input/output error
umovestr: Input/output error

Comment 1 Bastien Nocera 2006-12-01 15:07:25 UTC
Created attachment 142573 [details]
writevx.c

Comment 2 Jakub Jelinek 2006-12-05 09:11:57 UTC
Even:
#include <sys/uio.h>

int
main (void)
{
  struct iovec v[2];
  v[0].iov_base = "abc";
  v[0].iov_len = 3;
  v[1].iov_base = "\n";
  v[1].iov_len = 1;
  writev (1, v, 2);
  return 0;
}
is enough to reproduce it.  64-bit strace just doesn't handle 32-bit
{read,write}v.

Comment 3 Jakub Jelinek 2006-12-05 10:57:16 UTC
Created attachment 142820 [details]
strace-biarch-iovec.patch

Patch to fix it.  biarch support in current strace is clearly a hack, but until
if ever that is rewritten into a framework that can naturally cope with this,
I wrote a hack solution just for struct iovec.

Comment 4 Dmitry V. Levin 2006-12-13 21:51:41 UTC
Fixed upstream.

Comment 5 Roland McGrath 2007-01-11 11:16:00 UTC
these bugs are fixed upstream in the coming 4.5.15 release

Comment 6 Roland McGrath 2007-01-30 07:45:55 UTC
This bug should be fixed in strace-4.5.15-1.el4 rpms.

Comment 8 RHEL Program Management 2007-05-09 08:42:36 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.

Comment 10 Roland McGrath 2007-07-05 19:04:29 UTC
This should already be fixed in the RHEL4.5 strace version (4.5.15-1.el4.1).
Please verify and close.

Comment 12 Jan Kratochvil 2007-08-03 14:08:53 UTC
Fixed already some time ago in Rawhide:
* Tue Jan 16 2007 Roland McGrath <roland> - 4.5.15-1
- biarch fixes ([...], #218043)

therefore it is present in RHEL-4.5 strace-4.5.15-1.el4.1.

upstream:

2006-12-10  Dmitry V. Levin <ldv>

        Add biarch support for "struct iovec".
        * defs.h (personality_wordsize): Add.
        * io.c [HAVE_SYS_UIO_H] (tprint_iov): [LINUX && 
        SUPPORTED_PERSONALITIES > 1] Handle 32-bit personality.
        * util.c [HAVE_SYS_UIO_H] (dumpiov): [LINUX &&
        SUPPORTED_PERSONALITIES > 1] Likewise.
        Patch from Jakub Jelinek.
        Fixes RH#218433.


Comment 18 errata-xmlrpc 2007-11-15 16:05:42 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2007-0820.html



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