|
@@ -842,26 +842,6 @@ out:
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
-static size_t module_flags_taint(struct module *mod, char *buf)
|
|
|
-{
|
|
|
- size_t l = 0;
|
|
|
-
|
|
|
- if (mod->taints & (1 << TAINT_PROPRIETARY_MODULE))
|
|
|
- buf[l++] = 'P';
|
|
|
- if (mod->taints & (1 << TAINT_OOT_MODULE))
|
|
|
- buf[l++] = 'O';
|
|
|
- if (mod->taints & (1 << TAINT_FORCED_MODULE))
|
|
|
- buf[l++] = 'F';
|
|
|
- if (mod->taints & (1 << TAINT_CRAP))
|
|
|
- buf[l++] = 'C';
|
|
|
- /*
|
|
|
- * TAINT_FORCED_RMMOD: could be added.
|
|
|
- * TAINT_UNSAFE_SMP, TAINT_MACHINE_CHECK, TAINT_BAD_PAGE don't
|
|
|
- * apply to modules.
|
|
|
- */
|
|
|
- return l;
|
|
|
-}
|
|
|
-
|
|
|
static inline void print_unload_info(struct seq_file *m, struct module *mod)
|
|
|
{
|
|
|
struct module_use *use;
|
|
@@ -962,6 +942,26 @@ static inline int module_unload_init(struct module *mod)
|
|
|
}
|
|
|
#endif /* CONFIG_MODULE_UNLOAD */
|
|
|
|
|
|
+static size_t module_flags_taint(struct module *mod, char *buf)
|
|
|
+{
|
|
|
+ size_t l = 0;
|
|
|
+
|
|
|
+ if (mod->taints & (1 << TAINT_PROPRIETARY_MODULE))
|
|
|
+ buf[l++] = 'P';
|
|
|
+ if (mod->taints & (1 << TAINT_OOT_MODULE))
|
|
|
+ buf[l++] = 'O';
|
|
|
+ if (mod->taints & (1 << TAINT_FORCED_MODULE))
|
|
|
+ buf[l++] = 'F';
|
|
|
+ if (mod->taints & (1 << TAINT_CRAP))
|
|
|
+ buf[l++] = 'C';
|
|
|
+ /*
|
|
|
+ * TAINT_FORCED_RMMOD: could be added.
|
|
|
+ * TAINT_UNSAFE_SMP, TAINT_MACHINE_CHECK, TAINT_BAD_PAGE don't
|
|
|
+ * apply to modules.
|
|
|
+ */
|
|
|
+ return l;
|
|
|
+}
|
|
|
+
|
|
|
static ssize_t show_initstate(struct module_attribute *mattr,
|
|
|
struct module_kobject *mk, char *buffer)
|
|
|
{
|