Linux Kernel - why a function's address in System.map is one byte preceding its address as seen in real time?
问题 In linux kernel source code, added this lines in tasklet_action code: printk("tasklet_action = %p\n" , *tasklet_action); printk("tasklet_action = %p\n" , &tasklet_action); printk("tasklet_action = %p\n" , tasklet_action); In the output I get: tasklet_action = c03441a1 tasklet_action = c03441a1 tasklet_action = c03441a1 But when searching it in the system.map file the tasklet_action address is at c03441a0 so there is an offset of 1 byte. Why do I have this offset? Is it always an one byte