[PATCH v4 00/14] Introduce generic headers

Oleksii Kurochko posted 14 patches 5 months, 1 week ago
Failed in applying to current master (apply log)
There is a newer version of this series
xen/arch/arm/device.c                         |  15 ++-
xen/arch/arm/domain_build.c                   |   3 +-
xen/arch/arm/gic-v2.c                         |   4 +-
xen/arch/arm/gic-v3.c                         |   6 +-
xen/arch/arm/gic.c                            |   4 +-
xen/arch/arm/include/asm/Makefile             |   9 ++
xen/arch/arm/include/asm/altp2m.h             |  39 ------
xen/arch/arm/include/asm/current.h            |   3 +
xen/arch/arm/include/asm/div64.h              |   8 +-
xen/arch/arm/include/asm/paging.h             |  16 ---
xen/arch/arm/include/asm/random.h             |   9 --
xen/arch/arm/p2m.c                            |   1 +
xen/arch/arm/traps.c                          |   1 +
xen/arch/ppc/include/asm/Makefile             |  12 ++
xen/arch/ppc/include/asm/altp2m.h             |  25 ----
xen/arch/ppc/include/asm/current.h            |   6 +
xen/arch/ppc/include/asm/device.h             |  53 --------
xen/arch/ppc/include/asm/div64.h              |  14 --
xen/arch/ppc/include/asm/grant_table.h        |   5 -
xen/arch/ppc/include/asm/hardirq.h            |  19 ---
xen/arch/ppc/include/asm/hypercall.h          |   5 -
xen/arch/ppc/include/asm/iocap.h              |   8 --
xen/arch/ppc/include/asm/irq.h                |   4 +
xen/arch/ppc/include/asm/mem_access.h         |   5 -
xen/arch/ppc/include/asm/monitor.h            |  43 ------
xen/arch/ppc/include/asm/numa.h               |  26 ----
xen/arch/ppc/include/asm/paging.h             |   7 -
xen/arch/ppc/include/asm/percpu.h             |  24 ----
xen/arch/ppc/include/asm/random.h             |   9 --
xen/arch/ppc/include/asm/softirq.h            |   8 --
xen/arch/x86/include/asm/Makefile             |   3 +
xen/arch/x86/include/asm/current.h            |   2 +
xen/arch/x86/include/asm/div64.h              |  14 --
xen/arch/x86/include/asm/percpu.h             |  22 ---
xen/include/asm-generic/altp2m.h              |  34 +++++
.../asm => include/asm-generic}/device.h      | 125 +++++++++++-------
xen/include/asm-generic/div64.h               |  27 ++++
.../asm => include/asm-generic}/hardirq.h     |   8 +-
xen/include/asm-generic/hypercall.h           |  18 +++
.../asm => include/asm-generic}/iocap.h       |   7 +-
xen/include/asm-generic/monitor.h             |  62 +++++++++
.../asm => include/asm-generic}/numa.h        |  14 +-
xen/include/asm-generic/paging.h              |  19 +++
.../asm => include/asm-generic}/percpu.h      |  18 ++-
xen/include/asm-generic/random.h              |  19 +++
.../asm => include/asm-generic}/softirq.h     |   7 +-
xen/include/headers++.chk.new                 |   0
xen/include/xen/grant_table.h                 |   3 +
xen/include/xen/mem_access.h                  |   2 +
xen/include/xen/percpu.h                      |   4 +-
50 files changed, 362 insertions(+), 437 deletions(-)
delete mode 100644 xen/arch/arm/include/asm/altp2m.h
delete mode 100644 xen/arch/arm/include/asm/paging.h
delete mode 100644 xen/arch/arm/include/asm/random.h
delete mode 100644 xen/arch/ppc/include/asm/altp2m.h
delete mode 100644 xen/arch/ppc/include/asm/device.h
delete mode 100644 xen/arch/ppc/include/asm/div64.h
delete mode 100644 xen/arch/ppc/include/asm/grant_table.h
delete mode 100644 xen/arch/ppc/include/asm/hardirq.h
delete mode 100644 xen/arch/ppc/include/asm/hypercall.h
delete mode 100644 xen/arch/ppc/include/asm/iocap.h
delete mode 100644 xen/arch/ppc/include/asm/mem_access.h
delete mode 100644 xen/arch/ppc/include/asm/monitor.h
delete mode 100644 xen/arch/ppc/include/asm/numa.h
delete mode 100644 xen/arch/ppc/include/asm/paging.h
delete mode 100644 xen/arch/ppc/include/asm/percpu.h
delete mode 100644 xen/arch/ppc/include/asm/random.h
delete mode 100644 xen/arch/ppc/include/asm/softirq.h
create mode 100644 xen/arch/x86/include/asm/Makefile
delete mode 100644 xen/arch/x86/include/asm/div64.h
delete mode 100644 xen/arch/x86/include/asm/percpu.h
create mode 100644 xen/include/asm-generic/altp2m.h
rename xen/{arch/arm/include/asm => include/asm-generic}/device.h (79%)
create mode 100644 xen/include/asm-generic/div64.h
rename xen/{arch/arm/include/asm => include/asm-generic}/hardirq.h (79%)
create mode 100644 xen/include/asm-generic/hypercall.h
rename xen/{arch/arm/include/asm => include/asm-generic}/iocap.h (60%)
create mode 100644 xen/include/asm-generic/monitor.h
rename xen/{arch/arm/include/asm => include/asm-generic}/numa.h (76%)
create mode 100644 xen/include/asm-generic/paging.h
rename xen/{arch/arm/include/asm => include/asm-generic}/percpu.h (57%)
create mode 100644 xen/include/asm-generic/random.h
rename xen/{arch/arm/include/asm => include/asm-generic}/softirq.h (56%)
create mode 100644 xen/include/headers++.chk.new
[PATCH v4 00/14] Introduce generic headers
Posted by Oleksii Kurochko 5 months, 1 week ago
Some headers are common between several architectures, so the current patch series
provide them.

Another one reason to have them as generic is a simplification of adding support
necessary to make a complete Xen build as it was/is being done in the patch series [1]
and [2].

Also, instead of providing generic/stub headers, it was used
"#ifdef CONFIG_* #include <asm/*.h> #endif" instead of providing empty headers.

Patch related to delay.h [3] was sent separately.

This patch series is a pre-requisite for "Enable build of full Xen for RISC-V" [4].

[1] https://lore.kernel.org/xen-devel/cover.1694543103.git.sanastasio@raptorengineering.com/
[2] https://lore.kernel.org/xen-devel/cover.1692181079.git.oleksii.kurochko@gmail.com/
[3] https://lore.kernel.org/xen-devel/3d55bce44bd6ab9973cbe0ea2fc136cc44d35df2.1698759633.git.oleksii.kurochko@gmail.com/
[4] https://lore.kernel.org/xen-devel/cover.1700761381.git.oleksii.kurochko@gmail.com/

---
Changes in V4:
 - Update the cover letter message
 - Add Reviewed-by/Acked-by for patches:
    [PATCH v3 01/14] xen/asm-generic: introduce stub header paging.h
    [PATCH v3 03/14] xen/asm-generic: introduce generic hypercall.h
    [PATCH v3 04/14] xen/asm-generic: introduce generic header iocap.h
    [PATCH v3 05/14] xen/asm-generic: introduce stub header <asm/random.h>
    [PATCH v3 06/14] xen/asm-generic: introduce generic header percpu.h
    [PATCH v3 07/14] xen/asm-generic: introduce generalized hardirq.h
    [PATCH v3 08/14] xen/asm-generic: introduce generic div64.h header
    [PATCH v3 09/14] xen/asm-generic: introduce generic header altp2m.h
    [PATCH v3 10/14] xen/asm-generic: introduce stub header monitor.h
    [PATCH v3 11/14] xen/asm-generic: introduce stub header numa.h
    [PATCH v3 12/14] xen/asm-generic: introduce stub header softirq.h
 - Fix some code style and minor issues.
 - Use asm-generic version of device.h for Arm and PPC.
---
Changes in V3:
 - Update the commit message of the cover letter.
 - Drop the following patch as it can be arch-specific enough:
   * [PATCH v2 09/15] xen/asm-generic: introduce generic header smp.h
 - Drop correspondent arch specific headers and use asm-generic version of
   a header.
 - Back to the patch series patches:
   * xen: ifdef inclusion of <asm/grant_table.h> in <xen/grant_table.h>
   * xen/asm-generic: ifdef inclusion of <asm/mem_access.h>
---
Changes in V2:
 - Update the commit message of the cover letter.
 - Drop the following patches because they are arch-specific or was sent as a separate patch:
   - xen/asm-generic: introduce stub header event.h
	 - xen/asm-generic: introduce stub header spinlock.h
	 - [PATCH v1 03/29] xen/asm-generic: introduce stub header cpufeature.h
	 - [PATCH v1 07/29] xen/asm-generic: introduce stub header guest_atomics.h
	 - [PATCH v1 10/29] xen/asm-generic: introduce stub header iommu.h
	 - [PATCH v1 12/29] xen/asm-generic: introduce stub header pci.h because separate patch was sent [5]
	 - [PATCH v1 14/29] xen/asm-generic: introduce stub header setup.h
	 - [PATCH v1 15/29] xen/asm-generic: introduce stub header xenoprof.h because of [3].
	 - [PATCH v1 16/29] xen/asm-generic: introduce stub header flushtlb.h
	 - [PATCH v1 22/29] xen/asm-generic: introduce stub header delay.h because of [3]
	 - [PATCH v1 23/29] xen/asm-generic: introduce stub header domain.h
	 - [PATCH v1 24/29] xen/asm-generic: introduce stub header guest_access.h
	 - [PATCH v1 25/29] xen/asm-generic: introduce stub header irq.h ( probably not so generic as I expected, I'll back to it if it will be necessary in the future )
	 - [PATCH v1 28/29] xen/asm-generic: introduce stub header p2m.h ( probably not so generic as I expected, I'll back to it if it will be necessary in the future )
 - For the rest of the patches please look at changes for each patch separately.
---

Oleksii Kurochko (14):
  xen/asm-generic: introduce stub header paging.h
  xen/asm-generic: introduce generic device.h
  xen/asm-generic: introduce generic hypercall.h
  xen/asm-generic: introduce generic header iocap.h
  xen/asm-generic: introduce stub header <asm/random.h>
  xen/asm-generic: introduce generic header percpu.h
  xen/asm-generic: introduce generalized hardirq.h
  xen/asm-generic: introduce generic div64.h header
  xen/asm-generic: introduce generic header altp2m.h
  xen/asm-generic: introduce stub header monitor.h
  xen/asm-generic: introduce stub header numa.h
  xen/asm-generic: introduce stub header softirq.h
  xen: ifdef inclusion of <asm/grant_table.h> in <xen/grant_table.h>
  xen/asm-generic: ifdef inclusion of <asm/mem_access.h>

 xen/arch/arm/device.c                         |  15 ++-
 xen/arch/arm/domain_build.c                   |   3 +-
 xen/arch/arm/gic-v2.c                         |   4 +-
 xen/arch/arm/gic-v3.c                         |   6 +-
 xen/arch/arm/gic.c                            |   4 +-
 xen/arch/arm/include/asm/Makefile             |   9 ++
 xen/arch/arm/include/asm/altp2m.h             |  39 ------
 xen/arch/arm/include/asm/current.h            |   3 +
 xen/arch/arm/include/asm/div64.h              |   8 +-
 xen/arch/arm/include/asm/paging.h             |  16 ---
 xen/arch/arm/include/asm/random.h             |   9 --
 xen/arch/arm/p2m.c                            |   1 +
 xen/arch/arm/traps.c                          |   1 +
 xen/arch/ppc/include/asm/Makefile             |  12 ++
 xen/arch/ppc/include/asm/altp2m.h             |  25 ----
 xen/arch/ppc/include/asm/current.h            |   6 +
 xen/arch/ppc/include/asm/device.h             |  53 --------
 xen/arch/ppc/include/asm/div64.h              |  14 --
 xen/arch/ppc/include/asm/grant_table.h        |   5 -
 xen/arch/ppc/include/asm/hardirq.h            |  19 ---
 xen/arch/ppc/include/asm/hypercall.h          |   5 -
 xen/arch/ppc/include/asm/iocap.h              |   8 --
 xen/arch/ppc/include/asm/irq.h                |   4 +
 xen/arch/ppc/include/asm/mem_access.h         |   5 -
 xen/arch/ppc/include/asm/monitor.h            |  43 ------
 xen/arch/ppc/include/asm/numa.h               |  26 ----
 xen/arch/ppc/include/asm/paging.h             |   7 -
 xen/arch/ppc/include/asm/percpu.h             |  24 ----
 xen/arch/ppc/include/asm/random.h             |   9 --
 xen/arch/ppc/include/asm/softirq.h            |   8 --
 xen/arch/x86/include/asm/Makefile             |   3 +
 xen/arch/x86/include/asm/current.h            |   2 +
 xen/arch/x86/include/asm/div64.h              |  14 --
 xen/arch/x86/include/asm/percpu.h             |  22 ---
 xen/include/asm-generic/altp2m.h              |  34 +++++
 .../asm => include/asm-generic}/device.h      | 125 +++++++++++-------
 xen/include/asm-generic/div64.h               |  27 ++++
 .../asm => include/asm-generic}/hardirq.h     |   8 +-
 xen/include/asm-generic/hypercall.h           |  18 +++
 .../asm => include/asm-generic}/iocap.h       |   7 +-
 xen/include/asm-generic/monitor.h             |  62 +++++++++
 .../asm => include/asm-generic}/numa.h        |  14 +-
 xen/include/asm-generic/paging.h              |  19 +++
 .../asm => include/asm-generic}/percpu.h      |  18 ++-
 xen/include/asm-generic/random.h              |  19 +++
 .../asm => include/asm-generic}/softirq.h     |   7 +-
 xen/include/headers++.chk.new                 |   0
 xen/include/xen/grant_table.h                 |   3 +
 xen/include/xen/mem_access.h                  |   2 +
 xen/include/xen/percpu.h                      |   4 +-
 50 files changed, 362 insertions(+), 437 deletions(-)
 delete mode 100644 xen/arch/arm/include/asm/altp2m.h
 delete mode 100644 xen/arch/arm/include/asm/paging.h
 delete mode 100644 xen/arch/arm/include/asm/random.h
 delete mode 100644 xen/arch/ppc/include/asm/altp2m.h
 delete mode 100644 xen/arch/ppc/include/asm/device.h
 delete mode 100644 xen/arch/ppc/include/asm/div64.h
 delete mode 100644 xen/arch/ppc/include/asm/grant_table.h
 delete mode 100644 xen/arch/ppc/include/asm/hardirq.h
 delete mode 100644 xen/arch/ppc/include/asm/hypercall.h
 delete mode 100644 xen/arch/ppc/include/asm/iocap.h
 delete mode 100644 xen/arch/ppc/include/asm/mem_access.h
 delete mode 100644 xen/arch/ppc/include/asm/monitor.h
 delete mode 100644 xen/arch/ppc/include/asm/numa.h
 delete mode 100644 xen/arch/ppc/include/asm/paging.h
 delete mode 100644 xen/arch/ppc/include/asm/percpu.h
 delete mode 100644 xen/arch/ppc/include/asm/random.h
 delete mode 100644 xen/arch/ppc/include/asm/softirq.h
 create mode 100644 xen/arch/x86/include/asm/Makefile
 delete mode 100644 xen/arch/x86/include/asm/div64.h
 delete mode 100644 xen/arch/x86/include/asm/percpu.h
 create mode 100644 xen/include/asm-generic/altp2m.h
 rename xen/{arch/arm/include/asm => include/asm-generic}/device.h (79%)
 create mode 100644 xen/include/asm-generic/div64.h
 rename xen/{arch/arm/include/asm => include/asm-generic}/hardirq.h (79%)
 create mode 100644 xen/include/asm-generic/hypercall.h
 rename xen/{arch/arm/include/asm => include/asm-generic}/iocap.h (60%)
 create mode 100644 xen/include/asm-generic/monitor.h
 rename xen/{arch/arm/include/asm => include/asm-generic}/numa.h (76%)
 create mode 100644 xen/include/asm-generic/paging.h
 rename xen/{arch/arm/include/asm => include/asm-generic}/percpu.h (57%)
 create mode 100644 xen/include/asm-generic/random.h
 rename xen/{arch/arm/include/asm => include/asm-generic}/softirq.h (56%)
 create mode 100644 xen/include/headers++.chk.new

-- 
2.43.0
Re: [PATCH v4 00/14] Introduce generic headers
Posted by Jan Beulich 5 months ago
On 27.11.2023 15:13, Oleksii Kurochko wrote:
> Oleksii Kurochko (14):
>   xen/asm-generic: introduce stub header paging.h
>   xen/asm-generic: introduce generic device.h
>   xen/asm-generic: introduce generic hypercall.h
>   xen/asm-generic: introduce generic header iocap.h
>   xen/asm-generic: introduce stub header <asm/random.h>
>   xen/asm-generic: introduce generic header percpu.h
>   xen/asm-generic: introduce generalized hardirq.h
>   xen/asm-generic: introduce generic div64.h header
>   xen/asm-generic: introduce generic header altp2m.h
>   xen/asm-generic: introduce stub header monitor.h
>   xen/asm-generic: introduce stub header numa.h
>   xen/asm-generic: introduce stub header softirq.h
>   xen: ifdef inclusion of <asm/grant_table.h> in <xen/grant_table.h>
>   xen/asm-generic: ifdef inclusion of <asm/mem_access.h>

I've applied what I think was suitably ack-ed, re-basing over patches which
need further work. For the rest I'd like to ask that you do the necessary
re-basing, perhaps moving in particular the device.h change later in the
series (so that "easier" changes can go in without further tweaking).

Jan
Re: [PATCH v4 00/14] Introduce generic headers
Posted by Oleksii 5 months ago
On Wed, 2023-11-29 at 10:25 +0100, Jan Beulich wrote:
> On 27.11.2023 15:13, Oleksii Kurochko wrote:
> > Oleksii Kurochko (14):
> >   xen/asm-generic: introduce stub header paging.h
> >   xen/asm-generic: introduce generic device.h
> >   xen/asm-generic: introduce generic hypercall.h
> >   xen/asm-generic: introduce generic header iocap.h
> >   xen/asm-generic: introduce stub header <asm/random.h>
> >   xen/asm-generic: introduce generic header percpu.h
> >   xen/asm-generic: introduce generalized hardirq.h
> >   xen/asm-generic: introduce generic div64.h header
> >   xen/asm-generic: introduce generic header altp2m.h
> >   xen/asm-generic: introduce stub header monitor.h
> >   xen/asm-generic: introduce stub header numa.h
> >   xen/asm-generic: introduce stub header softirq.h
> >   xen: ifdef inclusion of <asm/grant_table.h> in
> > <xen/grant_table.h>
> >   xen/asm-generic: ifdef inclusion of <asm/mem_access.h>
> 
> I've applied what I think was suitably ack-ed, re-basing over patches
> which
> need further work. For the rest I'd like to ask that you do the
> necessary
> re-basing, perhaps moving in particular the device.h change later in
> the
> series (so that "easier" changes can go in without further tweaking).
Thanks a lot. I'll take into account your advice.

~ Oleksii