OSDN Git Service
(root)
/
uclinux-h8
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
560aef7
)
NFSv4: Fix a typo in _nfs4_do_open_reclaim
author
Trond Myklebust
<Trond.Myklebust@netapp.com>
Mon, 27 Aug 2007 13:57:46 +0000
(09:57 -0400)
committer
Trond Myklebust
<Trond.Myklebust@netapp.com>
Sat, 1 Sep 2007 14:14:37 +0000
(10:14 -0400)
This should fix the following Oops reported by Jeff Garzik:
kernel BUG at fs/nfs/nfs4xdr.c:1040!
invalid opcode: 0000 [1] SMP
CPU 0
Modules linked in: nfs lockd sunrpc af_packet
ipv6 cpufreq_ondemand acpi_cpufreq battery floppy nvram sg snd_hda_intel
ata_generic snd_pcm_oss snd_mixer_oss snd_pcm i2c_i801 snd_page_alloc e1000
firewire_ohci ata_piix i2c_core sr_mod cdrom sata_sil ahci libata sd_mod
scsi_mod ext3 jbd ehci_hcd uhci_hcd
Pid: 16353, comm: 10.10.10.1-recl Not tainted 2.6.23-rc3 #1
RIP: 0010:[<
ffffffff88240980
>] [<
ffffffff88240980
>] :nfs:encode_open+0x1c0/0x330
RSP: 0018:
ffff8100467c5c60
EFLAGS:
00010202
RAX:
ffff81000f89b8b8
RBX:
00000000697a6f6d
RCX:
ffff81000f89b8b8
RDX:
0000000000000004
RSI:
0000000000000004
RDI:
ffff8100467c5c80
RBP:
ffff8100467c5c80
R08:
ffff81000f89bc30
R09:
ffff81000f89b83f
R10:
0000000000000001
R11:
ffffffff881e79e0
R12:
ffff81003cbd1808
R13:
ffff81000f89b860
R14:
ffff81005fc984e0
R15:
ffffffff88240af0
FS:
0000000000000000
(0000) GS:
ffffffff8052a000
(0000) knlGS:
0000000000000000
CS: 0010 DS: 0018 ES: 0018 CR0:
000000008005003b
CR2:
00002adb9e51a030
CR3:
000000007ea7e000
CR4:
00000000000006e0
DR0:
0000000000000000
DR1:
0000000000000000
DR2:
0000000000000000
DR3:
0000000000000000
DR6:
00000000ffff0ff0
DR7:
0000000000000400
Process 10.10.10.1-recl (pid: 16353, threadinfo
ffff8100467c4000
, task
ffff8100038ce780
)
Stack:
ffff81004aeb6a40
ffff81003cbd1808
ffff81003cbd1808
ffffffff88240b5d
ffff81000f89b8bc
ffff81005fc984e8
ffff81000f89bc30
ffff81005fc984e8
0000000300000000
0000000000000000
0000000000000000
ffff81003cbd1800
Call Trace:
[<
ffffffff88240b5d
>] :nfs:nfs4_xdr_enc_open_noattr+0x6d/0x90
[<
ffffffff881e74b7
>] :sunrpc:rpcauth_wrap_req+0x97/0xf0
[<
ffffffff88240af0
>] :nfs:nfs4_xdr_enc_open_noattr+0x0/0x90
[<
ffffffff881df57a
>] :sunrpc:call_transmit+0x18a/0x290
[<
ffffffff881e5e7b
>] :sunrpc:__rpc_execute+0x6b/0x290
[<
ffffffff881dff76
>] :sunrpc:rpc_do_run_task+0x76/0xd0
[<
ffffffff882373f6
>] :nfs:_nfs4_proc_open+0x76/0x230
[<
ffffffff88237a2e
>] :nfs:nfs4_open_recover_helper+0x5e/0xc0
[<
ffffffff88237b74
>] :nfs:nfs4_open_recover+0xe4/0x120
[<
ffffffff88238e14
>] :nfs:nfs4_open_reclaim+0xa4/0xf0
[<
ffffffff882413c5
>] :nfs:nfs4_reclaim_open_state+0x55/0x1b0
[<
ffffffff882417ea
>] :nfs:reclaimer+0x2ca/0x390
[<
ffffffff88241520
>] :nfs:reclaimer+0x0/0x390
[<
ffffffff8024e59b
>] kthread+0x4b/0x80
[<
ffffffff8020cad8
>] child_rip+0xa/0x12
[<
ffffffff8024e550
>] kthread+0x0/0x80
[<
ffffffff8020cace
>] child_rip+0x0/0x12
Code: 0f 0b eb fe 48 89 ef c7 00 00 00 00 02 be 08 00 00 00 e8 79
RIP [<
ffffffff88240980
>] :nfs:encode_open+0x1c0/0x330
RSP <
ffff8100467c5c60
>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/nfs4proc.c
patch
|
blob
|
history
diff --git
a/fs/nfs/nfs4proc.c
b/fs/nfs/nfs4proc.c
index
62b3ae2
..
036d862
100644
(file)
--- a/
fs/nfs/nfs4proc.c
+++ b/
fs/nfs/nfs4proc.c
@@
-646,7
+646,7
@@
static int _nfs4_do_open_reclaim(struct nfs_open_context *ctx, struct nfs4_state
rcu_read_lock();
delegation = rcu_dereference(NFS_I(state->inode)->delegation);
if (delegation != NULL && (delegation->flags & NFS_DELEGATION_NEED_RECLAIM) != 0)
- delegation_type = delegation->
flags
;
+ delegation_type = delegation->
type
;
rcu_read_unlock();
opendata->o_arg.u.delegation_type = delegation_type;
status = nfs4_open_recover(opendata, state);