Kernel blocks during rsync to NFS-mounted directory exported from Sun OS machine

From Linux NFS

Revision as of 19:46, 22 October 2010 by Amschuma (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

About

  • Kernel version: 2.6.27.29-170.2.79.fc10.x86_64
  • bug 14053
  • Reported by: Matthew Breeze (August 25, 2009)
  • Fixed by: Trond Myklebust (August 28, 2009)

Symptoms

  • Fedora 10 machine and a Sun OS machine.
  • The Sun OS machine exports a ZFS filesystem (pool) to the Fedora 10 machine, which mounts it using a NFS v4 mount
    • /etc/fstab: melon:/melon1 /melon1 nfs4 rw,rsize=8192,wsize=8192,timeo=14,intr
  • Kernel panic when reading a large file (3 GB) through NFS
  • Kernel panic when rsyncing to the mounted directory
  • No ill effects on the Sun OS machine

Cause

  • Need to retransmit the entire request when xprt_transmit fails with a network error.

Resolution

commit 2574cc9f4ffc6c681c9177111357efe5b76f0e36
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Fri Aug 28 11:12:12 2009 -0400

    SUNRPC: Fix rpc_task_force_reencode
    
    This patch fixes the bug that was reported in
      http://bugzilla.kernel.org/show_bug.cgi?id=14053
    
    If we're in the case where we need to force a reencode and then resend of
    the RPC request, due to xprt_transmit failing with a networking error, then
    we _must_ retransmit the entire request.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Cc: stable@kernel.org
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Personal tools