[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100322125440.GB12475@elte.hu>
Date: Mon, 22 Mar 2010 13:54:40 +0100
From: Ingo Molnar <mingo@...e.hu>
To: "Daniel P. Berrange" <berrange@...hat.com>
Cc: Pekka Enberg <penberg@...helsinki.fi>, Avi Kivity <avi@...hat.com>,
Antoine Martin <antoine@...afix.co.uk>,
Olivier Galibert <galibert@...ox.com>,
Anthony Liguori <anthony@...emonkey.ws>,
"Zhang, Yanmin" <yanmin_zhang@...ux.intel.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Sheng Yang <sheng@...ux.intel.com>,
linux-kernel@...r.kernel.org, kvm@...r.kernel.org,
Marcelo Tosatti <mtosatti@...hat.com>,
oerg Roedel <joro@...tes.org>,
Jes Sorensen <Jes.Sorensen@...hat.com>,
Gleb Natapov <gleb@...hat.com>,
Zachary Amsden <zamsden@...hat.com>, ziteng.huang@...el.com,
Arnaldo Carvalho de Melo <acme@...hat.com>,
Fr?d?ric Weisbecker <fweisbec@...il.com>
Subject: Re: [RFC] Unify KVM kernel-space and user-space code into a single
project
* Daniel P. Berrange <berrange@...hat.com> wrote:
> On Mon, Mar 22, 2010 at 02:31:49PM +0200, Pekka Enberg wrote:
> > On Mon, Mar 22, 2010 at 1:48 PM, Ingo Molnar <mingo@...e.hu> wrote:
> > >> What about line number information? ?And the source? ?Into the kernel with
> > >> them as well?
> > >
> > > Sigh. Please read the _very first_ suggestion i made, which solves all that. I
> > > rarely go into discussions without suggesting technical solutions - i'm not
> > > interested in flaming, i'm interested in real solutions.
> > >
> > > Here it is, repeated for the Nth time:
> > >
> > > Allow a guest to (optionally) integrate its VFS namespace with the host side
> > > as well. An example scheme would be:
> > >
> > > ? /guests/Fedora-G1/
> > > ? /guests/Fedora-G1/proc/
> > > ? /guests/Fedora-G1/usr/
> > > ? /guests/Fedora-G1/.../
> > > ? /guests/OpenSuse-G2/
> > > ? /guests/OpenSuse-G2/proc/
> > > ? /guests/OpenSuse-G2/usr/
> > > ? /guests/OpenSuse-G2/.../
> > >
> > > ?( This feature would be configurable and would be default-off, to maintain
> > > ? ?the current status quo. )
> >
> > Heh, funny. That would also solve my number one gripe with virtualization
> > these days: how to get files in and out of guests without having to
> > install extra packages on the guest side and fiddling with mount points on
> > every single guest image I want to play with.
>
> FYI, for offline guests, you can use libguestfs[1] to access & change files
> inside the guest, and read-only access to running guests files. It provides
> access via a interactive shell, APIs in all major languages, and also has a
> FUSE mdule to expose it directly in the host VFS. It could probably be made
> to work read-write for running guests too if its agent were installed inside
> the guest & leverage the new Virtio-Serial channel for comms (avoiding any
> network setup requirements).
>
> Regards,
> Daniel
>
> [1] http://libguestfs.org/
Yes, this is the kind of functionality i'm suggesting.
I'd suggest a different implementation for live guests: to drive this from
within the live guest side of KVM, i.e. basically a paravirt driver for
guestfs. You'd pass file API guests to the guest directly, via the KVM ioctl
or so - and get responses from the guest.
That will give true read-write access and completely coherent (and still
transparent) VFS integration, with no host-side knowledge needed for the
guest's low level (raw) filesystem structure. That's a big advantage.
Yes, it needs an 'aware' guest kernel - but that is a one-off transition
overhead whose cost is zero in the long run. (i.e. all KVM kernels beyond a
given version would have this ability - otherwise it's guest side distribution
transparent)
Even 'offline' read-only access could be implemented by booting a minimal
kernel via qemu -kernel and using a 'ro' boot option. That way you could
eliminate all lowlevel filesystem knowledge from libguestfs. You could run
ext4 or btrfs guest filesystems and FAT ones as well - with no restriction.
This would allow 'offline' access to Windows images as well: a FAT or ntfs
enabled mini-kernel could be booted in read-only mode.
Thanks,
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists