Great, thanks for the information. I was just about to send the patch to
the mailing list, but this seems to unnecessary now.
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1477683
Title:
FPU in qem
I think, that I have the same issue. After some git bisect, I found out
that commit ea32aaf1a72af102b855317b47a22e75ac2965a9 has introduced the
problem. Attached is a patch that fixes the issue for me. Maybe you can
try this out, too.
** Patch added:
"0001-target-i386-Fix-conversion-infinity-from
Gerd Hoffmann writes:
> @@ -255,7 +250,10 @@ enum color_names {
> };
> #endif
>
> -static const uint32_t color_table_rgb[2][8] = {
> +#define QEMU_RGB(r, g, b) \
> +{ .red = r << 8, .green = g << 8, .blue = b << 8, .alpha = 0 }
Are you sure y
Gerd Hoffmann writes:
> Helper function to map qemu colors (32bit integer + matching PixelFormat)
> into pixman_color_t.
Are qemu colors premultiplied? If not, this function should probably
premultiply before returning the color.
Søren
Paolo Bonzini writes:
> Nice cleanup, thanks!
>
> As a followup, there is some confusion between values of the revision
> property (1-4) and PCI device revisions (QXL_REVISION_STABLE_Vxy). They
> are the same right now, but this means that you can do one of the following:
>
> 1) if they are alwa
From: Søren Sandmann Pedersen
Set the default PCI revision to QXL_REVISION_STABLE_V12, and remove
the various #ifs on various subversions of spice-server 0.11.x.
Also set the revision to 3 for the PC 1.2 machine for compatibility.
Signed-off-by: Soren Sandmann
---
configure| 10
Paolo Bonzini writes:
> Il 03/10/2012 19:57, Søren Sandmann ha scritto:
>> From: Søren Sandmann Pedersen
>>
>> When spice-server is newer than 0.12.0, the default revision should be
>> QXL_REVISION_STABLE_V12.
>>
>> Signed-off-by: Soren Sandmann
>
Stefan Weil writes:
> That's strange.
>
> The lines which cause compiler errors look like this:
>
> vfio_eoi(DO_UPCAST(VFIODevice, bars[bar->nr], bar));
>
> There are more uses of DO_UPCAST without any compiler error:
>
> VFIODevice *vdev = DO_UPCAST(VFIODevice, pdev, pdev);
>
> Neither o
Richard Henderson writes:
>> diff --git a/osdep.h b/osdep.h
>> index cb213e0..df89552 100644
>> --- a/osdep.h
>> +++ b/osdep.h
>> @@ -41,8 +41,9 @@ typedef signed int int_fast16_t;
>> #endif
>>
>> /* Convert from a base type to a parent type, with compile time checking.
>> */
>
Stefan Weil writes:
> I don't see any warnings with gcc Debian 4.4.5-8.
>
> Could you please provide more information on your environment
> and the warnings which you get?
>
> Here is a macro which simplifies the version check:
>
> #if QEMU_GNUC_PREREQ(4, 6)
>
> Regards
>
> Stefan Weil
With this
From: Søren Sandmann Pedersen
Apparently GCC 4.5 still warns about "value computed not used" even
with __attribute__((unused)). Fix this by only doing the compile time
check on gcc > 4.5.
Signed-off-by: Soren Sandmann
---
I need this patch to get qemu to compile with GCC 4.5, but
From: Søren Sandmann Pedersen
When spice-server is newer than 0.12.0, the default revision should be
QXL_REVISION_STABLE_V12.
Signed-off-by: Soren Sandmann
---
hw/qxl.h |3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/hw/qxl.h b/hw/qxl.h
index 5553824..4460bb2 100644
Markus Armbruster writes:
> sandm...@cs.au.dk (Søren Sandmann) writes:
>
>> Gerd Hoffmann writes:
>>
>>>> Pixman was actually included in RHEL 5.8 which was released in February
>>>> this year.
>>>
>>> Where is it? 'yum list pixm
Gerd Hoffmann writes:
>> Pixman was actually included in RHEL 5.8 which was released in February
>> this year.
>
> Where is it? 'yum list pixman' returns nothing ...
I don't have an installation of 5.8 so I don't know why yum list doesn't
return anything, but pixman-0.22.0 certainly was include
Peter Maydell writes:
> On 25 September 2012 09:47, Gerd Hoffmann wrote:
>> Even though pixman is used by core linux packages it is still a young
>> project. On older distros (RHEL-5 for example) it isn't included and
>> must be compiled manually.
>
> For me "not a standard library package on RH
Gerd Hoffmann writes:
> +static pixman_image_t *pixman_from_displaystate(DisplayState *ds)
> +{
> +PixelFormat *pf = &ds->surface->pf;
> +pixman_format_code_t format;
> +pixman_image_t *image;
> +int type;
> +
> +type = pixman_shifts_to_type(pf->rshift, pf->gshift, pf->bshift)
From: Søren Sandmann Pedersen
This new interface lets spice server inform the guest whether
(a) a client is connected
(b) what capabilities the client has
There is a fixed number (464) of bits reserved for capabilities, and
when the capabilities bits change, the QXL_INTERRUPT_CLIENT interrupt
From: Søren Sandmann Pedersen
We require spice >= 0.8 now, so this flag is always present.
Signed-off-by: Soren Sandmann
---
hw/qxl.c |2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
index 572daa9..57e6536 100644
--- a/hw/qxl.c
+++ b/hw/qx
From: Søren Sandmann Pedersen
---
server/red_worker.c |2 ++
spice-common|2 +-
2 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/server/red_worker.c b/server/red_worker.c
index f87967c..17d9ef8 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -10377,6
From: Søren Sandmann Pedersen
When a new client connects, there may be commands in the ring that it
can't understand, so we need to process these before forwarding new
commands to the client. By doing this after changing the capability
bits we ensure that the new client will never see a co
From: Søren Sandmann Pedersen
---
client/display_channel.cpp |1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/client/display_channel.cpp b/client/display_channel.cpp
index d08072d..49a4c6a 100644
--- a/client/display_channel.cpp
+++ b/client/display_channel.cpp
@@ -652,6
From: Søren Sandmann Pedersen
No new symbols are added, but there is an addition to QXLInterface:
void (*set_client_capabilities)(QXLInstance *qin,
uint8_t client_present,
uint8_t caps[58]);
---
server/spice.h |2
From: Søren Sandmann Pedersen
A new interface
set_client_capabilities (QXLInstance *qin,
uint8_t client_present,
uint8_t caps[58]);
is added to QXLInstance, and spice server is changed to call it
whenever a client connects or disconnects
Søren Sandmann writes:
> Alon Levy writes:
>
>>> ---
>>> server/red_worker.c | 2 ++
>>> spice-common| 2 +-
>>> 2 files changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/server/red_worker.c b/server/red
From: Søren Sandmann Pedersen
This new interface lets spice server inform the guest whether
(a) a client is connected
(b) what capabilities the client has
There is a fixed number (464) of bits reserved for capabilities, and
when the capabilities bits change, the QXL_INTERRUPT_CLIENT interrupt
Søren Sandmann Pedersen writes:
> @@ -1292,7 +1315,7 @@ static void qxl_set_mode(PCIQXLDevice *d, int modenr,
> int loadvm)
>
> d->mode = QXL_MODE_COMPAT;
> d->cmdflags = QXL_COMMAND_FLAG_COMPAT;
> -#ifdef QXL_COMMAND_FLAG_COMPAT_16BPP /* new
Alon Levy writes:
>> ---
>> server/red_worker.c | 2 ++
>> spice-common| 2 +-
>> 2 files changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/server/red_worker.c b/server/red_worker.c
>> index 843f559..23f3464 100644
>> --- a/server/red_worker.c
>> +++ b/server/red_worker.c
>> @@
---
server/red_worker.c | 2 ++
spice-common| 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/server/red_worker.c b/server/red_worker.c
index 843f559..23f3464 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -10377,6 +10377,8 @@ static void handle_new_displ
The client_present field is a byte that is set of non-zero when a
client is connected and to zero when no client is connected.
The client_capabilities[58] array contains 464 bits that indicate the
capabilities of the client. Each bit corresponds to a
SPICE_DISPLAY_CAP_* capability. In particular,
No new symbols are added, but there is an addition to QXLInterface:
void (*set_client_capabilities)(QXLInstance *qin,
uint8_t client_present,
uint8_t caps[58]);
---
server/spice.h | 2 +-
1 file changed, 1 insertion(+), 1
: Soren Sandmann
---
hw/qxl.c | 29 -
hw/qxl.h | 2 +-
2 files changed, 29 insertions(+), 2 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
index c2dd3b4..1f62529 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -901,6 +901,26 @@ static void interface_async_complete(QXLInstance *sin
---
gtk/channel-display.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/gtk/channel-display.c b/gtk/channel-display.c
index 99fe9c9..326ad22 100644
--- a/gtk/channel-display.c
+++ b/gtk/channel-display.c
@@ -682,6 +682,7 @@ static void
spice_display_channel_reset_capabilities(SpiceChannel *
Hi,
Here are new revisions of the capabilities patches. Also included here
is a new SPICE_DISPLAY_CAP_A8_SURFACE capability since this is
logically distinct from the composite command.
Thanks,
Soren
Even though the ability to handle a8 surfaces was added at the same
time as the composite command, they are logically separate, so add a
capability bit to indicate the presence of a8 surfaces.
---
spice/protocol.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/spice/protocol.h b/spice/protoco
Gerd Hoffmann writes:
>> The scheme I had in mind was this:
>>
>> - When a new non-a8-capable client appears, don't send it any of the
>> a8 surfaces
>>
>> - If the client doesn't understand a8 surfaces,
>>
>> - keep all a8 surfaces rendered on the server side
>>
>>
Gerd Hoffmann writes:
>> I don't know of a good way to deal with the situation where the new
>> client is unable to handle existing surfaces.
>
> We need a sensible solution here. If we can't handle capability
> downgrade at runtime the capability negotiation between guest and client
> doesn't m
Alon Levy writes:
>> Good question.
>>
>> I don't know of a good way to deal with the situation where the new
>> client is unable to handle existing surfaces. I suppose in principle
>> spice-server could emulate their existence, sending them as images, but
>> I'm not familiar enough with spice-
Gerd Hoffmann writes:
> On 08/27/12 19:20, Søren Sandmann Pedersen wrote:
>> From: Søren Sandmann Pedersen
>>
>> The client_present field is a byte that is set of non-zero when a
>> client is connected and to zero when no client is connected.
>>
>> The
Hi,
The following patches add the ability for spice-server to advertise
the capabilities of connected clients to guests. They do this through
adding some new fields to QXLRom:
- whether a client is present
- a bit field to indicate which SPICE_DISPLAY_CAP_* capabilities the
client has.
Th
From: Søren Sandmann Pedersen
A new interface
set_client_capabilities (QXLInstance *qin,
uint8_t client_present,
uint8_t caps[58]);
is added to QXLInstance, and spice server is changed to call it
whenever a client connects or disconnects
From: Søren Sandmann Pedersen
This new interface lets spice server inform the guest whether
(a) a client is connected
(b) what capabilities the client has
There is a fixed number (464) of bits reserved for capabilities, and
when the capabilities bits change, the QXL_INTERRUPT_CLIENT interrupt
Hi,
The following patches add the ability for spice-server to advertise
the capabilities of connected clients to guests. They do this through
adding some new fields to QXLRom:
- whether a client is present
- a bit field to indicate which SPICE_DISPLAY_CAP_* capabilities the
client has.
Th
From: Søren Sandmann Pedersen
The client_present field is a byte that is set of non-zero when a
client is connected and to zero when no client is connected.
The client_capabilities[58] array contains 464 bits that indicate the
capabilities of the client. Each bit corresponds to a
From: Søren Sandmann Pedersen
It's not uncommon for an X workload to have more than 1024 pixmaps
live at the same time. Ideally, there wouldn't be any fixed limit like
this, but since we have one, increase it to 4096.
---
ui/spice-display.h |2 +-
1 files changed, 1 insert
Anthony Liguori writes:
> So that's what I'm trying to understand. How far does the guest's
> visibility go? Is the guest totally ignorant of anything other than
> QXL? If so, that's good, and I'm very happy about it :-)
The guest only sees a QXL video device. This video device accepts
comman
Anthony Liguori writes:
> Soeren Sandmann wrote:
> > Hi,
> >
> > Here is an overview of what the current QXL driver does and does not
> > do. The parts of X rendering that are currently being used by cairo
> > and Qt are:
> >
> >
Hi,
Here is an overview of what the current QXL driver does and does not
do. The parts of X rendering that are currently being used by cairo
and Qt are:
- Most of XRender
- Image compositing
- Glyphs
- Trapezoids
- Bits of the core protocol:
- Solid fills
47 matches
Mail list logo