[Devel] Re: [PATCH 00/10] Containers(V10): Generic Process Containers
Serge E. Hallyn
serue at us.ibm.com
Mon Jun 4 13:51:06 PDT 2007
Quoting Paul Menage (menage at google.com):
> On 6/4/07, Serge E. Hallyn <serue at us.ibm.com> wrote:
> >
> >2. I can't delete containers because of the files they contain, and
> >am not allowed to delete those files by hand.
> >
>
> You should be able to delete a container with rmdir as long as it's
> not in use - its control files will get cleaned up automatically.
>
> If you're getting an EBUSY error that means that either there are
> still tasks running in the container (look in the "tasks" file) or
> else there's a reference counting bug somewhere.
>
> Can you post an example to reproduce the problem?
here is an excerpt:
[root at linuz11 root]# mount -t container -ocpuset cpuset /containers/
[root at linuz11 root]# ls /containers/
cpu_exclusive memory_pressure mems tasks
cpus memory_pressure_enabled notify_on_release
mem_exclusive memory_spread_page releasable
memory_migrate memory_spread_slab release_agent
[root at linuz11 root]# mkdir /containers/1
[root at linuz11 root]# echo 0 > /containers/1/mems
[root at linuz11 root]# echo 0 > /containers/1/cpus
[root at linuz11 root]# sh
sh-2.05b# echo $$ > /containers/1/tasks
sh-2.05b# cat /containers/1/tasks
4325
4326
sh-2.05b# exit
[root at linuz11 root]# ls /containers/1/tasks
/containers/1/tasks
[root at linuz11 root]# rm -rf /containers/1
rm: cannot remove `/containers/1/memory_spread_slab': Operation not
permitted
rm: cannot remove `/containers/1/memory_spread_page': Operation not
permitted
rm: cannot remove `/containers/1/memory_pressure': Operation not
permitted
rm: cannot remove `/containers/1/memory_migrate': Operation not
permitted
rm: cannot remove `/containers/1/mem_exclusive': Operation not permitted
rm: cannot remove `/containers/1/cpu_exclusive': Operation not permitted
rm: cannot remove `/containers/1/mems': Operation not permitted
rm: cannot remove `/containers/1/cpus': Operation not permitted
rm: cannot remove `/containers/1/releasable': Operation not permitted
rm: cannot remove `/containers/1/notify_on_release': Operation not
permitted
rm: cannot remove `/containers/1/tasks': Operation not permitted
Ah, I see the second time I typed 'ls /containers/1/tasks' instead of
cat. When I then used cat, the file was empty, and I got an oops just
like Pavel reported. I bet if I solve the problem he reported, then I
solve my problem :)
thanks,
-serge
More information about the Devel
mailing list