linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [2.6 patch] remove four superfluous BUG's in ReiserFS
@ 2003-07-16 22:57 Adrian Bunk
  0 siblings, 0 replies; 2+ messages in thread
From: Adrian Bunk @ 2003-07-16 22:57 UTC (permalink / raw)
  To: reiserfs-list; +Cc: linux-kernel, Randy Hron, trivial

The trivial patch below by Randy Hron still applies agains 2.6.0-test1.

Please apply
Adrian


----- Forwarded message from rwhron@earthlink.net -----

Date:	Tue, 15 Apr 2003 10:30:24 -0400
From: rwhron@earthlink.net
To: linux-kernel@vger.kernel.org,
    reiserfs-list@namesys.com
Subject: Re: BUGed to death

The patch below eliminates 4 BUG() calls that clearly 
cannot happen based on the context.

--- linux-2.5.67-mm2/fs/reiserfs/hashes.c.orig	2003-04-15 10:11:44.000000000 -0400
+++ linux-2.5.67-mm2/fs/reiserfs/hashes.c	2003-04-15 10:13:43.000000000 -0400
@@ -90,10 +90,6 @@
 
 	if (len >= 12)
 	{
-	    	//assert(len < 16);
-		if (len >= 16)
-		    BUG();
-
 		a = (u32)msg[ 0]      |
 		    (u32)msg[ 1] << 8 |
 		    (u32)msg[ 2] << 16|
@@ -116,9 +112,6 @@
 	}
 	else if (len >= 8)
 	{
-	    	//assert(len < 12);
-		if (len >= 12)
-		    BUG();
 		a = (u32)msg[ 0]      |
 		    (u32)msg[ 1] << 8 |
 		    (u32)msg[ 2] << 16|
@@ -137,9 +130,6 @@
 	}
 	else if (len >= 4)
 	{
-	    	//assert(len < 8);
-		if (len >= 8)
-		    BUG();
 		a = (u32)msg[ 0]      |
 		    (u32)msg[ 1] << 8 |
 		    (u32)msg[ 2] << 16|
@@ -154,9 +144,6 @@
 	}
 	else
 	{
-	    	//assert(len < 4);
-		if (len >= 4)
-		    BUG();
 		a = b = c = d = pad;
 		for(i = 0; i < len; i++)
 		{
-- 
Randy Hron
http://home.earthlink.net/~rwhron/kernel/bigbox.html

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

----- End forwarded message -----


^ permalink raw reply	[flat|nested] 2+ messages in thread
* Re: [2.6 patch] remove four superfluous BUG's in ReiserFS
@ 2003-07-23 23:11 rwhron
  0 siblings, 0 replies; 2+ messages in thread
From: rwhron @ 2003-07-23 23:11 UTC (permalink / raw)
  To: bunk, reiserfs-list; +Cc: linux-kernel, trivial


The patch is a cleanup.  It saves 85 bytes on x86.

size hashes.o*
text    data     bss     dec     hex filename
1333      16       0    1349     545 hashes.o
1248      16       0    1264     4f0 hashes.o.new

I tested the patch on uniprocessor x86 on filesystems
created with:

yes  "y" | mkreiserfs --format 3.6 -h tea /dev/hdc1
mount -t reiserfs -o defaults,noatime,notail /dev/hdc1 /fs1

The keyed_hash function has 20 less instructions on x86,
but performance improvement is very small.

The default hash is r5, so in the common case, the patch
doesn't do anything except save a few bytes.

Time to run "dbench-2.0 32" 4x and "dbench-2.0 64" 5x.
2.6.0-test1-ac2-r	8560 seconds  (patched)
2.6.0-test1-ac2-t	8615 seconds

The patched version is about .5% faster.

Oddly, the 3rd dbench 32 run on the unpatched version had 2
dbench processes that stayed Sleeping.  Killing the
dbench processes let everything continue.  Because of that
one skewed run,  I deleted the 3rd dbench time from the
"seconds" above for both kernels.

bonnie++-1.03a didn't have much different between
patched and unpatched except for sequential block i/o.

                                 Sequential Output
                                 ------Block------
Kernel                     Size  MB/sec  %CPU   Eff
reiserfs-2.6.0-test1-ac2-r  1024  19.22  75.0 25.63  (patched)
reiserfs-2.6.0-test1-ac2-t  1024  18.18  70.0 25.97

tiobench-0.3.3 improvement with the patch was also small.

-- 
Randy Hron
http://home.earthlink.net/~rwhron/kernel/bigbox.html


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-07-23 22:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-07-16 22:57 [2.6 patch] remove four superfluous BUG's in ReiserFS Adrian Bunk
2003-07-23 23:11 rwhron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).