drm/rockchip: vop: enable iommu when we actually need it
[firefly-linux-kernel-4.4.55.git] / fs / sysfs / file.c
index 6c95628ea377dc0d4c07cbb7979f2a280dd3e6a8..f35523d4fa3a6d657260e7b04d5273db2dcd53b1 100644 (file)
@@ -108,6 +108,7 @@ static ssize_t sysfs_kf_read(struct kernfs_open_file *of, char *buf,
 {
        const struct sysfs_ops *ops = sysfs_file_ops(of->kn);
        struct kobject *kobj = of->kn->parent->priv;
+       size_t len;
 
        /*
         * If buf != of->prealloc_buf, we don't know how
@@ -115,7 +116,8 @@ static ssize_t sysfs_kf_read(struct kernfs_open_file *of, char *buf,
         */
        if (pos || WARN_ON_ONCE(buf != of->prealloc_buf))
                return 0;
-       return ops->show(kobj, of->kn->priv, buf);
+       len = ops->show(kobj, of->kn->priv, buf);
+       return min(count, len);
 }
 
 /* kernfs write callback for regular sysfs files */