kernel.c revision 35a5a3587fd94b666239c157d3722745250ccbd7