kernel.c revision c3a66015199e1814c2af8f7e6929af2004302e7e