[Linux-cachefs] cachefiles_read_or_alloc_page crashes

Derek Siu golf1123 at gmail.com
Sun Dec 10 08:51:09 UTC 2006


Hi,

Right after I copy a bunch of files from the NFS server to the client,
I tried to diff the local files against the files on the server (I
suppose that it should be "diff"ing the local files against the files
in the cache instead). It then crashes on
cachefile_read_or_alloc_page.

Here are the error messages:

Dec 10 16:41:37 GD008 kernel: BUG: unable to handle kernel NULL
pointer dereference at virtual address 0000002c
Dec 10 16:41:37 GD008 kernel:  printing eip:
Dec 10 16:41:37 GD008 kernel: e006ee6a
Dec 10 16:41:37 GD008 kernel: *pde = 17948067
Dec 10 16:41:37 GD008 kernel: Oops: 0000 [#1]
Dec 10 16:41:37 GD008 kernel: Modules linked in: server test
snd_intel8x0 snd_ac97_codec snd_ac97_bus snd_seq_dummy snd_seq_oss
snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss
snd_pcm ehci_hcd uhci_hcd snd_timer snd i2c_i810 soundcore i2c_i801
i2c_algo_bit snd_page_alloc i2c_core 8139too e1000 pcnet32 b44 tg3
e100 3c59x mii ext3 jbd nfs cachefiles fscache lockd nfs_acl sunrpc
Dec 10 16:41:37 GD008 kernel: CPU:    0
Dec 10 16:41:37 GD008 kernel: EIP:    0060:[<e006ee6a>]    Not tainted VLI
Dec 10 16:41:37 GD008 kernel: EFLAGS: 00010246   (2.6.17-rc6 #146)
Dec 10 16:41:37 GD008 kernel: EIP is at
cachefiles_read_or_alloc_page+0x3cb/0x483 [cachefiles]
Dec 10 16:41:37 GD008 kernel: eax: 00000000   ebx: dd10f180   ecx:
dd10db00   edx: c10c0480
Dec 10 16:41:37 GD008 kernel: esi: d34758c0   edi: dd10f180   ebp:
c10c0480   esp: d850bd40
Dec 10 16:41:37 GD008 kernel: ds: 007b   es: 007b   ss: 0068
Dec 10 16:41:37 GD008 kernel: Process diff (pid: 1719,
threadinfo=d850b000 task=df771a90)
Dec 10 16:41:37 GD008 kernel: Stack: 00000164 00000000 e013d1a0
e0147cc9 c12abb00 dd10f180 d0b56080 d850bda0
Dec 10 16:41:37 GD008 kernel:        dd1ad120 00000000 00000000
00000000 c10c0480 d0caf174 d0caf140 00000000
Dec 10 16:41:37 GD008 kernel:        c6020e40 dd1ad100 00000000
e0148ccf 00000001 00000001 dd1ad030 00000164
Dec 10 16:41:37 GD008 kernel: Call Trace:
Dec 10 16:41:37 GD008 kernel:  <e0147cc9>
nfs_readpage_from_fscache_complete+0x0/0x36 [nfs]  <e0148ccf>
nfs_wait_on_requests_locked+0x90/0xa2 [nfs]
Dec 10 16:41:37 GD008 kernel:  <e0028888>
__fscache_read_or_alloc_page+0xa8/0xe6 [fscache]  <e0147cc9>
nfs_readpage_from_fscache_complete+0x0/0x36 [nfs]
Dec 10 16:41:37 GD008 kernel:  <e0148310> nfs_readpage+0x128/0x604
[nfs]  <c0138e94> add_to_page_cache_lru+0xd/0x20
Dec 10 16:41:37 GD008 kernel:  <c0139140>
do_generic_mapping_read+0x201/0x400  <c0139ac7>
__generic_file_aio_read+0x148/0x18f
Dec 10 16:41:37 GD008 kernel:  <c0138a81> file_read_actor+0x0/0xe0
<c0139b49> generic_file_aio_read+0x3b/0x42
Dec 10 16:41:37 GD008 kernel:  <c0152317> do_sync_read+0xb8/0xf3
<c0129383> autoremove_wake_function+0x0/0x2d
Dec 10 16:41:37 GD008 kernel:  <c015225f> do_sync_read+0x0/0xf3
<c0152bde> vfs_read+0x9f/0x13e
Dec 10 16:41:37 GD008 kernel:  <c0152f45> sys_read+0x3c/0x63
<c01029ef> sysenter_past_esp+0x54/0x75
Dec 10 16:41:37 GD008 kernel: Code: e8 7f 73 0a e0 31 c9 8b 54 24 7c
8b 44 24 10 ff 54 24 0c eb 04 85 ed 74 07 89 e8 e8 39 02 0d e0 8b 5c
24 14 8b 44 24 24 8b 4b 18 <8b> 50 2c 8b 41 28 8b 58 2c 85 db 74 05 8b
41 34 ff d3 8b 44 24
Dec 10 16:41:37 GD008 kernel: EIP: [<e006ee6a>]
cachefiles_read_or_alloc_page+0x3cb/0x483 [cachefiles] SS:ESP
0068:d850bd40

Derek




More information about the Linux-cachefs mailing list