Bug 870914
| Summary: | bash: xmalloc: ../bash/shell.c:1596: cannot allocate 5 bytes (0 bytes allocated) when running 32-bit programs on Ubuntu 12.04 with RHEL 6.3 x86_64 kernel | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Vladimir Davydov <vdavydov> | ||||
| Component: | kernel | Assignee: | Red Hat Kernel Manager <kernel-mgr> | ||||
| Status: | CLOSED NOTABUG | QA Contact: | Red Hat Kernel QE team <kernel-qe> | ||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 6.3 | CC: | khorenko | ||||
| Target Milestone: | rc | ||||||
| Target Release: | --- | ||||||
| Hardware: | x86_64 | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2012-11-02 12:48:36 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
> Additional info:
> The problem is connected with the way RHEL-based kernel look up for a exec
> vm areas. They do it using arch_get_unmapped_exec_area instead of
> traditional arch_get_unmapped_exec_area.
mistype here: instead of arch_get_unmapped_area_topdown of course
A few things: 1. We don't support running the RHEL kernel on another OS. 2. We don't support custom built kernels. 3. We don't support running a custom built kernel running on another OS. P. |
Created attachment 634902 [details] This simple program fails on Ubuntu 12.04 with RHEL6.3 kernel if compiled on CentOS 5 i386 as -static Description of problem: Executing a shell script randomly fails if executed from a 32-bit program compiled as static on 64-bit systems with RHEL6.3 x86_64 kernel and newer glibc (2.15). Version-Release number of selected component (if applicable): 2.6.32-279.11.1.el6.x86_64 How reproducible: 100% Steps to Reproduce: 1. Compile fork_exec_bash.c (attached) as static on a 32 bit Linux (I used CentOS5 i386): $ gcc fork_exec_bash.c -o fork_exec_bash -static [binary is also attached] 2. Install Ubuntu 12.04 and an RHEL6.3 on it: # alien -d kernel-2.6.32-279.11.1.el6.x86_64.rpm # dpkg -i kernel_2.6.32-280.11_amd64.deb # update-initramfs -c -k 2.6.32-279.11.1.el6.x86_64 # update-grub 3. Boot into the installed kernel and run the compiled program Actual results: /bin/bash /bin/bash bash: xmalloc: ../bash/shell.c:1596: cannot allocate 5 bytes (0 bytes allocated) Parent exited Expected results: /bin/bash /bin/bash /bin/bash /bin/bash ... [forever] Additional info: The problem is connected with the way RHEL-based kernel look up for a exec vm areas. They do it using arch_get_unmapped_exec_area instead of traditional arch_get_unmapped_exec_area.