20 #include <linux/module.h>
33 unsigned long *
p1, *p2, *p3, *p4;
35 p1 = (
unsigned long *) srcs[0];
37 active_template->
do_2(bytes, dest, p1);
41 p2 = (
unsigned long *) srcs[1];
43 active_template->
do_3(bytes, dest, p1, p2);
47 p3 = (
unsigned long *) srcs[2];
49 active_template->
do_4(bytes, dest, p1, p2, p3);
53 p4 = (
unsigned long *) srcs[3];
54 active_template->
do_5(bytes, dest, p1, p2, p3, p4);
61 #define BENCH_SIZE (PAGE_SIZE)
70 tmpl->
next = template_list;
81 for (i = 0; i < 5; i++) {
103 speed / 1000, speed % 1000);
107 calibrate_xor_blocks(
void)
131 #ifdef XOR_SELECT_TEMPLATE
135 #define xor_speed(templ) do_xor_speed((templ), b1, b2)
139 "checksumming function:\n");
145 fastest = template_list;
146 for (f = fastest;
f; f = f->
next)
159 active_template = fastest;
163 static __exit void xor_exit(
void) { }