From owner-freebsd-current@FreeBSD.ORG Thu Jan 31 13:29:30 2013 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 53FC68CF for ; Thu, 31 Jan 2013 13:29:30 +0000 (UTC) (envelope-from pluknet@gmail.com) Received: from mail-qc0-f173.google.com (mail-qc0-f173.google.com [209.85.216.173]) by mx1.freebsd.org (Postfix) with ESMTP id 1D3CD759 for ; Thu, 31 Jan 2013 13:29:29 +0000 (UTC) Received: by mail-qc0-f173.google.com with SMTP id b12so1246200qca.18 for ; Thu, 31 Jan 2013 05:29:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:date:message-id:subject:from:to :content-type; bh=1ACWtYK/T05iD0vbu+r+mcHacQPWwFz5zXh2pvFH3DM=; b=AfidqAowsiQNqwEIuQ9mk/ka2lgDfIEs0GLcCNLZNosXIVgxfquiZ4M+e/zxBFsMtU Tg/rixFOZGbHLLQOy+KmsynAssw639Rh5YWcBRsusCMvp4his4GUzU2MFDeAvn+Dr99o 4M8Eq0IO3OTMwimpNfhlCJhjVaReALUSdLIhNHN0TfWMnKbLMtHXPm2yugCJD2KgYpRQ iwCqnW1AeAy52F2GJhPOhm7GQW5/e/ZjpsYfmykO7BJcB4kFh+TTjb8Chhc3zf6j2bTD kf9f3WZu0nGGrk5iGfWVwwxCgZWXZKPYQnUbtXqYVbkhVjCNlUDw8mRvj6/W5mccLoCl oBqg== MIME-Version: 1.0 X-Received: by 10.49.127.199 with SMTP id ni7mr10186899qeb.17.1359638969353; Thu, 31 Jan 2013 05:29:29 -0800 (PST) Received: by 10.229.78.96 with HTTP; Thu, 31 Jan 2013 05:29:29 -0800 (PST) Date: Thu, 31 Jan 2013 16:29:29 +0300 Message-ID: Subject: panic: LK_RETRY set with incompatible flags From: Sergey Kandaurov To: FreeBSD Current Content-Type: text/plain; charset=ISO-8859-1 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 Jan 2013 13:29:30 -0000 Hi. Got this assertion on idle NFS server while `ls -la /.zfs/shares/' issued on NFS client. kern/vfs_vnops.c:_vn_lock() KASSERT((flags & LK_RETRY) == 0 || error == 0, ("LK_RETRY set with incompatible flags (0x%x) or an error occured (%d)", panic: LK_RETRY set with incompatible flags (0x200400) or an error occured (11) What does that mean and how is it possible? As you can see, both parts of assertion failed. 11 is EDEADLK 0x200400: LK_RETRY & LK_UPGRADE Tracing pid 2943 tid 101532 td 0xfffffe004f5b7000 kdb_enter() at kdb_enter+0x3e/frame 0xffffff848e45ef50 vpanic() at vpanic+0x147/frame 0xffffff848e45ef90 kassert_panic() at kassert_panic+0x136/frame 0xffffff848e45f000 _vn_lock() at _vn_lock+0x70/frame 0xffffff848e45f070 zfs_lookup() at zfs_lookup+0x392/frame 0xffffff848e45f100 zfs_freebsd_lookup() at zfs_freebsd_lookup+0x6d/frame 0xffffff848e45f240 VOP_CACHEDLOOKUP_APV() at VOP_CACHEDLOOKUP_APV+0xc2/frame 0xffffff848e45f260 vfs_cache_lookup() at vfs_cache_lookup+0xcf/frame 0xffffff848e45f2b0 VOP_LOOKUP_APV() at VOP_LOOKUP_APV+0xc2/frame 0xffffff848e45f2d0 lookup() at lookup+0x548/frame 0xffffff848e45f350 nfsvno_namei() at nfsvno_namei+0x1a5/frame 0xffffff848e45f400 nfsrvd_lookup() at nfsrvd_lookup+0x13a/frame 0xffffff848e45f6b0 nfsrvd_dorpc() at nfsrvd_dorpc+0xca5/frame 0xffffff848e45f8a0 nfssvc_program() at nfssvc_program+0x482/frame 0xffffff848e45fa00 svc_run_internal() at svc_run_internal+0x1e9/frame 0xffffff848e45fba0 svc_thread_start() at svc_thread_start+0xb/frame 0xffffff848e45fbb0 fork_exit() at fork_exit+0x84/frame 0xffffff848e45fbf0 fork_trampoline() at fork_trampoline+0xe/frame 0xffffff848e45fbf0 --- trap 0xc, rip = 0x800883e9a, rsp = 0x7fffffffd488, rbp = 0x7fffffffd730 --- db> show lockedvnods Locked vnodes 0xfffffe02e21b11d8: tag zfs, type VDIR usecount 4, writecount 0, refcount 4 mountedhere 0 flags (VI_ACTIVE) v_object 0xfffffe02d9f2eb40 ref 0 pages 0 lock type zfs: EXCL by thread 0xfffffe004f5b7000 (pid 2943, nfsd, tid 101532) -- wbr, pluknet