From: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
To: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
Cc: Frederik Deweerdt <deweerdt@free.fr>,
Andrew Morton <akpm@linux-foundation.org>,
Mattia Dongili <malattia@linux.it>,
Laurent Riffard <laurent.riffard@free.fr>,
linux-kernel@vger.kernel.org, axboe@kernel.dk,
Jens Axboe <jens.axboe@oracle.com>
Subject: Re: [-mm patch] fix locking in __make_request (was Re: 2.6.20-mm2: Oops in generic_make_request)
Date: Mon, 19 Feb 2007 15:08:03 +0100 [thread overview]
Message-ID: <45D9AF43.6010406@googlemail.com> (raw)
In-Reply-To: <6bffcb0e0702190552r67f878csb5e5c49dfa7c050c@mail.gmail.com>
Michal Piotrowski napisał(a):
> Hi Frederik,
>
> On 20/02/07, Frederik Deweerdt <deweerdt@free.fr> wrote:
>> Hi Michal,
>>
>> This seems to be a locking problem in __make_request, check_plug_merge()
>> should be called with the q->queue_lock held.
>> Could you try the following patch? It silenced the oops for me.
>
> For me too, but Jens dislikes this patch.
Now I know why...
Code: Bad EIP value.
EIP: [<6b6b6b6b>] 0x6b6b6b6b SS:ESP 0068:f45f9bf8
note: ksmserver[20993] exited with preempt_count 2
BUG: sleeping function called from invalid context at /mnt/md0/devel/linux-mm/kernel/rwsem.c:20
in_atomic():1, irqs_disabled():1
no locks held by ksmserver/20993.
irq event stamp: 0
hardirqs last enabled at (0): [<00000000>] 0x0
hardirqs last disabled at (0): [<c0121bc6>] copy_process+0x539/0x137d
softirqs last enabled at (0): [<c0121be4>] copy_process+0x557/0x137d
BUG: unable to handle kernel NULL pointer dereference at virtual address 00000118
printing eip:
c01f3f12
*pde = 00000000
Oops: 0000 [#1]
PREEMPT SMP
last sysfs file: /devices/platform/i2c-9191/9191-0290/temp2_input
Modules linked in: ipt_MASQUERADE iptable_nat nf_nat nfsd exportfs lockd nfs_acl autofs4 sunrpc af_packet nf_conntrack_netbios_ns ipt_REJECT nf_conntrack_ipv4 xt_state nf_conntrack nfnetlink xt_tcpudp iptable_filter ip_tables x_tables ipv6 binfmt_misc thermal processor fan container nvram snd_intel8x0 snd_ac97_codec ac97_bus snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss evdev snd_pcm skge intel_agp snd_timer agpgart snd 8139too soundcore sk98lin i2c_i801 mii snd_page_alloc ide_cd cdrom rtc unix
CPU: 0
EIP: 0060:[<c01f3f12>] Not tainted VLI
EFLAGS: 00210297 (2.6.20-mm2 #19)
EIP is at blk_unplug_current+0x60/0x156
eax: f3f97298 ebx: 00000001 ecx: c043db74 edx: 00000000
esi: f3f97284 edi: 00000000 ebp: dda39d94 esp: dda39d58
ds: 007b es: 007b fs: 00d8 gs: 0033 ss: 0068
Process swriter.bin (pid: 20846, ti=dda38000 task=dda79510 task.ti=dda38000)
Stack: dda79510 c03369fd 00000000 dda79510 c03369fd 00000000 dda39d90 f3f97298
c011e710 c7403fac 00200046 dda39d90 00000001 c04abda0 06f75d80 dda39da8
c03339bb dda79f38 dda79f30 c7403f98 dda39db0 c0333a2f dda39db8 c015e380
Call Trace:
[<c0105312>] show_trace_log_lvl+0x1a/0x2f
[<c01053c4>] show_stack_log_lvl+0x9d/0xac
[<c01055c0>] show_registers+0x1ed/0x34c
[<c010583c>] die+0x11d/0x234
[<c011a8e1>] do_page_fault+0x47c/0x55b
[<c0336d54>] error_code+0x7c/0x84
[<c03339bb>] io_schedule+0x3d/0x9a
[<c0333a2f>] io_wait_schedule+0x17/0x1d
[<c015e380>] sleep_on_page+0xa/0xc
[<c0334217>] __wait_on_bit_lock+0x34/0x66
[<c015e372>] lock_page_blocking+0x2c/0x30
[<c015ebe2>] do_generic_mapping_read+0x29f/0x51a
[<c0160daa>] generic_file_aio_read+0x19a/0x1c8
[<c017f300>] do_sync_read+0xd7/0x114
[<c017fc2a>] vfs_read+0xcf/0x158
[<c0180090>] sys_read+0x3d/0x72
[<c010432c>] syscall_call+0x7/0xb
=======================
Code: 0b eb fe 8b 46 0c 48 89 46 0c 85 c0 0f 85 07 01 00 00 8b 7e 1c c7 46 1c 00 00 00 00 8d 46 14 89 45 e0 39 46 14 0f 84 d4 00 00 00 <8b> 87 18 01 00 00 e8 c0 26 14 00 c7 45 e4 00 00 00 00 8b 5e 14
EIP: [<c01f3f12>] blk_unplug_current+0x60/0x156 SS:ESP 0068:dda39d58
BUG: unable to handle kernel paging request at virtual address 6b6b6b6b
printing eip:
6b6b6b6b
*pde = 00000000
Oops: 0000 [#2]
PREEMPT SMP
last sysfs file: /devices/platform/i2c-9191/9191-0290/temp2_input
Modules linked in: ipt_MASQUERADE iptable_nat nf_nat nfsd exportfs lockd nfs_acl autofs4 sunrpc af_packet nf_conntrack_netbios_ns ipt_REJECT nf_conntrack_ipv4 xt_state nf_conntrack nfnetlink xt_tcpudp iptable_filter ip_tables x_tables ipv6 binfmt_misc thermal processor fan container nvram snd_intel8x0 snd_ac97_codec ac97_bus snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss evdev snd_pcm skge intel_agp snd_timer agpgart snd 8139too soundcore sk98lin i2c_i801 mii snd_page_alloc ide_cd cdrom rtc unix
CPU: 0
EIP: 0060:[<6b6b6b6b>] Not tainted VLI
EFLAGS: 00210012 (2.6.20-mm2 #19)
EIP is at 0x6b6b6b6b
eax: dda79f38 ebx: dda79f38 ecx: 00000000 edx: 00000003
esi: 6b6b6b6b edi: 00000001 ebp: f45f9c18 esp: f45f9bf8
ds: 007b es: 007b fs: 00d8 gs: 0033 ss: 0068
Process ksmserver (pid: 20993, ti=f45f8000 task=f335b510 task.ti=f45f8000)
Stack: c011b5e0 f45f9c44 00000003 c7403f98 6b6b6b6b c7403f98 00000001 00200292
f45f9c38 c011c3fb 00000000 f45f9c44 00000003 c7403f98 f7d71f4c f7d71f4c
f45f9c50 c01353c3 f45f9c44 f7d71f4c 00000002 00000002 f45f9c60 c01353e0
Call Trace:
[<c0105312>] show_trace_log_lvl+0x1a/0x2f
[<c01053c4>] show_stack_log_lvl+0x9d/0xac
[<c01055c0>] show_registers+0x1ed/0x34c
[<c010583c>] die+0x11d/0x234
[<c011a8e1>] do_page_fault+0x47c/0x55b
[<c0336d54>] error_code+0x7c/0x84
[<c011c3fb>] __wake_up+0x31/0x42
[<c01353c3>] __wake_up_bit+0x2e/0x34
[<c01353e0>] wake_up_bit+0x17/0x1b
[<c019ecbf>] unlock_buffer+0x12/0x14
[<c01ccad4>] do_get_write_access+0x185/0x657
[<c01ccfc1>] journal_get_write_access+0x1b/0x2a
[<c01c985a>] __ext3_journal_get_write_access+0x19/0x3f
[<c01be210>] ext3_reserve_inode_write+0x34/0x68
[<c01be26e>] ext3_mark_inode_dirty+0x2a/0x41
[<c01c0eb7>] ext3_dirty_inode+0x6a/0x7d
[<c019adc1>] __mark_inode_dirty+0x2a/0x16d
[<c019243e>] touch_atime+0xc1/0xcb
[<c015ee50>] do_generic_mapping_read+0x50d/0x51a
[<c0160daa>] generic_file_aio_read+0x19a/0x1c8
[<c017f300>] do_sync_read+0xd7/0x114
[<c017fc2a>] vfs_read+0xcf/0x158
[<c0182fa7>] kernel_read+0x36/0x48
[<c0183085>] prepare_binprm+0xcc/0xd1
[<c01845c3>] do_execve+0x105/0x210
[<c0102528>] sys_execve+0x3f/0x60
[<c010432c>] syscall_call+0x7/0xb
=======================
Code: Bad EIP value.
EIP: [<6b6b6b6b>] 0x6b6b6b6b SS:ESP 0068:f45f9bf8
note: ksmserver[20993] exited with preempt_count 2
BUG: sleeping function called from invalid context at /mnt/md0/devel/linux-mm/kernel/rwsem.c:20
in_atomic():1, irqs_disabled():1
no locks held by ksmserver/20993.
irq event stamp: 0
hardirqs last enabled at (0): [<00000000>] 0x0
hardirqs last disabled at (0): [<c0121bc6>] copy_process+0x539/0x137d
softirqs last enabled at (0): [<c0121be4>] copy_process+0x557/0x137d
softirqs last disabled at (0): [<00000000>] 0x0
[<c0105312>] show_trace_log_lvl+0x1a/0x2f
[<c0105a37>] show_trace+0x12/0x14
[<c0105af9>] dump_stack+0x16/0x18
[<c011cb6c>] __might_sleep+0xc9/0xcf
[<c0138a7a>] down_read+0x18/0x4c
[<c014d82d>] acct_collect+0x3b/0x146
[<c012679a>] do_exit+0x254/0x86c
[<c010592d>] die+0x20e/0x234
[<c011a8e1>] do_page_fault+0x47c/0x55b
[<c0336d54>] error_code+0x7c/0x84
[<c011c3fb>] __wake_up+0x31/0x42
[<c01353c3>] __wake_up_bit+0x2e/0x34
[<c01353e0>] wake_up_bit+0x17/0x1b
[<c019ecbf>] unlock_buffer+0x12/0x14
[<c01ccad4>] do_get_write_access+0x185/0x657
[<c01ccfc1>] journal_get_write_access+0x1b/0x2a
[<c01c985a>] __ext3_journal_get_write_access+0x19/0x3f
[<c01be210>] ext3_reserve_inode_write+0x34/0x68
[<c01be26e>] ext3_mark_inode_dirty+0x2a/0x41
[<c01c0eb7>] ext3_dirty_inode+0x6a/0x7d
[<c019adc1>] __mark_inode_dirty+0x2a/0x16d
[<c019243e>] touch_atime+0xc1/0xcb
[<c015ee50>] do_generic_mapping_read+0x50d/0x51a
[<c0160daa>] generic_file_aio_read+0x19a/0x1c8
[<c017f300>] do_sync_read+0xd7/0x114
[<c017fc2a>] vfs_read+0xcf/0x158
[<c0182fa7>] kernel_read+0x36/0x48
[<c0183085>] prepare_binprm+0xcc/0xd1
[<c01845c3>] do_execve+0x105/0x210
[<c0102528>] sys_execve+0x3f/0x60
[<c010432c>] syscall_call+0x7/0xb
=======================
BUG: scheduling while atomic: ksmserver/0x10000002/20993
no locks held by ksmserver/20993.
[<c0105312>] show_trace_log_lvl+0x1a/0x2f
[<c0105a37>] show_trace+0x12/0x14
[<c0105af9>] dump_stack+0x16/0x18
[<c0332ca2>] __sched_text_start+0x92/0xd6e
[<c011e82c>] __cond_resched+0x21/0x4b
[<c0333d65>] cond_resched+0x3c/0x47
[<c016b671>] unmap_vmas+0x497/0x589
[<c016e9be>] exit_mmap+0x7e/0x12a
[<c0121603>] mmput+0x49/0xaf
[<c0125311>] exit_mm+0xe5/0xeb
[<c01267ed>] do_exit+0x2a7/0x86c
[<c010592d>] die+0x20e/0x234
[<c011a8e1>] do_page_fault+0x47c/0x55b
[<c0336d54>] error_code+0x7c/0x84
[<c011c3fb>] __wake_up+0x31/0x42
[<c01353c3>] __wake_up_bit+0x2e/0x34
[<c01353e0>] wake_up_bit+0x17/0x1b
[<c019ecbf>] unlock_buffer+0x12/0x14
[<c01ccad4>] do_get_write_access+0x185/0x657
[<c01ccfc1>] journal_get_write_access+0x1b/0x2a
[<c01c985a>] __ext3_journal_get_write_access+0x19/0x3f
[<c01be210>] ext3_reserve_inode_write+0x34/0x68
[<c01be26e>] ext3_mark_inode_dirty+0x2a/0x41
[<c01c0eb7>] ext3_dirty_inode+0x6a/0x7d
[<c019adc1>] __mark_inode_dirty+0x2a/0x16d
[<c019243e>] touch_atime+0xc1/0xcb
[<c015ee50>] do_generic_mapping_read+0x50d/0x51a
[<c0160daa>] generic_file_aio_read+0x19a/0x1c8
[<c017f300>] do_sync_read+0xd7/0x114
[<c017fc2a>] vfs_read+0xcf/0x158
[<c0182fa7>] kernel_read+0x36/0x48
[<c0183085>] prepare_binprm+0xcc/0xd1
[<c01845c3>] do_execve+0x105/0x210
[<c0102528>] sys_execve+0x3f/0x60
[<c010432c>] syscall_call+0x7/0xb
=======================
Regards,
Michal
--
Michal K. K. Piotrowski
LTG - Linux Testers Group (PL)
(http://www.stardust.webpages.pl/ltg/)
LTG - Linux Testers Group (EN)
(http://www.stardust.webpages.pl/linux_testers_group_en/)
next prev parent reply other threads:[~2007-02-19 14:07 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-18 5:51 2.6.20-mm2 Andrew Morton
2007-02-18 6:18 ` 2.6.20-mm2 Dave Airlie
2007-02-18 6:34 ` 2.6.20-mm2 Andrew Morton
2007-02-18 12:44 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-18 19:43 ` 2.6.20-mm2 Andrew Morton
2007-02-18 23:25 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-18 23:39 ` 2.6.20-mm2 Michal Piotrowski
2007-02-19 0:00 ` 2.6.20-mm2 Andrew Morton
2007-02-19 11:28 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-19 11:45 ` 2.6.20-mm2 Michal Piotrowski
2007-02-20 0:04 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-20 21:16 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-20 21:46 ` 2.6.20-mm2 Jeff Garzik
2007-02-20 0:43 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-20 1:20 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-20 6:31 ` 2.6.20-mm2 Andrew Morton
2007-02-20 22:12 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-18 13:06 ` 2.6.20-mm2: Oops in generic_make_request Laurent Riffard
2007-02-18 17:58 ` Mattia Dongili
2007-02-18 19:49 ` Andrew Morton
2007-02-18 20:05 ` Michal Piotrowski
2007-02-20 13:04 ` [-mm patch] fix locking in __make_request (was Re: 2.6.20-mm2: Oops in generic_make_request) Frederik Deweerdt
2007-02-19 13:34 ` Jens Axboe
2007-02-20 14:29 ` Frederik Deweerdt
2007-02-19 13:52 ` Michal Piotrowski
2007-02-19 14:08 ` Michal Piotrowski [this message]
2007-02-20 14:32 ` Frederik Deweerdt
2007-02-18 18:20 ` 2.6.20-mm2 Michal Piotrowski
2007-02-18 23:32 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-19 0:28 ` 2.6.20-mm2 Andrew Morton
2007-02-19 5:13 ` 2.6.20-mm2 David Brownell
2007-02-20 22:07 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-22 3:57 ` 2.6.20-mm2 David Brownell
2007-02-22 8:33 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-22 22:17 ` 2.6.20-mm2 David Brownell
2007-02-23 16:36 ` 2.6.20-mm2 David Brownell
2007-03-04 22:36 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-19 18:28 ` 2.6.20-mm2 Rafael J. Wysocki
2007-02-18 23:33 ` 2.6.20-mm2: compilation fix Rafael J. Wysocki
2007-02-19 0:29 ` Andrew Morton
2007-02-19 11:33 ` Rafael J. Wysocki
2007-02-20 0:07 ` [-mm patch] fs/9p/vfs_addr.c: make 2 functions static Adrian Bunk
2007-02-20 0:54 ` Eric Van Hensbergen
2007-02-20 0:07 ` [-mm patch] drivers/mmc/Kconfig source drivers/mmc/card/Kconfig Adrian Bunk
2007-02-20 6:45 ` Pierre Ossman
2007-02-20 0:08 ` [-mm patch] drivers/video/sm501fb.c: make 4 functions static Adrian Bunk
2007-02-20 0:08 ` 2.6.20-mm2: BLOCK=n compile error Adrian Bunk
2007-02-20 0:08 ` [-mm patch] UNION_FS must depend on SLAB Adrian Bunk
2007-02-20 6:37 ` Pekka Enberg
2007-02-20 15:13 ` Josef Sipek
2007-02-21 3:07 ` [Unionfs] " hooanon05
2007-02-21 22:19 ` Andrew Morton
2007-02-22 2:00 ` Josef Sipek
2007-02-22 2:26 ` Andrew Morton
2007-02-22 3:10 ` Josef Sipek
2007-02-22 6:17 ` Pekka Enberg
2007-02-22 6:18 ` Pekka Enberg
2007-02-22 6:28 ` Josef Sipek
2007-02-22 6:42 ` Christoph Lameter
2007-02-22 2:33 ` [Unionfs] " Erez Zadok
2007-02-21 5:19 ` Josef Sipek
2007-02-20 7:39 ` 2.6.20-mm2 KAMEZAWA Hiroyuki
2007-02-20 10:06 ` 2.6.20-mm2 Andy Whitcroft
2007-02-20 11:14 ` 2.6.20-mm2 Maciej Rutecki
2007-02-20 11:38 ` 2.6.20-mm2 Maciej Rutecki
2007-02-20 21:23 ` 2.6.20-mm2: possible recursive locking detected (reiserfs-related) Rafael J. Wysocki
2007-02-20 22:48 ` Tilman Schmidt
2007-02-21 10:52 ` [-mm patch] MTD_UBI_DEBUG must depend on SYSFS Adrian Bunk
2007-02-21 11:57 ` [-mm patch] i386 mpparse.c: remove an unused variable Adrian Bunk
2007-02-25 13:15 ` 2.6.20-mm2 Jean Delvare
2007-02-27 20:25 ` 2.6.20-mm2 Andrew Morton
2007-02-28 9:07 ` 2.6.20-mm2 Jean Delvare
2007-02-26 22:23 ` [-mm patch] LGUEST must depend on NET Adrian Bunk
2007-02-26 23:42 ` Rusty Russell
2007-03-01 10:48 ` [-mm patch] arch/i386/xen/: possible cleanups Adrian Bunk
2007-03-01 10:53 ` Jeremy Fitzhardinge
2007-03-01 11:55 ` Adrian Bunk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=45D9AF43.6010406@googlemail.com \
--to=michal.k.k.piotrowski@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=axboe@kernel.dk \
--cc=deweerdt@free.fr \
--cc=jens.axboe@oracle.com \
--cc=laurent.riffard@free.fr \
--cc=linux-kernel@vger.kernel.org \
--cc=malattia@linux.it \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome