Kernel explorations

With our child being home sick, I can spend only four hours per day
working.  I'm also not very efficient because of the missing sleeping
hours.  This is apparently a classic for parents of young children.

With that being said, my current task requires me to port the definitions
of the same UIO devices that I was working a few weeks ago to our
simulated environment (within QEMU).

The porting itself is trivial (a few lines in the device tree, that I know
quite well at this point).  The testing is not as simple: we don't have a real
hardware.  QEMU doesn't give us an obvious way to mock the hardware that we
are going to work on in the future.

I'm attempting to achieve the testing I need by means of some horrible
change to the UIO driver of the kernel.  Horrible because the driver is
generic, and I'm adding a very specific tentacle to it.  It will stay there
until we have some better way of testing it.

Regardless of the nature of my own Frankenstein monster, I finally
started to look into the Linux kernel internals.