Bug 462434 (CVE-2008-4302)

Summary: CVE-2008-4302 kernel: splice: fix bad unlock_page() in error case
Product: [Other] Security Response Reporter: Eugene Teo (Security Response) <eteo>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: dhoward, jmoyer, jpirko, lwang, lwoodman
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: reported=20080916,public=20070720,impact=important,source=lkml
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-12-21 17:39:05 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On: 439917, 462436    
Bug Blocks:    
Attachments:
Description Flags
Upstream patch for this issue none

Description Eugene Teo (Security Response) 2008-09-16 08:42:47 UTC
Description of problem:
If add_to_page_cache_lru() fails, the page will not be locked. But splice jumps to an error path that does a page release and unlock, causing a BUG() in unlock_page().

Comment 2 Eugene Teo (Security Response) 2008-09-16 08:45:20 UTC
Created attachment 316823 [details]
Upstream patch for this issue

Comment 3 Eugene Teo (Security Response) 2008-09-16 08:45:50 UTC
Reproducer:
https://bugzilla.redhat.com/show_bug.cgi?id=461082#c3

Comment 7 Vincent Danen 2010-12-21 17:39:05 UTC
This was addressed via:

Red Hat Enterprise Linux version 5 (RHSA-2008:0957)