[PATCH v4 10/21] PCI: spear13xx: update PCI config space remap function

2017-04-19 Thread Lorenzo Pieralisi
PCI configuration space should be mapped with a memory region type that generate on the CPU host bus non-posted write transations. Update the driver to use the devm_pci_remap_cfg* interface to make sure the correct memory mappings for PCI configuration space are used. Signed-off-by: Lorenzo Pieral

[PATCH v4 07/21] PCI: ECAM: use pci_remap_cfgspace() to map config region

2017-04-19 Thread Lorenzo Pieralisi
Current ECAM kernel implementation uses ioremap() to map the ECAM configuration space memory region; this is not safe in that on some architectures the ioremap interface provides mappings that allow posted write transactions. This, as highlighted in the PCIe specifications (4.0 - Rev0.3, "Ordering

[PATCH v4 04/21] ARM: implement pci_remap_cfgspace() interface

2017-04-19 Thread Lorenzo Pieralisi
The PCI bus specifications (rev 3.0, 3.2.5 "Transaction Ordering and Posting") define rules for PCI configuration space transactions ordering and posting, that state that configuration writes have to be non-posted transactions. Current ioremap interface on ARM provides mapping functions that provi

[PATCH v4 12/21] PCI: qcom: update PCI config space remap function

2017-04-19 Thread Lorenzo Pieralisi
PCI configuration space should be mapped with a memory region type that generates on the CPU host bus non-posted write transations. Update the driver to use the devm_pci_remap_cfg* interface to make sure the correct memory mappings for PCI configuration space are used. Signed-off-by: Lorenzo Piera

Re: [PATCH] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro

2017-04-19 Thread Sinclair Yeh
Minor nits, otherwise the vmwgfx part, Reviewed-by: Sinclair Yeh On Tue, Apr 18, 2017 at 06:17:00PM -0600, Logan Gunthorpe wrote: > Seeing the kunmap_atomic dma_buf_op shares the same name with a macro s^ > in higmem.h, the former can be aliased if any dma-b

[PATCH v2] sched/cfs: make util/load_avg more stable

2017-04-19 Thread Vincent Guittot
In the current implementation of load/util_avg, we assume that the ongoing time segment has fully elapsed, and util/load_sum is divided by LOAD_AVG_MAX, even if part of the time segment still remains to run. As a consequence, this remaining part is considered as idle time and generates unexpected v

Re: [PATCH] net: phy: fix auto-negotiation stall due to unavailable interrupt

2017-04-19 Thread Alexander Kochetkov
> 19 апр. 2017 г., в 19:32, Florian Fainelli написал(а): > > http://patchwork.ozlabs.org/patch/743773/ > > Roger can you also test Alexander's patch? If MAC use phy_start_aneg() instead of phy_start() my patch will not work as expected. Roger, if patch don’t work for you please check what MAC

Re: irq/affinity: Fix extra vecs calculation

2017-04-19 Thread Keith Busch
On Wed, Apr 19, 2017 at 09:20:27AM -0700, Andrei Vagin wrote: > Hi, > > Something is wrong with this patch. We run CRIU tests for upstream kernels. > And we found that a kernel with this patch can't be booted. > > https://travis-ci.org/avagin/linux/builds/223557750 > > We don't have access to co

Re: RFC: WMI Enhancements

2017-04-19 Thread Pali Rohár
On Wednesday 19 April 2017 18:29:53 mario.limoncie...@dell.com wrote: > > As wrote above, I'm fine with explicit whitelist of WMI GUIDs which > > will be exported to userspace after communication with vendor. > > What about GUID's not yet used by kernel drivers? Would those > default to whitelist

[PATCH v4 06/21] PCI: implement Devres interface to map PCI config space

2017-04-19 Thread Lorenzo Pieralisi
The introduction of the pci_remap_cfgspace() interface allows PCI host controller drivers to map PCI config space through a dedicated kernel interface. Current PCI host controller drivers use the devm_ioremap_* Devres interfaces to map PCI configuration space regions so in order to update them to t

Re: [PATCH] clk: qcom: add parent for venus core0 and core1 gdsc's

2017-04-19 Thread Stephen Boyd
On 02/09, Stanimir Varbanov wrote: > Make venus_gdsc parent of venus gdsc core0 and core1. > > Signed-off-by: Stanimir Varbanov > --- Applied to clk-next -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project

[PATCH v4 03/21] ARM64: implement pci_remap_cfgspace() interface

2017-04-19 Thread Lorenzo Pieralisi
The PCI bus specifications (rev 3.0, 3.2.5 "Transaction Ordering and Posting") defines rules for PCI configuration space transactions ordering and posting, that state that configuration writes are non-posted transactions. This rule is reinforced by the ARM v8 architecture reference manual (issue A

[PATCH v4 00/21] PCI: fix config space memory mappings

2017-04-19 Thread Lorenzo Pieralisi
This patch series[1] is a v4 of a previous version: v3 -> v4: - Reverted back to pci_remap_cfgspace() interface for lack of consensus on ioremap_nopost() semantics - Dropped pci_remap_iospace() rework (owing to lack of adequate pgprot_* attribute description acr

[PATCH v3 tip/core/rcu 01/11] mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU

2017-04-19 Thread Paul E. McKenney
A group of Linux kernel hackers reported chasing a bug that resulted from their assumption that SLAB_DESTROY_BY_RCU provided an existence guarantee, that is, that no block from such a slab would be reallocated during an RCU read-side critical section. Of course, that is not the case. Instead, SLA

[PATCH v3 tip/core/rcu 04/11] rcu: Make RCU_FANOUT_LEAF help text more explicit about skew_tick

2017-04-19 Thread Paul E. McKenney
If you set RCU_FANOUT_LEAF too high, you can get lock contention on the leaf rcu_node, and you should boot with the skew_tick kernel parameter set in order to avoid this lock contention. This commit therefore upgrades the RCU_FANOUT_LEAF help text to explicitly state this. Signed-off-by: Paul E.

[PATCH 12/16] acpi/arm64: Add GTDT table parse driver

2017-04-19 Thread Mark Rutland
From: Fu Wei This patch adds support for parsing arch timer info in GTDT, provides some kernel APIs to parse all the PPIs and always-on info in GTDT and export them. By this driver, we can simplify arm_arch_timer drivers, and separate the ACPI GTDT knowledge from it. Signed-off-by: Fu Wei Sign

[PATCH 09/16] clocksource: arm_arch_timer: move arch_timer_needs_of_probing into DT init call

2017-04-19 Thread Mark Rutland
From: Fu Wei To cleanly split code paths specific to ACPI or DT at a higher level, this patch removes arch_timer_init(), folding the relevant parts of its logic into existing callers. This pathes the way for further rework, and saves a few lines. Signed-off-by: Fu Wei Reviewed-by: Hanjun Guo

[PATCH v3 tip/core/rcu 0/40] SRCU callback parallelization for 4.12

2017-04-19 Thread Paul E. McKenney
Hello! This v3 series moves SRCU from its traditional single per-srcu_struct callback queue to per-srcu_struct/per-CPU callback queues. This involves abstracting functionality from Tree RCU, which results in a large conflict footprint, which in turn results in some otherwise unrelated patches com

[PATCH 11/16] clocksource: arm_arch_timer: split MMIO timer probing.

2017-04-19 Thread Mark Rutland
From: Fu Wei Currently the code to probe MMIO architected timers mixes DT parsing with actual poking of hardware. This makes the code harder than necessary to understand, and makes it difficult to add support for probing via ACPI. This patch splits the DT parsing from HW probing. The DT parsing

[PATCH v3 tip/core/rcu 18/40] rcu: Expedited wakeups need to be fully ordered

2017-04-19 Thread Paul E. McKenney
Expedited grace periods use workqueue handlers that wake up the requesters, but there is no lock mediating this wakeup. Therefore, memory barriers are required to ensure that the handler's memory references are seen by all to occur before synchronize_*_expedited() returns to its caller. Possibly d

[PATCH v3 tip/core/rcu 40/40] rcu: Make non-preemptive schedule be Tasks RCU quiescent state

2017-04-19 Thread Paul E. McKenney
Currently, a call to schedule() acts as a Tasks RCU quiescent state only if a context switch actually takes place. However, just the call to schedule() guarantees that the calling task has moved off of whatever tracing trampoline that it might have been one previously. This commit therefore plumbs

[PATCH v3 tip/core/rcu 35/40] srcu: Create a tiny SRCU

2017-04-19 Thread Paul E. McKenney
In response to automated complaints about modifications to SRCU increasing its size, this commit creates a tiny SRCU that is used in SMP=n && PREEMPT=n builds. Signed-off-by: Paul E. McKenney --- include/linux/srcu.h | 69 ++- include/linux/srcutiny.h | 81 ++ i

[PATCH v3 tip/core/rcu 21/40] srcu: Move to state-based grace-period sequencing

2017-04-19 Thread Paul E. McKenney
The current SRCU grace-period processing might never reach the last portion of srcu_advance_batches(). This is OK given the current implementation, as the first portion, up to the try_check_zero() following the srcu_flip() is sufficient to drive grace periods forward. However, it has the unfortuna

[PATCH v3 tip/core/rcu 16/40] rcu: Add single-element dequeue functions to rcu_segcblist

2017-04-19 Thread Paul E. McKenney
This commit adds single-element dequeue functions to rcu_segcblist. These are less efficient than using the extract and insert functions, but allow more precise debugging code. These functions are thus expected to be used only in debug builds, for example, CONFIG_PROVE_RCU. Signed-off-by: Paul E.

[PATCH v3 tip/core/rcu 11/40] rcu: Place guard on rcu_all_qs() and rcu_note_context_switch() actions

2017-04-19 Thread Paul E. McKenney
The rcu_all_qs() and rcu_note_context_switch() do a series of checks, taking various actions to supply RCU with quiescent states, depending on the outcomes of the various checks. This is a bit much for scheduling fastpaths, so this commit creates a separate ->rcu_urgent_qs field in the rcu_dyntick

[PATCH v3 tip/core/rcu 08/40] rcu: Pull rcu_sched_qs_mask into rcu_dynticks structure

2017-04-19 Thread Paul E. McKenney
The rcu_sched_qs_mask variable is yet another isolated per-CPU variable, so this commit pulls it into the pre-existing rcu_dynticks per-CPU structure. Signed-off-by: Paul E. McKenney --- .../RCU/Design/Data-Structures/Data-Structures.html | 9 - kernel/rcu/tree.c

[PATCH v3 tip/core/rcu 31/40] srcu: Allow a second bit in rcu_seq for SRCU state

2017-04-19 Thread Paul E. McKenney
This commit increases the number of reserved bits at the bottom of an rcu_seq grace-period counter from one to two, as will be needed to accommodate SRCU's three-state grace periods. Signed-off-by: Paul E. McKenney --- kernel/rcu/rcu.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff

[PATCH] [media] sti: hdmi: improve MEDIA_CEC_NOTIFIER dependency

2017-04-19 Thread Arnd Bergmann
When the media subsystem is built as a loadable module, a built-in DRM driver cannot use the cec notifiers: drivers/gpu/drm/sti/sti_hdmi.o: In function `sti_hdmi_remove': sti_hdmi.c:(.text.sti_hdmi_remove+0x28): undefined reference to `cec_notifier_set_phys_addr' sti_hdmi.c:(.text.sti_hdmi_remove

[PATCH v3 tip/core/rcu 12/40] rcu: Default RCU_FANOUT_LEAF to 16 unless explicitly changed

2017-04-19 Thread Paul E. McKenney
If the RCU_EXPERT Kconfig option is not set (the default), then the RCU_FANOUT_LEAF Kconfig option will not be defined, which will cause the leaf-level rcu_node tree fanout to default to 32 on 32-bit systems and 64 on 64-bit systems. This can result in excessive lock contention. This commit theref

Re: [RFC 0/8] Copy Offload with Peer-to-Peer PCI Memory

2017-04-19 Thread Dan Williams
On Wed, Apr 19, 2017 at 9:48 AM, Logan Gunthorpe wrote: > > > On 19/04/17 09:55 AM, Jason Gunthorpe wrote: >> I was thinking only this one would be supported with a core code >> helper.. > > Pivoting slightly: I was looking at how HMM uses ZONE_DEVICE. They add a > type flag to the dev_pagemap str

[PATCH] soc: bcm: brcmstb: Correctly match 7435 SoC

2017-04-19 Thread Florian Fainelli
Remove the duplicate brcm,bcm7425-sun-top-ctrl compatible string and replace it with brcm,bcm7435-sun-top-ctrl which was intentend. Fixes: bd0faf08dc7f ("soc: bcm: brcmstb: Match additional compatible strings") Reported-by: Andreas Oberritter Signed-off-by: Florian Fainelli --- drivers/soc/bcm/

[PATCH v3 tip/core/rcu 32/40] srcu: Merge ->srcu_state into ->srcu_gp_seq

2017-04-19 Thread Paul E. McKenney
Updating ->srcu_state and ->srcu_gp_seq will lead to extremely complex race conditions given multiple callback queues, so this commit takes advantage of the two-bit state now available in rcu_seq counters to store the state in the bottom two bits of ->srcu_gp_seq. Signed-off-by: Paul E. McKenney

[PATCH v3 tip/core/rcu 01/40] rcu: Maintain special bits at bottom of ->dynticks counter

2017-04-19 Thread Paul E. McKenney
Currently, IPIs are used to force other CPUs to invalidate their TLBs in response to a kernel virtual-memory mapping change. This works, but degrades both battery lifetime (for idle CPUs) and real-time response (for nohz_full CPUs), and in addition results in unnecessary IPIs due to the fact that

[PATCH] [media] exynos_hdmi: improve MEDIA_CEC_NOTIFIER dependency

2017-04-19 Thread Arnd Bergmann
When the media subsystem is built as a loadable module, a built-in DRM driver cannot use the cec notifiers: drivers/gpu/drm/exynos/exynos_hdmi.o: In function `hdmi_get_modes': exynos_hdmi.c:(.text.hdmi_get_modes+0x80): undefined reference to `cec_notifier_set_phys_addr_from_edid' drivers/gpu/drm/

[PATCH v3 tip/core/rcu 24/40] srcu: Move combining-tree definitions for SRCU's benefit

2017-04-19 Thread Paul E. McKenney
This commit moves the C preprocessor code that defines the default shape of the rcu_node combining tree to a new include/linux/rcu_node_tree.h file as a first step towards enabling SRCU to create its own combining tree, which in turn enables SRCU to implement per-CPU callback handling, thus avoidin

[PATCH v3 tip/core/rcu 30/40] srcu: Improve rcu_seq grace-period-counter abstraction

2017-04-19 Thread Paul E. McKenney
The expedited grace-period code contains several open-coded shifts know the format of an rcu_seq grace-period counter, which is not particularly good style. This commit therefore creates a new rcu_seq_ctr() function that extracts the counter portion of the counter, and an rcu_seq_state() function

[PATCH v3 tip/core/rcu 13/40] srcu: Abstract multi-tail callback list handling

2017-04-19 Thread Paul E. McKenney
RCU has only one multi-tail callback list, which is implemented via the nxtlist, nxttail, nxtcompleted, qlen_lazy, and qlen fields in the rcu_data structure, and whose operations are open-code throughout the Tree RCU implementation. This has been more or less OK in the past, but upcoming callback-

[PATCH v3 tip/core/rcu 28/40] srcu: Make num_rcu_lvl[] array be external

2017-04-19 Thread Paul E. McKenney
This commit makes the num_rcu_lvl[] array external so that SRCU can make use of it for initializing its upcoming srcu_node tree. Signed-off-by: Paul E. McKenney --- kernel/rcu/rcu.h | 1 + kernel/rcu/tree.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/rcu/rcu.h b

[PATCH v3 tip/core/rcu 22/40] srcu: Add grace-period sequence numbers

2017-04-19 Thread Paul E. McKenney
This commit adds grace-period sequence numbers, which will be used to handle mid-boot grace periods and per-CPU callback lists. Signed-off-by: Paul E. McKenney --- include/linux/srcu.h | 1 + kernel/rcu/srcu.c| 27 +++ 2 files changed, 24 insertions(+), 4 deletions(-

[PATCH v3 tip/core/rcu 19/40] rcu: Fix warning in rcu_seq_end()

2017-04-19 Thread Paul E. McKenney
From: Dmitry Vyukov The rcu_seq_end() function increments seq signifying completion of a grace period, after that checks that the seq is even and wakes _synchronize_rcu_expedited(). The _synchronize_rcu_expedited() function uses wait_event() to wait for even seq. The problem is that wait_event(

[PATCH v3 tip/core/rcu 02/40] rcu: Make arch select smp_mb__after_unlock_lock() strength

2017-04-19 Thread Paul E. McKenney
The definition of smp_mb__after_unlock_lock() is currently smp_mb() for CONFIG_PPC and a no-op otherwise. It would be better to instead provide an architecture-selectable Kconfig option, and select the strength of smp_mb__after_unlock_lock() based on that option. This commit therefore creates ARC

[PATCH v3 tip/core/rcu 07/40] rcu: Semicolon inside RCU_TRACE() for tree.c

2017-04-19 Thread Paul E. McKenney
The current use of "RCU_TRACE(statement);" can cause odd bugs, especially where "statement" is a local-variable declaration, as it can leave a misplaced ";" in the source code. This commit therefore converts these to "RCU_TRACE(statement;)", which avoids the misplaced ";". Reported-by: Josh Tripl

[PATCH v3 tip/core/rcu 05/40] rcu: Semicolon inside RCU_TRACE() for rcu.h

2017-04-19 Thread Paul E. McKenney
The current use of "RCU_TRACE(statement);" can cause odd bugs, especially where "statement" is a local-variable declaration, as it can leave a misplaced ";" in the source code. This commit therefore converts these to "RCU_TRACE(statement;)", which avoids the misplaced ";". Reported-by: Josh Tripl

[PATCH v3 tip/core/rcu 14/40] srcu: Allow SRCU to access rcu_scheduler_active

2017-04-19 Thread Paul E. McKenney
This is primarily a code-movement commit in preparation for allowing SRCU to handle early-boot SRCU grace periods. Signed-off-by: Paul E. McKenney --- include/linux/rcutiny.h | 6 +++--- kernel/rcu/tiny_plugin.h | 9 + kernel/rcu/tree.c| 2 +- kernel/rcu/tree_exp.h| 12 --

[PATCH] ASoC: codec: wm9860: avoid maybe-uninitialized warning

2017-04-19 Thread Arnd Bergmann
The new PLL configuration code triggers a harmless warning: sound/soc/codecs/wm8960.c: In function 'wm8960_configure_clocking': sound/soc/codecs/wm8960.c:735:3: error: 'best_freq_out' may be used uninitialized in this function [-Werror=maybe-uninitialized] wm8960_set_pll(codec, freq_in, best_f

[PATCH v3 tip/core/rcu 15/40] srcu: Allow early boot use of synchronize_srcu()

2017-04-19 Thread Paul E. McKenney
This commit checks for pre-scheduler state, and if that early in the boot process, synchronize_srcu() and friends are no-ops. Signed-off-by: Paul E. McKenney --- kernel/rcu/srcu.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/rcu/srcu.c b/kernel/rcu/srcu.c index e6da9fc1f0e9..7e7e

[PATCH v3 tip/core/rcu 26/40] rcu: Remove redundant levelcnt[] array from rcu_init_one()

2017-04-19 Thread Paul E. McKenney
The levelcnt[] array is identical to num_rcu_lvl[], so this commit removes levelcnt[]. Signed-off-by: Paul E. McKenney --- kernel/rcu/tree.c | 9 +++-- 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c index df3527744af8..9397a6693d70 100644

[PATCH v3 tip/core/rcu 37/40] srcu: Introduce CLASSIC_SRCU Kconfig option

2017-04-19 Thread Paul E. McKenney
The TREE_SRCU rewrite is large and a bit on the non-simple side, so this commit helps reduce risk by allowing the old v4.11 SRCU algorithm to be selected using a new CLASSIC_SRCU Kconfig option that depends on RCU_EXPERT. The default is to use the new TREE_SRCU and TINY_SRCU algorithms, in order t

[PATCH v3 tip/core/rcu 25/40] srcu: Move rcu_init_levelspread() to rcu_tree_node.h

2017-04-19 Thread Paul E. McKenney
This commit moves the rcu_init_levelspread() function from kernel/rcu/tree.c to kernel/rcu/rcu.h so that SRCU can access it. This is another step towards enabling SRCU to create its own combining tree. This commit is code-movement only, give or take knock-on adjustments. Signed-off-by: Paul E. Mc

[PATCH v3 tip/core/rcu 38/40] srcu: Parallelize callback handling

2017-04-19 Thread Paul E. McKenney
Peter Zijlstra proposed using SRCU to reduce mmap_sem contention [1,2], however, there are workloads that could result in a high volume of concurrent invocations of call_srcu(), which with current SRCU would result in excessive lock contention on the srcu_struct structure's ->queue_lock, which prot

[PATCH v3 tip/core/rcu 39/40] srcu: Expedite srcu_schedule_cbs_snp() callback invocation

2017-04-19 Thread Paul E. McKenney
Although Tree SRCU does reduce delays when there is at least one synchronize_srcu_expedited() invocation pending, srcu_schedule_cbs_snp() still waits for SRCU_INTERVAL before invoking callbacks. Since synchronize_srcu_expedited() now posts a callback and waits for that callback to do a wakeup, thi

[PATCH v3 tip/core/rcu 20/40] srcu: Push srcu_advance_batches() fastpath into common case

2017-04-19 Thread Paul E. McKenney
This commit simplifies the SRCU state machine by pushing the srcu_advance_batches() idle-SRCU fastpath into the common case. This is done by giving srcu_reschedule() a delay parameter, which is zero in the call from srcu_advance_batches(). This commit is a step towards numbering callbacks in orde

[PATCH v3 tip/core/rcu 03/40] srcu: Consolidate batch checking into rcu_all_batches_empty()

2017-04-19 Thread Paul E. McKenney
The srcu_reschedule() function invokes rcu_batch_empty() on each of the four rcu_batch structures in the srcu_struct in question twice. Given that this check will also be needed in cleanup_srcu_struct(), this commit consolidates these four checks into a new rcu_all_batches_empty() function. Signed

[PATCH v3 tip/core/rcu 06/40] rcu: Semicolon inside RCU_TRACE() for Tiny RCU

2017-04-19 Thread Paul E. McKenney
The current use of "RCU_TRACE(statement);" can cause odd bugs, especially where "statement" is a local-variable declaration, as it can leave a misplaced ";" in the source code. This commit therefore converts these to "RCU_TRACE(statement;)", which avoids the misplaced ";". Reported-by: Josh Tripl

[PATCH v3 tip/core/rcu 23/40] srcu: Use rcu_segcblist to track SRCU callbacks

2017-04-19 Thread Paul E. McKenney
This commit switches SRCU from custom-built callback queues to the new rcu_segcblist structure. This change associates grace-period sequence numbers with groups of callbacks, which will be needed for efficient processing of per-CPU callbacks. Signed-off-by: Paul E. McKenney --- include/linux/rc

[PATCH v3 tip/core/rcu 17/40] srcu: Move rcu_seq_start() and friends to rcu.h

2017-04-19 Thread Paul E. McKenney
This commit moves rcu_seq_start(), rcu_seq_end(), rcu_seq_snap(), and rcu_seq_done() from kernel/rcu/tree.c to kernel/rcu/rcu.h. This will allow SRCU to use these functions, which in turn will allow SRCU to move from a single global callback queue to a per-CPU callback queue. Signed-off-by: Paul E

[PATCH v3 tip/core/rcu 04/40] srcu: Check for tardy grace-period activity in cleanup_srcu_struct()

2017-04-19 Thread Paul E. McKenney
Users of SRCU are obliged to complete all grace-period activity before invoking cleanup_srcu_struct(). This means that all calls to either synchronize_srcu() or synchronize_srcu_expedited() must have returned, and all calls to call_srcu() must have returned, and the last call to call_srcu() must h

[PATCH v3 tip/core/rcu 36/40] srcutorture: Print Tiny SRCU reader statistics

2017-04-19 Thread Paul E. McKenney
The srcu_torture_stats() function is adapted to the specific srcu_struct layout traditionally used by SRCU. This commit therefore adds support for Tiny SRCU. Signed-off-by: Paul E. McKenney --- kernel/rcu/rcutorture.c | 15 +++ 1 file changed, 11 insertions(+), 4 deletions(-) diff

[PATCH v3 tip/core/rcu 09/40] rcu: Pull rcu_qs_ctr into rcu_dynticks structure

2017-04-19 Thread Paul E. McKenney
The rcu_qs_ctr variable is yet another isolated per-CPU variable, so this commit pulls it into the pre-existing rcu_dynticks per-CPU structure. Signed-off-by: Paul E. McKenney --- .../RCU/Design/Data-Structures/Data-Structures.html | 12 ++-- kernel/rcu/tree.c

[PATCH v3 tip/core/rcu 10/40] rcu: Eliminate flavor scan in rcu_momentary_dyntick_idle()

2017-04-19 Thread Paul E. McKenney
The rcu_momentary_dyntick_idle() function scans the RCU flavors, checking that one of them still needs a quiescent state before doing an expensive atomic operation on the ->dynticks counter. However, this check reduces overhead only after a rare race condition, and increases complexity. This comm

[PATCH v3 tip/core/rcu 29/40] srcu: Fix bogus try_check_zero() comment

2017-04-19 Thread Paul E. McKenney
Signed-off-by: Paul E. McKenney --- kernel/rcu/srcu.c | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/kernel/rcu/srcu.c b/kernel/rcu/srcu.c index 0b511de7ca4d..1a2dc74bb625 100644 --- a/kernel/rcu/srcu.c +++ b/kernel/rcu/srcu.c @@ -260,10 +260,9 @@ static void srcu_gp_s

[PATCH v3 tip/core/rcu 34/40] mm: Use static initialization for "srcu"

2017-04-19 Thread Paul E. McKenney
The MM-notifier code currently dynamically initializes the srcu_struct named "srcu" at subsys_initcall() time, and includes a BUG_ON() to check this initialization in do_mmu_notifier_register(). Unfortunately, there is no foolproof way to verify that an srcu_struct has been initialized, given the

[PATCH v3 tip/core/rcu 33/40] srcu: Crude control of expedited grace periods

2017-04-19 Thread Paul E. McKenney
SRCU's implementation of expedited grace periods has always assumed that the SRCU instance is idle when the expedited request arrives. This commit improves this a bit by maintaining a count of the number of outstanding expedited requests, thus allowing prior non-expedited grace periods accommodate

[PATCH v3 tip/core/rcu 27/40] srcu: Move rcu_node traversal macros to rcu.h

2017-04-19 Thread Paul E. McKenney
This commit moves rcu_for_each_node_breadth_first(), rcu_for_each_nonleaf_node_breadth_first(), and rcu_for_each_leaf_node() from kernel/rcu/tree.h to kernel/rcu/rcu.h so that SRCU can access them. This commit is code-movement only. Signed-off-by: Paul E. McKenney --- kernel/rcu/rcu.h | 35

[PATCH 04/16] clocksource: arm_arch_timer: move enums and defines to header file

2017-04-19 Thread Mark Rutland
From: Fu Wei To support the arm_arch_timer via ACPI we need to share defines and enums between the driver and the ACPI parser code. So we split out the relevant defines and enums into arm_arch_timer.h. No functional change. Signed-off-by: Fu Wei Acked-by: Mark Rutland Tested-by: Xiongfeng Wan

[PATCH 05/16] clocksource: arm_arch_timer: add a new enum for spi type

2017-04-19 Thread Mark Rutland
From: Fu Wei This patch add a new enum "arch_timer_spi_nr" and use it in the driver. Just for code's readability, no functional change. Signed-off-by: Fu Wei Acked-by: Mark Rutland Signed-off-by: Mark Rutland --- drivers/clocksource/arm_arch_timer.c | 4 ++-- include/clocksource/arm_arch_tim

[PATCH 10/16] clocksource: arm_arch_timer: add structs to describe MMIO timer

2017-04-19 Thread Mark Rutland
From: Fu Wei In preparation for ACPI GTDT support, this patch adds structs to describe the MMIO timers indepedent of the firmware interface. Subsequent patches will use these to split the FW/HW probing logic, so that the HW probing logic can be shared by ACPI and DT. Signed-off-by: Fu Wei Revi

[PATCH 2/2] sched/cfs: take into account current time segment

2017-04-19 Thread Vincent Guittot
To not consider the current time segment adds unwanted latency in the load/util_avg responsivness especially when the time is scaled instead of the contribution. Instead of waiting for the current time segment to have fully elapsed before accounting it in load/util_avg, we can already account the e

[PATCH 06/16] clocksource: arm_arch_timer: rework PPI selection

2017-04-19 Thread Mark Rutland
From: Fu Wei Currently, the arch timer driver uses ARCH_TIMER_PHYS_SECURE_PPI to mean the driver will use the secure PPI *and* potentially also use the non-secure PPI. This is somewhat confusing. For arm64 it never makes sense to use the secure PPI, but we do anyway, inheriting this behaviour fr

[PATCH 1/2] sched/cfs: make util/load_avg more stable

2017-04-19 Thread Vincent Guittot
In the current implementation of load/util_avg, we assume that the ongoing time segment has fully elapsed, and util/load_sum is divided by LOAD_AVG_MAX, even if part of the time segment still remains. As a consequence, this remaining part is considered as idle time and generates unexpected variatio

[PATCH 0/2] sched/cfs: make util/load_avg stable

2017-04-19 Thread Vincent Guittot
In the current implementation of load/util_avg, we assume that the ongoing time segment has fully elapsed and util/load_sum is divided by LOAD_AVG_MAX, even if part of the time segment still remains to run . As a consequence, this remaining part is considered as idle time and generates unexpected v

[PATCH] xen/9pfs: select CONFIG_XEN_XENBUS_FRONTEND

2017-04-19 Thread Arnd Bergmann
All Xen frontends need to select this symbol to avoid a link error: net/built-in.o: In function `p9_trans_xen_init': :(.text+0x149e9c): undefined reference to `__xenbus_register_frontend' Fixes: d4b40a02f837 ("xen/9pfs: build 9pfs Xen transport driver") Signed-off-by: Arnd Bergmann --- net/9p/K

[PATCH 08/16] clocksource: arm_arch_timer: refactor arch_timer_needs_probing

2017-04-19 Thread Mark Rutland
From: Fu Wei When booting with DT, it's possible for timer nodes to be probed in any order. Some common initialisation needs to occur after all nodes have been probed, and arch_timer_common_init() has code to detect when this has happened. This logic is DT-specific, and it would be best to facto

[PATCH 02/16] clocksource: arm_arch_timer: rename type macros

2017-04-19 Thread Mark Rutland
From: Fu Wei In preparation for moving the type macros out into a header, rename these so they are namespaced w.r.t. the arch timer. We'll apply the same prefix to other definitions in subsequent patches. This will aid consistency and avoid potential name clahses when this move occurs. No functi

[PATCH v2] MAINTAINERS: update Amitkumar's email address

2017-04-19 Thread Brian Norris
His email is bouncing, and he'd like to use this new one. Cc: Amitkumar Karwar Cc: Nishant Sarmukadam Cc: Ganapathi Bhat Cc: Xinming Hu Signed-off-by: Brian Norris --- v2: update, don't remove MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAIN

[PATCH 03/16] clocksource: arm_arch_timer: rename the PPI enum

2017-04-19 Thread Mark Rutland
From: Fu Wei In preparation for moving the PPI enum out into a header, rename the enum and its constituent values these so they are namespaced w.r.t. the arch timer. This will aid consistency and avoid potential name clashes when this move occurs. No functional change. Signed-off-by: Fu Wei Te

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

2017-04-19 Thread Steven Rostedt
On Thu, 21 Apr 2016 13:48:42 +0200 Petr Mladek 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 : do_raw_spin_lock <-_raw_s

Re: [PATCH] MAINTAINERS: drop akarwar from mwifiex

2017-04-19 Thread Brian Norris
On Wed, Apr 19, 2017 at 05:26:03PM +0300, Kalle Valo wrote: > amit karwar writes: > > Updating email address would be fine. Please replace > > akar...@marvell.com with amitkar...@gmail.com > > Sounds good. Brian, can you cook up a new patch? Done.

Re: [RFC 0/8] Copy Offload with Peer-to-Peer PCI Memory

2017-04-19 Thread Jason Gunthorpe
On Wed, Apr 19, 2017 at 10:48:51AM -0600, Logan Gunthorpe wrote: > The pci_enable_p2p_bar function would then just need to call > devm_memremap_pages with the dma_map callback set to a function that > does the segment check and the offset calculation. I don't see a use for the dma_map function poi

[PATCH] rcuperf: fix duplicate struct initializer

2017-04-19 Thread Arnd Bergmann
Building with "make W=1" shows a set of new warnings in the rcuperf code: kernel/rcu/rcuperf.c:282:11: error: initialized field overwritten [-Werror=override-init] .async = srcu_call_rcu, kernel/rcu/rcuperf.c:282:11: note: (near initialization for 'sched_ops.async') kernel/rcu/rcuperf.c:283:16

[PATCH] [media] rainshadow-cec: use strlcat instead of strncat

2017-04-19 Thread Arnd Bergmann
gcc warns about an obviously incorrect use of strncat(): drivers/media/usb/rainshadow-cec/rainshadow-cec.c: In function 'rain_cec_adap_transmit': drivers/media/usb/rainshadow-cec/rainshadow-cec.c:299:4: error: specified bound 48 equals the size of the destination [-Werror=stringop-overflow=] It

Loan Offers

2017-04-19 Thread Loan Service
Do you need a loan to pay up bill or to start a business? Email Us

[PATCH] staging: rtl8723bs: fix empty-body warning

2017-04-19 Thread Arnd Bergmann
The newly added driver causes lots of warnings like drivers/staging/rtl8723bs/core/rtw_recv.c: In function 'validate_recv_frame': drivers/staging/rtl8723bs/core/rtw_recv.c:1602:4: error: suggest braces around empty body in an 'else' statement [-Werror=empty-body] DBG_COUNTER(adapter->rx_logs.

Re: [PATCH 0/3] clk: cs2000: tidyup missing settings

2017-04-19 Thread Stephen Boyd
On 04/18, Kuninori Morimoto wrote: > > Hi Stephen > > These are missing settings for current cs2000. > it is working without these settings, thus, not urgent. > But, necessary for correct/safety operation. Thanks. Applied all to clk-next. > > Kuninori Morimoto (3): > clk: cs2000: enable clo

Re: [PATCH v6 05/15] lockdep: Implement crossrelease feature

2017-04-19 Thread Peter Zijlstra
On Tue, Mar 14, 2017 at 05:18:52PM +0900, Byungchul Park wrote: > +/* > + * Only access local task's data, so irq disable is only required. A comment describing what it does; record a hist_lock entry; would be more useful. > + */ > +static void add_xhlock(struct held_lock *hlock) > +{ > + uns

Re: [PATCH v6 05/15] lockdep: Implement crossrelease feature

2017-04-19 Thread Peter Zijlstra
On Tue, Mar 14, 2017 at 05:18:52PM +0900, Byungchul Park wrote: > +config LOCKDEP_CROSSRELEASE > + bool "Lock debugging: make lockdep work for crosslocks" > + select PROVE_LOCKING depends PROVE_LOCKING instead ? > + default n > + help > + This makes lockdep work for

Re: [PATCH] xen/9pfs: select CONFIG_XEN_XENBUS_FRONTEND

2017-04-19 Thread Stefano Stabellini
On Wed, 19 Apr 2017, Arnd Bergmann wrote: > All Xen frontends need to select this symbol to avoid a link error: > > net/built-in.o: In function `p9_trans_xen_init': > :(.text+0x149e9c): undefined reference to `__xenbus_register_frontend' > > Fixes: d4b40a02f837 ("xen/9pfs: build 9pfs Xen transpor

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

2017-04-19 Thread Peter Zijlstra
On Wed, Apr 19, 2017 at 01:13:41PM -0400, Steven Rostedt wrote: > On Thu, 21 Apr 2016 13:48:42 +0200 > Petr Mladek 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 :-( >

Re: [PATCH v17 2/3] usb: USB Type-C connector class

2017-04-19 Thread Badhri Jagan Sridharan
On Wed, Apr 19, 2017 at 8:14 AM, Guenter Roeck wrote: > On Wed, Apr 19, 2017 at 07:45:00AM -0700, Badhri Jagan Sridharan wrote: >> On Wed, Apr 19, 2017 at 4:23 AM, Heikki Krogerus >> wrote: >> > Hi, >> > >> > On Tue, Apr 18, 2017 at 11:52:33AM -0700, Badhri Jagan Sridharan wrote: >> >> Hi Heikki,

Re: [RFC] usb-phy-generic: Add support to SMSC USB3315

2017-04-19 Thread Sergei Shtylyov
On 04/19/2017 01:24 PM, Peter Senna Tschudin wrote: We need the SMSC USB3315 clock and regulator to always be initialized. We also need the PHY driver to take the PHY out of reset. This patch extends the existing USB generic nop phy driver to include a new initialization path. A new compatible

RE: RFC: WMI Enhancements

2017-04-19 Thread Mario.Limonciello
> -Original Message- > From: Pali Rohár [mailto:pali.ro...@gmail.com] > Sent: Wednesday, April 19, 2017 11:55 AM > To: Limonciello, Mario > Cc: dvh...@infradead.org; r...@rjwysocki.net; l...@amacapital.net; > len.br...@intel.com; corentin.ch...@gmail.com; l...@kernel.org; > andriy.shevche.

Re: [PATCH v6 2/8] doc: Add documentation for Coresight CPU debug

2017-04-19 Thread Mathieu Poirier
On 6 April 2017 at 07:30, Leo Yan wrote: > Update kernel-parameters.txt to add new parameter: > coresight_cpu_debug.enable is a knob to enable debugging at boot time. > > Add detailed documentation, which contains the implementation, Mike > Leach excellent summary for "clock and power domain". At

Re: [PATCH 1/2] xen/arm, arm64: fix xen_dma_ops after 815dd18 "Consolidate get_dma_ops..."

2017-04-19 Thread Stefano Stabellini
Hello Russell, Can I have your acked-by on the following fix (original patch is 1492117462-19886-1-git-send-email-sstabell...@kernel.org)? Thanks, Stefano On Tue, 18 Apr 2017, Catalin Marinas wrote: > On Thu, Apr 13, 2017 at 02:04:21PM -0700, Stefano Stabellini wrote: > > The following commit:

[PATCH net-next] i40evf: hide unused variable

2017-04-19 Thread Arnd Bergmann
On architectures with larger pages, we get a warning about an unused variable: drivers/net/ethernet/intel/i40evf/i40evf_main.c: In function 'i40evf_configure_rx': drivers/net/ethernet/intel/i40evf/i40evf_main.c:690:21: error: unused variable 'netdev' [-Werror=unused-variable] This moves the dec

[PATCH net-next] liquidio: remove unnecessary variable assignment

2017-04-19 Thread Arnd Bergmann
gcc points out an useless assignment that was added during code refactoring: drivers/net/ethernet/cavium/liquidio/lio_ethtool.c: In function 'octnet_intrmod_callback': drivers/net/ethernet/cavium/liquidio/lio_ethtool.c:1315:59: error: parameter 'oct_dev' set but not used [-Werror=unused-but-set-

Re: [PATCH 1/1] selftests: breakpoints: allow to cross-compile for aarch64/arm64

2017-04-19 Thread Fathi Boudra
gentle ping On 22 March 2017 at 20:04, Fathi Boudra wrote: > To build breakpoint_test_arm64, ARCH value is only tested for "aarch64". > It covers only the native build because it's computed from uname -m output. > For cross-compilation, ARCH is set to arm64 and prevent to cross-compile > the test

Re: [RFC 0/8] Copy Offload with Peer-to-Peer PCI Memory

2017-04-19 Thread Jerome Glisse
On Wed, Apr 19, 2017 at 10:01:23AM -0700, Dan Williams wrote: > On Wed, Apr 19, 2017 at 9:48 AM, Logan Gunthorpe wrote: > > > > > > On 19/04/17 09:55 AM, Jason Gunthorpe wrote: > >> I was thinking only this one would be supported with a core code > >> helper.. > > > > Pivoting slightly: I was look

Re: [PATCH v2] selftests: gpio: add config fragment for gpio-mockup

2017-04-19 Thread Fathi Boudra
gentle ping On 4 April 2017 at 03:52, Bamvor Zhang Jian wrote: > Hi, > > On 31 March 2017 at 16:41, Fathi Boudra wrote: >> The gpio test requires to insert the gpio mockup module (CONFIG_GPIO_MOCKUP). >> The gpio mockup driver depends on gpiolib (CONFIG_GPIOLIB). >> CONFIG_GPIO_SYSFS is selected

[PATCH] ieee802154: don't select COMMON_CLK

2017-04-19 Thread Arnd Bergmann
A device driver must not select the COMMON_CLK subsystem, as that conflicts with platforms that provide a legacy implementation of the clk API: drivers/clk/clk.o: In function `clk_enable': clk.c:(.text.clk_enable+0x0): multiple definition of `clk_enable' arch/arm/mach-sa1100/clock.o:clock.c:(.text

[PATCH] arm64: sunxi: always enable reset controller

2017-04-19 Thread Arnd Bergmann
The sunxi clk driver causes a link error when the reset controller subsystem is disabled: drivers/clk/built-in.o: In function `sun4i_ve_clk_setup': :(.init.text+0xd040): undefined reference to `reset_controller_register' drivers/clk/built-in.o: In function `sun4i_a10_display_init': :(.init.text+0x

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