ddrfreq:fix bug and add check vzalloc
authorcym <cym@rock-chips.com>
Tue, 8 Oct 2013 07:02:19 +0000 (15:02 +0800)
committercym <cym@rock-chips.com>
Tue, 8 Oct 2013 07:02:19 +0000 (15:02 +0800)
arch/arm/plat-rk/ddr_freq.c

index 0ae0b7d16f20a993eef078026ad30cf4334b6e20..c105e457c2bcf17fd12ea4953b613aa265b036bb 100755 (executable)
@@ -300,9 +300,14 @@ static ssize_t video_state_write(struct file *file, const char __user *buffer,
        uint32_t v_width=0,v_height=0,v_sync=0;
        cookie_pot = buf;
 
-       if (count < 1)
+       if(!buf)
+               return -ENOMEM;
+
+       if (count < 1){
                vfree(buf);
-               return count;
+               return -EPERM;
+       }
+
        if (copy_from_user(cookie_pot, buffer, count)) {
                vfree(buf);
                return -EFAULT;