From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6B97A30E0F2 for ; Thu, 25 Jun 2026 23:16:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782429369; cv=none; b=V5BwY3e76qf5UiDqZcmojNr8cMcL5t8F2CzYtjdtBRZKnJMr+Nfmr59lv30obae+JT184JqIZaGlDdof/zp+rgL1tk/kl6xNWUjdw49eV479fyf8NzlvbXXxuaJJb/TC5L+wwBe4E1/ePb5hr6B5AuEULeOY4ER1mFu0ewXxf3A= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782429369; c=relaxed/simple; bh=BV5zcaQ8Y5o9Fb6RBkQ1aF90+h1OMXrJ5U+lcv+2SmY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gRUTH3lgHAbqHhuGkAgZRZe3uuMZIpVGs/EE3VhDjmVqUtPTe3emohBQQVIX7MexK1vqD0vz6zQA+P32G5QasFzOiyvHI7wbTdjNu+8Da/vMXZkEvD2hkjU8IkeHWQOJlGzgYJ3T86RHpX9wWyfy8Qf2RlAeWFxbizWEHoLjGiY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=NDV1Pt3e; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="NDV1Pt3e" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1782429367; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=yrCphSM3KhpC5g69iDlAmJJN2Kzxjdu/a38nP3+JCPU=; b=NDV1Pt3eyLhQQePmQHrRgI/Ay+XndhHHR9cDR13+Pu00eG8rYr+083iml0W3gpqX3oo9eD 9QZIfTM9H9c/ZWLoA+PrA7Sx5vC+ID5vy9ZhPjX+mOU5NK3cxuJXOPZvsmZu1XOG9/Xd0+ LWtGJpMZDEnhxVglcW64AESwl4lzciY= Received: from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-711-Fb5Al1OVPRu4zvq2iSnKww-1; Thu, 25 Jun 2026 19:16:01 -0400 X-MC-Unique: Fb5Al1OVPRu4zvq2iSnKww-1 X-Mimecast-MFC-AGG-ID: Fb5Al1OVPRu4zvq2iSnKww_1782429358 Received: from mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.95]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id B40AC1955D99; Thu, 25 Jun 2026 23:15:58 +0000 (UTC) Received: from GoldenWind.lan (unknown [10.22.64.18]) by mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 81B3630A8; Thu, 25 Jun 2026 23:15:56 +0000 (UTC) From: Lyude Paul To: dri-devel@lists.freedesktop.org, nouveau@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: stable@vger.kernel.org, Dave Airlie , Kees Cook , Danilo Krummrich , Timur Tabi , Ben Skeggs , Andy Shevchenko , Mel Henning , "Maarten Lankhorst" , "Simona Vetter" , "David Airlie" , "Thomas Zimmermann" , "Maxime Ripard" , "Lyude Paul" Subject: [PATCH 2/2] drm/nouveau/gsp/r570: Never enter Gcoff state Date: Thu, 25 Jun 2026 19:10:55 -0400 Message-ID: <20260625231252.89684-3-lyude@redhat.com> In-Reply-To: <20260625231252.89684-1-lyude@redhat.com> References: <20260625231252.89684-1-lyude@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.6 on 10.30.177.95 It turns out that the only reason our previous fixes looked like they worked for this was because we would occasionally set the Gcoff state to 0 in the normal S3 path, which fixed suspend/resume on desktops - but not on machines using runtime suspend. The proper fix is to just never set this flag. Our current guess for the reasoning behind this is that Gcoff likely coincides with GC6, and not literally power off. Signed-off-by: Lyude Paul Fixes: 8302d0afeaec ("nouveau/gsp: fix suspend/resume regression on r570 firmware") Cc: Cc: Lyude Paul Cc: Dave Airlie Cc: Kees Cook Cc: Danilo Krummrich Cc: Timur Tabi Cc: Ben Skeggs Cc: Andy Shevchenko Cc: Mel Henning Cc: # v6.19+ --- drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c b/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c index 2945d5b4e5707..af5aa5065c3dd 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r570/fbsr.c @@ -81,7 +81,7 @@ r570_fbsr_init(struct nvkm_gsp *gsp, struct sg_table *sgt, u64 size) ctrl->hClient = gsp->internal.client.object.handle; ctrl->hSysMem = memlist.handle; ctrl->sysmemAddrOfSuspendResumeData = gsp->sr.meta.addr; - ctrl->bEnteringGcoffState = 1; + ctrl->bEnteringGcoffState = 0; ret = nvkm_gsp_rm_ctrl_wr(&gsp->internal.device.subdevice, ctrl); if (ret) -- 2.54.0