[PATCH -v4 RESEND 5/9] mm, THP, swap: Support to clear SWAP_HAS_CACHE for huge page

2016-10-27 Thread Huang, Ying
From: Huang Ying __swapcache_free() is added to support to clear the SWAP_HAS_CACHE flag for the huge page. This will free the specified swap cluster now. Because now this function will be called only in the error path to free the swap cluster just allocated. So the

[PATCH -v4 RESEND 5/9] mm, THP, swap: Support to clear SWAP_HAS_CACHE for huge page

2016-10-27 Thread Huang, Ying
From: Huang Ying __swapcache_free() is added to support to clear the SWAP_HAS_CACHE flag for the huge page. This will free the specified swap cluster now. Because now this function will be called only in the error path to free the swap cluster just allocated. So the corresponding swap_map[i]

[PATCH -v4 RESEND 3/9] mm, THP, swap: Add swap cluster allocate/free functions

2016-10-27 Thread Huang, Ying
From: Huang Ying The swap cluster allocation/free functions are added based on the existing swap cluster management mechanism for SSD. These functions don't work for the rotating hard disks because the existing swap cluster management mechanism doesn't work for them. The

[v14, 0/8] Fix eSDHC host version register bug

2016-10-27 Thread Yangbo Lu
This patchset is used to fix a host version register bug in the T4240-R1.0-R2.0 eSDHC controller. To match the SoC version and revision, 10 previous version patchsets had tried many methods but all of them were rejected by reviewers. Such as - dts compatible method - syscon method

[PATCH -v4 RESEND 8/9] mm, THP, swap: Support to split THP in swap cache

2016-10-27 Thread Huang, Ying
From: Huang Ying This patch enhanced the split_huge_page_to_list() to work properly for the THP (Transparent Huge Page) in the swap cache during swapping out. This is used for delaying splitting the THP during swapping out. Where for a THP to be swapped out, we will

[v14, 1/8] dt: bindings: update Freescale DCFG compatible

2016-10-27 Thread Yangbo Lu
Update Freescale DCFG compatible with 'fsl,-dcfg' instead of 'fsl,ls1021a-dcfg' to include more chips such as ls1021a, ls1043a, and ls2080a. Signed-off-by: Yangbo Lu Acked-by: Rob Herring Signed-off-by: Scott Wood --- Changes for v8:

[PATCH -v4 RESEND 3/9] mm, THP, swap: Add swap cluster allocate/free functions

2016-10-27 Thread Huang, Ying
From: Huang Ying The swap cluster allocation/free functions are added based on the existing swap cluster management mechanism for SSD. These functions don't work for the rotating hard disks because the existing swap cluster management mechanism doesn't work for them. The hard disks support may

[v14, 0/8] Fix eSDHC host version register bug

2016-10-27 Thread Yangbo Lu
This patchset is used to fix a host version register bug in the T4240-R1.0-R2.0 eSDHC controller. To match the SoC version and revision, 10 previous version patchsets had tried many methods but all of them were rejected by reviewers. Such as - dts compatible method - syscon method

[PATCH -v4 RESEND 8/9] mm, THP, swap: Support to split THP in swap cache

2016-10-27 Thread Huang, Ying
From: Huang Ying This patch enhanced the split_huge_page_to_list() to work properly for the THP (Transparent Huge Page) in the swap cache during swapping out. This is used for delaying splitting the THP during swapping out. Where for a THP to be swapped out, we will allocate a swap cluster,

[v14, 1/8] dt: bindings: update Freescale DCFG compatible

2016-10-27 Thread Yangbo Lu
Update Freescale DCFG compatible with 'fsl,-dcfg' instead of 'fsl,ls1021a-dcfg' to include more chips such as ls1021a, ls1043a, and ls2080a. Signed-off-by: Yangbo Lu Acked-by: Rob Herring Signed-off-by: Scott Wood --- Changes for v8: - Added this patch Changes for v9: - Added a

[PATCH -v4 RESEND 6/9] mm, THP, swap: Support to add/delete THP to/from swap cache

2016-10-27 Thread Huang, Ying
From: Huang Ying With this patch, a THP (Transparent Huge Page) can be added/deleted to/from the swap cache as a set of (HPAGE_PMD_NR) sub-pages. This will be used for the THP (Transparent Huge Page) swap support. Where one THP may be added/delted to/from the swap cache.

[PATCH -v4 RESEND 6/9] mm, THP, swap: Support to add/delete THP to/from swap cache

2016-10-27 Thread Huang, Ying
From: Huang Ying With this patch, a THP (Transparent Huge Page) can be added/deleted to/from the swap cache as a set of (HPAGE_PMD_NR) sub-pages. This will be used for the THP (Transparent Huge Page) swap support. Where one THP may be added/delted to/from the swap cache. This will batch the

[PATCH -v4 RESEND 9/9] mm, THP, swap: Delay splitting THP during swap out

2016-10-27 Thread Huang, Ying
From: Huang Ying In this patch, splitting huge page is delayed from almost the first step of swapping out to after allocating the swap space for the THP (Transparent Huge Page) and adding the THP into the swap cache. This will reduce lock acquiring/releasing for the locks

[PATCH -v4 RESEND 4/9] mm, THP, swap: Add get_huge_swap_page()

2016-10-27 Thread Huang, Ying
From: Huang Ying A variation of get_swap_page(), get_huge_swap_page(), is added to allocate a swap cluster (HPAGE_PMD_NR swap slots) based on the swap cluster allocation function. A fair simple algorithm is used, that is, only the first swap device in priority list will be

[PATCH -v4 RESEND 7/9] mm, THP: Add can_split_huge_page()

2016-10-27 Thread Huang, Ying
From: Huang Ying Separates checking whether we can split the huge page from split_huge_page_to_list() into a function. This will help to check that before splitting the THP (Transparent Huge Page) really. This will be used for delaying splitting THP during swapping out.

[PATCH -v4 RESEND 9/9] mm, THP, swap: Delay splitting THP during swap out

2016-10-27 Thread Huang, Ying
From: Huang Ying In this patch, splitting huge page is delayed from almost the first step of swapping out to after allocating the swap space for the THP (Transparent Huge Page) and adding the THP into the swap cache. This will reduce lock acquiring/releasing for the locks used for the swap cache

[PATCH -v4 RESEND 4/9] mm, THP, swap: Add get_huge_swap_page()

2016-10-27 Thread Huang, Ying
From: Huang Ying A variation of get_swap_page(), get_huge_swap_page(), is added to allocate a swap cluster (HPAGE_PMD_NR swap slots) based on the swap cluster allocation function. A fair simple algorithm is used, that is, only the first swap device in priority list will be tried to allocate the

[PATCH -v4 RESEND 7/9] mm, THP: Add can_split_huge_page()

2016-10-27 Thread Huang, Ying
From: Huang Ying Separates checking whether we can split the huge page from split_huge_page_to_list() into a function. This will help to check that before splitting the THP (Transparent Huge Page) really. This will be used for delaying splitting THP during swapping out. Where for a THP, we

[PATCH -v4 RESEND 1/9] mm, swap: Make swap cluster size same of THP size on x86_64

2016-10-27 Thread Huang, Ying
From: Huang Ying In this patch, the size of the swap cluster is changed to that of the THP (Transparent Huge Page) on x86_64 architecture (512). This is for the THP swap support on x86_64. Where one swap cluster will be used to hold the contents of each THP swapped out.

[PATCH -v4 RESEND 1/9] mm, swap: Make swap cluster size same of THP size on x86_64

2016-10-27 Thread Huang, Ying
From: Huang Ying In this patch, the size of the swap cluster is changed to that of the THP (Transparent Huge Page) on x86_64 architecture (512). This is for the THP swap support on x86_64. Where one swap cluster will be used to hold the contents of each THP swapped out. And some information

[PATCH -v4 RESEND 0/9] THP swap: Delay splitting THP during swapping out

2016-10-27 Thread Huang, Ying
From: Huang Ying This patchset is to optimize the performance of Transparent Huge Page (THP) swap. Hi, Andrew, could you help me to check whether the overall design is reasonable? Hi, Hugh, Shaohua, Minchan and Rik, could you help me to review the swap part of the

[PATCH -v4 RESEND 0/9] THP swap: Delay splitting THP during swapping out

2016-10-27 Thread Huang, Ying
From: Huang Ying This patchset is to optimize the performance of Transparent Huge Page (THP) swap. Hi, Andrew, could you help me to check whether the overall design is reasonable? Hi, Hugh, Shaohua, Minchan and Rik, could you help me to review the swap part of the patchset? Especially [1/9],

Re: [RFC 0/8] Define coherent device memory node

2016-10-27 Thread Anshuman Khandual
On 10/27/2016 08:35 PM, Jerome Glisse wrote: > On Thu, Oct 27, 2016 at 12:33:05PM +0530, Anshuman Khandual wrote: >> On 10/27/2016 10:08 AM, Anshuman Khandual wrote: >>> On 10/26/2016 09:32 PM, Jerome Glisse wrote: On Wed, Oct 26, 2016 at 04:43:10PM +0530, Anshuman Khandual wrote: > On

Re: [RFC 0/8] Define coherent device memory node

2016-10-27 Thread Anshuman Khandual
On 10/27/2016 08:35 PM, Jerome Glisse wrote: > On Thu, Oct 27, 2016 at 12:33:05PM +0530, Anshuman Khandual wrote: >> On 10/27/2016 10:08 AM, Anshuman Khandual wrote: >>> On 10/26/2016 09:32 PM, Jerome Glisse wrote: On Wed, Oct 26, 2016 at 04:43:10PM +0530, Anshuman Khandual wrote: > On

Re: [PATCH] arm64: defconfig: Enable DRM DU and V4L2 FCP + VSP modules

2016-10-27 Thread Simon Horman
On Thu, Oct 27, 2016 at 04:37:53PM +0900, Magnus Damm wrote: > Hi Simon, > > On Thu, Oct 27, 2016 at 4:15 PM, Simon Horman wrote: > > On Thu, Oct 27, 2016 at 09:08:01AM +0200, Simon Horman wrote: > >> On Wed, Oct 26, 2016 at 02:24:22PM +0900, Magnus Damm wrote: > >> > From:

Re: [PATCH] arm64: defconfig: Enable DRM DU and V4L2 FCP + VSP modules

2016-10-27 Thread Simon Horman
On Thu, Oct 27, 2016 at 04:37:53PM +0900, Magnus Damm wrote: > Hi Simon, > > On Thu, Oct 27, 2016 at 4:15 PM, Simon Horman wrote: > > On Thu, Oct 27, 2016 at 09:08:01AM +0200, Simon Horman wrote: > >> On Wed, Oct 26, 2016 at 02:24:22PM +0900, Magnus Damm wrote: > >> > From: Magnus Damm > >> > >

Re: [PATCH v4 0/3] nvme power saving

2016-10-27 Thread Christoph Hellwig
On Thu, Oct 27, 2016 at 05:06:16PM -0700, Andy Lutomirski wrote: > It looks like there is at least one NVMe disk in existence (a > different Samsung device) that sporadically dies when APST is on. > This device appears to also sporadically die when APST is off, but it > lasts considerably longer

Re: [PATCH v4 0/3] nvme power saving

2016-10-27 Thread Christoph Hellwig
On Thu, Oct 27, 2016 at 05:06:16PM -0700, Andy Lutomirski wrote: > It looks like there is at least one NVMe disk in existence (a > different Samsung device) that sporadically dies when APST is on. > This device appears to also sporadically die when APST is off, but it > lasts considerably longer

Re: [RFC PATCH] usb: core: correct usb_get_dev() documentation

2016-10-27 Thread Peter Chen
On Thu, Oct 27, 2016 at 04:49:18PM -0700, Dmitry Torokhov wrote: > On Thu, Oct 27, 2016 at 03:02:30PM -0700, Brian Norris wrote: > > In reading through a USB interface driver, I noticed that it called > > usb_{get,put}_dev() in its probe() and disconnect() methods. This seemed > > unnecessary, but

Re: drivers/base/power/opp/of.c:181:6: error: redefinition of 'dev_pm_opp_of_remove_table'

2016-10-27 Thread Viresh Kumar
On 28-10-16, 12:07, Fengguang Wu wrote: > On Fri, Oct 28, 2016 at 09:27:53AM +0530, Viresh Kumar wrote: > >On 28-10-16, 07:22, kbuild test robot wrote: > >>tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > >>master > >>head: e3300ffef0653774f1099cab153d25d24bd773ce >

Re: [RFC PATCH] usb: core: correct usb_get_dev() documentation

2016-10-27 Thread Peter Chen
On Thu, Oct 27, 2016 at 04:49:18PM -0700, Dmitry Torokhov wrote: > On Thu, Oct 27, 2016 at 03:02:30PM -0700, Brian Norris wrote: > > In reading through a USB interface driver, I noticed that it called > > usb_{get,put}_dev() in its probe() and disconnect() methods. This seemed > > unnecessary, but

Re: drivers/base/power/opp/of.c:181:6: error: redefinition of 'dev_pm_opp_of_remove_table'

2016-10-27 Thread Viresh Kumar
On 28-10-16, 12:07, Fengguang Wu wrote: > On Fri, Oct 28, 2016 at 09:27:53AM +0530, Viresh Kumar wrote: > >On 28-10-16, 07:22, kbuild test robot wrote: > >>tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > >>master > >>head: e3300ffef0653774f1099cab153d25d24bd773ce >

Re: [REVIEW][PATCH v2] mm: Add a user_ns owner to mm_struct and fix ptrace permission checks

2016-10-27 Thread Eric W. Biederman
anaged to miss this quite important mail for me in mail >>> storm. Gonna test it and will write you the results. Overall looks >>> great, but better be sure and run the tests. >>> >>> Reviewed-by: Cyrill Gorcunov <gorcu...@openvz.org> >> >> Eric

Re: [REVIEW][PATCH v2] mm: Add a user_ns owner to mm_struct and fix ptrace permission checks

2016-10-27 Thread Eric W. Biederman
important mail for me in mail >>> storm. Gonna test it and will write you the results. Overall looks >>> great, but better be sure and run the tests. >>> >>> Reviewed-by: Cyrill Gorcunov >> >> Eric, on which kernel the patch is on top of? >

Re: [PATCH v2 3/4] input: Deprecate real timestamps beyond year 2106

2016-10-27 Thread Peter Hutterer
On Thu, Oct 27, 2016 at 03:24:55PM -0700, Deepa Dinamani wrote: > On Wed, Oct 26, 2016 at 7:56 PM, Peter Hutterer > wrote: > > On Mon, Oct 17, 2016 at 08:27:32PM -0700, Deepa Dinamani wrote: > >> struct timeval is not y2038 safe. > >> All usage of timeval in the kernel

Re: [PATCH v2 3/4] input: Deprecate real timestamps beyond year 2106

2016-10-27 Thread Peter Hutterer
On Thu, Oct 27, 2016 at 03:24:55PM -0700, Deepa Dinamani wrote: > On Wed, Oct 26, 2016 at 7:56 PM, Peter Hutterer > wrote: > > On Mon, Oct 17, 2016 at 08:27:32PM -0700, Deepa Dinamani wrote: > >> struct timeval is not y2038 safe. > >> All usage of timeval in the kernel will be replaced by > >>

Re: [v13, 5/8] soc: fsl: add GUTS driver for QorIQ platforms

2016-10-27 Thread Scott Wood
On Fri, 2016-10-28 at 11:32 +0800, Yangbo Lu wrote: > + guts->regs = of_iomap(np, 0); > + if (!guts->regs) > + return -ENOMEM; > + > + /* Register soc device */ > + machine = of_flat_dt_get_machine_name(); > + if (machine) > + soc_dev_attr.machine =

Re: [v13, 5/8] soc: fsl: add GUTS driver for QorIQ platforms

2016-10-27 Thread Scott Wood
On Fri, 2016-10-28 at 11:32 +0800, Yangbo Lu wrote: > + guts->regs = of_iomap(np, 0); > + if (!guts->regs) > + return -ENOMEM; > + > + /* Register soc device */ > + machine = of_flat_dt_get_machine_name(); > + if (machine) > + soc_dev_attr.machine =

[PATCH RESEND] mpt3sas: Fix for block device of raid exists even after deleting raid disk

2016-10-27 Thread Sreekanth Reddy
While merging mpt3sas & mpt2sas code, we posted below patch for WarpDrive support, mpt3sas: Ported WarpDrive product SSS6200 support commit id is 7786ab6aff In this patch and in the below hunk, we have added is_warpdrive check condition on the wrong line

[PATCH RESEND] mpt3sas: Fix for block device of raid exists even after deleting raid disk

2016-10-27 Thread Sreekanth Reddy
While merging mpt3sas & mpt2sas code, we posted below patch for WarpDrive support, mpt3sas: Ported WarpDrive product SSS6200 support commit id is 7786ab6aff In this patch and in the below hunk, we have added is_warpdrive check condition on the wrong line

[v13, 8/8] mmc: sdhci-of-esdhc: fix host version for T4240-R1.0-R2.0

2016-10-27 Thread Yangbo Lu
The eSDHC of T4240-R1.0-R2.0 has incorrect vender version and spec version. Acturally the right version numbers should be VVN=0x13 and SVN = 0x1. This patch adds the GUTS driver support for eSDHC driver to match SoC. And fix host version to avoid that incorrect version numbers break down the ADMA

[v13, 8/8] mmc: sdhci-of-esdhc: fix host version for T4240-R1.0-R2.0

2016-10-27 Thread Yangbo Lu
The eSDHC of T4240-R1.0-R2.0 has incorrect vender version and spec version. Acturally the right version numbers should be VVN=0x13 and SVN = 0x1. This patch adds the GUTS driver support for eSDHC driver to match SoC. And fix host version to avoid that incorrect version numbers break down the ADMA

Re: [PATCH v2 1/4] uinput: Add ioctl for using monotonic/ boot times

2016-10-27 Thread Peter Hutterer
On Thu, Oct 27, 2016 at 01:39:30PM -0700, Deepa Dinamani wrote: > > hmm, I'm a bit confused here. This is an in-kernel bit only (passing the > > time through uinput events has no effect). So why do we need an ioctl here? > > it's an in-kernel decision only anyway and the time in the events sent to

Re: [PATCH v2 1/4] uinput: Add ioctl for using monotonic/ boot times

2016-10-27 Thread Peter Hutterer
On Thu, Oct 27, 2016 at 01:39:30PM -0700, Deepa Dinamani wrote: > > hmm, I'm a bit confused here. This is an in-kernel bit only (passing the > > time through uinput events has no effect). So why do we need an ioctl here? > > it's an in-kernel decision only anyway and the time in the events sent to

[v13, 4/8] powerpc/fsl: move mpc85xx.h to include/linux/fsl

2016-10-27 Thread Yangbo Lu
Move mpc85xx.h to include/linux/fsl and rename it to svr.h as a common header file. This SVR numberspace is used on some ARM chips as well as PPC, and even to check for a PPC SVR multi-arch drivers would otherwise need to ifdef the header inclusion and all references to the SVR symbols.

[v13, 4/8] powerpc/fsl: move mpc85xx.h to include/linux/fsl

2016-10-27 Thread Yangbo Lu
Move mpc85xx.h to include/linux/fsl and rename it to svr.h as a common header file. This SVR numberspace is used on some ARM chips as well as PPC, and even to check for a PPC SVR multi-arch drivers would otherwise need to ifdef the header inclusion and all references to the SVR symbols.

[PATCH v6 05/11] s390/spinlock: Provide vcpu_is_preempted

2016-10-27 Thread Pan Xinhui
From: Christian Borntraeger this implements the s390 backend for commit "kernel/sched: introduce vcpu preempted check interface" by reworking the existing smp_vcpu_scheduled into arch_vcpu_is_preempted. We can then also get rid of the local cpu_is_preempted function by

[PATCH v6 05/11] s390/spinlock: Provide vcpu_is_preempted

2016-10-27 Thread Pan Xinhui
From: Christian Borntraeger this implements the s390 backend for commit "kernel/sched: introduce vcpu preempted check interface" by reworking the existing smp_vcpu_scheduled into arch_vcpu_is_preempted. We can then also get rid of the local cpu_is_preempted function by moving the

[PATCH v6 07/11] KVM: Introduce kvm_write_guest_offset_cached

2016-10-27 Thread Pan Xinhui
It allows us to update some status or field of one struct partially. We can also save one kvm_read_guest_cached if we just update one filed of the struct regardless of its current value. Signed-off-by: Pan Xinhui --- include/linux/kvm_host.h | 2 ++

[PATCH v6 03/11] kernel/locking: Drop the overload of {mutex,rwsem}_spin_on_owner

2016-10-27 Thread Pan Xinhui
An over-committed guest with more vCPUs than pCPUs has a heavy overload in the two spin_on_owner. This blames on the lock holder preemption issue. Kernel has an interface bool vcpu_is_preempted(int cpu) to see if a vCPU is currently running or not. So break the spin loops on true condition.

[PATCH v6 07/11] KVM: Introduce kvm_write_guest_offset_cached

2016-10-27 Thread Pan Xinhui
It allows us to update some status or field of one struct partially. We can also save one kvm_read_guest_cached if we just update one filed of the struct regardless of its current value. Signed-off-by: Pan Xinhui --- include/linux/kvm_host.h | 2 ++ virt/kvm/kvm_main.c | 20

[PATCH v6 03/11] kernel/locking: Drop the overload of {mutex,rwsem}_spin_on_owner

2016-10-27 Thread Pan Xinhui
An over-committed guest with more vCPUs than pCPUs has a heavy overload in the two spin_on_owner. This blames on the lock holder preemption issue. Kernel has an interface bool vcpu_is_preempted(int cpu) to see if a vCPU is currently running or not. So break the spin loops on true condition.

[PATCH v6 06/11] x86, paravirt: Add interface to support kvm/xen vcpu preempted check

2016-10-27 Thread Pan Xinhui
This is to fix some lock holder preemption issues. Some other locks implementation do a spin loop before acquiring the lock itself. Currently kernel has an interface of bool vcpu_is_preempted(int cpu). It takes the cpu as parameter and return true if the cpu is preempted. Then kernel can break the

[PATCH v6 06/11] x86, paravirt: Add interface to support kvm/xen vcpu preempted check

2016-10-27 Thread Pan Xinhui
This is to fix some lock holder preemption issues. Some other locks implementation do a spin loop before acquiring the lock itself. Currently kernel has an interface of bool vcpu_is_preempted(int cpu). It takes the cpu as parameter and return true if the cpu is preempted. Then kernel can break the

[PATCH v6 10/11] x86, xen: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
From: Juergen Gross Support the vcpu_is_preempted() functionality under Xen. This will enhance lock performance on overcommitted hosts (more runnable vcpus than physical cpus in the system) as doing busy waits for preempted vcpus will hurt system performance far worse than early

[PATCH v6 08/11] x86, kvm/x86.c: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
Support the vcpu_is_preempted() functionality under KVM. This will enhance lock performance on overcommitted hosts (more runnable vcpus than physical cpus in the system) as doing busy waits for preempted vcpus will hurt system performance far worse than early yielding. Use one field of struct

[PATCH v6 04/11] powerpc/spinlock: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
This is to fix some lock holder preemption issues. Some other locks implementation do a spin loop before acquiring the lock itself. Currently kernel has an interface of bool vcpu_is_preempted(int cpu). It takes the cpu as parameter and return true if the cpu is preempted. Then kernel can break the

[PATCH v6 11/11] Documentation: virtual: kvm: Support vcpu preempted check

2016-10-27 Thread Pan Xinhui
Commit ("x86, kvm: support vcpu preempted check") add one field "__u8 preempted" into struct kvm_steal_time. This field tells if one vcpu is running or not. It is zero if 1) some old KVM deos not support this filed. 2) the vcpu is not preempted. Other values means the vcpu has been preempted.

[PATCH v6 10/11] x86, xen: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
From: Juergen Gross Support the vcpu_is_preempted() functionality under Xen. This will enhance lock performance on overcommitted hosts (more runnable vcpus than physical cpus in the system) as doing busy waits for preempted vcpus will hurt system performance far worse than early yielding. A

[PATCH v6 08/11] x86, kvm/x86.c: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
Support the vcpu_is_preempted() functionality under KVM. This will enhance lock performance on overcommitted hosts (more runnable vcpus than physical cpus in the system) as doing busy waits for preempted vcpus will hurt system performance far worse than early yielding. Use one field of struct

[PATCH v6 04/11] powerpc/spinlock: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
This is to fix some lock holder preemption issues. Some other locks implementation do a spin loop before acquiring the lock itself. Currently kernel has an interface of bool vcpu_is_preempted(int cpu). It takes the cpu as parameter and return true if the cpu is preempted. Then kernel can break the

[PATCH v6 11/11] Documentation: virtual: kvm: Support vcpu preempted check

2016-10-27 Thread Pan Xinhui
Commit ("x86, kvm: support vcpu preempted check") add one field "__u8 preempted" into struct kvm_steal_time. This field tells if one vcpu is running or not. It is zero if 1) some old KVM deos not support this filed. 2) the vcpu is not preempted. Other values means the vcpu has been preempted.

[PATCH v6 02/11] locking/osq: Drop the overload of osq_lock()

2016-10-27 Thread Pan Xinhui
An over-committed guest with more vCPUs than pCPUs has a heavy overload in osq_lock(). This is because vCPU A hold the osq lock and yield out, vCPU B wait per_cpu node->locked to be set. IOW, vCPU B wait vCPU A to run and unlock the osq lock. Kernel has an interface bool vcpu_is_preempted(int

[PATCH v6 09/11] x86, kernel/kvm.c: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
Support the vcpu_is_preempted() functionality under KVM. This will enhance lock performance on overcommitted hosts (more runnable vcpus than physical cpus in the system) as doing busy waits for preempted vcpus will hurt system performance far worse than early yielding. struct

[PATCH v6 02/11] locking/osq: Drop the overload of osq_lock()

2016-10-27 Thread Pan Xinhui
An over-committed guest with more vCPUs than pCPUs has a heavy overload in osq_lock(). This is because vCPU A hold the osq lock and yield out, vCPU B wait per_cpu node->locked to be set. IOW, vCPU B wait vCPU A to run and unlock the osq lock. Kernel has an interface bool vcpu_is_preempted(int

[PATCH v6 09/11] x86, kernel/kvm.c: support vcpu preempted check

2016-10-27 Thread Pan Xinhui
Support the vcpu_is_preempted() functionality under KVM. This will enhance lock performance on overcommitted hosts (more runnable vcpus than physical cpus in the system) as doing busy waits for preempted vcpus will hurt system performance far worse than early yielding. struct

[PATCH v6 01/11] kernel/sched: introduce vcpu preempted check interface

2016-10-27 Thread Pan Xinhui
This patch support to fix lock holder preemption issue. For kernel users, we could use bool vcpu_is_preempted(int cpu) to detech if one vcpu is preempted or not. The default implementation is a macro defined by false. So compiler can wrap it out if arch dose not support such vcpu pteempted

[PATCH v6 00/11] implement vcpu preempted check

2016-10-27 Thread Pan Xinhui
change from v5: spilt x86/kvm patch into guest/host part. introduce kvm_write_guest_offset_cached. fix some typos. rebase patch onto 4.9.2 change from v4: spilt x86 kvm vcpu preempted check into two patches. add documentation patch. add x86

[PATCH v6 01/11] kernel/sched: introduce vcpu preempted check interface

2016-10-27 Thread Pan Xinhui
This patch support to fix lock holder preemption issue. For kernel users, we could use bool vcpu_is_preempted(int cpu) to detech if one vcpu is preempted or not. The default implementation is a macro defined by false. So compiler can wrap it out if arch dose not support such vcpu pteempted

[PATCH v6 00/11] implement vcpu preempted check

2016-10-27 Thread Pan Xinhui
change from v5: spilt x86/kvm patch into guest/host part. introduce kvm_write_guest_offset_cached. fix some typos. rebase patch onto 4.9.2 change from v4: spilt x86 kvm vcpu preempted check into two patches. add documentation patch. add x86

[v13, 7/8] base: soc: introduce soc_device_match() interface

2016-10-27 Thread Yangbo Lu
From: Arnd Bergmann We keep running into cases where device drivers want to know the exact version of the a SoC they are currently running on. In the past, this has usually been done through a vendor specific API that can be called by a driver, or by directly accessing some kind

[v13, 7/8] base: soc: introduce soc_device_match() interface

2016-10-27 Thread Yangbo Lu
From: Arnd Bergmann We keep running into cases where device drivers want to know the exact version of the a SoC they are currently running on. In the past, this has usually been done through a vendor specific API that can be called by a driver, or by directly accessing some kind of version

[v13, 3/8] dt: bindings: move guts devicetree doc out of powerpc directory

2016-10-27 Thread Yangbo Lu
Move guts devicetree doc to Documentation/devicetree/bindings/soc/fsl/ since it's used by not only PowerPC but also ARM. And add a specification for 'little-endian' property. Signed-off-by: Yangbo Lu Acked-by: Rob Herring Acked-by: Scott Wood

[v13, 3/8] dt: bindings: move guts devicetree doc out of powerpc directory

2016-10-27 Thread Yangbo Lu
Move guts devicetree doc to Documentation/devicetree/bindings/soc/fsl/ since it's used by not only PowerPC but also ARM. And add a specification for 'little-endian' property. Signed-off-by: Yangbo Lu Acked-by: Rob Herring Acked-by: Scott Wood --- Changes for v4: - Added this patch

Re: [PATCH 1/4] printk/NMI: Handle continuous lines and missing newline

2016-10-27 Thread Sergey Senozhatsky
On (10/27/16 09:35), Joe Perches wrote: [..] > > - printk_nmi_flush_line(buf, (end - start) + 1); > > + /* Handle continuous lines or missing new line. */ > > + if ((c + 1 < end) && printk_get_level(c)) { > > + if (header) { > > + c

Re: [PATCH 1/4] printk/NMI: Handle continuous lines and missing newline

2016-10-27 Thread Sergey Senozhatsky
On (10/27/16 09:35), Joe Perches wrote: [..] > > - printk_nmi_flush_line(buf, (end - start) + 1); > > + /* Handle continuous lines or missing new line. */ > > + if ((c + 1 < end) && printk_get_level(c)) { > > + if (header) { > > + c

Re: drivers/base/power/opp/of.c:181:6: error: redefinition of 'dev_pm_opp_of_remove_table'

2016-10-27 Thread Fengguang Wu
On Fri, Oct 28, 2016 at 09:27:53AM +0530, Viresh Kumar wrote: On 28-10-16, 07:22, kbuild test robot wrote: tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: e3300ffef0653774f1099cab153d25d24bd773ce commit: f47b72a15a9679dd4dc1af681d4d2f1ca2815552 PM /

Re: drivers/base/power/opp/of.c:181:6: error: redefinition of 'dev_pm_opp_of_remove_table'

2016-10-27 Thread Fengguang Wu
On Fri, Oct 28, 2016 at 09:27:53AM +0530, Viresh Kumar wrote: On 28-10-16, 07:22, kbuild test robot wrote: tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: e3300ffef0653774f1099cab153d25d24bd773ce commit: f47b72a15a9679dd4dc1af681d4d2f1ca2815552 PM /

Re: [RFC][PATCHv4 0/6] printk: use printk_safe to handle printk() recursive calls

2016-10-27 Thread Sergey Senozhatsky
Hello, On (10/27/16 20:30), Linus Torvalds wrote: > On Thu, Oct 27, 2016 at 8:49 AM, Sergey Senozhatsky > wrote: > > > > RFC > > > > This patch set extends a lock-less NMI per-cpu buffers idea to > > handle recursive printk() calls. The basic

Re: [RFC][PATCHv4 0/6] printk: use printk_safe to handle printk() recursive calls

2016-10-27 Thread Sergey Senozhatsky
Hello, On (10/27/16 20:30), Linus Torvalds wrote: > On Thu, Oct 27, 2016 at 8:49 AM, Sergey Senozhatsky > wrote: > > > > RFC > > > > This patch set extends a lock-less NMI per-cpu buffers idea to > > handle recursive printk() calls. The basic mechanism is pretty much the > > same

Re: [PATCH 7/7] mfd: tps65217: Fix mismatched interrupt number

2016-10-27 Thread Milo Kim
On 10/26/2016 10:56 PM, Lee Jones wrote: diff --git a/include/linux/mfd/tps65217.h b/include/linux/mfd/tps65217.h > index 4ccda89..75a3a5f 100644 > --- a/include/linux/mfd/tps65217.h > +++ b/include/linux/mfd/tps65217.h > @@ -235,9 +235,9 @@ struct tps65217_bl_pdata { > }; > > enum

Re: [PATCH 7/7] mfd: tps65217: Fix mismatched interrupt number

2016-10-27 Thread Milo Kim
On 10/26/2016 10:56 PM, Lee Jones wrote: diff --git a/include/linux/mfd/tps65217.h b/include/linux/mfd/tps65217.h > index 4ccda89..75a3a5f 100644 > --- a/include/linux/mfd/tps65217.h > +++ b/include/linux/mfd/tps65217.h > @@ -235,9 +235,9 @@ struct tps65217_bl_pdata { > }; > > enum

[v13, 1/8] dt: bindings: update Freescale DCFG compatible

2016-10-27 Thread Yangbo Lu
Update Freescale DCFG compatible with 'fsl,-dcfg' instead of 'fsl,ls1021a-dcfg' to include more chips such as ls1021a, ls1043a, and ls2080a. Signed-off-by: Yangbo Lu Acked-by: Rob Herring Signed-off-by: Scott Wood --- Changes for v8:

[v13, 1/8] dt: bindings: update Freescale DCFG compatible

2016-10-27 Thread Yangbo Lu
Update Freescale DCFG compatible with 'fsl,-dcfg' instead of 'fsl,ls1021a-dcfg' to include more chips such as ls1021a, ls1043a, and ls2080a. Signed-off-by: Yangbo Lu Acked-by: Rob Herring Signed-off-by: Scott Wood --- Changes for v8: - Added this patch Changes for v9: - Added a

Re: [PATCH 5/7] ARM: dts: am335x: Add the charger interrupt

2016-10-27 Thread Milo Kim
On 10/22/2016 05:47 AM, Robert Nelson wrote: +#include ^ this hasn't been posted nor pushed to mainline yet.. ;) Oops! I've created this file but not captured not only in my git tree but also in my head! Thanks for your review. Best regards, Milo

[v13, 0/8] Fix eSDHC host version register bug

2016-10-27 Thread Yangbo Lu
This patchset is used to fix a host version register bug in the T4240-R1.0-R2.0 eSDHC controller. To match the SoC version and revision, 10 previous version patchsets had tried many methods but all of them were rejected by reviewers. Such as - dts compatible method - syscon method

[v13, 5/8] soc: fsl: add GUTS driver for QorIQ platforms

2016-10-27 Thread Yangbo Lu
The global utilities block controls power management, I/O device enabling, power-onreset(POR) configuration monitoring, alternate function selection for multiplexed signals,and clock control. This patch adds a driver to manage and access global utilities block. Initially only reading SVR and

Re: [PATCH 5/7] ARM: dts: am335x: Add the charger interrupt

2016-10-27 Thread Milo Kim
On 10/22/2016 05:47 AM, Robert Nelson wrote: +#include ^ this hasn't been posted nor pushed to mainline yet.. ;) Oops! I've created this file but not captured not only in my git tree but also in my head! Thanks for your review. Best regards, Milo

[v13, 0/8] Fix eSDHC host version register bug

2016-10-27 Thread Yangbo Lu
This patchset is used to fix a host version register bug in the T4240-R1.0-R2.0 eSDHC controller. To match the SoC version and revision, 10 previous version patchsets had tried many methods but all of them were rejected by reviewers. Such as - dts compatible method - syscon method

[v13, 5/8] soc: fsl: add GUTS driver for QorIQ platforms

2016-10-27 Thread Yangbo Lu
The global utilities block controls power management, I/O device enabling, power-onreset(POR) configuration monitoring, alternate function selection for multiplexed signals,and clock control. This patch adds a driver to manage and access global utilities block. Initially only reading SVR and

[v13, 2/8] ARM64: dts: ls2080a: add device configuration node

2016-10-27 Thread Yangbo Lu
Add the dts node for device configuration unit that provides general purpose configuration and status for the device. Signed-off-by: Yangbo Lu Acked-by: Scott Wood --- Changes for v5: - Added this patch Changes for v6: - None Changes for v7:

[v13, 2/8] ARM64: dts: ls2080a: add device configuration node

2016-10-27 Thread Yangbo Lu
Add the dts node for device configuration unit that provides general purpose configuration and status for the device. Signed-off-by: Yangbo Lu Acked-by: Scott Wood --- Changes for v5: - Added this patch Changes for v6: - None Changes for v7: - None Changes for v8:

Re: drivers/base/power/opp/of.c:181:6: error: redefinition of 'dev_pm_opp_of_remove_table'

2016-10-27 Thread Viresh Kumar
On 28-10-16, 07:22, kbuild test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > master > head: e3300ffef0653774f1099cab153d25d24bd773ce > commit: f47b72a15a9679dd4dc1af681d4d2f1ca2815552 PM / OPP: Move CONFIG_OF > dependent code in a separate file >

Re: drivers/base/power/opp/of.c:181:6: error: redefinition of 'dev_pm_opp_of_remove_table'

2016-10-27 Thread Viresh Kumar
On 28-10-16, 07:22, kbuild test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > master > head: e3300ffef0653774f1099cab153d25d24bd773ce > commit: f47b72a15a9679dd4dc1af681d4d2f1ca2815552 PM / OPP: Move CONFIG_OF > dependent code in a separate file >

[v13, 6/8] MAINTAINERS: add entry for Freescale SoC drivers

2016-10-27 Thread Yangbo Lu
Add maintainer entry for Freescale SoC drivers including the QE library and the GUTS driver now. Also add maintainer for QE library. Signed-off-by: Yangbo Lu Acked-by: Scott Wood Acked-by: Qiang Zhao --- Changes for v8: - Added

[v13, 6/8] MAINTAINERS: add entry for Freescale SoC drivers

2016-10-27 Thread Yangbo Lu
Add maintainer entry for Freescale SoC drivers including the QE library and the GUTS driver now. Also add maintainer for QE library. Signed-off-by: Yangbo Lu Acked-by: Scott Wood Acked-by: Qiang Zhao --- Changes for v8: - Added this patch Changes for v9: - Added linux-arm mail

linux-next: Tree for Oct 28

2016-10-27 Thread Stephen Rothwell
Hi all, There will probably be no linux-next releases next week while I attend the Kernel Summit. Changes since 20161027: The akpm-current tree lost its build failures. Non-merge commits (relative to Linus' tree): 3098 3842 files changed, 227213 insertions(+), 59787 deletions

linux-next: Tree for Oct 28

2016-10-27 Thread Stephen Rothwell
Hi all, There will probably be no linux-next releases next week while I attend the Kernel Summit. Changes since 20161027: The akpm-current tree lost its build failures. Non-merge commits (relative to Linus' tree): 3098 3842 files changed, 227213 insertions(+), 59787 deletions

Re: [RFC][PATCHv4 0/6] printk: use printk_safe to handle printk() recursive calls

2016-10-27 Thread Linus Torvalds
On Thu, Oct 27, 2016 at 8:49 AM, Sergey Senozhatsky wrote: > > RFC > > This patch set extends a lock-less NMI per-cpu buffers idea to > handle recursive printk() calls. The basic mechanism is pretty much the > same -- at the beginning of a

Re: [RFC][PATCHv4 0/6] printk: use printk_safe to handle printk() recursive calls

2016-10-27 Thread Linus Torvalds
On Thu, Oct 27, 2016 at 8:49 AM, Sergey Senozhatsky wrote: > > RFC > > This patch set extends a lock-less NMI per-cpu buffers idea to > handle recursive printk() calls. The basic mechanism is pretty much the > same -- at the beginning of a deadlock-prone section we switch to

  1   2   3   4   5   6   7   8   9   10   >