From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tommi Rantala Subject: Re: f2fs get_dnode_of_data oops Date: Mon, 8 Sep 2014 18:39:17 +0300 Message-ID: References: <20140908042056.GA13863@jaegeuk-mac02.hsd1.ca.comcast.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from sog-mx-3.v43.ch3.sourceforge.com ([172.29.43.193] helo=mx.sourceforge.net) by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1XR12L-0002Ec-8I for linux-f2fs-devel@lists.sourceforge.net; Mon, 08 Sep 2014 15:39:25 +0000 Received: from mail-we0-f179.google.com ([74.125.82.179]) by sog-mx-3.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1XR12K-00039b-5U for linux-f2fs-devel@lists.sourceforge.net; Mon, 08 Sep 2014 15:39:25 +0000 Received: by mail-we0-f179.google.com with SMTP id u56so1646153wes.24 for ; Mon, 08 Sep 2014 08:39:17 -0700 (PDT) In-Reply-To: <20140908042056.GA13863@jaegeuk-mac02.hsd1.ca.comcast.net> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linux-f2fs-devel-bounces@lists.sourceforge.net To: Jaegeuk Kim Cc: Dave Jones , trinity@vger.kernel.org, LKML , linux-f2fs-devel@lists.sourceforge.net 2014-09-08 7:20 GMT+03:00 Jaegeuk Kim : > 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 #include #include #include #include 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: [] 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:[] [] 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] [] ? pagevec_lookup_tag+0x1c/0x30 [ 73.438035] [] ? __get_first_dirty_index+0x44/0x90 [ 73.438035] [] ? _raw_spin_unlock_irq+0x27/0x40 [ 73.438035] [] ? trace_hardirqs_on_caller+0x185/0x220 [ 73.438035] [] f2fs_llseek+0xf7/0x420 [ 73.438035] [] SyS_lseek+0x65/0xa0 [ 73.438035] [] 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 [] get_dnode_of_data+0x3a9/0x440 [ 73.438035] RSP [ 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