From: "Luis R. Rodriguez" <mcgrof@do-not-panic.com>
To: backports@vger.kernel.org
Cc: ben@decadent.org.uk, noelamac@gmail.com,
linux-kernel@vger.kernel.org, rusty@rustcorp.com.au,
andi@firstfloor.org,
"Luis R. Rodriguez" <mcgrof@do-not-panic.com>
Subject: [RFC 01/30] compat: add LINUX_BACKPORT() for prefixing symbols
Date: Wed, 20 Mar 2013 02:22:26 -0700 [thread overview]
Message-ID: <1363771375-31715-2-git-send-email-mcgrof@do-not-panic.com> (raw)
In-Reply-To: <1363771375-31715-1-git-send-email-mcgrof@do-not-panic.com>
From: "Luis R. Rodriguez" <mcgrof@do-not-panic.com>
Ben Hutchings notes that "compat_" is already taken as a
prefix for symbols and while this is only slightly true
in practice its best we avoid any future issues.
Others in the past have noted issues with symbols exported
by backporting effort to conflict with other symbols that
might be preferred by the running kernel. In the worst
case scenerio we'd have the same subsystems with two eras
with two sets of drivers using a subystem from an era each.
This patch doesn't address that but tries to address the
namespace conflict by compat itself. The best alternative I
was hoping for was to use core module symbol namespaces but
after reviewing that effort introduced in 2007
by Andi Kleen [0] I see in the end Rusty Russell nack'd
these patches [1] so we're left with dealing with symbol
renaming.
Define LINUX_BACKPORT() to be used to allow us to rename
symbols with a backport_ prefix. The the cleanest, but
its a start. It isn't clean but its something, I welcome
other ideas.
[0] http://thread.gmane.org/gmane.linux.network/78674
[1] http://article.gmane.org/gmane.linux.kernel/606885
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
---
include/linux/compat-2.6.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/linux/compat-2.6.h b/include/linux/compat-2.6.h
index 68e95d5..d1d24d0 100644
--- a/include/linux/compat-2.6.h
+++ b/include/linux/compat-2.6.h
@@ -3,6 +3,8 @@
#ifndef __ASSEMBLY__
+#define LINUX_BACKPORT(__sym) backport_ ##__sym
+
#include <linux/version.h>
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0))
#include <linux/kconfig.h>
--
1.7.10.4
next prev parent reply other threads:[~2013-03-20 9:23 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-20 9:22 [RFC 00/30] compat: deal with kernel backport namespace Luis R. Rodriguez
2013-03-20 9:22 ` Luis R. Rodriguez [this message]
2013-03-20 9:22 ` [RFC 02/30] compat: embrace LINUX_BACKPORT() for v2.6.23 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 03/30] compat: embrace LINUX_BACKPORT() for v2.6.24 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 04/30] compat: embrace LINUX_BACKPORT() for v2.6.25 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 05/30] compat: embrace LINUX_BACKPORT() for v2.6.26 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 06/30] compat: embrace LINUX_BACKPORT() for v2.6.27 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 07/30] compat: embrace LINUX_BACKPORT() for v2.6.28 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 08/30] compat: embrace LINUX_BACKPORT() for v2.6.29 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 09/30] compat: embrace LINUX_BACKPORT() for v2.6.31 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 10/30] compat: embrace LINUX_BACKPORT() for v2.6.32 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 11/30] compat: embrace LINUX_BACKPORT() for v2.6.33 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 12/30] compat: embrace LINUX_BACKPORT() for v2.6.34 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 13/30] compat: embrace LINUX_BACKPORT() for v2.6.35 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 14/30] compat: embrace LINUX_BACKPORT() for v2.6.36 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 15/30] compat: embrace LINUX_BACKPORT() for v2.6.37 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 16/30] compat: embrace LINUX_BACKPORT() for v2.6.38 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 17/30] compat: embrace LINUX_BACKPORT() for v2.6.39 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 18/30] compat: embrace LINUX_BACKPORT() for v3.0 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 19/30] compat: embrace LINUX_BACKPORT() for v3.1 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 20/30] compat: embrace LINUX_BACKPORT() for v3.2 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 21/30] compat: embrace LINUX_BACKPORT() for v3.3 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 22/30] compat: embrace LINUX_BACKPORT() for v3.4 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 23/30] compat: embrace LINUX_BACKPORT() for v3.7 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 24/30] compat: embrace LINUX_BACKPORT() for v3.8 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 25/30] compat: embrace LINUX_BACKPORT() for cordic Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 26/30] compat: embrace LINUX_BACKPORT() for crc8 Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 27/30] compat: embrace LINUX_BACKPORT() for kfifo Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 28/30] compat: embrace LINUX_BACKPORT() for pm_qos_params Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 29/30] compat: embrace LINUX_BACKPORT() for uidgid Luis R. Rodriguez
2013-03-20 9:22 ` [RFC 30/30] compat: use backport_ prefix for main compat module calls Luis R. Rodriguez
2013-03-21 1:51 ` [RFC 00/30] compat: deal with kernel backport namespace Luis R. Rodriguez
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=1363771375-31715-2-git-send-email-mcgrof@do-not-panic.com \
--to=mcgrof@do-not-panic.com \
--cc=andi@firstfloor.org \
--cc=backports@vger.kernel.org \
--cc=ben@decadent.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=noelamac@gmail.com \
--cc=rusty@rustcorp.com.au \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome