mbox series

[v4,0/5] Fix redefinition errors for toolstack libs

Message ID cover.1623155575.git.costin.lupu@cs.pub.ro (mailing list archive)
Headers show
Series Fix redefinition errors for toolstack libs | expand

Message

Costin Lupu June 8, 2021, 12:35 p.m. UTC
For replication I used gcc 10.3 on an Alpine system. In order to replicate the
redefinition error for PAGE_SIZE one should install the 'fortify-headers'
package which will change the chain of included headers by indirectly including
/usr/include/limits.h where PAGE_SIZE and PATH_MAX are defined.

Changes since v1:
- Use XC_PAGE_* macros instead of PAGE_* macros

Changes since v2:
- Define KDD_PAGE_* macros for changes in debugger/kdd/

Changes since v3:
- Use sysconf(_SC_PAGESIZE) instead of getpagesize()

Costin Lupu (5):
  tools/debugger: Fix PAGE_SIZE redefinition error
  tools/libfsimage: Fix PATH_MAX redefinition error
  tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
  tools/libs/gnttab: Fix PAGE_SIZE redefinition error
  tools/ocaml: Fix redefinition errors

 tools/debugger/kdd/kdd-xen.c                  | 15 ++++------
 tools/debugger/kdd/kdd.c                      | 19 ++++++-------
 tools/debugger/kdd/kdd.h                      |  7 +++++
 tools/libfsimage/ext2fs/fsys_ext2fs.c         |  2 ++
 tools/libfsimage/reiserfs/fsys_reiserfs.c     |  2 ++
 tools/libs/foreignmemory/core.c               |  2 +-
 tools/libs/foreignmemory/freebsd.c            | 10 +++----
 tools/libs/foreignmemory/linux.c              | 23 +++++++--------
 tools/libs/foreignmemory/minios.c             |  2 +-
 tools/libs/foreignmemory/netbsd.c             | 10 +++----
 tools/libs/foreignmemory/private.h            |  9 +-----
 tools/libs/gnttab/freebsd.c                   | 28 +++++++++----------
 tools/libs/gnttab/linux.c                     | 28 +++++++++----------
 tools/libs/gnttab/netbsd.c                    | 23 +++++++--------
 tools/ocaml/libs/xc/xenctrl_stubs.c           | 10 +++----
 .../ocaml/libs/xentoollog/xentoollog_stubs.c  |  4 +++
 tools/ocaml/libs/xl/xenlight_stubs.c          |  4 +++
 17 files changed, 98 insertions(+), 100 deletions(-)

Comments

Christian Lindig June 8, 2021, 1:34 p.m. UTC | #1
On 8 Jun 2021, at 13:35, Costin Lupu <costin.lupu@cs.pub.ro<mailto:costin.lupu@cs.pub.ro>> wrote:

For replication I used gcc 10.3 on an Alpine system. In order to replicate the
redefinition error for PAGE_SIZE one should install the 'fortify-headers'
package which will change the chain of included headers by indirectly including
/usr/include/limits.h where PAGE_SIZE and PATH_MAX are defined.
[..]
tools/ocaml/libs/xc/xenctrl_stubs.c           | 10 +++----
.../ocaml/libs/xentoollog/xentoollog_stubs.c  |  4 +++
tools/ocaml/libs/xl/xenlight_stubs.c          |  4 +++

Acked-by: Christian Lindig <christian.lindig@citrix.com<mailto:christian.lindig@citrix.com>>
Julien Grall July 9, 2021, 2:58 p.m. UTC | #2
Hi Costin,

On 08/06/2021 13:35, Costin Lupu wrote:
> For replication I used gcc 10.3 on an Alpine system. In order to replicate the
> redefinition error for PAGE_SIZE one should install the 'fortify-headers'
> package which will change the chain of included headers by indirectly including
> /usr/include/limits.h where PAGE_SIZE and PATH_MAX are defined.
> 
> Changes since v1:
> - Use XC_PAGE_* macros instead of PAGE_* macros
> 
> Changes since v2:
> - Define KDD_PAGE_* macros for changes in debugger/kdd/
> 
> Changes since v3:
> - Use sysconf(_SC_PAGESIZE) instead of getpagesize()
> 
> Costin Lupu (5):
>    tools/debugger: Fix PAGE_SIZE redefinition error
>    tools/libfsimage: Fix PATH_MAX redefinition error
>    tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
>    tools/libs/gnttab: Fix PAGE_SIZE redefinition error
>    tools/ocaml: Fix redefinition errors

Ian gave his acked-by on IRC, so I will commit them in a bit.

Cheers,

> 
>   tools/debugger/kdd/kdd-xen.c                  | 15 ++++------
>   tools/debugger/kdd/kdd.c                      | 19 ++++++-------
>   tools/debugger/kdd/kdd.h                      |  7 +++++
>   tools/libfsimage/ext2fs/fsys_ext2fs.c         |  2 ++
>   tools/libfsimage/reiserfs/fsys_reiserfs.c     |  2 ++
>   tools/libs/foreignmemory/core.c               |  2 +-
>   tools/libs/foreignmemory/freebsd.c            | 10 +++----
>   tools/libs/foreignmemory/linux.c              | 23 +++++++--------
>   tools/libs/foreignmemory/minios.c             |  2 +-
>   tools/libs/foreignmemory/netbsd.c             | 10 +++----
>   tools/libs/foreignmemory/private.h            |  9 +-----
>   tools/libs/gnttab/freebsd.c                   | 28 +++++++++----------
>   tools/libs/gnttab/linux.c                     | 28 +++++++++----------
>   tools/libs/gnttab/netbsd.c                    | 23 +++++++--------
>   tools/ocaml/libs/xc/xenctrl_stubs.c           | 10 +++----
>   .../ocaml/libs/xentoollog/xentoollog_stubs.c  |  4 +++
>   tools/ocaml/libs/xl/xenlight_stubs.c          |  4 +++
>   17 files changed, 98 insertions(+), 100 deletions(-)
>
Julien Grall July 9, 2021, 3:08 p.m. UTC | #3
Hi,

On 09/07/2021 15:58, Julien Grall wrote:
> Hi Costin,
> 
> On 08/06/2021 13:35, Costin Lupu wrote:
>> For replication I used gcc 10.3 on an Alpine system. In order to 
>> replicate the
>> redefinition error for PAGE_SIZE one should install the 'fortify-headers'
>> package which will change the chain of included headers by indirectly 
>> including
>> /usr/include/limits.h where PAGE_SIZE and PATH_MAX are defined.
>>
>> Changes since v1:
>> - Use XC_PAGE_* macros instead of PAGE_* macros
>>
>> Changes since v2:
>> - Define KDD_PAGE_* macros for changes in debugger/kdd/
>>
>> Changes since v3:
>> - Use sysconf(_SC_PAGESIZE) instead of getpagesize()
>>
>> Costin Lupu (5):
>>    tools/debugger: Fix PAGE_SIZE redefinition error
>>    tools/libfsimage: Fix PATH_MAX redefinition error
>>    tools/libs/foreignmemory: Fix PAGE_SIZE redefinition error
>>    tools/libs/gnttab: Fix PAGE_SIZE redefinition error
>>    tools/ocaml: Fix redefinition errors
> 
> Ian gave his acked-by on IRC, so I will commit them in a bit.

The last patch technically needed an acked-by from Christian. AFAICT, he 
gave it on v1 [1] but you didn't retain it as you switch to XC_PAGE_SHIFT.

The change looks non-controversial so I went ahead with committing 
because it has sit for a while on the ML and it would help building Xen 
new containers we are about to add in the CI.

Cheers,

[1] 0b82dc88-fe59-3074-471f-2e36ba3b840e@cs.pub.ro

> 
> Cheers,
> 
>>
>>   tools/debugger/kdd/kdd-xen.c                  | 15 ++++------
>>   tools/debugger/kdd/kdd.c                      | 19 ++++++-------
>>   tools/debugger/kdd/kdd.h                      |  7 +++++
>>   tools/libfsimage/ext2fs/fsys_ext2fs.c         |  2 ++
>>   tools/libfsimage/reiserfs/fsys_reiserfs.c     |  2 ++
>>   tools/libs/foreignmemory/core.c               |  2 +-
>>   tools/libs/foreignmemory/freebsd.c            | 10 +++----
>>   tools/libs/foreignmemory/linux.c              | 23 +++++++--------
>>   tools/libs/foreignmemory/minios.c             |  2 +-
>>   tools/libs/foreignmemory/netbsd.c             | 10 +++----
>>   tools/libs/foreignmemory/private.h            |  9 +-----
>>   tools/libs/gnttab/freebsd.c                   | 28 +++++++++----------
>>   tools/libs/gnttab/linux.c                     | 28 +++++++++----------
>>   tools/libs/gnttab/netbsd.c                    | 23 +++++++--------
>>   tools/ocaml/libs/xc/xenctrl_stubs.c           | 10 +++----
>>   .../ocaml/libs/xentoollog/xentoollog_stubs.c  |  4 +++
>>   tools/ocaml/libs/xl/xenlight_stubs.c          |  4 +++
>>   17 files changed, 98 insertions(+), 100 deletions(-)
>>
>