From owner-cvs-src-old@FreeBSD.ORG Wed Jan 27 15:22:40 2010 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 59627106566B for ; Wed, 27 Jan 2010 15:22:40 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 467818FC14 for ; Wed, 27 Jan 2010 15:22:40 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id o0RFMeDh067848 for ; Wed, 27 Jan 2010 15:22:40 GMT (envelope-from rmacklem@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id o0RFMd2U067847 for cvs-src-old@freebsd.org; Wed, 27 Jan 2010 15:22:39 GMT (envelope-from rmacklem@repoman.freebsd.org) Message-Id: <201001271522.o0RFMd2U067847@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to rmacklem@repoman.freebsd.org using -f From: Rick Macklem Date: Wed, 27 Jan 2010 15:22:20 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/nfsclient nfs.h nfs_bio.c nfs_nfsiod.c nfs_subs.c nfs_vnops.c nfsnode.h X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Jan 2010 15:22:40 -0000 rmacklem 2010-01-27 15:22:20 UTC FreeBSD src repository Modified files: sys/nfsclient nfs.h nfs_bio.c nfs_nfsiod.c nfs_subs.c nfs_vnops.c nfsnode.h Log: SVN rev 203072 on 2010-01-27 15:22:20Z by rmacklem Fix a race that can occur when nfs nfsiod threads are being created. Without this patch it was possible for a different thread that calls nfs_asyncio() to snitch a newly created nfsiod thread that was intended for another caller of nfs_asyncio(), because the nfs_iod_mtx mutex was unlocked while the new nfsiod thread was created. This patch labels the newly created nfsiod, so that it is not taken by another caller of nfs_asyncio(). This is believed to fix the problem reported on the freebsd-stable email list under the subject: FreeBSD NFS client/Linux NFS server issue. Tested by: to DOT my DOT trociny AT gmail DOT com Reviewed by: jhb MFC after: 2 weeks Revision Changes Path 1.111 +1 -1 src/sys/nfsclient/nfs.h 1.181 +3 -3 src/sys/nfsclient/nfs_bio.c 1.96 +13 -7 src/sys/nfsclient/nfs_nfsiod.c 1.165 +2 -2 src/sys/nfsclient/nfs_subs.c 1.325 +1 -1 src/sys/nfsclient/nfs_vnops.c 1.68 +14 -1 src/sys/nfsclient/nfsnode.h