linux-kvm mailing list

FromSubjectsort iconDate
Alex Williamson
[PATCH 3/5] pci: Error on PCI capability collisions
Nothing good can happen when we overlap capabilities Signed-off-by: Alex Williamson <alex.williamson@redhat.com> --- hw/pci.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) diff --git a/hw/pci.c b/hw/pci.c index b08113d..288d6fd 100644 --- a/hw/pci.c +++ b/hw/pci.c @@ -1845,6 +1845,20 @@ int pci_add_capability(PCIDevice *pdev, uint8_t cap_id, if (!offset) { return -ENOSPC; } + } else { + int i; + + for (i = ...
Dec 3, 12:33 pm 2010
Alex Williamson
[PATCH 2/5] pci: MSI-X capability is 12 bytes, not 16, M ...
Signed-off-by: Alex Williamson <alex.williamson@redhat.com> --- hw/pci.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/pci.h b/hw/pci.h index 34955d8..7c52637 100644 --- a/hw/pci.h +++ b/hw/pci.h @@ -124,8 +124,8 @@ enum { #define PCI_CAPABILITY_CONFIG_MAX_LENGTH 0x60 #define PCI_CAPABILITY_CONFIG_DEFAULT_START_ADDR 0x40 -#define PCI_CAPABILITY_CONFIG_MSI_LENGTH 0x10 -#define PCI_CAPABILITY_CONFIG_MSIX_LENGTH 0x10 +#define ...
Dec 3, 12:33 pm 2010
Alex Williamson
[PATCH 0/5] Extra capabilities for device assignment
Now that we've got PCI capabilities cleaned up and device assignment using them, we can add more capabilities to be guest visible. This adds minimal PCI Express, PCI-X, and Power Management, along with direct passthrough Vital Product Data and Vendor Specific capabilities. With this, devices like tg3, bnx2, vxge, and potentially quite a few others that didn't work previously should be happier. Thanks, Alex --- Alex Williamson (5): device-assignment: pass through and stub more PCI ...
Dec 3, 12:33 pm 2010
Alex Williamson
[PATCH 4/5] device-assignment: Error checking when addin ...
Signed-off-by: Alex Williamson <alex.williamson@redhat.com> --- hw/device-assignment.c | 14 +++++++++----- 1 files changed, 9 insertions(+), 5 deletions(-) diff --git a/hw/device-assignment.c b/hw/device-assignment.c index 6d6e657..838bf89 100644 --- a/hw/device-assignment.c +++ b/hw/device-assignment.c @@ -1288,7 +1288,7 @@ static int assigned_device_pci_cap_init(PCIDevice *pci_dev) { AssignedDevice *dev = container_of(pci_dev, AssignedDevice, dev); PCIRegion *pci_region = ...
Dec 3, 12:34 pm 2010
Alex Williamson
[PATCH 5/5] device-assignment: pass through and stub mor ...
Some drivers depend on finding capabilities like power management, PCI express/X, vital product data, or vendor specific fields. Now that we have better capability support, we can pass more of these tables through to the guest. Note that VPD and VNDR are direct pass through capabilies, the rest are mostly empty shells with a few writable bits where necessary. Signed-off-by: Alex Williamson <alex.williamson@redhat.com> --- hw/device-assignment.c | 263 ...
Dec 3, 12:34 pm 2010
Alex Williamson
[PATCH 1/5] device-assignment: Fix off-by-one in header check
Include the first byte at 40h or else access might go to the hardware instead of the emulated config space, resulting in capability loops, since the ordering is different. Signed-off-by: Alex Williamson <alex.williamson@redhat.com> --- hw/device-assignment.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/device-assignment.c b/hw/device-assignment.c index 832c236..6d6e657 100644 --- a/hw/device-assignment.c +++ b/hw/device-assignment.c @@ -410,7 +410,7 @@ ...
Dec 3, 12:33 pm 2010
=?UTF-8?q?Ji=C5=99=C ...
[KVM-Autotest][PATCH][virtio-console] Correcting timeout ...
Catch new exception from kvm_suprocess to avoid killing of tests. --- client/tests/kvm/tests/virtio_console.py | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/client/tests/kvm/tests/virtio_console.py b/client/tests/kvm/tests/virtio_console.py index d8d2143..d083783 100644 --- a/client/tests/kvm/tests/virtio_console.py +++ b/client/tests/kvm/tests/virtio_console.py @@ -468,9 +468,13 @@ def run_virtio_console(test, params, env): ...
Dec 3, 6:13 am 2010
=?UTF-8?q?Ji=C5=99=C ...
[PATCH] Correcting timeout interruption of virtio_consol ...
Catch new exception from kvm_suprocess to avoid killing of tests. --- client/tests/kvm/tests/virtio_console.py | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/client/tests/kvm/tests/virtio_console.py b/client/tests/kvm/tests/virtio_console.py index d8d2143..d083783 100644 --- a/client/tests/kvm/tests/virtio_console.py +++ b/client/tests/kvm/tests/virtio_console.py @@ -468,9 +468,13 @@ def run_virtio_console(test, params, env): ...
Dec 3, 6:10 am 2010
Glauber Costa
[PATCH 0/2] Fix savevm odness related to kvmclock
Some users told me that savevm path is behaving oddly wrt kvmclock. The first oddness is that a guarantee we never made (AFAIK) is being broken: two consecutive "savevm" operations, with the machine stopped in between produces different results, due to the call to KVM_GET_CLOCK ioctl. I believe the assumption that if the vm does not run, its saveable state won't change is fairly reasonable. Maybe we should formally guarantee that? The second patch deals with the fact that this happens even ...
Dec 3, 3:49 am 2010
Glauber Costa
[PATCH 2/2] Do not register kvmclock savevm section if k ...
Usually nobody usually thinks about that scenario (me included and specially), but kvmclock can be actually disabled in the host. It happens in two scenarios: 1. host too old. 2. we passed -kvmclock to our -cpu parameter. In both cases, we should not register kvmclock savevm section. This patch achives that by registering this section only if kvmclock is actually currently enabled in cpuid. The only caveat is that we have to register the savevm section a little bit later, since we won't ...
Dec 3, 3:49 am 2010
Glauber Costa
[PATCH 1/2] make kvmclock value idempotent for stopped machine
Although we never made such commitment clear (well, to the best of my knowledge), some people expect that two savevm issued in sequence in a stopped machine will yield the same results. This is not a crazy requirement, since we don't expect a stopped machine to be updating its state, for any device. With kvmclock, this is not the case, since the .pre_save hook will issue an ioctl to the host to acquire a timestamp, which is always changing. This patch moves the value acquisition to vm_stop. ...
Dec 3, 3:49 am 2010
Glauber Costa
[PATCH] do not try to register kvmclock if the host does ...
With the new Async PF code, some of our initiation code was moved to kvm.c. With that, code that was being issued conditional to kvmclock successful registration (primary cpu registering), started being issued unconditionally. This patch proposes that we protect all registrations inside kvm_register_clock, re-using the kvmclock-enabled parameter for that. This fixes this specific bug, and should protect us from similar changes in the future. Signed-off-by: Glauber Costa ...
Dec 3, 3:41 am 2010
Mr.Karim Kone
YOUR URGENT RESPONCE IS NEEDED.
Dear Friend I want to transfer US$10.5 Million to your bank account. The fund belong to our deceased customer who died with his entire family in Iraq War 2006, leaving nobody for the claim and as such, I decided to contact you to enable us claim the fund. Your share is 40% while 60% for me. This transaction is 100% risky free. Contact me for more details. Thanks, Mr Karim Kone Banque Régionale de Solidarité( BRS), --
Dec 2, 5:53 pm 2010
Avi Kivity
Re: Problems on qemu-kvm unittests
Caused by qemu tightening up -kernel. Easily fixed by using objcopy, I'll post a patch soon. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. --
Dec 3, 3:03 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Agreed ...but I was considering the larger user-base who may be surprised to see their VMs being reported as 100% hogs when they had left it idle. - vatsa --
Dec 3, 11:12 am 2010
Chris Wright
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Heh, was just about to say the same thing ;) --
Dec 3, 10:58 am 2010
Avi Kivity
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
hlt exiting doesn't leave vcpu in the halted state (since hlt has not The halt state is never entered. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. --
Dec 3, 2:36 am 2010
Avi Kivity
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
What's the difference between this and the Linux idle threads? -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. --
Dec 3, 2:40 am 2010
Anthony Liguori
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Yes. There's definitely a use-case to have a hard cap. But I think another common use-case is really just performance isolation. If over the course of a day, you go from 12CU, to 6CU, to 4CU, that might not be that bad of a thing. If the environment is designed correctly, of N nodes, N-1 will always be at capacity so it's really just a single node hat is under utilized. Regards, --
Dec 2, 8:21 pm 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
If we have 3 VMs and want to give them 25% each of a CPU, then having just idle thread would end up giving them 33%. One way of achieving 25% rate limit is to create a "dummy" or "filler" VM, and let it compete for resource, thus rate-limiting everyone to 25% in this case. Essentially we are tackling rate-limit problem by creating additional "filler" VMs/threads that will compete for resource, thus keeping in check how much cpu resource is consumed by "real" VMs. Admittedly not as neat as having ...
Dec 3, 4:21 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
All guest are of equal priorty in this case (that's how we are able to divide time into 25% chunks), so unless we dynamically boost D's priority based on how idle other VMs are, its not going to be easy! - vatsa --
Dec 3, 10:36 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
and at idle/non-idle time as well, which makes the mgmt entity's job rather harder? Anyway, if we are willing to take a patch to burn cycles upon halt (as per Marcello's patch), that's be the best (short-term) solution ..otherwise, something like a filler-thread per-vcpu is more easier than dynamic change of priorities .. - vatsa --
Dec 3, 10:43 am 2010
Chris Wright
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Yeah, I pictured priorties handling this. --
Dec 3, 10:28 am 2010
Marcelo Tosatti
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Well, no. Better to consume hlt time but yield if need_resched or in case of any event which breaks out of kvm_vcpu_block. --
Dec 3, 11:24 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
To tackle this problem, I was thinking of having a fill-thread associated with each vcpu (i.e both belong to same cgroup). Fill-thread consumes idle cycles left by vcpu, but otherwise doesn't compete with it for cycles. - vatsa --
Dec 3, 9:27 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
There's one complication though even with that. How do we compute the real utilization of VM (given that it will appear to be burning 100% cycles)? We need to have scheduler discount the cycles burnt post halt-exit, so more stuff is needed than those simple 3-4 lines! - vatsa --
Dec 3, 10:57 am 2010
Chris Wright
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
That's what Marcelo's suggestion does w/out a fill thread. --
Dec 3, 10:29 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Are we willing to add that to KVM sources? I was working under the constraints of not modifying the kernel (especially avoid adding short term hacks that become unnecessary in longer run, in this case when kernel-based hard limits goes in). - vatsa --
Dec 3, 10:33 am 2010
Avi Kivity
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
What if one of the guest crashes qemu or invokes a powerdown? Suddenly the others get 33% each (with 1% going to my secret round-up account). Doesn't seem like a reliable way to limit cpu. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. --
Dec 3, 2:38 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Some monitoring tool will need to catch that event and spawn a "dummy" VM to consume 25% cpu, bringing back everyone's use to 25% as before. That's admittedly not neat, but that's what we are thinking of atm in absence of a better solution to the problem (ex: kernel scheduler supporting hard-limits). - vatsa --
Dec 3, 4:12 am 2010
Anthony Liguori
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
We've actually done a fair amount of testing with using priorities like this. The granularity is extremely poor because priorities don't map linearly to cpu time allotment. The interaction with background tasks also gets extremely complicated. Regards, --
Dec 3, 10:47 am 2010
Anthony Liguori
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
My first reaction is that it's not terribly important to account the non-idle time in the guest because of the use-case for this model. Eventually, it might be nice to have idle time accounting but I don't see it as a critical feature here. Non-idle time simply isn't as meaningful here as it normally would be. If you have 10 VMs in a normal environment and saw that you had only 50% CPU utilization, you might be inclined to add more VMs. But if you're offering deterministic execution, ...
Dec 3, 11:07 am 2010
Chris Wright
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
OK, good, just wanted to be clear. Because this started as a discussion of hard caps, and it began to sound as if you were no longer advocating I guess it depends on your SLA. We don't have to do anything to give varying CU based on host load. That's the one thing CFS will do for Many clouds do a variation on Small, Medium, Large sizing. So depending on the scheduler (best fit, rr...) even the notion of at capacity may change from node to node and during the time of ...
Dec 2, 8:44 pm 2010
Chris Wright
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Depends on the chargeback model. This would put guest vcpu runtime vs host running guest vcpu time really out of skew. ('course w/out steal and that time it's already out of skew). But I think most models are Who is "you"? cloud user, or cloud service provider's scheduler? On the user side, 50% cpu utilization wouldn't trigger me to add new VMs. On the host side, 50% cpu utilization would have to be measure Sorry, didn't follow here? thanks, -chris --
Dec 3, 11:20 am 2010
Srivatsa Vaddagiri
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
That's not sufficient. Lets we have 3 guests A, B, C that need to be rate limited to 25% on a single cpu system. We create this idle guest D that is 100% cpu hog as per above definition. Now when one of the guest is idle, what ensures that the idle cycles of A is given only to D and not partly to B/C? - vatsa --
Dec 3, 4:57 am 2010
Chris Wright
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
OK, let's say a single PCPU == 12 Compute Units. If the guest is the first to migrate to a newly added unused host, and we are using either non-trapping hlt or Marcelo's non-yielding trapping hlt, then that guest is going to get more CPU than it expected unless there is some throttling mechanism. Specifically, it will get 12CU instead of 1-3CU. Do you agree with that? thanks, -chris --
Dec 2, 7:42 pm 2010
Anthony Liguori
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
I'm really anticipating things like the EC2 micro instance where the CPU allotment is variable. Variable allotments are interesting from a density perspective but having interdependent performance is definitely a problem. Another way to think about it: a customer reports a performance problem at 1PM. With non-yielding guests, you can look at logs and see that the expected capacity was 2CU (it may have changed to 4CU at 3PM). However, without something like non-yielding guests, the ...
Dec 3, 7:25 am 2010
Gleb Natapov
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Async PF completion do not kick vcpu out of a guest mode. It wakes vcpu only if it is waiting on waitqueue. It was done to not generate -- Gleb. --
Dec 3, 5:40 am 2010
Chris Wright
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Right, I think there has to be an external mgmt entity. Because num vcpus is not static. So priorities have to be rebalanaced at vcpu create/destroy time. thanks, -chris --
Dec 3, 10:38 am 2010
Marcelo Tosatti
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Probably yes. The point is, you get the same effect as with the non-trapping hlt but without the complications on low-level VMX/SVM code. Even better if you can do it with fill thread idea. --
Dec 3, 11:10 am 2010
Anthony Liguori
Re: [PATCH] kvm-vmx: add module parameter to avoid trapp ...
Right. I'm not familiar with any models that are actually based on CPU-consumption based accounting. In general, the feedback I've received is that predictable accounting is pretty critical so I don't anticipate something as volatile as CPU-consumption ever being something The question is, why would something care about host CPU utilization? The answer I can think of is, something wants to measure host CPU utilization to identify an underutilized node. One the underutilized node is ...
Dec 3, 11:55 am 2010
Yoshiaki Tamura
Re: [PATCH 05/21] virtio: modify save/load handler to ha ...
I think we can calculate or prepare an internal last_avail_idx, and update the external when inuse is decremented. I'll try Although we try flushing requests one by one making inuse 0, there are cases when it failovers to the secondary when inuse isn't 0. We handle these in flight request on the primary by In case of Kemari, no. We sit between devices and net/block, and queue the requests. After completing each transaction, we flush the requests one by one. So there won't be completion ...
Dec 2, 11:28 pm 2010
Yang, Sheng
Re: Mask bit support's API
Anyway we need ioctls to do so because kernel knows nothing about PCI configuration You mean bit 2 of Command register? I think suppose device would only disable memory when shut down should be acceptable. Also we can hook at disable point as Don't agree. Then you got duplicate between kernel and userspace. Also the Don't understand why we need turn to qemu when everything is ready in kernel. And pending bit is still in the scope of PCI spec. Also it's can only be written by the ...
Dec 2, 8:03 pm 2010
Gleb Natapov
Re: [PATCHv6 00/16] boot order specification
I already posted here code that maps PCI rom to PCI device path. Why do If you propose that then you probably misunderstand the problem I am trying to tackle. Qemu should be able to specify boot order for newly created machine with arbitrary HW configuration without making user to look at F12 menu. Actually at this point there is not human user at all. All the process from machine creation till OS installation is completely unattended. Looking at the BBS spec in several places they say that if NV ...
Dec 2, 10:55 pm 2010
Kevin O'Connor
Re: [PATCHv6 00/16] boot order specification
As before, a safe heuristic would be to request a rom boot for any device with a pci rom that the user requests to boot from. Note, your original proposal included a boot method: /rom@genroms/linuxboot.bin Exactly - look at the F12 menu. (Or, for bonus points, one could write a program that scans roms on the booted coreboot system, presents the user with a menu, and then writes the requested boot method to "bootorder".) Being able to specify which boot method is a requirement for me. ...
Dec 2, 7:01 pm 2010
Peter Lieven
Re: [stable] [PATCH 3/3][STABLE] KVM: add schedule check ...
Is there any reason why this patch is not yet in the stable kernel? virtio_net is still crashing under heavy load in current vanilla kernel. --
Dec 3, 8:44 am 2010
previous daytodaynext day
December 2, 2010December 3, 2010None