[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Minios-devel] [UNIKRAFT PATCHv6 00/23] Follow up patches for Arm64 support series#1/5



Hello Jia He,

This patch series does not apply cleanly on staging. It looks like there are some white space error in the patch.

Please note, you may have to add --ignore-whitespace while applying this patch series.

Thanks & Regards
Sharan

On 2/22/19 7:21 AM, Jia He wrote:
This series address following comments:
01: Remove the check of '--enable-default-pie' in Makefile.uk,
02: Use macro-ed helper to simplify ioreg_read/write,
03: Use the same declaration for _text and _end,
04: Address comments for D-Cache operation function,
05: Get virtual address bits from id_aa64mmfr0_el1.PARange,
06: Ensure stack alignment for exceptions from EL1,
07: Invalidate D-Cache for modified area only,
08: Disable D-Cache before doing any change,
09: Calculate L3 table and page table size by image size,
10: Remove a -Wstringop-overflow warning for strncpy,
11: Remove useless blank line,

Some comments that haven't been addressed:
01: Check the MIDR and avoid the erratum on affected platform
      via an alternative or jump table. -- This erreta framework
      is not only for Arm but also for x86. I think we'd better
      to discuss in community.
02: Enable FIFO support for PL011.
03: Compare the pointers of different type is behaviour undefined

If I forgot anything please remind me.

You can get the whole patch set by:
git clone https://github.com/hejianet/unikraft_arm64.git -b 1stset_v6
---
v5 -> v6:
   fix error on X86 xen plat.
   rebase the codes to Unikraft 0.3 Iapetus Release
v4 -> v5: fix compilation error
v3 -> v4:
   1. Drop 04 and 24 patches in v3. patch 04 is gcc compiler
   optimization related, not a blocking issue. The resolution is
   under discussion. Patch 24 is not concerned by Sharan.
   2. Restore x18,x19 after using them.
   3. Fix IMAGE_ROUNDUP_SHIFT from 20 to 21.
   4. lots of checkpatch warning.
v2 -> v3: Rebase to the latest upstream base.

v1 -> v2:
   1. Add URL link for "Use macro-ed helper to simplify ioreg_read/write",
   2. Invalidate & clean Cache for memory that would be used,
   3. Improve code and commit comments for calculate pagebable size,
   4. Use macros to replace hardcode values,
   5. Use lsr/lsl to simplify 2MB round up,
   6. Do obfuscates arithmetic for kernel image symbols,
   7. Clean up kernel image symbols for C files.

Jia He (23):
   build: Remove the check of '--enable-default-pie' in Makefile.uk
   plat/include: Use macro-ed helper to simplify ioreg_read/write for
     Arm64
   plat/common: Move global variables defined in link scripts to a header
   plat: Clean up kernel image symbols
   plat/common: Remove earlycloberr from SYSREG_READ32 for Arm64
   plat/common: Clean and invalidate D-Cache only when boot for Arm64
   plat/common: Use correct dsb operation flag for Arm64
   plat/common: Add referred source code URL for cache operation
   plat/kvm: Correct invalid indent character for Arm64
   plat/kvm: Get VIRT_BITS from id_aa64mmfr0_el1.PARange for Arm64
   arch/include: Add a _regs member to save origial stack pointer
   plat/kvm: Add __TRAP_STACK_SIZE for stack pointer while exiting trap
   plat/kvm: Remove redundant space while entering trap for Arm
   plat/kvm: Force align the stack pointer for Arm64 EL1 exceptions
   plat/kvm: Rename pagetable.S to pagetable64.S for Arm64
   plat/kvm: Invalidate D-Cache that may have been modified for Arm64
   plat/kvm: arm64: Clear pagetable memory with boot stack
   plat/kvm: arm64: Calculate pagetable size dynamically by image size
   plat/kvm: arm64: Build L3 page table for range greater than 2MB
   plat/kvm: arm64: Support build L3 table for large image size
   plat/kvm: arm64: Remove needless semicolons in assembly
   plat/kvm: arm64: Ensure there is no stall data in cache when boot
   plat/kvm: arm64: Remove superfluous blank line

  Makefile.uk                                 |   8 +-
  arch/arm/arm64/include/uk/asm/lcpu.h        |  16 ++-
  plat/common/arm/cache64.S                   |  31 ++----
  plat/common/include/arm/arm64/cpu.h         |  58 ++++------
  plat/common/include/arm/arm64/cpu_defs.h    |  16 ++-
  plat/common/include/sections.h              | 110 +++++++++++++++++++
  plat/kvm/Makefile.uk                        |   2 +-
  plat/kvm/arm/entry64.S                      |  77 +++++++++----
  plat/kvm/arm/exceptions.S                   |  73 ++++++++++---
  plat/kvm/arm/{pagetable.S => pagetable64.S} | 115 +++++++++++++-------
  plat/kvm/arm/setup.c                        |  12 +-
  plat/kvm/include/kvm-arm/arm64/mm.h         |  14 ++-
  plat/kvm/memory.c                           |  23 ++--
  plat/kvm/x86/setup.c                        |   6 +-
  plat/xen/arm/setup.c                        |   6 +-
  plat/xen/include/xen-arm/mm.h               |   3 +-
  plat/xen/include/xen-x86/mm.h               |  21 ++--
  plat/xen/memory.c                           |  22 ++--
  plat/xen/x86/mm.c                           |  17 ++-
  plat/xen/x86/setup.c                        |   2 +-
  20 files changed, 419 insertions(+), 213 deletions(-)
  create mode 100644 plat/common/include/sections.h
  rename plat/kvm/arm/{pagetable.S => pagetable64.S} (84%)

--
2.17.1

IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.