Re: use persistent allocation for cursor blinking.

Alan Cox
2006-08-01T21:58:39Z

Ar Maw, 2006-08-01 am 14:56 -0400, ysgrifennodd Dave Jones:
> + static u8 *src=NULL;
> + static int allocsize=0;

s/=/ = /

> + if (dsize + sizeof(struct fb_image) != allocsize) {
> + if (src != NULL)
> + kfree(src);
> + allocsize = dsize + sizeof(struct fb_image);
> +
> + src = kmalloc(allocsize, GFP_ATOMIC);
> + if (!src)
> + return -ENOMEM;
> + }

If the allocation fails we have allocsize = "somesize" and src = NULL.
The next time we enter the if is false and we fall through and Oops

Either check src in the if or set allocsize to something impossible (eg
0) on the error path.

NAK