Re: [PATCH v4 1/5] printk/nmi: generic solution for safe printk in NMI

2016-04-03 Thread Sergey Senozhatsky
Hello, On (03/30/16 17:53), Petr Mladek wrote: [..] > @@ -67,10 +67,12 @@ extern void irq_exit(void); > preempt_count_add(NMI_OFFSET + HARDIRQ_OFFSET); \ > rcu_nmi_enter();\ > trace_hardirq_enter();

Re: [PATCH v4 5/5] printk/nmi: flush NMI messages on the system panic

2016-04-03 Thread Sergey Senozhatsky
Hello, On (03/31/16 14:36), Petr Mladek wrote: [..] > #ifdef CONFIG_PRINTK_NMI > +#define deferred_console_in_nmi() in_nmi() > #else > +#define deferred_console_in_nmi() 0 [..] > + if (!in_sched && !deferred_console_in_nmi()) { > lockdep_off(); > /* >

Re: [PATCH v4 2/5] printk/nmi: use IRQ work only when ready

2016-04-03 Thread Sergey Senozhatsky
Hello, On (03/30/16 17:53), Petr Mladek wrote: > NMIs could happen at any time. This patch makes sure that the safe > printk() in NMI will schedule IRQ work only when the related structs are > initialized. > > All pending messages are flushed when the IRQ work is being initialized. so, does

Re: [PATCH v5 4/4] printk/nmi: flush NMI messages on the system panic

2016-04-22 Thread Sergey Senozhatsky
Hello Petr, On (04/21/16 13:48), Petr Mladek wrote: > extern void printk_nmi_flush(void); > +extern void printk_nmi_flush_on_panic(void); > #else > static inline void printk_nmi_flush(void) { } > +static inline void printk_nmi_flush_on_panic(void) { } [..] > +void

Re: [PATCH v5 0/4] Cleaning printk stuff in NMI context

2016-04-26 Thread Sergey Senozhatsky
On (04/21/16 13:48), Petr Mladek wrote: > v5 adds changes suggested by Sergey Senozhatsky. It should not longer > conflict with his async printk patchset. passes my tests. (apart from that cosmetic-nano-nit) the series looks good to me Reviewed-by: Sergey Senozhatsky <sergey

Re: [PATCH v5 4/4] printk/nmi: flush NMI messages on the system panic

2016-04-26 Thread Sergey Senozhatsky
On (04/26/16 16:21), Petr Mladek wrote: [..] > > move printk_nmi_flush_on_panic() to printk.c, and place it next to > > printk_flush_on_panic() (so we will have two printk "flush-on-panic" > > functions sitting together). /* printk_nmi_flush() is in printk.h, > > so it's visible to printk anyway

Re: [PATCH 15/15] block: Add FIXME comment to handle device_add_disk error

2016-08-17 Thread Sergey Senozhatsky
On (08/17/16 15:15), Fam Zheng wrote: [..] > ( > rc = device_add_disk(e1, e2, e3); > | > + /* FIXME: handle error. */ > device_add_disk(e1, e2, e3); or use __must_check for device_add_disk() function? /* which is _attribute__((warn_unused_result)) */ -ss

Re: [PATCH 11/15] zram: Pass attribute group to device_add_disk

2016-08-17 Thread Sergey Senozhatsky
Hello, On (08/17/16 15:15), Fam Zheng wrote: [..] > diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c > index 20920a2..2331788 100644 > --- a/drivers/block/zram/zram_drv.c > +++ b/drivers/block/zram/zram_drv.c > @@ -1298,13 +1298,10 @@ static int zram_add(void) >

Re: [PATCH 11/15] zram: Pass attribute group to device_add_disk

2016-08-17 Thread Sergey Senozhatsky
On (08/18/16 10:59), Sergey Senozhatsky wrote: [..] > I like the previous "Error creating sysfs group for device" string better, > than "Error creating disk", because the latter one is much less informative. > > do you want to do something like below? >

revert 05fd007e46296afb (was: [PATCH v3] console: use first console if stdout-path device doesn't appear)

2016-11-08 Thread Sergey Senozhatsky
Hello Andrew, (just in case) please revert 'commit 05fd007e46296afb24 ("console: don't prefer first registered if DT specifies stdout-path")' -ss

Re: [PATCH v2] console: use first console if stdout-path device doesn't appear

2016-10-31 Thread Sergey Senozhatsky
Hi, On (10/31/16 15:50), Paul Burton wrote: [..] > Actually whilst this fixes the output in QEMU it has other problems. I'm > still > digging... I propose a revert of '05fd007e46296', so you guys can find the problem and fix it, not being under 'rc3' pressure. -ss

Re: [PATCH v3] console: use first console if stdout-path device doesn't appear

2016-11-03 Thread Sergey Senozhatsky
On (11/03/16 12:57), Paul Burton wrote: > If a device tree specified a preferred device for kernel console output > via the stdout-path or linux,stdout-path chosen node properties there's > no guarantee that it will have specified a device for which we have a > driver. It may also be the case that

Re: [PATCH v3] console: use first console if stdout-path device doesn't appear

2016-11-04 Thread Sergey Senozhatsky
Hi Paul, On (11/03/16 21:17), Paul Burton wrote: > > [..] > > > + * The device tree stdout-path chosen node property was > > > + * specified so we don't want to enable the first > > > + * registered console just now in order to give the > > > +

Re: [PATCH v5 1/4] printk/nmi: generic solution for safe printk in NMI

2017-04-20 Thread Sergey Senozhatsky
Hello, On (04/20/17 15:11), Petr Mladek wrote: [..] > Good analyze. I would summarize it that we need to be careful of: > > + logbug_lock > + PRINTK_SAFE_CONTEXT > + locks used by console drivers > > The first two things are easy to check. Except that a check for logbuf_lock > might

Re: [PATCH v5 1/4] printk/nmi: generic solution for safe printk in NMI

2017-04-19 Thread Sergey Senozhatsky
Hello Steven, On (04/19/17 13:13), Steven Rostedt wrote: > > printk() takes some locks and could not be used a safe way in NMI context. > > I just found a problem with this solution. It kills ftrace dumps from > NMI context :-( > > [ 1295.168495]<...>-67423 10dNh1 38217us :

Re: [PATCH v5 1/4] printk/nmi: generic solution for safe printk in NMI

2017-04-23 Thread Sergey Senozhatsky
On (04/21/17 14:06), Petr Mladek wrote: [..] > > I agree that this_cpu_read(printk_context) covers slightly more than > > logbuf_lock scope, so we may get positive this_cpu_read(printk_context) > > with unlocked logbuf_lock, but I don't tend to think that it's a big > > problem. > >

Re: [PATCH v5 1/4] printk/nmi: generic solution for safe printk in NMI

2017-04-27 Thread Sergey Senozhatsky
On (04/20/17 15:11), Petr Mladek wrote: [..] > void printk_nmi_enter(void) > { > - this_cpu_or(printk_context, PRINTK_NMI_CONTEXT_MASK); > + /* > + * The size of the extra per-CPU buffer is limited. Use it > + * only when really needed. > + */ > + if

Re: [PATCH v5 1/4] printk/nmi: generic solution for safe printk in NMI

2017-04-27 Thread Sergey Senozhatsky
On (04/27/17 12:14), Steven Rostedt wrote: [..] > I tried this patch. It's better because I get the end of the trace, but > I do lose the beginning of it: > > ** 196358 printk messages dropped ** [ 102.321182] perf-59810 > 12983650us : d_path <-seq_path many thanks! so we now drop

Re: [PATCH v2 00/20] Speculative page faults

2017-08-20 Thread Sergey Senozhatsky
Hello, On (08/18/17 00:04), Laurent Dufour wrote: > This is a port on kernel 4.13 of the work done by Peter Zijlstra to > handle page fault without holding the mm semaphore [1]. > > The idea is to try to handle user space page faults without holding the > mmap_sem. This should allow better

Re: [PATCH v3 04/20] mm: VMA sequence count

2017-09-14 Thread Sergey Senozhatsky
On (09/14/17 10:58), Laurent Dufour wrote: [..] > That's right, but here this is the sequence counter mm->mm_seq, not the > vm_seq one. d'oh... you are right. -ss

Re: [PATCH v3 04/20] mm: VMA sequence count

2017-09-14 Thread Sergey Senozhatsky
On (09/14/17 11:15), Laurent Dufour wrote: > On 14/09/2017 11:11, Sergey Senozhatsky wrote: > > On (09/14/17 10:58), Laurent Dufour wrote: > > [..] > >> That's right, but here this is the sequence counter mm->mm_seq, not the > >> vm_seq one. > > >

Re: [PATCH v3 04/20] mm: VMA sequence count

2017-09-14 Thread Sergey Senozhatsky
Hi, On (09/14/17 09:55), Laurent Dufour wrote: [..] > > so if there are two CPUs, one doing write_seqcount() and the other one > > doing read_seqcount() then what can happen is something like this > > > > CPU0CPU1 > > > >

[PATCH 1/5] sections: split dereference_function_descriptor()

2017-09-15 Thread Sergey Senozhatsky
ls that does modules' .opd section address range test. [1] https://marc.info/?l=linux-kernel=150472969730573 Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- include/asm-generic/sections.h | 4 ++-- include/linux/moduleloader.h | 4 kernel/module.c|

[PATCH 2/5] ia64: Add .opd based function descriptor dereference

2017-09-15 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/ia64/include/asm/sections.h | 14 +- arch/ia64/kernel/module.c| 13 + arch/ia64/kernel/vmlinux.lds.S | 2 ++ 3 files changed, 2

[PATCH 0/5] [RFC] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-15 Thread Sergey Senozhatsky
are not tested. Sorry about that! Another note: I need to check what is BPF symbol lookup and do we need to do any dereference there. [1] https://marc.info/?l=linux-kernel=150472969730573 Sergey Senozhatsky (5): sections: split dereference_function_descriptor() ia64: Add

[PATCH 3/5] powerpc64: Add .opd based function descriptor dereference

2017-09-15 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/powerpc/include/asm/module.h | 3 +++ arch/powerpc/include/asm/sections.h | 13 + arch/powerpc/kernel/module_64.c | 16

Re: [PATCH 3/5] powerpc64: Add .opd based function descriptor dereference

2017-09-16 Thread Sergey Senozhatsky
On (09/16/17 15:13), Naveen N. Rao wrote: [..] > Would it be simpler to just use kernel_text_address() and dereference > everything else? See commit 83e840c770f2c5 ("powerpc64/elfv1: Only > dereference function descriptor for non-text symbols") for a related > patch. I had this idea, see

[PATCH 4/5] parisc64: Add .opd based function descriptor dereference

2017-09-15 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/parisc/boot/compressed/vmlinux.lds.S | 2 ++ arch/parisc/include/asm/sections.h| 3 +++ arch/parisc/kernel/module.c | 14 ++

[PATCH 5/5] symbol lookup: use new kernel and module dereference functions

2017-09-15 Thread Sergey Senozhatsky
' vsprintf handler, because it has the same behavior with '%pS/%ps' now. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- Documentation/printk-formats.txt | 15 +-- kernel/kallsyms.c| 1 + kernel/module.c | 1 + lib/vspr

Re: [PATCH 0/5] [RFC] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-19 Thread Sergey Senozhatsky
On (09/19/17 22:03), Helge Deller wrote: [..] > Your implementation of dereference_module_function_descriptor() in > arch/parisc/kernel/module.c is faulty. > mod->arch.fdesc_offset is relative to the base address of the module, > so you need to add to mod->core_layout.base. aha, got it. I should

Re: [PATCH 3/5] powerpc64: Add .opd based function descriptor dereference

2017-09-19 Thread Sergey Senozhatsky
On (09/19/17 20:22), Michael Ellerman wrote: > > On 2017/09/16 12:53PM, Sergey Senozhatsky wrote: > >> We are moving towards separate kernel and module function descriptor > >> dereference callbacks. This patch enables it for powerpc64. > >> > >&

Re: [PATCH 3/5] powerpc64: Add .opd based function descriptor dereference

2017-09-20 Thread Sergey Senozhatsky
On (09/20/17 11:51), Michael Ellerman wrote: [..] > > unlike ppc_function_entry(), printk() can get called on any symbol, > > not just function pointers. > > > > for example, > > > > cat /proc/kallsyms | grep shrinker_rwsem > > 81a4b1e0 d shrinker_rwsem > > Yep, good point. So your patch

Re: [RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-22 Thread Sergey Senozhatsky
On (09/22/17 11:04), Santosh Sivaraj wrote: [..] > > *** A BIG NOTE *** > > I don't own ia64/ppc64/parisc64 hardware, so the patches are not > > tested. Sorry about that! > > Tested patch series on ppc64 sucessfully. > > You may add tested by to the series. > > Tested-by:

[RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-20 Thread Sergey Senozhatsky
check (Helge) -- fix ppc64 module range check -- add checkpatch patch Sergey Senozhatsky (7): switch dereference_function_descriptor() to `unsigned long' sections: split dereference_function_descriptor() ia64: Add .opd based function descriptor dereference powerpc64: Add .opd based function

[RFC][PATCH v2 2/7] sections: split dereference_function_descriptor()

2017-09-20 Thread Sergey Senozhatsky
ls that does modules' .opd section address range test. [1] https://marc.info/?l=linux-kernel=150472969730573 Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- include/asm-generic/sections.h | 8 ++-- include/linux/moduleloader.h | 4 kernel/module.c

Re: [PATCH 0/5] [RFC] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-20 Thread Sergey Senozhatsky
On (09/20/17 12:20), Helge Deller wrote: [..] > > I've not looked at the specifics case... > > > > Another option is using a struct with a single member and > > passing it by value. > > Actually, we do already have correct structs which could be referenced: > parisc: struct Elf64_Fdesc > ia64:

[RFC][PATCH v2 6/7] symbol lookup: use new kernel and module dereference functions

2017-09-20 Thread Sergey Senozhatsky
' vsprintf handler, because it has the same behavior with '%pS/%ps' now. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- Documentation/printk-formats.txt | 15 +-- kernel/kallsyms.c| 1 + kernel/module.c | 1 + lib/vspr

[RFC][PATCH v2 5/7] parisc64: Add .opd based function descriptor dereference

2017-09-20 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Signed-off-by: Helge Deller <del...@gmx.de> --- arch/parisc/boot/compressed/vmlinux.lds.S | 2 ++ arch/parisc/include/asm/sections.h| 2 ++ arch/pari

Re: [RFC][PATCH v2 7/7] checkpatch: add pF/pf deprecation warning

2017-09-20 Thread Sergey Senozhatsky
On (09/21/17 01:29), Sergey Senozhatsky wrote: > We deprecated '%pF/%pf' printk specifiers, since '%pS/%ps' is now smart > enough to handle function pointer dereference on platforms where such > dereference is required. > > checkpatch warning example: > > WARNING:

[RFC][PATCH v2 4/7] powerpc64: Add .opd based function descriptor dereference

2017-09-20 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/powerpc/include/asm/module.h | 3 +++ arch/powerpc/include/asm/sections.h | 11 +++ arch/powerpc/kernel/module_64.c | 16 arch/po

[RFC][PATCH v2 7/7] checkpatch: add pF/pf deprecation warning

2017-09-20 Thread Sergey Senozhatsky
We deprecated '%pF/%pf' printk specifiers, since '%pS/%ps' is now smart enough to handle function pointer dereference on platforms where such dereference is required. checkpatch warning example: WARNING: Use '%pS/%ps' instead. This pointer extension was deprecated: '%pF' Signed-off-by: Sergey

[RFC][PATCH v2 1/7] switch dereference_function_descriptor() to `unsigned long'

2017-09-20 Thread Sergey Senozhatsky
a = (unsigned long)dereference_function_descriptor(addr); Convert dereference_function_descriptor() users tree-wide. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/ia64/include/asm/sections.h| 6 +++--- arch/parisc/include/asm/sections.h | 2 +- arch/parisc/

[RFC][PATCH v2 7/7] checkpatch: add pF/pf deprecation warning

2017-09-20 Thread Sergey Senozhatsky
We deprecated '%pF/%pf' printk specifiers, since '%pS/%ps' is now smart enough to handle function pointer dereference on platforms where such dereference is required. checkpatch warning example: WARNING: Use '%pS/%ps' instead. This pointer extension was deprecated: '%pF' Signed-off-by: Sergey

Re: [RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-20 Thread Sergey Senozhatsky
On (09/20/17 22:14), Helge Deller wrote: > On 20.09.2017 18:29, Sergey Senozhatsky wrote: > > This patch set attempts to move ia64/ppc64/parisc64 C function > > pointer ABI details out of printk() to arch code. Function dereference > > code now checks if a pointer

Re: [RFC][PATCH v2 7/7] checkpatch: add pF/pf deprecation warning

2017-09-20 Thread Sergey Senozhatsky
On (09/20/17 10:38), Joe Perches wrote: > On Thu, 2017-09-21 at 01:29 +0900, Sergey Senozhatsky wrote: > > We deprecated '%pF/%pf' printk specifiers, since '%pS/%ps' is now smart > > enough to handle function pointer dereference on platforms where such > > de

Re: [RFC][PATCH v2 7/7] checkpatch: add pF/pf deprecation warning

2017-09-21 Thread Sergey Senozhatsky
On (09/20/17 11:24), Joe Perches wrote: > On Wed, 2017-09-20 at 19:53 +0200, Helge Deller wrote: [..] > > Is it worth to mention, that it's still needed in older kernels? > > Just in case some patch get's backported. good question. > I think probably not. > > There are relatively few references

Re: [PATCH v3 04/20] mm: VMA sequence count

2017-09-13 Thread Sergey Senozhatsky
Hi, On (09/13/17 18:56), Laurent Dufour wrote: > Hi Sergey, > > On 13/09/2017 13:53, Sergey Senozhatsky wrote: > > Hi, > > > > On (09/08/17 20:06), Laurent Dufour wrote: [..] > > ok, so what I got on my box is: > > > > vm_munmap() -&g

Re: [PATCH 0/5] [RFC] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-18 Thread Sergey Senozhatsky
On (09/18/17 20:39), Helge Deller wrote: [..] > > A few new warnings when building on ia64: > > > > arch/ia64/kernel/module.c:931: warning: passing argument 1 of > > 'dereference_function_descriptor' makes pointer from integer without a cast > > arch/ia64/kernel/module.c:931: warning: return

Re: [PATCH 0/5] [RFC] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-18 Thread Sergey Senozhatsky
On (09/18/17 10:44), Luck, Tony wrote: [..] > > A few new warnings when building on ia64: > > arch/ia64/kernel/module.c:931: warning: passing argument 1 of > 'dereference_function_descriptor' makes pointer from integer without a cast > arch/ia64/kernel/module.c:931: warning: return makes

Re: [RFC][PATCH v2 6/7] symbol lookup: use new kernel and module dereference functions

2017-09-21 Thread Sergey Senozhatsky
On (09/21/17 01:29), Sergey Senozhatsky wrote: [..] > + %pS versatile_init+0x0/0x110 > + %ps versatile_init > %pF versatile_init+0x0/0x110 > %pf versatile_init > - %pS versatile_init+0x0/0x110 > %pSRversat

[RFC][PATCH v2 3/7] ia64: Add .opd based function descriptor dereference

2017-09-20 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/ia64/include/asm/sections.h | 10 +- arch/ia64/kernel/module.c| 13 + arch/ia64/kernel/vmlinux.lds.S | 2 ++ 3 files changed, 24 inse

Re: [PATCH v3 04/20] mm: VMA sequence count

2017-09-13 Thread Sergey Senozhatsky
Hi, On (09/08/17 20:06), Laurent Dufour wrote: [..] > @@ -903,6 +910,7 @@ int __vma_adjust(struct vm_area_struct *vma, unsigned > long start, > mm->map_count--; > mpol_put(vma_policy(next)); > kmem_cache_free(vm_area_cachep, next); > +

Re: [PATCH v2 00/20] Speculative page faults

2017-09-10 Thread Sergey Senozhatsky
On (09/08/17 11:24), Laurent Dufour wrote: > Hi Sergey, > > I can't see where such a chain could happen. > > I tried to recreate it on top of the latest mm tree, to latest stack output > but I can't get it. > How did you raised this one ? Hi Laurent, didn't do anything special, the box even

[PATCHv3 6/7] symbol lookup: use new kernel and module dereference functions

2017-09-29 Thread Sergey Senozhatsky
' vsprintf handler, because it has the same behavior with '%pS/%ps' now. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Tested-by: Helge Deller <del...@gmx.de> # parisc64 Tested-by: Santosh Sivaraj <sant...@fossix.org> # powerpc64 Acked-by: Michael Ellerman &l

[PATCHv3 7/7] checkpatch: add pF/pf deprecation warning

2017-09-29 Thread Sergey Senozhatsky
We deprecated '%pF/%pf' printk specifiers, since '%pS/%ps' is now smart enough to handle function pointer dereference on platforms where such dereference is required. checkpatch warning example: WARNING: Deprecated vsprintf pointer extension '%pF' - use %pS instead Signed-off-by: Sergey

[PATCHv3 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-29 Thread Sergey Senozhatsky
range check -- add checkpatch patch Sergey Senozhatsky (7): switch dereference_function_descriptor() to `unsigned long' sections: split dereference_function_descriptor() ia64: Add .opd based function descriptor dereference powerpc64: Add .opd based function descriptor dereference

[PATCHv3 4/7] powerpc64: Add .opd based function descriptor dereference

2017-09-29 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Tested-by: Helge Deller <del...@gmx.de> # parisc64 Tested-by: Santosh Sivaraj <sant...@fossix.org> # powerpc64 Acked-by: Michael Ellerman <m...@ellerma

[PATCHv3 5/7] parisc64: Add .opd based function descriptor dereference

2017-09-29 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Signed-off-by: Helge Deller <del...@gmx.de> Tested-by: Helge Deller <del...@gmx.de> # parisc64 Tested-by: Santosh Sivaraj <sant...@fossix.org> # powerpc64

[PATCHv3 2/7] sections: split dereference_function_descriptor()

2017-09-29 Thread Sergey Senozhatsky
ls that does modules' .opd section address range test. [1] https://marc.info/?l=linux-kernel=150472969730573 Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Tested-by: Helge Deller <del...@gmx.de> # parisc64 Tested-by: Santosh Sivaraj <sant...@fossix.org> # p

[PATCHv3 1/7] switch dereference_function_descriptor() to `unsigned long'

2017-09-29 Thread Sergey Senozhatsky
a = (unsigned long)dereference_function_descriptor(addr); Convert dereference_function_descriptor() users tree-wide. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Tested-by: Helge Deller <del...@gmx.de> # parisc64 Tested-by: Santosh Sivaraj <sant...@fossix.org>

[PATCHv3 3/7] ia64: Add .opd based function descriptor dereference

2017-09-29 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end]. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Tested-by: Helge Deller <del...@gmx.de> # parisc64 Tested-by: Santosh Sivaraj <sant...@fossix.org> # powerpc64 Acked-by: Michael Ellerman <m...@ellerman.id.au&g

Re: [RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-27 Thread Sergey Senozhatsky
On (09/27/17 16:26), Michael Ellerman wrote: [..] > > Tested-by: Santosh Sivaraj > > Thanks Santosh. > > I also gave it a quick spin. I'll give you an ack for the powerpc changes. > > Acked-by: Michael Ellerman (powerpc) > > > Thanks for cleaning

Re: [RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-09-25 Thread Sergey Senozhatsky
On (09/22/17 16:48), Luck, Tony wrote: [..] > Tested patch series on ia64 successfully. > > Tested-by: Tony Luck thanks! > After this goes upstream, you should submit a patch to get rid of > all uses of %pF (70 instances in 35 files) and %pf (63 in 34) > > Perhaps break

Re: [PATCH v2 14/20] mm: Provide speculative fault infrastructure

2017-08-20 Thread Sergey Senozhatsky
On (08/18/17 00:05), Laurent Dufour wrote: [..] > + /* > + * MPOL_INTERLEAVE implies additional check in mpol_misplaced() which > + * are not compatible with the speculative page fault processing. > + */ > + pol = __get_vma_policy(vma, address); > + if (!pol) > +

Re: [PATCHv3 1/7] switch dereference_function_descriptor() to `unsigned long'

2017-10-19 Thread Sergey Senozhatsky
On (10/04/17 10:24), Petr Mladek wrote: [..] > To make it clear. All these comments are not a big deal and I do > not want to invalidate all the acked-by and tested-by just because > of them. > > But please, consider removing this change if we need to do > another iteration of this patchset. IMHO,

Re: [PATCHv3 6/7] symbol lookup: use new kernel and module dereference functions

2017-10-19 Thread Sergey Senozhatsky
Sorry for the delay and thanks for taking a look. I'll try to re-spin the patch set by the end of this week/early next week. On (10/04/17 13:53), Petr Mladek wrote: [..] > Note that kallsyms_lookup() and module_address_lookup() is used > in many other situations. we dereference only things

Re: [PATCHv3 2/7] sections: split dereference_function_descriptor()

2017-10-19 Thread Sergey Senozhatsky
On (10/04/17 11:00), Petr Mladek wrote: [..] > > /* random extra sections (if any). Override > > diff --git a/include/linux/moduleloader.h b/include/linux/moduleloader.h > > index 4d0cb9bba93e..172904e9cded 100644 > > --- a/include/linux/moduleloader.h > > +++ b/include/linux/moduleloader.h > >

Re: [PATCHv3 5/7] parisc64: Add .opd based function descriptor dereference

2017-10-19 Thread Sergey Senozhatsky
On (10/04/17 12:40), Petr Mladek wrote: > > +unsigned long dereference_module_function_descriptor(struct module *mod, > > +unsigned long addr) > > +{ > > + unsigned long start_opd = (Elf64_Addr)mod->core_layout.base + > > +

Re: [PATCHv3 4/7] powerpc64: Add .opd based function descriptor dereference

2017-10-19 Thread Sergey Senozhatsky
On (10/04/17 11:21), Petr Mladek wrote: [..] > > +#ifdef PPC64_ELF_ABI_v1 > > +unsigned long dereference_module_function_descriptor(struct module *mod, > > +unsigned long addr) > > +{ > > + if (addr < mod->arch.start_opd || addr >=

Re: [PATCHv3 6/7] symbol lookup: use new kernel and module dereference functions

2017-10-23 Thread Sergey Senozhatsky
On (10/20/17 15:08), Petr Mladek wrote: > On Thu 2017-10-19 15:42:35, Sergey Senozhatsky wrote: > > Sorry for the delay and thanks for taking a look. > > > > I'll try to re-spin the patch set by the end of this week/early next > > week. > > > > >

Re: [PATCHv4 3/6] powerpc64: Add .opd based function descriptor dereference

2017-11-13 Thread Sergey Senozhatsky
On (11/13/17 12:41), Santosh Sivaraj wrote: > * Sergey Senozhatsky <sergey.senozhat...@gmail.com> wrote (on 2017-11-10 > 08:48:27 +0900): > > > We are moving towards separate kernel and module function descriptor > > dereference callbacks. This pat

Re: [PATCHv4 0/6] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-11-28 Thread Sergey Senozhatsky
On (11/28/17 16:47), Petr Mladek wrote: > On Fri 2017-11-10 08:48:24, Sergey Senozhatsky wrote: > > Hello, > > > > A reworked version. There is a new dereference_symbol_descriptor() > > function now, where "the magic happens&qu

Re: [PATCHv4 0/6] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-11-13 Thread Sergey Senozhatsky
On (11/13/17 18:17), Helge Deller wrote: > On 10.11.2017 00:48, Sergey Senozhatsky wrote: > > All Ack-s/Tested-by-s were dropped, since the patch set has been > > reworked. I'm kindly asking arch-s maintainers and developers to test it > > once again. Sorry for any inco

Re: [PATCHv4 5/6] symbol lookup: introduce dereference_symbol_descriptor()

2017-11-10 Thread Sergey Senozhatsky
On (11/10/17 10:09), Luck, Tony wrote: > On Fri, Nov 10, 2017 at 08:48:29AM +0900, Sergey Senozhatsky wrote: > > -Examples:: > > - > > - printk("Going to call: %pF\n", gettimeofday); > > - printk("Going to call: %pF\n", p->func); >

Re: [PATCHv4 0/6] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-11-10 Thread Sergey Senozhatsky
On (11/10/17 10:11), Luck, Tony wrote: > On Fri, Nov 10, 2017 at 08:48:24AM +0900, Sergey Senozhatsky wrote: > > All Ack-s/Tested-by-s were dropped, since the patch set has been > > reworked. I'm kindly asking arch-s maintainers and developers to test it > > once

[PATCHv4 3/6] powerpc64: Add .opd based function descriptor dereference

2017-11-09 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end). Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/powerpc/include/asm/module.h | 3 +++ arch/powerpc/include/asm/sections.h | 12 arch/powerpc/kernel/module_64.c | 14 ++ arch/po

[PATCHv4 0/6] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-11-09 Thread Sergey Senozhatsky
ge) -- fix parisc module descriptor range check (Helge) -- fix ppc64 module range check -- add checkpatch patch Sergey Senozhatsky (6): sections: split dereference_function_descriptor() ia64: Add .opd based function descriptor dereference powerpc64: Add .opd based function descriptor d

[PATCHv4 4/6] parisc64: Add .opd based function descriptor dereference

2017-11-09 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end). Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Signed-off-by: Helge Deller <del...@gmx.de> --- arch/parisc/boot/compressed/vmlinux.lds.S | 2 ++ arch/parisc/include/asm/sections.h| 6 ++ arch/pari

[PATCHv4 6/6] checkpatch: add pF/pf deprecation warning

2017-11-09 Thread Sergey Senozhatsky
We deprecated '%pF/%pf' printk specifiers, since '%pS/%ps' is now smart enough to handle function pointer dereference on platforms where such dereference is required. Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> Signed-off-by: Joe Perches <j...@perches.com> Cc: An

[PATCHv4 2/6] ia64: Add .opd based function descriptor dereference

2017-11-09 Thread Sergey Senozhatsky
that are within [module->opd.start, module->opd.end). Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- arch/ia64/include/asm/sections.h | 10 +- arch/ia64/kernel/module.c| 12 arch/ia64/kernel/vmlinux.lds.S | 2 ++ 3 files changed, 23 inse

[PATCHv4 5/6] symbol lookup: introduce dereference_symbol_descriptor()

2017-11-09 Thread Sergey Senozhatsky
: if it belongs to .opd section then we need to dereference it. The kernel and modules have their own .opd sections, obviously, that's why we need to split dereference_function_descriptor() and use separate kernel and module dereference arch callbacks. Signed-off-by: Sergey Senozhatsky

[PATCHv4 1/6] sections: split dereference_function_descriptor()

2017-11-09 Thread Sergey Senozhatsky
ls that does modules' .opd section address range test. [1] https://marc.info/?l=linux-kernel=150472969730573 Signed-off-by: Sergey Senozhatsky <sergey.senozhat...@gmail.com> --- include/asm-generic/sections.h | 8 ++-- include/linux/module.h | 3 +++ kernel/module.c

Re: [v5,22/22] powerpc/mm: Add speculative page fault

2017-11-06 Thread Sergey Senozhatsky
On (11/02/17 15:11), Laurent Dufour wrote: > On 26/10/2017 10:14, kemi wrote: > > Some regression is found by LKP-tools(linux kernel performance) on this > > patch series > > tested on Intel 2s/4s Skylake platform. > > The regression result is sorted by the metric will-it-scale.per_process_ops.

Re: [PATCHv4 5/6] symbol lookup: introduce dereference_symbol_descriptor()

2017-12-05 Thread Sergey Senozhatsky
Hello, so we got a number of build-error reports [somehow I thought 0day has compile tested the patches already; well, I was wrong] basically on congifs that have no KALLSYMS. Petr, can we replace 0006 with the following patch? 8<--- --- --- From: Sergey Senozhatsky <sergey.se

Re: [PATCHv4 5/6] symbol lookup: introduce dereference_symbol_descriptor()

2017-12-06 Thread Sergey Senozhatsky
On (12/06/17 11:32), Petr Mladek wrote: [..] > > diff --git a/Documentation/printk-formats.txt > > b/Documentation/printk-formats.txt > > index aa0a776c817a..02745028e909 100644 > > --- a/Documentation/printk-formats.txt > > +++ b/Documentation/printk-formats.txt > > @@ -61,41 +61,31 @@

Re: [PATCH v9 4/6] init: allow initcall tables to be emitted using relative references

2018-06-27 Thread Sergey Senozhatsky
trace_initcall_start(call); > + ret = call(); > + trace_initcall_finish(call, ret); > + ce++; > } > } printk bits look OK to me. The patch set works fine on my x86_64 and does reduce the size of vmlinux. Acked-by: Sergey Senozhatsky -ss

Re: [PATCHv3 4/7] powerpc64: Add .opd based function descriptor dereference

2017-10-19 Thread Sergey Senozhatsky
Hello, Michael, sorry for the delay. I'm catching up with the emails after... absence. On (10/04/17 22:06), Michael Ellerman wrote: > Petr Mladek <pmla...@suse.com> writes: > > On Sat 2017-09-30 11:53:16, Sergey Senozhatsky wrote: > >> diff --git a/arch/powerpc/kernel/

Re: [RFC][PATCH v2 0/7] printk/ia64/ppc64/parisc64: let's deprecate %pF/%pf printk specifiers

2017-10-19 Thread Sergey Senozhatsky
Michael, On (09/27/17 15:01), Michael Ellerman wrote: > Sergey Senozhatsky <sergey.senozhatsky.w...@gmail.com> writes: > > > On (09/22/17 16:48), Luck, Tony wrote: > > [..] > >> Tested patch series on ia64 successfully. > >> > >> Tested

[PATCH] powerpc: use a CONSOLE_LOGLEVEL_DEBUG macro

2019-01-07 Thread Sergey Senozhatsky
Use a CONSOLE_LOGLEVEL_DEBUG macro for console_loglevel rather than a naked number. Signed-off-by: Sergey Senozhatsky --- arch/powerpc/kernel/udbg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/powerpc/kernel/udbg.c b/arch/powerpc/kernel/udbg.c index 7cc38b5b58bc

Re: [PATCH v3 1/7] dump_stack: Support adding to the dump stack arch description

2019-02-07 Thread Sergey Senozhatsky
no real objections; dump_stack_add_arch_desc() can do. FWIW, Reviewed-by: Sergey Senozhatsky -ss

Re: [PATCH v3 1/7] dump_stack: Support adding to the dump stack arch description

2019-02-10 Thread Sergey Senozhatsky
On (02/08/19 13:55), Steven Rostedt wrote: [..] > > + if (len) { > > + /* > > +* Order the stores above in vsnprintf() vs the store of the > > +* space below which joins the two strings. Note this doesn't > > +* make the code truly race free because

Re: [PATCH] vsprintf: Do not break early boot with probing addresses

2019-05-13 Thread Sergey Senozhatsky
On (05/13/19 14:42), Petr Mladek wrote: > > The "(null)" is good enough by itself and already an established > > practice.. > > (efault) made more sense with the probe_kernel_read() that > checked wide range of addresses. Well, I still think that > it makes sense to distinguish a pure NULL. And

Re: [PATCH] vsprintf: Do not break early boot with probing addresses

2019-05-13 Thread Sergey Senozhatsky
On (05/14/19 11:07), Sergey Senozhatsky wrote: > How about this: > > if ptr < PAGE_SIZE -> "(null)" No, this is totally stupid. Forget about it. Sorry. > if IS_ERR_VALUE(ptr)-> "(fault)" But Steven's "(fault)" is nice. -ss

Re: [PATCH] vsprintf: Do not break early boot with probing addresses

2019-05-15 Thread Sergey Senozhatsky
On (05/14/19 21:13), Geert Uytterhoeven wrote: > I would immediately understand there's a missing IS_ERR() check in a > function that can return -EINVAL, without having to add a new printk() > to find out what kind of bogus value has been received, and without > having to reboot, and trying to

Re: [PATCH] vsprintf: Do not break early boot with probing addresses

2019-05-10 Thread Sergey Senozhatsky
On (05/10/19 10:06), Petr Mladek wrote: [..] > I am going to send a patch replacing probe_kernel_address() with > a simple check: > > if ((unsigned long)ptr < PAGE_SIZE || IS_ERR_VALUE(ptr)) > return "(efault)"; I'm OK with this. Probing ptrs was a good idea, it just didn't

Re: [PATCH] vsprintf: Do not break early boot with probing addresses

2019-05-10 Thread Sergey Senozhatsky
On (05/10/19 10:42), Petr Mladek wrote: [..] > Fixes: 3e5903eb9cff70730 ("vsprintf: Prevent crash when dereferencing invalid > pointers") > Signed-off-by: Petr Mladek FWIW Reviewed-by: Sergey Senozhatsky -ss

Re: [PATCH] vsprintf: Do not break early boot with probing addresses

2019-05-09 Thread Sergey Senozhatsky
On (05/09/19 21:47), Linus Torvalds wrote: >[ Sorry about html and mobile crud, I'm not at the computer right now ] >How about we just undo the whole misguided probe_kernel_address() thing? But the problem will remain - %pS/%pF on PPC (and some other arch-s) do

Re: [PATCH] vsprintf: Do not break early boot with probing addresses

2019-05-09 Thread Sergey Senozhatsky
On (05/09/19 14:19), Petr Mladek wrote: > 1. Report on Power: > > Kernel crashes very early during boot with with CONFIG_PPC_KUAP and > CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG > > The problem is the combination of some new code called via printk(), > check_pointer() which calls

Re: [PATCH 00/50] Add log level to show_stack()

2019-11-10 Thread Sergey Senozhatsky
On (19/11/08 14:04), Petr Mladek wrote: [..] > I agree that it is complicated to pass the loglevel as > a parameter. It would be better define the default > log level for a given code section. It might be stored > in task_struct for the normal context and in per-CPU > variables for interrupt

Re: [PATCH 00/50] Add log level to show_stack()

2019-11-13 Thread Sergey Senozhatsky
On (19/11/13 02:25), Dmitry Safonov wrote: > I guess I've pointed that in my point of view price for one-time testing > code is cheaper than adding a new printk feature to swap log levels on > the fly. [..] > I've gone through functions used by sysrq driver and the same changes > introducing log

  1   2   >