Staging: add TAINT_CRAP flag to drivers/staging modules
authorGreg Kroah-Hartman <gregkh@suse.de>
Wed, 24 Sep 2008 21:46:44 +0000 (14:46 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 10 Oct 2008 22:31:06 +0000 (15:31 -0700)
We need to add a flag for all code that is in the drivers/staging/
directory to prevent all other kernel developers from worrying about
issues here, and to notify users that the drivers might not be as good
as they are normally used to.

Based on code from Andreas Gruenbacher and Jeff Mahoney to provide a
TAINT flag for the support level of a kernel module in the Novell
enterprise kernel release.

This is the code that actually modifies the modules, adding the flag to
any files in the drivers/staging directory.

Cc: Andreas Gruenbacher <agruen@suse.de>
Cc: Jeff Mahoney <jeffm@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
scripts/mod/modpost.c

index 8e0de6a..8892161 100644 (file)
@@ -1726,6 +1726,14 @@ static void add_header(struct buffer *b, struct module *mod)
        buf_printf(b, "};\n");
 }
 
+void add_staging_flag(struct buffer *b, const char *name)
+{
+       static const char *staging_dir = "drivers/staging";
+
+       if (strncmp(staging_dir, name, strlen(staging_dir)) == 0)
+               buf_printf(b, "\nMODULE_INFO(staging, \"Y\");\n");
+}
+
 /**
  * Record CRCs for unresolved symbols
  **/
@@ -2135,6 +2143,7 @@ int main(int argc, char **argv)
                buf.pos = 0;
 
                add_header(&buf, mod);
+               add_staging_flag(&buf, mod->name);
                err |= add_versions(&buf, mod);
                add_depends(&buf, mod, modules);
                add_moddevtable(&buf, mod);