--- Begin Message ---
- Subject: oops when I mount nfs with -o fsc
- From: fanchaoting <fanchaoting@xxxxxxxxxxxxxx>
- Date: Tue, 10 Apr 2012 16:06:22 +0800
- User-agent: Thunderbird 2.0.0.9 (Windows/20071031)
Hi all : in nfs(2.6.38), i do as following.
#cat /etc/exports
/nfsroot *(rw,no_root_squash,fsid=0,insecure)
#mount –t nfs4 –o fsc localhost:/ /nfsmnt
#sh create_file.sh
wait a while, i find oops.
PID: 4196 TASK: ffff88012365b580 CPU: 0 COMMAND: "sh"
#0 [ffff880139435750] machine_kexec at ffffffff810310db
#1 [ffff8801394357b0] crash_kexec at ffffffff810b63b2
#2 [ffff880139435880] oops_end at ffffffff814dec50
#3 [ffff8801394358b0] die at ffffffff8100f2fb
#4 [ffff8801394358e0] do_trap at ffffffff814de544
#5 [ffff880139435940] do_invalid_op at ffffffff8100ceb5
#6 [ffff8801394359e0] invalid_op at ffffffff8100bf5b
[exception RIP: __nfs_fscache_invalidate_page+121]
#7 [ffff880139435ab0] nfs_invalidate_page at ffffffffa06fff6e [nfs]
#8 [ffff880139435ad0] do_invalidatepage at ffffffff811243d5
#9 [ffff880139435ae0] truncate_inode_page at ffffffff811245f2
#10 [ffff880139435b00] truncate_inode_pages_range at ffffffff811248f0
#11 [ffff880139435bf0] truncate_inode_pages at ffffffff81124c05
#12 [ffff880139435c00] truncate_pagecache at ffffffff81124c57
#13 [ffff880139435c30] nfs_setattr_update_inode at ffffffffa07033ab [nfs]
#14 [ffff880139435c70] nfs4_proc_setattr at ffffffffa071bb45 [nfs]
#15 [ffff880139435cb0] nfs_setattr at ffffffffa07043e0 [nfs]
#16 [ffff880139435cf0] notify_change at ffffffff8118e0c8
#17 [ffff880139435d60] do_truncate at ffffffff81170a84
#18 [ffff880139435dd0] do_filp_open at ffffffff81182ba9
#19 [ffff880139435f20] do_sys_open at ffffffff8116f849
#20 [ffff880139435f70] sys_open at ffffffff8116f960
#21 [ffff880139435f80] tracesys at ffffffff8100b387 (via system_call)
#!/bin/bash
i=0
BEGIN_TIME=$(date +%s)
TIME_OUT=14400 #Set the testTime.
SERVER_FILE="/nfsroot/file"
CLIENT_FILE="/nfsmnt/file"
while :
do
dd if=/dev/zero of="$SERVER_FILE$i" bs=1b count=1 &>/dev/null
cat "$CLIENT_FILE$i" &>/dev/null
echo "good" > "$CLIENT_FILE$i"
rm -fr "$CLIENT_FILE$i"
now=$(date +%s)
if (($now - $BEGIN_TIME > $TIME_OUT))
then
break
fi
let i=i+1
done
echo "This probleam may be fix.\n"
--- End Message ---