Roger Pau Monne
2012-May-30 16:12 UTC
[PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems
BSD systems already have a sys/queue.h file, which has more macros than the one Qemu uses, and some header files depend on having that macros defined (sys/disk.h for example). Disable sys-queue.h on BSD systems and include the native one. This is not a backport because the original patch is too dificult to backport, it''s commit 72cf2d4f0e181d0d3a3122e04129c58a95da713e. Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Roger Pau Monne <roger.pau@citrix.com> --- sys-queue.h | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/sys-queue.h b/sys-queue.h index cb6a4c8..55c26fe 100644 --- a/sys-queue.h +++ b/sys-queue.h @@ -36,6 +36,12 @@ * @(#)queue.h 8.5 (Berkeley) 8/20/94 */ +#include "config-host.h" +#ifdef _BSD +/* include native header before sys-queue.h */ +#include <sys/queue.h> +#endif + #ifndef _SYS_QUEUE_H_ #define _SYS_QUEUE_H_ -- 1.7.7.5 (Apple Git-26)
Stefano Stabellini
2012-May-31 13:59 UTC
Re: [PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems
On Wed, 30 May 2012, Roger Pau Monne wrote:> BSD systems already have a sys/queue.h file, which has more macros > than the one Qemu uses, and some header files depend on having that > macros defined (sys/disk.h for example). Disable sys-queue.h on BSD > systems and include the native one. > > This is not a backport because the original patch is too dificult to > backport, it''s commit 72cf2d4f0e181d0d3a3122e04129c58a95da713e.The upstream commit message states: "Problem: Our file sys-queue.h is a copy of the BSD file, but there are some additions and it''s not entirely compatible. Because of that, there have been conflicts with system headers on BSD systems." Wouldn''t this be a problem if we apply the simple patch below?> Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > Signed-off-by: Roger Pau Monne <roger.pau@citrix.com> > --- > sys-queue.h | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/sys-queue.h b/sys-queue.h > index cb6a4c8..55c26fe 100644 > --- a/sys-queue.h > +++ b/sys-queue.h > @@ -36,6 +36,12 @@ > * @(#)queue.h 8.5 (Berkeley) 8/20/94 > */ > > +#include "config-host.h" > +#ifdef _BSD > +/* include native header before sys-queue.h */ > +#include <sys/queue.h> > +#endif > + > #ifndef _SYS_QUEUE_H_ > #define _SYS_QUEUE_H_ > > -- > 1.7.7.5 (Apple Git-26) >
Roger Pau Monne
2012-May-31 14:13 UTC
Re: [PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems
Stefano Stabellini wrote:> On Wed, 30 May 2012, Roger Pau Monne wrote: >> BSD systems already have a sys/queue.h file, which has more macros >> than the one Qemu uses, and some header files depend on having that >> macros defined (sys/disk.h for example). Disable sys-queue.h on BSD >> systems and include the native one. >> >> This is not a backport because the original patch is too dificult to >> backport, it''s commit 72cf2d4f0e181d0d3a3122e04129c58a95da713e. > > The upstream commit message states: > > "Problem: Our file sys-queue.h is a copy of the BSD file, but there are > some additions and it''s not entirely compatible. Because of that, there > have been conflicts with system headers on BSD systems." > > Wouldn''t this be a problem if we apply the simple patch below?Doing a diff -bB shows that the Qemu version is just a stripped version of the original NetBSD header, with many macros removed, but no new ones added, so I think the patch is safe.
Stefano Stabellini
2012-May-31 14:16 UTC
Re: [PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems
On Thu, 31 May 2012, Roger Pau Monne wrote:> Stefano Stabellini wrote: > > On Wed, 30 May 2012, Roger Pau Monne wrote: > >> BSD systems already have a sys/queue.h file, which has more macros > >> than the one Qemu uses, and some header files depend on having that > >> macros defined (sys/disk.h for example). Disable sys-queue.h on BSD > >> systems and include the native one. > >> > >> This is not a backport because the original patch is too dificult to > >> backport, it''s commit 72cf2d4f0e181d0d3a3122e04129c58a95da713e. > > > > The upstream commit message states: > > > > "Problem: Our file sys-queue.h is a copy of the BSD file, but there are > > some additions and it''s not entirely compatible. Because of that, there > > have been conflicts with system headers on BSD systems." > > > > Wouldn''t this be a problem if we apply the simple patch below? > > Doing a diff -bB shows that the Qemu version is just a stripped version > of the original NetBSD header, with many macros removed, but no new ones > added, so I think the patch is safe.OK. Please add says this in the commit message.
Roger Pau Monne
2012-Jun-01 10:57 UTC
[PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems
BSD systems already have a sys/queue.h file, which has more macros than the one Qemu uses, and some header files depend on having that macros defined (sys/disk.h for example). Disable sys-queue.h on BSD systems and include the native one. This is not a backport because the original patch is too dificult to backport, it''s commit 72cf2d4f0e181d0d3a3122e04129c58a95da713e. Doing a diff -bB shows that the Qemu version is just a stripped version of the original NetBSD header, with many macros removed, but no new ones added. Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Roger Pau Monne <roger.pau@citrix.com> --- sys-queue.h | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/sys-queue.h b/sys-queue.h index cb6a4c8..55c26fe 100644 --- a/sys-queue.h +++ b/sys-queue.h @@ -36,6 +36,12 @@ * @(#)queue.h 8.5 (Berkeley) 8/20/94 */ +#include "config-host.h" +#ifdef _BSD +/* include native header before sys-queue.h */ +#include <sys/queue.h> +#endif + #ifndef _SYS_QUEUE_H_ #define _SYS_QUEUE_H_ -- 1.7.7.5 (Apple Git-26)
Stefano Stabellini
2012-Jun-01 10:59 UTC
Re: [PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems
On Fri, 1 Jun 2012, Roger Pau Monne wrote:> BSD systems already have a sys/queue.h file, which has more macros > than the one Qemu uses, and some header files depend on having that > macros defined (sys/disk.h for example). Disable sys-queue.h on BSD > systems and include the native one. > > This is not a backport because the original patch is too dificult to > backport, it''s commit 72cf2d4f0e181d0d3a3122e04129c58a95da713e. > > Doing a diff -bB shows that the Qemu version is just a stripped > version of the original NetBSD header, with many macros removed, but > no new ones added. > > Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > Signed-off-by: Roger Pau Monne <roger.pau@citrix.com>Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>> sys-queue.h | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/sys-queue.h b/sys-queue.h > index cb6a4c8..55c26fe 100644 > --- a/sys-queue.h > +++ b/sys-queue.h > @@ -36,6 +36,12 @@ > * @(#)queue.h 8.5 (Berkeley) 8/20/94 > */ > > +#include "config-host.h" > +#ifdef _BSD > +/* include native header before sys-queue.h */ > +#include <sys/queue.h> > +#endif > + > #ifndef _SYS_QUEUE_H_ > #define _SYS_QUEUE_H_ > > -- > 1.7.7.5 (Apple Git-26) >
Ian Jackson
2012-Jun-07 18:46 UTC
Re: [PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems
Stefano Stabellini writes ("Re: [Xen-devel] [PATCH] qemu-xen-trad: fix sys-queue.h usage on BSD systems"):> On Fri, 1 Jun 2012, Roger Pau Monne wrote: > > BSD systems already have a sys/queue.h file, which has more macros > > than the one Qemu uses, and some header files depend on having that > > macros defined (sys/disk.h for example). Disable sys-queue.h on BSD > > systems and include the native one. > > > > This is not a backport because the original patch is too dificult to > > backport, it''s commit 72cf2d4f0e181d0d3a3122e04129c58a95da713e. > > > > Doing a diff -bB shows that the Qemu version is just a stripped > > version of the original NetBSD header, with many macros removed, but > > no new ones added. > > > > Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > > Signed-off-by: Roger Pau Monne <roger.pau@citrix.com> > > Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>