From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qv1-f41.google.com (mail-qv1-f41.google.com [209.85.219.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 733CA20E6E2 for ; Fri, 17 Jul 2026 17:28:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.41 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784309306; cv=none; b=fP2IKaj0o75lvBh6RtiSSwOWMWqz16qnHwsrOh+ULX57bPv3wLK16GWD9plmLV/agP6o1A/ock8JVDWuWGNFj1/72YZxghlNihWvdhh90uU3GRtC0vUQ7fFSINRtOJ+2Mieptq8HzSKG3GFPwrNmqNU19LvESUFv8Ce5yh0v+e8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784309306; c=relaxed/simple; bh=h9fj7i8AH506HFL/gfEtWIscVlLumPioFQmf4b+vdGc=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=ez6lKCvPfU+1+QkhErJfDUFpP/myLDOzoA9nAfrRGtoKIhHmrDFMJ018bFszoWwpLEAbIZT4M4LrdDBBAxek4+v4X/x37R1PaUZii7Nb6qyr5PB6ka7m/KUAwrUSzS9OKx8rR/yFgmeY5ztJv6SZAQdcXDNvZNVKVRs7TY3Xsw4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=r7xZOLG7; arc=none smtp.client-ip=209.85.219.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="r7xZOLG7" Received: by mail-qv1-f41.google.com with SMTP id 6a1803df08f44-902f92b8504so74218806d6.2 for ; Fri, 17 Jul 2026 10:28:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784309304; x=1784914104; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=Kk0zvlROK4CGetKUdREFFy369z04aN1QAFj/lbaZkpI=; b=r7xZOLG7koitruLOmY7/1AI9nwVRrdJ5fpwl7pRjH4Z8906vcbtspZMhtLZ3mzhk9z 82Z72OsdIBhXY0LKi46Pb8auAf4hjJT00fJ4s4IDcuzkZb8hm7fbYMC439aicxHmRJ84 7VUiiAxxb5cCpzdypxvXZAiiZyzRNsbSLt6QmenNGGLon2Ij0NKCEGeBNg87xuApo88O egED9neqALBv9DD2yotR/Q81+DnYfidH2M990Ien9ijn15uARI+xco6F8dOryAOfItYH EOmvk/u25EJxnhvqSW3b+PnSAfQdFCtADwEES75UndyyzQ9cz1MB7aabOeEvhEXc6jJO auBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784309304; x=1784914104; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=Kk0zvlROK4CGetKUdREFFy369z04aN1QAFj/lbaZkpI=; b=WKgLPaZbM0SO+asL1JuAQWZLsT9aFB+3ARLixLWKBWRDJuDrE2plmE6pycVdyt90cC YdeaG8R4w/u9hqgNpvelW5k8qU/2u/sYAQYN4CZZp+r0UJf9nX6Gxg5UBd7HsS0pET2l eRJw6yvBW5Lwr8jo00xfJ04Gy0iefCwfWgEdn1NHGd7yRJtNsDwK1d8E4EZC+tBzxthZ I6vSRFgT5IygCTrTZFh1F6KlFtRXcc65Va01nw7CYkqjtIYvgUUun/0LYUKwb+yfAFky A7l/pb6Sv70zpb3A3Wn8cM4YySNyZVh8ohg0a0NCaqhtZmUD+2Eymln7d5wK5AKUAuBO B/1A== X-Gm-Message-State: AOJu0YxOjSg1+vkSKYh1aUsqmNMSIsX+g+2GudIDsgz0Z1UMrxYPH41r rTKeTn6MTag+VFmmyoSz+pPHHSCT+O23VIT85srkCpFxe8W9BHtmy2+1 X-Gm-Gg: AfdE7ckNMquJJV3F/vi/DTP52zgoZ2Jk9SlsK3WXe9cHMRyOP5mBKJYFnbrazLsLNYW IP5Pw/cETuuX32hxvFo1I35lnZCtnmzoUenV3dexXu2ZOPoAuTNHOp7kbyn2oWY6ISmtKZpWajt 9jNbymKTE4yrEKhaEtwhZrr2vCYHNYU6DiktBQ3eV9ABGKPgX8IjAx0QrxZ7yDtNfklpgFCsVy2 xTWwZD/lqayrzN+TKFeNGkD75qrREmJO63ce3QwK2LXECvWg4vHLCgn7FmgdcMcbVWhmKvt7jyE nFxIsQwI8xVkFealqPddGNEY8kjAZujnztaSkw431wOfklPueyLyrKzv8ZhKH2CdO5EuQ4t+Wow SbM76ZT1CLuZKyJ2xqDUAJOtoa/q+edoDC8T0l0BxlYMWTLNLuc4Mxil9Ho4U2XEJkBBjaxHr2F UlHcpK0qTnZwU+C7Dz5uraRwVRsFpI1baXMxOvewq+Gw== X-Received: by 2002:a05:6214:212f:b0:8f3:ba0f:e7de with SMTP id 6a1803df08f44-907783541a3mr39136046d6.11.1784309304275; Fri, 17 Jul 2026 10:28:24 -0700 (PDT) Received: from i4-l-hqh5357-03.ad.psu.edu ([130.203.139.71]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-907786f9de0sm21502666d6.40.2026.07.17.10.28.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jul 2026 10:28:24 -0700 (PDT) From: Shuangpeng Bai To: linux-nfs@vger.kernel.org Cc: linux-kernel@vger.kernel.org, stable@vger.kernel.org, cel@kernel.org, jlayton@kernel.org, neil@brown.name, okorniev@redhat.com, Dai.Ngo@oracle.com, tom@talpey.com, trondmy@kernel.org, anna@kernel.org, Shuangpeng Bai Subject: [PATCH] lockd: fix NULL dereference on lockowner allocation failure Date: Fri, 17 Jul 2026 13:28:09 -0400 Message-ID: <20260717172809.1591290-1-shuangpeng.kernel@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit nlmclnt_locks_init_private() installs NLM file lock operations even when nlmclnt_find_lockowner() fails to allocate a lockowner. nlmclnt_proc() then returns -ENOMEM, but the VFS still tears down the partially initialized file_lock and calls locks_release_private(). That invokes nlmclnt_locks_release_private(), which dereferences fl->fl_u.nfs_fl.owner and crashes because the owner was never installed. Clear fl_ops before attempting to initialize the NLM private state, and install the NLM lock operations only after a lockowner has been allocated successfully. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Cc: stable@vger.kernel.org Signed-off-by: Shuangpeng Bai --- fs/lockd/clntproc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fs/lockd/clntproc.c b/fs/lockd/clntproc.c index f06faf577cea..f8018bfe9c64 100644 --- a/fs/lockd/clntproc.c +++ b/fs/lockd/clntproc.c @@ -487,9 +487,12 @@ static const struct file_lock_operations nlmclnt_lock_ops = { static void nlmclnt_locks_init_private(struct file_lock *fl, struct nlm_host *host) { fl->fl_u.nfs_fl.state = 0; + fl->fl_ops = NULL; fl->fl_u.nfs_fl.owner = nlmclnt_find_lockowner(host, fl->c.flc_owner); INIT_LIST_HEAD(&fl->fl_u.nfs_fl.list); + if (!fl->fl_u.nfs_fl.owner) + return; fl->fl_ops = &nlmclnt_lock_ops; } base-commit: fce2dfa773ced15f27dd27cd0b482a7473cdcf2a -- 2.43.0