From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (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 2111240E8FA for ; Mon, 27 Jul 2026 21:14:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785186863; cv=none; b=C9vuh9dmiX2onO3xl8mN6U7YJfVwAYTejq6itmgkwu5Ir0zVcqorbVGjHGQYEYUQDxyLM3/zkqYKTs40gp/QxaFarBUea9DEv8PFKVx0zPZuo9db0tsT21GZYzapAjAyPXBbDpxFvPXf0m9KzYGb3OhTqTQEZZZXtFOr8y9tFjA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785186863; c=relaxed/simple; bh=jlWqG8gTbu2twnBybj6iW/dXM23ZlushmG2B8NreGeA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=OWJ3ZRRuLD5dvGxIxstl6h5mYRnSEo3cdTSbDop8AR9+CsNe/KOhuatWAmjQ/vWLBDyGntun8/DlbaM1FWzcVUGGLnq3LztVasR217clLV4/2TE4vTSeExIgkYD3CoI6DPaWFPS/5nhc7ut/qihtSIPZOicrU97bbEO2py5TzX4= 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=YjY/caok; arc=none smtp.client-ip=209.85.214.173 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="YjY/caok" Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-2ceaf8a1265so38501685ad.2 for ; Mon, 27 Jul 2026 14:14:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785186861; x=1785791661; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=aTwGwys18fLpJ9xlKbE47qZQ9XXoD+aeMygdr9DdQKQ=; b=YjY/caokCtTd5aWwGrOLe03HkNQV5cDSeOnXRqykOMvRE06KVIW0tqg1h12t470Yuw SQj9qX2xtVb7tnLocDsZk2Xa85V72j4oYX3koeUebempd8qJN+pjR+Z/J3n4T9SGaqAh N5lMldoFB8w59vSX/AnNvVMY4syofOjLUDCGr0Ab7nZCaXJ+d/ZC7Htm6BbHVLCCdBZI qu2zA2DbyXKCqdjZdyFOgT999inH3LUVXIO8klk39BOCi61biAq+sA+9H2C2I/OHVwGA 4yjf3NXTcNMMHw/AdGRC2lAGkAq/y0S3QqtsucEK0CskTYPPLM1TTaiRgN3ETAVRsbIR 3kGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785186861; x=1785791661; h=content-transfer-encoding:mime-version:references:in-reply-to :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=aTwGwys18fLpJ9xlKbE47qZQ9XXoD+aeMygdr9DdQKQ=; b=mRP2skDviJIrWuGEZJiWlF/9t2gXPbzJnFg7FMosxwUAyIfF//hqon6QmqfcGqGT/F OGtJ9xy6sysbDT7FBl0ZUqybbKMel7stIo8pVZoT4My9dkhqno/SGQ6ETPcg0b83PIkf z4jmWic6Dr1tSsFxA12952w1Zow9yDZuM3sdFbVCdYqKjPpPjfrPw7w8eBrFqZUoBmyc iZyDzkB4U7AkT9O9A4tiZjYUW/R+xlLyrHRQZ5YIlgTnNmnK3x06AVTUqdvriwguU/2e EkL73Yqz9/m36RDox1cdcoZB+50jiYKlrapQmaXhW5FYA9qNPpcM/kOEDegm8KcKTvoK DXOQ== X-Forwarded-Encrypted: i=1; AHgh+RpvLz2PEECC3XYKqFmE2rRzH4UY5a78j8hTHdF4c6gPjTB48wnSE0sElTBejUmCTmTqvZ97DHbt2gXJ8/Q=@vger.kernel.org X-Gm-Message-State: AOJu0YxauNkcBlQc5kfVJfRSXv+u4gcBOW2YEBYiDeoCku4ACXy5pmma gxiORN5gGtxXqSmh8Ju/0sysEWzBKn9996oIYRh8WjeG1Qm8+Mkr4YEm X-Gm-Gg: AR+sD10LRt007J7CPoYDma3F3eRVCVISWOgQkQXC5xOX6dZN05Slq9y9T4P4F5PqMjD TdGbTqNuvw2iYS0i5V0u8wV5XYCNKsQhTs6/NCcJZbsWlY+yL5c9+IiDBCO+GvcQS2tN0iiBnCI Tdg9jt3IqI+iNbX2NRzZOQaOPswpSdwMsnB7Uu/T49hQR7t1b8YlNMN58vZ31dWe9ot/4bKfuGa fXyeXQ0UbdzfGzQgPs/Yi49RIC9RBXgyotZ3FvkcJuheKt9QiP7Fm9YWim+wbaBJUXlEvmhz0d+ NYYkIgi5JGRmLyw1j71DuucYsuNK33uhT7k6Qex4UP8mR77k4zt7C2lwGpIBJOnyLGZxA/nZltj Yov/qf2I1YkxDv8Kk9kLo8TZx9tFNSgUUzGg3mFj3loARWe2e4lM78YuWCNrZcZS0UIzfT1M= X-Received: by 2002:a05:6a21:70c8:b0:3c3:a1e6:a624 with SMTP id adf61e73a8af0-3c6c7b921edmr1333695637.29.1785186861417; Mon, 27 Jul 2026 14:14:21 -0700 (PDT) Received: from archd ([2601:640:8c00:a:1544:c19e:8a1c:4058]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-314bc3e127asm58456645eec.2.2026.07.27.14.14.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jul 2026 14:14:21 -0700 (PDT) From: Daniel Pesic To: Danilo Krummrich Cc: Matthew Brost , =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= , Alice Ryhl , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Miguel Ojeda , Boqun Feng , Gary Guo , =?UTF-8?q?Bj=C3=B6rn=20Roy=20Baron?= , Benno Lossin , Andreas Hindborg , Trevor Gross , Daniel Almeida , Tamir Duberstein , Alexandre Courbot , =?UTF-8?q?Onur=20=C3=96zkan?= , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org, Daniel Pesic Subject: [PATCH 1/2] drm/gpuvm: export drm_gpuvm_bo_destroy_not_in_lists() Date: Mon, 27 Jul 2026 07:11:20 -0700 Message-ID: <20260727141121.11975-2-danny.pesic@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260727141121.11975-1-danny.pesic@gmail.com> References: <20260727141121.11975-1-danny.pesic@gmail.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 drm_gpuvm_bo_obtain_prealloc() currently calls this function directly to destroy a losing preallocated drm_gpuvm_bo. Export it and promote its comment to kernel-doc so the upcoming Rust GpuVmBoAlloc binding can call it the same way. Signed-off-by: Daniel Pesic --- drivers/gpu/drm/drm_gpuvm.c | 5 +++-- include/drm/drm_gpuvm.h | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/drm_gpuvm.c b/drivers/gpu/drm/drm_gpuvm.c index d1c80ad3dead..30c134455547 100644 --- a/drivers/gpu/drm/drm_gpuvm.c +++ b/drivers/gpu/drm/drm_gpuvm.c @@ -1608,7 +1608,7 @@ drm_gpuvm_bo_create(struct drm_gpuvm *gpuvm, } EXPORT_SYMBOL_GPL(drm_gpuvm_bo_create); -/* +/** * drm_gpuvm_bo_destroy_not_in_lists() - final part of drm_gpuvm_bo cleanup * @vm_bo: the &drm_gpuvm_bo to destroy * @@ -1619,7 +1619,7 @@ EXPORT_SYMBOL_GPL(drm_gpuvm_bo_create); * object if the refcount reaches zero. It's illegal for this to happen if the * caller holds the GEMs gpuva mutex because it would free the mutex. */ -static void +void drm_gpuvm_bo_destroy_not_in_lists(struct drm_gpuvm_bo *vm_bo) { struct drm_gpuvm *gpuvm = vm_bo->vm; @@ -1634,6 +1634,7 @@ drm_gpuvm_bo_destroy_not_in_lists(struct drm_gpuvm_bo *vm_bo) drm_gpuvm_put(gpuvm); drm_gem_object_put(obj); } +EXPORT_SYMBOL_GPL(drm_gpuvm_bo_destroy_not_in_lists); static void drm_gpuvm_bo_destroy_not_in_lists_kref(struct kref *kref) diff --git a/include/drm/drm_gpuvm.h b/include/drm/drm_gpuvm.h index 38221d83285b..d014a389405c 100644 --- a/include/drm/drm_gpuvm.h +++ b/include/drm/drm_gpuvm.h @@ -760,6 +760,8 @@ bool drm_gpuvm_bo_put(struct drm_gpuvm_bo *vm_bo); bool drm_gpuvm_bo_put_deferred(struct drm_gpuvm_bo *vm_bo); void drm_gpuvm_bo_deferred_cleanup(struct drm_gpuvm *gpuvm); +void drm_gpuvm_bo_destroy_not_in_lists(struct drm_gpuvm_bo *vm_bo); + struct drm_gpuvm_bo * drm_gpuvm_bo_find(struct drm_gpuvm *gpuvm, struct drm_gem_object *obj); -- 2.55.0