Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 195350 Details for
Bug 274182
[2.6.30 regression] oops in ide_complete_rq when booting with CDRW in the drive
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
possible fix
idecd.patch (text/plain), 1.59 KB, created by
Daniel Drake (RETIRED)
on 2009-06-21 15:16:29 UTC
(
hide
)
Description:
possible fix
Filename:
MIME Type:
Creator:
Daniel Drake (RETIRED)
Created:
2009-06-21 15:16:29 UTC
Size:
1.59 KB
patch
obsolete
>From: Rainer Weikusat <rweikusat@mssgmbh.com> >Date: Thu, 18 Jun 2009 15:04:00 +0000 (+0200) >Subject: ide-cd: prevent null pointer deref via cdrom_newpc_intr >X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Fbart%2Fide-2.6.git;a=commitdiff_plain;h=39c58f37a10198054c656c28202fb1e6d22fd505 > >ide-cd: prevent null pointer deref via cdrom_newpc_intr > >With 2.6.30, the error handling code in cdrom_newpc_intr was changed >to deal with partial request failures by normally completing the 'good' >parts of a request and only 'error' the last (and presumably, >incompletely transferred) bio associated with a particular >request. In order to do this, ide_complete_rq is called over >ide_cd_error_cmd() to partially complete the rq. The block layer >does partial completion only for requests with bio's and if the >rq doesn't have one (eg 'GPCMD_READ_DISC_INFO') the request is >completed as a whole and the drive->hwif->rq pointer set to NULL >afterwards. When calling ide_complete_rq again to report >the error, this null pointer is derefenced, resulting in a kernel >crash. > >This fixes http://bugzilla.kernel.org/show_bug.cgi?id=13399. > >Signed-off-by: Rainer Weikusat <rweikusat@mssgmbh.com> >Signed-off-by: Borislav Petkov <petkovbb@gmail.com> >Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> >--- > >diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c >index 0b7645b..4a19686 100644 >--- a/drivers/ide/ide-cd.c >+++ b/drivers/ide/ide-cd.c >@@ -667,7 +667,7 @@ out_end: > rq->errors = -EIO; > } > >- if (uptodate == 0) >+ if (uptodate == 0 && rq->bio) > ide_cd_error_cmd(drive, cmd); > > /* make sure it's fully ended */
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 274182
:
194726
|
194728
|
194730
|
194732
| 195350