lkml.org 
[lkml]   [2006]   [Nov]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/38] KVM: Create kvm-intel.ko module

* Christoph Hellwig <hch@infradead.org> wrote:

> > please move this from drivers/kvm/ to kernel/kvm/ [or even into a
> > toplevel kvm/ directory] - KVM is not a "driver", KVM enhances the
> > core Linux kernel with hypervisor functionality.
>
> Actually it's exactly a driver. It's a character driver that exposes
> the virtualization features of modern x86 hardware. [...]

you are fundamentally wrong. In the end KVM is a fundamental and complex
infrastructure that enables Linux to provide full hardware capabilities
to another OS via the resources of this OS. This concept justifies a
system call and a place in linux/kernel/. It's not fundamentally limited
to x86 either. Full virtualization (and paravirtualization) makes sense
on any platform. And there's no reason KVM be limited to full
virtualization alone - both paravirtualization and accelerated guest
drivers need a sane hypercall API.

> [...] Pretty similar to things like the msr or mtrr driver that expose
> cpu features as character drivers aswell.

you can expose everything as character drivers and ioctls, but that
doesnt make it the right solution. It might /start out/ as a driver,
because that's an easy to hack model, but the moment something becomes
important enough (and virtualization certainly is such a model) it
demands a system call.

Just like inotify started out as an ioctl hack, but then was
(rightfully) moved to the system-call space. [ Which btw. was on your
request ;-) ]

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-11-30 16:47    [W:0.095 / U:0.300 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site