[PATCH 13/32] softirq: Pass softirq vector number to lockdep on vector execution

2019-02-12 Thread Frederic Weisbecker
Pass the softirq vector number to lockdep on callback execution so that we know which one is involved while holding a lock. We will then be able to pick up the proper LOCK_USED_IN_*_SOFTIRQ index to perform the finegrained verifications. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho

[PATCH 06/32] locking/lockdep: Prepare check_usage_*() to handle plain masks

2019-02-12 Thread Frederic Weisbecker
mark_lock_irq() is going to deal with lock usages that gather multiple softirq vectors at once. Therefore the validation through check_usage_backwards() and check_usage_forwards() will need to handle expanded usage masks. So enhance those functions to that purpose. Signed-off-by: Frederic

[PATCH 00/32] softirq: Per vector masking v2

2019-02-12 Thread Frederic Weisbecker
For those who missed the infinitely invasive and carpal tunnel unfriendly v1: https://lwn.net/Articles/768157/ Softirqs masking is an all or nothing operation. It's currently not possible to disable a single vector. Yet some workloads are interested in deterministic latencies for vectors

[PATCH 29/32] locking/lockdep: Branch the new vec-finegrained softirq masking to lockdep

2019-02-12 Thread Frederic Weisbecker
Now that we have full support from softirqs to perform per vector masking, let's feed lockdep with the proper inputs and push the vector numbers involved in a base softirq lock usage: LOCK_ENABLED_SOFTIRQ: push local_softirq_enabled() LOCK_USED_IN_SOFTIRQ: push curr->softirq_context, modified by

[PATCH 31/32] locking: Introduce spin_[un]lock_bh_mask()

2019-02-12 Thread Frederic Weisbecker
It allows us to extend the coverage of vector finegrained masking throughout softirq safe locking. This is especially interesting with networking that makes extensive use of it. It works the same way as local_bh_disable_mask(): bh = spin_lock_bh_mask(lock, BIT(NET_RX_SOFTIRQ)); [...]

[PATCH 19/32] softirq: Rename _local_bh_enable() to local_bh_enable_no_softirq()

2019-02-12 Thread Frederic Weisbecker
The bottom half masking APIs have become interestingly confusing with all these flavours: local_bh_enable() _local_bh_enable() local_bh_enable_ip() __local_bh_enable_ip() _local_bh_enable() is an exception here because it's the only

[PATCH 20/32] softirq: Move vectors bits to bottom_half.h

2019-02-12 Thread Frederic Weisbecker
From: Frederic Weisbecker Using the bottom-half masking APIs defined in linux/bottom-half.h won't be possible without passing the relevant softirq vectors that are currently defined in linux/interrupt.h Yet we can't include linux/interrupt.h from linux/bottom-half.h due to circular

[PATCH 26/32] softirq: Support per vector masking

2019-02-12 Thread Frederic Weisbecker
Provide the low level APIs to support per-vector masking. In order to allow these to properly nest with itself and with full softirq masking APIs, we provide two mechanisms: 1) Self nesting: use a caller stack saved/restored state model similar to that of local_irq_save() and

[PATCH 21/32] x86: Init softirq enabled field

2019-02-12 Thread Frederic Weisbecker
From: Frederic Weisbecker All softirqs must be set enabled on boot. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab Cc: Joel Fernandes Cc: Thomas Gleixner Cc: Pavan Kondeti Cc: Paul E . McKenney Cc: David S . Miller Cc: Ingo Molnar Cc: Sebastian Andrzej Siewior Cc: Linus

[PATCH 25/32] softirq: Prepare for mixing all/per-vector masking

2019-02-12 Thread Frederic Weisbecker
In order to be able to mix and nest full and per vector softirq masking, we need to be able to track the nesting state using a "full masking" counter and a mask of "individual disabled vectors". Start with introducing the full masking counter. For now it's a simple mirror of softirq_count()

[PATCH 22/32] softirq: Check enabled vectors before processing

2019-02-12 Thread Frederic Weisbecker
There is no need to process softirqs if none of those pending are enabled. Check about that early to avoid unnecessary overhead. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab Cc: Joel Fernandes Cc: Thomas Gleixner Cc: Pavan Kondeti Cc: Paul E . McKenney Cc: David S . Miller

[PATCH 24/32] softirq: Uninline !CONFIG_TRACE_IRQFLAGS __local_bh_disable_ip()

2019-02-12 Thread Frederic Weisbecker
The common code between both versions of __local_bh_disable_ip(), whether CONFIG_TRACE_IRQFLAGS is on or off, is going to grow up in order to support vector masking granularity. Merge these versions together to prepare for that. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab Cc:

[PATCH 30/32] softirq: Allow to soft interrupt vector-specific masked contexts

2019-02-12 Thread Frederic Weisbecker
Remove the old protections that prevented softirqs from interrupting any softirq-disabled context. Now that we can disable specific vectors on a given piece of code, we want to be able to soft-interrupt those places with other vectors. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab

[PATCH 10/32] locking/lockdep: Make mark_lock() verbosity aware of vector

2019-02-12 Thread Frederic Weisbecker
Expand the effective usage bit on top of the lock usage bit/vector pair while in verbose mode logging in mark_lock(). FIXME: This only handle the first bit in the mask. We may need to iterate over all of them. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab Cc: Joel Fernandes Cc:

[PATCH 07/32] locking/lockdep: Prepare state_verbose() to handle all softirqs

2019-02-12 Thread Frederic Weisbecker
Loosely handle all the softirq vectors verbosity under the same function. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab Cc: Joel Fernandes Cc: Thomas Gleixner Cc: Pavan Kondeti Cc: Paul E . McKenney Cc: David S . Miller Cc: Ingo Molnar Cc: Sebastian Andrzej Siewior Cc:

[PATCH 28/32] locking/lockdep: Update check_flags() according to new layout

2019-02-12 Thread Frederic Weisbecker
current->softirqs_enabled used to mean that either all or no softirqs are enabled. Now things are getting a bit different with the new per vector masking extension after which current->softirqs_enabled will stay on as long as there is a single vector still enabled. Let's adapt the check to the

Re: [RFC PATCH v1 07/25] printk-rb: add functionality required by printk

2019-02-12 Thread Linus Torvalds
On Tue, Feb 12, 2019 at 6:30 AM John Ogness wrote: > > + while (atomic_long_read(>lost)) { > + atomic_long_dec(>lost); > + rb->seq++; > + } This looks like crazy garbage. It's neither atomic

[PATCH 13/13] perf tools: Modularize auxtrace_buffer fetch function

2019-02-12 Thread Mathieu Poirier
Making the auxtrace_buffer fetch function modular so that it can be called from different decoding context (timeless vs. non-timeless), avoiding to repeat code. No change in functionality is introduced by this patch. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 41

[PATCH 32/32] net: Make softirq vector masking finegrained on release_sock()

2019-02-12 Thread Frederic Weisbecker
This is a usage example of spin_lock_bh_mask(). NET_RX, TIMER and TASKLET are the three softirqs that have been reported by lockdep to be used for this socket lock, at least on my own usecases. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab Cc: Joel Fernandes Cc: Thomas Gleixner

[PATCH 09/13] perf tools: Rethink kernel address initialisation

2019-02-12 Thread Mathieu Poirier
Moving initialisation of the kernel start address to function cs_etm__setup_queues(), considered to be the common denominator for queue initialisation. That way we don't have to repeat the same code at different places. No change of functionatlity is introduced by this patch. Signed-off-by:

[PATCH 11/13] perf tools: Modularize main decoder function

2019-02-12 Thread Mathieu Poirier
Making the main decoder block modular so that it can be called from different decoding context (timeless vs. non-timeless), avoiding to repeat code. No change in functionality is introduced by this patch. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 41

[PATCH 02/13] perf tools: Remove unused structure field "time" and "timestamp"

2019-02-12 Thread Mathieu Poirier
Field "time" and "timestamp" in structure cs_etm_queue are no longer used and need to be removed. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 12 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c

[PATCH 10/13] perf tools: Make cs_etm__run_decoder() queue independent

2019-02-12 Thread Mathieu Poirier
This patch makes decoding of auxtrace buffer centered around a struct cs_etm_queue. This eliminates surperflous variables and is a precursor for work that simplifies the main decoder loop. Signed-off-by: Mathieu Poirier --- .../perf/util/cs-etm-decoder/cs-etm-decoder.h | 7 ---

[PATCH 00/13] perf tools: CoreSight code cleanup and refactoring

2019-02-12 Thread Mathieu Poirier
Good day Arnaldo, The only reason I'm sending this set so late in the cycle is that it does absolutely nothing other than cleaning up and refactoring code - not a single new feature is added here. As such if my colleagues on CoreSight get to review it fast enough I leave it entirely to you to

[PATCH 08/13] perf tools: Cleaning up function cs_etm__alloc_queue()

2019-02-12 Thread Mathieu Poirier
Function cs_etm__alloc_queue() should only be concerned with the allocation of memory for the etmq and accompanying decoder. Everything else should be done in the calling function. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 37 - 1 file

[PATCH 05/13] perf tools: Fix memory leak in error path

2019-02-12 Thread Mathieu Poirier
Memory allocated for variable 't_params' isn't released properly in the error path of function cs_etm_queue *cs_etm__alloc_queue() and cs_etm__dump_event(), something this patch addresses. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 20 +--- 1 file changed, 13

[PATCH 07/13] perf tools: Fix erroneous comment

2019-02-12 Thread Mathieu Poirier
The comment just before initialising the decoder is plane wrong since it is part of the decoding queue setup function and the operation code specifically mention that trace data is to be decoded rather than printed out. This patch simply fix the comment to prevent people from getting really

[PATCH 03/13] perf tools: Fix wrong return values in error path

2019-02-12 Thread Mathieu Poirier
Function cs_etm__mem_access() is supposed to return a u32 but the error path returns negative values at a couple of places, something that really throws off the clients using it. Fix the situation by return '0'. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 4 ++-- 1 file

[PATCH] Add the SPDX header to include/linux/hash.h

2019-02-12 Thread Domenico Andreoli
From: Domenico Andreoli It is unlikely that who contributes to this file is unaware of the kernel licensing but bringing the license statement into the file itself makes it properly reusable in different contexts. CC: Daniel Borkmann CC: Francesco Fusco CC: George Spelvin CC: Hannes Frederic

[PATCH 12/13] perf tools: Modularize main packet processing loop

2019-02-12 Thread Mathieu Poirier
Making the main packet processing loop modular so that it can be called from different decoding context (timeless vs. non-timless), avoiding to repeat code. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 129 ++- 1 file changed, 72

[PATCH 04/13] perf tools: Introducing function cs_etm_decoder__init_dparams()

2019-02-12 Thread Mathieu Poirier
Introducing function cs_etm_decoder__init_dparams() to avoid repeating code at two different places. Signed-off-by: Mathieu Poirier --- .../perf/util/cs-etm-decoder/cs-etm-decoder.h | 3 +- tools/perf/util/cs-etm.c | 41 +-- 2 files changed, 30

[PATCH 06/13] perf tools: Introducing function cs_etm__init_trace_params()

2019-02-12 Thread Mathieu Poirier
The trace parameter initialisation code is repeated in two different places, something that bloats the file and can lead to errors. This is fixed by introducing a helper function and calling the right protocol initialisation code when required. Signed-off-by: Mathieu Poirier ---

[PATCH 14/32] x86: Revert "x86/irq: Demote irq_cpustat_t::__softirq_pending to u16"

2019-02-12 Thread Frederic Weisbecker
This reverts commit 9aee5f8a7e30330d0a8f4c626dc924ca5590aba5. We are going to need the 16 high bits above in order to implement a softirq enable mask. x86 is the only architecture that doesn't use unsigned int to implement softirq_pending. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho

[PATCH 01/13] perf tools: Remove unused structure field "state"

2019-02-12 Thread Mathieu Poirier
Field "state" in structure cs_etm_queue is no longer used and needs to be removed. Signed-off-by: Mathieu Poirier --- tools/perf/util/cs-etm.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c index 0b11d653cfbe..ebd68eb43da9 100644 ---

[PATCH 27/32] locking/lockdep: Remove redundant softirqs on check

2019-02-12 Thread Frederic Weisbecker
It makes no more sense to check for redundant softirqs on because trace_softirqs_on() is no more symmetrical to trace_softirqs_off(). Indeed trace_softirqs_off() is called whenever we know that all softirq vectors have been disabled. And trace_softirqs_on() is called everytime we enable at least

[PATCH 23/32] softirq: Remove stale comment

2019-02-12 Thread Frederic Weisbecker
__local_bh_disable_ip() is neither for strict internal use nor does it require the caller to disable hardirqs. Probaby a celebration for ancient behaviour. Signed-off-by: Frederic Weisbecker Cc: Mauro Carvalho Chehab Cc: Joel Fernandes Cc: Thomas Gleixner Cc: Pavan Kondeti Cc: Paul E .

Re: [PATCH 2/5] vfio/spapr_tce: use pinned_vm instead of locked_vm to account pinned pages

2019-02-12 Thread Daniel Jordan
On Tue, Feb 12, 2019 at 04:50:11PM +, Christopher Lameter wrote: > On Tue, 12 Feb 2019, Alexey Kardashevskiy wrote: > > > Now it is 3 independent accesses (actually 4 but the last one is > > diagnostic) with no locking around them. Why do not we need a lock > > anymore precisely? Thanks, > >

Re: [PATCH] ARC: Explicitly set ARCH_SLAB_MINALIGN = 8

2019-02-12 Thread Vineet Gupta
On 2/8/19 2:55 AM, Alexey Brodkin wrote: > By default ARCH_SLAB_MINALIGN is defined in "include/linux/slab.h" as > "__alignof__(unsigned long long)" which looks fine but not for ARC. Just for the record, the issue happens because a LLOCKD (exclusive 64-bit load) was trying to use a 32-bit aligned

Re: [RFC PATCH 4/4] mm: Add merge page notifier

2019-02-12 Thread Alexander Duyck
On Tue, 2019-02-12 at 10:09 +0800, Aaron Lu wrote: > On 2019/2/11 23:58, Alexander Duyck wrote: > > On Mon, 2019-02-11 at 14:40 +0800, Aaron Lu wrote: > > > On 2019/2/5 2:15, Alexander Duyck wrote: > > > > From: Alexander Duyck > > > > > > > > Because the implementation was limiting itself to

Re: [PATCH 2/2] signal: Better detection of synchronous signals

2019-02-12 Thread Oleg Nesterov
On 02/11, Eric W. Biederman wrote: > > Oleg Nesterov writes: > > >> + /* > >> + * Check if there is another siginfo for the same signal. > >> + */ > >> + list_for_each_entry_continue(q, >list, list) { > >> + if (q->info.si_signo == sync->info.si_signo) > >> + goto

Re: [RFC][Patch v8 0/7] KVM: Guest Free Page Hinting

2019-02-12 Thread Nitesh Narayan Lal
On 2/12/19 4:24 AM, David Hildenbrand wrote: > On 12.02.19 10:03, Wang, Wei W wrote: >> On Tuesday, February 5, 2019 4:19 AM, Nitesh Narayan Lal wrote: >>> The following patch-set proposes an efficient mechanism for handing freed >>> memory between the guest and the host. It enables the guests

Re: [Patch v2 1/4] efi/x86: turn EFI runtime semaphore into a global lock

2019-02-12 Thread Hedi Berriche
On Thu, Feb 07, 2019 at 17:38 Hedi Berriche wrote: On Thu, Feb 07, 2019 at 16:05 Ard Biesheuvel wrote: On Thu, 7 Feb 2019 at 05:23, Hedi Berriche wrote: Make efi_runtime_lock semaphore global so that it can be used by EFI runtime callers that may be defined outside efi/runtime-wrappers.c.

Re: [Patch v2 1/4] efi/x86: turn EFI runtime semaphore into a global lock

2019-02-12 Thread Ard Biesheuvel
On Tue, 12 Feb 2019 at 18:25, Hedi Berriche wrote: > > On Thu, Feb 07, 2019 at 17:38 Hedi Berriche wrote: > >On Thu, Feb 07, 2019 at 16:05 Ard Biesheuvel wrote: > >>On Thu, 7 Feb 2019 at 05:23, Hedi Berriche wrote: > >>> > >>>Make efi_runtime_lock semaphore global so that it can be used by EFI >

Re: [PATCH] arm: use memblocks_present

2019-02-12 Thread Russell King - ARM Linux admin
On Mon, Feb 11, 2019 at 01:04:59PM +, Peng Fan wrote: > arm_memory_present is doing same thing as memblocks_present, so > let's use common code memblocks_present instead of platform > specific arm_memory_present. > > Signed-off-by: Peng Fan Looks good, please put it in the patch system,

Re: [PATCH 1/2] ARC: U-boot: check arguments paranoidly

2019-02-12 Thread Eugeniy Paltsev
On Tue, 2019-02-12 at 16:45 +, Vineet Gupta wrote: > On 2/12/19 7:39 AM, Eugeniy Paltsev wrote: > > Handle U-boot arguments paranoidly: > > * don't allow to pass unknown tag. > > * try to use external device tree blob only if corresponding tag > >(TAG_DTB) is set. > > * check that magic

RE: [PATCH] ARC: Explicitly set ARCH_SLAB_MINALIGN = 8

2019-02-12 Thread David Laight
From: Vineet Gupta > Sent: 12 February 2019 17:17 > > On 2/8/19 2:55 AM, Alexey Brodkin wrote: > > By default ARCH_SLAB_MINALIGN is defined in "include/linux/slab.h" as > > "__alignof__(unsigned long long)" which looks fine but not for ARC. > > Just for the record, the issue happens because a

Re: [PATCHv4 10/13] node: Add memory caching attributes

2019-02-12 Thread Keith Busch
On Tue, Feb 12, 2019 at 08:49:03AM +, Jonathan Cameron wrote: > On Mon, 11 Feb 2019 08:23:04 -0700 > Keith Busch wrote: > > > On Sun, Feb 10, 2019 at 09:19:58AM -0800, Jonathan Cameron wrote: > > > On Sat, 9 Feb 2019 09:20:53 +0100 > > > Brice Goglin wrote: > > > > > > > Hello Keith > >

Re: [PATCH 1/2] ARC: U-boot: check arguments paranoidly

2019-02-12 Thread Vineet Gupta
On 2/12/19 9:25 AM, Eugeniy Paltsev wrote: >> This is technically changing the ABI - I think we don't need to enforce this >> - >> keep ignoring this > I think it's better to add this check: > * This check doesn't break backward compatibility. ARC U-boot pass zero to r1 >from the beginnings,

Re: [PATCH 01/32] locking/lockdep: Use expanded masks on find_usage_*() functions

2019-02-12 Thread Linus Torvalds
On Tue, Feb 12, 2019 at 9:14 AM Frederic Weisbecker wrote: > > In order to perform softirq vector-finegrained locking validation we'll > need to be able to check multiple vector usages at once. Prepare the low > level usage mask check functions for that purpose. Why is this using "u64 mask"?

Re: [PATCH] x86/speculation: Add document to describe Spectre and its mitigations

2019-02-12 Thread Tim Chen
On 2/12/19 4:00 AM, Thomas Gleixner wrote: > Tim, > > On Wed, 30 Jan 2019, Thomas Gleixner wrote: >> Also please follow the L1TF documentation which explains for each of the >> mitigation modes which kind of attacks are prevented and which holes >> remain. >> >> It's a good start but far from

Re: [PATCH 02/32] locking/lockdep: Introduce struct lock_usage

2019-02-12 Thread Linus Torvalds
On Tue, Feb 12, 2019 at 9:14 AM Frederic Weisbecker wrote: > > +static u64 lock_usage_mask(struct lock_usage *usage) > +{ > + return BIT(usage->bit); > +} More insane "u64" - and it's *incorrect* too. #define BIT(nr)(1UL << (nr)) fundamentally means that "BIT()"

[PATCH] NFC: st21nfca: Fix a couple of fall-through warnings

2019-02-12 Thread Gustavo A. R. Silva
In preparation to enabling -Wimplicit-fallthrough, mark switch cases where we are expecting to fall through. This patch fixes the following warnings by adding a missing break and a fall-through annotation: drivers/nfc/st21nfca/dep.c: In function ‘st21nfca_tm_event_send_data’:

Re: [PATCH v3 2/2] media: cedrus: Add H264 decoding support

2019-02-12 Thread Jernej Škrabec
Dne torek, 12. februar 2019 ob 13:47:13 CET je Maxime Ripard napisal(a): > On Mon, Feb 11, 2019 at 04:48:17PM -0300, Ezequiel Garcia wrote: > > On Mon, 2019-02-11 at 15:39 +0100, Maxime Ripard wrote: > > > Introduce some basic H264 decoding support in cedrus. So far, only the > > > baseline

Re: [PATCH 01/18] MIPS: lantiq: pass struct device to DMA API functions

2019-02-12 Thread Paul Burton
Hello, Christoph Hellwig wrote: > The DMA API generally relies on a struct device to work properly, and > only barely works without one for legacy reasons. Pass the easily > available struct device from the platform_device to remedy this. > > Also use GFP_KERNEL instead of GFP_ATOMIC as the

Re: [PATCH v4 1/4] gpu: ipu-v3: ipu-ic: Rename yuv2rgb encoding matrices

2019-02-12 Thread Steve Longerbeam
On 2/12/19 2:17 AM, Philipp Zabel wrote: Hi Steve, On Mon, 2019-02-11 at 10:24 -0800, Steve Longerbeam wrote: [...] Looking more closely at these coefficients now, I see you are right, they are the BT.601 YUV full-range coefficients (Y range 0 to 1, U and V range -0.5 to 0.5). Well, not

[PATCH] parport: ieee1284: mark expected switch fall-through

2019-02-12 Thread Gustavo A. R. Silva
In preparation to enabling -Wimplicit-fallthrough, mark switch cases where we are expecting to fall through. This patch fixes the following warning: drivers/parport/ieee1284.c: In function ‘parport_read’: drivers/parport/ieee1284.c:722:6: warning: this statement may fall through

[PATCH 2/2] ARM: dts: exynos: Use ADC for Exynos4x12 on Exyno4412

2019-02-12 Thread Krzysztof Kozlowski
Exynos4412 should use "samsung,exynos4212-adc" compatible to report proper number of (four) channels. Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/exynos4412.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/exynos4412.dtsi

[PATCH 0/2] ARM/dts/iio: exynos-adc: Use proper number of channels for Exynos4x12

2019-02-12 Thread Krzysztof Kozlowski
Hi, The DTS patch depends on iio change. I will take it through samsung-soc for consecutive release, once iio/adc gets accepted. Best regards, Krzysztof Krzysztof Kozlowski (2): iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 ARM: dts: exynos: Use ADC for Exynos4x12 on

[PATCH 1/2] iio: adc: exynos-adc: Use proper number of channels for Exynos4x12

2019-02-12 Thread Krzysztof Kozlowski
Exynos4212 and Exynos4412 have only four ADC channels so using "samsung,exynos-adc-v1" compatible (for eight channels ADCv1) on them is wrong. Add a new compatible for Exynos4x12. Signed-off-by: Krzysztof Kozlowski --- .../bindings/iio/adc/samsung,exynos-adc.txt | 4 +++-

Re: [PATCH 05/32] locking/lockdep: Prepare valid_state() to handle plain masks

2019-02-12 Thread Linus Torvalds
On Tue, Feb 12, 2019 at 9:14 AM Frederic Weisbecker wrote: > > + > + while (vectors) { > + long fs = __ffs64(vectors) + 1; > + > + vectors >>= fs; This is wrong. If "vectors" only has the high hit set, you end up with "fs" having the value "64". And then

[PATCH] ARM: dts: exynos: Document regulator used by ADC on Odroid U3

2019-02-12 Thread Krzysztof Kozlowski
Add ADC node to Odroid U3 with its regulator, purely for documentation purposes. The ADC stays disabled because it is not used (all inputs grounded). Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/exynos4412-odroidu3.dts | 5 + 1 file changed, 5 insertions(+) diff --git

Re: [linux-sunxi] [PATCH v3 2/2] media: cedrus: Add H264 decoding support

2019-02-12 Thread Jernej Škrabec
Dne torek, 12. februar 2019 ob 11:43:14 CET je Maxime Ripard napisal(a): > Hi, > > On Mon, Feb 11, 2019 at 08:21:31PM +0100, Jernej Škrabec wrote: > > > + reg = 0; > > > + /* > > > + * FIXME: This bit tells the video engine to use the default > > > + * quantization matrices. This will obviously

Re: [PATCH] ARC: Explicitly set ARCH_SLAB_MINALIGN = 8

2019-02-12 Thread Vineet Gupta
+CC some folks interested in alignment stuff in the past. On 2/12/19 9:30 AM, David Laight wrote: > From: Vineet Gupta >> Sent: 12 February 2019 17:17 >> >> On 2/8/19 2:55 AM, Alexey Brodkin wrote: >>> By default ARCH_SLAB_MINALIGN is defined in "include/linux/slab.h" as >>>

Re: [PATCH 09/32] locking/lockdep: Save stack trace for each softirq vector involved

2019-02-12 Thread Linus Torvalds
On Tue, Feb 12, 2019 at 9:15 AM Frederic Weisbecker wrote: > > > +static int save_trace_mask(struct lock_class *class, u64 mask) > +{ > + int bit = 0; > + > + while (mask) { > + long fs = __ffs64(mask) + 1; > + > + mask >>= fs; > + bit += fs;

Re: [PATCH 03/32] locking/lockdep: Convert usage_mask to u64

2019-02-12 Thread Linus Torvalds
On Tue, Feb 12, 2019 at 9:14 AM Frederic Weisbecker wrote: > > The usage mask is going to expand to validate softirq related usages in > a per-vector finegrained way. So here you start explaining why you wanted that u64. Much too late, considering that you already changed to u64 earlier.

Re: [PATCH v2 16/28] thunderbolt: Discover preboot PCIe paths the boot firmware established

2019-02-12 Thread Lukas Wunner
On Wed, Feb 06, 2019 at 04:17:26PM +0300, Mika Westerberg wrote: > /* dword 0 */ > hop.next_hop = path->hops[i].next_hop_index; > hop.out_port = path->hops[i].out_port->port; > - /* TODO: figure out why these are good values */ > -

Re: [PATCH] drivers: base: add support to skip power management in device/driver model

2019-02-12 Thread Sudeep Holla
On Mon, Feb 11, 2019 at 05:20:20PM +0100, Ulf Hansson wrote: > On Thu, 7 Feb 2019 at 16:29, Sudeep Holla wrote: > > > > On Thu, Feb 07, 2019 at 04:18:57PM +0100, Ulf Hansson wrote: > > > On Thu, 7 Feb 2019 at 16:06, Sudeep Holla wrote: > > > > [...] > > > > > > Indeed, I was ignoring knowing

Re: [PATCH net-next 0/3] Remove getting SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS

2019-02-12 Thread David Miller
From: Florian Fainelli Date: Mon, 11 Feb 2019 13:17:46 -0800 > AFAICT there is no code that attempts to get the value of the attribute > SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS while it is used with > switchdev_port_attr_set(). > > This is effectively no doing anything and it can slow down future

Re: [PATCH v4 3/4] gpu: ipu-v3: ipu-ic: Add support for BT.709 encoding

2019-02-12 Thread Steve Longerbeam
On 2/12/19 3:34 AM, Philipp Zabel wrote: Hi Steve, On Mon, 2019-02-11 at 17:20 -0800, Steve Longerbeam wrote: [...] Should we support YUV BT.601 <-> YUV REC.709 conversions? That would require separate encodings for input and output. How about if we pass the input and output encodings to

[PATCH 4/4] ARM: dts: exynos: Add ADC node to Exynos5410 and Odroid XU

2019-02-12 Thread Krzysztof Kozlowski
Move the ADC from exynos5420.dtsi to a shared file between Exynos5410 and Exynos542x: exynos54xx.dtsi. Enable the ADC on Odroid XU board. Signed-off-by: Krzysztof Kozlowski --- arch/arm/boot/dts/exynos5410-odroidxu.dts | 5 + arch/arm/boot/dts/exynos5410.dtsi | 6 ++

[PATCH 0/4] clk/ARM: exynos: Add ADC to Exynos5410 (Odroid XU)

2019-02-12 Thread Krzysztof Kozlowski
Hi, The DTS patch depends on bindings header with clock ID. I will take it through samsung-soc for consecutive release. Best regards, Krzysztof Krzysztof Kozlowski (4): dt-bindings: clock: exynos: Put CLK_UART3 in order dt-bindings: clock: exynos: Add ADC clock ID to Exynos5410 clk:

[PATCH 1/4] dt-bindings: clock: exynos: Put CLK_UART3 in order

2019-02-12 Thread Krzysztof Kozlowski
Order the CLK_UART3 by ID. No change in functionality. Signed-off-by: Krzysztof Kozlowski --- include/dt-bindings/clock/exynos5410.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/dt-bindings/clock/exynos5410.h b/include/dt-bindings/clock/exynos5410.h index

[PATCH 3/4] clk: samsung: exynos5410: Add gate clock for ADC

2019-02-12 Thread Krzysztof Kozlowski
Add the gate clock for ADC block on Exynos5410. Signed-off-by: Krzysztof Kozlowski --- drivers/clk/samsung/clk-exynos5410.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/clk/samsung/clk-exynos5410.c b/drivers/clk/samsung/clk-exynos5410.c index 0a0b09591e6f..b2da2c8fa0c7 100644

[PATCH 2/4] dt-bindings: clock: exynos: Add ADC clock ID to Exynos5410

2019-02-12 Thread Krzysztof Kozlowski
Add ID for TSADC clock to Exynos5410. Choose the same value of ID as in Exynos5420 to make it simpler/compatible in future (although clock driver code is not shared). Signed-off-by: Krzysztof Kozlowski --- include/dt-bindings/clock/exynos5410.h | 1 + 1 file changed, 1 insertion(+) diff --git

RE: [PATCH v3 08/10] x86/setcpuid: Add kernel option setcpuid

2019-02-12 Thread Yu, Fenghua
> From: Peter Zijlstra [mailto:pet...@infradead.org] > On Tue, Feb 12, 2019 at 02:51:00PM +0100, Thomas Gleixner wrote: > > On Tue, 12 Feb 2019, Peter Zijlstra wrote: > > > > > On Mon, Feb 11, 2019 at 11:16:43AM -0800, Fenghua Yu wrote: > > > > 4. The feature can be disabled by kernel option > > >

Re: [PATCH 0/3] gcc-plugins: Introduce stackinit plugin

2019-02-12 Thread Kees Cook
On Mon, Jan 28, 2019 at 4:12 PM Alexander Popov wrote: > > On 23.01.2019 14:03, Kees Cook wrote: > > This adds a new plugin "stackinit" that attempts to perform unconditional > > initialization of all stack variables > > Hello Kees! Hello everyone! > > I was curious about the performance impact

Re: [PATCH net-next 0/3] Remove getting SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS

2019-02-12 Thread Florian Fainelli
On 2/12/19 9:50 AM, David Miller wrote: > From: Florian Fainelli > Date: Mon, 11 Feb 2019 13:17:46 -0800 > >> AFAICT there is no code that attempts to get the value of the attribute >> SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS while it is used with >> switchdev_port_attr_set(). >> >> This is

Re: [PATCH net-next] net/skbuff: fix up kernel-doc placement

2019-02-12 Thread David Miller
From: Brian Norris Date: Mon, 11 Feb 2019 13:02:25 -0800 > There are several skb_* functions where the locked and unlocked > functions are confusingly documented. For several of them, the > kernel-doc for the unlocked version is placed above the locked version, > which to the casual reader makes

[PATCH v2 3/3] mm: show number of vmalloc pages in /proc/meminfo

2019-02-12 Thread Roman Gushchin
Vmalloc() is getting more and more used these days (kernel stacks, bpf and percpu allocator are new top users), and the total % of memory consumed by vmalloc() can be pretty significant and changes dynamically. /proc/meminfo is the best place to display this information: its top goal is to show

[PATCH v2 0/3] vmalloc enhancements

2019-02-12 Thread Roman Gushchin
The patchset contains few changes to the vmalloc code, which are leading to some performance gains and code simplification. Also, it exports a number of pages, used by vmalloc(), in /proc/meminfo. Patch (1) removes some redundancy on __vunmap(). Patch (2) separates memory allocation and data

[PATCH v2 2/3] mm: separate memory allocation and actual work in alloc_vmap_area()

2019-02-12 Thread Roman Gushchin
alloc_vmap_area() is allocating memory for the vmap_area, and performing the actual lookup of the vm area and vmap_area initialization. This prevents us from using a pre-allocated memory for the map_area structure, which can be used in some cases to minimize the number of required memory

[PATCH v2 1/3] mm: refactor __vunmap() to avoid duplicated call to find_vm_area()

2019-02-12 Thread Roman Gushchin
__vunmap() calls find_vm_area() twice without an obvious reason: first directly to get the area pointer, second indirectly by calling remove_vm_area(), which is again searching for the area. To remove this redundancy, let's split remove_vm_area() into __remove_vm_area(struct vmap_area *), which

Re: [PATCH -mm -V7] mm, swap: fix race between swapoff and some swap operations

2019-02-12 Thread Tim Chen
On 2/11/19 10:47 PM, Huang, Ying wrote: > Andrea Parri writes: > + if (!si) + goto bad_nofile; + + preempt_disable(); + if (!(si->flags & SWP_VALID)) + goto unlock_out; >>> >>> After Hugh alluded to barriers, it seems the read of SWP_VALID could

Re: [PATCH v6 5/9] vsprintf: Factor out %pV handler as va_format()

2019-02-12 Thread Joe Perches
On Tue, 2019-02-12 at 14:00 +0100, Petr Mladek wrote: > On Fri 2019-02-08 09:11:17, Joe Perches wrote: > > On Fri, 2019-02-08 at 16:23 +0100, Petr Mladek wrote: > > > Move the code from the long pointer() function. We are going to improve > > > error handling that will make it more complicated. >

Re: [PATCH] x86/kvm/nVMX: read from MSR_IA32_VMX_PROCBASED_CTLS2 only when it is available

2019-02-12 Thread Jim Mattson
On Tue, Feb 12, 2019 at 6:16 AM Paolo Bonzini wrote: > > On 07/02/19 22:17, Jim Mattson wrote: > >> SDM says MSR_IA32_VMX_PROCBASED_CTLS2 is only available "If > >> (CPUID.01H:ECX.[5] && IA32_VMX_PROCBASED_CTLS[63])". It was found that > >> some old cpus (namely "Intel(R) Core(TM)2 CPU 6600 @

Re: [RFC][PATCH 0/3] arm64 relaxed ABI

2019-02-12 Thread Catalin Marinas
On Mon, Feb 11, 2019 at 12:32:55PM -0800, Evgenii Stepanov wrote: > On Mon, Feb 11, 2019 at 9:28 AM Kevin Brodsky wrote: > > On 19/12/2018 12:52, Dave Martin wrote: > > > Really, the kernel should do the expected thing with all "non-weird" > > > memory. > > > > > > In lieu of a proper definition

Re: [PATCH v5] bluetooth: Fix WARNING in tty_set_termios()

2019-02-12 Thread shuah
On 2/9/19 2:42 AM, Johan Hovold wrote: On Fri, Feb 08, 2019 at 04:06:09PM -0700, Shuah Khan wrote: tty_set_termios() has the following WARN_ON which can be triggered with a syscall to invoke TIOCSETD __NR_ioctl. WARN_ON(tty->driver->type == TTY_DRIVER_TYPE_PTY &&

[PATCH v2 00/21] ASoC: dmaengine updates, secondary CPU DAI for Odroid boards

2019-02-12 Thread Sylwester Nawrocki
This series restores support for the secondary CPU DAI in samsung/i2s.c driver and adds support for secondary CPU DAI on Odroid boards. I have added 4 more clean up patches comparing to first version of the patch set (16/22...19/22). The first patch adds new platform device for the secondary

[PATCH v2 01/21] ASoC: samsung: i2s: Restore support for the secondary PCM

2019-02-12 Thread Sylwester Nawrocki
This patch introduces again registration of additional platform device as we still need it for registering the secondary dmaengine PCM component. This patch in most part is a revert of changes done in commit be2c92eb64023e ("ASoC: samsung: i2s: Remove virtual device for secondary DAI")

[PATCH 1/2] gcc-plugins: structleak: Generalize to all variable types

2019-02-12 Thread Kees Cook
This adjusts structleak to also work with non-struct types when they are passed by reference, since those variables may leak just like anything else. This is exposed via an improved set of Kconfig options. (This does mean structleak is slightly misnamed now.) Building with

[PATCH v2 05/21] ASoC: samsung: i2s: Move opclk data to common driver data structure

2019-02-12 Thread Sylwester Nawrocki
The clock for generating I2S signals is also common for both CPU DAIs so move it to the driver's common data structure. Signed-off-by: Sylwester Nawrocki Acked-by: Krzysztof Kozlowski --- sound/soc/samsung/i2s.c | 70 +++-- 1 file changed, 33 insertions(+),

[PATCH v2 06/21] ASoC: samsung: i2s: Move registers cache to common driver data structure

2019-02-12 Thread Sylwester Nawrocki
There is no need to keep the PM suspend/resume register cache separate for each DAI as those registers are common, move related i2s_dai data structure to the driver's common data structure. This will allow us to simplify the code a little eventually and to make it easier to follow.

[PATCH v2 07/21] ASoC: samsung: i2s: Move SFR pointer to common driver data structure

2019-02-12 Thread Sylwester Nawrocki
The SFR region is common for both DAIs so move related data structure field from struct i2s_dai to the common driver data structure. Signed-off-by: Sylwester Nawrocki Acked-by: Krzysztof Kozlowski --- sound/soc/samsung/i2s.c | 105 ++-- 1 file changed, 58

[PATCH v2 13/21] ASoC: samsung: Specify DMA channel names through custom DMA config

2019-02-12 Thread Sylwester Nawrocki
This is a part of conversion of Samsung platforms to use the custom DMA config for specifying DMA channel names, in addition to passing custom DMA device for the secondary CPU DAI's "PCM" component for some variants of the I2S controller. We also don't set the

[PATCH v2 09/21] ASoC: samsung: i2s: Move IP variant data to common driver data structure

2019-02-12 Thread Sylwester Nawrocki
The IP variant data is another thing common for both DAIs, move it to the driver's common data structure. Signed-off-by: Sylwester Nawrocki Acked-by: Krzysztof Kozlowski --- sound/soc/samsung/i2s.c | 42 - 1 file changed, 21 insertions(+), 21

[PATCH 0/2] gcc-plugins: structleak: Generalize to all variable types

2019-02-12 Thread Kees Cook
Instead of a new plugin for stack initialization[1], this improves structleak to handle initialization of all variable types. Since the instrumentation happens at a different point, the "switch" statement changes from the earlier posting[2] are no longer needed. As before, this also introduces a

[PATCH v2 11/21] ASoC: samsung: i2s: Get rid of a static spinlock

2019-02-12 Thread Sylwester Nawrocki
This patch makes the spinlock serializing access to the primary/secondary PCM a per I2S controller lock, rather than a global one. There is no need to have a global lock across multiple I2S controllers in the SoC. Signed-off-by: Sylwester Nawrocki Acked-by: Krzysztof Kozlowski ---

[PATCH v2 10/21] ASoC: samsung: i2s: Move quirks data to common driver data structure

2019-02-12 Thread Sylwester Nawrocki
The quirk flags are common for the primary and the secondary DAI so move respective field from struct i2s_dai to common driver data structure. Signed-off-by: Sylwester Nawrocki Acked-by: Krzysztof Kozlowski --- sound/soc/samsung/i2s.c | 34 +- 1 file changed, 13

[PATCH v2 02/21] ASoC: samsung: i2s: Move clk supplier data to common driver data structure

2019-02-12 Thread Sylwester Nawrocki
Having the clocks provider data in struct samsung_i2s_priv, i.e. per the I2S controller instance, rather than per CPU DAI better models the hardware and simplifies the code a little. The clock provider is common for both DAIs. Signed-off-by: Sylwester Nawrocki Acked-by: Krzysztof Kozlowski ---

[PATCH v2 14/21] ASoC: samsung: Drop DAI DMA data chan_name assignments

2019-02-12 Thread Sylwester Nawrocki
There is now no need to pass DMA channel names through the DAI DMA data, custom DMA config of the PCM is now used for this purpose. Signed-off-by: Sylwester Nawrocki Acked-by: Krzysztof Kozlowski --- sound/soc/samsung/i2s.c | 4 sound/soc/samsung/s3c2412-i2s.c | 2 --

<    3   4   5   6   7   8   9   10   11   12   >