Re: [PATCH 12/13] module: remove EXPORT_SYMBOL_GPL_FUTURE

2021-02-02 Thread Miroslav Benes
On Tue, 2 Feb 2021, Christoph Hellwig wrote:

> As far as I can tell this has never been used at all, and certainly
> not any time recently.

Right, I've always wondered about this one.
 
> Signed-off-by: Christoph Hellwig 

Reviewed-by: Miroslav Benes 

M


[PATCH 12/13] module: remove EXPORT_SYMBOL_GPL_FUTURE

2021-02-02 Thread Christoph Hellwig
As far as I can tell this has never been used at all, and certainly
not any time recently.

Signed-off-by: Christoph Hellwig 
---
 arch/x86/tools/relocs.c   |  4 ++--
 include/asm-generic/vmlinux.lds.h | 14 --
 include/linux/export.h|  1 -
 include/linux/module.h|  5 -
 kernel/module.c   | 29 ++---
 scripts/mod/modpost.c | 13 +
 scripts/mod/modpost.h |  1 -
 scripts/module.lds.S  |  2 --
 tools/include/linux/export.h  |  1 -
 9 files changed, 5 insertions(+), 65 deletions(-)

diff --git a/arch/x86/tools/relocs.c b/arch/x86/tools/relocs.c
index ce7188cbdae58a..0d210d0e83e241 100644
--- a/arch/x86/tools/relocs.c
+++ b/arch/x86/tools/relocs.c
@@ -61,8 +61,8 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = {
"(__iommu_table|__apicdrivers|__smp_locks)(|_end)|"
"__(start|end)_pci_.*|"
"__(start|end)_builtin_fw|"
-   "__(start|stop)___ksymtab(|_gpl|_unused|_unused_gpl|_gpl_future)|"
-   "__(start|stop)___kcrctab(|_gpl|_unused|_unused_gpl|_gpl_future)|"
+   "__(start|stop)___ksymtab(|_gpl|_unused|_unused_gpl)|"
+   "__(start|stop)___kcrctab(|_gpl|_unused|_unused_gpl)|"
"__(start|stop)___param|"
"__(start|stop)___modver|"
"__(start|stop)___bug_table|"
diff --git a/include/asm-generic/vmlinux.lds.h 
b/include/asm-generic/vmlinux.lds.h
index b2b3d81b1535a5..83243506e68b00 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -495,13 +495,6 @@
__stop___ksymtab_unused_gpl = .;\
}   \
\
-   /* Kernel symbol table: GPL-future-only symbols */  \
-   __ksymtab_gpl_future : AT(ADDR(__ksymtab_gpl_future) - LOAD_OFFSET) { \
-   __start___ksymtab_gpl_future = .;   \
-   KEEP(*(SORT(___ksymtab_gpl_future+*)))  \
-   __stop___ksymtab_gpl_future = .;\
-   }   \
-   \
/* Kernel symbol table: Normal symbols */   \
__kcrctab : AT(ADDR(__kcrctab) - LOAD_OFFSET) { \
__start___kcrctab = .;  \
@@ -530,13 +523,6 @@
__stop___kcrctab_unused_gpl = .;\
}   \
\
-   /* Kernel symbol table: GPL-future-only symbols */  \
-   __kcrctab_gpl_future : AT(ADDR(__kcrctab_gpl_future) - LOAD_OFFSET) { \
-   __start___kcrctab_gpl_future = .;   \
-   KEEP(*(SORT(___kcrctab_gpl_future+*)))  \
-   __stop___kcrctab_gpl_future = .;\
-   }   \
-   \
/* Kernel symbol table: strings */  \
 __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) {
\
*(__ksymtab_strings)\
diff --git a/include/linux/export.h b/include/linux/export.h
index fceb5e85571711..362b64f8d4a7c2 100644
--- a/include/linux/export.h
+++ b/include/linux/export.h
@@ -157,7 +157,6 @@ struct kernel_symbol {
 
 #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
 #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
-#define EXPORT_SYMBOL_GPL_FUTURE(sym)  _EXPORT_SYMBOL(sym, "_gpl_future")
 #define EXPORT_SYMBOL_NS(sym, ns)  __EXPORT_SYMBOL(sym, "", #ns)
 #define EXPORT_SYMBOL_NS_GPL(sym, ns)  __EXPORT_SYMBOL(sym, "_gpl", #ns)
 
diff --git a/include/linux/module.h b/include/linux/module.h
index da0f5966ee80c9..e6e50ee3041238 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -411,11 +411,6 @@ struct module {
 
bool async_probe_requested;
 
-   /* symbols that will be GPL-only in the near future. */
-   const struct kernel_symbol *gpl_future_syms;
-   const s32 *gpl_future_crcs;
-   unsigned int num_gpl_future_syms;
-
/* Exception table */
unsigned int num_exentries;
struct exception_table_entry *extable;
diff --git a/kernel/module.c b/kernel/module.c
index 7a4bce8507b96f..c987e2f42e1ad5 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -408,11 +408,8 @@ extern const struct kernel_symbol __start___ksymtab[];
 extern const struct kernel_symbol __stop___ksymtab[];
 extern const struct kernel_symbol 

[PATCH 12/13] module: remove EXPORT_SYMBOL_GPL_FUTURE

2021-01-28 Thread Christoph Hellwig
As far as I can tell this has never been used at all, and certainly
not any time recently.

Signed-off-by: Christoph Hellwig 
---
 arch/x86/tools/relocs.c   |  4 ++--
 include/asm-generic/vmlinux.lds.h | 14 --
 include/linux/export.h|  1 -
 include/linux/module.h|  5 -
 kernel/module.c   | 29 ++---
 scripts/mod/modpost.c | 13 +
 scripts/mod/modpost.h |  1 -
 scripts/module.lds.S  |  2 --
 tools/include/linux/export.h  |  1 -
 9 files changed, 5 insertions(+), 65 deletions(-)

diff --git a/arch/x86/tools/relocs.c b/arch/x86/tools/relocs.c
index ce7188cbdae58a..0d210d0e83e241 100644
--- a/arch/x86/tools/relocs.c
+++ b/arch/x86/tools/relocs.c
@@ -61,8 +61,8 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = {
"(__iommu_table|__apicdrivers|__smp_locks)(|_end)|"
"__(start|end)_pci_.*|"
"__(start|end)_builtin_fw|"
-   "__(start|stop)___ksymtab(|_gpl|_unused|_unused_gpl|_gpl_future)|"
-   "__(start|stop)___kcrctab(|_gpl|_unused|_unused_gpl|_gpl_future)|"
+   "__(start|stop)___ksymtab(|_gpl|_unused|_unused_gpl)|"
+   "__(start|stop)___kcrctab(|_gpl|_unused|_unused_gpl)|"
"__(start|stop)___param|"
"__(start|stop)___modver|"
"__(start|stop)___bug_table|"
diff --git a/include/asm-generic/vmlinux.lds.h 
b/include/asm-generic/vmlinux.lds.h
index b2b3d81b1535a5..83243506e68b00 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -495,13 +495,6 @@
__stop___ksymtab_unused_gpl = .;\
}   \
\
-   /* Kernel symbol table: GPL-future-only symbols */  \
-   __ksymtab_gpl_future : AT(ADDR(__ksymtab_gpl_future) - LOAD_OFFSET) { \
-   __start___ksymtab_gpl_future = .;   \
-   KEEP(*(SORT(___ksymtab_gpl_future+*)))  \
-   __stop___ksymtab_gpl_future = .;\
-   }   \
-   \
/* Kernel symbol table: Normal symbols */   \
__kcrctab : AT(ADDR(__kcrctab) - LOAD_OFFSET) { \
__start___kcrctab = .;  \
@@ -530,13 +523,6 @@
__stop___kcrctab_unused_gpl = .;\
}   \
\
-   /* Kernel symbol table: GPL-future-only symbols */  \
-   __kcrctab_gpl_future : AT(ADDR(__kcrctab_gpl_future) - LOAD_OFFSET) { \
-   __start___kcrctab_gpl_future = .;   \
-   KEEP(*(SORT(___kcrctab_gpl_future+*)))  \
-   __stop___kcrctab_gpl_future = .;\
-   }   \
-   \
/* Kernel symbol table: strings */  \
 __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) {
\
*(__ksymtab_strings)\
diff --git a/include/linux/export.h b/include/linux/export.h
index fceb5e85571711..362b64f8d4a7c2 100644
--- a/include/linux/export.h
+++ b/include/linux/export.h
@@ -157,7 +157,6 @@ struct kernel_symbol {
 
 #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
 #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
-#define EXPORT_SYMBOL_GPL_FUTURE(sym)  _EXPORT_SYMBOL(sym, "_gpl_future")
 #define EXPORT_SYMBOL_NS(sym, ns)  __EXPORT_SYMBOL(sym, "", #ns)
 #define EXPORT_SYMBOL_NS_GPL(sym, ns)  __EXPORT_SYMBOL(sym, "_gpl", #ns)
 
diff --git a/include/linux/module.h b/include/linux/module.h
index da0f5966ee80c9..e6e50ee3041238 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -411,11 +411,6 @@ struct module {
 
bool async_probe_requested;
 
-   /* symbols that will be GPL-only in the near future. */
-   const struct kernel_symbol *gpl_future_syms;
-   const s32 *gpl_future_crcs;
-   unsigned int num_gpl_future_syms;
-
/* Exception table */
unsigned int num_exentries;
struct exception_table_entry *extable;
diff --git a/kernel/module.c b/kernel/module.c
index 576c780e79c799..492b6fa5a662c8 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -413,11 +413,8 @@ extern const struct kernel_symbol __start___ksymtab[];
 extern const struct kernel_symbol __stop___ksymtab[];
 extern const struct kernel_symbol 

[PATCH 12/13] module: remove EXPORT_SYMBOL_GPL_FUTURE

2021-01-21 Thread Christoph Hellwig
As far as I can tell this has never been used at all, and certainly
not any time recently.

Signed-off-by: Christoph Hellwig 
---
 arch/x86/tools/relocs.c   |  4 ++--
 include/asm-generic/vmlinux.lds.h | 14 --
 include/linux/export.h|  1 -
 include/linux/module.h|  5 -
 kernel/module.c   | 17 -
 scripts/mod/modpost.c | 13 +
 scripts/mod/modpost.h |  1 -
 scripts/module.lds.S  |  2 --
 tools/include/linux/export.h  |  1 -
 9 files changed, 3 insertions(+), 55 deletions(-)

diff --git a/arch/x86/tools/relocs.c b/arch/x86/tools/relocs.c
index ce7188cbdae58a..0d210d0e83e241 100644
--- a/arch/x86/tools/relocs.c
+++ b/arch/x86/tools/relocs.c
@@ -61,8 +61,8 @@ static const char * const sym_regex_kernel[S_NSYMTYPES] = {
"(__iommu_table|__apicdrivers|__smp_locks)(|_end)|"
"__(start|end)_pci_.*|"
"__(start|end)_builtin_fw|"
-   "__(start|stop)___ksymtab(|_gpl|_unused|_unused_gpl|_gpl_future)|"
-   "__(start|stop)___kcrctab(|_gpl|_unused|_unused_gpl|_gpl_future)|"
+   "__(start|stop)___ksymtab(|_gpl|_unused|_unused_gpl)|"
+   "__(start|stop)___kcrctab(|_gpl|_unused|_unused_gpl)|"
"__(start|stop)___param|"
"__(start|stop)___modver|"
"__(start|stop)___bug_table|"
diff --git a/include/asm-generic/vmlinux.lds.h 
b/include/asm-generic/vmlinux.lds.h
index b2b3d81b1535a5..83243506e68b00 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -495,13 +495,6 @@
__stop___ksymtab_unused_gpl = .;\
}   \
\
-   /* Kernel symbol table: GPL-future-only symbols */  \
-   __ksymtab_gpl_future : AT(ADDR(__ksymtab_gpl_future) - LOAD_OFFSET) { \
-   __start___ksymtab_gpl_future = .;   \
-   KEEP(*(SORT(___ksymtab_gpl_future+*)))  \
-   __stop___ksymtab_gpl_future = .;\
-   }   \
-   \
/* Kernel symbol table: Normal symbols */   \
__kcrctab : AT(ADDR(__kcrctab) - LOAD_OFFSET) { \
__start___kcrctab = .;  \
@@ -530,13 +523,6 @@
__stop___kcrctab_unused_gpl = .;\
}   \
\
-   /* Kernel symbol table: GPL-future-only symbols */  \
-   __kcrctab_gpl_future : AT(ADDR(__kcrctab_gpl_future) - LOAD_OFFSET) { \
-   __start___kcrctab_gpl_future = .;   \
-   KEEP(*(SORT(___kcrctab_gpl_future+*)))  \
-   __stop___kcrctab_gpl_future = .;\
-   }   \
-   \
/* Kernel symbol table: strings */  \
 __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) {
\
*(__ksymtab_strings)\
diff --git a/include/linux/export.h b/include/linux/export.h
index fceb5e85571711..362b64f8d4a7c2 100644
--- a/include/linux/export.h
+++ b/include/linux/export.h
@@ -157,7 +157,6 @@ struct kernel_symbol {
 
 #define EXPORT_SYMBOL(sym) _EXPORT_SYMBOL(sym, "")
 #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
-#define EXPORT_SYMBOL_GPL_FUTURE(sym)  _EXPORT_SYMBOL(sym, "_gpl_future")
 #define EXPORT_SYMBOL_NS(sym, ns)  __EXPORT_SYMBOL(sym, "", #ns)
 #define EXPORT_SYMBOL_NS_GPL(sym, ns)  __EXPORT_SYMBOL(sym, "_gpl", #ns)
 
diff --git a/include/linux/module.h b/include/linux/module.h
index c92c30a285144f..8f4d577d4707c2 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -411,11 +411,6 @@ struct module {
 
bool async_probe_requested;
 
-   /* symbols that will be GPL-only in the near future. */
-   const struct kernel_symbol *gpl_future_syms;
-   const s32 *gpl_future_crcs;
-   unsigned int num_gpl_future_syms;
-
/* Exception table */
unsigned int num_exentries;
struct exception_table_entry *extable;
diff --git a/kernel/module.c b/kernel/module.c
index 7a88b71736ff5c..917fd1b5c95a42 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -413,11 +413,8 @@ extern const struct kernel_symbol __start___ksymtab[];
 extern const struct kernel_symbol __stop___ksymtab[];
 extern const struct kernel_symbol __start___ksymtab_gpl[];