it just stops working. something is printed and after that nothing happens. I dont get an error message
I would suggest you use a mechanism, where you enable printk *only* when you need it like below.
static __always_inline __u32 __readl(const volatile void __iomem *addr)
{
if (some_global_variable)
printk("r bytes 4 addr %p \n",addr);
return *(__force volatile __u32 *)addr;
}
Set the variable through some proc interface or so.
Also you can then check to see if the printk is failing only at bootup time or everytime. If it still fails whenever you enable it, then you gotta look somewhere else.....
--
The box said "Requires Windows Vista or better." So I installed LINUX