276: /* OK, it's not open. Create cache info for it */
START -->
277: mtdblk = kmalloc(sizeof(struct mtdblk_dev), GFP_KERNEL);
278: if (!mtdblks)
END -->
279: return -ENOMEM;
Invalid. This is quite an obvious false positive, at least if your
algorithm checks for possible value ranges.
Wait... one is "mtdblk", and the other is "mtdblks". One has an extra 's' on it. Unless there is some kind of aliasing going on, they would appear to be different variables. Naturally, I didn't check the original code, so I could be full of it. :)