Re: fscache bug in Kernel 5.6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks David & Daire. 

I have applied the patches from David H and so far so good for the last 60 minutes.

Appreciate the fast replies.

Kind Regards,

Greg

-----Original Message-----
From: David Wysochanski <dwysocha@xxxxxxxxxx> 
Sent: Saturday, 9 May 2020 6:00 PM
To: Greg M <gregm@xxxxxxxxxxxx>
Cc: linux-cachefs@xxxxxxxxxx
Subject: Re:  fscache bug in Kernel 5.6

On Sat, May 9, 2020 at 5:22 AM Greg M <gregm@xxxxxxxxxxxx> wrote:
>
> Hello,
>
> I have just tried to re-use fscache on Gentoo Linux again after a multi-year hiatus. Unfortunately there seems to be a major bug introduced in the 5.6 kernel.
>
> After only a few minutes, my system hangs completely and I have to power cycle it with a nfs mount configured with the "fsc" option:
>
> [ 1207.798737] ------------[ cut here ]------------ [ 1207.798738] 
> kernel BUG at fs/nfs/fscache.c:471!
> [ 1207.798741] invalid opcode: 0000 [#1] SMP PTI [ 1207.798784] CPU: 7 
> PID: 5044 Comm: php-fpm Not tainted 5.6.11-gentoo-x86_64 #1 [ 
> 1207.798877] Hardware name: Supermicro Super Server/X11SCL-F, BIOS 1.3 
> 02/20/2020 [ 1207.798976] RIP: 
> 0010:__nfs_readpages_from_fscache+0x8b/0xa4
> [ 1207.799042] Code: 0d be 01 00 00 00 4c 89 e7 e8 e5 f7 ff ff 41 83 
> fa c3 74 1f 45 85 d2 74 08 41 83 fa 97 75 1a eb 12 48 8b 45 00 48 39 
> c5 74 02 <0f> 0b 83 3b 00 74 08 0f 0b 41 ba 01 00 00 00 5b 44 89 d0 5d 
> 41 5c [ 1207.799316] RSP: 0018:ffffa0d806fc3b40 EFLAGS: 00010283 [ 
> 1207.799378] RAX: ffffc9ea9aef0b48 RBX: ffffa0d806fc3b6c RCX: 
> ffffc9ea93a57fc0 [ 1207.799471] RDX: 0000000000000004 RSI: 
> 0000000000000001 RDI: ffff95041bb55a90 [ 1207.799564] RBP: 
> ffffa0d806fc3cf8 R08: 000000001b9f7601 R09: ffffa0d806fc3cf8 [ 
> 1207.799656] R10: 0000000000000000 R11: 00000000000003fa R12: 
> ffff95041bb55a90 [ 1207.799749] R13: 0000000000000004 R14: 
> ffffa0d806fc3b80 R15: 0000000000000004 [ 1207.799841] FS:  
> 00007fab7a542980(0000) GS:ffff9506cebc0000(0000) 
> knlGS:0000000000000000 [ 1207.799947] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1207.800019] CR2: 00007fab698e5000 CR3: 000000083a1c8003 CR4: 00000000003606e0 [ 1207.800111] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 1207.800204] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 1207.800295] Call Trace:
> [ 1207.800318]  nfs_readpages+0x108/0x17b [ 1207.800355]  ? 
> xas_load+0x13/0x4a [ 1207.800387]  ? xas_find+0x6b/0x101 [ 
> 1207.800419]  read_pages+0x6c/0x115 [ 1207.800452]  
> __do_page_cache_readahead+0xb1/0x180
> [ 1207.800507]  ondemand_readahead+0x1c2/0x1d4 [ 1207.800553]  
> generic_file_read_iter+0x1ed/0x59f
> [ 1207.800605]  nfs_file_read+0x54/0x7c [ 1207.800641]  
> new_sync_read+0x77/0xaa [ 1207.800676]  vfs_read+0x95/0xca [ 
> 1207.800707]  ksys_read+0x71/0xba [ 1207.800737]  
> do_syscall_64+0x48/0x55 [ 1207.800773]  
> entry_SYSCALL_64_after_hwframe+0x44/0xa9
> [ 1207.800832] RIP: 0033:0x7fab7c17feae [ 1207.800867] Code: c0 e9 c6 
> fe ff ff 50 48 8d 3d 36 b2 09 00 e8 79 e8 01 00 66 0f 1f 84 00 00 00 
> 00 00 64 8b 04 25 18 00 00 00 85 c0 75 14 0f 05 <48> 3d 00 f0 ff ff 77 
> 5a c3 66 0f 1f 84 00 00 00 00 00 48 83 ec 28 [ 1207.801141] RSP: 
> 002b:00007ffe9034a7e8 EFLAGS: 00000246 ORIG_RAX: 0000000000000000 [ 
> 1207.801240] RAX: ffffffffffffffda RBX: 00007fab7a352540 RCX: 
> 00007fab7c17feae [ 1207.801332] RDX: 0000000000002000 RSI: 
> 00007fab696c8000 RDI: 0000000000000008 [ 1207.801425] RBP: 
> 00007fab696c8000 R08: 0000000000002000 R09: 00000000000c8000 [ 
> 1207.801517] R10: 0000000000000300 R11: 0000000000000246 R12: 
> 00007fab7a352540 [ 1207.801610] R13: 0000000000002000 R14: 
> 00007fab7a2839c0 R15: 0000000000000052 [ 1207.801702] Modules linked 
> in: ip6table_filter binfmt_misc ahci x86_pkg_temp_thermal input_leds 
> led_class joydev libahci coretemp i2c_i801 libata efivars pcspkr msdos 
> fuse [ 1207.801933] ---[ end trace 5c56244d22bfbc82 ]--- [ 
> 1207.801975] RIP: 0010:__nfs_readpages_from_fscache+0x8b/0xa4
> [ 1207.805516] Code: 0d be 01 00 00 00 4c 89 e7 e8 e5 f7 ff ff 41 83 
> fa c3 74 1f 45 85 d2 74 08 41 83 fa 97 75 1a eb 12 48 8b 45 00 48 39 
> c5 74 02 <0f> 0b 83 3b 00 74 08 0f 0b 41 ba 01 00 00 00 5b 44 89 d0 5d 
> 41 5c [ 1207.813103] RSP: 0018:ffffa0d806fc3b40 EFLAGS: 00010283 [ 
> 1207.813104] RAX: ffffc9ea9aef0b48 RBX: ffffa0d806fc3b6c RCX: 
> ffffc9ea93a57fc0 [ 1207.813104] RDX: 0000000000000004 RSI: 
> 0000000000000001 RDI: ffff95041bb55a90 [ 1207.813105] RBP: 
> ffffa0d806fc3cf8 R08: 000000001b9f7601 R09: ffffa0d806fc3cf8 [ 
> 1207.813105] R10: 0000000000000000 R11: 00000000000003fa R12: 
> ffff95041bb55a90 [ 1207.813105] R13: 0000000000000004 R14: 
> ffffa0d806fc3b80 R15: 0000000000000004 [ 1207.813106] FS:  
> 00007fab7a542980(0000) GS:ffff9506cebc0000(0000) 
> knlGS:0000000000000000 [ 1207.813106] CS:  0010 DS: 0000 ES: 0000 CR0: 
> 0000000080050033 [ 1207.813107] CR2: 00007fab698e5000 CR3: 
> 000000083a1c8003 CR4: 00000000003606e0 [ 1207.813108] DR0: 
> 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 
> 1207.813108] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 
> 0000000000000400
>
>
>
> This looks to have been introduced possibly with this commit 
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commi
> t/?h=v5.6.11&id=b0ea262a2347eac8522de5eef24ccd7a90dad7d4
>
> Happy to provide more info as required as this effectively makes 
> fscache unusable on Linux 5.6
>

HEAD is now at aabff12c5db1... Linux 5.6.11 fs/nfs/fscache.c
462     if (*nr_pages < npages)
463         nfs_add_fscache_stats(inode, NFSIOS_FSCACHE_PAGES_READ_OK,
464                       npages);
465     if (*nr_pages > 0)
466         nfs_add_fscache_stats(inode, NFSIOS_FSCACHE_PAGES_READ_FAIL,
467                       *nr_pages);
468
469     switch (ret) {
470     case 0: /* read submitted to the cache for all pages */
471-->        BUG_ON(!list_empty(pages));
472         BUG_ON(*nr_pages != 0);
473         dfprintk(FSCACHE,
474              "NFS: nfs_getpages_from_fscache: submitted\n");
475
476         return ret;
477

This is a known issue with a fix queued up:
[PATCH 1/5] cachefiles: Fix corruption of the return value in
cachefiles_read_or_alloc_pages()
https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit/?h=fscache-fixes&id=c5f9d9db83d9f84d2b4aae5a1b29d9b582ccff2f


> Regards,
>
> Greg
> --
> Linux-cachefs mailing list
> Linux-cachefs@xxxxxxxxxx
> https://www.redhat.com/mailman/listinfo/linux-cachefs
>


--
Linux-cachefs mailing list
Linux-cachefs@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/linux-cachefs




[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]
  Powered by Linux