module/*.ko: prune .data, global .rodata

Evaluated every variable that lives in .data (and globals in .rodata)
in the kernel modules, and constified/eliminated/localised them
appropriately. This means that all read-only data is now actually
read-only data, and, if possible, at file scope. A lot of previously-
global-symbols became inlinable (and inlined!) constants. Probably
not in a big Wowee Performance Moment, but hey.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>
Closes #12899
This commit is contained in:
наб
2022-01-15 00:37:55 +01:00
committed by GitHub
parent 7adc190098
commit 18168da727
147 changed files with 781 additions and 876 deletions
+9 -9
View File
@@ -52,7 +52,7 @@ nv_free_spl(nv_alloc_t *nva, void *buf, size_t size)
kmem_free(buf, size);
}
const nv_alloc_ops_t spl_sleep_ops_def = {
static const nv_alloc_ops_t spl_sleep_ops_def = {
.nv_ao_init = NULL,
.nv_ao_fini = NULL,
.nv_ao_alloc = nv_alloc_sleep_spl,
@@ -60,7 +60,7 @@ const nv_alloc_ops_t spl_sleep_ops_def = {
.nv_ao_reset = NULL
};
const nv_alloc_ops_t spl_pushpage_ops_def = {
static const nv_alloc_ops_t spl_pushpage_ops_def = {
.nv_ao_init = NULL,
.nv_ao_fini = NULL,
.nv_ao_alloc = nv_alloc_pushpage_spl,
@@ -68,7 +68,7 @@ const nv_alloc_ops_t spl_pushpage_ops_def = {
.nv_ao_reset = NULL
};
const nv_alloc_ops_t spl_nosleep_ops_def = {
static const nv_alloc_ops_t spl_nosleep_ops_def = {
.nv_ao_init = NULL,
.nv_ao_fini = NULL,
.nv_ao_alloc = nv_alloc_nosleep_spl,
@@ -76,21 +76,21 @@ const nv_alloc_ops_t spl_nosleep_ops_def = {
.nv_ao_reset = NULL
};
nv_alloc_t nv_alloc_sleep_def = {
static nv_alloc_t nv_alloc_sleep_def = {
&spl_sleep_ops_def,
NULL
};
nv_alloc_t nv_alloc_pushpage_def = {
static nv_alloc_t nv_alloc_pushpage_def = {
&spl_pushpage_ops_def,
NULL
};
nv_alloc_t nv_alloc_nosleep_def = {
static nv_alloc_t nv_alloc_nosleep_def = {
&spl_nosleep_ops_def,
NULL
};
nv_alloc_t *nv_alloc_sleep = &nv_alloc_sleep_def;
nv_alloc_t *nv_alloc_pushpage = &nv_alloc_pushpage_def;
nv_alloc_t *nv_alloc_nosleep = &nv_alloc_nosleep_def;
nv_alloc_t *const nv_alloc_sleep = &nv_alloc_sleep_def;
nv_alloc_t *const nv_alloc_pushpage = &nv_alloc_pushpage_def;
nv_alloc_t *const nv_alloc_nosleep = &nv_alloc_nosleep_def;