Re: console issue since 3.6, console=ttyS1 hangs

2016-10-28 Thread Nathan
probably doesn't illuminate much but... On 10/27/2016 03:19 PM, Sean Young wrote: On Wed, Oct 26, 2016 at 01:16:16PM -0500, Nathan Zimmer wrote: On 10/25/2016 03:41 PM, Sean Young wrote: On Mon, Oct 24, 2016 at 04:49:25PM -0500, Nathan Zimmer wrote: [1.565062] serial8250: ttyS1 at I/O 0x2f8

Re: console issue since 3.6, console=ttyS1 hangs

2016-10-30 Thread Nathan
On 10/27/2016 03:19 PM, Sean Young wrote: On Wed, Oct 26, 2016 at 01:16:16PM -0500, Nathan Zimmer wrote: On 10/25/2016 03:41 PM, Sean Young wrote: On Mon, Oct 24, 2016 at 04:49:25PM -0500, Nathan Zimmer wrote: [1.565062] serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A The isa

Re: console issue since 3.6, console=ttyS1 hangs

2016-10-30 Thread Nathan
On 10/29/2016 04:16 PM, Sean Young wrote: On Fri, Oct 28, 2016 at 02:42:25PM -0500, Nathan Zimmer wrote: On Thu, Oct 27, 2016 at 09:19:16PM +0100, Sean Young wrote: On Wed, Oct 26, 2016 at 01:16:16PM -0500, Nathan Zimmer wrote: On 10/25/2016 03:41 PM, Sean Young wrote: On Mon, Oct 24, 2016

[PATCH] export of_reconfig_notifier_[register,unregister]

2012-11-28 Thread Nathan Fontenot
The of reconfiguration notification chains should be exported for use by modules. Signed-off-by:Nathan Fontenot --- Index: linux-next/drivers/of/base.c === --- linux-next.orig/drivers/of/base.c 2012-11-28 09:18:02.0 -0600 +

Re: [PATCH] br2684: don't send frames on not-ready vcc

2012-11-29 Thread Nathan Williams
On Wed, 2012-11-28 at 17:09 +, David Woodhouse wrote: > On Wed, 2012-11-28 at 12:04 -0500, David Miller wrote: > > Do you want me to pull that tree into net-next or is there a plan to > > repost the entire series of work for a final submission? > > I think it needs a little more testing/consen

[PATCH 0/2] cpufreq: cpufreq_driver_lock is hot on large systems

2013-02-04 Thread Nathan Zimmer
I am noticing the cpufreq_driver_lock is quite hot. On an idle 512 system perf shows me most of the system time is spent on this lock. This is quite signifigant as top shows 5% of time in system time. My solution was to first convert the lock to a rwlock and then to the rcu. Nathan Zimmer (2

[PATCH 1/2] cpufreq: Convert the cpufreq_driver_lock to a rwlock

2013-02-04 Thread Nathan Zimmer
This completely eliminates the contention I am seeing in __cpufreq_cpu_get. It also nicely stages the lock to be replaced by the rcu. CC: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 44 ++-- 1 file c

[PATCH 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-04 Thread Nathan Zimmer
In general rwlocks are discourged so we are moving it to use the rcu instead. CC: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 177 +- 1 file changed, 98 insertions(+), 79 deletions(-) diff --git a/drive

RE: [PATCH 0/2] cpufreq: cpufreq_driver_lock is hot on large systems

2013-02-05 Thread Nathan Zimmer
Ok, I'll rebase and retest from linux-next then. From: Rafael J. Wysocki [r...@sisk.pl] Sent: Tuesday, February 05, 2013 4:13 AM To: Viresh Kumar Cc: Nathan Zimmer; linux-kernel@vger.kernel.org; linux...@vger.kernel.org; cpuf...@vger.kernel.org;

[PATCH v2 linux-next 1/2] cpufreq: Convert the cpufreq_driver_lock to a rwlock

2013-02-05 Thread Nathan Zimmer
This eliminates the contention I am seeing in __cpufreq_cpu_get. It also nicely stages the lock to be replaced by the rcu. Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 42 +- 1 file c

[PATCH v2 linux-next 0/2] cpufreq: cpufreq_driver_lock is hot on large systems

2013-02-05 Thread Nathan Zimmer
-next Nathan Zimmer (2): cpufreq: Convert the cpufreq_driver_lock to a rwlock cpufreq: Convert the cpufreq_driver_lock to use the rcu drivers/cpufreq/cpufreq.c | 150 +- 1 file changed, 83 insertions(+), 67 deletions(-) -- 1.8.0.1 -- To

[PATCH v2 linux-next 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-05 Thread Nathan Zimmer
In general rwlocks are discourged so we are moving it to use the rcu instead. Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 173 +- 1 file changed, 96 insertions(+), 77 deletions(-)

RE: cpufreq.c:1779 suspicious rcu_dereference_check() usage!

2013-02-11 Thread Nathan Zimmer
Could you send me the config used? From: Fengguang Wu [fengguang...@intel.com] Sent: Thursday, February 07, 2013 8:05 PM To: fengguang...@intel.com; Viresh Kumar Cc: Nathan Zimmer; cpuf...@vger.kernel.org; linux...@vger.kernel.org; linux-kernel

RE: cpufreq.c:1779 suspicious rcu_dereference_check() usage!

2013-02-11 Thread Nathan Zimmer
Nevermind it was on the intial mailing. Not sure what I was looking at. From: linux-pm-ow...@vger.kernel.org [linux-pm-ow...@vger.kernel.org] on behalf of Nathan Zimmer [nzim...@sgi.com] Sent: Monday, February 11, 2013 8:09 AM To: Fengguang Wu; Viresh

RE: [PATCH v2 linux-next 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-11 Thread Nathan Zimmer
: Thursday, February 07, 2013 5:29 PM To: Nathan Zimmer Cc: viresh.ku...@linaro.org; linux-kernel@vger.kernel.org; linux...@vger.kernel.org; cpuf...@vger.kernel.org Subject: Re: [PATCH v2 linux-next 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu On Tuesday, February 05, 2013 08:04:50

RE: [PATCH v2 linux-next 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-11 Thread Nathan Zimmer
Argh, your right. I completely misread that section. It'll take me a few days to respin and retest properly. Thanks, Nate From: Rafael J. Wysocki [r...@sisk.pl] Sent: Monday, February 11, 2013 1:36 PM To: Nathan Zimmer Cc: viresh.ku...@linaro.org;

Re: [PATCH v6 1/2] cpufreq: split the cpufreq_driver_lock and use the rcu

2013-04-02 Thread Nathan Zimmer
On Tue, Apr 02, 2013 at 10:35:46AM +0530, Viresh Kumar wrote: > On 2 April 2013 01:41, Nathan Zimmer wrote: > > diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c > > > +static struct cpufreq_driver __rcu *cpufreq_driver; > > +static DEFINE_SPINLOCK(cpufre

Re: [PATCH v6 2/2] cpufreq: covert the cpufreq_data_lock to a spinlock

2013-04-02 Thread Nathan Zimmer
On Tue, Apr 02, 2013 at 02:48:07PM +0200, Rafael J. Wysocki wrote: > On Tuesday, April 02, 2013 10:34:21 AM Viresh Kumar wrote: > > On 2 April 2013 06:26, Nathan Zimmer wrote: > > > On Mon, Apr 01, 2013 at 10:41:27PM +0200, Rafael J. Wysocki wrote: > > >> On Mond

Re: [PATCH v6 1/2] cpufreq: split the cpufreq_driver_lock and use the rcu

2013-04-02 Thread Nathan Zimmer
On Tue, Apr 02, 2013 at 08:29:12PM +0530, Viresh Kumar wrote: > On 2 April 2013 20:25, Nathan Zimmer wrote: > > The lock is unneeded if we expect register and unregister driver to not be > > called from muliple threads at once. I didn't make that assumption. > > Hmm..

[PATCH] cpufreq: convert the cpufreq_driver to use the rcu

2013-04-03 Thread Nathan Zimmer
with the RCU, so I am leaving it with the rwlock for now since under certain configs __cpufreq_cpu_get is hot spot with 256+ cores. Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 278 ++-

Re: [PATCH] cpufreq: convert the cpufreq_driver to use the rcu

2013-04-03 Thread Nathan Zimmer
2013 20:33, Nathan Zimmer wrote: We eventually would like to remove the rwlock cpufreq_driver_lock or convert it back to a spinlock and protect the read sections with RCU. The first step in Why do we want to convert it back to spinlock? Documentation/spinlocks.txt:84 I am not sure why but there

[PATCH linux-next v8] cpufreq: convert the cpufreq_driver to use the rcu

2013-04-04 Thread Nathan Zimmer
ready accepted half v8: Correct have_governor_per_policy Reviewed location of rcu_read_(un)lock in several spots Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 277 ++ 1 file changed,

Re: linux-next: manual merge of the akpm tree with the vfs tree

2013-04-04 Thread Nathan Zimmer
On 04/04/2013 03:02 AM, Al Viro wrote: On Wed, Apr 03, 2013 at 11:56:34PM -0700, Andrew Morton wrote: On Thu, 4 Apr 2013 17:26:48 +1100 Stephen Rothwell wrote: Hi Andrew, Today's linux-next merge of the akpm tree got a conflict in fs/proc/generic.c between several commits from the vfs tree

[PATCH resend] fs/proc: Move kfree outside pde_unload_lock

2013-04-04 Thread Nathan Zimmer
0.9710 256 5.2513 2.6519 512 8.0529 6.2976 Cc: "Eric W. Biederman" Cc: Andrew Morton Cc: Alexander Viro Cc: David Woodhouse Cc: Acked-by: Alexey Dobriyan Signed-off-by: Nathan Zimmer --- fs/proc/inode.c | 5 ++--- 1 file changed, 2 insertions(+), 3

Re: [PATCH resend] fs/proc: Move kfree outside pde_unload_lock

2013-04-04 Thread Nathan Zimmer
On 04/04/2013 11:11 AM, Al Viro wrote: On Thu, Apr 04, 2013 at 10:53:39AM -0500, Nathan Zimmer wrote: This moves a kfree outside a spinlock to help scaling on larger (512 core) systems. This should be some relief until we can move the section to use the rcu. Umm... That'll get wreck

Re: [PATCH resend] fs/proc: Move kfree outside pde_unload_lock

2013-04-05 Thread Nathan Zimmer
On 04/04/2013 03:44 PM, Al Viro wrote: On Thu, Apr 04, 2013 at 12:12:05PM -0500, Nathan Zimmer wrote: Ok I am cloning the tree now. It does look like the patches would conflict. I'll run some tests and take a deeper look. FWIW, I've just pushed there a tentative patch that s

Re: [PATCH resend] fs/proc: Move kfree outside pde_unload_lock

2013-04-05 Thread Nathan Zimmer
On 04/05/2013 12:36 PM, Al Viro wrote: On Fri, Apr 05, 2013 at 12:05:26PM -0500, Nathan Zimmer wrote: On 04/04/2013 03:44 PM, Al Viro wrote: On Thu, Apr 04, 2013 at 12:12:05PM -0500, Nathan Zimmer wrote: Ok I am cloning the tree now. It does look like the patches would conflict. I'l

cpufreq: cpufreq_driver_lock is quite hot on 512p systems

2013-01-30 Thread Nathan Zimmer
I am noticing the cpufreq_driver_lock is quite hot. Currently on an idle 512 system perf shows me most of the system time is spent on this lock. - 84.18% [kernel] [k] _raw_spin_lock_irqsave - _raw_spin_lock_irqsave - 99.97% __cpufreq_cpu_get cpufreq_cpu_get

Re: [PATCH v4 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-25 Thread Nathan Zimmer
On 02/22/2013 09:39 PM, Viresh Kumar wrote: Hi Nathan, Sorry for pointing out this so late but i still feel we are missing something really important. On 22 February 2013 21:54, Nathan Zimmer wrote: - read_lock_irqsave(&cpufreq_driver_lock, flags); + rcu_read_

[PATCH v3 2/2] timer_list: convert timer list to be a proper seq_file

2013-02-26 Thread Nathan Zimmer
gh as reported by Dave Jones. Convert /proc/timer_list to a proper seq_file with its own iterator. This is a little more complex given that we have to make two passes with two separate headers. Signed-off-by: Nathan Zimmer Reported-by: Dave Jones Cc: John Stultz Cc: Thomas Gleixner Cc: Stephen

[PATCH v3 1/2] timer_list: split timer_list_show_tickdevices()

2013-02-26 Thread Nathan Zimmer
Split timer_list_show_tickdevices() out the header and just pull the rest up to timer_list_show. Also tweak the location of the whitespace. This is all to prep for the fix. Signed-off-by: Nathan Zimmer Reported-by: Dave Jones Cc: John Stultz Cc: Thomas Gleixner Cc: Stephen Boyd --- kernel

[PATCH v3 0/2] timer_list: Fix /proc/timer_list failure on 4096 cpus

2013-02-26 Thread Nathan Zimmer
should be identical to the previous version. v2: Added comments on the iteration and other fixups pointed to by Andrew. v3: Corrected the case where max_cpus != nr_cpu_ids by exiting early. Nathan Zimmer (2): timer_list: split timer_list_show_tickdevices() timer_list: convert timer list to be a

RE: [PATCH v3 1/2] timer_list: split timer_list_show_tickdevices()

2013-02-27 Thread Nathan Zimmer
I thought I grabbed the version without it. I'll fix it. From: Stephen Boyd [sb...@codeaurora.org] Sent: Wednesday, February 27, 2013 1:37 PM To: Nathan Zimmer Cc: johns...@us.ibm.com; t...@linutronix.de; a...@linux-foundation.org; linux-k

Re: [PATCH v3 1/2] timer_list: split timer_list_show_tickdevices()

2013-02-27 Thread Nathan Zimmer
On Wed, Feb 27, 2013 at 11:37:26AM -0800, Stephen Boyd wrote: > On 02/26/13 15:33, Nathan Zimmer wrote: > > @@ -246,12 +244,8 @@ static void timer_list_show_tickdevices(struct > > seq_file *m) > > #endif > > SEQ_printf(m, "\n"); > &

[PATCH v3 0/2] cpufreq: cpufreq_driver_lock is hot on large systems

2013-02-20 Thread Nathan Zimmer
the RCU documentation instead of skimming it. Also I based on git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git pm+acpi-3.9-rc1 I assumed that was what you would prefer Rafael. Nathan Zimmer (2): cpufreq: Convert the cpufreq_driver_lock to a rwlock cpufreq: Convert the

[PATCH v3 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-20 Thread Nathan Zimmer
grab them under the rcu_read_lock but call them after rcu_read_unlock(); Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 312 +- 1 file changed, 224 insertions(+), 88 deletions(-) di

[PATCH v3 1/2] cpufreq: Convert the cpufreq_driver_lock to a rwlock

2013-02-20 Thread Nathan Zimmer
This eliminates the contention I am seeing in __cpufreq_cpu_get. It also nicely stages the lock to be replaced by the rcu. Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 52 +++ 1 fi

Re: [PATCH v3 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-21 Thread Nathan Zimmer
On 02/20/2013 11:50 PM, Viresh Kumar wrote: On 21 February 2013 05:26, Nathan Zimmer wrote: In general rwlocks are discourged so we are moving it to use the rcu instead. This does require a bit of care since the cpufreq_driver_lock protects both the cpufreq_driver and the cpufreq_cpu_data

Re: mmotm 2013-02-19-17-20 uploaded

2013-02-21 Thread Nathan Zimmer
On Thu, Feb 21, 2013 at 01:25:29AM -0800, Stephen Boyd wrote: > On 2/19/2013 5:21 PM, a...@linux-foundation.org wrote: > > * timer_list-split-timer_list_show_tickdevices.patch > > * timer_list-convert-timer-list-to-be-a-proper-seq_file.patch > > * timer_list-convert-timer-list-to-be-a-proper-seq_fi

Re: mmotm 2013-02-19-17-20 uploaded

2013-02-21 Thread Nathan Zimmer
On 02/21/2013 12:27 PM, Stephen Boyd wrote: On 2/21/2013 10:18 AM, Nathan Zimmer wrote: On Thu, Feb 21, 2013 at 01:25:29AM -0800, Stephen Boyd wrote: On 2/19/2013 5:21 PM, a...@linux-foundation.org wrote: * timer_list-split-timer_list_show_tickdevices.patch * timer_list-convert-timer-list-to

[PATCH v4] procfs: Improve Scaling in proc

2013-02-21 Thread Nathan Zimmer
c: David Woodhouse Cc: Alexey Dobriyan Cc: "Paul E. McKenney" Signed-off-by: Nathan Zimmer --- fs/proc/generic.c | 62 +-- fs/proc/inode.c | 161 ++-- include/linux/proc_fs.h | 6 +- 3 files changed, 123

[PATCH v4 0/2] cpufreq: cpufreq_driver_lock is hot on large systems

2013-02-22 Thread Nathan Zimmer
the RCU documentation instead of skimming it. Also I based on git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git pm+acpi-3.9-rc1 I assumed that was what you would prefer Rafael. v4: Removed an unnecessary syncronize_rcu(). Nathan Zimmer (2): cpufreq: Convert the

[PATCH v4 1/2] cpufreq: Convert the cpufreq_driver_lock to a rwlock

2013-02-22 Thread Nathan Zimmer
This eliminates the contention I am seeing in __cpufreq_cpu_get. It also nicely stages the lock to be replaced by the rcu. Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 52 +++ 1 fi

[PATCH v4 2/2] cpufreq: Convert the cpufreq_driver_lock to use the rcu

2013-02-22 Thread Nathan Zimmer
grab them under the rcu_read_lock but call them after rcu_read_unlock(); Cc: Viresh Kumar Cc: "Rafael J. Wysocki" Signed-off-by: Nathan Zimmer --- drivers/cpufreq/cpufreq.c | 305 +- 1 file changed, 217 insertions(+), 88 deletions(-) di

[PATCH linux-next] dgrp: staging: cleanup sparse warnings

2013-03-13 Thread Nathan Zimmer
A cleanup patch to remove sparse warnings caused by my other patch "procfs: Improve Scaling in proc" since now proc_fops is protected by the rcu. Signed-off-by: Nathan Zimmer Cc: Greg Kroah-Hartman Cc: Bill Pemberton Cc: de...@driverdev.osuosl.org Cc: linux-kernel@vger.

Re: [PATCH v4 0/2] cpufreq: cpufreq_driver_lock is hot on large systems

2013-03-13 Thread Nathan Zimmer
On 03/11/2013 06:23 PM, Rafael J. Wysocki wrote: On Friday, February 22, 2013 10:24:33 AM Nathan Zimmer wrote: I am noticing the cpufreq_driver_lock is quite hot. On an idle 512 system perf shows me most of the system time is spent on this lock. This is quite significant as top shows 5% of

[PATCH] revert "PCI: log vendor/device ID always"

2012-10-02 Thread Nathan Zimmer
Revert commit id 2c6413aee215a43b1f95e218067abcde50ccbc5e On larger systems (256 cores+) with signifigant IO attached this single message represents over 20% of the messages at boot. Cc: Bjorn Helgaas Cc: Jesse Barnes Signed-off-by: Nathan Zimmer --- drivers/pci/probe.c |4 ++-- 1 files

[PATCH 0/5] Move some OF functionality from pseries to generic OF code

2012-10-02 Thread Nathan Fontenot
the device tree in /proc when adding/removing a node. o Adding a notification chain for adding/removing nodes and properties of the device tree. o Re-naming the base OF code prom_* routines to of_* to better go with the naming used for OF code. -Nathan -- To unsubscribe from this list: send

[PATCH 1/5] Add /proc device tree updating to of node add/remove

2012-10-02 Thread Nathan Fontenot
When adding or removing a device tree node we should also update the device tree in /proc/device-tree. This action is already done in the generic OF code for adding/removing properties of a node. This patch adds this functionality for nodes. Signed-off-by: Nathan Fontenot --- arch/powerpc

[PATCH 2/5] Move of_drconf_cell struct definition to asm/prom.h

2012-10-02 Thread Nathan Fontenot
This patch moves the definition of the of_drconf_cell struct to asm/prom.h to make it available for all powerpc/pseries code. Signed-off-by: Nathan Fontenot --- arch/powerpc/include/asm/prom.h | 16 arch/powerpc/mm/numa.c | 12 2 files changed, 16

[PATCH 3/5] Add of node/property notification chain for adds and removes

2012-10-02 Thread Nathan Fontenot
property. Signed-off-by: Nathan Fontenot --- arch/powerpc/include/asm/pSeries_reconfig.h | 32 -- arch/powerpc/kernel/prom.c |6 - arch/powerpc/platforms/pseries/dlpar.c | 14 ++-- arch/powerpc/platforms/pseries/hotplug-cpu.c|8 +- arch

[PATCH 4/5] Rename the drivers/of prom_* functions to of_*

2012-10-02 Thread Nathan Fontenot
Rename the prom_*_property routines of the generic OF code to of_*_property. This brings them in line with the naming used by the rest of the OF code. Signed-off-by: Nathan Fontenot --- arch/powerpc/kernel/machine_kexec.c | 12 ++-- arch/powerpc/kernel/machine_kexec_64.c

[PATCH 5/5] Remove the pSeries_reconfig.h file

2012-10-02 Thread Nathan Fontenot
Remove the pSeries_reconfig.h header file. At this point there is only one definition in the file, pSeries_coalesce_init(), which can be moved to rtas.h. Signed-off-by: Nathan Fontenot --- arch/powerpc/include/asm/pSeries_reconfig.h | 15 --- arch/powerpc/include/asm/rtas.h

Re: [PATCH] revert "PCI: log vendor/device ID always"

2012-10-04 Thread Nathan Zimmer
On 10/03/2012 05:54 PM, Bjorn Helgaas wrote: On Tue, Oct 2, 2012 at 8:23 AM, Nathan Zimmer wrote: Revert commit id 2c6413aee215a43b1f95e218067abcde50ccbc5e On larger systems (256 cores+) with signifigant IO attached this single message represents over 20% of the messages at boot. Is this

Re: [PATCH] revert "PCI: log vendor/device ID always"

2012-10-05 Thread Nathan Zimmer
On 10/04/2012 11:37 AM, Joe Perches wrote: On Thu, 2012-10-04 at 11:02 -0500, Nathan Zimmer wrote: At many of our customer sites the log level is set to KERN_DEBUG. It helps avoid reboots due to operator impatience. Machines this large take significantly longer then typical to boot and seeing

Re: [PATCH] revert "PCI: log vendor/device ID always"

2012-10-05 Thread Nathan Zimmer
On 10/05/2012 09:14 AM, Joe Perches wrote: On Fri, 2012-10-05 at 08:55 -0500, Nathan Zimmer wrote: On 10/04/2012 11:37 AM, Joe Perches wrote: On Thu, 2012-10-04 at 11:02 -0500, Nathan Zimmer wrote: At many of our customer sites the log level is set to KERN_DEBUG. It helps avoid reboots due to

Re: [PATCH] revert "PCI: log vendor/device ID always"

2012-10-05 Thread Nathan Zimmer
On 10/05/2012 10:16 AM, Bjorn Helgaas wrote: On Fri, Oct 5, 2012 at 8:54 AM, Nathan Zimmer wrote: On 10/05/2012 09:14 AM, Joe Perches wrote: On Fri, 2012-10-05 at 08:55 -0500, Nathan Zimmer wrote: On 10/04/2012 11:37 AM, Joe Perches wrote: On Thu, 2012-10-04 at 11:02 -0500, Nathan Zimmer

[PATCH v2] procfs: Improve Scaling in proc

2012-10-24 Thread Nathan Zimmer
ing loop. Cc: Eric Dumazet Cc: Alexander Viro Cc: David Woodhouse Cc: Alexey Dobriyan Cc: "Paul E. McKenney" Signed-off-by: Nathan Zimmer --- fs/proc/generic.c | 56 +- fs/proc/inode.c | 252 +-- fs/proc/internal.

[PATCH] ledtrig-cpu: kill useless mutex to fix sleep in atomic context

2012-11-05 Thread Nathan Lynch
led_trigger_cpu appears to have no function: it resides in a per-cpu data structure which never changes after the trigger is registered. So just remove it. Reported-by: Miles Lane Signed-off-by: Nathan Lynch --- drivers/leds/ledtrig-cpu.c | 21 - 1 file changed, 21 deletions

Re: [PATCH 2/2 v2] epoll: Do not take global 'epmutex' for simple topologies

2013-10-04 Thread Nathan Zimmer
from forming in parallel through multiple EPOLL_CTL_ADD > >> operations. However, for the simple case of an epoll file descriptor > >> attached directly to a wakeup source (with no nesting), we do not need > >> to hold the 'epmutex'. > >> > >>

Re: [RFC] eventpoll: Move a kmem_cache_alloc and kmem_cache_free

2013-09-19 Thread Nathan Zimmer
On 09/18/2013 02:09 PM, Jason Baron wrote: On 09/13/2013 11:54 AM, Nathan Zimmer wrote: We noticed some scaling issue in the SPECjbb benchmark. Running perf we found that the it was spending lots of time in SYS_epoll_ctl. In particular it is holding the epmutex. This patch helps by moving out

[PATCH] Have __free_pages_memory() free in larger chunks.

2013-09-10 Thread Nathan Zimmer
Robin and I had been working on. Signed-off-by: Robin Holt Signed-off-by: Nathan Zimmer To: "H. Peter Anvin" To: Ingo Molnar Cc: Linux Kernel Cc: Linux MM Cc: Rob Landley Cc: Mike Travis Cc: Daniel J Blueman Cc: Andrew Morton Cc: Greg KH Cc: Yinghai Lu Cc: Mel Gorman --- mm/n

[RFC] eventpoll: Move a kmem_cache_alloc and kmem_cache_free

2013-09-13 Thread Nathan Zimmer
l.org/lkml/2011/2/25/297. Any thoughts? Cc: Al Viro Cc: Jason Baron Reported-by: Jerry Lohr Signed-off-by: Nathan Zimmer --- fs/eventpoll.c | 27 ++- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/fs/eventpoll.c b/fs/eventpoll.c index 9ad17b15..752e5ff 1

Re: [RFC] eventpoll: Move a kmem_cache_alloc and kmem_cache_free

2013-09-23 Thread Nathan Zimmer
On Mon, Sep 23, 2013 at 11:17:39AM -0400, Jason Baron wrote: > On 09/19/2013 12:37 PM, Nathan Zimmer wrote: > > On 09/18/2013 02:09 PM, Jason Baron wrote: > >> On 09/13/2013 11:54 AM, Nathan Zimmer wrote: > >>> We noticed some scaling issue in the SPECjbb benchmark

Re: [RFC] eventpoll: Move a kmem_cache_alloc and kmem_cache_free

2013-09-24 Thread Nathan Zimmer
On Mon, Sep 23, 2013 at 11:47:41AM -0500, Nathan Zimmer wrote: > On Mon, Sep 23, 2013 at 11:17:39AM -0400, Jason Baron wrote: > > On 09/19/2013 12:37 PM, Nathan Zimmer wrote: > > > On 09/18/2013 02:09 PM, Jason Baron wrote: > > >> On 09/13/2013 11:54 AM, Nathan Zi

[PATCH] procfs: Improve Scaling in proc

2012-10-17 Thread Nathan Zimmer
vid Woodhouse Cc: Alexey Dobriyan Signed-off-by: Nathan Zimmer --- fs/proc/generic.c | 64 ++--- fs/proc/inode.c | 251 +-- fs/proc/internal.h |2 + include/linux/proc_fs.h |7 +- 4 files changed, 191 insertions(+),

Re: [PATCH] procfs: Improve Scaling in proc

2012-10-18 Thread Nathan Zimmer
On 10/18/2012 02:46 AM, Eric Dumazet wrote: On Wed, 2012-10-17 at 15:25 -0500, Nathan Zimmer wrote: I am currently tracking a hotlock reported by a customer on a large, 512 cores, system, I am currently running 3.7.0 rc1 but the issue looks like it has been this way for a very long time. The

Re: [PATCH] ledtrig-cpu: use spin_lock to replace mutex lock

2012-10-22 Thread Nathan Lynch
Hi Bryan, On Thu, 2012-10-18 at 11:18 -0700, Bryan Wu wrote: > @@ -117,14 +117,14 @@ static int __init ledtrig_cpu_init(void) > for_each_possible_cpu(cpu) { > struct led_trigger_cpu *trig = &per_cpu(cpu_trig, cpu); > > - mutex_init(&trig->lock); > + spi

[PATCH 3/4] /proc/timer_list split timer_list_show_tickdevices

2012-12-11 Thread Nathan Zimmer
Split timer_list_show_tickdevices out the header and just pull the rest up to timer_list_show. Also tweak the location of the whitespace. This is all to prep for the fix. CC: John Stultz CC: Thomas Gleixner CC: linux-kernel@vger.kernel.org Reported-by: Dave Jones Signed-off-by: Nathan Zimmer

[PATCH 0/4] /proc/schedstat and /proc/sched_debug fail at 4096

2012-12-11 Thread Nathan Zimmer
it a spin. Nathan Zimmer (4): procfs: /proc/sched_stat fails on very very large machines. procfs: /proc/sched_debug fails on very very large machines. /proc/timer_list split timer_list_show_tickdevices Convert timer list to be a proper seq_file. kernel/sched/debug.c |

[PATCH 1/4] procfs: /proc/sched_stat fails on very very large machines.

2012-12-11 Thread Nathan Zimmer
seq_operations. The output should be identical to previous version and thus not need the version number. CC: Ingo Molnar CC: Peter Zijlstra Cc: Alexander Viro CC: linux-kernel@vger.kernel.org Reported-by: Dave Jones Signed-off-by: Nathan Zimmer --- kernel/sched/stats.c | 73

[PATCH 2/4] procfs: /proc/sched_debug fails on very very large machines.

2012-12-11 Thread Nathan Zimmer
seq_operations and treat each cpu as an individual record. The output should be identical to previous version. CC: Ingo Molnar CC: Peter Zijlstra Cc: Alexander Viro CC: linux-kernel@vger.kernel.org Reported-by: Dave Jones Signed-off-by: Nathan Zimmer --- kernel/sched/debug.c | 84

[PATCH 4/4] Convert timer list to be a proper seq_file.

2012-12-11 Thread Nathan Zimmer
Convert /proc/timer_list to a proper seq_file with its own iterator. This is a little more complex given that we have to make two passes with two seperate headers. CC: John Stultz CC: Thomas Gleixner CC: linux-kernel@vger.kernel.org Reported-by: Dave Jones Signed-off-by: Nathan Zimmer

[RFC 0/2] /proc/sched_stat and /proc/sched_debug fail at 4096

2012-11-06 Thread Nathan Zimmer
When running with 4096 cores attemping to read /proc/sched_stat and /proc/sched_debug will fail with an ENOMEM condition. On a sufficantly large systems the total amount of data is more then 4mb, so it won't fit into a single buffer. Nathan Zimmer (2): procfs: /proc/sched_stat fails on

[RFC 1/2] procfs: /proc/sched_stat fails on very very large machines.

2012-11-06 Thread Nathan Zimmer
seq_operations. The output should be identical to previous version and thus not need the version number. Signed-off-by: Nathan Zimmer CC: Ingo Molnar CC: Peter Zijlstra CC: linux-kernel@vger.kernel.org --- kernel/sched/stats.c | 139 +- 1 files changed, 81

[RFC 2/2] procfs: /proc/sched_debug fails on very very large machines.

2012-11-06 Thread Nathan Zimmer
seq_operations and treat each cpu as an individual record. The output should be identical to previous version except the trailing '\n' was dropped. Does that require incrementing the version? Or should I find a way to reinclude it? Signed-off-by: Nathan Zimmer CC: Ingo Molnar CC: Peter Zi

Re: [RFC 2/2] procfs: /proc/sched_debug fails on very very large machines.

2012-11-06 Thread Nathan Zimmer
On Tue, Nov 06, 2012 at 04:31:28PM -0500, Dave Jones wrote: > On Tue, Nov 06, 2012 at 03:02:21PM -0600, Nathan Zimmer wrote: > > On systems with 4096 cores attemping to read /proc/sched_debug fails. > > We are trying to push all the data into a single kmalloc buffer. > >

Re: [RFC 2/2] procfs: /proc/sched_debug fails on very very large machines.

2012-11-07 Thread Nathan Zimmer
On 11/06/2012 05:49 PM, Dave Jones wrote: On Tue, Nov 06, 2012 at 05:24:15PM -0600, Nathan Zimmer wrote: > On Tue, Nov 06, 2012 at 04:31:28PM -0500, Dave Jones wrote: > > On Tue, Nov 06, 2012 at 03:02:21PM -0600, Nathan Zimmer wrote: > > > On systems with 4096 cores

[RFC v2 2/2] procfs: /proc/sched_debug fails on very very large machines.

2012-11-08 Thread Nathan Zimmer
seq_operations and treat each cpu as an individual record. The output should be identical to previous version. Signed-off-by: Nathan Zimmer CC: Ingo Molnar CC: Peter Zijlstra CC: linux-kernel@vger.kernel.org CC: Al Viro --- kernel/sched/debug.c | 73

[RFC v2 0/2] /proc/sched_stat and /proc/sched_debug fail at 4096

2012-11-08 Thread Nathan Zimmer
wever timer_list has two seperate per online cpu loops which will require a bit more thought. Nathan Zimmer (2): procfs: /proc/sched_stat fails on very very large machines. procfs: /proc/sched_debug fails on very very large machines. kernel/sched/debug.c | 73 +--- kernel/

[RFC v2 1/2] procfs: /proc/sched_stat fails on very very large machines.

2012-11-08 Thread Nathan Zimmer
seq_operations. The output should be identical to previous version and thus not need the version number. Signed-off-by: Nathan Zimmer CC: Ingo Molnar CC: Peter Zijlstra CC: linux-kernel@vger.kernel.org CC: Al Viro --- kernel/sched/stats.c | 154 ++--- 1 files

BUG: unable to handle kernel paging request at 000000effd870020

2013-01-02 Thread Nathan Zimmer
I am getting an early boot problem. It only happens on the larger of the machines I haven't seen it crop up on machines with more then 512 GB of ram. It shows in the latest linus kernel too. I am (wildly) guessing that what is happening is that the new_memmap that is being passed to bios is someho

Re: BUG: unable to handle kernel paging request at 000000effd870020

2013-01-02 Thread Nathan Zimmer
On 01/02/2013 12:04 PM, H. Peter Anvin wrote: On 01/02/2013 09:21 AM, Nathan Zimmer wrote: I am getting an early boot problem. It only happens on the larger of the machines I haven't seen it crop up on machines with more then 512 GB of ram. It shows in the latest linus kernel too. I am (w

Re: BUG: unable to handle kernel paging request at 000000effd870020

2013-01-03 Thread Nathan Zimmer
On Thu, Jan 03, 2013 at 03:50:55PM +, Matt Fleming wrote: > On Wed, 2013-01-02 at 15:09 -0600, Robin Holt wrote: > > On Wed, Jan 02, 2013 at 01:13:43PM -0600, Nathan Zimmer wrote: > > > On 01/02/2013 12:04 PM, H. Peter Anvin wrote: > > > >On 01/02/2013 09:21 AM,

[PATCH 2/2] procfs: /proc/sched_debug fails on very very large machines.

2012-11-19 Thread Nathan Zimmer
solution is to not us the single_open mechanism but to provide our own seq_operations and treat each cpu as an individual record. Also sysrq_sched_debug_show must be updated to to not use the new sched_debug_show. The output should be identical to previous version. Signed-off-by: Nathan Zimmer

[PATCH 1/2] procfs: /proc/schedstat fails on very very large machines.

2012-11-19 Thread Nathan Zimmer
is to not us the single_open mechanism but to provide our own seq_operations. The output should be identical to previous version and thus not need the version number. Signed-off-by: Nathan Zimmer CC: Ingo Molnar CC: Peter Zijlstra CC: linux-kernel@vger.kernel.org Reported-by: Dave Jones

Re: [PATCH v2] drivers/base: Use attribute groups to create sysfs memory files

2013-06-04 Thread Nathan Fontenot
set the dev.groups field. Signed-off-by: Nathan Fontenot Patch updated to correct formatting errors. Please cc me on responses/comments. --- drivers/base/memory.c | 143 +- 1 file changed, 62 insertions(+), 81 deletions(-) Index: linux/drivers

[PATCH v2] drivers/base: Use attribute groups to create sysfs memory files

2013-05-31 Thread Nathan Fontenot
set the dev.groups field. Signed-off-by: Nathan Fontenot Please cc me on responses/comments

[RFC 2/2] x86_64, mm: Reinsert the absent memory

2013-06-21 Thread Nathan Zimmer
The memory we set aside in the previous patch needs to be reinserted. We start this process via late_initcall so we will have multiple cpus to do the work. Signed-off-by: Mike Travis Signed-off-by: Nathan Zimmer Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Greg Kro

[RFC 0/2] Delay initializing of large sections of memory

2013-06-21 Thread Nathan Zimmer
This rfc patch set delays initializing large sections of memory until we have started cpus. This has the effect of reducing startup times on large memory systems. On 16TB it can take over an hour to boot and most of that time is spent initializing memory. We avoid that bottleneck by delaying ini

[RFC 1/2] x86_64, mm: Delay initializing large portion of memory

2013-06-21 Thread Nathan Zimmer
the 15 to 30 minute range. Signed-off-by: Mike Travis Signed-off-by: Nathan Zimmer Cc: Rob Landley Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Yinghai Lu Cc: Andrew Morton --- Documentation/kernel-parameters.txt | 15 arch/x86/Kconfig

Re: [RFC 0/2] Delay initializing of large sections of memory

2013-06-21 Thread Nathan Zimmer
On 06/21/2013 12:03 PM, H. Peter Anvin wrote: On 06/21/2013 09:51 AM, Greg KH wrote: On Fri, Jun 21, 2013 at 11:25:32AM -0500, Nathan Zimmer wrote: This rfc patch set delays initializing large sections of memory until we have started cpus. This has the effect of reducing startup times on

Re: [RFC 0/2] Delay initializing of large sections of memory

2013-06-21 Thread Nathan Zimmer
On 06/21/2013 02:10 PM, Yinghai Lu wrote: On Fri, Jun 21, 2013 at 11:50 AM, Greg KH wrote: On Fri, Jun 21, 2013 at 11:44:22AM -0700, Yinghai Lu wrote: On Fri, Jun 21, 2013 at 10:03 AM, H. Peter Anvin wrote: On 06/21/2013 09:51 AM, Greg KH wrote: I suspect the cutoff for this should be a lot

Re: [RFC 0/2] Delay initializing of large sections of memory

2013-06-21 Thread Nathan Zimmer
On 06/21/2013 12:28 PM, H. Peter Anvin wrote: On 06/21/2013 10:18 AM, Nathan Zimmer wrote: Since you made it a compile time option, it would be good to know how much code it adds, but otherwise I agree with Greg here... this really shouldn't need to be an option. It *especially* shouldn&#

Re: [RFC 0/2] Delay initializing of large sections of memory

2013-06-21 Thread Nathan Zimmer
On Fri, Jun 21, 2013 at 01:08:06PM -0700, H. Peter Anvin wrote: > Is this init code? 32K of unconditional runtime addition isn't completely > trivial. Some of it is init code but not all. I am guessing 24k of that is actually runtime. > > Nathan Zimmer wrote: > > >

Re: [RFC 0/2] Delay initializing of large sections of memory

2013-06-21 Thread Nathan Zimmer
On Fri, Jun 21, 2013 at 01:28:11PM -0700, Yinghai Lu wrote: > On Fri, Jun 21, 2013 at 12:19 PM, Nathan Zimmer wrote: > > On 06/21/2013 02:10 PM, Yinghai Lu wrote: > >> in this way we can keep all numa etc on the place when online ram, cpu, > >> pci... > >> &g

Re: [RFC 2/2] x86_64, mm: Reinsert the absent memory

2013-06-24 Thread Nathan Zimmer
On Sun, Jun 23, 2013 at 11:28:40AM +0200, Ingo Molnar wrote: > > That's 4.5 GB/sec initialization speed - that feels a bit slow and the > boot time effect should be felt on smaller 'a couple of gigabytes' desktop > boxes as well. Do we know exactly where the 2 hours of boot time on a 32 > TB sy

Re: [RFC 2/2] x86_64, mm: Reinsert the absent memory

2013-06-26 Thread Nathan Zimmer
On Wed, Jun 26, 2013 at 02:14:30PM +0200, Ingo Molnar wrote: > > * Nathan Zimmer wrote: > > > perf seems to struggle with 512 cpus, but I did get some data. > > Btw., mind outlining in what way it struggles? > > Thanks, > > Ingo System interactivit

Re: [RFC] Transparent on-demand memory setup initialization embedded in the (GFP) buddy allocator

2013-06-26 Thread Nathan Zimmer
On Wed, Jun 26, 2013 at 03:37:15PM +0200, Ingo Molnar wrote: > > * Andrew Morton wrote: > > > On Wed, 26 Jun 2013 11:22:48 +0200 Ingo Molnar wrote: > > > > > except that on 32 TB > > > systems we don't spend ~2 hours initializing 8,589,934,592 page heads. > > > > That's about a million a sec

Re: [RFC 2/2] x86_64, mm: Reinsert the absent memory

2013-06-26 Thread Nathan Zimmer
On 06/26/2013 10:12 AM, Dave Hansen wrote: On 06/26/2013 07:49 AM, Nathan Zimmer wrote: My guess it is the NMIs overwhelming the system but I have not found a good way to profile perf gone wild so it is only a guess. I've got an 80-core system and the symptoms sound similar to perf issue

  1   2   3   4   5   6   7   8   9   10   >