replaced malloc and free by kmalloc and kfree
analyzed allocation and free pattern. nothing unusual.
no idea why it returns 0