Home | History | Annotate | Line # | Download | only in in_cksum
      1  1.1  christos #! /usr/bin/atf-sh
      2  1.2    martin #	$NetBSD: t_in_cksum.sh,v 1.2 2015/01/06 15:13:16 martin Exp $
      3  1.1  christos #
      4  1.1  christos 
      5  1.1  christos TIMING_LOOPS=10000
      6  1.2    martin incksum="$(atf_get_srcdir)/in_cksum"
      7  1.2    martin 
      8  1.2    martin fail() {
      9  1.2    martin     atf_fail "see output for details"
     10  1.2    martin }
     11  1.1  christos 
     12  1.1  christos mbufs() {
     13  1.2    martin     ${incksum} -l 16 -u $0 -i ${TIMING_LOOPS} \
     14  1.2    martin 	1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \
     15  1.2    martin 	|| fail
     16  1.2    martin     ${incksum} -l 16 -u $0 -i ${TIMING_LOOPS} \
     17  1.2    martin 	1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 \
     18  1.2    martin 	1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 \
     19  1.2    martin 	|| fail
     20  1.2    martin     ${incksum} -l 64 -u $0 -i ${TIMING_LOOPS} \
     21  1.1  christos 	1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 \
     22  1.1  christos 	1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 \
     23  1.2    martin 	|| fail
     24  1.2    martin     ${incksum} -l 16 -u $0 -i ${TIMING_LOOPS}	\
     25  1.2    martin 	1 3 1 3 1 3 1 \
     26  1.2    martin 	|| fail
     27  1.1  christos }
     28  1.1  christos 
     29  1.1  christos sizes() {
     30  1.2    martin     ${incksum} -l 16 -u $1 -i ${TIMING_LOOPS}	2048 || fail
     31  1.2    martin     ${incksum} -l 16 -u $1 -i ${TIMING_LOOPS}	40 || fail
     32  1.2    martin     ${incksum} -l 16 -u $1 -i ${TIMING_LOOPS}	1536 || fail
     33  1.2    martin     ${incksum} -l 16 -u $1 -i ${TIMING_LOOPS}	576 || fail
     34  1.2    martin     ${incksum} -l 16 -u $1 -i ${TIMING_LOOPS}	1536 1536 1536 1536 1536 640 \
     35  1.2    martin 	 || fail
     36  1.1  christos }
     37  1.1  christos 
     38  1.1  christos atf_test_case mbufs_aligned
     39  1.1  christos 
     40  1.1  christos mbufs_aligned_head() {
     41  1.1  christos 	atf_set "descr" "Test in_cksum mbuf chains aligned"
     42  1.1  christos }
     43  1.1  christos 
     44  1.1  christos mbufs_aligned_body() {
     45  1.1  christos 	mbufs 0
     46  1.1  christos }
     47  1.1  christos 
     48  1.1  christos mbufs_unaligned_head() {
     49  1.1  christos 	atf_set "descr" "Test in_cksum mbuf chains unaligned"
     50  1.1  christos }
     51  1.1  christos 
     52  1.1  christos mbufs_unaligned_body() {
     53  1.1  christos 	mbufs 1
     54  1.1  christos }
     55  1.1  christos 
     56  1.1  christos sizes_aligned_head() {
     57  1.1  christos 	atf_set "descr" "Test in_cksum sizes aligned"
     58  1.1  christos }
     59  1.1  christos 
     60  1.1  christos sizes_aligned_body() {
     61  1.1  christos 	sizes 0
     62  1.1  christos }
     63  1.1  christos 
     64  1.1  christos sizes_unaligned_head() {
     65  1.1  christos 	atf_set "descr" "Test in_cksum sizes unaligned"
     66  1.1  christos }
     67  1.1  christos 
     68  1.1  christos sizes_unaligned_body() {
     69  1.1  christos 	sizes 1
     70  1.1  christos }
     71  1.1  christos 
     72  1.1  christos atf_init_test_cases()
     73  1.1  christos {
     74  1.1  christos 	atf_add_test_case mbufs_aligned
     75  1.1  christos 	atf_add_test_case mbufs_unaligned
     76  1.1  christos 	atf_add_test_case sizes_aligned
     77  1.1  christos 	atf_add_test_case sizes_unaligned
     78  1.1  christos }
     79