Linux kernel 2.6.10 and 2.6.11rc1-bk6 uses different size types for offset arguments to the proc_file_read and locks_read_proc functions, which leads to a heap-based buffer overflow when a signed comparison causes negative integers to be used in a positive context.
http://marc.info/?l=bugtraq&m=111091402626556&w=2
http://marc.info/?l=full-disclosure&m=110846727602817&w=2
https://oval.cisecurity.org/repository/search/definition/oval%3Aorg.mitre.oval%3Adef%3A8994
http://www.novell.com/linux/security/advisories/2005_18_kernel.html