Re: [PATCH] arm64/defconfig: Enable CONFIG_KEXEC_FILE

2020-04-29 Thread Bhupesh Sharma
On Tue, Apr 28, 2020 at 3:37 PM Catalin Marinas wrote: > > On Tue, Apr 28, 2020 at 01:55:58PM +0530, Bhupesh Sharma wrote: > > On Wed, Apr 8, 2020 at 4:17 PM Mark Rutland wrote: > > > On Tue, Apr 07, 2020 at 04:01:40AM +0530, Bhupesh Sharma wrote: > > > > arch/arm64/configs/defconfig | 1 + > > >

Re: Re: [RESEND PATCH v5 2/5] arm64/crash_core: Export TCR_EL1.T1SZ in vmcoreinfo

2020-04-29 Thread Scott Branden
Hi Bhupesh, On 2020-02-23 10:25 p.m., Bhupesh Sharma wrote: Hi Amit, On Fri, Feb 21, 2020 at 2:36 PM Amit Kachhap wrote: Hi Bhupesh, On 1/13/20 5:44 PM, Bhupesh Sharma wrote: Hi James, On 01/11/2020 12:30 AM, Dave Anderson wrote: - Original Message - Hi Bhupesh, On 25/12/2019 19

[RFC PATCH 1/1] printk: add support for lockless ringbuffer

2020-04-29 Thread John Ogness
Linux is moving to a new lockless ringbuffer. The new ringbuffer is structured completely different to the previous iterations. Add support for retrieving the ringbuffer from debug information and/or using vmcoreinfo. The new ringbuffer is detected based on the availability of the "prb" symbol. Si

[RFC PATCH 0/1] support lockless printk ringbuffer

2020-04-29 Thread John Ogness
Hi Kazu, Here is a patch adding full support for the new lockless printk ringbuffer as it is currently being proposed. Note that the latest version has not yet been submitted to LKML. I was waiting until I finished tests with crash(8) and makedumpfile(8). The new ringbuffer will export all the ne

Re: [PATCH v9 15/18] arm64: kexec: kexec EL2 vectors

2020-04-29 Thread Marc Zyngier
On 2020-03-26 03:24, Pavel Tatashin wrote: If we have a EL2 mode without VHE, the EL2 vectors are needed in order to switch to EL2 and jump to new world with hyperivsor privileges. Signed-off-by: Pavel Tatashin --- arch/arm64/include/asm/kexec.h | 5 + arch/arm64/kernel/asm-offsets.c

Re: [PATCH v9 10/18] arm64: kexec: cpu_soft_restart change argument types

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > Change argument types from unsigned long to a more descriptive > phys_addr_t. For 'entry', which is a physical addresses, sure... > diff --git a/arch/arm64/kernel/cpu-reset.h b/arch/arm64/kernel/cpu-reset.h > index ed50e9587ad8..38cbd4068019

Re: [PATCH v9 09/18] arm64: kexec: call kexec_image_info only once

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > Currently, kexec_image_info() is called during load time, and > right before kernel is being kexec'ed. There is no need to do both. I think the original logic was if debugging, you'd see the load-time value in dmesg, and the kexec-time value

Re: [PATCH v9 07/18] arm64: trans_pgd: hibernate: idmap the single page that holds the copy page routines

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > From: James Morse > > To resume from hibernate, the contents of memory are restored from > the swap image. This may overwrite any page, including the running > kernel and its page tables. > > Hibernate copies the code it uses to do the rest

Re: [PATCH v9 08/18] arm64: kexec: move relocation function setup

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > Currently, kernel relocation function is configured in machine_kexec() > at the time of kexec reboot by using control_code_page. > > This operation, however, is more logical to be done during kexec_load, > and thus remove from reboot time. Mo

Re: [PATCH v9 05/18] arm64: trans_pgd: pass NULL instead of init_mm to *_populate functions

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > trans_pgd_* should be independent from mm context because the tables that > are created by this code are used when there are no mm context around, as > it is between kernels. Simply replace mm_init's with NULL. arm64's p?d_populate() helpers

Re: [PATCH v9 03/18] arm64: trans_pgd: make trans_pgd_map_page generic

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > kexec is going to use a different allocator, so make > trans_pgd_map_page to accept allocator as an argument, and also > kexec is going to use a different map protection, so also pass > it via argument. This trans_pgd_map_page() used to be c

Re: [PATCH v9 02/18] arm64: hibernate: move page handling function to new trans_pgd.c

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > Now, that we abstracted the required functions move them to a new home. > Later, we will generalize these function in order to be useful outside > of hibernation. Reviewed-by: James Morse Thanks, James ___

Re: [PATCH v9 04/18] arm64: trans_pgd: pass allocator trans_pgd_create_copy

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > Make trans_pgd_create_copy and its subroutines to use allocator that is > passed as an argument Reviewed-by: James Morse Thanks, James ___ kexec mailing list kexec@lists.infradead.org http://li

Re: [PATCH v9 01/18] arm64: kexec: make dtb_mem always enabled

2020-04-29 Thread James Morse
Hi Pavel, On 26/03/2020 03:24, Pavel Tatashin wrote: > Currently, dtb_mem is enabled only when CONFIG_KEXEC_FILE is > enabled. This adds ugly ifdefs to c files. ~s/dtb_mem/ARCH_HAS_KIMAGE_ARCH/ ? dtb_mem is just one member of struct kimage_arch. > Always enabled dtb_mem, when it is not used, it

RE: [PATCH] makedumpfile: cope with not-present mem section

2020-04-29 Thread 萩尾 一仁
Hi Pingfan, > -Original Message- > Hi Kazu and Cascardo, > > I encounter a weird problem when running makedumpfile on a s390 machine. > > Our production kernel uses extreme sparse memory model, and has the > following: > > in mm/sparse.c > > #ifdef CONFIG_SPARSEMEM_EXTREME > struct mem

Re: [PATCH] makedumpfile: cope with not-present mem section

2020-04-29 Thread piliu
Hi Kazu and Cascardo, I encounter a weird problem when running makedumpfile on a s390 machine. Our production kernel uses extreme sparse memory model, and has the following: in mm/sparse.c #ifdef CONFIG_SPARSEMEM_EXTREME struct mem_section **mem_section; #else struct mem_section mem_section[NR_