04 Mar, 2007
18 commits
-
Allocate a distinct inode for every vcpu in a VM. This has the following
benefits:- the filp cachelines are no longer bounced when f_count is incremented on
every ioctl()
- the API and internal code are distinctly clearer; for example, on the
KVM_GET_REGS ioctl, there is no need to copy the vcpu number from
userspace and then copy the registers back; the vcpu identity is derived
from the fd used to make the callRight now the performance benefits are completely theoretical since (a) we
don't support more than one vcpu per VM and (b) virtualization hardware
inefficiencies completely everwhelm any cacheline bouncing effects. But
both of these will change, and we need to prepare the API today.Signed-off-by: Avi Kivity
-
In preparation of some hacking.
Signed-off-by: Avi Kivity
-
This reflects the changed scope, from device-wide to single vm (previously
every device open created a virtual machine).Signed-off-by: Avi Kivity
-
This avoids having filp->f_op and the corresponding inode->i_fop different,
which is a little unorthodox.The ioctl list is split into two: global kvm ioctls and per-vm ioctls. A new
ioctl, KVM_CREATE_VM, is used to create VMs and return the VM fd.Signed-off-by: Avi Kivity
-
The kvmfs inodes will represent virtual machines and vcpus, as necessary,
reducing cacheline bouncing due to inodes and filps being shared.Signed-off-by: Avi Kivity
-
Signed-off-by: Avi Kivity
-
This patch changes the SVM code to intercept SMIs and handle it
outside the guest.Signed-off-by: Joerg Roedel
Signed-off-by: Avi Kivity -
Signed-off-by: Avi Kivity
-
Signed-off-by: Avi Kivity
-
Signed-off-by: Avi Kivity
-
Signed-off-by: Avi Kivity
-
This adds a special MSR based hypercall API to KVM. This is to be
used by paravirtual kernels and virtual drivers.Signed-off-by: Ingo Molnar
Signed-off-by: Avi Kivity -
Besides using an established api, this allows using kvm in older kernels.
Signed-off-by: Markus Rechberger
Signed-off-by: Avi Kivity -
Signed-off-by: Ahmed S. Darwish
Signed-off-by: Dor Laor
Signed-off-by: Avi Kivity -
The whole thing is rotten, but this allows vmx to boot with the guest reboot
fix.Signed-off-by: Markus Rechberger
Signed-off-by: Joerg Roedel
Signed-off-by: Avi Kivity -
Signed-off-by: Avi Kivity
-
This gives it more chances of surviving suspend.
Signed-off-by: Jeremy Katz
Signed-off-by: Avi Kivity -
We fail to mark a page dirty in three cases:
- setting the accessed bit in a pte
- setting the dirty bit in a pte
- emulating a write into a pagetableThis fix adds the missing cases.
Signed-off-by: Avi Kivity
03 Mar, 2007
21 commits
-
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
libata: add CONFIG_PM to libata core layer
libata: add missing CONFIG_PM in LLDs
libata: add missing PM callbacks
pata_qdi: Fix initialisation
[libata] pata_cmd64x: fix driver description in comments
[libata] pata_{legacy,sc1200,sl82c105}: add missing hooks
[libata] change master/slave IDENTIFY order
libata-core: Fix simplex handling -
Noticed by Doug Nazar (via David Miller).
Signed-off-by: Jeff Garzik
-
The information contained within platform_data should be self-contained.
Replace the pointer to a MAC address with the actual MAC address in
struct mv643xx_eth_platform_data.Signed-off-by: Dale Farnsworth
Signed-off-by: Jeff Garzik -
Commit 908b637fe793165b6aecdc875cdca67c4959a1ad removed ETH_DMA_ALIGN
but missed a usage of it in a macro, which broke the build.Signed-off-by: Dave Jones
Signed-off-by: Jeff Garzik -
This missing line caused transmit errors on the Qlogic 4032 chip.
Signed-off-by: Ron Mercer
Signed-off-by: Jeff Garzik -
Signed-off by: Mithlesh Thukral
Signed-off-by: Jeff Garzik
-
Signed-off-by: Mithlesh Thukral
Signed-off-by: Jeff Garzik -
This patch adds a "-ko" tag to the driver version.
Signed-off-by: Divy Le Ray
Signed-off-by: Jeff Garzik -
Fix copyright and license ("regents" should not have ever been used).
Signed-off-by: Brice Goglin
Signed-off-by: Jeff Garzik -
No need to stop tc35815 before resetting the board. This fixes the
build of tc35815 as a module. This also means there is no caller of
tc35815_killall left, so remove that function also.Signed-off-by: Ralf Baechle
Signed-off-by: Jeff Garzik -
…inville/wireless-2.6 into upstream-fixes
-
Conditionalize all PM related stuff in libata core layer using
CONFIG_PM.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Add missing #ifdef CONFIG_PM conditionals around all PM related parts
in libata LLDs.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Some LLDs were missing scsi device PM callbacks while having host/port
suspend support. Add missing ones.Signed-off-by: Tejun Heo
Signed-off-by: Jeff Garzik -
Based upon a report by Andrew Walrond.
Signed-off-by: David S. Miller
-
If you'll recall, over a year ago, I pointed out that the current
Radeon driver erroneously returns -EINVAL for valid blanking codes,
here is a link to that thread:http://lkml.org/lkml/2006/1/28/6
No other driver does this, and it confuses the X server into thinking
that the device does not support blanking properly.I looked again and there is simply no reason for the Radeon driver to
return -EINVAL for FB_BLANK_NORMAL. It claims it wants to do this in
order to convince fbcon to blank in software, right here:if (fb_blank(info, blank))
fbcon_generic_blank(vc, info, blank);to software blank the screen. But it only causes that to happen
in the FB_BLANK_NORMAL case.That makes no sense because the Radeon code does this:
val |= CRTC_DISPLAY_DIS;
in the FB_BLANK_NORMAL case so should be blanking the hardware, and
there is therefore no reason to SW blank by returning -EINVAL.Signed-off-by: David S. Miller
Acked-by: Antonino Daplas -
The QDI init code contains some bugs which mean it only works if you have
a test setup that causes both a successful and failed probe. Fix thisFound by Philip Guo
(Who found it working on code analysis tools not running VLB IDE
controllers)Signed-off-by: Alan Cox
Signed-off-by: Jeff Garzik -
Trivial comment fix, taken out of a larger Alan Cox patch.
Signed-off-by: Jeff Garzik
-
Alan Cox noticed several hooks in pata_* drivers were missing, when
he authored his ->cable_detect hook patches. This patch extracts
just those fixes from Alan's patches, adding the necessary hooks
(usually ->freeze, ->thaw, and ->post_internal_cmd) to the drivers.Signed-off-by: Jeff Garzik
-
2.6.21-rc has horrible problems with libata and PATA cable types (and
thus speeds). This occurs because Tejun fixed a pile of other bugs and
we now do cable detect enforcement for drive side detection properly.Unfortunately we don't do the process around cable detection right. Tejun
identified the problem and pointed to the right Annex in the spec, this patch
implements the needed changes.The basic requirement is that we have to identify the slave before the
master.The patch switches the identify order so that we can do the drive side
detection correctly.[NOTE: patch and description extracted from a larger work written
and signed-off-by Alan Cox]Signed-off-by: Jeff Garzik
-
The initial simplex handling code is fooled if you suspend and resume.
This also causes problems with some single channel controllers which
claim to be simplex.The fix is fairly simple, instead of keeping a flag to remember if we
gave away the simplex channel we remember the actual owner. As the owner
is always part of the host_set we don't even need a refcount.Knowing the owner also means we can reassign simplex DMA channels in
future hotplug code etc if we need toSigned-off-by: Alan Cox
(and a signed-off for the patch I sent before while I remember)
Signed-off-by: Jeff Garzik
02 Mar, 2007
1 commit
-
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
ahci: improve spurious SDB FIS handling
ahci/pata_jmicron: match class not function number
jmicron ATA: reimplement jmicron ATA quirk
pata_jmicron: drop unnecessary device programming in [re]init
libata: blacklist FUJITSU MHT2060BH for NCQ
sata_sil24: kill unused local variable idx in sil24_fill_sg()
libata: clear drvdata in ata_host_release(), take#2