The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [Patch] Remove useless if in mm/filemap
@ 2006-08-09 12:48 Eric Sesterhenn
  0 siblings, 0 replies; only message in thread
From: Eric Sesterhenn @ 2006-08-09 12:48 UTC (permalink / raw)
  To: linux-kernel

hi,

since the variable copied is size_t, which means it is unsigned,
the copied >= 0 expression is always true. Therefore we can
remove the if. It does not seem that filemap_copy_from_user()
or filemap_copy_from_user_iovec() can ever return negative values,
or any of the functions they call, so this should be safe.
The patch simply removes the if statement and fixes identation.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>

--- linux-2.6.18-rc4/mm/filemap.c.orig	2006-08-09 14:41:54.000000000 +0200
+++ linux-2.6.18-rc4/mm/filemap.c	2006-08-09 14:43:19.000000000 +0200
@@ -2158,24 +2158,21 @@ generic_file_buffered_write(struct kiocb
 			continue;
 		}
 zero_length_segment:
-		if (likely(copied >= 0)) {
-			if (!status)
-				status = copied;
-
-			if (status >= 0) {
-				written += status;
-				count -= status;
-				pos += status;
-				buf += status;
-				if (unlikely(nr_segs > 1)) {
-					filemap_set_next_iovec(&cur_iov,
-							&iov_base, status);
-					if (count)
-						buf = cur_iov->iov_base +
-							iov_base;
-				} else {
-					iov_base += status;
-				}
+		if (!status)
+			status = copied;
+
+		if (status >= 0) {
+			written += status;
+			count -= status;
+			pos += status;
+			buf += status;
+			if (unlikely(nr_segs > 1)) {
+				filemap_set_next_iovec(&cur_iov,
+					&iov_base, status);
+				if (count)
+					buf = cur_iov->iov_base + iov_base;
+			} else {
+				iov_base += status;
 			}
 		}
 		if (unlikely(copied != bytes))



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2006-08-09 12:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-09 12:48 [Patch] Remove useless if in mm/filemap Eric Sesterhenn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox