CVSROOT:        /cvs/cluster
Module name:    cluster
Branch:         RHEL4
Changes by:     [EMAIL PROTECTED]       2007-08-14 17:05:10

Modified files:
        cman-kernel/src: sm_message.c 

Log message:
        bz 199433: NULL pointer dereference in cman:process_messages for cmirror
        
        Adds a check for a null message, and if it finds one, prints an error
        and ignores it instead of oopsing.  This may help us get further in
        discovering the real problem.  Ignoring the null message will probably
        lead to a hang of some kind, which is better and easier to debug than
        an oopsed machine.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/cman-kernel/src/sm_message.c.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.4.2.3&r2=1.4.2.4

--- cluster/cman-kernel/src/Attic/sm_message.c  2006/12/01 20:40:00     1.4.2.3
+++ cluster/cman-kernel/src/Attic/sm_message.c  2007/08/14 17:05:10     1.4.2.4
@@ -726,6 +726,14 @@
 
                if (!re)
                        break;
+
+               if (!re->msg) {
+                       log_print("process_messages: NULL msg re %p len %d "
+                                 "nodeid %d", re, re->len, re->nodeid);
+                       kfree(re);
+                       continue;
+               }
+
                process_message(re->msg, re->nodeid);
                kfree(re->msg);
                kfree(re);

Reply via email to