Why is memory management different inside a Docker container? I'm getting âÂÂfree() invalid pointerâÂÂ
Clash Royale CLAN TAG#URR8PPP
up vote
0
down vote
favorite
I am trying to run a HW dev app with a UI.
- In the Host => no problem
- In a Docker container => I get a
free() invalid pointer
error
Both are based on CentOS 7.5.
I don't understand why. I have checked the glibc versions with
yum list installed | grep glibc
and both host and Docker container have the same version (glibc-2.17-222
).
What is different? I don't have access to the code and I have no idea how to solve my problem. Other libraries are exactly the same version.
That's very problematic â using the same CentOS version in host and Docker container, it behaves differently. Why?
*** Error in `X': free(): invalid pointer: 0x00007f316a80aa70 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x81499)[0x7f31702ae499]
/lib64/libudev.so.1(udev_device_unref+0x37)[0x7f31681ae5f7]
/lib64/libudev.so.1(+0x8a31)[0x7f31681b1a31]
/lib64/libudev.so.1(+0x8c0e)[0x7f31681b1c0e]
I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU.
This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear.
strace
strace: Process 13391 attached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
47.48 0.016584 8 2100 1803 recvmsg
24.84 0.008675 9 1016 poll
6.34 0.002214 17 134 read
6.00 0.002094 9 234 write
5.78 0.002018 8 255 writev
3.34 0.001165 14 85 68 open
1.88 0.000656 219 3 access
1.24 0.000433 27 16 5 stat
0.68 0.000239 14 17 close
0.62 0.000217 9 25 mmap
0.47 0.000164 23 7 munmap
0.38 0.000132 66 2 socket
0.25 0.000088 6 14 fstat
0.23 0.000081 6 13 mprotect
0.10 0.000034 34 1 ftruncate
0.05 0.000019 6 3 fcntl
0.05 0.000019 19 1 restart_syscall
0.05 0.000017 17 1 getcwd
0.03 0.000012 6 2 openat
0.03 0.000011 6 2 getdents
0.03 0.000010 10 1 tgkill
0.03 0.000009 9 1 lstat
0.02 0.000008 8 1 fstatfs
0.02 0.000007 7 1 1 ioctl
0.01 0.000005 5 1 readlink
0.01 0.000004 4 1 lseek
0.01 0.000004 4 1 rt_sigprocmask
0.01 0.000004 4 1 uname
0.01 0.000003 2 2 futex
------ ----------- ----------- --------- --------- ----------------
100.00 0.034926 3941 1877 total
This is before the double corruption
:
10:53:31 mprotect(0x7f4c40d34000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c40f4c000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41151000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41397000, 8192, PROT_READ) = 0
10:53:31 mprotect(0x7f4c4159d000, 4096, PROT_READ) = 0
10:53:31 stat("/etc/sysconfig/64bit_strstr_via_64bit_strstr_sse2_unaligned", 0x7fffb00a4540) = -1 ENOENT (No such file or directory)
10:53:31 mprotect(0x7f4c44066000, 4096, PROT_READ) = 0
10:53:31 munmap(0x7f4c89d89000, 29643) = 0
10:53:31 open("/etc/udev/udev.conf", O_RDONLY|O_CLOEXEC) = 10
10:53:31 fstat(10, st_mode=S_IFREG) = 0
10:53:31 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4c89f20000
10:53:31 read(10, "# see udev.conf(5) for detailsnn"..., 4096) = 49
10:53:31 read(10, "", 4096) = 0
10:53:31 close(10) = 0
10:53:31 munmap(0x7f4c89f20000, 4096) = 0
10:53:31 stat("/sys/subsystem", 0x7fffb00a4b20) = -1 ENOENT (No such file or directory)
10:53:31 openat(AT_FDCWD, "/sys/bus", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 10
10:53:31 getdents(10, /* 35 entries */, 32768) = 976
10:53:31 openat(AT_FDCWD, "/sys/bus/clockevents/devices", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 11
10:53:31 getdents(11, /* 11 entries */, 32768) = 336
10:53:31 readlink("/sys/bus/clockevents/devices/clockevent2", "../../../devices/system/clockeve"..., 1024) = 47
10:53:31 stat("/sys/devices/system/clockevents/clockevent2/uevent", st_mode=S_IFREG) = 0
10:53:31 open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 12
10:53:31 writev(12, ["*** Error in `", 14, "tierceapp", 7, "': ", 3, "double free or corruption (out)", 31, ": 0x", 4, "00007f4c432eabc0", 16, " ***n", 5], 7) = 80
The address of the corruption 00007f4c432eabc0
doesn't link to anywhere in the strace.
Update #1:
- If I run my container with
--net=host
, it's working.
centos docker
 |Â
show 2 more comments
up vote
0
down vote
favorite
I am trying to run a HW dev app with a UI.
- In the Host => no problem
- In a Docker container => I get a
free() invalid pointer
error
Both are based on CentOS 7.5.
I don't understand why. I have checked the glibc versions with
yum list installed | grep glibc
and both host and Docker container have the same version (glibc-2.17-222
).
What is different? I don't have access to the code and I have no idea how to solve my problem. Other libraries are exactly the same version.
That's very problematic â using the same CentOS version in host and Docker container, it behaves differently. Why?
*** Error in `X': free(): invalid pointer: 0x00007f316a80aa70 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x81499)[0x7f31702ae499]
/lib64/libudev.so.1(udev_device_unref+0x37)[0x7f31681ae5f7]
/lib64/libudev.so.1(+0x8a31)[0x7f31681b1a31]
/lib64/libudev.so.1(+0x8c0e)[0x7f31681b1c0e]
I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU.
This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear.
strace
strace: Process 13391 attached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
47.48 0.016584 8 2100 1803 recvmsg
24.84 0.008675 9 1016 poll
6.34 0.002214 17 134 read
6.00 0.002094 9 234 write
5.78 0.002018 8 255 writev
3.34 0.001165 14 85 68 open
1.88 0.000656 219 3 access
1.24 0.000433 27 16 5 stat
0.68 0.000239 14 17 close
0.62 0.000217 9 25 mmap
0.47 0.000164 23 7 munmap
0.38 0.000132 66 2 socket
0.25 0.000088 6 14 fstat
0.23 0.000081 6 13 mprotect
0.10 0.000034 34 1 ftruncate
0.05 0.000019 6 3 fcntl
0.05 0.000019 19 1 restart_syscall
0.05 0.000017 17 1 getcwd
0.03 0.000012 6 2 openat
0.03 0.000011 6 2 getdents
0.03 0.000010 10 1 tgkill
0.03 0.000009 9 1 lstat
0.02 0.000008 8 1 fstatfs
0.02 0.000007 7 1 1 ioctl
0.01 0.000005 5 1 readlink
0.01 0.000004 4 1 lseek
0.01 0.000004 4 1 rt_sigprocmask
0.01 0.000004 4 1 uname
0.01 0.000003 2 2 futex
------ ----------- ----------- --------- --------- ----------------
100.00 0.034926 3941 1877 total
This is before the double corruption
:
10:53:31 mprotect(0x7f4c40d34000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c40f4c000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41151000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41397000, 8192, PROT_READ) = 0
10:53:31 mprotect(0x7f4c4159d000, 4096, PROT_READ) = 0
10:53:31 stat("/etc/sysconfig/64bit_strstr_via_64bit_strstr_sse2_unaligned", 0x7fffb00a4540) = -1 ENOENT (No such file or directory)
10:53:31 mprotect(0x7f4c44066000, 4096, PROT_READ) = 0
10:53:31 munmap(0x7f4c89d89000, 29643) = 0
10:53:31 open("/etc/udev/udev.conf", O_RDONLY|O_CLOEXEC) = 10
10:53:31 fstat(10, st_mode=S_IFREG) = 0
10:53:31 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4c89f20000
10:53:31 read(10, "# see udev.conf(5) for detailsnn"..., 4096) = 49
10:53:31 read(10, "", 4096) = 0
10:53:31 close(10) = 0
10:53:31 munmap(0x7f4c89f20000, 4096) = 0
10:53:31 stat("/sys/subsystem", 0x7fffb00a4b20) = -1 ENOENT (No such file or directory)
10:53:31 openat(AT_FDCWD, "/sys/bus", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 10
10:53:31 getdents(10, /* 35 entries */, 32768) = 976
10:53:31 openat(AT_FDCWD, "/sys/bus/clockevents/devices", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 11
10:53:31 getdents(11, /* 11 entries */, 32768) = 336
10:53:31 readlink("/sys/bus/clockevents/devices/clockevent2", "../../../devices/system/clockeve"..., 1024) = 47
10:53:31 stat("/sys/devices/system/clockevents/clockevent2/uevent", st_mode=S_IFREG) = 0
10:53:31 open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 12
10:53:31 writev(12, ["*** Error in `", 14, "tierceapp", 7, "': ", 3, "double free or corruption (out)", 31, ": 0x", 4, "00007f4c432eabc0", 16, " ***n", 5], 7) = 80
The address of the corruption 00007f4c432eabc0
doesn't link to anywhere in the strace.
Update #1:
- If I run my container with
--net=host
, it's working.
centos docker
You will need to give more info. Start with the purpose of this mystery app, linger a bit on why you must run it in a docker if a small centos VM will do, and finish off with your analysis of a strace. All these will help.
â user2066657
Jul 14 at 0:48
Docker or not is not my question. It's an HW dev app and shouldn't be the problem since it's working perfectly in a real Centos 7 host. Nevertheless, I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU. This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear. I guess it's checking some hardware or I don't know what.
â Alexis_FR_JP
Jul 14 at 1:02
I've never usedstrace
then give me some time to do it. Thanks!
â Alexis_FR_JP
Jul 14 at 1:04
1
@Alexis_FR_JP it seems you can't free fabiokung.com/2014/03/13/memory-inside-linux-containers
â vfbsilva
Jul 14 at 1:52
In a previous version (centos:7 isn't a version but latest of 7... and yum pkgs version have changed), I could run the app usinggperftools
TCMalloc lib andLD_PRELOAD
in the container but not anymore with new versions. It was more a workaround than a real solution. Good to know that! Im gonna read it and test the solution. Thanks vfbsilva!!
â Alexis_FR_JP
Jul 14 at 3:11
 |Â
show 2 more comments
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I am trying to run a HW dev app with a UI.
- In the Host => no problem
- In a Docker container => I get a
free() invalid pointer
error
Both are based on CentOS 7.5.
I don't understand why. I have checked the glibc versions with
yum list installed | grep glibc
and both host and Docker container have the same version (glibc-2.17-222
).
What is different? I don't have access to the code and I have no idea how to solve my problem. Other libraries are exactly the same version.
That's very problematic â using the same CentOS version in host and Docker container, it behaves differently. Why?
*** Error in `X': free(): invalid pointer: 0x00007f316a80aa70 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x81499)[0x7f31702ae499]
/lib64/libudev.so.1(udev_device_unref+0x37)[0x7f31681ae5f7]
/lib64/libudev.so.1(+0x8a31)[0x7f31681b1a31]
/lib64/libudev.so.1(+0x8c0e)[0x7f31681b1c0e]
I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU.
This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear.
strace
strace: Process 13391 attached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
47.48 0.016584 8 2100 1803 recvmsg
24.84 0.008675 9 1016 poll
6.34 0.002214 17 134 read
6.00 0.002094 9 234 write
5.78 0.002018 8 255 writev
3.34 0.001165 14 85 68 open
1.88 0.000656 219 3 access
1.24 0.000433 27 16 5 stat
0.68 0.000239 14 17 close
0.62 0.000217 9 25 mmap
0.47 0.000164 23 7 munmap
0.38 0.000132 66 2 socket
0.25 0.000088 6 14 fstat
0.23 0.000081 6 13 mprotect
0.10 0.000034 34 1 ftruncate
0.05 0.000019 6 3 fcntl
0.05 0.000019 19 1 restart_syscall
0.05 0.000017 17 1 getcwd
0.03 0.000012 6 2 openat
0.03 0.000011 6 2 getdents
0.03 0.000010 10 1 tgkill
0.03 0.000009 9 1 lstat
0.02 0.000008 8 1 fstatfs
0.02 0.000007 7 1 1 ioctl
0.01 0.000005 5 1 readlink
0.01 0.000004 4 1 lseek
0.01 0.000004 4 1 rt_sigprocmask
0.01 0.000004 4 1 uname
0.01 0.000003 2 2 futex
------ ----------- ----------- --------- --------- ----------------
100.00 0.034926 3941 1877 total
This is before the double corruption
:
10:53:31 mprotect(0x7f4c40d34000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c40f4c000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41151000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41397000, 8192, PROT_READ) = 0
10:53:31 mprotect(0x7f4c4159d000, 4096, PROT_READ) = 0
10:53:31 stat("/etc/sysconfig/64bit_strstr_via_64bit_strstr_sse2_unaligned", 0x7fffb00a4540) = -1 ENOENT (No such file or directory)
10:53:31 mprotect(0x7f4c44066000, 4096, PROT_READ) = 0
10:53:31 munmap(0x7f4c89d89000, 29643) = 0
10:53:31 open("/etc/udev/udev.conf", O_RDONLY|O_CLOEXEC) = 10
10:53:31 fstat(10, st_mode=S_IFREG) = 0
10:53:31 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4c89f20000
10:53:31 read(10, "# see udev.conf(5) for detailsnn"..., 4096) = 49
10:53:31 read(10, "", 4096) = 0
10:53:31 close(10) = 0
10:53:31 munmap(0x7f4c89f20000, 4096) = 0
10:53:31 stat("/sys/subsystem", 0x7fffb00a4b20) = -1 ENOENT (No such file or directory)
10:53:31 openat(AT_FDCWD, "/sys/bus", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 10
10:53:31 getdents(10, /* 35 entries */, 32768) = 976
10:53:31 openat(AT_FDCWD, "/sys/bus/clockevents/devices", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 11
10:53:31 getdents(11, /* 11 entries */, 32768) = 336
10:53:31 readlink("/sys/bus/clockevents/devices/clockevent2", "../../../devices/system/clockeve"..., 1024) = 47
10:53:31 stat("/sys/devices/system/clockevents/clockevent2/uevent", st_mode=S_IFREG) = 0
10:53:31 open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 12
10:53:31 writev(12, ["*** Error in `", 14, "tierceapp", 7, "': ", 3, "double free or corruption (out)", 31, ": 0x", 4, "00007f4c432eabc0", 16, " ***n", 5], 7) = 80
The address of the corruption 00007f4c432eabc0
doesn't link to anywhere in the strace.
Update #1:
- If I run my container with
--net=host
, it's working.
centos docker
I am trying to run a HW dev app with a UI.
- In the Host => no problem
- In a Docker container => I get a
free() invalid pointer
error
Both are based on CentOS 7.5.
I don't understand why. I have checked the glibc versions with
yum list installed | grep glibc
and both host and Docker container have the same version (glibc-2.17-222
).
What is different? I don't have access to the code and I have no idea how to solve my problem. Other libraries are exactly the same version.
That's very problematic â using the same CentOS version in host and Docker container, it behaves differently. Why?
*** Error in `X': free(): invalid pointer: 0x00007f316a80aa70 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x81499)[0x7f31702ae499]
/lib64/libudev.so.1(udev_device_unref+0x37)[0x7f31681ae5f7]
/lib64/libudev.so.1(+0x8a31)[0x7f31681b1a31]
/lib64/libudev.so.1(+0x8c0e)[0x7f31681b1c0e]
I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU.
This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear.
strace
strace: Process 13391 attached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
47.48 0.016584 8 2100 1803 recvmsg
24.84 0.008675 9 1016 poll
6.34 0.002214 17 134 read
6.00 0.002094 9 234 write
5.78 0.002018 8 255 writev
3.34 0.001165 14 85 68 open
1.88 0.000656 219 3 access
1.24 0.000433 27 16 5 stat
0.68 0.000239 14 17 close
0.62 0.000217 9 25 mmap
0.47 0.000164 23 7 munmap
0.38 0.000132 66 2 socket
0.25 0.000088 6 14 fstat
0.23 0.000081 6 13 mprotect
0.10 0.000034 34 1 ftruncate
0.05 0.000019 6 3 fcntl
0.05 0.000019 19 1 restart_syscall
0.05 0.000017 17 1 getcwd
0.03 0.000012 6 2 openat
0.03 0.000011 6 2 getdents
0.03 0.000010 10 1 tgkill
0.03 0.000009 9 1 lstat
0.02 0.000008 8 1 fstatfs
0.02 0.000007 7 1 1 ioctl
0.01 0.000005 5 1 readlink
0.01 0.000004 4 1 lseek
0.01 0.000004 4 1 rt_sigprocmask
0.01 0.000004 4 1 uname
0.01 0.000003 2 2 futex
------ ----------- ----------- --------- --------- ----------------
100.00 0.034926 3941 1877 total
This is before the double corruption
:
10:53:31 mprotect(0x7f4c40d34000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c40f4c000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41151000, 4096, PROT_READ) = 0
10:53:31 mprotect(0x7f4c41397000, 8192, PROT_READ) = 0
10:53:31 mprotect(0x7f4c4159d000, 4096, PROT_READ) = 0
10:53:31 stat("/etc/sysconfig/64bit_strstr_via_64bit_strstr_sse2_unaligned", 0x7fffb00a4540) = -1 ENOENT (No such file or directory)
10:53:31 mprotect(0x7f4c44066000, 4096, PROT_READ) = 0
10:53:31 munmap(0x7f4c89d89000, 29643) = 0
10:53:31 open("/etc/udev/udev.conf", O_RDONLY|O_CLOEXEC) = 10
10:53:31 fstat(10, st_mode=S_IFREG) = 0
10:53:31 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4c89f20000
10:53:31 read(10, "# see udev.conf(5) for detailsnn"..., 4096) = 49
10:53:31 read(10, "", 4096) = 0
10:53:31 close(10) = 0
10:53:31 munmap(0x7f4c89f20000, 4096) = 0
10:53:31 stat("/sys/subsystem", 0x7fffb00a4b20) = -1 ENOENT (No such file or directory)
10:53:31 openat(AT_FDCWD, "/sys/bus", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 10
10:53:31 getdents(10, /* 35 entries */, 32768) = 976
10:53:31 openat(AT_FDCWD, "/sys/bus/clockevents/devices", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 11
10:53:31 getdents(11, /* 11 entries */, 32768) = 336
10:53:31 readlink("/sys/bus/clockevents/devices/clockevent2", "../../../devices/system/clockeve"..., 1024) = 47
10:53:31 stat("/sys/devices/system/clockevents/clockevent2/uevent", st_mode=S_IFREG) = 0
10:53:31 open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 12
10:53:31 writev(12, ["*** Error in `", 14, "tierceapp", 7, "': ", 3, "double free or corruption (out)", 31, ": 0x", 4, "00007f4c432eabc0", 16, " ***n", 5], 7) = 80
The address of the corruption 00007f4c432eabc0
doesn't link to anywhere in the strace.
Update #1:
- If I run my container with
--net=host
, it's working.
centos docker
edited Jul 17 at 7:36
asked Jul 12 at 6:47
Alexis_FR_JP
155110
155110
You will need to give more info. Start with the purpose of this mystery app, linger a bit on why you must run it in a docker if a small centos VM will do, and finish off with your analysis of a strace. All these will help.
â user2066657
Jul 14 at 0:48
Docker or not is not my question. It's an HW dev app and shouldn't be the problem since it's working perfectly in a real Centos 7 host. Nevertheless, I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU. This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear. I guess it's checking some hardware or I don't know what.
â Alexis_FR_JP
Jul 14 at 1:02
I've never usedstrace
then give me some time to do it. Thanks!
â Alexis_FR_JP
Jul 14 at 1:04
1
@Alexis_FR_JP it seems you can't free fabiokung.com/2014/03/13/memory-inside-linux-containers
â vfbsilva
Jul 14 at 1:52
In a previous version (centos:7 isn't a version but latest of 7... and yum pkgs version have changed), I could run the app usinggperftools
TCMalloc lib andLD_PRELOAD
in the container but not anymore with new versions. It was more a workaround than a real solution. Good to know that! Im gonna read it and test the solution. Thanks vfbsilva!!
â Alexis_FR_JP
Jul 14 at 3:11
 |Â
show 2 more comments
You will need to give more info. Start with the purpose of this mystery app, linger a bit on why you must run it in a docker if a small centos VM will do, and finish off with your analysis of a strace. All these will help.
â user2066657
Jul 14 at 0:48
Docker or not is not my question. It's an HW dev app and shouldn't be the problem since it's working perfectly in a real Centos 7 host. Nevertheless, I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU. This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear. I guess it's checking some hardware or I don't know what.
â Alexis_FR_JP
Jul 14 at 1:02
I've never usedstrace
then give me some time to do it. Thanks!
â Alexis_FR_JP
Jul 14 at 1:04
1
@Alexis_FR_JP it seems you can't free fabiokung.com/2014/03/13/memory-inside-linux-containers
â vfbsilva
Jul 14 at 1:52
In a previous version (centos:7 isn't a version but latest of 7... and yum pkgs version have changed), I could run the app usinggperftools
TCMalloc lib andLD_PRELOAD
in the container but not anymore with new versions. It was more a workaround than a real solution. Good to know that! Im gonna read it and test the solution. Thanks vfbsilva!!
â Alexis_FR_JP
Jul 14 at 3:11
You will need to give more info. Start with the purpose of this mystery app, linger a bit on why you must run it in a docker if a small centos VM will do, and finish off with your analysis of a strace. All these will help.
â user2066657
Jul 14 at 0:48
You will need to give more info. Start with the purpose of this mystery app, linger a bit on why you must run it in a docker if a small centos VM will do, and finish off with your analysis of a strace. All these will help.
â user2066657
Jul 14 at 0:48
Docker or not is not my question. It's an HW dev app and shouldn't be the problem since it's working perfectly in a real Centos 7 host. Nevertheless, I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU. This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear. I guess it's checking some hardware or I don't know what.
â Alexis_FR_JP
Jul 14 at 1:02
Docker or not is not my question. It's an HW dev app and shouldn't be the problem since it's working perfectly in a real Centos 7 host. Nevertheless, I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU. This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear. I guess it's checking some hardware or I don't know what.
â Alexis_FR_JP
Jul 14 at 1:02
I've never used
strace
then give me some time to do it. Thanks!â Alexis_FR_JP
Jul 14 at 1:04
I've never used
strace
then give me some time to do it. Thanks!â Alexis_FR_JP
Jul 14 at 1:04
1
1
@Alexis_FR_JP it seems you can't free fabiokung.com/2014/03/13/memory-inside-linux-containers
â vfbsilva
Jul 14 at 1:52
@Alexis_FR_JP it seems you can't free fabiokung.com/2014/03/13/memory-inside-linux-containers
â vfbsilva
Jul 14 at 1:52
In a previous version (centos:7 isn't a version but latest of 7... and yum pkgs version have changed), I could run the app using
gperftools
TCMalloc lib and LD_PRELOAD
in the container but not anymore with new versions. It was more a workaround than a real solution. Good to know that! Im gonna read it and test the solution. Thanks vfbsilva!!â Alexis_FR_JP
Jul 14 at 3:11
In a previous version (centos:7 isn't a version but latest of 7... and yum pkgs version have changed), I could run the app using
gperftools
TCMalloc lib and LD_PRELOAD
in the container but not anymore with new versions. It was more a workaround than a real solution. Good to know that! Im gonna read it and test the solution. Thanks vfbsilva!!â Alexis_FR_JP
Jul 14 at 3:11
 |Â
show 2 more comments
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f454839%2fwhy-is-memory-management-different-inside-a-docker-container-im-getting-free%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
You will need to give more info. Start with the purpose of this mystery app, linger a bit on why you must run it in a docker if a small centos VM will do, and finish off with your analysis of a strace. All these will help.
â user2066657
Jul 14 at 0:48
Docker or not is not my question. It's an HW dev app and shouldn't be the problem since it's working perfectly in a real Centos 7 host. Nevertheless, I rejected the VM solution because the app uses 32GB+ of RAM and huge CPU. This app is officially supported for RHEL/Centos. Even tho the version is free, the issue comes when a licensing window is supposed to appear. I guess it's checking some hardware or I don't know what.
â Alexis_FR_JP
Jul 14 at 1:02
I've never used
strace
then give me some time to do it. Thanks!â Alexis_FR_JP
Jul 14 at 1:04
1
@Alexis_FR_JP it seems you can't free fabiokung.com/2014/03/13/memory-inside-linux-containers
â vfbsilva
Jul 14 at 1:52
In a previous version (centos:7 isn't a version but latest of 7... and yum pkgs version have changed), I could run the app using
gperftools
TCMalloc lib andLD_PRELOAD
in the container but not anymore with new versions. It was more a workaround than a real solution. Good to know that! Im gonna read it and test the solution. Thanks vfbsilva!!â Alexis_FR_JP
Jul 14 at 3:11