On Sat, Jul 19, 2014 at 10:26:54AM -0400, Benjamin Romer wrote:
> +ssize_t show_toolaction(struct device *dev, struct device_attribute *attr,
> +             char *buf)
> +{
> +     if (ControlVm_channel) {
> +             U8 toolAction;
> +
> +             visorchannel_read(ControlVm_channel,
> +                     offsetof(ULTRA_CONTROLVM_CHANNEL_PROTOCOL,
> +                                ToolAction), &toolAction, sizeof(U8));
> +             return scnprintf(buf, PAGE_SIZE, "%u\n", toolAction);
> +     } else
> +             return -ENODEV;
> +}
> +
> +ssize_t store_toolaction(struct device *dev, struct device_attribute *attr,
> +             const char *buf, size_t count)
> +{
> +     if (ControlVm_channel) {
> +             U8 toolAction;
> +
> +             if (sscanf(buf, "%hhu\n", &toolAction) == 1) {
> +                     if (visorchannel_write(ControlVm_channel,
> +                             offsetof(ULTRA_CONTROLVM_CHANNEL_PROTOCOL,
> +                                     ToolAction),
> +                             &toolAction, sizeof(U8)) < 0)
> +                                     return -EFAULT;
> +                             else
> +                                     return count;
> +             } else
> +                     return -EIO;
> +     } else
> +             return -ENODEV;
> +}

How could ControlVm_channel ever be NULL?  Don't check for this, as the
file shouldn't even be here if ControlVm_channel is null.

Same goes for the other sysfs files in this patch series.

thanks,

greg k-h
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to