From nobody Sun Jul 20 14:09:32 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4blQQ64qDkz6295j; Sun, 20 Jul 2025 14:09:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4blQQ54THVz49qq; Sun, 20 Jul 2025 14:09:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1753020573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ix3hecn6klU7Vak7hEzgKt1HocWQY/FIgdkDESXpphk=; b=hjDvqJCckEYcmWDlrx8IV4vjaaDXJAV0th/h+3lT0OJF3EkLYlbfPsUm78L3nGQ3oxxibh gaQNy+nNFZWefHJZO56pZRLo2TYHkVzAeN1aXXES+d3YadOaHC+Vp0dBDpTas5/uYmA/Or PJJLkFhrbXDPm3pVYyw2Z+41Qjc9tXwdP8FnwxnWtm9UtCFCWYxQGnXetTVcuhkiW6GSS0 daF9klE2fxsiFwvU60BbAGZHtnbhiZ6KVsntY/rYMIkWiIU5mVZSLcvXFyzyACGv10p2yd H4Fc5SKQWXSHG6EJ9SJuLfsC4bJRGgYuq/V0FJJdLUxNi16riE8wQVhGS2S4FA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1753020573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ix3hecn6klU7Vak7hEzgKt1HocWQY/FIgdkDESXpphk=; b=QeOQpZ5E+eEVKYlZ+Ttt0nUEsc7rCb1Rrzm2B6GztdLGiwOnzf+MaivHYOP7+Lr+Es8cwk bZ/FaQVawl+XTGZAhfc6jDHGWvLYStYA2/2aVVZcej4xpMOp+6K3CWQwP3+kdngcax7KOc VfLQiR/TMTxNjXUJZFZeb8L9yIqa36ZE6dOQH7OQC1hoq6cBiwNFnVOskCt2ayQXBVINsa K3kr+ooRProog7xURyY3bSF1MWM8OmPCo5ZCQdBPEfg6LnJTX3Bp3NKHoqBcWfluvJ2UV4 8Nhe3wTz6f7LkYrs8qbiPrHromXVayS/O6HcQmRQyuLU2kngO+9juG3CH8v7TQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1753020573; a=rsa-sha256; cv=none; b=Gry7tx0jVxSeYnlvYmLFTLs2TdVcV192ieKGvVBlCHsqZCPcpbZ1J4cSAmNn63f+2eGwYB RWLMEfOnGwGnk7KDQAkEnJsxmmXk9x/fDKtz5he85mjzUKp5vJYXTof8uu3BI6/bYDzwGr ts9SDHypMAwXXQpTQlkbKoOV292Uo4XOyUG2xdRhRiE+Zh0cgujE5If36My2AEJc6VPUno o/zw4qqLxh/6/H++P2V439FolgLbkZBdKwozLq6mbT2ikcPSYeX1/LQOyESUSEx8bwGZs5 A8ykSqUwmemKVuvotJ1jGp/pnnDaBXq/MlxBgmkq4NA8YZlDY8U2/IdasuTBMw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4blQQ473NRzt0; Sun, 20 Jul 2025 14:09:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 56KE9W8H040628; Sun, 20 Jul 2025 14:09:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 56KE9W83040625; Sun, 20 Jul 2025 14:09:32 GMT (envelope-from git) Date: Sun, 20 Jul 2025 14:09:32 GMT Message-Id: <202507201409.56KE9W83040625@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: f40f6374f3d2 - stable/14 - qlnxe: Fix error handling of SIOCGI2C ioctl List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f40f6374f3d2cfc1a99781acd5c3252e1edfe612 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=f40f6374f3d2cfc1a99781acd5c3252e1edfe612 commit f40f6374f3d2cfc1a99781acd5c3252e1edfe612 Author: Zhenlei Huang AuthorDate: 2025-07-17 04:01:16 +0000 Commit: Zhenlei Huang CommitDate: 2025-07-20 14:07:19 +0000 qlnxe: Fix error handling of SIOCGI2C ioctl The error -1 is actually ERESTART in the context of syscall. It is for kernel mode only and will not be passed to user mode. When the kernel sees this error it will restart the syscall. When the the SFP module data is not available, e.g. the SFP module is not present, the ioctl handler returns ERESTART and kernel will retry infinitely, hence the userland `ifconfig -v ql0` will hang forever until get interrupted. That is apparently wrong. Fix that by returning error ENODEV to indicate the SFP module data is not available. As for the case that ecore_ptt_acquire() fails, it appears to be quite safe to restart, so keep returning ERESTART. Reported by: Steve Wheeler See also: https://redmine.pfsense.org/issues/16248 Reviewed by: kbowling MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D51351 (cherry picked from commit 12fea464070a9061fda874038614ed55011ad59d) --- sys/dev/qlnx/qlnxe/qlnx_os.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/qlnx/qlnxe/qlnx_os.c b/sys/dev/qlnx/qlnxe/qlnx_os.c index f8d717c9b19c..39ecad8ef1e1 100644 --- a/sys/dev/qlnx/qlnxe/qlnx_os.c +++ b/sys/dev/qlnx/qlnxe/qlnx_os.c @@ -2778,7 +2778,7 @@ qlnx_ioctl(if_t ifp, u_long cmd, caddr_t data) if (!p_ptt) { QL_DPRINT1(ha, "ecore_ptt_acquire failed\n"); - ret = -1; + ret = ERESTART; break; } @@ -2789,7 +2789,7 @@ qlnx_ioctl(if_t ifp, u_long cmd, caddr_t data) ecore_ptt_release(p_hwfn, p_ptt); if (ret) { - ret = -1; + ret = ENODEV; break; }