Bug 154655 - incorrect mmap flags with 32-bit binary on s390x
Summary: incorrect mmap flags with 32-bit binary on s390x
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: strace
Version: 4.0
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Roland McGrath
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On: IT_55591
Blocks:
TreeView+ depends on / blocked
 
Reported: 2005-04-13 11:26 UTC by Jay Turner
Modified: 2015-01-08 00:09 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-04-25 08:00:49 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Jay Turner 2005-04-13 11:26:23 UTC
+++ This bug was initially created as a clone of Bug #146093 +++

Testcase:
#include <stdio.h>
int main(void)
{
        FILE *f;
        char a[100];
        char *b;
        f=fopen("abc","r");
        b=fgets(a,3,f);
        printf("b=%p\n",b);
}

On s390x with both 4.5.8-1 and 4.5.9-2.EL4, getting the following when running
against the 32-bit version of the above.

mmap(0x28b9e, 4294967298, PROT_NONE, MAP_FILE, 0, 0) = 0x77fd7000
mmap(0x49a330000013e8e4, 21474838530, PROT_NONE, 0x6 /* MAP_???
*/|MAP_FIXED|MAP_ANONYMOUS|MAP_POPULATE|MAP_GROWSDOWN|0xc9a20400, 2147478920, 0)
= 0x49a33000
mmap(0x49b6c00000004000, 12884903954, 0x138000, 0x6 /* MAP_???
*/|MAP_FIXED|MAP_ANONYMOUS|MAP_POPULATE|MAP_GROWSDOWN|0xc9a20400, 2147478920, 0)
= 0x49b6c000
mmap(0x49b70000000018e4, 12884901938, PROT_NONE, 0x6 /* MAP_???
*/|MAP_FIXED|MAP_ANONYMOUS|MAP_POPULATE|MAP_GROWSDOWN|0xc9a20400, 2147478920, 0)
= 0x49b70000
mmap(0x1000, 12884901922, PROT_NONE,
MAP_FILE|MAP_NONBLOCK|MAP_DENYWRITE|0x49a20200, 0, 0xffffff2cfffe986c) = 0x77fd6000
mmap(0x1000, 12884901922, PROT_NONE, 0xc /* MAP_??? */|MAP_FIXED|0x4002c0, 1,
0x40030c00000000) = 0x77fff000
mmap(0x1000, 12884901922, PROT_NONE, 0x3 /* MAP_??? */, 4194876, 0x1300000012) =
0x77ffe000

Comment 1 Roland McGrath 2005-04-21 21:02:11 UTC
s390x strace does not support tracing 32-bit processes and never has to my
knowledge.  If split 32-64 installs are common and there should be s390x
strace64 and s390 (32-bit) strace on s390, we can do that.  But it has never
been requested by customers as the ppc64 case was. 

(I've removed the IT links since they refer only to x86_64.)

Comment 2 Jay Turner 2005-04-25 08:00:49 UTC
Makes sense to me.


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