Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1561941 > unrolled thread
| Started by | Paul Gortmaker <paul.gortmaker@windriver.com> |
|---|---|
| First post | 2017-01-18 17:30 +0100 |
| Last post | 2017-01-19 01:50 +0100 |
| Articles | 5 — 3 participants |
Back to article view | Back to linux.kernel
[PATCH] lib: sort: make it explicitly non-modular Paul Gortmaker <paul.gortmaker@windriver.com> - 2017-01-18 17:30 +0100
Re: [PATCH] lib: sort: make it explicitly non-modular Andy Shevchenko <andy.shevchenko@gmail.com> - 2017-01-18 19:10 +0100
Re: [PATCH] lib: sort: make it explicitly non-modular Paul Gortmaker <paul.gortmaker@windriver.com> - 2017-01-18 20:40 +0100
Re: [PATCH] lib: sort: make it explicitly non-modular Felix Kostenzer <fkostenzer@live.at> - 2017-01-18 21:40 +0100
Re: [PATCH] lib: sort: make it explicitly non-modular Paul Gortmaker <paul.gortmaker@windriver.com> - 2017-01-19 01:50 +0100
| From | Paul Gortmaker <paul.gortmaker@windriver.com> |
|---|---|
| Date | 2017-01-18 17:30 +0100 |
| Subject | [PATCH] lib: sort: make it explicitly non-modular |
| Message-ID | <t11hw-6lt-21@gated-at.bofh.it> |
The Makefile currently controlling compilation of this code is:
lib/Kconfig.debug:config TEST_SORT
lib/Kconfig.debug: bool "Array-based sort test"
and...
lib/Makefile:obj-y += bcd.o div64.o sort.o [...]
...meaning that it currently is not being built as a module by anyone.
Lets remove the couple traces of modular infrastructure use, so that
when reading the code there is no doubt it is builtin-only.
Since module_init translates to device_initcall in the non-modular
case, the init ordering becomes slightly earlier when we change it
to use subsys_initcall as done here. However, since it is a self
contained test, this shouldn't be an issue and subsys_initcall
seems like a better fit for this particular case.
We also delete the MODULE_LICENSE tag since that information is now
contained at the top of the file in the comments.
Cc: Kostenzer Felix <fkostenzer@live.at>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
[since this recently appeared in next via the akpm feed, I'm
fine with this commit being squashed into the original. ]
lib/sort.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/lib/sort.c b/lib/sort.c
index a9b156e7471b..0f2f3adce372 100644
--- a/lib/sort.c
+++ b/lib/sort.c
@@ -1,5 +1,6 @@
/*
* A fast, small, non-recursive O(nlog n) sort for the Linux kernel
+ * License: GPL
*
* Jan 23 2005 Matt Mackall <mpm@selenic.com>
*/
@@ -106,7 +107,7 @@ EXPORT_SYMBOL(sort);
#ifdef CONFIG_TEST_SORT
#include <linux/slab.h>
-#include <linux/module.h>
+#include <linux/init.h>
/* a simple boot-time regression test */
#define TEST_LEN 1000
@@ -143,7 +144,5 @@ static int __init test_sort_init(void)
kfree(a);
return err;
}
-
-module_init(test_sort_init);
-MODULE_LICENSE("GPL");
+subsys_initcall(test_sort_init);
#endif
--
2.11.0
[toc] | [next] | [standalone]
| From | Andy Shevchenko <andy.shevchenko@gmail.com> |
|---|---|
| Date | 2017-01-18 19:10 +0100 |
| Message-ID | <t12Qi-7py-25@gated-at.bofh.it> |
| In reply to | #1561941 |
On Wed, Jan 18, 2017 at 6:20 PM, Paul Gortmaker <paul.gortmaker@windriver.com> wrote: > The Makefile currently controlling compilation of this code is: > > lib/Kconfig.debug:config TEST_SORT > lib/Kconfig.debug: bool "Array-based sort test" > > and... > > lib/Makefile:obj-y += bcd.o div64.o sort.o [...] > > ...meaning that it currently is not being built as a module by anyone. Perhaps allow it to be a module? Besides that perhaps rename to something like test_sort.c ? -- With Best Regards, Andy Shevchenko
[toc] | [prev] | [next] | [standalone]
| From | Paul Gortmaker <paul.gortmaker@windriver.com> |
|---|---|
| Date | 2017-01-18 20:40 +0100 |
| Message-ID | <t14fn-8aj-7@gated-at.bofh.it> |
| In reply to | #1562035 |
[Re: [PATCH] lib: sort: make it explicitly non-modular] On 18/01/2017 (Wed 20:03) Andy Shevchenko wrote: > On Wed, Jan 18, 2017 at 6:20 PM, Paul Gortmaker > <paul.gortmaker@windriver.com> wrote: > > The Makefile currently controlling compilation of this code is: > > > > lib/Kconfig.debug:config TEST_SORT > > lib/Kconfig.debug: bool "Array-based sort test" > > > > and... > > > > lib/Makefile:obj-y += bcd.o div64.o sort.o [...] > > > > ...meaning that it currently is not being built as a module by anyone. > > Perhaps allow it to be a module? If anything, I'd argue the other way and say we shouldn't be further polluting Kconfig space with more super specific options. Instead something more generic like CONFIG_ENABLE_BOOT_SELF_TESTS that at least could be shared. There is no real value in making something a module when it could just as easily be thrown out as __init code/data. > > Besides that perhaps rename to something like test_sort.c ? The sort.c was not added just for the test code ; it already existed for the sort code itself. Paul. -- > > -- > With Best Regards, > Andy Shevchenko
[toc] | [prev] | [next] | [standalone]
| From | Felix Kostenzer <fkostenzer@live.at> |
|---|---|
| Date | 2017-01-18 21:40 +0100 |
| Message-ID | <t15bs-o6-33@gated-at.bofh.it> |
| In reply to | #1562109 |
How about the patch ("lib: move sort self-test into a separate file") [1] ?
regards,
Felix.
[1] https://lkml.org/lkml/2017/1/12/255
[toc] | [prev] | [next] | [standalone]
| From | Paul Gortmaker <paul.gortmaker@windriver.com> |
|---|---|
| Date | 2017-01-19 01:50 +0100 |
| Message-ID | <t195o-2Ne-15@gated-at.bofh.it> |
| In reply to | #1562149 |
On Wed, Jan 18, 2017 at 3:31 PM, Felix Kostenzer <fkostenzer@live.at> wrote:
> How about the patch ("lib: move sort self-test into a separate file") [1] ?
The Kconfig did not change, so forking out the content to a separate
file doesn't change the fact that it uses module.h for a chunk of code
that can't be a module. That still remains to be addressed.
Paul.
--
>
> regards,
> Felix.
>
> [1] https://lkml.org/lkml/2017/1/12/255
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web