From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id EB7CF4D165 for ; Thu, 11 Dec 2025 02:51:49 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'DhXbp7rfbq7T7Rxh9490Yx+nP9GN/Xf/vTpWeH/cej4=', expected b'4ql/Pr89Thy7+fiph7wxdEWfmO17v46Sb0BdZCLOyZM=')) header.d=valvesoftware.com header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1765421502; h=to : date : message-id : mime-version : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=2UH1ziEQetPvrXIjPO7MaFJXwJZ1P0hmazrz5oN23q0=; b=UBDtWcbXD06MU6bnDw7gyzm/Ra//7s34MKULXLL9TXHY7qjmU7aqbYetJFbPlmEz2/YDI egxQq9PiTJsnF95e32K1iXg/6ZRSCAbXLp2QhGZ74TAYHFRfEb6EJVUE8vd69XSxpL6b4d0 5HB15oi3xwd80EZyq4EnSBVrPSpc7ZfAnwHcf3G3p3oBs78oKBtZIDkmP8W/rFFtvXrRJV/ PEfMXVs0v4ck5jiLT3ZFlER5Ms/FQ47GB91sJmFd8mlJiv0Vr6HyUKoIYmXa+Vgwq9bEQkI lQEIi9AfL1QU3dY3L0rst9n+D5PrZFMaHRziaJ+EkIG9fl2pQ/bK62+qqfIA== Received: from [172.19.0.3] (unknown [172.19.0.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 5419E6907AF; Thu, 11 Dec 2025 04:51:42 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1765421489; b=oy47baZzjas4cSPIxSKYxKfiaG3o9iC5bgeTXTyZREhvaESWoWRhuJaIZeDsn2Buo52xB 2PCCxBaM3c8F7y/ajsCTXzWorXdQNTMb1DuynsVMuwp628t4i4mywlv50ZLCM+0XL8QPKC9 mGKhGCR9sni65ZlD5YzDRXIL+mwseeZ6OaLj9xR2GZTnRC95m71HxH9w0kVT6F6HPSqRCS0 9w9XJeJuR8HYGJyGUgVJXKwChIiMI6quOhTeTEmuWSmY0dZu6rP+ENjWiKouqrAw98aXq4p W+u6WuhlMfl8DOiHS/gBD3GmhFqoY97J5rYAYZyvd2JjED5NzRg+93mAfjsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1765421489; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=DhXbp7rfbq7T7Rxh9490Yx+nP9GN/Xf/vTpWeH/cej4=; b=PZpVKSbIjVNVe29KNUJiWqZ9BqFBItJADq4J+QFU8Fuy6PNX5+VTeO05Y8/KQhsmiLvEl 0zC3eol1OzkAekBmw8JQD/V1yh9d6CQLHgnTemRfEymxXhKaf4w0Fmlq6hM+AACG3S6DJ21 5lzt1/c1zEw0WYcTnLNJ0QOxE3EwUjLeQWok0R2Dx6q1/LL5o1/7z0rL9YF3hPs5fXAc1Fz GijrsMYNeS1Kp1v94SbISQB95Fa16PgOoYn8947BeyRk9toAHBK8ekyRUGhAjKzEEiwdpJ5 k29s7UUH/ywcjnw1BuohyEqjXNrxdGG9s7Xa5qg7yvN5y01pYNTSvt9YO0Ow== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=valvesoftware.com; arc=none; dmarc=pass header.from=valvesoftware.com policy.dmarc=quarantine Authentication-Results: ffmpeg.org; dkim=pass header.d=valvesoftware.com; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=valvesoftware.com policy.dmarc=quarantine Received: from us-smtp-delivery-172.mimecast.com (us-smtp-delivery-172.mimecast.com [170.10.133.172]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id AB78D690748 for ; Thu, 11 Dec 2025 04:51:14 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=valvesoftware.com; s=mc20150811; t=1765421473; 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=4ql/Pr89Thy7+fiph7wxdEWfmO17v46Sb0BdZCLOyZM=; b=KAVivKI6UQsFWFkRe5j2no/eAPTOl2PxIBsVn1+Yjg3iAl2dGnYFwCTQGfbvvjgIztYsb1 jYjcYQSe7HN+TdwqkeoJ2DouPoqO36Tsg8ZeOIX2vgxHGCtgJb3Se8V4uEoQZiZmVhb0de IqwqxLhENhLL5NT95fPXN32laM7FOi4= Received: from smtp-01-tuk3.valvesoftware.com (smtp-01-tuk3.valvesoftware.com [208.64.203.181]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-554-Dk1lIkscMMSTNOh0tUiaxA-1; Wed, 10 Dec 2025 21:51:10 -0500 X-MC-Unique: Dk1lIkscMMSTNOh0tUiaxA-1 X-Mimecast-MFC-AGG-ID: Dk1lIkscMMSTNOh0tUiaxA_1765421469 Received: from antispam.valve.org ([172.16.1.107]) by smtp-01-tuk3.valvesoftware.com with esmtp (Exim 4.97) (envelope-from ) id 1vTWlp-00000005KPj-0n18 for ffmpeg-devel@ffmpeg.org; Wed, 10 Dec 2025 18:51:09 -0800 Received: from antispam.valve.org (127.0.0.1) id h78opq0171su for ; Wed, 10 Dec 2025 18:51:09 -0800 (envelope-from ) Received: from mail2.valvemail.org ([172.16.144.23]) by antispam.valve.org ([172.16.1.107]) (SonicWall 10.0.15.7233) with ESMTP id o202512110251090013395-5; Wed, 10 Dec 2025 18:51:09 -0800 Received: from mail2.valvemail.org (172.16.144.23) by mail2.valvemail.org (172.16.144.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 10 Dec 2025 18:51:08 -0800 Received: from mail2.valvemail.org ([::1]) by mail2.valvemail.org ([::1]) with mapi id 15.02.2562.017; Wed, 10 Dec 2025 18:51:08 -0800 To: "'ffmpeg-devel@ffmpeg.org'" Thread-Topic: [PATCH] avutil/cuda_check: add error handling to ff_cuda_check Thread-Index: AdxqQ7U4R422eOjJQZC7DkZuvIoqew== Date: Thu, 11 Dec 2025 02:51:08 +0000 Message-ID: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [172.18.63.31] MIME-Version: 1.0 X-Mlf-DSE-Version: 6871 X-Mlf-Rules-Version: s20251210084732; ds20230628172248; di20251125173930; ri20160318003319; fs20251210235312 X-Mlf-Smartnet-Version: 20210917223710 X-Mlf-Envelope-From: cboyd@valvesoftware.com X-Mlf-Version: 10.0.15.7233 X-Mlf-License: BSV_C_AP_T_R X-Mlf-UniqueId: o202512110251090013395 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: 0J14ziN1BpPJ-l6tEEMuFtXXBk39DP1ILWQNU3QB0_0_1765421469 X-Mimecast-Originator: valvesoftware.com Content-Language: en-US Message-ID-Hash: PSYYSEJHPVF52LGCNKKTDSDZ324BDOTL X-Message-ID-Hash: PSYYSEJHPVF52LGCNKKTDSDZ324BDOTL X-MailFrom: SRS0=xJ7Z=6R=valvesoftware.com=cboyd@ffmpeg.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH] avutil/cuda_check: add error handling to ff_cuda_check List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Chris Boyd via ffmpeg-devel Cc: Chris Boyd Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: Add variable initialization and return value checks when calling cuGetErrorName() and cuGetErrorString(). Although the documentation for these methods seems to imply that the provided char* will be set to NULL on failure, we have seen crashes when logging these strings with uninitialized memory on machines that have Nvidia drivers installed but no longer have an Nvidia GPU. Signed-off-by: Christopher Boyd --- libavutil/cuda_check.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/libavutil/cuda_check.h b/libavutil/cuda_check.h index f5a9234eaf..763009ce92 100644 --- a/libavutil/cuda_check.h +++ b/libavutil/cuda_check.h @@ -33,16 +33,22 @@ static inline int ff_cuda_check(void *avctx, void *cuGetErrorName_fn, void *cuGetErrorString_fn, CUresult err, const char *func) { - const char *err_name; - const char *err_string; + const char *err_name = NULL; + const char *err_string = NULL; + CUresult get_err; av_log(avctx, AV_LOG_TRACE, "Calling %s\n", func); if (err == CUDA_SUCCESS) return 0; - ((cuda_check_GetErrorName *)cuGetErrorName_fn)(err, &err_name); - ((cuda_check_GetErrorString *)cuGetErrorString_fn)(err, &err_string); + get_err = ((cuda_check_GetErrorName *)cuGetErrorName_fn)(err, &err_name); + if (get_err != CUDA_SUCCESS) + err_name = NULL; + + get_err = ((cuda_check_GetErrorString *)cuGetErrorString_fn)(err, &err_string); + if (get_err != CUDA_SUCCESS) + err_string = NULL; av_log(avctx, AV_LOG_ERROR, "%s failed", func); if (err_name && err_string) -- 2.43.0 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org