#!/bin/sh
set -e

sudo losetup -d /dev/loop1 || true
sudo losetup -d /dev/loop0 || true
sudo rmmod crcloop || true

make
#(cd /lib/modules/$(uname -r)/build; gcc-4.1 -m32 -Wp,-MD,/home/lindi/tmp/crcloop/src/.crcloop.o.d  -nostdinc -isystem /usr/lib/gcc/i486-linux-gnu/4.1.2/include -D__KERNEL__ -Iinclude  -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Os -pipe -msoft-float -mpreferred-stack-boundary=2  -march=i486  -mregparm=3 -ffreestanding -Iinclude/asm-i386/mach-default -fomit-frame-pointer  -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign   -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(crcloop)"  -D"KBUILD_MODNAME=KBUILD_STR(crcloop)" -c -o /home/lindi/tmp/crcloop/src/.tmp_crcloop.o /home/lindi/tmp/crcloop/src/crcloop.c)
sudo modprobe loop
sudo insmod crcloop.ko debug=1
dd if=/dev/zero of=/dev/shm/zero bs=1M count=0 seek=1000 2>/dev/null
sudo losetup /dev/loop0 /dev/shm/zero
sudo losetup -p 0 -e 7 /dev/loop1 /dev/shm/zero < /dev/null
sudo pv /dev/loop0 > /dev/null
sudo pv /dev/loop1 > /dev/null
sudo pv /dev/loop0 > /dev/null
sudo pv /dev/loop1 > /dev/null

rm /dev/shm/zero
sudo losetup -d /dev/loop1
sudo losetup -d /dev/loop0
sudo rmmod crcloop
