[Linux-cachefs] 'bad page state' error

Rob Bos rbos at sfu.ca
Sun Jun 16 20:51:48 UTC 2013


Hi,

I have a CIFS share mounted with the options

//xxxx/yyyy     /mnt/yyyy cifs 
gid=zzzz,file_mode=0440,dir_mode=0550,credentials=/home/rbos/sdp.txt,sec=ntlmssp,ro,fsc,user,defaults 
0 0

When I copy files from the mount, cachefilesd kicks in and copies pages 
to /var/cache/fscache, and I'm able to copy some files out to warm the 
cache, then copy them out again, without an error.

However, after a while, I start getting errors like these[1], like when 
doing a cp -a on a large folder or simply waiting long enough while 
aria2c runs (I'm seeding some torrents to Windows desktops). On my first 
attempt, after a while, the VM hardlocked (I haven't captured a kernel 
error of that event as I don't have console access) but I haven't tried 
to reproduce that.

RHEL6, kernel 2.6.32-358.6.2.el6, recompiled to enable CIFS_FSCACHE.  
SELinux is disabled.

What debugging steps should I take? Or is there some obvious solution?


[1]

BUG: Bad page state in process aria2c  pfn:78078
page:ffffea0001a41a40 flags:0020000000001000 count:0 mapcount:0 
mapping:(null) index:9 (Tainted: G    B      ---------------  T)
Pid: 2975, comm: aria2c Tainted: G    B      ---------------  T 
2.6.32-358.6.2.el6.rbos.1.x86_64 #1
Call Trace:
  [<ffffffff81128eb7>] ? bad_page+0x107/0x160
  [<ffffffff8112c639>] ? free_hot_cold_page+0x1c9/0x220
  [<ffffffff81175650>] ? mem_cgroup_cache_charge+0xc0/0xd0
  [<ffffffff8112c74f>] ? free_hot_page+0x2f/0x60
  [<ffffffff8112f36e>] ? __put_single_page+0x1e/0x30
  [<ffffffff8112f4f5>] ? put_page+0x25/0x40
  [<ffffffffa02c1cf8>] ? cifs_readpages+0x2a8/0x6e0 [cifs]
  [<ffffffff8112e9a5>] ? __do_page_cache_readahead+0x185/0x210
  [<ffffffff8112ea51>] ? ra_submit+0x21/0x30
  [<ffffffff8112edc5>] ? ondemand_readahead+0x115/0x240
  [<ffffffff8112fd10>] ? __lru_cache_add+0x40/0x90
  [<ffffffff8112ef80>] ? page_cache_async_readahead+0x90/0xc0
  [<ffffffff81143af7>] ? handle_pte_fault+0x487/0xb50
  [<ffffffff8111bab3>] ? generic_file_aio_read+0x503/0x700
  [<ffffffff81180eba>] ? do_sync_read+0xfa/0x140
  [<ffffffff81096ca0>] ? autoremove_wake_function+0x0/0x40
  [<ffffffff81148dfb>] ? __vm_enough_memory+0x3b/0x190
  [<ffffffff8121bc36>] ? security_file_permission+0x16/0x20
  [<ffffffff811817a5>] ? vfs_read+0xb5/0x1a0
  [<ffffffff811818e1>] ? sys_read+0x51/0x90
  [<ffffffff8100b072>] ? system_call_fastpath+0x16/0x1b




More information about the Linux-cachefs mailing list