本文共 387 字,大约阅读时间需要 1 分钟。
目前kernel中直接用%p打印地址的话会被显示成ptrval,kernel 应该用用%pK来打印地址,这样就可以用kptr_restrict 这个sysctl来控制%pK是显示地址还是ptrval这个kernel的patch在https://lwn.net/Articles/740249/同时可以看出如果输出的是____ptrval____,说明地址是64bits./* Maps a pointer to a 32 bit unique identifier. */static char *ptr_to_id(char *buf, char *end, void *ptr, struct printf_spec spec){ const char *str = sizeof(ptr) == 8 ? "(____ptrval____)" : "(ptrval)";
转载地址:http://npnmi.baihongyu.com/