Do not initialize the 'ret' variable, but explicitly set in in each
code path, so that an forgotten assignment in some code path would
lead to an 'uninitialized variable' warning at compile time.
static long vpu_ioctl(struct file *filp, u_int cmd,
u_long arg)
{
static long vpu_ioctl(struct file *filp, u_int cmd,
u_long arg)
{
struct vpu_user_data *user_data = filp->private_data;
struct vpu_priv *vpu_data = user_data->vpu_data;
struct vpu_user_data *user_data = filp->private_data;
struct vpu_priv *vpu_data = user_data->vpu_data;
kfree(rec);
mutex_unlock(&vpu_data->lock);
kfree(rec);
mutex_unlock(&vpu_data->lock);
break;
}
case VPU_IOC_WAIT4INT:
break;
}
case VPU_IOC_WAIT4INT:
dev_warn(vpu_dev, "VPU interrupt received.\n");
ret = -ERESTARTSYS;
} else {
dev_warn(vpu_dev, "VPU interrupt received.\n");
ret = -ERESTARTSYS;
} else {
break;
case VPU_IOC_REG_DUMP:
case VPU_IOC_PHYMEM_DUMP:
break;
case VPU_IOC_REG_DUMP:
case VPU_IOC_PHYMEM_DUMP:
break;
case VPU_IOC_PHYMEM_CHECK:
{
break;
case VPU_IOC_PHYMEM_CHECK:
{
}
default:
dev_err(vpu_dev, "No such IOCTL, cmd is %d\n", cmd);
}
default:
dev_err(vpu_dev, "No such IOCTL, cmd is %d\n", cmd);