From: Christoph Lameter on
On Wed, 24 Mar 2010, Tejun Heo wrote:

> http://userweb.kernel.org/~tj/misc/slabh-sweep.py

Ugg. What a complex beast.

> With the actual patch, this message would end up ~1.7M which seems tad
> bit too large to send through LKML. I said that I would post the
> whole patch on the last round but that was 200k and this one is 272K
> only with the diffstats and this one doesn't include any interesting
> stuff, so I'm snipping it again. The whole patch is available at the
> following URL.

Sounds all okay. But reviewing the actual patch. How?

Guess-its-ok-by: Christoph Lameter <cl(a)linux-foundation.org>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Lee Schermerhorn on
On Wed, 2010-03-24 at 17:48 +0900, Tejun Heo wrote:
> percpu.h is included by sched.h and module.h and thus ends up being
> included when building most .c files in the kernel. percpu.h includes
> slab.h which in turn includes gfp.h making everything defined by the
> two files unconditionally available and complicating inclusion
> dependencies.

<snip script/process discussion>

> Given the fact that I had only a couple of failures from tests on step
> 6, I'm fairly confident about the coverage of this conversion patch.
> If there is a breakage, it's likely to be something in the arch header
> which should be discovered easily on most builds of the specific arch.
>
> Signed-off-by: Tejun Heo <tj(a)kernel.org>
> Cc: Ingo Molnar <mingo(a)redhat.com>
> Cc: Lee Schermerhorn <Lee.Schermerhorn(a)hp.com>
> Cc: Christoph Lameter <cl(a)linux-foundation.org>
> ---
> With the actual patch, this message would end up ~1.7M which seems tad
> bit too large to send through LKML. I said that I would post the
> whole patch on the last round but that was 200k and this one is 272K
> only with the diffstats and this one doesn't include any interesting
> stuff, so I'm snipping it again. The whole patch is available at the
> following URL.
>
> http://userweb.kernel.org/~tj/patches/0003-include-cleanup-Update-gfp.h-and-slab.h-includes-to-.patch
>

Tejun:

I rebased your series atop the mmotm dated 24march to test my "generic
percpu numa_*_id()" series. This largish patch [3/4] threw a few [13]
rejects. I'll list them below. You've said that you're going to submit
this to linux-next where it might not see the same rejects. I built,
booted and am using the resulting kernel on x86_64.

Building with allyesconfig, I found 15 additional files in the mmotm
tree that will need an explicit include of slab.h added. I have
attached a patch that addresses these.

I have rebased my numa_*_id() series atop this mmotm, less the
percpu.h/percpu-defs.h hack that led you down this path. That kernel
builds and boots fine. I'm currently testing with and without
memoryless nodes. So far, this series looks good.

Regards,
Lee


Rejects atop 24march mmotm:

arch/powerpc/platforms/83xx/mcu_mpc8349emitx.c.rej
drivers/gpio/gpiolib.c.rej
drivers/gpu/drm/radeon/r300.c.rej
drivers/hid/hid-wacom.c.rej
drivers/media/video/soc_camera.c.rej
drivers/net/wireless/wl12xx/wl1271_cmd.c.rej
drivers/net/wireless/wl12xx/wl1271_main.c.rej
drivers/net/wireless/wl12xx/wl1271_spi.c.rej
drivers/s390/char/vmcp.c.rej
fs/proc/base.c.rej
kernel/audit_watch.c.rej
net/mac80211/scan.c.rej
security/selinux/ss/symtab.c.rej

==============================================================
Additional files requiring explict include of slab.h from the
24march2010 mmotm.


Signed-off-by: Lee Schermerhorn <lee.schermerhorn(a)hp.com>

drivers/hwmon/tmp102.c | 1 +
drivers/input/misc/ad714x.c | 1 +
drivers/input/misc/pcf8574_keypad.c | 1 +
drivers/leds/leds-input.c | 1 +
drivers/misc/hwlat_detector.c | 1 +
drivers/mtd/sm_ftl.c | 1 +
drivers/vbus/bus-proxy.c | 1 +
kernel/debug/kdb/kdb_support.c | 1 +
sound/soc/codecs/twl6040.c | 1 +
sound/usb/endpoint.c | 1 +
sound/usb/format.c | 1 +
sound/usb/helper.c | 1 +
sound/usb/mixer_quirks.c | 1 +
sound/usb/pcm.c | 1 +
sound/usb/quirks.c | 1 +
15 files changed, 15 insertions(+)

Index: linux-2.6.34-rc2-mmotm-100324-1448/drivers/vbus/bus-proxy.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/drivers/vbus/bus-proxy.c 2010-03-29 09:18:20.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/drivers/vbus/bus-proxy.c 2010-03-29 16:13:16.000000000 -0400
@@ -19,6 +19,7 @@
*/

#include <linux/module.h>
+#include <linux/slab.h>
#include <linux/vbus_driver.h>

MODULE_AUTHOR("Gregory Haskins");
Index: linux-2.6.34-rc2-mmotm-100324-1448/drivers/leds/leds-input.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/drivers/leds/leds-input.c 2010-03-29 09:18:22.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/drivers/leds/leds-input.c 2010-03-29 17:17:11.000000000 -0400
@@ -10,6 +10,7 @@

#include <linux/kernel.h>
#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/leds.h>
#include <linux/input.h>

Index: linux-2.6.34-rc2-mmotm-100324-1448/drivers/input/misc/ad714x.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/drivers/input/misc/ad714x.c 2010-03-29 09:18:20.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/drivers/input/misc/ad714x.c 2010-03-29 17:17:55.000000000 -0400
@@ -6,6 +6,7 @@
* Licensed under the GPL-2 or later.
*/

+#include <linux/slab.h>
#include <linux/device.h>
#include <linux/init.h>
#include <linux/input.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/mixer_quirks.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/sound/usb/mixer_quirks.c 2010-03-29 09:18:21.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/mixer_quirks.c 2010-03-29 17:18:36.000000000 -0400
@@ -26,6 +26,7 @@
*/

#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/usb.h>
#include <linux/usb/audio.h>

Index: linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/quirks.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/sound/usb/quirks.c 2010-03-29 09:18:21.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/quirks.c 2010-03-29 17:19:07.000000000 -0400
@@ -15,6 +15,7 @@
*/

#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/usb.h>
#include <linux/usb/audio.h>

Index: linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/endpoint.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/sound/usb/endpoint.c 2010-03-29 09:18:21.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/endpoint.c 2010-03-29 17:19:28.000000000 -0400
@@ -16,6 +16,7 @@
*/

#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/usb.h>
#include <linux/usb/audio.h>
#include <linux/usb/audio-v2.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/format.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/sound/usb/format.c 2010-03-29 09:18:21.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/format.c 2010-03-29 17:19:47.000000000 -0400
@@ -16,6 +16,7 @@
*/

#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/usb.h>
#include <linux/usb/audio.h>
#include <linux/usb/audio-v2.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/drivers/hwmon/tmp102.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/drivers/hwmon/tmp102.c 2010-03-29 09:18:24.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/drivers/hwmon/tmp102.c 2010-03-29 17:21:13.000000000 -0400
@@ -20,6 +20,7 @@


#include <linux/module.h>
+#include <linux/slab.h>
#include <linux/init.h>
#include <linux/i2c.h>
#include <linux/hwmon.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/kernel/debug/kdb/kdb_support.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/kernel/debug/kdb/kdb_support.c 2010-03-29 09:18:20.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/kernel/debug/kdb/kdb_support.c 2010-03-29 17:20:52.000000000 -0400
@@ -19,6 +19,7 @@
#include <linux/vmalloc.h>
#include <linux/ptrace.h>
#include <linux/module.h>
+#include <linux/slab.h>
#include <linux/highmem.h>
#include <linux/hardirq.h>
#include <linux/delay.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/sound/soc/codecs/twl6040.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/sound/soc/codecs/twl6040.c 2010-03-29 09:18:21.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/sound/soc/codecs/twl6040.c 2010-03-29 17:20:12.000000000 -0400
@@ -22,6 +22,7 @@
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/delay.h>
#include <linux/pm.h>
#include <linux/i2c.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/drivers/input/misc/pcf8574_keypad.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/drivers/input/misc/pcf8574_keypad.c 2010-03-29 09:18:20.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/drivers/input/misc/pcf8574_keypad.c 2010-03-30 08:17:05.000000000 -0400
@@ -7,6 +7,7 @@
*/

#include <linux/module.h>
+#include <linux/slab.h>
#include <linux/init.h>
#include <linux/input.h>
#include <linux/interrupt.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/drivers/misc/hwlat_detector.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/drivers/misc/hwlat_detector.c 2010-03-29 09:18:20.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/drivers/misc/hwlat_detector.c 2010-03-30 08:17:47.000000000 -0400
@@ -39,6 +39,7 @@
*/

#include <linux/module.h>
+#include <linux/slab.h>
#include <linux/init.h>
#include <linux/ring_buffer.h>
#include <linux/stop_machine.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/drivers/mtd/sm_ftl.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/drivers/mtd/sm_ftl.c 2010-03-29 09:18:22.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/drivers/mtd/sm_ftl.c 2010-03-30 08:17:27.000000000 -0400
@@ -9,6 +9,7 @@

#include <linux/kernel.h>
#include <linux/module.h>
+#include <linux/slab.h>
#include <linux/random.h>
#include <linux/hdreg.h>
#include <linux/kthread.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/pcm.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/sound/usb/pcm.c 2010-03-29 09:18:21.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/pcm.c 2010-03-30 08:16:45.000000000 -0400
@@ -15,6 +15,7 @@
*/

#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/usb.h>
#include <linux/usb/audio.h>
#include <linux/usb/audio-v2.h>
Index: linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/helper.c
===================================================================
--- linux-2.6.34-rc2-mmotm-100324-1448.orig/sound/usb/helper.c 2010-03-29 09:18:21.000000000 -0400
+++ linux-2.6.34-rc2-mmotm-100324-1448/sound/usb/helper.c 2010-03-30 08:24:50.000000000 -0400
@@ -16,6 +16,7 @@
*/

#include <linux/init.h>
+#include <linux/slab.h>
#include <linux/usb.h>

#include "usbaudio.h"


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Tejun Heo on
Hello,

On 03/30/2010 11:30 PM, Lee Schermerhorn wrote:
> I rebased your series atop the mmotm dated 24march to test my "generic
> percpu numa_*_id()" series. This largish patch [3/4] threw a few [13]
> rejects. I'll list them below. You've said that you're going to submit
> this to linux-next where it might not see the same rejects. I built,
> booted and am using the resulting kernel on x86_64.

This series is already in linux-next from next-20100329. I forgot to
run slabh-sweep.py script on new code in linux-next which led to
various build breakages. Stephen fixed the ones which cause build
failures and I later ran the script on linux-next and sent out patches
to subsystem trees. The good news is there was only one build
breakage from mainline code. All else were new code in linux-next.
So, the conversion seems quite comprehensive.

> Building with allyesconfig, I found 15 additional files in the mmotm
> tree that will need an explicit include of slab.h added. I have
> attached a patch that addresses these.
>
> I have rebased my numa_*_id() series atop this mmotm, less the
> percpu.h/percpu-defs.h hack that led you down this path. That kernel
> builds and boots fine. I'm currently testing with and without
> memoryless nodes. So far, this series looks good.

Great, can you please retry mm once it pulls in linux-next from
20100401? That should have most of necessary fixes.

> drivers/hwmon/tmp102.c | 1 +
> drivers/input/misc/ad714x.c | 1 +
> drivers/input/misc/pcf8574_keypad.c | 1 +
> drivers/leds/leds-input.c | 1 +
> drivers/misc/hwlat_detector.c | 1 +
> drivers/mtd/sm_ftl.c | 1 +
> drivers/vbus/bus-proxy.c | 1 +
> kernel/debug/kdb/kdb_support.c | 1 +
> sound/soc/codecs/twl6040.c | 1 +
> sound/usb/endpoint.c | 1 +
> sound/usb/format.c | 1 +
> sound/usb/helper.c | 1 +
> sound/usb/mixer_quirks.c | 1 +
> sound/usb/pcm.c | 1 +
> sound/usb/quirks.c | 1 +
> 15 files changed, 15 insertions(+)

Most of the above are the ones already fixed in linux-next. Can you
please try out next-20100330?

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/