Make some funcs static
A 1 bit bitfield cannot be signed.
Use k*malloc instead of vmalloc

These are all small allocations so kmalloc is the way to go.
Clean up module init and exit

Do proper error checking in init
Free wq and iounmap in exit