qede: Add support for ethtool private flags
[cascardo/linux.git] / drivers / misc / lkdtm.c
index 5f1a36b..0a5cbbe 100644 (file)
@@ -458,8 +458,10 @@ static void lkdtm_do_action(enum ctype which)
                        break;
 
                val = kmalloc(len, GFP_KERNEL);
-               if (!val)
+               if (!val) {
+                       kfree(base);
                        break;
+               }
 
                *val = 0x12345678;
                base[offset] = *val;
@@ -498,14 +500,17 @@ static void lkdtm_do_action(enum ctype which)
        }
        case CT_READ_BUDDY_AFTER_FREE: {
                unsigned long p = __get_free_page(GFP_KERNEL);
-               int saw, *val = kmalloc(1024, GFP_KERNEL);
+               int saw, *val;
                int *base;
 
                if (!p)
                        break;
 
-               if (!val)
+               val = kmalloc(1024, GFP_KERNEL);
+               if (!val) {
+                       free_page(p);
                        break;
+               }
 
                base = (int *)p;