5.0.0-27-generic: /proc/<pid>/maps: Pathnames are '/' inside a container
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
In Progress
|
Undecided
|
Marcelo Cerri | ||
linux-azure (Ubuntu) |
Fix Released
|
Undecided
|
Marcelo Cerri |
Bug Description
Using kernel 5.0.0-27-generic on Ubuntu 18.04 in a container, every pathname in /proc/<pid>/maps is / instead of the mapped file path.
This appears to be a regression in 5.0.0-27-generic; it works on 5.0.0-25-generic. The problem can be reproduced in various Ubuntu releases, e.g. 18.04 and 19.04.
5.0.0-25-generic (working):
$ sudo docker run ubuntu cat /proc/1/maps
56324a3f5000-
56324a5fc000-
56324a5fd000-
56324a8eb000-
7f8ab5f91000-
7f8ab6178000-
7f8ab6378000-
7f8ab637c000-
7f8ab637e000-
7f8ab6382000-
7f8ab6583000-
7f8ab65a9000-
7f8ab65aa000-
7f8ab65ab000-
7ffc25954000-
7ffc259f1000-
7ffc259f4000-
ffffffffff60000
5.0.0-27-generic (broken):
$ sudo docker run ubuntu cat /proc/1/maps
55de0e052000-
55de0e259000-
55de0e25a000-
55de0fcb3000-
7f7a8d881000-
7f7a8da68000-
7f7a8dc68000-
7f7a8dc6c000-
7f7a8dc6e000-
7f7a8dc72000-
7f7a8de73000-
7f7a8de99000-
7f7a8de9a000-
7f7a8de9b000-
7ffc744bd000-
7ffc7452d000-
7ffc74530000-
Changed in linux-azure (Ubuntu): | |
assignee: | nobody → Marcelo Cerri (mhcerri) |
status: | Confirmed → In Progress |
Changed in linux (Ubuntu): | |
assignee: | nobody → Marcelo Cerri (mhcerri) |
status: | Confirmed → In Progress |
Changed in linux-azure (Ubuntu): | |
status: | In Progress → Fix Released |
This impacts applications which use /proc/<pid>/map to find out their location. For example, .NET Core applications use approach, and are currently broken in containers on Ubuntu running the 5.0.0-27-generic kernel. See https:/ /github. com/dotnet/ corefx/ issues/ 40850 for more information.