Re: [PATCH v4 14/16] powerpc64: Add prefixed instructions to instruction data type

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 20, 2020 3:18 pm: > For powerpc64, redefine the ppc_inst type so both word and prefixed > instructions can be represented. On powerpc32 the type will remain the > same. Update places which had assumed instructions to be 4 bytes long. > > Signed-off-by: Jordan Niethe > --

Re: [PATCH v4 11/16] powerpc: Enable Prefixed Instructions

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 20, 2020 3:18 pm: > From: Alistair Popple > > Prefix instructions have their own FSCR bit which needs to enabled via > a CPU feature. The kernel will save the FSCR for problem state but it > needs to be enabled initially. > > If prefixed instructions are made unavailable

Re: [PATCH v4 12/16] powerpc: Define new SRR1 bits for a future ISA version

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 20, 2020 3:18 pm: > Add the BOUNDARY SRR1 bit definition for when the cause of an alignment > exception is a prefixed instruction that crosses a 64-byte boundary. > Add the PREFIXED SRR1 bit definition for exceptions caused by prefixed > instructions. > > Bit 35 of SRR1 is

Re: [PATCH v4 13/16] powerpc: Support prefixed instructions in alignment handler

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 20, 2020 3:18 pm: > Alignment interrupts can be caused by prefixed instructions accessing > memory. Prefixed instructions are not permitted to cross 64-byte > boundaries. If they do the alignment interrupt is invoked with SRR1 > BOUNDARY bit set. If this occurs send a SIGB

Re: [PATCH v4 14/16] powerpc64: Add prefixed instructions to instruction data type

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 20, 2020 3:18 pm: > For powerpc64, redefine the ppc_inst type so both word and prefixed > instructions can be represented. On powerpc32 the type will remain the > same. Update places which had assumed instructions to be 4 bytes long. > > Signed-off-by: Jordan Niethe > --

Re: [PATCH v4 3/9] powerpc/vas: Add VAS user space API

2020-03-23 Thread Daniel Axtens
Haren Myneni writes: > On power9, userspace can send GZIP compression requests directly to NX > once kernel establishes NX channel / window with VAS. This patch provides > user space API which allows user space to establish channel using open > VAS_TX_WIN_OPEN ioctl, mmap and close operations. >

[PATCH kernel v2 2/7] powerpc/powernv/ioda: Rework for huge DMA window at 4GB

2020-03-23 Thread Alexey Kardashevskiy
This moves code to make the next patches look simpler. In particular: 1. Separate locals declaration as we will be allocating a smaller DMA window if a TVE1_4GB option (allows a huge DMA windows at 4GB) is enabled; 2. Pass the bypass offset directly to pnv_pci_ioda2_create_table() as it is the on

[PATCH kernel v2 4/7] powerpc/powernv/phb4: Use IOMMU instead of bypassing

2020-03-23 Thread Alexey Kardashevskiy
At the moment IODA2 systems do 64bit DMA by bypassing IOMMU which allows mapping PCI space to system space at fixed offset (1<<59). The bypass is controlled via the "iommu" kernel parameter. This adds a "iommu_bypass" mode which maps PCI space to system space using an actual TCE table with the big

[PATCH kernel v2 6/7] powerpc/powernv/phb4: Add 4GB IOMMU bypass mode

2020-03-23 Thread Alexey Kardashevskiy
IODA2 systems (POWER8/9) allow DMA windows at 2 fixed locations - 0 and 0x800...==1<<59, stored in TVT as TVE0/1. PHB4 on POWER9 has a "TVT Select 'GTE4GB' Option" which allows mapping both windows at 0 and selecting one based on IOBA address - accesses below 4GB go via TVE0 and above 4

[PATCH kernel v2 7/7] vfio/spapr_tce: Advertise and allow a huge DMA windows at 4GB

2020-03-23 Thread Alexey Kardashevskiy
So far the only option for a big 64big DMA window was a window located at 0x800... (1<<59) which creates problems for devices supporting smaller DMA masks. This exploits a POWER9 PHB option to allow the second DMA window to map at 0 and advertises it with a 4GB offset to avoid overlap

[PATCH kernel v2 0/7] powerpc/powenv/ioda: Allow huge DMA window at 4GB

2020-03-23 Thread Alexey Kardashevskiy
Here is an attempt to support bigger DMA space for devices supporting DMA masks less than 59 bits (GPUs come into mind first). POWER9 PHBs have an option to map 2 windows at 0 and select a windows based on DMA address being below or above 4GB. This adds the "iommu=iommu_bypass" kernel parameter an

[PATCH kernel v2 1/7] powerpc/powernv/ioda: Move TCE bypass base to PE

2020-03-23 Thread Alexey Kardashevskiy
We are about to allow another location for the second DMA window and we will need to advertise it outside of the powernv platform code. This moves bypass base address to iommu_table_group so drivers such as VFIO SPAPR TCE can see it. Signed-off-by: Alexey Kardashevskiy --- arch/powerpc/include/

[PATCH kernel v2 3/7] powerpc/powernv/ioda: Allow smaller TCE table levels

2020-03-23 Thread Alexey Kardashevskiy
Now the minimum allocation size for a TCE table level is PAGE_SIZE (64k) as this is the minimum for alloc_pages(). The limit was set in POWER8 where we did not have sparse RAM so we did not need sparse TCE tables. On POWER9 we have gaps in the phys address space for which using multi level TCE tabl

[PATCH kernel v2 5/7] powerpc/iommu: Add a window number to iommu_table_group_ops::get_table_size

2020-03-23 Thread Alexey Kardashevskiy
We are about to add an additional offset within a TCE table which is going to increase the size of the window, prepare for this. This should cause no behavioral change. Signed-off-by: Alexey Kardashevskiy --- arch/powerpc/include/asm/iommu.h | 1 + arch/powerpc/platforms/powernv/pci.h

Re: [PATCH v4 09/16] powerpc: Use a function for reading instructions

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 20, 2020 3:18 pm: > Prefixed instructions will mean there are instructions of different > length. As a result dereferencing a pointer to an instruction will not > necessarily give the desired result. Introduce a function for reading > instructions from memory into the instr

Re: [PATCH v3 9/9] Documentation/powerpc: VAS API

2020-03-23 Thread Nicholas Piggin
Haren Myneni's on March 7, 2020 10:39 am: > > Power9 introduced Virtual Accelerator Switchboard (VAS) which allows > userspace to communicate with Nest Accelerator (NX) directly. But > kernel has to establish channel to NX for userspace. This document > describes user space API that application ca

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Christoph Hellwig
On Mon, Mar 23, 2020 at 12:28:34PM +1100, Alexey Kardashevskiy wrote: [full quote deleted, please follow proper quoting rules] > > +static bool dma_alloc_direct(struct device *dev, const struct dma_map_ops > > *ops) > > +{ > > + if (!ops) > > + return true; > > + > > + /* > > +

Re: [PATCH v4 09/16] powerpc: Use a function for reading instructions

2020-03-23 Thread Balamuruhan S
On Mon, 2020-03-23 at 18:00 +1000, Nicholas Piggin wrote: > Jordan Niethe's on March 20, 2020 3:18 pm: > > Prefixed instructions will mean there are instructions of different > > length. As a result dereferencing a pointer to an instruction will not > > necessarily give the desired result. Introduc

Re: [PATCH v8 01/14] powerpc/xive: Define xive_native_alloc_irq_on_chip()

2020-03-23 Thread Cédric Le Goater
On 3/19/20 7:12 AM, Haren Myneni wrote: > > This function allocates IRQ on a specific chip. VAS needs per chip > IRQ allocation and will have IRQ handler per VAS instance. The pool of generic interrupt source (IPI) numbers is generally used by user space application which generally do not care o

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Christoph Hellwig
On Mon, Mar 23, 2020 at 09:37:05AM +0100, Christoph Hellwig wrote: > > > + /* > > > + * Allows IOMMU drivers to bypass dynamic translations if the DMA mask > > > + * is large enough. > > > + */ > > > + if (dev->dma_ops_bypass) { > > > + if (min_not_zero(dev->coherent_dma_mask, dev->bus_d

Re: [PATCH v8 02/14] powerpc/xive: Define xive_native_alloc_get_irq_info()

2020-03-23 Thread Cédric Le Goater
On 3/19/20 7:13 AM, Haren Myneni wrote: > > pnv_ocxl_alloc_xive_irq() in ocxl.c allocates IRQ and gets trigger port > address. VAS also needs this function, but based on chip ID. So moved > this common function to xive/native.c. We now have two drivers using the lowlevel routines of the machine

Re: [PATCH v4 15/16] powerpc sstep: Add support for prefixed load/stores

2020-03-23 Thread Balamuruhan S
On Fri, 2020-03-20 at 16:18 +1100, Jordan Niethe wrote: > This adds emulation support for the following prefixed integer > load/stores: > * Prefixed Load Byte and Zero (plbz) > * Prefixed Load Halfword and Zero (plhz) > * Prefixed Load Halfword Algebraic (plha) > * Prefixed Load Word and Ze

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Alexey Kardashevskiy
On 23/03/2020 19:37, Christoph Hellwig wrote: > On Mon, Mar 23, 2020 at 12:28:34PM +1100, Alexey Kardashevskiy wrote: > > [full quote deleted, please follow proper quoting rules] > >>> +static bool dma_alloc_direct(struct device *dev, const struct dma_map_ops >>> *ops) >>> +{ >>> + if (!ops

Re: [PATCH v8 00/14] powerpc/vas: Page fault handling for user space NX requests

2020-03-23 Thread Cédric Le Goater
On 3/19/20 7:08 AM, Haren Myneni wrote: > > On power9, Virtual Accelerator Switchboard (VAS) allows user space or > kernel to communicate with Nest Accelerator (NX) directly using COPY/PASTE > instructions. NX provides various functionalities such as compression, > encryption and etc. But only com

Re: [PATCH v8 04/14] powerpc/vas: Alloc and setup IRQ and trigger port address

2020-03-23 Thread Cédric Le Goater
On 3/19/20 7:14 AM, Haren Myneni wrote: > > Alloc IRQ and get trigger port address for each VAS instance. Kernel > register this IRQ per VAS instance and sets this port for each send > window. NX interrupts the kernel when it sees page fault. I don't understand why this is not done by the OPAL dr

Re: [PATCH v4 00/16] Initial Prefixed Instruction support

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 5:22 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:17 pm: > > A future revision of the ISA will introduce prefixed instructions. A > > prefixed instruction is composed of a 4-byte prefix followed by a > > 4-byte suffix. > > > > All prefixes have the majo

Re: [PATCH v4 02/16] xmon: Move out-of-line instructions to text section

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 5:05 PM Balamuruhan S wrote: > > On Fri, 2020-03-20 at 16:17 +1100, Jordan Niethe wrote: > > To execute an instruction out of line after a breakpoint, the NIP is > > set > > to the address of struct bpt::instr. Here a copy of the instruction > > that > > was replaced with a

Re: [PATCH v4 03/16] powerpc: Use a datatype for instructions

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 5:27 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:17 pm: > > Currently unsigned ints are used to represent instructions on powerpc. > > This has worked well as instructions have always been 4 byte words. > > However, a future ISA version will introduce

Re: [PATCH v4 04/16] powerpc: Use a macro for creating instructions from u32s

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 5:30 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:17 pm: > > In preparation for instructions having a more complex data type start > > using a macro, PPC_INST(), for making an instruction out of a u32. > > Currently this does nothing, but it will allow

Re: [PATCH v4 05/16] powerpc: Use a function for masking instructions

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 5:40 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:17 pm: > > In preparation for using an instruction data type that can not be used > > directly with the '&' operator, use a function to mask instructions. > > Hmm. ppc_inst_mask isn't such a good interfa

Re: [PATCH v4 07/16] powerpc: Introduce functions for instruction nullity and equality

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 5:46 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:18 pm: > > In preparation for an instruction data type that can not be directly > > used with the '==' operator use functions for checking equality and > > nullity. > > > > Signed-off-by: Jordan Niethe

Re: [PATCH v4 06/16] powerpc: Use a function for getting the instruction op code

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 5:54 PM Balamuruhan S wrote: > > On Fri, 2020-03-20 at 16:17 +1100, Jordan Niethe wrote: > > In preparation for using a data type for instructions that can not be > > directly used with the '>>' operator use a function for getting the op > > code of an instruction. > > we n

Re: [PATCH v4 13/16] powerpc: Support prefixed instructions in alignment handler

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 6:09 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:18 pm: > > Alignment interrupts can be caused by prefixed instructions accessing > > memory. Prefixed instructions are not permitted to cross 64-byte > > boundaries. If they do the alignment interrupt is

Re: [PATCH v4 03/16] powerpc: Use a datatype for instructions

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 23, 2020 7:28 pm: > On Mon, Mar 23, 2020 at 5:27 PM Nicholas Piggin wrote: >> >> Jordan Niethe's on March 20, 2020 3:17 pm: >> > Currently unsigned ints are used to represent instructions on powerpc. >> > This has worked well as instructions have always been 4 byte words.

Re: [PATCH v4 16/16] powerpc sstep: Add support for prefixed fixed-point arithmetic

2020-03-23 Thread Balamuruhan S
On Fri, 2020-03-20 at 16:18 +1100, Jordan Niethe wrote: > This adds emulation support for the following prefixed Fixed-Point > Arithmetic instructions: > * Prefixed Add Immediate (paddi) > > Signed-off-by: Jordan Niethe Reviewed-by: Balamuruhan S > --- > v3: Since we moved the prefixed loads

Re: [PATCH v4 09/16] powerpc: Use a function for reading instructions

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 7:03 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:18 pm: > > Prefixed instructions will mean there are instructions of different > > length. As a result dereferencing a pointer to an instruction will not > > necessarily give the desired result. Introduc

Re: [PATCH v4 00/16] Initial Prefixed Instruction support

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 23, 2020 7:25 pm: > On Mon, Mar 23, 2020 at 5:22 PM Nicholas Piggin wrote: >> >> Jordan Niethe's on March 20, 2020 3:17 pm: >> > A future revision of the ISA will introduce prefixed instructions. A >> > prefixed instruction is composed of a 4-byte prefix followed by a >> >

Re: [PATCH] powerpc/64: allow rtas to be called in real-mode, use this in machine check

2020-03-23 Thread Nicholas Piggin
Ganesh's on March 23, 2020 8:19 pm: > > > On 3/20/20 8:58 PM, Nicholas Piggin wrote: >> rtas_call allocates and uses memory in failure paths, which is >> not safe for RMA. It also calls local_irq_save() which may not be safe >> in all real mode contexts. >> >> Particularly machine check may run w

Re: [PATCH v4 09/16] powerpc: Use a function for reading instructions

2020-03-23 Thread Nicholas Piggin
Jordan Niethe's on March 23, 2020 8:09 pm: > On Mon, Mar 23, 2020 at 7:03 PM Nicholas Piggin wrote: >> >> Jordan Niethe's on March 20, 2020 3:18 pm: >> > Prefixed instructions will mean there are instructions of different >> > length. As a result dereferencing a pointer to an instruction will not

Re: [PATCH v4 08/16] powerpc: Use an accessor for word instructions

2020-03-23 Thread Balamuruhan S
On Fri, 2020-03-20 at 16:18 +1100, Jordan Niethe wrote: > In preparation for prefixed instructions where all instructions are no > longer words, use an accessor for getting a word instruction as a u32 > from the instruction data type. > > Signed-off-by: Jordan Niethe > --- > v4: New to series > -

[PATCH] powerpc xmon: drop the option `i` in cacheflush

2020-03-23 Thread Balamuruhan S
Data Cache Block Invalidate (dcbi) instruction implemented in 32-bit designs prior to PowerPC architecture version 2.01 and got obsolete from version 2.01. Attempt to use of this illegal instruction results in a hypervisor emulation assistance interrupt. So, drop the option `i` in cacheflush xmon a

Re: [PATCH v8 03/14] powerpc/vas: Define nx_fault_stamp in coprocessor_request_block

2020-03-23 Thread Michael Ellerman
Nicholas Piggin writes: > Haren Myneni's on March 19, 2020 4:13 pm: >> >> Kernel sets fault address and status in CRB for NX page fault on user >> space address after processing page fault. User space gets the signal >> and handles the fault mentioned in CRB by bringing the page in to >> memory a

Re: [RFC PATCH 0/3] Use per-CPU temporary mappings for patching

2020-03-23 Thread Christophe Leroy
On 03/23/2020 04:52 AM, Christopher M. Riedl wrote: When compiled with CONFIG_STRICT_KERNEL_RWX, the kernel must create temporary mappings when patching itself. These mappings temporarily override the strict RWX text protections to permit a write. Currently, powerpc allocates a per-CPU VM area

Re: [PATCH v8 04/14] powerpc/vas: Alloc and setup IRQ and trigger port address

2020-03-23 Thread Cédric Le Goater
On 3/23/20 10:06 AM, Cédric Le Goater wrote: > On 3/19/20 7:14 AM, Haren Myneni wrote: >> >> Alloc IRQ and get trigger port address for each VAS instance. Kernel >> register this IRQ per VAS instance and sets this port for each send >> window. NX interrupts the kernel when it sees page fault. > >

Re: [PATCH v4 3/9] powerpc/vas: Add VAS user space API

2020-03-23 Thread Michael Ellerman
Daniel Axtens writes: > Haren Myneni writes: > >> On power9, userspace can send GZIP compression requests directly to NX >> once kernel establishes NX channel / window with VAS. This patch provides >> user space API which allows user space to establish channel using open >> VAS_TX_WIN_OPEN ioctl,

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Robin Murphy
On 2020-03-20 2:16 pm, Christoph Hellwig wrote: Several IOMMU drivers have a bypass mode where they can use a direct mapping if the devices DMA mask is large enough. Add generic support to the core dma-mapping code to do that to switch those drivers to a common solution. Hmm, this is _almost_,

Re: [PATCH] powerpc xmon: drop the option `i` in cacheflush

2020-03-23 Thread Segher Boessenkool
On Mon, Mar 23, 2020 at 04:55:48PM +0530, Balamuruhan S wrote: > Data Cache Block Invalidate (dcbi) instruction implemented in 32-bit > designs prior to PowerPC architecture version 2.01 and got obsolete > from version 2.01. It was added back in 2.03. It also exists in 64-bit designs (using categ

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Christoph Hellwig
On Mon, Mar 23, 2020 at 12:14:08PM +, Robin Murphy wrote: > On 2020-03-20 2:16 pm, Christoph Hellwig wrote: >> Several IOMMU drivers have a bypass mode where they can use a direct >> mapping if the devices DMA mask is large enough. Add generic support >> to the core dma-mapping code to do that

Re: [PATCH] powerpc xmon: drop the option `i` in cacheflush

2020-03-23 Thread Naveen N. Rao
Segher Boessenkool wrote: On Mon, Mar 23, 2020 at 04:55:48PM +0530, Balamuruhan S wrote: Data Cache Block Invalidate (dcbi) instruction implemented in 32-bit designs prior to PowerPC architecture version 2.01 and got obsolete from version 2.01. It was added back in 2.03. It also exists in 64-

Re: [PATCH] mm/debug: Add tests validating arch page table helpers for core features

2020-03-23 Thread Anshuman Khandual
On 03/03/2020 02:54 AM, Christophe Leroy wrote: > Anshuman Khandual a écrit : > >> On 02/27/2020 04:59 PM, Christophe Leroy wrote: >>> >>> >>> Le 27/02/2020 à 11:33, Anshuman Khandual a écrit : This adds new tests validating arch page table helpers for these following core memory fea

Re: [PATCH v4 3/9] powerpc/vas: Add VAS user space API

2020-03-23 Thread Daniel Axtens
Michael Ellerman writes: > Daniel Axtens writes: >> Haren Myneni writes: >> >>> On power9, userspace can send GZIP compression requests directly to NX >>> once kernel establishes NX channel / window with VAS. This patch provides >>> user space API which allows user space to establish channel us

Re: [PATCH 00/15] powerpc/watchpoint: Preparation for more than one watchpoint

2020-03-23 Thread Ravi Bangoria
On 3/18/20 6:22 PM, Ravi Bangoria wrote: On 3/16/20 8:35 PM, Christophe Leroy wrote: Le 09/03/2020 à 09:57, Ravi Bangoria a écrit : So far, powerpc Book3S code has been written with an assumption of only one watchpoint. But future power architecture is introducing second watchpoint regis

[PATCH v4 00/17] Convert cpu_up/down to device_online/offline

2020-03-23 Thread Qais Yousef
= Changes in v4 = * Split arm and arm64 patches so that the change to use reboot_cpu goes into its own separate patch (Russell) * Collected new Acked-by * Rebased on top of v5.6-rc6 * Trimmed the CC list on the cover letter as lists

[PATCH v4 01/17] cpu: Add new {add,remove}_cpu() functions

2020-03-23 Thread Qais Yousef
The new functions use device_{online,offline}() which are userspace safe. This is in preparation to move cpu_{up, down} kernel users to use a safer interface that is not racy with userspace. Suggested-by: "Paul E. McKenney" Signed-off-by: Qais Yousef CC: Thomas Gleixner CC: "Paul E. McKenney"

[PATCH v4 10/17] powerpc: Replace cpu_up/down with add/remove_cpu

2020-03-23 Thread Qais Yousef
The core device API performs extra housekeeping bits that are missing from directly calling cpu_up/down. See commit a6717c01ddc2 ("powerpc/rtas: use device model APIs and serialization during LPM") for an example description of what might go wrong. This also prepares to make cpu_up/down a private

Re: [RFC PATCH 0/3] Use per-CPU temporary mappings for patching

2020-03-23 Thread Christophe Leroy
On 03/23/2020 11:30 AM, Christophe Leroy wrote: On 03/23/2020 04:52 AM, Christopher M. Riedl wrote: When compiled with CONFIG_STRICT_KERNEL_RWX, the kernel must create temporary mappings when patching itself. These mappings temporarily override the strict RWX text protections to permit a wr

Re: [PATCH 2/2] KVM: PPC: Book3S HV: H_SVM_INIT_START must call UV_RETURN

2020-03-23 Thread Fabiano Rosas
Laurent Dufour writes: > When the call to UV_REGISTER_MEM_SLOT is failing, for instance because > there is not enough free secured memory, the Hypervisor (HV) has to call > UV_RETURN to report the error to the Ultravisor (UV). Then the UV will call > H_SVM_INIT_ABORT to abort the securing phase a

hardcoded SIGSEGV in __die() ?

2020-03-23 Thread Joakim Tjernlund
In __die(), see below, there is this call to notify_send() with SIGSEGV hardcoded, this seems odd to me as the variable "err" holds the true signal(in my case SIGBUS) Should not SIGSEGV be replaced with the true signal no.? Jocke static int __die(const char *str, struct pt_regs *regs, long err

Re: hardcoded SIGSEGV in __die() ?

2020-03-23 Thread Christophe Leroy
Le 23/03/2020 à 15:17, Joakim Tjernlund a écrit : In __die(), see below, there is this call to notify_send() with SIGSEGV hardcoded, this seems odd to me as the variable "err" holds the true signal(in my case SIGBUS) Should not SIGSEGV be replaced with the true signal no.? As far as I can s

Re: hardcoded SIGSEGV in __die() ?

2020-03-23 Thread Christophe Leroy
Le 23/03/2020 à 15:43, Christophe Leroy a écrit : Le 23/03/2020 à 15:17, Joakim Tjernlund a écrit : In __die(), see below, there is this call to notify_send() with SIGSEGV hardcoded, this seems odd to me as the variable "err" holds the true signal(in my case SIGBUS) Should not SIGSEGV be r

Patch "mm, slub: prevent kmalloc_node crashes and memory leaks" has been added to the 5.5-stable tree

2020-03-23 Thread gregkh
This is a note to let you know that I've just added the patch titled mm, slub: prevent kmalloc_node crashes and memory leaks to the 5.5-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is:

Patch "mm, slub: prevent kmalloc_node crashes and memory leaks" has been added to the 4.4-stable tree

2020-03-23 Thread gregkh
This is a note to let you know that I've just added the patch titled mm, slub: prevent kmalloc_node crashes and memory leaks to the 4.4-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is:

Patch "mm, slub: prevent kmalloc_node crashes and memory leaks" has been added to the 4.9-stable tree

2020-03-23 Thread gregkh
This is a note to let you know that I've just added the patch titled mm, slub: prevent kmalloc_node crashes and memory leaks to the 4.9-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is:

Patch "mm, slub: prevent kmalloc_node crashes and memory leaks" has been added to the 4.14-stable tree

2020-03-23 Thread gregkh
This is a note to let you know that I've just added the patch titled mm, slub: prevent kmalloc_node crashes and memory leaks to the 4.14-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is:

Patch "mm, slub: prevent kmalloc_node crashes and memory leaks" has been added to the 4.19-stable tree

2020-03-23 Thread gregkh
This is a note to let you know that I've just added the patch titled mm, slub: prevent kmalloc_node crashes and memory leaks to the 4.19-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is:

Re: [PATCH v4 01/17] cpu: Add new {add,remove}_cpu() functions

2020-03-23 Thread Paul E. McKenney
On Mon, Mar 23, 2020 at 01:50:54PM +, Qais Yousef wrote: > The new functions use device_{online,offline}() which are userspace > safe. > > This is in preparation to move cpu_{up, down} kernel users to use > a safer interface that is not racy with userspace. > > Suggested-by: "Paul E. McKenney

Patch "mm, slub: prevent kmalloc_node crashes and memory leaks" has been added to the 5.4-stable tree

2020-03-23 Thread gregkh
This is a note to let you know that I've just added the patch titled mm, slub: prevent kmalloc_node crashes and memory leaks to the 5.4-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is:

Re: hardcoded SIGSEGV in __die() ?

2020-03-23 Thread Joakim Tjernlund
On Mon, 2020-03-23 at 15:45 +0100, Christophe Leroy wrote: > CAUTION: This email originated from outside of the organization. Do not click > links or open attachments unless you recognize the sender and know the > content is safe. > > > Le 23/03/2020 à 15:43, Christophe Leroy a écrit : > > > >

[PATCH] completion: Use lockdep_assert_RT_in_threaded_ctx() in complete_all()

2020-03-23 Thread Sebastian Siewior
The warning was intended to spot complete_all() users from hardirq context on PREEMPT_RT. The warning as-is will also trigger in interrupt handlers, which are threaded on PREEMPT_RT, which was not intended. Use lockdep_assert_RT_in_threaded_ctx() which triggers in non-preemptive context on PREEMPT

Re: hardcoded SIGSEGV in __die() ?

2020-03-23 Thread Christophe Leroy
Le 23/03/2020 à 16:08, Joakim Tjernlund a écrit : On Mon, 2020-03-23 at 15:45 +0100, Christophe Leroy wrote: CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe. Le 23/03/2020

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Aneesh Kumar K.V
Christoph Hellwig writes: > On Mon, Mar 23, 2020 at 09:37:05AM +0100, Christoph Hellwig wrote: >> > > +/* >> > > + * Allows IOMMU drivers to bypass dynamic translations if the >> > > DMA mask >> > > + * is large enough. >> > > + */ >> > > +if (dev->dma_ops

Re: hardcoded SIGSEGV in __die() ?

2020-03-23 Thread Joakim Tjernlund
On Mon, 2020-03-23 at 16:31 +0100, Christophe Leroy wrote: > > Le 23/03/2020 à 16:08, Joakim Tjernlund a écrit : > > On Mon, 2020-03-23 at 15:45 +0100, Christophe Leroy wrote: > > > CAUTION: This email originated from outside of the organization. Do not > > > click links or open attachments unles

Re: [RFC PATCH 0/3] Use per-CPU temporary mappings for patching

2020-03-23 Thread Christophe Leroy
Le 23/03/2020 à 17:49, Christopher M Riedl a écrit : On March 23, 2020 9:04 AM Christophe Leroy wrote: On 03/23/2020 11:30 AM, Christophe Leroy wrote: On 03/23/2020 04:52 AM, Christopher M. Riedl wrote: When compiled with CONFIG_STRICT_KERNEL_RWX, the kernel must create temporary ma

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Christoph Hellwig
On Mon, Mar 23, 2020 at 07:58:01PM +1100, Alexey Kardashevskiy wrote: > >> 0x100.. .. 0x101.. > >> > >> 2x4G, each is 1TB aligned. And we can map directly only the first 4GB > >> (because of the maximum IOMMU table size) but not the other. And 1:1 on > >> that "pseries" is done with

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Christoph Hellwig
On Mon, Mar 23, 2020 at 09:07:38PM +0530, Aneesh Kumar K.V wrote: > > This is what I was trying, but considering I am new to DMA subsystem, I > am not sure I got all the details correct. The idea is to look at the > cpu addr and see if that can be used in direct map fashion(is > bus_dma_limit the

Re: [PATCH 08/10] powerpc/fsl: Make serial ports compatible with ns16550a

2020-03-23 Thread Rob Herring
On Fri, Mar 20, 2020 at 11:41 AM Lubomir Rintel wrote: > > There are separate compatible strings for ns16550 and ns16550a and the > Freescale serial port is compatible with the latter one, with working > FIFO. I don't think changing this is right. First, 'ns16550' is what's documented in the DT s

Re: [PATCH v8 03/14] powerpc/vas: Define nx_fault_stamp in coprocessor_request_block

2020-03-23 Thread Haren Myneni
On Mon, 2020-03-23 at 22:32 +1100, Michael Ellerman wrote: > Nicholas Piggin writes: > > Haren Myneni's on March 19, 2020 4:13 pm: > >> > >> Kernel sets fault address and status in CRB for NX page fault on user > >> space address after processing page fault. User space gets the signal > >> and ha

Re: [PATCH] Documentation: Clarify better about the rwsem non-owner release issue

2020-03-23 Thread Joel Fernandes
On Sun, Mar 22, 2020 at 08:51:15AM +0200, Kalle Valo wrote: > "Joel Fernandes (Google)" writes: > > > Reword and clarify better about the rwsem non-owner release issue. > > > > Link: https://lore.kernel.org/linux-pci/20200321212144.ga6...@google.com/ > > > > Signed-off-by: Joel Fernandes (Google)

Re: [PATCH 10/10] dt-bindings: serial: Convert 8250 to json-schema

2020-03-23 Thread Rob Herring
On Fri, Mar 20, 2020 at 11:41 AM Lubomir Rintel wrote: > > Some fixes were done during the conversion: Thanks for doing this! > > Slightly better examples. The original example was for an OMAP serial > port, which is not even described by this binding, but by > omap_serial.txt instead. > > Added

Re: [PATCH 0/10] NS 8250 UART Device Tree improvements

2020-03-23 Thread Rob Herring
On Fri, Mar 20, 2020 at 11:41 AM Lubomir Rintel wrote: > > Hi, > > this series aims to make it possible to validate NS 8250 compatible serial > port > nodes in Device Tree. It ultimately ends up converting the 8250.txt binding > specification to YAML for json-schema. > > It starts by fixing up a

Re: [PATCH v8 04/14] powerpc/vas: Alloc and setup IRQ and trigger port address

2020-03-23 Thread Haren Myneni
On Mon, 2020-03-23 at 10:27 +0100, Cédric Le Goater wrote: > On 3/23/20 10:06 AM, Cédric Le Goater wrote: > > On 3/19/20 7:14 AM, Haren Myneni wrote: > >> > >> Alloc IRQ and get trigger port address for each VAS instance. Kernel > >> register this IRQ per VAS instance and sets this port for each se

Re: [PATCH v5 1/7] ASoC: dt-bindings: fsl_asrc: Add new property fsl,asrc-format

2020-03-23 Thread Nicolin Chen
On Fri, Mar 20, 2020 at 11:32:13AM -0600, Rob Herring wrote: > On Mon, Mar 09, 2020 at 02:19:44PM -0700, Nicolin Chen wrote: > > On Mon, Mar 09, 2020 at 11:58:28AM +0800, Shengjiu Wang wrote: > > > In order to support new EASRC and simplify the code structure, > > > We decide to share the common st

Re: [PATCH] powerpc/64: allow rtas to be called in real-mode, use this in machine check

2020-03-23 Thread Ganesh
On 3/20/20 8:58 PM, Nicholas Piggin wrote: rtas_call allocates and uses memory in failure paths, which is not safe for RMA. It also calls local_irq_save() which may not be safe in all real mode contexts. Particularly machine check may run with interrupts not "reconciled", and it may have hit w

Re: [PATCH] powerpc/legacy_serial: Use early_ioremap()

2020-03-23 Thread Chris Packham
Hi Christophe, On Wed, 2020-02-05 at 12:03 +, Christophe Leroy wrote: > [0.00] ioremap() called early from > find_legacy_serial_ports+0x3cc/0x474. Use early_ioremap() instead > I was just about to dig into this error message and found you patch. I applied it to a v5.5 base. > find_l

RE: [patch V3 08/20] hexagon: Remove mm.h from asm/uaccess.h

2020-03-23 Thread Brian Cain
> -Original Message- > From: Thomas Gleixner ... > Subject: [patch V3 08/20] hexagon: Remove mm.h from asm/uaccess.h > > From: Sebastian Andrzej Siewior > > The defconfig compiles without linux/mm.h. With mm.h included the include > chain leands to: > | CC kernel/locking/percpu-r

[PATCH] powerpc/maple: Fix declaration made after definition

2020-03-23 Thread Nathan Chancellor
When building ppc64 defconfig, Clang errors (trimmed for brevity): arch/powerpc/platforms/maple/setup.c:365:1: error: attribute declaration must precede definition [-Werror,-Wignored-attributes] machine_device_initcall(maple, maple_cpc925_edac_setup); ^ machine_device_initcall expands to __define

Re: [PATCH v4 14/16] powerpc64: Add prefixed instructions to instruction data type

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 6:37 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 20, 2020 3:18 pm: > > For powerpc64, redefine the ppc_inst type so both word and prefixed > > instructions can be represented. On powerpc32 the type will remain the > > same. Update places which had assumed instru

Re: [PATCH 3/4] hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate

2020-03-23 Thread Mike Kravetz
On 3/23/20 5:01 PM, Mina Almasry wrote: > On Wed, Mar 18, 2020 at 3:07 PM Mike Kravetz wrote: >> >> The routine hugetlb_add_hstate prints a warning if the hstate already >> exists. This was originally done as part of kernel command line >> parsing. If 'hugepagesz=' was specified more than once,

Re: [PATCH 1/2] KVM: PPC: Book3S HV: check caller of H_SVM_* Hcalls

2020-03-23 Thread Paul Mackerras
On Fri, Mar 20, 2020 at 01:22:48PM +0100, Greg Kurz wrote: > On Fri, 20 Mar 2020 11:26:42 +0100 > Laurent Dufour wrote: > > > The Hcall named H_SVM_* are reserved to the Ultravisor. However, nothing > > prevent a malicious VM or SVM to call them. This could lead to weird result > > and should be

Re: [PATCH v3] ocxl: control via sysfs whether the FPGA is reloaded on a link reset

2020-03-23 Thread Andrew Donnellan
On 18/3/20 9:02 pm, Frederic Barrat wrote: From: Philippe Bergheaud Some opencapi FPGA images allow to control if the FPGA should be reloaded on the next adapter reset. If it is supported, the image specifies it through a Vendor Specific DVSEC in the config space of function 0. Signed-off-by:

Re: [PATCH v2] libnvdimm: Update persistence domain value for of_pmem and papr_scm device

2020-03-23 Thread Dan Williams
On Fri, Mar 20, 2020 at 2:25 AM Aneesh Kumar K.V wrote: > > > Hi Dan, > > > Dan Williams writes: > > ... > > > > > >> > >> Or are you suggesting that application should not infer any of those > >> details looking at persistence_domain value? If so what is the purpose > >> of exporting that attrib

Re: [PATCH v8 04/14] powerpc/vas: Alloc and setup IRQ and trigger port address

2020-03-23 Thread Oliver O'Halloran
On Mon, Mar 23, 2020 at 8:28 PM Cédric Le Goater wrote: > > On 3/23/20 10:06 AM, Cédric Le Goater wrote: > > On 3/19/20 7:14 AM, Haren Myneni wrote: > >> > >> Alloc IRQ and get trigger port address for each VAS instance. Kernel > >> register this IRQ per VAS instance and sets this port for each se

Re: [PATCH v4 00/16] Initial Prefixed Instruction support

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 9:21 PM Nicholas Piggin wrote: > > Jordan Niethe's on March 23, 2020 7:25 pm: > > On Mon, Mar 23, 2020 at 5:22 PM Nicholas Piggin wrote: > >> > >> Jordan Niethe's on March 20, 2020 3:17 pm: > >> > A future revision of the ISA will introduce prefixed instructions. A > >> >

Re: [PATCH] KVM: PPC: Book3S HV: Skip kvmppc_uvmem_free if Ultravisor is not supported

2020-03-23 Thread Paul Mackerras
On Thu, Mar 19, 2020 at 07:55:10PM -0300, Fabiano Rosas wrote: > kvmppc_uvmem_init checks for Ultravisor support and returns early if > it is not present. Calling kvmppc_uvmem_free at module exit will cause > an Oops: > > $ modprobe -r kvm-hv > > Oops: Kernel access of bad area, sig: 11 [#1] >

Re: [PATCH 0/2] Fix SVM hang at startup

2020-03-23 Thread Paul Mackerras
On Fri, Mar 20, 2020 at 11:26:41AM +0100, Laurent Dufour wrote: > This series is fixing a SVM hang occurring when starting a SVM requiring > more secure memory than available. The hang happens in the SVM when calling > UV_ESM. > > The following is happening: > > 1. SVM calls UV_ESM > 2. Ultraviso

Re: [PATCH v4 03/16] powerpc: Use a datatype for instructions

2020-03-23 Thread Michael Ellerman
Nicholas Piggin writes: > Jordan Niethe's on March 23, 2020 7:28 pm: >> On Mon, Mar 23, 2020 at 5:27 PM Nicholas Piggin wrote: >>> Jordan Niethe's on March 20, 2020 3:17 pm: >>> > Currently unsigned ints are used to represent instructions on powerpc. >>> > This has worked well as instructions hav

Re: [PATCH v4 00/16] Initial Prefixed Instruction support

2020-03-23 Thread Jordan Niethe
On Tue, Mar 24, 2020 at 1:54 PM Jordan Niethe wrote: > > On Mon, Mar 23, 2020 at 9:21 PM Nicholas Piggin wrote: > > > > Jordan Niethe's on March 23, 2020 7:25 pm: > > > On Mon, Mar 23, 2020 at 5:22 PM Nicholas Piggin wrote: > > >> > > >> Jordan Niethe's on March 20, 2020 3:17 pm: > > >> > A futu

Re: [PATCH 1/2] dma-mapping: add a dma_ops_bypass flag to struct device

2020-03-23 Thread Alexey Kardashevskiy
On 24/03/2020 04:22, Christoph Hellwig wrote: > On Mon, Mar 23, 2020 at 09:07:38PM +0530, Aneesh Kumar K.V wrote: >> >> This is what I was trying, but considering I am new to DMA subsystem, I >> am not sure I got all the details correct. The idea is to look at the >> cpu addr and see if that can

Re: [PATCH v4 08/16] powerpc: Use an accessor for word instructions

2020-03-23 Thread Jordan Niethe
On Mon, Mar 23, 2020 at 10:13 PM Balamuruhan S wrote: > > On Fri, 2020-03-20 at 16:18 +1100, Jordan Niethe wrote: > > In preparation for prefixed instructions where all instructions are no > > longer words, use an accessor for getting a word instruction as a u32 > > from the instruction data type.

Re: [PATCH v4 03/16] powerpc: Use a datatype for instructions

2020-03-23 Thread Jordan Niethe
On Tue, Mar 24, 2020 at 1:58 PM Michael Ellerman wrote: > > Nicholas Piggin writes: > > Jordan Niethe's on March 23, 2020 7:28 pm: > >> On Mon, Mar 23, 2020 at 5:27 PM Nicholas Piggin wrote: > >>> Jordan Niethe's on March 20, 2020 3:17 pm: > >>> > Currently unsigned ints are used to represent in

  1   2   >