Message ID | 20220120000836.229419-1-f4bug@amsat.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | exec/cpu: Make host pages variables / macros 'target agnostic' | expand |
On 20.01.22 01:08, Philippe Mathieu-Daudé wrote: > "host" pages are related to the *host* not the *target*, > thus the qemu_host_page_size / qemu_host_page_mask variables > and the HOST_PAGE_ALIGN() / REAL_HOST_PAGE_ALIGN() macros > can be moved to "exec/cpu-common.h" which is target agnostic. > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > include/exec/cpu-all.h | 9 --------- > include/exec/cpu-common.h | 9 +++++++++ > 2 files changed, 9 insertions(+), 9 deletions(-) > > diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h > index bb37239efa3..84caf5c3d9f 100644 > --- a/include/exec/cpu-all.h > +++ b/include/exec/cpu-all.h > @@ -234,15 +234,6 @@ extern const TargetPageBits target_page; > > #define TARGET_PAGE_ALIGN(addr) ROUND_UP((addr), TARGET_PAGE_SIZE) > > -/* Using intptr_t ensures that qemu_*_page_mask is sign-extended even > - * when intptr_t is 32-bit and we are aligning a long long. > - */ > -extern uintptr_t qemu_host_page_size; > -extern intptr_t qemu_host_page_mask; > - > -#define HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_host_page_size) > -#define REAL_HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_real_host_page_size) > - > /* same as PROT_xxx */ > #define PAGE_READ 0x0001 > #define PAGE_WRITE 0x0002 > diff --git a/include/exec/cpu-common.h b/include/exec/cpu-common.h > index 039d422bf4c..de5f444b193 100644 > --- a/include/exec/cpu-common.h > +++ b/include/exec/cpu-common.h > @@ -7,6 +7,15 @@ > #include "exec/hwaddr.h" > #endif > > +/* Using intptr_t ensures that qemu_*_page_mask is sign-extended even > + * when intptr_t is 32-bit and we are aligning a long long. > + */ > +extern uintptr_t qemu_host_page_size; > +extern intptr_t qemu_host_page_mask; > + > +#define HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_host_page_size) > +#define REAL_HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_real_host_page_size) > + > /* The CPU list lock nests outside page_(un)lock or mmap_(un)lock */ > void qemu_init_cpu_list(void); > void cpu_list_lock(void); Reviewed-by: David Hildenbrand <david@redhat.com>
On 1/20/22 01:08, Philippe Mathieu-Daudé via wrote: > "host" pages are related to the *host* not the *target*, > thus the qemu_host_page_size / qemu_host_page_mask variables > and the HOST_PAGE_ALIGN() / REAL_HOST_PAGE_ALIGN() macros > can be moved to "exec/cpu-common.h" which is target agnostic. > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Queued, thanks. Paolo > --- > include/exec/cpu-all.h | 9 --------- > include/exec/cpu-common.h | 9 +++++++++ > 2 files changed, 9 insertions(+), 9 deletions(-) > > diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h > index bb37239efa3..84caf5c3d9f 100644 > --- a/include/exec/cpu-all.h > +++ b/include/exec/cpu-all.h > @@ -234,15 +234,6 @@ extern const TargetPageBits target_page; > > #define TARGET_PAGE_ALIGN(addr) ROUND_UP((addr), TARGET_PAGE_SIZE) > > -/* Using intptr_t ensures that qemu_*_page_mask is sign-extended even > - * when intptr_t is 32-bit and we are aligning a long long. > - */ > -extern uintptr_t qemu_host_page_size; > -extern intptr_t qemu_host_page_mask; > - > -#define HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_host_page_size) > -#define REAL_HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_real_host_page_size) > - > /* same as PROT_xxx */ > #define PAGE_READ 0x0001 > #define PAGE_WRITE 0x0002 > diff --git a/include/exec/cpu-common.h b/include/exec/cpu-common.h > index 039d422bf4c..de5f444b193 100644 > --- a/include/exec/cpu-common.h > +++ b/include/exec/cpu-common.h > @@ -7,6 +7,15 @@ > #include "exec/hwaddr.h" > #endif > > +/* Using intptr_t ensures that qemu_*_page_mask is sign-extended even > + * when intptr_t is 32-bit and we are aligning a long long. > + */ > +extern uintptr_t qemu_host_page_size; > +extern intptr_t qemu_host_page_mask; > + > +#define HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_host_page_size) > +#define REAL_HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_real_host_page_size) > + > /* The CPU list lock nests outside page_(un)lock or mmap_(un)lock */ > void qemu_init_cpu_list(void); > void cpu_list_lock(void);
diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h index bb37239efa3..84caf5c3d9f 100644 --- a/include/exec/cpu-all.h +++ b/include/exec/cpu-all.h @@ -234,15 +234,6 @@ extern const TargetPageBits target_page; #define TARGET_PAGE_ALIGN(addr) ROUND_UP((addr), TARGET_PAGE_SIZE) -/* Using intptr_t ensures that qemu_*_page_mask is sign-extended even - * when intptr_t is 32-bit and we are aligning a long long. - */ -extern uintptr_t qemu_host_page_size; -extern intptr_t qemu_host_page_mask; - -#define HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_host_page_size) -#define REAL_HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_real_host_page_size) - /* same as PROT_xxx */ #define PAGE_READ 0x0001 #define PAGE_WRITE 0x0002 diff --git a/include/exec/cpu-common.h b/include/exec/cpu-common.h index 039d422bf4c..de5f444b193 100644 --- a/include/exec/cpu-common.h +++ b/include/exec/cpu-common.h @@ -7,6 +7,15 @@ #include "exec/hwaddr.h" #endif +/* Using intptr_t ensures that qemu_*_page_mask is sign-extended even + * when intptr_t is 32-bit and we are aligning a long long. + */ +extern uintptr_t qemu_host_page_size; +extern intptr_t qemu_host_page_mask; + +#define HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_host_page_size) +#define REAL_HOST_PAGE_ALIGN(addr) ROUND_UP((addr), qemu_real_host_page_size) + /* The CPU list lock nests outside page_(un)lock or mmap_(un)lock */ void qemu_init_cpu_list(void); void cpu_list_lock(void);
"host" pages are related to the *host* not the *target*, thus the qemu_host_page_size / qemu_host_page_mask variables and the HOST_PAGE_ALIGN() / REAL_HOST_PAGE_ALIGN() macros can be moved to "exec/cpu-common.h" which is target agnostic. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- include/exec/cpu-all.h | 9 --------- include/exec/cpu-common.h | 9 +++++++++ 2 files changed, 9 insertions(+), 9 deletions(-)