tile-srom.c driver: minor code cleanup
Chris Metcalf [Fri, 30 Mar 2012 23:03:04 +0000 (19:03 -0400)]
Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>

drivers/char/tile-srom.c

index 4dc0194..3b22a60 100644 (file)
@@ -194,17 +194,17 @@ static ssize_t srom_read(struct file *filp, char __user *buf,
 
                hv_retval = _srom_read(srom->hv_devhdl, kernbuf,
                                       *f_pos, bytes_this_pass);
-               if (hv_retval > 0) {
-                       if (copy_to_user(buf, kernbuf, hv_retval) != 0) {
-                               retval = -EFAULT;
-                               break;
-                       }
-               } else if (hv_retval <= 0) {
+               if (hv_retval <= 0) {
                        if (retval == 0)
                                retval = hv_retval;
                        break;
                }
 
+               if (copy_to_user(buf, kernbuf, hv_retval) != 0) {
+                       retval = -EFAULT;
+                       break;
+               }
+
                retval += hv_retval;
                *f_pos += hv_retval;
                buf += hv_retval;