2002-09-29 19:22:23

by Tim Schmielau

[permalink] [raw]
Subject: [PATCH *, testers wanted] remove 614 includes of linux/sched.h

Thanks to ongoing header file cleanups, many files including linux/sched.h
don't need to do so anymore. A patch for 2.5.39 to remove some 600
occurences of
#include <linux/sched.h>
and (hopefully) fix up resulting breakage because of indirect dependencies
can be found at

http://www.physik3.uni-rostock.de/tim/kernel/2.5/sched.h-16.patch.gz

Extensive analysis using ctags and grep has been done, but surely cannot
detect all problems.
So I'd be happy if people compile-tested this for different archs and
configurations and reported problems as well as success to me.

After obtaining sufficient feedback I'll split up the patch and pass it
through maintainers, which however needs to be a three-stage process
due to inherent dependencies.

Tim


2002-10-02 01:35:00

by Luc Van Oostenryck

[permalink] [raw]
Subject: Re: [PATCH *, testers wanted] remove 614 includes of linux/sched.h

Tim Schmielau wrote:
> Thanks to ongoing header file cleanups, many files including linux/sched.h
> don't need to do so anymore. A patch for 2.5.39 to remove some 600
> occurences of
> #include <linux/sched.h>
> and (hopefully) fix up resulting breakage because of indirect dependencies
> can be found at
>
> http://www.physik3.uni-rostock.de/tim/kernel/2.5/sched.h-16.patch.gz
>
> Extensive analysis using ctags and grep has been done, but surely cannot
> detect all problems.
> So I'd be happy if people compile-tested this for different archs and
> configurations and reported problems as well as success to me.
>
> After obtaining sufficient feedback I'll split up the patch and pass it
> through maintainers, which however needs to be a three-stage process
> due to inherent dependencies.
>
> Tim
>

Works for me on 2.5.40 with very few tweaks to pass from 2.5.39 to 2.5.40.
However, to supress all warning I must reverse somes removal:



diff -urP l-2.5.40-sched/drivers/base/interface.c l-2.5.40-sched-1/drivers/base/interface.c
--- l-2.5.40-sched/drivers/base/interface.c Fri Sep 27 23:49:04 2002
+++ l-2.5.40-sched-1/drivers/base/interface.c Wed Oct 2 02:58:49 2002
@@ -8,6 +8,7 @@
#include <linux/device.h>
#include <linux/err.h>
#include <linux/stat.h>
+#include <linux/string.h>

static ssize_t device_read_name(struct device * dev, char * buf, size_t count, loff_t off)
{
diff -urP l-2.5.40-sched/drivers/input/serio/i8042.c l-2.5.40-sched-1/drivers/input/serio/i8042.c
--- l-2.5.40-sched/drivers/input/serio/i8042.c Wed Oct 2 03:16:22 2002
+++ l-2.5.40-sched-1/drivers/input/serio/i8042.c Wed Oct 2 03:01:41 2002
@@ -22,6 +22,7 @@
#include <asm/ptrace.h>
#include <linux/timer.h>
#include <linux/jiffies.h>
+#include <linux/sched.h> /* request/free_irq */

#include "i8042.h"

diff -urP l-2.5.40-sched/fs/ext2/balloc.c l-2.5.40-sched-1/fs/ext2/balloc.c
--- l-2.5.40-sched/fs/ext2/balloc.c Wed Oct 2 03:16:45 2002
+++ l-2.5.40-sched-1/fs/ext2/balloc.c Wed Oct 2 03:07:53 2002
@@ -16,8 +16,10 @@
#include <linux/quotaops.h>
#include <asm/current.h>
#include <linux/capability.h>
+#include <linux/security.h> /* capable() */
#include <linux/task_struct.h>
#include <linux/buffer_head.h>
+#include <linux/sched.h> /* in_group_p() */

/*
* balloc.c contains the blocks allocation and deallocation routines