From: Clark Williams <williams@redhat.com>
To: Steven Rostedt <srostedt@redhat.com>,
Peter Zijlstra <pzijlstr@redhat.com>
Cc: LKML <linux-kernel@vger.kernel.org>
Subject: [PATCH] header fix for 2.6.23-rt3
Date: Thu, 25 Oct 2007 11:51:32 -0500 [thread overview]
Message-ID: <4720C994.9060108@redhat.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 631 bytes --]
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Steven/Peter,
There's a circular include problem with sched.h -> aio.h -> workqueues.h that
manifests in a couple of modules (net/rfkill/rfkill.c and drivers/hwmon/applesmc.c).
The attached patch factors out the priority #defines into <linux/sched_prio.h> which
is then included by <linux/sched.h> and <linux/workqueues.h>.
Clark
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
iD8DBQFHIMmTHyuj/+TTEp0RAj7uAJ95P4Pw44UC4iT2hhBy1D8K2JrfxQCdFax1
3Zsfku5WEMILcRxZCalkxe4=
=rc5L
-----END PGP SIGNATURE-----
[-- Attachment #2: sched_prio.patch --]
[-- Type: text/x-patch, Size: 2815 bytes --]
factor out priorities for workqueue.h and sched.h
From: Clark Williams <williams@redhat.com>
This fixes a circular dependency between sched.h and workqueue.h by factoring out the common
defines to a new header which is included by both
Signed-off-by: Clark Williams <williams@redhat.com>
---
include/linux/sched.h | 19 +------------------
include/linux/sched_prio.h | 23 +++++++++++++++++++++++
include/linux/workqueue.h | 1 +
3 files changed, 25 insertions(+), 18 deletions(-)
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 42deb55..b7ab7ca 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -1428,24 +1428,7 @@ struct task_struct {
# define set_printk_might_sleep(x) do { } while(0)
#endif
-/*
- * Priority of a process goes from 0..MAX_PRIO-1, valid RT
- * priority is 0..MAX_RT_PRIO-1, and SCHED_NORMAL/SCHED_BATCH
- * tasks are in the range MAX_RT_PRIO..MAX_PRIO-1. Priority
- * values are inverted: lower p->prio value means higher priority.
- *
- * The MAX_USER_RT_PRIO value allows the actual maximum
- * RT priority to be separate from the value exported to
- * user-space. This allows kernel threads to set their
- * priority to a value higher than any user task. Note:
- * MAX_RT_PRIO must not be smaller than MAX_USER_RT_PRIO.
- */
-
-#define MAX_USER_RT_PRIO 100
-#define MAX_RT_PRIO MAX_USER_RT_PRIO
-
-#define MAX_PRIO (MAX_RT_PRIO + 40)
-#define DEFAULT_PRIO (MAX_RT_PRIO + 20)
+#include <linux/sched_prio.h>
static inline int rt_prio(int prio)
{
diff --git a/include/linux/sched_prio.h b/include/linux/sched_prio.h
new file mode 100644
index 0000000..ec5114a
--- /dev/null
+++ b/include/linux/sched_prio.h
@@ -0,0 +1,23 @@
+#ifndef __SCHED_PRIO_H
+#define __SCHED_PRIO_H
+
+/*
+ * Priority of a process goes from 0..MAX_PRIO-1, valid RT
+ * priority is 0..MAX_RT_PRIO-1, and SCHED_NORMAL/SCHED_BATCH
+ * tasks are in the range MAX_RT_PRIO..MAX_PRIO-1. Priority
+ * values are inverted: lower p->prio value means higher priority.
+ *
+ * The MAX_USER_RT_PRIO value allows the actual maximum
+ * RT priority to be separate from the value exported to
+ * user-space. This allows kernel threads to set their
+ * priority to a value higher than any user task. Note:
+ * MAX_RT_PRIO must not be smaller than MAX_USER_RT_PRIO.
+ */
+
+#define MAX_USER_RT_PRIO 100
+#define MAX_RT_PRIO MAX_USER_RT_PRIO
+
+#define MAX_PRIO (MAX_RT_PRIO + 40)
+#define DEFAULT_PRIO (MAX_RT_PRIO + 20)
+
+#endif
diff --git a/include/linux/workqueue.h b/include/linux/workqueue.h
index fbcbec6..4ea6292 100644
--- a/include/linux/workqueue.h
+++ b/include/linux/workqueue.h
@@ -9,6 +9,7 @@
#include <linux/linkage.h>
#include <linux/bitops.h>
#include <linux/plist.h>
+#include <linux/sched_prio.h>
#include <asm/atomic.h>
struct workqueue_struct;
reply other threads:[~2007-10-25 16:51 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4720C994.9060108@redhat.com \
--to=williams@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=pzijlstr@redhat.com \
--cc=srostedt@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.