From: Ryusuke Konishi <ryusuke-sG5X7nlA6pw@public.gmane.org>
To: users-JrjvKiOkagjYtjvyW6yDsg@public.gmane.org,
jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org
Subject: Re: Crash...
Date: Wed, 29 Jul 2009 14:08:21 +0900 (JST) [thread overview]
Message-ID: <20090729.140821.103585622.ryusuke@osrg.net> (raw)
In-Reply-To: <874osw14pz.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
On Wed, 29 Jul 2009 13:40:56 +0900, Jiro SEKIBA <jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org> wrote:
> Hi,
>
> At Wed, 29 Jul 2009 12:46:38 +0900 (JST),
> Ryusuke Konishi wrote:
> >
> > Hi,
> > On Wed, 29 Jul 2009 11:49:12 +0900, Jiro SEKIBA <jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org> wrote:
> > > Hi,
> > >
> > > > I tried to reproduce the situation, but I can not reproduce the bug
> > > > with rc4, rc4+experimental on debian/lenny.
> > >
> > > Well, when I tried I got different kernel dump.
> > > I don't know if it's related or not, but just in case.
> > >
> > > I got following with rc4 with device mapper, created nilfs2 filesystem on
> > > it during rsync on the filesystem.
> >
> > shrink_page_list() is a core memory management function to reclaim
> > free pages.
> >
> > Could you send me the disassembled source of mm/vmscan.o ?
> > You cat get it by using objdump command:
>
> Here is the corresponded dump of shrink_page_list:
>
> ee4: 85 c0 test %eax,%eax
> ee6: 0f 84 d1 02 00 00 je 11bd <shrink_page_list+0x559>
> eec: f0 80 65 d8 ef lock andb $0xef,-0x28(%rbp)
> ef1: 48 c7 c6 00 00 00 00 mov $0x0,%rsi
> ef8: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
> eff: 31 c0 xor %eax,%eax
> f01: e8 00 00 00 00 callq f06 <shrink_page_list+0x2a2>
> f06: e9 b6 01 00 00 jmpq 10c1 <shrink_page_list+0x45d>
> f0b: 49 8b 44 24 58 mov 0x58(%r12),%rax
> f10: 48 83 38 00 cmpq $0x0,(%rax)
> f14: 0f 84 79 02 00 00 je 1193 <shrink_page_list+0x52f>
> f1a: 65 48 8b 04 25 00 00 mov %gs:0x0,%rax
> f21: 00 00
> f23: f6 40 16 80 testb $0x80,0x16(%rax)
>
> looks like <48> is cmpq at f10.
Thanks.
It looks like a part of the pageout() function inlined in the
shrink_page_list().
static pageout_t pageout(struct page *page, struct address_space *mapping,
enum pageout_io sync_writeback)
{
...
if (!is_page_cache_freeable(page))
return PAGE_KEEP;
if (!mapping) {
/*
* Some data journaling orphaned pages can have
* page->mapping == NULL while being dirty with clean buffers.
*/
if (page_has_private(page)) {
if (try_to_free_buffers(page)) {
ClearPageDirty(page);
printk("%s: orphaned page\n", __func__);
return PAGE_CLEAN;
}
}
return PAGE_KEEP;
}
if (mapping->a_ops->writepage == NULL)
return PAGE_ACTIVATE;
...
The above ``a_ops->writepage'' causes the violative access. According
to your log, mapping->a_ops (= RAX) seems to store a meaningless value.
Maybe the mapping->a_ops is not set on the page.
Ok, I'll check if nilfs can cause this sort of problem.
Thanks,
Ryusuke Konishi
> > $ cd linux/mm
> > $ objdump -D vmscan.o > vmscan.s
> >
> > The instruction in question is that has the code "<48>" in the
> > following sequence.
> >
> > > [405816.060688] Code: c0 0f 84 d1 02 00 00 f0 80 65 d8 ef 48 c7 c6 e0 b9 2a 81 48 c7 c7 26 fc 32 81 31 c0 e8 02 d0 1e 00 e9 b6 01 00 00 49 8b 44 24 58 <48> 83 38 00 0f 84 79 02 00 00 65 48 8b 04 25 00 b0 00 00 f6 40
> >
> > Cheers,
> > Ryusuke Konishi
> >
> > > [405816.059174] general protection fault: 0000 [#1] SMP
> > > [405816.059205] last sysfs file: /sys/block/dm-0/removable
> > > [405816.059233] CPU 0
> > > [405816.059255] Modules linked in: dm_mod nilfs2 ipv6 loop snd_hda_codec_realtek i2c_i801 i2c_core iTCO_wdt serio_raw snd_hda_intel snd_hda_codec pcspkr psmouse snd_pcm snd_timer snd button processor soundcore intel_agp snd_page_alloc evdev ext3 jbd mbcache raid10 raid456 raid6_pq async_xor async_memcpy async_tx xor raid1 raid0 multipath linear md_mod sg sr_mod sd_mod cdrom ahci libata scsi_mod tg3 libphy uhci_hcd ehci_hcd thermal fan thermal_sys
> > > [405816.059462] Pid: 215, comm: kswapd0 Not tainted 2.6.31-rc4 #1 N8-S720XMZCUUA2
> > > [405816.059504] RIP: 0010:[<ffffffff810a2ac0>] [<ffffffff810a2ac0>] shrink_page_list+0x2ac/0x609
> > > [405816.059554] RSP: 0018:ffff88016cec1a40 EFLAGS: 00010282
> > > [405816.059579] RAX: e7d50c6d4d1428d2 RBX: ffffea0003f5fbb0 RCX: 0000000000000800
> > > [405816.059621] RDX: 0000000000000002 RSI: 0000000000000001 RDI: 0000000000000000
> > > [405816.059663] RBP: ffffea0003f5fbd8 R08: 0000000000000001 R09: ffff88016fc075c0
> > > [405816.059705] R10: 00003ffffffff000 R11: ffff88007a26f880 R12: ffff8801506f41a8
> > > [405816.059747] R13: 0000000000000001 R14: 000000000000e800 R15: ffff88016cec1e10
> > > [405816.059789] FS: 0000000000000000(0000) GS:ffff880028028000(0000) knlGS:0000000000000000
> > > [405816.059833] CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b
> > > [405816.059858] CR2: 0000000001ae9618 CR3: 000000016c802000 CR4: 00000000000406f0
> > > [405816.059900] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> > > [405816.059943] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> > > [405816.059985] Process kswapd0 (pid: 215, threadinfo ffff88016cec0000, task ffff88016f27f930)
> > > [405816.060028] Stack:
> > > [405816.060047] 0000000000000001 ffff88016cec1af0 0000000000000000 ffff88016cec1cb0
> > > [405816.060078] <0> 0000000000000000 0000000000000017 0000000000000009 0000000000000001
> > > [405816.060124] <0> ffffea00039702b8 ffffea0004aa0458 ffffea0004aa0810 ffffea0003970248
> > > [405816.060185] Call Trace:
> > > [405816.060208] [<ffffffff8100c40e>] ? common_interrupt+0xe/0x13
> > > [405816.060234] [<ffffffff810a1cdb>] ? isolate_pages_global+0xa9/0x1f3
> > > [405816.060262] [<ffffffff810a338a>] ? shrink_list+0x2d8/0x5ec
> > > [405816.060289] [<ffffffff8110ac52>] ? proc_delete_inode+0x0/0x40
> > > [405816.060317] [<ffffffff8109f621>] ? determine_dirtyable_memory+0xd/0x1d
> > > [405816.060345] [<ffffffff8109f697>] ? get_dirty_limits+0x1d/0x256
> > > [405816.060371] [<ffffffff8100a54d>] ? __switch_to+0xae/0x266
> > > [405816.060397] [<ffffffff810a3921>] ? shrink_zone+0x283/0x335
> > > [405816.060427] [<ffffffffa0189217>] ? mb_cache_shrink_fn+0x26/0x117 [mbcache]
> > > [405816.060456] [<ffffffff810a3b14>] ? shrink_slab+0x141/0x153
> > > [405816.060482] [<ffffffff810a42ff>] ? kswapd+0x482/0x631
> > > [405816.060507] [<ffffffff810a1c32>] ? isolate_pages_global+0x0/0x1f3
> > > [405816.060536] [<ffffffff81053522>] ? autoremove_wake_function+0x0/0x2e
> > > [405816.060564] [<ffffffff810a3e7d>] ? kswapd+0x0/0x631
> > > [405816.060588] [<ffffffff810531d9>] ? kthread+0x84/0x8c
> > > [405816.060614] [<ffffffff8100caca>] ? child_rip+0xa/0x20
> > > [405816.060639] [<ffffffff81053155>] ? kthread+0x0/0x8c
> > > [405816.060664] [<ffffffff8100cac0>] ? child_rip+0x0/0x20
> > > [405816.060688] Code: c0 0f 84 d1 02 00 00 f0 80 65 d8 ef 48 c7 c6 e0 b9 2a 81 48 c7 c7 26 fc 32 81 31 c0 e8 02 d0 1e 00 e9 b6 01 00 00 49 8b 44 24 58 <48> 83 38 00 0f 84 79 02 00 00 65 48 8b 04 25 00 b0 00 00 f6 40
> > > [405816.060819] RIP [<ffffffff810a2ac0>] shrink_page_list+0x2ac/0x609
> > > [405816.060847] RSP <ffff88016cec1a40>
> > > [405816.061045] ---[ end trace c44a8d41c1aab2f3 ]---
> > >
> > >
> > >
> > >
> > > --
> > > Jiro SEKIBA <jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org>
> > > _______________________________________________
> > > users mailing list
> > > users-JrjvKiOkagjYtjvyW6yDsg@public.gmane.org
> > > https://www.nilfs.org/mailman/listinfo/users
> > _______________________________________________
> > users mailing list
> > users-JrjvKiOkagjYtjvyW6yDsg@public.gmane.org
> > https://www.nilfs.org/mailman/listinfo/users
> >
> >
> >
>
>
> --
> Jiro SEKIBA <jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org>
> _______________________________________________
> users mailing list
> users-JrjvKiOkagjYtjvyW6yDsg@public.gmane.org
> https://www.nilfs.org/mailman/listinfo/users
next prev parent reply other threads:[~2009-07-29 5:08 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-23 12:55 Crash Andrea Gelmini
[not found] ` <9cdbb57f0907230555k768383c2ld1690d31cc6fff83-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-07-23 16:12 ` Crash Ryusuke Konishi
[not found] ` <20090724.011249.110726474.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-07-23 21:02 ` Crash Andrea Gelmini
[not found] ` <9cdbb57f0907231402i1a92cb4qfe5a9d81346a4665-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-07-23 21:20 ` Crash Andrea Gelmini
[not found] ` <9cdbb57f0907231420y4122d649y69fee2273a05b4cc-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-07-27 0:40 ` Crash Jiro SEKIBA
[not found] ` <873a8jhsbd.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
2009-07-27 7:58 ` Crash Andrea Gelmini
2009-07-29 2:49 ` Crash Jiro SEKIBA
[not found] ` <87eis0mcev.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
2009-07-29 3:46 ` Crash Ryusuke Konishi
[not found] ` <20090729.124638.38314632.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-07-29 4:40 ` Crash Jiro SEKIBA
[not found] ` <874osw14pz.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
2009-07-29 5:08 ` Ryusuke Konishi [this message]
[not found] ` <20090729.140821.103585622.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-08-10 6:54 ` kernel oops on shrink_page_list (was Re: Crash...) Ryusuke Konishi
[not found] ` <20090810.155420.42596352.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-08-25 10:50 ` kernel oops on shrink_page_list Ryusuke Konishi
2009-08-01 13:39 ` Crash Andrea Gelmini
[not found] ` <9cdbb57f0908010639l26c26182ma121b0d7672003e0-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-02 7:58 ` Crash Jiro SEKIBA
2009-07-24 8:58 ` Crash Reinoud Zandijk
[not found] ` <20090724085803.GA23256-5cYspOl2ggRz6xQTk39kMVfVdRo2wo/d@public.gmane.org>
2009-07-24 9:47 ` Crash Andrea Gelmini
[not found] ` <9cdbb57f0907240247n5ffd6f81yaee39eb386516c25-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-07-24 10:02 ` Crash Reinoud Zandijk
2009-07-24 10:47 ` Crash Ryusuke Konishi
2009-07-24 10:46 ` Crash Ryusuke Konishi
[not found] ` <20090724.194617.88653682.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-07-24 11:13 ` Crash Reinoud Zandijk
[not found] ` <20090724111333.GE23256-5cYspOl2ggRz6xQTk39kMVfVdRo2wo/d@public.gmane.org>
2009-07-27 7:45 ` Crash Ryusuke Konishi
2009-07-29 2:46 ` Crash Ryusuke Konishi
[not found] ` <20090729.114604.56042421.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-08-01 13:36 ` Crash Andrea Gelmini
[not found] ` <9cdbb57f0908010636u7296da29p61df192dc35d0d12-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-01 13:56 ` Crash Ryusuke Konishi
-- strict thread matches above, loose matches on Subject: below --
2010-02-10 0:59 crash Ryusuke Konishi
[not found] ` <201002100059.AA01340-ZdTO5nnmHvkOizVVqyxoihMFgDP4sedm@public.gmane.org>
2010-02-10 4:07 ` crash Ryusuke Konishi
[not found] ` <ee5afd761002092314i1ba1ec66ie6fe7d0f22d6927e@mail.gmail.com>
[not found] ` <ee5afd761002092314i1ba1ec66ie6fe7d0f22d6927e-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-10 7:26 ` crash Jan de Kruyf
[not found] ` <ee5afd761002092326k3bb3a74fq7145cdb9925d88d5-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-11 5:30 ` crash Ryusuke Konishi
[not found] ` <20100211.143001.184824921.ryusuke-sG5X7nlA6pw@public.gmane.org>
2010-02-11 17:43 ` crash Jan de Kruyf
[not found] ` <ee5afd761002110943y1ca061bdi610de2f1a5df3c32-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-14 7:34 ` crash Ryusuke Konishi
[not found] <ee5afd761002182235r1fe20b0kc7ef7082a5a907e3@mail.gmail.com>
[not found] ` <ee5afd761002182235r1fe20b0kc7ef7082a5a907e3-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-20 13:38 ` crash Ryusuke Konishi
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=20090729.140821.103585622.ryusuke@osrg.net \
--to=ryusuke-sg5x7nla6pw@public.gmane.org \
--cc=jir-hfpbi5WX9J54Eiagz67IpQ@public.gmane.org \
--cc=users-JrjvKiOkagjYtjvyW6yDsg@public.gmane.org \
/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