* pid namespace isolation broken with powertop
@ 2010-07-29 12:30 Daniel Lezcano
[not found] ` <4C51747A.4050203-GANU6spQydw@public.gmane.org>
0 siblings, 1 reply; 4+ messages in thread
From: Daniel Lezcano @ 2010-07-29 12:30 UTC (permalink / raw)
To: Linux Containers
Hi all,
I noticed all the tasks of the host are listed in /proc/timer_stats
These information is not virtualized neither isolated within a container.
I was expecting to see only the tasks in the container with the
corresponding pids.
I am not sure this is something critical, but the usage of powertop in
the container shows all the tasks of the system.
While looking at the code in kernel/time/timer.c, it is not obvious to
fix this isolation because it is the pid number which is stored in a
list, so there is not enough informations to discriminate the pid
namespace against the current one.
I am wondering if:
1) is it worth to isolate these informations ? (IMHO, yes).
2) should the stats be stored per pid namespace or adding an hash
value + pid namespace as a key in the timer stats list ?
Thanks
-- Daniel
^ permalink raw reply [flat|nested] 4+ messages in thread[parent not found: <4C51747A.4050203-GANU6spQydw@public.gmane.org>]
* Re: pid namespace isolation broken with powertop [not found] ` <4C51747A.4050203-GANU6spQydw@public.gmane.org> @ 2010-07-29 14:35 ` Nathan Lynch 2010-07-29 15:22 ` Daniel Lezcano 0 siblings, 1 reply; 4+ messages in thread From: Nathan Lynch @ 2010-07-29 14:35 UTC (permalink / raw) To: Daniel Lezcano; +Cc: Linux Containers On Thu, 2010-07-29 at 14:30 +0200, Daniel Lezcano wrote: > Hi all, > > I noticed all the tasks of the host are listed in /proc/timer_stats > These information is not virtualized neither isolated within a container. > > I was expecting to see only the tasks in the container with the > corresponding pids. > > I am not sure this is something critical, but the usage of powertop in > the container shows all the tasks of the system. > > While looking at the code in kernel/time/timer.c, it is not obvious to > fix this isolation because it is the pid number which is stored in a > list, so there is not enough informations to discriminate the pid > namespace against the current one. > > I am wondering if: > > 1) is it worth to isolate these informations ? (IMHO, yes). > 2) should the stats be stored per pid namespace or adding an hash > value + pid namespace as a key in the timer stats list ? Well, powertop is used for monitoring and modifying global system characteristics (e.g. processor C states, USB autosuspend) that don't make sense to virtualize. Many events in /proc/timer_stats are accocunted to pid 0 (swapper/idle). I think the question is whether a pidns-relative slice of timer events will be useful or just confusing. ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: pid namespace isolation broken with powertop 2010-07-29 14:35 ` Nathan Lynch @ 2010-07-29 15:22 ` Daniel Lezcano [not found] ` <4C519CBB.5020306-GANU6spQydw@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: Daniel Lezcano @ 2010-07-29 15:22 UTC (permalink / raw) To: Nathan Lynch; +Cc: Linux Containers On 07/29/2010 04:35 PM, Nathan Lynch wrote: > On Thu, 2010-07-29 at 14:30 +0200, Daniel Lezcano wrote: > >> Hi all, >> >> I noticed all the tasks of the host are listed in /proc/timer_stats >> These information is not virtualized neither isolated within a container. >> >> I was expecting to see only the tasks in the container with the >> corresponding pids. >> >> I am not sure this is something critical, but the usage of powertop in >> the container shows all the tasks of the system. >> >> While looking at the code in kernel/time/timer.c, it is not obvious to >> fix this isolation because it is the pid number which is stored in a >> list, so there is not enough informations to discriminate the pid >> namespace against the current one. >> >> I am wondering if: >> >> 1) is it worth to isolate these informations ? (IMHO, yes). >> 2) should the stats be stored per pid namespace or adding an hash >> value + pid namespace as a key in the timer stats list ? >> > Well, powertop is used for monitoring and modifying global system > characteristics (e.g. processor C states, USB autosuspend) that don't > make sense to virtualize. Many events in /proc/timer_stats are > accocunted to pid 0 (swapper/idle). I think the question is whether a > pidns-relative slice of timer events will be useful or just confusing. > IMHO I find confusing to see all the applications name/pid running on the whole system (host + containers) from a container. Even if these applications are not accessible, that gives informations to the container on what is running on the system and I think we should consider that as a security breach. We can just "hide" the content of this file for a pid namespace different of the init pid namespace, but that may suppress the possibility to investigate with powertop the consumption of a specific appliance, as accurate as it could be... Thanks -- Daniel ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <4C519CBB.5020306-GANU6spQydw@public.gmane.org>]
* Re: pid namespace isolation broken with powertop [not found] ` <4C519CBB.5020306-GANU6spQydw@public.gmane.org> @ 2010-07-29 17:40 ` Marc Aymerich 0 siblings, 0 replies; 4+ messages in thread From: Marc Aymerich @ 2010-07-29 17:40 UTC (permalink / raw) Cc: Linux Containers, Nathan Lynch On Thu, Jul 29, 2010 at 5:22 PM, Daniel Lezcano <daniel.lezcano-GANU6spQydw@public.gmane.org>wrote: > On 07/29/2010 04:35 PM, Nathan Lynch wrote: > > On Thu, 2010-07-29 at 14:30 +0200, Daniel Lezcano wrote: > > > >> Hi all, > >> > >> I noticed all the tasks of the host are listed in /proc/timer_stats > >> These information is not virtualized neither isolated within a > container. > >> > >> I was expecting to see only the tasks in the container with the > >> corresponding pids. > >> > >> I am not sure this is something critical, but the usage of powertop in > >> the container shows all the tasks of the system. > >> > >> While looking at the code in kernel/time/timer.c, it is not obvious to > >> fix this isolation because it is the pid number which is stored in a > >> list, so there is not enough informations to discriminate the pid > >> namespace against the current one. > >> > >> I am wondering if: > >> > >> 1) is it worth to isolate these informations ? (IMHO, yes). > >> 2) should the stats be stored per pid namespace or adding an hash > >> value + pid namespace as a key in the timer stats list ? > >> > > Well, powertop is used for monitoring and modifying global system > > characteristics (e.g. processor C states, USB autosuspend) that don't > > make sense to virtualize. Many events in /proc/timer_stats are > > accocunted to pid 0 (swapper/idle). I think the question is whether a > > pidns-relative slice of timer events will be useful or just confusing. > > > > IMHO I find confusing to see all the applications name/pid running on > the whole system (host + containers) from a container. Even if these > applications are not accessible, that gives informations to the > container on what is running on the system and I think we should > consider that as a security breach. > > We can just "hide" the content of this file for a pid namespace > different of the init pid namespace, but that may suppress the > possibility to investigate with powertop the consumption of a specific > appliance, as accurate as it could be... > Hi Daniel, I wouldn't worry too much about powertop http://www.phoronix.com/scan.php?page=article&item=powertop_2010_test&num=1 br. -- Marc ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-07-29 17:40 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-29 12:30 pid namespace isolation broken with powertop Daniel Lezcano
[not found] ` <4C51747A.4050203-GANU6spQydw@public.gmane.org>
2010-07-29 14:35 ` Nathan Lynch
2010-07-29 15:22 ` Daniel Lezcano
[not found] ` <4C519CBB.5020306-GANU6spQydw@public.gmane.org>
2010-07-29 17:40 ` Marc Aymerich
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.