poison.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #ifndef _LINUX_POISON_H
  2. #define _LINUX_POISON_H
  3. /********** include/linux/list.h **********/
  4. /*
  5. * These are non-NULL pointers that will result in page faults
  6. * under normal circumstances, used to verify that nobody uses
  7. * non-initialized list entries.
  8. */
  9. #define LIST_POISON1 ((void *) 0x00100100)
  10. #define LIST_POISON2 ((void *) 0x00200200)
  11. /********** mm/slab.c **********/
  12. /*
  13. * Magic nums for obj red zoning.
  14. * Placed in the first word before and the first word after an obj.
  15. */
  16. #define RED_INACTIVE 0x5A2CF071UL /* when obj is inactive */
  17. #define RED_ACTIVE 0x170FC2A5UL /* when obj is active */
  18. /* ...and for poisoning */
  19. #define POISON_INUSE 0x5a /* for use-uninitialised poisoning */
  20. #define POISON_FREE 0x6b /* for use-after-free poisoning */
  21. #define POISON_END 0xa5 /* end-byte of poisoning */
  22. /********** arch/$ARCH/mm/init.c **********/
  23. #define POISON_FREE_INITMEM 0xcc
  24. /********** arch/x86_64/mm/init.c **********/
  25. #define POISON_FREE_INITDATA 0xba
  26. /********** arch/ia64/hp/common/sba_iommu.c **********/
  27. /*
  28. * arch/ia64/hp/common/sba_iommu.c uses a 16-byte poison string with a
  29. * value of "SBAIOMMU POISON\0" for spill-over poisoning.
  30. */
  31. /********** fs/jbd/journal.c **********/
  32. #define JBD_POISON_FREE 0x5b
  33. /********** drivers/base/dmapool.c **********/
  34. #define POOL_POISON_FREED 0xa7 /* !inuse */
  35. #define POOL_POISON_ALLOCATED 0xa9 /* !initted */
  36. /********** drivers/atm/ **********/
  37. #define ATM_POISON_FREE 0x12
  38. #define ATM_POISON 0xdeadbeef
  39. /********** net/ **********/
  40. #define NEIGHBOR_DEAD 0xdeadbeef
  41. #define NETFILTER_LINK_POISON 0xdead57ac
  42. /********** kernel/mutexes **********/
  43. #define MUTEX_DEBUG_INIT 0x11
  44. #define MUTEX_DEBUG_FREE 0x22
  45. /********** security/ **********/
  46. #define KEY_DESTROY 0xbd
  47. /********** sound/oss/ **********/
  48. #define OSS_POISON_FREE 0xAB
  49. #endif