2007-10-31 19:17:34

by Alistair John Strachan

[permalink] [raw]
Subject: 2.4.24-rc1-git: crash on shutdown/unmount?

Hi Jens,

I guessed from the oops that you might have an idea what's causing this oops
on shutdown/unmount. The git version (describe), a screenshot showing the
oops, a config, and dmesg for a booted kernel are available from:

http://devzero.co.uk/~alistair/oops-20071031/

I went back to -rc1 and it still happens there too. If you need any more
information or want me to bisect it, please let me know.

--
Cheers,
Alistair.

137/1 Warrender Park Road, Edinburgh, UK.


2007-10-31 19:20:40

by Jens Axboe

[permalink] [raw]
Subject: Re: 2.4.24-rc1-git: crash on shutdown/unmount?

On Wed, Oct 31 2007, Alistair John Strachan wrote:
> Hi Jens,
>
> I guessed from the oops that you might have an idea what's causing this oops
> on shutdown/unmount. The git version (describe), a screenshot showing the
> oops, a config, and dmesg for a booted kernel are available from:
>
> http://devzero.co.uk/~alistair/oops-20071031/
>
> I went back to -rc1 and it still happens there too. If you need any more
> information or want me to bisect it, please let me know.

I do, I'll post a patch shortly. Just need to test it first.

--
Jens Axboe

2007-11-01 10:54:13

by Jens Axboe

[permalink] [raw]
Subject: Re: 2.4.24-rc1-git: crash on shutdown/unmount?

On Wed, Oct 31 2007, Alistair John Strachan wrote:
> Hi Jens,
>
> I guessed from the oops that you might have an idea what's causing this oops
> on shutdown/unmount. The git version (describe), a screenshot showing the
> oops, a config, and dmesg for a booted kernel are available from:
>
> http://devzero.co.uk/~alistair/oops-20071031/
>
> I went back to -rc1 and it still happens there too. If you need any more
> information or want me to bisect it, please let me know.

Does this work for you?

diff --git a/block/ll_rw_blk.c b/block/ll_rw_blk.c
index 54fd385..75c98d5 100644
--- a/block/ll_rw_blk.c
+++ b/block/ll_rw_blk.c
@@ -3221,6 +3221,7 @@ static inline void __generic_make_request(struct bio *bio)
sector_t old_sector;
int ret, nr_sectors = bio_sectors(bio);
dev_t old_dev;
+ int err = -EIO;

might_sleep();

@@ -3248,7 +3249,7 @@ static inline void __generic_make_request(struct bio *bio)
bdevname(bio->bi_bdev, b),
(long long) bio->bi_sector);
end_io:
- bio_endio(bio, -EIO);
+ bio_endio(bio, err);
break;
}

@@ -3283,6 +3284,10 @@ end_io:

if (bio_check_eod(bio, nr_sectors))
goto end_io;
+ if (bio_empty_barrier(bio) && !q->prepare_flush_fn) {
+ err = -EOPNOTSUPP;
+ goto end_io;
+ }

ret = q->make_request_fn(q, bio);
} while (ret);

--
Jens Axboe

2007-11-01 15:57:18

by Alistair John Strachan

[permalink] [raw]
Subject: Re: 2.4.24-rc1-git: crash on shutdown/unmount?

On Thursday 01 November 2007 11:51:08 Sebastian Siewior wrote:
> * Jens Axboe | 2007-11-01 11:51:09 [+0100]:
> >On Wed, Oct 31 2007, Alistair John Strachan wrote:
> >> Hi Jens,
> >>
> >> I guessed from the oops that you might have an idea what's causing this
> >> oops on shutdown/unmount. The git version (describe), a screenshot
> >> showing the oops, a config, and dmesg for a booted kernel are available
> >> from:
> >>
> >> http://devzero.co.uk/~alistair/oops-20071031/
> >>
> >> I went back to -rc1 and it still happens there too. If you need any more
> >> information or want me to bisect it, please let me know.
> >
> >Does this work for you?
>
> Yes it does.
>
> Acked-by Sebastian Siewior <[email protected]>

Yep, thanks Jens. Working fine here.

Tested-by: Alistair John Strachan <[email protected]>

--
Cheers,
Alistair.

137/1 Warrender Park Road, Edinburgh, UK.

2007-11-03 10:08:00

by Sebastian Siewior

[permalink] [raw]
Subject: Re: 2.4.24-rc1-git: crash on shutdown/unmount?

* Jens Axboe | 2007-11-01 11:51:09 [+0100]:

>On Wed, Oct 31 2007, Alistair John Strachan wrote:
>> Hi Jens,
>>
>> I guessed from the oops that you might have an idea what's causing this oops
>> on shutdown/unmount. The git version (describe), a screenshot showing the
>> oops, a config, and dmesg for a booted kernel are available from:
>>
>> http://devzero.co.uk/~alistair/oops-20071031/
>>
>> I went back to -rc1 and it still happens there too. If you need any more
>> information or want me to bisect it, please let me know.
>
>Does this work for you?
Yes, it does. Thanks for working on that. Sorry for the late reply but I
run -ENOINET.

Acked-by: Sebastian Siewior <[email protected]>

2007-11-03 16:04:58

by Jens Axboe

[permalink] [raw]
Subject: Re: 2.4.24-rc1-git: crash on shutdown/unmount?

On Sat, Nov 03 2007, Sebastian Siewior wrote:
> * Jens Axboe | 2007-11-01 11:51:09 [+0100]:
>
> >On Wed, Oct 31 2007, Alistair John Strachan wrote:
> >> Hi Jens,
> >>
> >> I guessed from the oops that you might have an idea what's causing this oops
> >> on shutdown/unmount. The git version (describe), a screenshot showing the
> >> oops, a config, and dmesg for a booted kernel are available from:
> >>
> >> http://devzero.co.uk/~alistair/oops-20071031/
> >>
> >> I went back to -rc1 and it still happens there too. If you need any more
> >> information or want me to bisect it, please let me know.
> >
> >Does this work for you?
> Yes, it does. Thanks for working on that. Sorry for the late reply but I
> run -ENOINET.
>
> Acked-by: Sebastian Siewior <[email protected]>

Great, thanks to both of you for testing. When Linus pulls the stuff I
asked him to, this fix will go upstream.

--
Jens Axboe