On Sat, 24 Dec 2022 at 13:19, Marc Zyngier wrote:
>
> On Thu, 22 Dec 2022 13:01:55 +0000,
> Ard Biesheuvel wrote:
> >
> > On Tue, 20 Dec 2022 at 21:09, Marc Zyngier wrote:
> > >
> > > A recent development on the EFI front has resulted in gues
nd-up
> with two back-to-back faults (page being evicted and faulted back).
> I don't think this is a case worth optimising for.
>
> Fixes: c4ad98e4b72c ("KVM: arm64: Assume write fault on S1PTW permission
> fault on instruction fetch")
> Signed-off-by: Marc Zyngier
&
references, but this is no longer the case, so
we can simply use relative addressing instead. This removes a couple of
RELA entries pointing into the .text segment.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/kvm/hyp/nvhe/host.S | 8 +++-
1 file changed, 3 insertions(+), 5 deletions
On Fri, 25 Feb 2022 at 03:12, Chen, Rong A wrote:
>
>
>
> Hi Marc, Ard,
>
> We have ignored the warning related to asmlinkage according to the below
> advice:
>
> https://lore.kernel.org/lkml/CAMj1kXHrRYagSVniSetHdG15rkQS+fm4zVOtN=zda3w0qae...@mail.gmail.com/
>
Excellent! Thanks for
On Wed, 23 Feb 2022 at 13:54, Marc Zyngier wrote:
>
> On 2022-02-23 12:34, Philip Li wrote:
> > On Wed, Feb 23, 2022 at 09:16:59AM +, Marc Zyngier wrote:
> >> On Wed, 23 Feb 2022 09:05:18 +,
> >> kernel test robot wrote:
> >> >
> >> > Hi Kalesh,
> >> >
> >> > Thank you for the patch!
rspace (only
> KVM will have a bit more work tracking the EOI), but at least
> this is correct.
>
> Reported-by: Pierre Gondois
> Signed-off-by: Marc Zyngier
> Cc: Ard Biesheuvel
> Cc: Sami Mujawar
> Cc: Will Deacon
Acked-by: Ard Biesheuvel
> ---
> pci.c
Switch to set_pte_at() so we can provide the mm pointer to the code that
performs the page table update.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/mm/hugetlbpage.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/mm/hugetlbpage.c b/arch/arm64/mm
The set_pte() helper does not carry the struct mm pointer, which makes
it difficult for the implementation to reason about the context in which
the set_pte() call is taking place. So switch to set_pte_at() instead.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/kernel/efi.c | 2 +-
1 file changed
Implement a default version of p4d_index() similar to how pud/pmd_index
are defined.
Signed-off-by: Ard Biesheuvel
---
include/linux/pgtable.h | 8
1 file changed, 8 insertions(+)
diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h
index bc8713a76e03..e8aacf6ea207 100644
Now that all the handling is in place to deal with read-only page tables
at runtime, do a pass over the kernel page tables at boot to remap all
the page table pages read-only that were allocated early.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/mm/mmu.c | 20
1 file
Now that all kernel page table manipulations are routed through the
fixmap API if r/o page tables are enabled, we can remove write access
from the linear mapping of those pages.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/include/asm/pgalloc.h | 6 +
arch/arm64/mm/mmu.c | 24
Now that all PTE manipulations for user space tables go via the fixmap,
we can remap these tables read-only in the linear region so they cannot
be corrupted inadvertently.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/include/asm/pgalloc.h | 5 +
arch/arm64/include/asm/tlb.h | 2
PMD modifications all go through the fixmap update routine, so there is
no longer a need to keep it mapped read/write in the linear region.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/include/asm/pgalloc.h | 5 +
arch/arm64/include/asm/tlb.h | 2 ++
arch/arm64/mm/mmu.c
Implement the arch specific PUD alloc/free helpers by wrapping the
generic code, and remapping the page read-only on allocation and
read-write on free.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/include/asm/pgalloc.h | 5 +
arch/arm64/include/asm/tlb.h | 2 ++
arch/arm64/mm/mmu.c
As the first step in restricting write access to all page tables via the
linear mapping, remap the page at the root PGD level of a user space
page table hierarchy read-only after allocation, so that it can only be
manipulated using the dedicated fixmap based API.
Signed-off-by: Ard Biesheuvel
their kernel mapping in .bss, so there is no special
exception required to avoid circular logic here.
Signed-off-by: Ard Biesheuvel
---
arch/arm64/Kconfig | 11 +++
arch/arm64/include/asm/fixmap.h | 1 +
arch/arm64/include/asm/pgalloc.h | 28 +-
arch/arm64/include/asm
-by: Ard Biesheuvel
---
arch/arm64/include/asm/pgtable.h | 3 +++
arch/arm64/mm/pageattr.c | 14 ++
2 files changed, 17 insertions(+)
diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h
index c4ba047a82d2..8d3806c68687 100644
--- a/arch/arm64/include
changes will be posted as a followup series.
Cc: Will Deacon
Cc: Marc Zyngier
Cc: Fuad Tabba
Cc: Quentin Perret
Cc: Mark Rutland
Cc: James Morse
Cc: Catalin Marinas
Ard Biesheuvel (12):
asm-generic/pgalloc: allow arch to override PMD alloc/free routines
arm64: mm: add helpers to remap page
Extend the existing CPP macro based hooks that allow architectures to
specialize the code that allocates and frees pages to be used as page
tables.
Signed-off-by: Ard Biesheuvel
---
include/asm-generic/pgalloc.h | 13 +++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git
; an obviously broken way.
>
> So instead of imposing the M1 workaround on an innocent bystander,
> let's limit it to the two known broken Apple implementations.
>
> Fixes: df652bcf1136 ("KVM: arm64: vgic-v3: Work around GICv3 locally
> generated SErrors")
> Reported-by
On Tue, 21 Sept 2021 at 21:45, Rob Herring wrote:
>
> On Sun, Sep 5, 2021 at 11:16 PM Gavin Shan wrote:
> >
> > The empty memory nodes, where no memory resides in, are allowed.
> > For these empty memory nodes, the 'len' of 'reg' property is zero.
> > The NUMA node IDs are still valid and
On Wed, 12 May 2021 at 09:34, Mike Rapoport wrote:
>
> On Wed, May 12, 2021 at 09:00:02AM +0200, Ard Biesheuvel wrote:
> > On Tue, 11 May 2021 at 12:05, Mike Rapoport wrote:
> > >
> > > From: Mike Rapoport
> > >
> > > Hi,
> > &g
On Tue, 11 May 2021 at 12:05, Mike Rapoport wrote:
>
> From: Mike Rapoport
>
> Hi,
>
> These patches aim to remove CONFIG_HOLES_IN_ZONE and essentially hardwire
> pfn_valid_within() to 1.
>
> The idea is to mark NOMAP pages as reserved in the memory map and restore
> the intended semantics of
fn_valid() can be slightly simplified by replacing
> memblock_is_map_memory() with memblock_is_memory().
>
> Signed-off-by: Mike Rapoport
> Acked-by: David Hildenbrand
Acked-by: Ard Biesheuvel
... and many thanks for cleaning this up.
> ---
> arch/arm64/Kconfig | 3 ---
> arch/arm64
;
> While here also update style of pfn_valid() so that both pfn_valid() and
> pfn_is_map_memory() declarations will be consistent.
>
> Signed-off-by: Mike Rapoport
> Acked-by: David Hildenbrand
Acked-by: Ard Biesheuvel
> ---
> arch/arm64/include/asm/memory.h | 2 +-
&
; Split out initialization of the reserved pages to a function with a
> meaningful name and treat the MEMBLOCK_NOMAP regions the same way as the
> reserved regions and mark struct pages for the NOMAP regions as
> PageReserved.
>
> Signed-off-by: Mike Rapoport
> Reviewed-by: David H
human Khandual
> Signed-off-by: Mike Rapoport
> Reviewed-by: Anshuman Khandual
Acked-by: Ard Biesheuvel
> ---
> include/linux/mmzone.h | 11 +++
> 1 file changed, 11 insertions(+)
>
> diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
> index 0d53eba1c3
On Wed, 14 Apr 2021 at 17:14, David Hildenbrand wrote:
>
> On 07.04.21 19:26, Mike Rapoport wrote:
> > From: Mike Rapoport
> >
> > The struct pages representing a reserved memory region are initialized
> > using reserve_bootmem_range() function. This function is called for each
> > reserved
On Tue, 30 Mar 2021 at 15:56, Marc Zyngier wrote:
>
> On Tue, 30 Mar 2021 14:15:19 +0100,
> Ard Biesheuvel wrote:
> >
> > On Tue, 30 Mar 2021 at 15:04, Marc Zyngier wrote:
> > >
> > > On Tue, 30 Mar 2021 13:49:18 +0100,
> > > Ard Biesheuvel wro
On Tue, 30 Mar 2021 at 15:04, Marc Zyngier wrote:
>
> On Tue, 30 Mar 2021 13:49:18 +0100,
> Ard Biesheuvel wrote:
> >
> > On Tue, 30 Mar 2021 at 14:44, Marc Zyngier wrote:
> > >
> > > On Tue, 30 Mar 2021 12:21:26 +0100,
> > > Ard Biesheuvel
On Tue, 30 Mar 2021 at 14:44, Marc Zyngier wrote:
>
> On Tue, 30 Mar 2021 12:21:26 +0100,
> Ard Biesheuvel wrote:
> >
> > Commit f4693c2716b35d08 ("arm64: mm: extend linear region for 52-bit VA
> > configurations") introduced a new layout for the 52-b
m64: mm: extend linear region for 52-bit VA
configurations")
Signed-off-by: Ard Biesheuvel
---
Documentation/arm64/booting.rst | 6 +++---
arch/arm64/kvm/va_layout.c | 18 ++
2 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/Documentation/arm64/booting.rst b
On Wed, 6 Jan 2021 at 11:35, Andre Przywara wrote:
>
> From: Ard Biesheuvel
>
> Implement arch_get_random_seed_*() for ARM based on the firmware
> or hypervisor provided entropy source described in ARM DEN0098.
>
> This will make the kernel's random number generator consu
On Fri, 5 Mar 2021 at 12:38, Marc Zyngier wrote:
>
> On Fri, 05 Mar 2021 02:38:17 +,
> Sami Tolvanen wrote:
> >
> > On Thu, Mar 4, 2021 at 2:34 PM Sami Tolvanen
> > wrote:
> > >
> > > On Thu, Mar 4, 2021 at 2:17 PM Marc Zyngier wrote:
> > > >
> > > > On Thu, 04 Mar 2021 21:25:41 +,
>
On Mon, 8 Feb 2021 at 15:32, Will Deacon wrote:
>
> Hi Marc,
>
> On Mon, Feb 08, 2021 at 09:57:09AM +, Marc Zyngier wrote:
> > It recently came to light that there is a need to be able to override
> > some CPU features very early on, before the kernel is fully up and
> > running. The reasons
On Mon, 25 Jan 2021 at 15:28, Marc Zyngier wrote:
>
> On 2021-01-25 14:19, Ard Biesheuvel wrote:
> > On Mon, 25 Jan 2021 at 14:54, Marc Zyngier wrote:
> >>
> >> On 2021-01-25 12:54, Ard Biesheuvel wrote:
>
> [...]
>
> >> > This struct
On Mon, 25 Jan 2021 at 14:54, Marc Zyngier wrote:
>
> On 2021-01-25 12:54, Ard Biesheuvel wrote:
> > On Mon, 25 Jan 2021 at 11:53, Marc Zyngier wrote:
> >>
> >> Given that the early cpufeature infrastructure has borrowed quite
> >> a lot of code from the
On Mon, 25 Jan 2021 at 11:53, Marc Zyngier wrote:
>
> Given that the early cpufeature infrastructure has borrowed quite
> a lot of code from the kaslr implementation, let's reimplement
> the matching of the "nokaslr" option with it.
>
> Signed-off-by: Marc Zyngier
> Acked-by: Catalin Marinas
>
On Wed, 20 Jan 2021 at 14:01, Will Deacon wrote:
>
> On Wed, 6 Jan 2021 10:34:48 +, Andre Przywara wrote:
> > a fix to v5, now *really* fixing the wrong priority of SMCCC vs. RNDR
> > in arch_get_random_seed_long_early(). Apologies for messing this up
> > in v5 and thanks to broonie for being
On Fri, 15 Jan 2021 at 15:03, Marc Zyngier wrote:
>
> It looks like we have broken firmware out there that wrongly advertises
> a GICv2 compatibility interface, despite the CPUs not being able to deal
> with it.
>
> To work around this, check that the CPU initialising KVM is actually able
> to
On Fri, 8 Jan 2021 at 19:13, Marc Zyngier wrote:
>
> On 2021-01-08 17:59, Ard Biesheuvel wrote:
> > On Fri, 8 Jan 2021 at 18:12, Marc Zyngier wrote:
> >>
> >> It looks like we have broken firmware out there that wrongly
> >> advertises
> >> a
On Fri, 8 Jan 2021 at 18:12, Marc Zyngier wrote:
>
> It looks like we have broken firmware out there that wrongly advertises
> a GICv2 compatibility interface, despite the CPUs not being able to deal
> with it.
>
> To work around this, check that the CPU initialising KVM is actually able
> to
rsion prior to 5.0,
> which *seems* to do the right thing. Hopefully we will be able to
> remove this at some point, but in the meantime this gets us going.
>
> Signed-off-by: Marc Zyngier
Acked-by: Ard Biesheuvel
> ---
> * From v1: Dropped the detection hack and rely on GCC_VERSION
>
On Mon, 7 Dec 2020 at 18:41, Marc Zyngier wrote:
>
> On 2020-12-07 17:19, Ard Biesheuvel wrote:
> > (resend with David's email address fixed)
>
> Irk. Thanks for that.
>
> >> > +#ifdef CONFIG_CC_HAS_BROKEN_S_CONSTRAINT
> >> > +#define SYM
(resend with David's email address fixed)
On Mon, 7 Dec 2020 at 18:17, Ard Biesheuvel wrote:
>
> On Mon, 7 Dec 2020 at 16:43, Marc Zyngier wrote:
> >
> > GCC 4.9 seems to have a problem with the "S" asm constraint
> > when the symbol lives in the s
On Mon, 7 Dec 2020 at 16:43, Marc Zyngier wrote:
>
> GCC 4.9 seems to have a problem with the "S" asm constraint
> when the symbol lives in the same compilation unit, and pretends
> the constraint is impossible:
>
> $ cat x.c
> void *foo(void)
> {
> static int x;
> int *addr;
>
ver they wanted to take a pointer.
>
> Now that hyp relocations are fixed up, there is no need for the helper
> any logner. Remove it.
>
> Signed-off-by: David Brazdil
Acked-by: Ard Biesheuvel
> ---
> arch/arm64/include/asm/kvm_asm.h | 20
>
On Thu, 19 Nov 2020 at 17:26, David Brazdil wrote:
>
> Hyp code used to use absolute addressing via a constant pool to obtain
> the kernel VA of 3 symbols - panic, __hyp_panic_string and
> __kvm_handle_stub_hvc. This used to work because the kernel would
> relocate the addresses in the constant
On Thu, 19 Nov 2020 at 17:25, David Brazdil wrote:
>
> Taking a function pointer will now generate a R_AARCH64_RELATIVE that is
> fixed up at early boot. Remove the alternative-based mechanism for
> converting the address from a kernel VA.
>
> Signed-off-by: David Brazd
On Thu, 19 Nov 2020 at 17:25, David Brazdil wrote:
>
> The arm64 kernel also supports packing of relocation data using the RELR
> format. Implement a parser of RELR data and fixup the relocations using
> the same infra as RELA relocs.
>
> Signed-off-by: David Brazdil
> ---
>
On Thu, 19 Nov 2020 at 17:25, David Brazdil wrote:
>
> KVM nVHE code runs under a different VA mapping than the kernel, hence
> so far it relied only on PC-relative addressing to avoid accidentally
> using a relocated kernel VA from a constant pool (see hyp_symbol_addr).
>
> So as to reduce the
On Thu, 19 Nov 2020 at 17:25, David Brazdil wrote:
>
> We will need to recognize pointers in .rodata specific to hyp,
Why?
> so
> establish a .hyp.rodata ELF section. Merge it with the existing
> .hyp.data..ro_after_init as they are treated the same at runtime.
>
Does this mean HYP .text,
On Fri, 20 Nov 2020 at 11:52, André Przywara wrote:
>
> On 19/11/2020 13:41, Ard Biesheuvel wrote:
>
> Hi,
>
> > On Fri, 13 Nov 2020 at 19:24, Andre Przywara wrote:
> >>
> >> The ARM architected TRNG firmware interface, described in ARM spec
> >&g
On Fri, 13 Nov 2020 at 19:24, Andre Przywara wrote:
>
> The ARM architected TRNG firmware interface, described in ARM spec
> DEN0098, defines an ARM SMCCC based interface to a true random number
> generator, provided by firmware.
> This can be discovered via the SMCCC >=v1.1 interface, and
M initialisation from the SMCCC firmware driver
> - use a single bool in smccc.c to hold the initialisation state for arm64
> - handle endianess correctly in the KVM provider
>
> Andre Przywara (2):
> firmware: smccc: Introduce SMCCC TRNG framework
> arm64: Add support for SMCC
On Fri, 6 Nov 2020 at 16:30, Marc Zyngier wrote:
>
> On 2020-11-05 12:56, Andre Przywara wrote:
> > From: Ard Biesheuvel
> >
> > Implement arch_get_random_seed_*() for ARM based on the firmware
> > or hypervisor provided entropy source described in ARM D
On Thu, 5 Nov 2020 at 15:13, Marc Zyngier wrote:
>
> On 2020-11-05 12:56, Andre Przywara wrote:
> > From: Ard Biesheuvel
> >
> > Provide a hypervisor implementation of the ARM architected TRNG
> > firmware
> > interface described in ARM spec DEN0098.
On Thu, 5 Nov 2020 at 15:30, Mark Rutland wrote:
>
> On Thu, Nov 05, 2020 at 03:04:57PM +0100, Ard Biesheuvel wrote:
> > On Thu, 5 Nov 2020 at 15:03, Mark Rutland wrote:
> > > On Thu, Nov 05, 2020 at 01:41:42PM +, Mark Brown wrote:
> > > > On Thu, Nov 05
On Thu, 5 Nov 2020 at 15:03, Mark Rutland wrote:
>
> On Thu, Nov 05, 2020 at 01:41:42PM +, Mark Brown wrote:
> > On Thu, Nov 05, 2020 at 12:56:55PM +, Andre Przywara wrote:
> >
> > > static inline bool __must_check arch_get_random_seed_int(unsigned int *v)
> > > {
> > > + struct
On Sat, 3 Oct 2020 at 12:30, Andrew Jones wrote:
>
> Hi Ard,
>
Hi Drew,
Thanks for taking a look.
> On Sat, Oct 03, 2020 at 10:56:04AM +0200, Ard Biesheuvel wrote:
> > Provide a hypervisor implementation of the ARM architected TRNG firmware
> > interface described
: Suzuki K Poulose
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Mark Rutland
Cc: Lorenzo Pieralisi
Cc: Sudeep Holla
Cc: Sami Mujawar
Cc: Andre Przywara
Cc: Alexandru Elisei
Cc: Laszlo Ersek
Cc: Leif Lindholm
Signed-off-by: Ard Biesheuvel
---
arch/arm64/include/asm/kvm_host.h | 2 +
arch/arm64/kvm
On Tue, 4 Aug 2020 at 14:45, Alex Bennée wrote:
>
> Hi,
>
> When building guest kernels for virtualisation we were bringing in a
> bunch of stuff from physical hardware which we don't need for our
> idealised fixable virtual PCI devices. This series makes some Kconfig
> changes to allow the
On Thu, 25 Jun 2020 at 10:16, Marc Zyngier wrote:
>
> On 2020-06-25 06:03, kernel test robot wrote:
> > Hi David,
> >
> > Thank you for the patch! Perhaps something to improve:
> >
> > [auto build test WARNING on linus/master]
> > [also build test WARNING on v5.8-rc2 next-20200624]
> > [cannot
On Fri, 24 Apr 2020 at 19:03, Will Deacon wrote:
>
> On Fri, Apr 24, 2020 at 09:40:51AM +0100, Will Deacon wrote:
> > On Thu, Apr 23, 2020 at 06:38:39PM +0100, Andre Przywara wrote:
> > > an update for the CFI flash emulation, addressing Alex' comments and
> > > adding direct mapping support.
> >
On Thu, 23 Apr 2020 at 19:55, Ard Biesheuvel wrote:
>
> On Thu, 23 Apr 2020 at 19:39, Andre Przywara wrote:
> >
> > Hi,
> >
> > an update for the CFI flash emulation, addressing Alex' comments and
> > adding direct mapping support.
> > The actual code
On Thu, 23 Apr 2020 at 23:32, André Przywara wrote:
>
> On 23/04/2020 21:43, Ard Biesheuvel wrote:
>
> Hi Ard,
>
> > On Thu, 23 Apr 2020 at 19:55, Ard Biesheuvel wrote:
> >>
> >> On Thu, 23 Apr 2020 at 19:39, Andre Przywara
> >> wrote:
> &g
On Fri, 24 Apr 2020 at 14:08, André Przywara wrote:
>
> On 24/04/2020 07:45, Ard Biesheuvel wrote:
>
> Hi,
>
> (adding Leif for EDK-2 discussion)
>
> > On Thu, 23 Apr 2020 at 23:32, André Przywara wrote:
> >>
> >> On 23/04/2020 21:43, Ard Biesheuv
On Thu, 23 Apr 2020 at 19:39, Andre Przywara wrote:
>
> Hi,
>
> an update for the CFI flash emulation, addressing Alex' comments and
> adding direct mapping support.
> The actual code changes to the flash emulation are minimal, mostly this
> is about renaming and cleanups.
> This versions now
On Wed, 15 Apr 2020 at 17:43, Ard Biesheuvel wrote:
>
> On Tue, 7 Apr 2020 at 17:15, Alexandru Elisei
> wrote:
> >
> > Hi,
> >
> > I've tested this patch by running badblocks and fio on a flash device
> > inside a
> > guest, everything
On Tue, 7 Apr 2020 at 17:15, Alexandru Elisei wrote:
>
> Hi,
>
> I've tested this patch by running badblocks and fio on a flash device inside a
> guest, everything worked as expected.
>
> I've also looked at the flowcharts for device operation from Intel Application
> Note 646, pages 12-21, and
On Wed, 15 Apr 2020 at 18:11, André Przywara wrote:
>
> On 15/04/2020 16:55, Ard Biesheuvel wrote:
> > On Wed, 15 Apr 2020 at 17:43, Ard Biesheuvel wrote:
> >>
> >> On Tue, 7 Apr 2020 at 17:15, Alexandru Elisei
> >> wrote:
> >>>
> >>&
On Wed, 15 Apr 2020 at 18:36, André Przywara wrote:
>
> On 15/04/2020 17:20, Ard Biesheuvel wrote:
> > On Wed, 15 Apr 2020 at 18:11, André Przywara wrote:
> >>
> >> On 15/04/2020 16:55, Ard Biesheuvel wrote:
> >>> On Wed, 15 Apr 2020 at 17:43, Ard Bies
(+ Linus)
On Fri, 10 Apr 2020 at 12:45, Ard Biesheuvel wrote:
>
> On Fri, 17 Jan 2020 at 23:52, Florian Fainelli wrote:
> >
> > From: Andrey Ryabinin
> >
> > This patch enables the kernel address sanitizer for ARM. XIP_KERNEL has
> > not been tested and is
On Fri, 17 Jan 2020 at 23:52, Florian Fainelli wrote:
>
> From: Andrey Ryabinin
>
> This patch enables the kernel address sanitizer for ARM. XIP_KERNEL has
> not been tested and is therefore not allowed.
>
> Acked-by: Dmitry Vyukov
> Tested-by: Linus Walleij
> Signed-off-by: Abbott Liu
>
Hi Mark,
On Tue, 18 Feb 2020 at 21:02, Mark Brown wrote:
>
> In an effort to clarify and simplify the annotation of assembly functions
> in the kernel new macros have been introduced. These replace ENTRY and
> ENDPROC and also add a new annotation for static functions which previously
> had no
On Fri, 21 Feb 2020 at 14:13, Will Deacon wrote:
>
> On Thu, Feb 20, 2020 at 04:58:39PM +, James Morse wrote:
> > KVM uses some of the static-inline helpers like icache_is_vipt() from
> > its HYP code. This assumes the function is inlined so that the code is
> > mapped to EL2. The compiler
On Thu, 20 Feb 2020 at 18:33, James Morse wrote:
>
> Hi Ard,
>
> On 20/02/2020 17:04, Ard Biesheuvel wrote:
> > On Thu, 20 Feb 2020 at 17:58, James Morse wrote:
> >> It turns out KVM relies on the inline hint being honoured by the compiler
> >> in quite a few
On Thu, 20 Feb 2020 at 17:58, James Morse wrote:
>
> Hello!
>
> It turns out KVM relies on the inline hint being honoured by the compiler
> in quite a few more places than expected. Something about the Shadow Call
> Stack support[0] causes the compiler to avoid inline-ing and to place
> these
On 11/8/19 12:19 PM, Christoffer Dall wrote:
> Hi,
>
> I had a look at our relatively complicated logic in
> kvm_arch_prepare_memory_region(), and was wondering if there was room to
> unify some of this handling between architectures.
>
> (If you haven't seen our implementation, you can find it in
, so update that part as well.
Acked-by: Christoffer Dall
Signed-off-by: Ard Biesheuvel
---
arch/arm64/include/asm/kvm_emulate.h | 3 +
arch/arm64/include/asm/sysreg.h | 1 +
arch/arm64/kvm/sys_regs.c| 59 +++-
3 files changed, 61 insertions(+), 2 deletions
system software (i.e.,
the kind that only receives odd fixes) doesn't take a performance hit
due to the trapping when iterating over the cachelines.
Acked-by: Christoffer Dall
Signed-off-by: Ard Biesheuvel
---
arch/arm64/include/asm/kvm_emulate.h | 3 ++-
arch/arm64/kvm/sys_regs.c| 15
, and it disabled otherwise
- add Christoffer's ack
Cc: suzuki.poul...@arm.com
Cc: marc.zyng...@arm.com
Cc: christoffer.d...@arm.com
Ard Biesheuvel (2):
arm64: kvm: expose sanitised cache type register to guest
arm64: kvm: describe data or unified caches as having 1 set and 1 way
arch/arm64/include/asm
On 19 October 2018 at 11:25, Andrew Jones wrote:
> On Thu, Oct 18, 2018 at 05:17:57PM +0800, Li Zhang wrote:
>> Hi,
>>
>> I run kvm-units-test on ARM server(QDF2400), but gicv2-ipi,
>> gicv2-active cases fail.
>> By debuging kvm-unit-tests source code, I found that interrupt is not
>> handled.
> On 9 Jun 2018, at 12:06, Christoffer Dall wrote:
>
>> On Fri, Jun 01, 2018 at 05:06:28PM +0200, Ard Biesheuvel wrote:
>> When booting a 64 KB pages kernel on a ACPI GICv3 system that
>> implements support for v2 emulation, the following warning is
>> pro
_init: implement
kvm_vgic_hyp_init")
Signed-off-by: Ard Biesheuvel
---
virt/kvm/arm/vgic/vgic-v3.c | 5 -
1 file changed, 5 deletions(-)
diff --git a/virt/kvm/arm/vgic/vgic-v3.c b/virt/kvm/arm/vgic/vgic-v3.c
index bdcf8e7a6161..72fc688c3e9d 100644
--- a/virt/kvm/arm/vgic/vgic-v3.c
+++ b/virt/kv
On 20 April 2018 at 17:38, Mark Rutland wrote:
> Hi Andrey,
>
> On Fri, Apr 20, 2018 at 04:59:35PM +0200, Andrey Konovalov wrote:
>> On Fri, Apr 20, 2018 at 10:13 AM, Marc Zyngier wrote:
>> >> The issue is that
>> >> clang doesn't know about the "S"
(+ Thomas)
On 16 March 2018 at 17:13, Mark Rutland wrote:
> On Fri, Mar 16, 2018 at 04:52:08PM +, Nick Desaulniers wrote:
>> + Sami (Google), Takahiro (Linaro)
>>
>> Just so I fully understand the problem enough to articulate it, we'd be
>> looking for the compiler to
On 16 March 2018 at 11:35, Andrew Jones wrote:
> On Fri, Mar 16, 2018 at 09:31:57AM +, Marc Zyngier wrote:
>> On 15/03/18 19:16, James Morse wrote:
>> >
>> > (I had a go at using 'Ush', to let the compiler schedule the adrp, but
>> > couldn't
>> > get it to work.)
>>
>> I
On 14 February 2018 at 17:38, Christoffer Dall
wrote:
> On Wed, Feb 14, 2018 at 02:43:42PM +, Dave Martin wrote:
>> [CC Ard, in case he has a view on how much we care about softirq NEON
>> performance regressions ... and whether my suggestions make sense]
>>
>> On
On 1 February 2018 at 11:46, Marc Zyngier wrote:
> Since PSCI 1.0 allows the SMCCC version to be (indirectly) probed,
> let's do that at boot time, and expose the version of the calling
> convention as part of the psci_ops structure.
>
> Acked-by: Lorenzo Pieralisi
smccc: Implement SMCCC v1.1 inline primitive
> arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support
> arm64: Kill PSCI_GET_VERSION as a variant-2 workaround
>
I have given this a spin on my Overdrive, and everything seems to work
as
issue, but the
argument, which, for SMCCC_ARCH_FEATURES is also defined as uint32_t,
but did end up being interpreted incorrectly by the SMCCCv1.1
implementation that is now upstream in ARM-TF
>
>> Cc: sta...@vger.kernel.org
>> Reported-by: Ard Biesheuvel <ard.biesheu...@linar
On 31 January 2018 at 14:35, Ard Biesheuvel <ard.biesheu...@linaro.org> wrote:
> On 31 January 2018 at 14:11, Marc Zyngier <marc.zyng...@arm.com> wrote:
>> On 31/01/18 13:56, Hanjun Guo wrote:
>>> Hi Marc,
>>>
>>> On 2018/1/30 1:45, Marc Zyngier
On 31 January 2018 at 14:11, Marc Zyngier wrote:
> On 31/01/18 13:56, Hanjun Guo wrote:
>> Hi Marc,
>>
>> On 2018/1/30 1:45, Marc Zyngier wrote:
>>> static int enable_psci_bp_hardening(void *data)
>>> {
>>> const struct arm64_cpu_capabilities *entry = data;
>>>
>>> -
On 30 January 2018 at 12:27, Marc Zyngier <marc.zyng...@arm.com> wrote:
> On 29/01/18 21:45, Ard Biesheuvel wrote:
>> On 29 January 2018 at 17:45, Marc Zyngier <marc.zyng...@arm.com> wrote:
>>> One of the major improvement of SMCCC v1.1 is that it only clobbers
&
On 29 January 2018 at 17:45, Marc Zyngier wrote:
> One of the major improvement of SMCCC v1.1 is that it only clobbers
> the first 4 registers, both on 32 and 64bit. This means that it
> becomes very easy to provide an inline version of the SMC call
> primitive, and avoid
On 29 January 2018 at 17:45, Marc Zyngier wrote:
> Add the detection and runtime code for ARM_SMCCC_ARCH_WORKAROUND_1.
> It is lovely. Really.
>
> Signed-off-by: Marc Zyngier
> ---
> arch/arm64/include/asm/kvm_psci.h | 63
On 29 January 2018 at 10:07, Marc Zyngier <marc.zyng...@arm.com> wrote:
> On 29/01/18 09:42, Ard Biesheuvel wrote:
>> On 29 January 2018 at 09:36, Marc Zyngier <marc.zyng...@arm.com> wrote:
>>> On 28/01/18 23:08, Ard Biesheuvel wrote:
>>>> On 26 Janu
On 26 January 2018 at 14:28, Marc Zyngier wrote:
> In order to call into the firmware to apply workarounds, it is
> useful to find out whether we're using HVC or SMC. Let's expose
> this through the psci_ops.
>
> Signed-off-by: Marc Zyngier
> ---
>
On 26 January 2018 at 14:28, Marc Zyngier wrote:
> Since PSCI 1.0 allows the SMCCC version to be (indirectly) probed,
> let's do that at boot time, and expose the version of the calling
> convention as part of the psci_ops structure.
>
> Signed-off-by: Marc Zyngier
1 - 100 of 240 matches
Mail list logo