On Fri, Jan 11, 2013 at 08:36:46AM +0900, Kamezawa Hiroyuki wrote: > (2013/01/09 23:16), Michal Privoznik wrote: > >On 09.01.2013 12:01, Gao feng wrote: > >>when we has no host's src mapped to container. > >>there is no .oldroot dir,so libvirt lxc will fail > >>to start when mouting meminfo. > >> > >>in this case,the parameter srcprefix of function > >>lxcContainerMountProcFuse should be NULL.and make > >>this method handle NULL correctly. > >> > >>Signed-off-by: Gao feng <gaofeng@xxxxxxxxxxxxxx> > >>--- > >> src/lxc/lxc_container.c | 4 ++-- > >> 1 file changed, 2 insertions(+), 2 deletions(-) > >> > >>diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c > >>index d234426..9f22923 100644 > >>--- a/src/lxc/lxc_container.c > >>+++ b/src/lxc/lxc_container.c > >>@@ -605,7 +605,7 @@ static int lxcContainerMountProcFuse(virDomainDefPtr def, > >> > >> if ((ret = virAsprintf(&meminfo_path, > >> "%s/%s/%s/meminfo", > >>- srcprefix, LXC_STATE_DIR, > >>+ srcprefix ? srcprefix : "", LXC_STATE_DIR, > >> def->name)) < 0) > >> return ret; > >> > >>@@ -2059,7 +2059,7 @@ static int lxcContainerSetupExtraMounts(virDomainDefPtr vmDef, > >> goto cleanup; > >> > >> /* Mounts /proc/meminfo etc sysinfo */ > >>- if (lxcContainerMountProcFuse(vmDef, "/.oldroot") < 0) > >>+ if (lxcContainerMountProcFuse(vmDef, NULL) < 0) > >> goto cleanup; > >> > >> /* Now we can re-mount the cgroups controllers in the > >> > > > >Now pushed. Thanks. > > > > Isn't it better to add following implicitly ? > > <filesystem type='mount' accessmode='passthrough'> > <source dir='/'/> > <target dir='/'/> > </filesystem> > > Then, non-chroot lxc container will run the same code path with > chroot container. There'd still be one minor difference - /dev is shared in the non-chroot case, while the chroot case has completely private /dev. I agree that it'd be nice to unify the code paths though. There's another issue which is going to require us to refactor the code anyway. Some users want to be able to have mounts from the host inherited into the container. This requires us to remove the pivot_root code and use a different approach to setting up the private root. When doing this change I think it'll be possible unify the 2 codepaths. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list