From patchwork Fri Sep 20 06:23:30 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lynne X-Patchwork-Id: 51674 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a59:d154:0:b0:48e:c0f8:d0de with SMTP id bt20csp764324vqb; Thu, 19 Sep 2024 23:24:02 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVyEgPzw704jdX/1aKW9S8A6+W0jYw/hm/lnjOhoqwxMQ+LsWWMrkKh2tNU8Tfw6ZPnp0ee+MtslzED0jBEBOsC@gmail.com X-Google-Smtp-Source: AGHT+IGntjVEiV5YTcBXWwqrfc9sMN8CVIAD3Y68a231awmZaHBFkxgBcCxKbvsyXOHW/edeNpyO X-Received: by 2002:a17:907:9346:b0:a72:499a:e5ba with SMTP id a640c23a62f3a-a90d4ffe51fmr64833666b.7.1726813441738; Thu, 19 Sep 2024 23:24:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1726813441; cv=none; d=google.com; s=arc-20240605; b=YlyjuLIdz0BS6UzHlSIWMMPl6g3Gv4pH32x1X1yBK/VC/d0LvFlnwZuoPUY4mxCgY3 hvBqDkcBXOt+mmVo977OZeZmO2lwiTQlGajhQwkwKOeGvQjs0Njdd7jF9rZQZjiQmff4 GogbA4nGXpkk9HSXeRpEoHiJXH9lNy1H4J0UnIZv2xOMlmvBQYDVlsj5up5e2xQmLiTH 6mPSUI7BKBYGGkK+/2aO3VHorO+uBHpXQEM88vabDdt7kfrORjX8vno05jQeSyrBEZFo 3uaaUmCgxdwHmO55+TNfNtp7RgNaHlPikx3DyrWDoTFzIno0YnI663uh820HrZ3c4jSL wATQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:content-transfer-encoding:cc:reply-to:from :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to :delivered-to; bh=S3i3qqGZnHCLgm6ahIX2pG3EI4rUM0SgbFWqTyBihDI=; fh=nenT92/WZoU6unXd3J6UhGUdod4piddKfVtctNBOh6k=; b=X4P4et264pPpSwfJm4/3T97NOio6LKb3wlJDXKWzM+zuexvAl3h70Lr++3XwzckWui nnHBbFy/66/ZxbHR0lRGX5t9aBCMY0WpdK1qLNk5hZplyyMB+GQa59s5DdOoCIVykylh 1tiJ4uIlpsMzEiTQyq9EiWSEzEtFCsO2HlZHYMo1Q/ueXHlqhuuwl0sLgfek6BWSCuzP Ze4YeoOVpvnJUAxpaLlecGTQqwzz313XQdNeLqfEaBYtfpqMqFG8igCf08KwuZ+T6zM7 QaBPItZMV+TcKFCq/zBUU4ERD6rhVHg9a9uwZokZjz7He+eWWrfmRk9NX5U+hsmlKGLX dVkQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a640c23a62f3a-a90612efb8fsi929463166b.571.2024.09.19.23.24.00; Thu, 19 Sep 2024 23:24:01 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CB14868DC17; Fri, 20 Sep 2024 09:23:47 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from vidala.lynne.ee (vidala.pars.ee [116.203.72.101]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1C70B68D993 for ; Fri, 20 Sep 2024 09:23:39 +0300 (EEST) To: ffmpeg-devel@ffmpeg.org Date: Fri, 20 Sep 2024 08:23:30 +0200 Message-ID: <20240920062337.933413-1-dev@lynne.ee> X-Mailer: git-send-email 2.45.2.753.g447d99e1c3b MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/3] hwcontext_vulkan: fix VUID-VkPhysicalDeviceImageFormatInfo2-usage-requiredbitmask X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Lynne via ffmpeg-devel From: Lynne Reply-To: FFmpeg development discussions and patches Cc: Lynne Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: +ludCDsiIA9G fmt_props.usage was initialized to 0 as create_info.usage was set later. --- libavutil/hwcontext_vulkan.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c index d6899df159..1de08c6181 100644 --- a/libavutil/hwcontext_vulkan.c +++ b/libavutil/hwcontext_vulkan.c @@ -2929,7 +2929,16 @@ static int vulkan_map_from_drm_frame_desc(AVHWFramesContext *hwfc, AVVkFrame **f .pNext = &props_drm_mod, .handleType = ext_img_spec.handleTypes, }; - VkPhysicalDeviceImageFormatInfo2 fmt_props = { + VkPhysicalDeviceImageFormatInfo2 fmt_props; + + if (flags & AV_HWFRAME_MAP_READ) + create_info.usage |= VK_IMAGE_USAGE_SAMPLED_BIT | + VK_IMAGE_USAGE_TRANSFER_SRC_BIT; + if (flags & AV_HWFRAME_MAP_WRITE) + create_info.usage |= VK_IMAGE_USAGE_STORAGE_BIT | + VK_IMAGE_USAGE_TRANSFER_DST_BIT; + + fmt_props = (VkPhysicalDeviceImageFormatInfo2) { .sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2, .pNext = &props_ext, .format = create_info.format, @@ -2939,13 +2948,6 @@ static int vulkan_map_from_drm_frame_desc(AVHWFramesContext *hwfc, AVVkFrame **f .flags = create_info.flags, }; - if (flags & AV_HWFRAME_MAP_READ) - create_info.usage |= VK_IMAGE_USAGE_SAMPLED_BIT | - VK_IMAGE_USAGE_TRANSFER_SRC_BIT; - if (flags & AV_HWFRAME_MAP_WRITE) - create_info.usage |= VK_IMAGE_USAGE_STORAGE_BIT | - VK_IMAGE_USAGE_TRANSFER_DST_BIT; - /* Check if importing is possible for this combination of parameters */ ret = vk->GetPhysicalDeviceImageFormatProperties2(hwctx->phys_dev, &fmt_props, &props_ret);