Author: mjg
Date: Wed Nov 25 22:53:21 2020
New Revision: 368039
URL: https://svnweb.freebsd.org/changeset/base/368039

Log:
  pipe: follow up cleanup to previous
  
  The commited patch was incomplete.
  
  - add back missing goto retry, noted by jhb
  - 'if (error)'  -> 'if (error != 0)'
  - consistently do:
  
  if (error != 0)
      break;
  continue;
  
  instead of:
  
  if (error != 0)
      break;
  else
      continue;
  
  This adds some 'continue' uses which are not needed, but line up with the
  rest of pipe_write.

Modified:
  head/sys/kern/sys_pipe.c

Modified: head/sys/kern/sys_pipe.c
==============================================================================
--- head/sys/kern/sys_pipe.c    Wed Nov 25 21:41:23 2020        (r368038)
+++ head/sys/kern/sys_pipe.c    Wed Nov 25 22:53:21 2020        (r368039)
@@ -994,8 +994,9 @@ retry:
                error = msleep(wpipe, PIPE_MTX(wpipe),
                    PRIBIO | PCATCH, "pipdww", 0);
                pipelock(wpipe, 0);
-               if (error)
+               if (error != 0)
                        goto error1;
+               goto retry;
        }
        if (wpipe->pipe_buffer.cnt > 0) {
                if (wpipe->pipe_state & PIPE_WANTR) {
@@ -1008,10 +1009,9 @@ retry:
                error = msleep(wpipe, PIPE_MTX(wpipe),
                    PRIBIO | PCATCH, "pipdwc", 0);
                pipelock(wpipe, 0);
-               if (error)
+               if (error != 0)
                        goto error1;
-               else
-                       goto retry;
+               goto retry;
        }
 
        error = pipe_build_write_buffer(wpipe, uio);
@@ -1142,7 +1142,7 @@ pipe_write(struct file *fp, struct uio *uio, struct uc
                    wpipe->pipe_buffer.size >= PIPE_MINDIRECT &&
                    (fp->f_flag & FNONBLOCK) == 0) {
                        error = pipe_direct_write(wpipe, uio);
-                       if (error)
+                       if (error != 0)
                                break;
                        continue;
                }
@@ -1166,10 +1166,9 @@ pipe_write(struct file *fp, struct uio *uio, struct uc
                        error = msleep(wpipe, PIPE_MTX(rpipe), PRIBIO | PCATCH,
                            "pipbww", 0);
                        pipelock(wpipe, 0);
-                       if (error)
+                       if (error != 0)
                                break;
-                       else
-                               continue;
+                       continue;
                }
 
                space = wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt;
@@ -1243,6 +1242,7 @@ pipe_write(struct file *fp, struct uio *uio, struct uc
                        }
                        if (error != 0)
                                break;
+                       continue;
                } else {
                        /*
                         * If the "read-side" has been blocked, wake it up now.
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to