The eisa_eeprom_read function in the parisc isa-eeprom component (drivers/parisc/eisa_eeprom.c) in the Linux kernel before 2.6.31-rc6 allows local users to access restricted memory via a negative ppos argument, which bypasses a check that assumes that ppos is positive and causes an out-of-bounds read in the readb function.
https://exchange.xforce.ibmcloud.com/vulnerabilities/52906
http://www.ubuntu.com/usn/USN-852-1
http://www.openwall.com/lists/oss-security/2009/08/18/6
http://www.openwall.com/lists/oss-security/2009/08/10/1
http://www.mandriva.com/security/advisories?name=MDVSA-2010:198