Let's handle the successful call of mod_verify_sig() right after that call,
making the *switch* statement only handle the real errors, and then move
the comment from the first *case* before *switch* itself and the comment
before *default* after it.  Fix the comment style, add article/comma/dash,
spell out "nomem" as "lack of memory" in these comments, while at it...

Suggested-by: Joe Perches <j...@perches.com>
Signed-off-by: Sergey Shtylyov <s.shtyl...@omprussia.ru>

---
Changes in version 2:
- new patch.

 kernel/module.c |   26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

Index: linux/kernel/module.c
===================================================================
--- linux.orig/kernel/module.c
+++ linux/kernel/module.c
@@ -2895,17 +2895,18 @@ static int module_sig_check(struct load_
                /* We truncate the module to discard the signature */
                info->len -= markerlen;
                err = mod_verify_sig(mod, info);
+               if (!err) {
+                       info->sig_ok = true;
+                       return 0;
+               }
        }
 
+       /*
+        * We don't permit modules to be loaded into the trusted kernels
+        * without a valid signature on them, but if we're not enforcing,
+        * certain errors are non-fatal.
+        */
        switch (err) {
-       case 0:
-               info->sig_ok = true;
-               return 0;
-
-               /* We don't permit modules to be loaded into trusted kernels
-                * without a valid signature on them, but if we're not
-                * enforcing, certain errors are non-fatal.
-                */
        case -ENODATA:
                reason = "unsigned module";
                break;
@@ -2916,11 +2917,12 @@ static int module_sig_check(struct load_
                reason = "module with unavailable key";
                break;
 
-               /* All other errors are fatal, including nomem, unparseable
-                * signatures and signature check failures - even if signatures
-                * aren't required.
-                */
        default:
+               /*
+                * All other errors are fatal, including lack of memory,
+                * unparseable signatures, and signature check failures --
+                * even if signatures aren't required.
+                */
                return err;
        }
 

Reply via email to