--- zzzz-none-000/linux-2.6.19.2/mm/slab.c 2007-01-10 19:10:37.000000000 +0000 +++ davinci-8020-5504/linux-2.6.19.2/mm/slab.c 2007-01-19 14:42:56.000000000 +0000 @@ -883,7 +883,7 @@ if (node == MAX_NUMNODES) node = first_node(node_online_map); - per_cpu(reap_node, cpu) = node; + __get_cpu_var(reap_node) = node; } static void next_reap_node(void) @@ -1661,6 +1661,11 @@ while (!kstack_end(sptr)) { svalue = *sptr++; + +#ifdef CONFIG_PAX_KERNEXEC + svalue += __KERNEL_TEXT_OFFSET; +#endif + if (kernel_text_address(svalue)) { *addr++ = svalue; size -= sizeof(unsigned long); @@ -2116,7 +2121,7 @@ * area of the module. Print a warning. */ set_fs(KERNEL_DS); - res = __get_user(tmp, pc->name); + res = __get_user(tmp, (char __user *)pc->name); set_fs(old_fs); if (res) { printk("SLAB: cache with size %d has lost its name\n",