Re: Disk output lockup 2.6.12_rc2 2.6.11.7

2005-04-21 Thread Mikael Andersson
Mikael Andersson wrote:
> During heavy io-load a lockup occurs that appears to prevent any disk
> output from taking place. fs is reiserfs on two device-mapper mirrored
> 200G maxtor disks. After the lockup occurs you can to things like 'ls',
> but echo > test.txt will hang.

fs is now ext3

> 
> A typical workload producing the error is doing:
> rsync of large (1GB) over 100Mbit ethernet
> simultaneous compilation / gunzip

Or almost anything that writes something to the disk.

> 
> I've disabled preemption, and tried with and without acpi enabled, with
> and without smp support (it was smp by default so i switched it off).
> Also tried with another nic (rtl8139) since i got an nv_stop_tx:
> TransmitterStatus remained busy<6> in the logs. I also tried 2.6.11.7
> with the same result.

 Tried converting to ext3, some problem, albeit the lockups are less
severe. More of the locked processes can be killed and echo > test.txt
works. So _some_ io gets through.
 The output from sysrq-T is somewhat less confusing though, it appears
then hung processes is somehow being hung in __generic_unplug_device,  i
had a look at the assembler, but couldn't make heads or tails of it. the
code at __generic_unplug_device+19 was test %eax,%eax immediately
preceded by a callq to the test instruction. Obviously something magic
(by my eyes) is going on here.

 Also tried 2.6.12_rc3-mm3

 I'd really like to find a solution to this since it kinda borks the
nice an shiny machine if it can't handle large files without getting
into trouble.

 I've been working on this for two days, have been trying to find
similar bug reports, trying a lot of different kernels and kernel
options to no avail.
 I'm a little out of options right now, any ideas for something to try,
patches to test, or some help in understanding what's happening ?


kmirrord/0 D 81003f1bccd8 0 978 9 1731 977 (L-TLB)
Call Trace:
{cache_alloc_refill+1222}
{io_schedule+15}
--
kjournald D 81003e94bcd8 0 1748 1 2060 953 (L-TLB)
Call Trace:
{__generic_unplug_device+19}
{generic_unplug_device+189}
--
rsync D 00701553dccf 0 6903 6901 (NOTLB)
Call Trace:
{__generic_unplug_device+19}
{generic_unplug_device+189}
--
x86_64-pc-lin D 006dc7d23e49 0 13785 13742 (NOTLB)
Call Trace:
{generic_unplug_device+189}
{dm_unplug_all+29}

/Mikael Andersson
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Disk output lockup amd64 nforce4 device-mapper 2.6.12_rc2

2005-04-20 Thread Mikael Andersson
During heavy io-load a lockup occurs that appears to prevent any disk
output from taking place. fs is reiserfs on two device-mapper mirrored
200G maxtor disks. After the lockup occurs you can to things like 'ls',
but echo > test.txt will hang.

A typical workload producing the error is doing:
rsync of large (1GB) over 100Mbit ethernet
simultaneous compilation / gunzip

I've disabled preemption, and tried with and without acpi enabled, with
and without smp support (it was smp by default so i switched it off).
Also tried with another nic (rtl8139) since i got an nv_stop_tx:
TransmitterStatus remained busy<6> in the logs. I also tried 2.6.11.7
with the same result.

This produces the lockup after 10-40 minutes. I've got a complete log
from alt-sysreq-T if anyone wants to look at it. The following is a dump
for the bash and kmirrord process when trying echo > test.txt.
The output for kmirrord is included because it's exactly as specified
below both before and after echo > test.txt is invoked, this looked
peculiar to me.

Later runs showed what was to my eyes similar results, some callpaths
weren't exactly the same, but kmirrord was somewhere in mempool_alloc
and the bash process was in do_journal_end, whatever that means :)


bash D c238e000 0 6529 6381 (NOTLB)
81003dfc1bd8 0086
 810001b6ba60
6db6db6db6db6db7 801acc46
810001b6ba98 81003d8c27e0
27cd 805a61c0

Call Trace:
{__d_lookup+358} {queue_log_writer+115}
{default_wake_function+0}
{do_journal_end+604}
{search_by_entry_key+50}
{do_journal_begin_r+77}
{do_journal_begin_r+575}
{journal_begin+204}
{reiserfs_create+183}
{vfs_create+188}
{open_namei+454}
{filp_open+39}
{get_unused_fd+223}
{getname+138}
{sys_open+76}
{system_call+126}


kmirrord/0 D 81003f1bccd8 0 978 9 1731 977 (L-TLB)
81003f931ab8 0046
0200 8016a2d6
810036d18e80 0001
00733f931c30 81003f8d4030
952e 810036cf67e0

Call Trace:
{cache_alloc_refill+1222}
{io_schedule+15}
{mempool_alloc+707} {bvec_get_page+0}
{autoremove_wake_function+0}
{autoremove_wake_function+0}
{__rh_alloc+44}
{rh_inc_pending+67}
{do_work+2955}
{do_work+3000}
{thread_return+0}
{do_work+0}
{worker_thread+715}
{default_wake_function+0}
{default_wake_function+0}
{worker_thread+0}
{kthread+205} {keventd_create_kthread+0}
{child_rip+8} {keventd_create_kthread+0}
{kthread+0}
{child_rip+0}

/Mikael Andersson
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/