[1/1] qemu: Fix the qemu GL application start failure.

Submitted by Zhai, Edwin on April 12, 2011, 1:42 a.m.

Details

Message ID 45df8d07a8e35223e8a53033b4e0d208d8829c04.1302572384.git.edwin.zhai@intel.com
State New, archived
Headers show

Commit Message

Zhai, Edwin April 12, 2011, 1:42 a.m.
From: Zhai Edwin <edwin.zhai@intel.com>

Some turn-on macro/variable are re-arranged, buffer pointer is extended to
support 32/64b combination of target/host.

[YOCTO #688] fixed.

Signed-off-by:  Zhai Edwin <edwin.zhai@intel.com>
---
 .../qemu/qemu-0.14.0/qemugl-fix.patch              |   70 ++++++++++++++++++++
 meta/recipes-devtools/qemu/qemu_0.14.0.bb          |    1 +
 2 files changed, 71 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch

Patch hide | download patch | download mbox

diff --git a/meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch b/meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch
new file mode 100644
index 0000000..c395b60
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch
@@ -0,0 +1,70 @@ 
+This patch fix GL application start failure on qemu 0.14.0.
+
+Some turn-on macro/variable are re-arranged, buffer pointer is extended to
+support 32/64b combination of target/host.
+
+This is not perfect fix, and we need consider other GL alternatives in future.
+
+Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
+Index: qemu-0.14.0/target-i386/opengl_func.h
+===================================================================
+--- qemu-0.14.0.orig/target-i386/opengl_func.h	2011-04-08 16:43:46.000000000 +0800
++++ qemu-0.14.0/target-i386/opengl_func.h	2011-04-08 16:45:55.000000000 +0800
+@@ -26,8 +26,9 @@
+ #include "mesa_glext.h"
+ 
+ /* Argument list are internally of a type that can hold a target pointer
+- * or a host pointer.  */
+-typedef target_phys_addr_t arg_t;
++ * or a host pointer. If 32b target runs on 64b host, it should be big enough
++ * to hold host pointer */
++typedef long unsigned int arg_t;
+ 
+ enum {
+     TYPE_NONE,
+Index: qemu-0.14.0/target-i386/translate.c
+===================================================================
+--- qemu-0.14.0.orig/target-i386/translate.c	2011-04-08 16:19:15.000000000 +0800
++++ qemu-0.14.0/target-i386/translate.c	2011-04-08 16:22:03.000000000 +0800
+@@ -2652,17 +2652,19 @@
+     s->is_jmp = DISAS_TB_JUMP;
+ }
+ 
+-int enable_gl = 0;
++extern int enable_gl;
+ 
+ /* an interrupt is different from an exception because of the
+    privilege checks */
+ static void gen_interrupt(DisasContext *s, int intno,
+                           target_ulong cur_eip, target_ulong next_eip)
+ {
++#if !defined(CONFIG_USER_ONLY)
+     if (enable_gl && intno == 0x99) {
+         gen_helper_opengl();
+         return;
+     }
++#endif
+ 
+     if (s->cc_op != CC_OP_DYNAMIC)
+         gen_op_set_cc_op(s->cc_op);
+Index: qemu-0.14.0/vl.c
+===================================================================
+--- qemu-0.14.0.orig/vl.c	2011-04-08 16:11:43.000000000 +0800
++++ qemu-0.14.0/vl.c	2011-04-08 16:20:05.000000000 +0800
+@@ -229,7 +229,7 @@
+ unsigned int nb_prom_envs = 0;
+ const char *prom_envs[MAX_PROM_ENVS];
+ int boot_menu;
+-extern int enable_gl;
++int enable_gl = 0;
+ 
+ typedef struct FWBootEntry FWBootEntry;
+ 
+@@ -1909,6 +1909,7 @@
+     return popt;
+ }
+ 
++#define TARGET_OPENGL_OK
+ int main(int argc, char **argv, char **envp)
+ {
+     const char *gdbstub_dev = NULL;
diff --git a/meta/recipes-devtools/qemu/qemu_0.14.0.bb b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
index d8535b2..e440759 100644
--- a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
+++ b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
@@ -24,6 +24,7 @@  SRC_URI = "\
     file://spice-qxl-locking-fix-for-qemu-kvm.patch \
     file://Detect-and-use-GCC-atomic-builtins-for-locking.patch \
     file://larger_default_ram_size.patch \
+    file://qemugl-fix.patch \
     "
 SRC_URI[md5sum] = "f9d145d5c09de9f0984ffe9bd1229970"
 SRC_URI[sha256sum] = "ba21e84d7853217830e167dae9999cdbff481189c6a0bb600ac7fb7201453108"

Comments

Saul Wold April 12, 2011, 5:18 a.m.
On 04/11/2011 06:42 PM, Zhai Edwin wrote:
> From: Zhai Edwin<edwin.zhai@intel.com>
>
> Some turn-on macro/variable are re-arranged, buffer pointer is extended to
> support 32/64b combination of target/host.
>
> [YOCTO #688] fixed.
>
> Signed-off-by:  Zhai Edwin<edwin.zhai@intel.com>
> ---
>   .../qemu/qemu-0.14.0/qemugl-fix.patch              |   70 ++++++++++++++++++++
>   meta/recipes-devtools/qemu/qemu_0.14.0.bb          |    1 +
>   2 files changed, 71 insertions(+), 0 deletions(-)
>   create mode 100644 meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch
>
> diff --git a/meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch b/meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch
> new file mode 100644
> index 0000000..c395b60
> --- /dev/null
> +++ b/meta/recipes-devtools/qemu/qemu-0.14.0/qemugl-fix.patch
> @@ -0,0 +1,70 @@
> +This patch fix GL application start failure on qemu 0.14.0.
> +
> +Some turn-on macro/variable are re-arranged, buffer pointer is extended to
> +support 32/64b combination of target/host.
> +
> +This is not perfect fix, and we need consider other GL alternatives in future.
> +
As this is a new patch, is this due to be sent upstream?  Please add an 
Upstream-Status: tag indicating what your intentions with this patch is.

Thanks
	Sau!

> +Signed-off-by: Zhai Edwin<edwin.zhai@intel.com>
> +Index: qemu-0.14.0/target-i386/opengl_func.h
> +===================================================================
> +--- qemu-0.14.0.orig/target-i386/opengl_func.h	2011-04-08 16:43:46.000000000 +0800
> ++++ qemu-0.14.0/target-i386/opengl_func.h	2011-04-08 16:45:55.000000000 +0800
> +@@ -26,8 +26,9 @@
> + #include "mesa_glext.h"
> +
> + /* Argument list are internally of a type that can hold a target pointer
> +- * or a host pointer.  */
> +-typedef target_phys_addr_t arg_t;
> ++ * or a host pointer. If 32b target runs on 64b host, it should be big enough
> ++ * to hold host pointer */
> ++typedef long unsigned int arg_t;
> +
> + enum {
> +     TYPE_NONE,
> +Index: qemu-0.14.0/target-i386/translate.c
> +===================================================================
> +--- qemu-0.14.0.orig/target-i386/translate.c	2011-04-08 16:19:15.000000000 +0800
> ++++ qemu-0.14.0/target-i386/translate.c	2011-04-08 16:22:03.000000000 +0800
> +@@ -2652,17 +2652,19 @@
> +     s->is_jmp = DISAS_TB_JUMP;
> + }
> +
> +-int enable_gl = 0;
> ++extern int enable_gl;
> +
> + /* an interrupt is different from an exception because of the
> +    privilege checks */
> + static void gen_interrupt(DisasContext *s, int intno,
> +                           target_ulong cur_eip, target_ulong next_eip)
> + {
> ++#if !defined(CONFIG_USER_ONLY)
> +     if (enable_gl&&  intno == 0x99) {
> +         gen_helper_opengl();
> +         return;
> +     }
> ++#endif
> +
> +     if (s->cc_op != CC_OP_DYNAMIC)
> +         gen_op_set_cc_op(s->cc_op);
> +Index: qemu-0.14.0/vl.c
> +===================================================================
> +--- qemu-0.14.0.orig/vl.c	2011-04-08 16:11:43.000000000 +0800
> ++++ qemu-0.14.0/vl.c	2011-04-08 16:20:05.000000000 +0800
> +@@ -229,7 +229,7 @@
> + unsigned int nb_prom_envs = 0;
> + const char *prom_envs[MAX_PROM_ENVS];
> + int boot_menu;
> +-extern int enable_gl;
> ++int enable_gl = 0;
> +
> + typedef struct FWBootEntry FWBootEntry;
> +
> +@@ -1909,6 +1909,7 @@
> +     return popt;
> + }
> +
> ++#define TARGET_OPENGL_OK
> + int main(int argc, char **argv, char **envp)
> + {
> +     const char *gdbstub_dev = NULL;
> diff --git a/meta/recipes-devtools/qemu/qemu_0.14.0.bb b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> index d8535b2..e440759 100644
> --- a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> +++ b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> @@ -24,6 +24,7 @@ SRC_URI = "\
>       file://spice-qxl-locking-fix-for-qemu-kvm.patch \
>       file://Detect-and-use-GCC-atomic-builtins-for-locking.patch \
>       file://larger_default_ram_size.patch \
> +    file://qemugl-fix.patch \
>       "
>   SRC_URI[md5sum] = "f9d145d5c09de9f0984ffe9bd1229970"
>   SRC_URI[sha256sum] = "ba21e84d7853217830e167dae9999cdbff481189c6a0bb600ac7fb7201453108"
Zhai, Edwin April 12, 2011, 5:52 a.m.
Saul Wold wrote:
>
> On 04/11/2011 06:42 PM, Zhai Edwin wrote:
> >
> >
> > Some turn-on macro/variable are re-arranged, buffer pointer is 
> extended to
> > support 32/64b combination of target/host.
> >
> > [YOCTO #688] fixed.
> >
> > Signed-off-by:  Zhai Edwin<edwin.zhai@intel.com>
>
> As this is a new patch, is this due to be sent upstream?  Please add an
> Upstream-Status: tag indicating what your intentions with this patch is.
>

This is part of our qemu gl patch, which is hard to push into upstream. 
Mark it as separated patch to clear cut old patch and current fix, which 
is easy for debug.

I have added "N/A" for Upstream Status on the same contrib 
tree(gzhai/fix3). Pls. have a look and pull.

Thanks,
edwin

> Thanks
>         Sau!
>
> > +Signed-off-by: Zhai Edwin<edwin.zhai@intel.com>
> > +Index: qemu-0.14.0/target-i386/opengl_func.h
> > +===================================================================
> > +--- qemu-0.14.0.orig/target-i386/opengl_func.h       2011-04-08 
> 16:43:46.000000000 +0800
> > ++++ qemu-0.14.0/target-i386/opengl_func.h    2011-04-08 
> 16:45:55.000000000 +0800
> > +@@ -26,8 +26,9 @@
> > + #include "mesa_glext.h"
> > +
> > + /* Argument list are internally of a type that can hold a target 
> pointer
> > +- * or a host pointer.  */
> > +-typedef target_phys_addr_t arg_t;
> > ++ * or a host pointer. If 32b target runs on 64b host, it should be 
> big enough
> > ++ * to hold host pointer */
> > ++typedef long unsigned int arg_t;
> > +
> > + enum {
> > +     TYPE_NONE,
> > +Index: qemu-0.14.0/target-i386/translate.c
> > +===================================================================
> > +--- qemu-0.14.0.orig/target-i386/translate.c 2011-04-08 
> 16:19:15.000000000 +0800
> > ++++ qemu-0.14.0/target-i386/translate.c      2011-04-08 
> 16:22:03.000000000 +0800
> > +@@ -2652,17 +2652,19 @@
> > +     s->is_jmp = DISAS_TB_JUMP;
> > + }
> > +
> > +-int enable_gl = 0;
> > ++extern int enable_gl;
> > +
> > + /* an interrupt is different from an exception because of the
> > +    privilege checks */
> > + static void gen_interrupt(DisasContext *s, int intno,
> > +                           target_ulong cur_eip, target_ulong 
> next_eip)
> > + {
> > ++#if !defined(CONFIG_USER_ONLY)
> > +     if (enable_gl&&  intno == 0x99) {
> > +         gen_helper_opengl();
> > +         return;
> > +     }
> > ++#endif
> > +
> > +     if (s->cc_op != CC_OP_DYNAMIC)
> > +         gen_op_set_cc_op(s->cc_op);
> > +Index: qemu-0.14.0/vl.c
> > +===================================================================
> > +--- qemu-0.14.0.orig/vl.c    2011-04-08 16:11:43.000000000 +0800
> > ++++ qemu-0.14.0/vl.c 2011-04-08 16:20:05.000000000 +0800
> > +@@ -229,7 +229,7 @@
> > + unsigned int nb_prom_envs = 0;
> > + const char *prom_envs[MAX_PROM_ENVS];
> > + int boot_menu;
> > +-extern int enable_gl;
> > ++int enable_gl = 0;
> > +
> > + typedef struct FWBootEntry FWBootEntry;
> > +
> > +@@ -1909,6 +1909,7 @@
> > +     return popt;
> > + }
> > +
> > ++#define TARGET_OPENGL_OK
> > + int main(int argc, char **argv, char **envp)
> > + {
> > +     const char *gdbstub_dev = NULL;
> > diff --git a/meta/recipes-devtools/qemu/qemu_0.14.0.bb 
> b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> > index d8535b2..e440759 100644
> > --- a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> > +++ b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> > @@ -24,6 +24,7 @@ SRC_URI = "\
> >       file://spice-qxl-locking-fix-for-qemu-kvm.patch \
> >       file://Detect-and-use-GCC-atomic-builtins-for-locking.patch \
> >       file://larger_default_ram_size.patch \
> > +    file://qemugl-fix.patch \
> >       "
> >   SRC_URI[md5sum] = "f9d145d5c09de9f0984ffe9bd1229970"
> >   SRC_URI[sha256sum] = 
> "ba21e84d7853217830e167dae9999cdbff481189c6a0bb600ac7fb7201453108"
>
Saul Wold April 12, 2011, 5:56 a.m.
On 04/11/2011 10:52 PM, Zhai, Edwin wrote:
>
>
> Saul Wold wrote:
>>
>> On 04/11/2011 06:42 PM, Zhai Edwin wrote:
>> >
>> >
>> > Some turn-on macro/variable are re-arranged, buffer pointer is
>> extended to
>> > support 32/64b combination of target/host.
>> >
>> > [YOCTO #688] fixed.
>> >
>> > Signed-off-by: Zhai Edwin<edwin.zhai@intel.com>
>>
>> As this is a new patch, is this due to be sent upstream? Please add an
>> Upstream-Status: tag indicating what your intentions with this patch is.
>>
>
> This is part of our qemu gl patch, which is hard to push into upstream.
> Mark it as separated patch to clear cut old patch and current fix, which
> is easy for debug.
>
> I have added "N/A" for Upstream Status on the same contrib
> tree(gzhai/fix3). Pls. have a look and pull.
>
N/A is not something that we have defined, Inappropriate [other] with a 
a description would be more correct.

Thanks
	Sau!

> Thanks,
> edwin
>
>> Thanks
>> Sau!
>>
>> > +Signed-off-by: Zhai Edwin<edwin.zhai@intel.com>
>> > +Index: qemu-0.14.0/target-i386/opengl_func.h
>> > +===================================================================
>> > +--- qemu-0.14.0.orig/target-i386/opengl_func.h 2011-04-08
>> 16:43:46.000000000 +0800
>> > ++++ qemu-0.14.0/target-i386/opengl_func.h 2011-04-08
>> 16:45:55.000000000 +0800
>> > +@@ -26,8 +26,9 @@
>> > + #include "mesa_glext.h"
>> > +
>> > + /* Argument list are internally of a type that can hold a target
>> pointer
>> > +- * or a host pointer. */
>> > +-typedef target_phys_addr_t arg_t;
>> > ++ * or a host pointer. If 32b target runs on 64b host, it should be
>> big enough
>> > ++ * to hold host pointer */
>> > ++typedef long unsigned int arg_t;
>> > +
>> > + enum {
>> > + TYPE_NONE,
>> > +Index: qemu-0.14.0/target-i386/translate.c
>> > +===================================================================
>> > +--- qemu-0.14.0.orig/target-i386/translate.c 2011-04-08
>> 16:19:15.000000000 +0800
>> > ++++ qemu-0.14.0/target-i386/translate.c 2011-04-08
>> 16:22:03.000000000 +0800
>> > +@@ -2652,17 +2652,19 @@
>> > + s->is_jmp = DISAS_TB_JUMP;
>> > + }
>> > +
>> > +-int enable_gl = 0;
>> > ++extern int enable_gl;
>> > +
>> > + /* an interrupt is different from an exception because of the
>> > + privilege checks */
>> > + static void gen_interrupt(DisasContext *s, int intno,
>> > + target_ulong cur_eip, target_ulong next_eip)
>> > + {
>> > ++#if !defined(CONFIG_USER_ONLY)
>> > + if (enable_gl&& intno == 0x99) {
>> > + gen_helper_opengl();
>> > + return;
>> > + }
>> > ++#endif
>> > +
>> > + if (s->cc_op != CC_OP_DYNAMIC)
>> > + gen_op_set_cc_op(s->cc_op);
>> > +Index: qemu-0.14.0/vl.c
>> > +===================================================================
>> > +--- qemu-0.14.0.orig/vl.c 2011-04-08 16:11:43.000000000 +0800
>> > ++++ qemu-0.14.0/vl.c 2011-04-08 16:20:05.000000000 +0800
>> > +@@ -229,7 +229,7 @@
>> > + unsigned int nb_prom_envs = 0;
>> > + const char *prom_envs[MAX_PROM_ENVS];
>> > + int boot_menu;
>> > +-extern int enable_gl;
>> > ++int enable_gl = 0;
>> > +
>> > + typedef struct FWBootEntry FWBootEntry;
>> > +
>> > +@@ -1909,6 +1909,7 @@
>> > + return popt;
>> > + }
>> > +
>> > ++#define TARGET_OPENGL_OK
>> > + int main(int argc, char **argv, char **envp)
>> > + {
>> > + const char *gdbstub_dev = NULL;
>> > diff --git a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
>> b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
>> > index d8535b2..e440759 100644
>> > --- a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
>> > +++ b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
>> > @@ -24,6 +24,7 @@ SRC_URI = "\
>> > file://spice-qxl-locking-fix-for-qemu-kvm.patch \
>> > file://Detect-and-use-GCC-atomic-builtins-for-locking.patch \
>> > file://larger_default_ram_size.patch \
>> > + file://qemugl-fix.patch \
>> > "
>> > SRC_URI[md5sum] = "f9d145d5c09de9f0984ffe9bd1229970"
>> > SRC_URI[sha256sum] =
>> "ba21e84d7853217830e167dae9999cdbff481189c6a0bb600ac7fb7201453108"
>>
Zhai, Edwin April 12, 2011, 6:56 a.m.
Saul Wold wrote:
>
> On 04/11/2011 10:52 PM, Zhai, Edwin wrote:
> >
> >
> > This is part of our qemu gl patch, which is hard to push into upstream.
> > Mark it as separated patch to clear cut old patch and current fix, 
> which
> > is easy for debug.
> >
> > I have added "N/A" for Upstream Status on the same contrib
> > tree(gzhai/fix3). Pls. have a look and pull.
> >
> N/A is not something that we have defined, Inappropriate [other] with a
> a description would be more correct.
>

How about this way:
Upstream Status: [other] (logical part of qemu-git-qemugl-host.patch)

pulled @ contrib/gzhai/fix3

Thanks,
edwin


> Thanks
>         Sau!
>
> > Thanks,
> > edwin
> >
> >> Thanks
> >> Sau!
> >>
> >> > +Signed-off-by: Zhai Edwin<edwin.zhai@intel.com>
> >> > +Index: qemu-0.14.0/target-i386/opengl_func.h
> >> > +===================================================================
> >> > +--- qemu-0.14.0.orig/target-i386/opengl_func.h 2011-04-08
> >> 16:43:46.000000000 +0800
> >> > ++++ qemu-0.14.0/target-i386/opengl_func.h 2011-04-08
> >> 16:45:55.000000000 +0800
> >> > +@@ -26,8 +26,9 @@
> >> > + #include "mesa_glext.h"
> >> > +
> >> > + /* Argument list are internally of a type that can hold a target
> >> pointer
> >> > +- * or a host pointer. */
> >> > +-typedef target_phys_addr_t arg_t;
> >> > ++ * or a host pointer. If 32b target runs on 64b host, it should be
> >> big enough
> >> > ++ * to hold host pointer */
> >> > ++typedef long unsigned int arg_t;
> >> > +
> >> > + enum {
> >> > + TYPE_NONE,
> >> > +Index: qemu-0.14.0/target-i386/translate.c
> >> > +===================================================================
> >> > +--- qemu-0.14.0.orig/target-i386/translate.c 2011-04-08
> >> 16:19:15.000000000 +0800
> >> > ++++ qemu-0.14.0/target-i386/translate.c 2011-04-08
> >> 16:22:03.000000000 +0800
> >> > +@@ -2652,17 +2652,19 @@
> >> > + s->is_jmp = DISAS_TB_JUMP;
> >> > + }
> >> > +
> >> > +-int enable_gl = 0;
> >> > ++extern int enable_gl;
> >> > +
> >> > + /* an interrupt is different from an exception because of the
> >> > + privilege checks */
> >> > + static void gen_interrupt(DisasContext *s, int intno,
> >> > + target_ulong cur_eip, target_ulong next_eip)
> >> > + {
> >> > ++#if !defined(CONFIG_USER_ONLY)
> >> > + if (enable_gl&& intno == 0x99) {
> >> > + gen_helper_opengl();
> >> > + return;
> >> > + }
> >> > ++#endif
> >> > +
> >> > + if (s->cc_op != CC_OP_DYNAMIC)
> >> > + gen_op_set_cc_op(s->cc_op);
> >> > +Index: qemu-0.14.0/vl.c
> >> > +===================================================================
> >> > +--- qemu-0.14.0.orig/vl.c 2011-04-08 16:11:43.000000000 +0800
> >> > ++++ qemu-0.14.0/vl.c 2011-04-08 16:20:05.000000000 +0800
> >> > +@@ -229,7 +229,7 @@
> >> > + unsigned int nb_prom_envs = 0;
> >> > + const char *prom_envs[MAX_PROM_ENVS];
> >> > + int boot_menu;
> >> > +-extern int enable_gl;
> >> > ++int enable_gl = 0;
> >> > +
> >> > + typedef struct FWBootEntry FWBootEntry;
> >> > +
> >> > +@@ -1909,6 +1909,7 @@
> >> > + return popt;
> >> > + }
> >> > +
> >> > ++#define TARGET_OPENGL_OK
> >> > + int main(int argc, char **argv, char **envp)
> >> > + {
> >> > + const char *gdbstub_dev = NULL;
> >> > diff --git a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> >> b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> >> > index d8535b2..e440759 100644
> >> > --- a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> >> > +++ b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
> >> > @@ -24,6 +24,7 @@ SRC_URI = "\
> >> > file://spice-qxl-locking-fix-for-qemu-kvm.patch \
> >> > file://Detect-and-use-GCC-atomic-builtins-for-locking.patch \
> >> > file://larger_default_ram_size.patch \
> >> > + file://qemugl-fix.patch \
> >> > "
> >> > SRC_URI[md5sum] = "f9d145d5c09de9f0984ffe9bd1229970"
> >> > SRC_URI[sha256sum] =
> >> "ba21e84d7853217830e167dae9999cdbff481189c6a0bb600ac7fb7201453108"
> >>
>