On Fri, Jul 13 2007, Jens Axboe wrote:
> On Fri, Jul 13 2007, Chuck Ebbert wrote:
> > On 07/13/2007 09:40 AM, Patrick McHardy wrote:
> > > I get this oops with current -git:
> > >
> > > [ 3437.018862] PGD 9acab067 PUD 9acaa067 PMD 0
> > > [ 3437.018870] CPU 1
> > > [ 3437.018872] Modules linked in: nfsd exportfs ppdev lp nfs lockd
> > > nfs_acl sunrpc deflate zlib_deflate zlib_inflate twofish twofish_common
> > > camellia serpent blowfish des cbc ecb blkcipher aes xcbc sha256
> > > crypto_null af_key rfcomm l2cap fuse nfnetlink_queue nfnetlink_log
> > > nf_conntrack_netlink nf_nat nf_conntrack_ipv6 nf_conntrack_ipv4
> > > nf_conntrack nfnetlink ip6_tables ip_tables x_tables hangcheck_timer
> > > cpufreq_ondemand powernow_k8 freq_table video backlight thermal
> > > processor fan ide_generic ide_disk ide_cd cdrom generic hci_usb
> > > bluetooth usbhid hid snd_via82xx snd_seq_dummy snd_seq_oss
> > > snd_via82xx_modem snd_ac97_codec ac97_bus snd_seq_midi
> > > snd_seq_midi_event snd_pcm_oss snd_mixer_oss snd_mpu401 snd_pcm
> > > snd_mpu401_uart snd_seq snd_timer snd_rawmidi snd_seq_device parport_pc
> > > snd psmouse parport via82cxxx serio_raw i2c_viapro evdev ehci_hcd sky2
> > > snd_page_alloc uhci_hcd ide_core soundcore pcspkr
> > > [ 3437.018923] Pid: 4432, comm: nfsd Not tainted 2.6.22 #5
> > > [ 3437.018926] RIP: 0010:[<ffffffff81054eff>] [<ffffffff81054eff>]
> > > put_page+0x4/0xb3
> > > [ 3437.018932] RSP: 0018:ffff8101335f5c40 EFLAGS: 00010203
> > > [ 3437.018935] RAX: 0000000000000000 RBX: ffff810133576000 RCX:
> > > ffff8100a0fa5ab8
> > > [ 3437.018938] RDX: ffff810003754428 RSI: ffff8100a0fa5868 RDI:
> > > 0000000000000000
> > > [ 3437.018942] RBP: ffff810003754428 R08: ffff8100a1b7c5d8 R09:
> > > ffff8101335f5c10
> > > [ 3437.018946] R10: ffff810003739a78 R11: ffff81009ec61d40 R12:
> > > ffff810133576570
> > > [ 3437.018950] R13: ffff8100a0fa5868 R14: 0000000000001000 R15:
> > > ffff810133576168
> > > [ 3437.018954] FS: 00002ad8e9fab6f0(0000) GS:ffff81013fc72e40(0000)
> > > knlGS:00000000f7e426c0
> > > [ 3437.018957] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> > > [ 3437.018959] CR2: 0000000000000000 CR3: 000000009a91a000 CR4:
> > > 00000000000006e0
> > > [ 3437.018963] Process nfsd (pid: 4432, threadinfo ffff8101335f4000,
> > > task ffff81013f969040)
> > > [ 3437.018965] Stack: ffff810133576000 ffff810003754428
> > > ffff810133576570 ffffffff8830e001
> > > [ 3437.018973] ffff810003747500 ffff8100a0fa5868 ffff8100a0fa5800
> > > ffff8101335f5d80
> > > [ 3437.018978] 0000000000000000 0000000000000000 ffffffff8122c440
> > > ffffffff810892ac
> > > [ 3437.018982] Call Trace:
> > > [ 3437.019002] [<ffffffff8830e001>] :nfsd:nfsd_splice_actor+0x71/0xea
> > > [ 3437.019010] [<ffffffff810892ac>] __splice_from_pipe+0x58/0x1bf
> > > [ 3437.019023] [<ffffffff8830df90>] :nfsd:nfsd_splice_actor+0x0/0xea
> > > [ 3437.019040] [<ffffffff8830d326>]
> > > :nfsd:nfsd_direct_splice_actor+0x10/0x12
> > > [ 3437.019044] [<ffffffff81088efc>] splice_direct_to_actor+0xfd/0x19d
> > > [ 3437.019058] [<ffffffff8830d316>] :nfsd:nfsd_direct_splice_actor+0x0/0x12
> > > [ 3437.019076] [<ffffffff8830d1f4>] :nfsd:nfsd_vfs_read+0x22b/0x34d
> > > [ 3437.019098] [<ffffffff8830d715>] :nfsd:nfsd_read+0xa7/0xc4
> > > [ 3437.019117] [<ffffffff88314539>] :nfsd:nfsd3_proc_read+0x117/0x15a
> > > [ 3437.019133] [<ffffffff8830924d>] :nfsd:nfsd_dispatch+0xdd/0x19e
> > > [ 3437.019156] [<ffffffff88280194>] :sunrpc:svc_process+0x3f3/0x703
> > > [ 3437.019164] [<ffffffff81212423>] __lock_text_start+0x23/0x7e
> > > [ 3437.019180] [<ffffffff88309817>] :nfsd:nfsd+0x193/0x2b0
> > > [ 3437.019188] [<ffffffff8100a9c8>] child_rip+0xa/0x12
> > > [ 3437.019207] [<ffffffff88309684>] :nfsd:nfsd+0x0/0x2b0
> > > [ 3437.019212] [<ffffffff8100a9be>] child_rip+0x0/0x12
> >
> > Does Jens's patch fix it?
> >
> > http://marc.info/?l=linux-netdev&m=118432481101579&q=raw
>
> Probably not, that's for another bug. I'll try and see if I can take a
> look tonight.
Patrick, does this work?
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
index 8604e35..945b1ce 100644
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
@@ -879,6 +879,7 @@ nfsd_vfs_read(struct svc_rqst *rqstp, struct svc_fh *fhp, struct file *file,
.u.data = rqstp,
};
+ rqstp->rq_resused = 1;
host_err = splice_direct_to_actor(file, &sd, nfsd_direct_splice_actor);
} else {
oldfs = get_fs();
--
Jens Axboe
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]