[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#631187: Kernel panics when removing external hard drive



On Tue, 2011-07-05 at 17:51 -0500, Jonathan Nieder wrote:
> Hi,
> 
> Alexander Kurtz wrote:
[...]
> > [ 1491.696825] Code: 40 74 35 83 7e 44 01 74 04 a8 40 74 2b 83 e0 11 ff c8 0f 95 c0 83 e0 01 48 05 fc 00 00 00 ff 4c 87 04 f6 46 41 04 74 10 48 8b 02 
> > [ 1491.696825]  8b 40 48 48 85 c0 74 04 41 58 ff e0 59 c3 48 8d be 80 00 00 
> > [ 1491.696825] RIP  [<ffffffff8118b2e3>] elv_completed_request+0x38/0x47
> 
> Disassembly, for convenience (following the hints from
> Documentation/oops-tracing.txt):
[...]

There is a byte missing between the two lines (in fact, the very byte
which RIP points to), and you are mixing decimal and hexadecimal
offsets.

In fact RIP is pointing into the second half of this test:

		if ((rq->cmd_flags & REQ_SORTED) &&
		    e->ops->elevator_completed_req_fn)

and e->ops was NULL.

This might be fixed by:

commit 0769e21bf4b5cf48878c1ca819276e80465b39e7
Author: James Bottomley <James.Bottomley@HansenPartnership.com>
Date:   Wed May 25 15:52:14 2011 -0500

    Fix oops caused by queue refcounting failure
    
    commit e73e079bf128d68284efedeba1fbbc18d78610f9 upstream.

which was included in stable version 2.6.39.2 and our package version
2.6.39-3.

Alexander, please test the new package version.

Ben.

-- 
Ben Hutchings
The two most common things in the universe are hydrogen and stupidity.

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: