All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tommi Rantala <tt.rantala@gmail.com>
To: Jaegeuk Kim <jaegeuk@kernel.org>
Cc: linux-f2fs-devel@lists.sourceforge.net,
	Changman Lee <cm224.lee@samsung.com>,
	LKML <linux-kernel@vger.kernel.org>,
	trinity@vger.kernel.org, Dave Jones <davej@redhat.com>
Subject: Re: f2fs get_dnode_of_data oops
Date: Mon, 8 Sep 2014 18:39:17 +0300	[thread overview]
Message-ID: <CA+ydwtrbsUD81u6FWysDvqNy942KOF9y=mAhxPfRQP8RG0sZuQ@mail.gmail.com> (raw)
In-Reply-To: <20140908042056.GA13863@jaegeuk-mac02.hsd1.ca.comcast.net>

2014-09-08 7:20 GMT+03:00 Jaegeuk Kim <jaegeuk@kernel.org>:
> Hi,
>
> Thank you for the report.
> Could you share a little bit more information about the file accessing
> f2fs_llseek?
> E.g., file size, file offset, file allocation information, or dump of that file.

Hi,

I can reproduce the bug with the following.
-17595150933902 is just something I saw trinity passing to lseek().

#define _GNU_SOURCE

#include <fcntl.h>
#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>

int main(int argc, char **argv)
{
        int fd;

        if (argc < 2) {
                printf("give filename\n");
                return 1;
        }

        fd = open(argv[1], O_RDONLY);
        if (fd < 0) {
                perror("open");
                return 1;
        }

        lseek(fd, -17595150933902LL, SEEK_DATA);

        return 0;
}

{ttrantal@arkki ~}> touch /f2fs/x ; ./a.out /f2fs/x
[   73.437182] BUG: unable to handle kernel paging request at ffff88043368e340
[   73.438035] IP: [<ffffffff817792d9>] get_dnode_of_data+0x3a9/0x440
[   73.438035] PGD 4595067 PUD 0
[   73.438035] Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
[   73.438035] CPU: 0 PID: 2933 Comm: a.out Not tainted 3.17.0-rc4+ #37
[   73.438035] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[   73.438035] task: ffff88003755cac0 ti: ffff880022734000 task.ti:
ffff880022734000
[   73.438035] RIP: 0010:[<ffffffff817792d9>]  [<ffffffff817792d9>]
get_dnode_of_data+0x3a9/0x440
[   73.438035] RSP: 0018:ffff880022737e08  EFLAGS: 00010246
[   73.438035] RAX: ffff880033951000 RBX: 000000000000010b RCX: 00000000fff4f476
[   73.438035] RDX: ffff880033951168 RSI: 000000111932488f RDI: ffff880022737ef0
[   73.438035] RBP: ffff880022737eb8 R08: 0000000000000148 R09: 0000000000000000
[   73.438035] R10: 0000000000008b86 R11: 0000000000000001 R12: fffffffefff4f476
[   73.438035] R13: 0000000000000000 R14: ffffea0000ce5440 R15: ffff880021c28000
[   73.438035] FS:  00007fefc2f08700(0000) GS:ffff88003fa00000(0000)
knlGS:0000000000000000
[   73.438035] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[   73.438035] CR2: ffff88043368e340 CR3: 0000000032d6b000 CR4: 00000000000006f0
[   73.438035] Stack:
[   73.438035]  ffff880022737ef0 ffffffff81228d7c ffff88003d9fe7b0
ffff880022737eb8
[   73.438035]  ffffffff81763164 00000002ffffffff 0000000000000000
00000000fff4f476
[   73.438035]  0000000000000246 ffffffff00000000 ffffffff8259bd47
ffffffff0000010b
[   73.438035] Call Trace:
[   73.438035]  [<ffffffff81228d7c>] ? pagevec_lookup_tag+0x1c/0x30
[   73.438035]  [<ffffffff81763164>] ? __get_first_dirty_index+0x44/0x90
[   73.438035]  [<ffffffff8259bd47>] ? _raw_spin_unlock_irq+0x27/0x40
[   73.438035]  [<ffffffff81189e75>] ? trace_hardirqs_on_caller+0x185/0x220
[   73.438035]  [<ffffffff817636b7>] f2fs_llseek+0xf7/0x420
[   73.438035]  [<ffffffff8127e735>] SyS_lseek+0x65/0xa0
[   73.438035]  [<ffffffff8259caa9>] system_call_fastpath+0x16/0x1b
[   73.438035] Code: ba 00 00 00 00 00 88 ff ff 48 c1 f8 06 48 c1 e0
0c 48 01 d0 8b 98 ec 0f 00 00 39 98 e8 0f 00 00 48 8d 90 68 01 00 00
48 0f 45 d0 <8b> 04 8a 89 47 24 31 c0 eb 75 41 bc e4 ff ff ff 4d 85 f6
74 19
[   73.438035] RIP  [<ffffffff817792d9>] get_dnode_of_data+0x3a9/0x440
[   73.438035]  RSP <ffff880022737e08>
[   73.438035] CR2: ffff88043368e340
[   73.438035] ---[ end trace e94f7065a7961f54 ]---

WARNING: multiple messages have this Message-ID (diff)
From: Tommi Rantala <tt.rantala@gmail.com>
To: Jaegeuk Kim <jaegeuk@kernel.org>
Cc: Dave Jones <davej@redhat.com>,
	trinity@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>,
	linux-f2fs-devel@lists.sourceforge.net
Subject: Re: f2fs get_dnode_of_data oops
Date: Mon, 8 Sep 2014 18:39:17 +0300	[thread overview]
Message-ID: <CA+ydwtrbsUD81u6FWysDvqNy942KOF9y=mAhxPfRQP8RG0sZuQ@mail.gmail.com> (raw)
In-Reply-To: <20140908042056.GA13863@jaegeuk-mac02.hsd1.ca.comcast.net>

2014-09-08 7:20 GMT+03:00 Jaegeuk Kim <jaegeuk@kernel.org>:
> Hi,
>
> Thank you for the report.
> Could you share a little bit more information about the file accessing
> f2fs_llseek?
> E.g., file size, file offset, file allocation information, or dump of that file.

Hi,

I can reproduce the bug with the following.
-17595150933902 is just something I saw trinity passing to lseek().

#define _GNU_SOURCE

#include <fcntl.h>
#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>

int main(int argc, char **argv)
{
        int fd;

        if (argc < 2) {
                printf("give filename\n");
                return 1;
        }

        fd = open(argv[1], O_RDONLY);
        if (fd < 0) {
                perror("open");
                return 1;
        }

        lseek(fd, -17595150933902LL, SEEK_DATA);

        return 0;
}

{ttrantal@arkki ~}> touch /f2fs/x ; ./a.out /f2fs/x
[   73.437182] BUG: unable to handle kernel paging request at ffff88043368e340
[   73.438035] IP: [<ffffffff817792d9>] get_dnode_of_data+0x3a9/0x440
[   73.438035] PGD 4595067 PUD 0
[   73.438035] Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
[   73.438035] CPU: 0 PID: 2933 Comm: a.out Not tainted 3.17.0-rc4+ #37
[   73.438035] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[   73.438035] task: ffff88003755cac0 ti: ffff880022734000 task.ti:
ffff880022734000
[   73.438035] RIP: 0010:[<ffffffff817792d9>]  [<ffffffff817792d9>]
get_dnode_of_data+0x3a9/0x440
[   73.438035] RSP: 0018:ffff880022737e08  EFLAGS: 00010246
[   73.438035] RAX: ffff880033951000 RBX: 000000000000010b RCX: 00000000fff4f476
[   73.438035] RDX: ffff880033951168 RSI: 000000111932488f RDI: ffff880022737ef0
[   73.438035] RBP: ffff880022737eb8 R08: 0000000000000148 R09: 0000000000000000
[   73.438035] R10: 0000000000008b86 R11: 0000000000000001 R12: fffffffefff4f476
[   73.438035] R13: 0000000000000000 R14: ffffea0000ce5440 R15: ffff880021c28000
[   73.438035] FS:  00007fefc2f08700(0000) GS:ffff88003fa00000(0000)
knlGS:0000000000000000
[   73.438035] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[   73.438035] CR2: ffff88043368e340 CR3: 0000000032d6b000 CR4: 00000000000006f0
[   73.438035] Stack:
[   73.438035]  ffff880022737ef0 ffffffff81228d7c ffff88003d9fe7b0
ffff880022737eb8
[   73.438035]  ffffffff81763164 00000002ffffffff 0000000000000000
00000000fff4f476
[   73.438035]  0000000000000246 ffffffff00000000 ffffffff8259bd47
ffffffff0000010b
[   73.438035] Call Trace:
[   73.438035]  [<ffffffff81228d7c>] ? pagevec_lookup_tag+0x1c/0x30
[   73.438035]  [<ffffffff81763164>] ? __get_first_dirty_index+0x44/0x90
[   73.438035]  [<ffffffff8259bd47>] ? _raw_spin_unlock_irq+0x27/0x40
[   73.438035]  [<ffffffff81189e75>] ? trace_hardirqs_on_caller+0x185/0x220
[   73.438035]  [<ffffffff817636b7>] f2fs_llseek+0xf7/0x420
[   73.438035]  [<ffffffff8127e735>] SyS_lseek+0x65/0xa0
[   73.438035]  [<ffffffff8259caa9>] system_call_fastpath+0x16/0x1b
[   73.438035] Code: ba 00 00 00 00 00 88 ff ff 48 c1 f8 06 48 c1 e0
0c 48 01 d0 8b 98 ec 0f 00 00 39 98 e8 0f 00 00 48 8d 90 68 01 00 00
48 0f 45 d0 <8b> 04 8a 89 47 24 31 c0 eb 75 41 bc e4 ff ff ff 4d 85 f6
74 19
[   73.438035] RIP  [<ffffffff817792d9>] get_dnode_of_data+0x3a9/0x440
[   73.438035]  RSP <ffff880022737e08>
[   73.438035] CR2: ffff88043368e340
[   73.438035] ---[ end trace e94f7065a7961f54 ]---

------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk

  reply	other threads:[~2014-09-08 15:39 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-07 19:14 f2fs get_dnode_of_data oops Tommi Rantala
2014-09-07 19:20 ` Tommi Rantala
2014-09-08  4:20   ` Jaegeuk Kim
2014-09-08 15:39     ` Tommi Rantala [this message]
2014-09-08 15:39       ` Tommi Rantala
2014-09-09  4:41       ` Jaegeuk Kim
2014-09-09  4:41         ` Jaegeuk Kim
2014-09-09  4:41         ` Jaegeuk Kim
2014-09-09  8:10         ` [f2fs-dev] " Chao Yu
2014-09-10  7:23           ` Jaegeuk Kim
2014-09-10  7:23             ` Jaegeuk Kim
2014-09-09 18:24         ` Tommi Rantala
2014-09-09 18:24           ` Tommi Rantala
2014-09-10  7:26           ` Jaegeuk Kim

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='CA+ydwtrbsUD81u6FWysDvqNy942KOF9y=mAhxPfRQP8RG0sZuQ@mail.gmail.com' \
    --to=tt.rantala@gmail.com \
    --cc=cm224.lee@samsung.com \
    --cc=davej@redhat.com \
    --cc=jaegeuk@kernel.org \
    --cc=linux-f2fs-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=trinity@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.