BEHAVIOUR CHANGE
Currently, on any failure translating an address with BATs, we proceed to
normal segment and page table translation. That's incorrect if the
BAT error was due to permissions, rather than not finding a matching BAT.
We've gotten away with it because a guest would not usually put
t
This patch makes a general cleanup of the address mangling logic in
ppc_hash64_htab_lookup(). In particular it now avoids repeatedly switching
on the segment size. The lack of SLB and multiple segment sizes on 32-bit
means an analogous cleanup is not needed there.
Signed-off-by: David Gibson
--
This patch makes a general cleanup of the ppc_hash32_get_bat() function,
renaming it to ppc_hash32_bat_lookup(). In particular, the new function
only looks for a matching BAT, with the permissions check from the old
function moved to the caller.
Signed-off-by: David Gibson
---
target-ppc/mmu-ha
Previous cleanups have meant the nx field of the mmu_ctx_hash32 structure
is now only used within ppc_hash32_translate(), and so it can be replaced
by a local variable.
Signed-off-by: David Gibson
---
target-ppc/mmu-hash32.c |8
1 file changed, 4 insertions(+), 4 deletions(-)
diff
Currently get_physical_address() first checks to see if translation is
enabled in the MSR, then in the translation on case switches on the mmu
type. Except that for BookE MMUs, translation is always on, and so it
has to switch in the "translation off" case as well and do the same thing
as the tran
It's broken by design. There can be multiple DisplayChangeListener
instances, so they simply can't store state in the (single) DisplayState
struct. Try 'qemu -display gtk -vnc :0', watch it crash & burn.
With DisplayChangeListenerOps having a more sane interface now we can
simply use the Display
DisplayChangeListener is passed now to all DisplayChangeListenerOps
callbacks, so we can use that to access the qxl state and kill the
qxl0 global variable.
Signed-off-by: Gerd Hoffmann
---
hw/qxl.c | 28 +++-
1 file changed, 15 insertions(+), 13 deletions(-)
diff --gi
BEHAVIOUR CHANGE
At present we take the whole of word 1 of the hash PTE as the real page
number used to calculate the translated address. This is incorrect,
because it leaves the flags from the low bits of PTE word 1 in place in the
rpm. We mostly get away with that because the value is later ma
Hi,
This patch series sorts the qemu console data structures. Current state
is that DisplayState is used pretty much everywhere. Which is bad.
With this patch series applied it looks like this instead:
DisplaySurface
Central framebuffer data structure. ui frontents (gtk, sdl,
The eaddr field of mmu_ctx_hash{32,64} is effectively just used to pass the
effective address from get_segment{32,64}() to find_pte{32,64}(). Just
pass it as a normal parameter instead.
Signed-off-by: David Gibson
---
target-ppc/mmu-hash32.c | 12 +---
target-ppc/mmu-hash64.c | 12 +
BEHAVIOUR CHANGE
The ppc hash mmu hashes each virtual address to a primary and secondary
possible hash bucket (aka PTE group or PTEG) each with 8 PTEs. Then we
need a linear search through the PTEs to find the correct one for the
virtual address we're translating.
It is a programming error for t
Switch the few remaining ds_get_* uses in console.c over to the new
surface_* accessors.
While doing so tripped over a few leftovers from commit
a93a4a226a2afba147ba5df688b85d844f537c68 (code using depth == 0
as indicator for textmode rendering). Fixed them up.
Finally dropped ds_get_* helper he
Decouple DisplaySurface allocation & deallocation from DisplayState.
Replace dpy_gfx_resize + dpy_gfx_setdata with a dpy_gfx_replace_surface
function.
This handles the graphic hardware emulation.
Signed-off-by: Gerd Hoffmann
---
hw/arm/nseries.c |7 -
hw/arm/palm.c|7 ---
Rework DisplayStateListener callbacks to not use the DisplayState
any more.
Signed-off-by: Gerd Hoffmann
---
ui/sdl.c | 92 ++
1 file changed, 51 insertions(+), 41 deletions(-)
diff --git a/ui/sdl.c b/ui/sdl.c
index 85eefdf..58f16bc
The code to search for a matching BAT for a virtual address is somewhat
longwinded and awkward. In particular, it relies on seperate size and
validity information being returned from the hash32_bat_size() function
(and 601 specific variant).
We simplify this by having hash32_bat_size() return ins
Rework DisplayStateListener callbacks to not use the DisplayState
any more. Factor out the window size handling to a separate function,
so the zoom callbacks can call that directly instead of abusing the
gd_switch DisplayStateListener callback for that.
Signed-off-by: Gerd Hoffmann
---
ui/gtk.c
Rework DisplayStateListener callbacks to not use the DisplayState
any more.
Signed-off-by: Gerd Hoffmann
---
ui/vnc-enc-tight.c |7 +++--
ui/vnc-jobs.c |1 -
ui/vnc.c | 77 +---
ui/vnc.h |3 +-
4 files changed
BEHAVIOUR CHANGE
Currently if ppc_hash{32,64}_translate() finds a PTE matching the given
virtual address, it will always update the PTE's R & C (Referenced and
Changed) bits. This happens even if the PTE's permissions mean we are
about to deny the translation.
This is clearly a bug, although we
Ask the vga core to update the display. Will trigger dpy_gfx_resize
if needed. More complete than just calling dpy_gfx_resize.
Signed-off-by: Gerd Hoffmann
---
hw/qxl.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/qxl.c b/hw/qxl.c
index 54a8d91..5d830f0 100644
---
On Tue, Mar 12, 2013 at 10:18:12AM +0100, Kevin Wolf wrote:
> Am 10.03.2013 um 10:57 hat Dietmar Maurer geschrieben:
> > > The difference between this approach and Dietmar's series is that the
> > > backup
> > > archive format is implemented outside QEMU and runs as a separate program.
> > >
> >
Currently checking of PTE permission bits is split messily amongst
ppc_hash{32,64}_pp_check(), ppc_hash{32,64}_check_prot() and their callers.
This patch cleans this up to have the new function
ppc_hash{32,64}_pte_prot() compute the page permissions from the SLBE (for
64-bit) or segment register (3
More recent 64-bit hash MMUs support multiple page sizes, and PTEs for
large pages only include the offset of the whole large page. But the qemu
tlb only handles pages of the base size (4k) so we need to break up the
large pages into 4k pieces for the qemu tlb. To do that we have a somewhat
awkwa
After previous cleanups, the many scattered checks of env->mmu_model in
the ppc MMU implementation have, at least for "classic" hash MMUs been
reduced (almost) to a single switch at the top of
cpu_ppc_handle_mmu_fault().
An explicit switch is still a pretty ugly way of handling this though. Now
t
Version 2.06 of the Power architecture describes an additional page
protection mechanism. Each virtual page has a "class" (0-31) recorded in
the PTE. The AMR register contains bits which can prohibit reads and/or
writes on a class by class basis. Interestingly, the AMR is userspace
readable and
DisplayAllocator removal (commit
187cd1d9f30d13f0d0ef682e4d91cfa3e4cbd472) made this a nop.
Signed-off-by: Gerd Hoffmann
---
ui/sdl.c |5 -
1 file changed, 5 deletions(-)
diff --git a/ui/sdl.c b/ui/sdl.c
index 5baffa0..fc4dc1b 100644
--- a/ui/sdl.c
+++ b/ui/sdl.c
@@ -458,11 +458,6 @@ st
qemu_create_surface hands out 32bpp surfaces.
So we can just use color_table_rgb directly.
Signed-off-by: Gerd Hoffmann
---
ui/console.c | 83 +-
1 file changed, 6 insertions(+), 77 deletions(-)
diff --git a/ui/console.c b/ui/console.c
i
In ppc env->access_type is updated by e.g. integer load/stores with
ACCESS_INT floating point load/stores with ACCESS_FLOAT and so forth. In
hash mmu fault paths it can also b set to ACCESS_CODE for instruction
fetch accesses.
But the only place which uses anything more of the access_type than
wh
mmu_ctx_t is currently defined in cpu.h. However it is used for temporary
information relating to mmu translation, and is only used in mmu_helper.c
and (now) mmu-hash{32,64}.c. Furthermore it contains information which
should be specific to particular MMU types. Therefore, move its definition
to
Hi,
a second patch to optimize live migration. I have generated some artifical load
testing for zero pages. Ordinary dup or non dup pages are not affected.
savings for zero pages (test case):
non SSE2:30s -> 26s
SSE2:27s -> 21s
optionally I would suggest optimizing buffer_is_zero
Cornelia Huck writes:
> On Thu, 7 Mar 2013 20:02:21 +0200
> "Michael S. Tsirkin" wrote:
>
>> virtio-s390 on kvm can use a cookie value passed to guest
>
> s/virtio-s390/virtio-ccw/ (to avoid confusion with s390-virtio, which
> was never specced)
>
>> to optimize channel/VQ lookups.
>> Document th
Il 12/03/2013 11:51, Peter Lieven ha scritto:
> Hi,
>
> a second patch to optimize live migration. I have generated some
> artifical load
> testing for zero pages. Ordinary dup or non dup pages are not affected.
>
> savings for zero pages (test case):
> non SSE2:30s -> 26s
> SSE2:27
> It's a slippery slope to put VMA into QEMU. What will you say when patches
> for
> OVF or some other format turn up?
I agree, we should concentrate to have the basic framework. Time will show what
archive
format people prefer.
Am 12.03.2013 um 12:11 schrieb Paolo Bonzini :
> Il 12/03/2013 11:51, Peter Lieven ha scritto:
>> Hi,
>>
>> a second patch to optimize live migration. I have generated some
>> artifical load
>> testing for zero pages. Ordinary dup or non dup pages are not affected.
>>
>> savings for zero pages
Am 12.03.2013 um 11:50 hat Stefan Hajnoczi geschrieben:
> On Tue, Mar 12, 2013 at 10:18:12AM +0100, Kevin Wolf wrote:
> > Maybe we could consider having the backup tool inside the qemu.git tree
> > and thus provide a common format that management applications can choose
> > to use, but still have i
With previous cleanups made, the 32-bit and 64-bit pte_check*() functions
are pretty trivial and only have one call site. This patch therefore
clarifies the overall code flow by folding those functions into their
call site.
Signed-off-by: David Gibson
---
target-ppc/mmu-hash32.c | 48
DisplayChangeListener is passed now to all DisplayChangeListenerOps
callbacks, so we can use that to access the spice display state and
kill the sdpy global variable.
Signed-off-by: Gerd Hoffmann
---
ui/spice-display.c | 30 --
1 file changed, 16 insertions(+), 14 d
> OVF isn't an image format. I would really like to produce OVA archives, with a
> OVF description passed by the management tool and images in one of our native
> formats. If this isn't streamable though (as I expect), tbat would be more for
> storing an archive of qcow2s instead of VMAs.
OVF does
Currently the ppc_hash{32,64}_pte_update_flags() helper functions update a
PTE's referenced and changed bits as necessary to reflect the access. It
is somewhat long winded, though. This patch open codes them in their
(single) callers, in a simpler way.
Signed-off-by: David Gibson
---
target-pp
> OVF isn't an image format. I would really like to produce OVA archives, with a
> OVF description passed by the management tool
Another interesting part is how you translate a libvirt configuration into ovf
description, and back - without losing any information?
find_pte{32,64{() do several things. First they search through a PTEG
ooking for a PTE matching our virtual address. Then they do permissions
checking and other processing on that PTE.
This patch separates the search by VA out from the rest. The search is
combined with the pte{32,64}_match() fu
For softmmu builds the interface from the generic code to the target
specific MMU implementation is through the tlb_fill() function. For ppc
this is currently in mem_helper.c, whereas it would make more sense in
mmu_helper.c. This patch moves it, which also allows
cpu_ppc_handle_mmu_fault() to be
ppc_hash{32,64}_handle_mmu_fault() is now the only caller of
ppc_hash{32,64{_translate(), so this patch combines them together. This
means that instead of one returning a variety of non-obvious error codes
which then get translated into the various mmu exception conditions, we can
just generate th
mmu_helper.c is, for obvious reasons, almost entirely concerned with
softmmu builds of qemu. However, it does contain one stub function which
is used when CONFIG_USER_ONLY=y - the user only versoin of
cpu_ppc_handle_mmu_fault, which always triggers an exception. The entire
rest of the file is sur
BEHAVIOUR CHANGE
Currently, for 64-bit hash mmu, the execute protection bit placed into the
qemu tlb is based only on the N (No execute) bit from the PTE. However,
No Execute can also be set at the segment level. We do check this on
execute faults, but this still means we could incorrectly allow
After previous work, ppc_hash{32,64}_get_physical_address() are almost
trivial wrappers around get_segment{32,64}() which does nearly all the work of
translating an address according to the hash mmu model. Therefore combine the
two functions into one, under the better name of
ppc_hash{32,64}_trans
Il 12/03/2013 12:20, Peter Lieven ha scritto:
>> * zero pages remain zero, and thus are only processed once
>
> you are right this will be the case.
>
>>
>> * non-zero pages are modified often, and thus are processed multiple times.
>>
>> Your patch adds overhead in the case where a page is non-z
Replace the dpy_gfx_resize and dpy_gfx_setdata DisplayChangeListener
callbacks with a dpy_gfx_switch callback which notifies the ui code
when the framebuffer backing storage changes.
Signed-off-by: Gerd Hoffmann
---
hw/qxl.c |9 +
include/ui/console.h |7 +
Add convinence wrappers to query DisplaySurface properties.
Simliar to ds_get_*, but operating in the DisplaySurface
not the DisplayState.
With this patch in place ui frontents can stop using DisplayState
in the rendering code paths, they can simply operate using the
DisplaySurface passed in via d
find_pte{32,64}() are not particularly well named. They only "find" a PTE
within a given PTE group, and they also do permissions checking and other
things.
This patch makes it somewhat close to matching the name, by folding the
search of both primary and secondary hash bucket into it, along with
Am 12.03.2013 um 12:46 schrieb Paolo Bonzini :
> Il 12/03/2013 12:20, Peter Lieven ha scritto:
>>> * zero pages remain zero, and thus are only processed once
>>
>> you are right this will be the case.
>>
>>>
>>> * non-zero pages are modified often, and thus are processed multiple times.
>>>
>
Rework DisplayStateListener callbacks to not use the DisplayState
any more.
Signed-off-by: Gerd Hoffmann
---
hw/qxl-render.c|2 +-
hw/qxl.c |3 ++-
include/ui/spice-display.h |2 +-
ui/spice-display.c | 31 ---
4 fil
Now that nobody depends on DisplayState in DisplayChangeListener
callbacks any more we can remove the parameter from all callbacks.
Signed-off-by: Gerd Hoffmann
---
hw/qxl.c |5 +
include/ui/console.h | 12 ++--
ui/cocoa.m |5 +
ui/console.c
Currently the hash mmu versionsof get_phys_page_debug() use the same
ppc64_hash64_translate() function to do the translation logic as the normal
mm fault handler code.
That sounds like a good idea, but has some complications. The debug path
doesn't need, or even want some parts of the full transla
Rework DisplayStateListener callbacks to not use the DisplayState
any more.
Signed-off-by: Gerd Hoffmann
---
ui/cocoa.m | 35 ++-
1 file changed, 10 insertions(+), 25 deletions(-)
diff --git a/ui/cocoa.m b/ui/cocoa.m
index 73843f4..9a56fb8 100644
--- a/ui/cocoa
Split callbacks into separate Ops struct. Pass DisplayChangeListener
pointer as first argument to all callbacks. Uninline a bunch of
display functions and move them from console.h to console.c
Signed-off-by: Gerd Hoffmann
---
hw/qxl.c | 18 ++--
include/ui/console.h |
Il 12/03/2013 12:51, Peter Lieven ha scritto:
>> > buffer_is_zero is used in somewhat special cases (block
>> > streaming/copy-on-read) where throughput doesn't really matter, unlike
>> > is_dup_page/find_zero_bit which are used in migration. But you can use
>> > similar code for is_dup_page and b
Am 12.03.2013 um 13:02 schrieb Paolo Bonzini :
> Il 12/03/2013 12:51, Peter Lieven ha scritto:
buffer_is_zero is used in somewhat special cases (block
streaming/copy-on-read) where throughput doesn't really matter, unlike
is_dup_page/find_zero_bit which are used in migration. But
On Tue, Mar 12, 2013 at 12:22 PM, Kevin Wolf wrote:
> Am 12.03.2013 um 11:50 hat Stefan Hajnoczi geschrieben:
>> On Tue, Mar 12, 2013 at 10:18:12AM +0100, Kevin Wolf wrote:
>> > Maybe we could consider having the backup tool inside the qemu.git tree
>> > and thus provide a common format that manag
On Tue, Mar 12, 2013 at 12:15 PM, Dietmar Maurer wrote:
>> It's a slippery slope to put VMA into QEMU. What will you say when patches
>> for
>> OVF or some other format turn up?
>
> I agree, we should concentrate to have the basic framework. Time will show
> what archive
> format people prefer.
Il 11/03/2013 23:15, Andreas Färber ha scritto:
>> > Hi; I'm currently looking at fixing the warnings that qemu generates in
>> > MacOSX syslog regarding CPSGetCurrentProcess and
>> > CPSEnableForegroundOperation
>> > being deprecated. The new API for doing this is TransformProcessType(),
>> > whi
The functions CPSGetCurrentProcess and CPSEnableForegroundOperation
are deprecated in newer versions of MacOSX and cause warning messages
to be logged to the system log. Instead, use the new preferred method
of promoting our console process up to a graphical app with menubar
and Dock icon, which is
These patches fix various compiler and runtime warnings QEMU provokes
on MacOSX 10.8. The first two fix a leak and some deprecated functions
which cause warnings in the system log when QEMU runs. The second
two avoid some functions which cause compile time warnings about
use of functions deprecated
In MacOSX 10.6 and above the NSOpenPanel beginSheetForDirectory
method is deprecated. Use the preferred replacements instead.
We retain the original code for use on earlier MacOSX versions
because the replacement methods don't exist before 10.6.
Signed-off-by: Peter Maydell
---
ui/cocoa.m | 16 +
Hi,
On Mon, Mar 11, 2013 at 09:16:34AM +, Chijianchun wrote:
> http://lists.gnu.org/archive/html/qemu-devel/2012-12/msg02693.html
>
>
>
> one this patch, you say it does not support for windows, Does it support
> now?
>
no,it still does not work for windows. It is most likely some seabi
Avoid the NSOpenPanel filename method (deprecated in MacOSX 10.6)
in favour of using the URL method and extracting the path from the
resulting NSUrl object.
Signed-off-by: Peter Maydell
---
ui/cocoa.m | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ui/cocoa.m b/ui/cocoa.m
ind
On MacOSX 10.8 QEMU provokes system log messages:
11/03/2013 17:03:29.998 qemu-system-arm[42586]: objc[42586]: Object
0x7ffbf9c2f3b0 of class NSScreen autoreleased with no pool in place - just
leaking - break on objc_autoreleaseNoPool() to debug
11/03/2013 17:03:29.999 qemu-system-arm[42586]: objc
Hi ! i am trying to emulate mips on Qemu but at some point the kernel is
getting a hard interrupt from Qemu which the kernel is not able to
understand and makes it a spurious interrupt.Can any one tell me that which
part of the Qemu code will tell me the source or any information about that
hard in
From: Christian Borntraeger
This patch fixes unplugging a virtio-ccw device. We no
longer need to do that in virtio-ccw since common code does now
proper handling.
Signed-off-by: Christian Borntraeger
Signed-off-by: Jens Freimann
Signed-off-by: Cornelia Huck
---
hw/s390x/virtio-ccw.c |1
Make virtio-rng devices available for s390-ccw-virtio machines.
Signed-off-by: Cornelia Huck
---
hw/s390x/virtio-ccw.c | 60 +
hw/s390x/virtio-ccw.h |2 ++
2 files changed, 62 insertions(+)
diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virti
Hi,
here is my current virtio-ccw patch queue. Please pull.
The following changes since commit fe3cc14fd83e0c8f376d849ccd0fc3433388442d:
Merge remote-tracking branch 'quintela/migration.next' into staging
(2013-03-11 08:30:34 -0500)
are available in the git repository at:
git://github.co
On 12 March 2013 08:37, wrote:
> From: KONRAD Frederic
>
> These structures must be made public to avoid two memory allocations for
> refactored virtio devices.
>
> Signed-off-by: KONRAD Frederic
> Reviewed-by: Andreas Färber
Reviewed-by: Peter Maydell
-- PMM
On 12 March 2013 09:22, wrote:
> From: KONRAD Frederic
>
> The configuration field must not be a pointer as it will be used for
> virtio-blk
> properties. So *blk is replaced by blk in VirtIOBlock structure.
>
> Signed-off-by: KONRAD Frederic
Reviewed-by: Peter Maydell
-- PMM
On Tue, Mar 12, 2013 at 05:53:51PM +0500, Muhammad Nouman wrote:
> Hi ! i am trying to emulate mips on Qemu but at some point the kernel is
> getting a hard interrupt from Qemu which the kernel is not able to understand
> and makes it a spurious interrupt.Can any one tell me that which part of the
Hi
today we got a very small call, talking about GSOC projects.
Please go to the wiki page if you have any project that you want to
mentor.
Stephan explains GSOC.
Overview of mentoring for Google Summer of Code 2013:
* Post project ideas here: http://wiki.qemu.org/Google_Summer_of_Code_2013
On 12 March 2013 09:22, wrote:
> /* The ID for virtio_block */
> @@ -130,4 +134,28 @@ typedef struct VirtIOBlock {
> #define DEFINE_VIRTIO_BLK_FEATURES(_state, _field) \
> DEFINE_VIRTIO_COMMON_FEATURES(_state, _field)
>
> +#ifdef CONFIG_VIRTIO_BLK_DATA_PLANE
> +#define DEFINE_DATA_PLAN
With this patch QEMU handles qAttached request from gdb. When QEMU
replies 1, GDB sends a "detach" command at the end of a debugging
session otherwise GDB sends "kill".
The default value for qAttached is 1 on system emulation and 0 on user
emulation.
We introduce a new command line option. It's a
The requirements described in this patch are implemented by "Add GDB
qAttached support".
This reverts commit 00e94dbc7fd0110b0555d59592b004333adfb4b8.
Signed-off-by: Fabien Chouteau
---
gdbstub.c |2 --
1 file changed, 2 deletions(-)
diff --git a/gdbstub.c b/gdbstub.c
index de95849..ee5712
Fabien Chouteau (2):
Add GDB qAttached support
Revert "gdbstub: Do not kill target in system emulation mode"
gdbstub.c | 40 +---
include/exec/gdbstub.h |2 ++
qemu-options.hx| 17 +
vl.c |3
On 12/03/2013 15:28, Peter Maydell wrote:
On 12 March 2013 09:22, wrote:
/* The ID for virtio_block */
@@ -130,4 +134,28 @@ typedef struct VirtIOBlock {
#define DEFINE_VIRTIO_BLK_FEATURES(_state, _field) \
DEFINE_VIRTIO_COMMON_FEATURES(_state, _field)
+#ifdef CONFIG_VIRTIO_BLK_D
On 2013-03-12 15:31, Fabien Chouteau wrote:
> With this patch QEMU handles qAttached request from gdb. When QEMU
> replies 1, GDB sends a "detach" command at the end of a debugging
> session otherwise GDB sends "kill".
>
> The default value for qAttached is 1 on system emulation and 0 on user
> em
The options are passed down to the block drivers, which are supposed to
remove all options they have processed. Anything that is left over in
the end is an unknown option and results in an error.
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
Reviewed-by: Stefan Hajnoczi
---
block.c | 32 ++
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
Reviewed-by: Stefan Hajnoczi
---
block.c | 4 ++--
block/bochs.c | 2 +-
block/cloop.c | 2 +-
block/cow.c | 2 +-
block/dmg.c | 2 +-
block/parallels.c | 2 +-
block/
From: Stefan Hajnoczi
update_refcount() affects the refcount cache, it does not write to disk.
Therefore bdrv_flush(bs->file) does nothing. We need to flush the
refcount cache in order to write out the refcount updates!
While we're here also add error returns when qcow2_cache_flush() fails.
Si
Any non-default -drive options are now passed down to the block drivers.
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
Reviewed-by: Stefan Hajnoczi
---
blockdev.c | 69 +-
1 file changed, 59 insertions(+), 10 deletions(-)
diff --
This adds a function that adds all entries of a QDict to a QemuOpts if
the keys are known, and leaves only the rest in the QDict.
This way a single QDict of -drive options can be processed in multiple
places (generic block layer, block driver, backing file block driver,
etc.), where each part pick
It doesn't do anything yet except storing the options QDict in the
BlockDriverState.
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
Reviewed-by: Stefan Hajnoczi
---
block.c | 47 +++
block/blkverify.c | 2 +-
block/qcow2
From: Stefan Hajnoczi
Users of qcow2_update_snapshot_refcount() do not flush consistently.
qcow2_snapshot_create() flushes but qcow2_snapshot_goto() and
qcow2_snapshot_delete() do not.
Solve this by moving the bdrv_flush() into
qcow2_update_snapshot_refcount().
Signed-off-by: Stefan Hajnoczi
S
From: Stefan Hajnoczi
We already flush when the function completes. There is no need to flush
after every compressed cluster.
Signed-off-by: Stefan Hajnoczi
Signed-off-by: Kevin Wolf
---
block/qcow2-refcount.c | 4
1 file changed, 4 deletions(-)
diff --git a/block/qcow2-refcount.c b/bl
qcow2 images now accept a boolean lazy_refcounts options. Use it like
this:
-drive file=test.qcow2,lazy_refcounts=on
If the option is specified on the command line, it overrides the default
specified by the qcow2 header flags that were set when creating the
image.
Signed-off-by: Kevin Wolf
Re
On 12 March 2013 14:37, KONRAD Frédéric wrote:
> On 12/03/2013 15:28, Peter Maydell wrote:
>>
>> On 12 March 2013 09:22, wrote:
>>>
>>> /* The ID for virtio_block */
>>> @@ -130,4 +134,28 @@ typedef struct VirtIOBlock {
>>> #define DEFINE_VIRTIO_BLK_FEATURES(_state, _field) \
>>> D
On Mon, Mar 11, 2013 at 03:18:49PM -0600, Alex Williamson wrote:
> When creating capabilities devices need to know what kind of bus
> they're on. If we're on an express bus without a parent_dev, then
> we're on the root complex and need to use integrated endpoints
> rather than standard endpoints.
On 12 March 2013 09:22, wrote:
> From: KONRAD Frederic
>
> Here the virtio-blk-pci is modified for the new API. The device
> virtio-blk-pci extends virtio-pci. It creates and connects a virtio-blk
> during the init. The properties are not changed.
>
> Signed-off-by: KONRAD Frederic
Reviewed-by
On 12 March 2013 09:22, wrote:
> From: KONRAD Frederic
>
> Here the virtio-blk-s390 is modified for the new API. The device
> virtio-blk-s390 extends virtio-s390-device as before. It creates and
> connects a virtio-blk during the init. The properties are not modified.
>
> Signed-off-by: KONRAD F
Signed-off-by: Kevin Wolf
Reviewed-by: Eric Blake
Reviewed-by: Stefan Hajnoczi
---
include/qapi/qmp/qdict.h | 2 ++
qobject/qdict.c | 22 ++
2 files changed, 24 insertions(+)
diff --git a/include/qapi/qmp/qdict.h b/include/qapi/qmp/qdict.h
index 6d9a4be..685b2e3 1
On 12 March 2013 09:22, wrote:
> From: KONRAD Frederic
>
> Here the virtio-ccw-s390 is modified for the new API. The device
> virtio-ccw-s390 extends virtio-ccw-device as before. It creates and
> connects a virtio-ccw during the init. The properties are not modified.
>
> Signed-off-by: KONRAD Fr
On 12 March 2013 09:22, wrote:
> From: KONRAD Frederic
>
> As all virtio-blk-* are switched to the new API, we can remove the separate
> init/exit for the old API.
>
> Signed-off-by: KONRAD Frederic
Reviewed-by: Peter Maydell
-- PMM
On 12 March 2013 09:22, wrote:
> From: KONRAD Frederic
>
> Use QOM casts inside virtio-blk.
>
> Signed-off-by: KONRAD Frederic
Reviewed-by: Peter Maydell
-- PMM
On 12 March 2013 09:22, wrote:
> From: KONRAD Frederic
>
> The qdev field is no longer needed, just drop it.
>
> Signed-off-by: KONRAD Frederic
Reviewed-by: Peter Maydell
-- PMM
On 03/12/2013 03:08 AM, Lei Li wrote:
> Signed-off-by: Lei Li
> ---
> qga/commands-win32.c | 34 ++
> 1 file changed, 34 insertions(+)
>
> +void qmp_guest_set_time(int64_t time_ns, Error **errp)
> +{
> +SYSTEMTIME ts;
> +FILETIME tf;
> +LONGLONG time;
On 12/03/2013 15:42, Peter Maydell wrote:
On 12 March 2013 14:37, KONRAD Frédéric wrote:
On 12/03/2013 15:28, Peter Maydell wrote:
On 12 March 2013 09:22, wrote:
/* The ID for virtio_block */
@@ -130,4 +134,28 @@ typedef struct VirtIOBlock {
#define DEFINE_VIRTIO_BLK_FEATURES(_state,
101 - 200 of 278 matches
Mail list logo