patch-2.4.0-test5 linux/drivers/block/xor.c

Next file: linux/drivers/cdrom/aztcd.c
Previous file: linux/drivers/block/raid5.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test4/linux/drivers/block/xor.c linux/drivers/block/xor.c
@@ -1827,6 +1827,8 @@
 
 void calibrate_xor_block(void)
 {
+	if (xor_block)
+		return;
 	memset(&b1,0,sizeof(b1));
 	b2 = b1;
 
@@ -1885,6 +1887,8 @@
 
 void calibrate_xor_block(void)
 {
+	if (xor_block)
+		return;
 	printk(KERN_INFO "raid5: using high-speed VIS checksum routine\n");
 	xor_block = xor_block_VIS;
 }
@@ -1892,3 +1896,12 @@
 #endif /* __sparc_v9__ */
 
 MD_EXPORT_SYMBOL(xor_block);
+MD_EXPORT_SYMBOL(calibrate_xor_block);
+
+#ifdef MODULE
+int init_module(void)
+{
+	calibrate_xor_block();
+	return 0;
+}
+#endif

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)