From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 7A1B34943D for ; Sun, 11 Feb 2024 09:00:10 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 62A3768D0CF; Sun, 11 Feb 2024 11:00:08 +0200 (EET) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2077.outbound.protection.outlook.com [40.92.90.77]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 81FA168CEAB for ; Sun, 11 Feb 2024 11:00:02 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Lha4Gjk6n3K53Y9QEH69qCrVVa8jTtgc9gm/SuEMmy2zDg1JqPWJ+HsUCaKnBDzTKtF+fPRmpAWAlmp67sc72lamxHlcbkLA+0m+Me1inFd1EYzt4VlAGVPnh5oIkrekqHOxoibGUG2WBTOwET6gRDhaEM5UCtHzwfx9N6aJK+9TxSD1ipx83l/hIPyJbYO8luhV6VsK0woAFhDLzxjGIAEKS6r3ZI5l61HvhCcvGglaZCEW8rmzAVQfCltZLObGS0o21Sg6NqAzSzaZAbVi4IMNsJy7ec62XU1x8y3KweI+CZKB9ZKNl797GRkqE4oCSyDOuTKa9yjvoeccD7SlfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=alBHKSlkJOt0xPkaP0BFNAff7mdsgDJvq4NT7UsgZqY=; b=MBjamybpt/5QQ6a71LGSXu4Asfa5utLhmOIIxErykyFmJWOzT08nnd9N5aMIyOsBPP8NGcvJ+IaopYYWorIeys1IZjYGbxwJ6ZaLiO9+7egpEcdkyl+BI+iogz4k/+/Wht5gngdgOLGxZWVriSCylV8s8OIChhCPiMeZ2ynUzrZwEEvy3j3+sClu5G8D3gA7jXyNrGCeyd3zFwopVndMzZg6d2oeWRSGyYsMvwheqEaO7qCDcg+nL8XVZNHKNYlllMK0kYONEhJxoeGcI+lCkxqYxdWIwdV/sln1Gme8QblbScoCQLhVVa5ckljSO8D+BKmfcx3OiRLNd9VAWpx6pQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=alBHKSlkJOt0xPkaP0BFNAff7mdsgDJvq4NT7UsgZqY=; b=IpsBHW6Z0KYUF8Rhsyf5RXDsV26y/W1gRlELuFUkwnivuwJZsnui4LCWlR2xqGPBlBxOb4CKJBrasnviCA3SryANkwWGdRR6hsvhPggd8DEIaUmZuooFkCRegY4SEMr6RMp9aeuqCzkxYyKYX35JQZuOVAZq9cA+NbR6GdztOiFe+cvY4w7tkrPwZBh8fg9ZUc0kGB9/5HpFK2U8oueLn88ntK2ytC/t9juluLCClCbCQ5x+yfMNQbZVR+aHPqG68voa70jJnSWt+3OTyYPdsSZV1mKmMgU948ZXKbf9XIba3gZlny8SYPfhj1w63D/0ZXXeIhiJo+nVID5qTA6s1g== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AS8P250MB0104.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:373::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.35; Sun, 11 Feb 2024 09:00:00 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::65aa:deb0:a18e:d48d]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::65aa:deb0:a18e:d48d%5]) with mapi id 15.20.7270.033; Sun, 11 Feb 2024 09:00:00 +0000 Message-ID: Date: Sun, 11 Feb 2024 10:01:55 +0100 User-Agent: Mozilla Thunderbird Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: From: Andreas Rheinhardt In-Reply-To: X-TMN: [Xjt9ASZFX1UiGJvMzUS0gIXPLeY8rUKVELB1mpQHkAY=] X-ClientProxiedBy: FR5P281CA0003.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f2::14) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <0a0aa699-f25c-4df2-993b-15fdd5fe9417@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AS8P250MB0104:EE_ X-MS-Office365-Filtering-Correlation-Id: 7a791085-3405-4a19-e892-08dc2adfd3f5 X-MS-Exchange-SLBlob-MailProps: obhAqMD0nT9t7DujJ6AQNymXJRVaUc1uNgvhrJ62dXxNKft1s8scjBJ2HEqPH+nUyCquw882LkZRjE+3qFFUI2dxfrv4UJRXC3D4WyZHyYt+Q2u43wyQvjFIPPRUWQPuc+HwdtsfmxJ2LzOOgbtxYc5cJEhTBZw6jQk+EHgDDl5e3B2jqVwXfTdnZWBVVAtX0++vlTCPy7LmbeapjcQdvAJ0jtlmx8IYF47ySZfGSK+iryK4DG3S33MJ2MPI/Y00kv6nUiChZZOcvhUWjLCWIctXUjQMm0auIjdCzCIxEdONYJO1znmxskApTXPzawoxC09VZy3GDPTv7p7I7/35jDYOBwR6yXcxllkL6/rk8uy1bwYMFJckUGDx4mKIrWfmnSltjGkltTN9JOdPP8aIt1pbCdMbgvqRFxsaSOfygntlvxTYs9RzfU1p6digR2rvOT7F5sC74HnoGsO0oPsz69b+V6uAGQvscxWFjFPm2bUhtUqjA1AFE/TfFvnfIZx4Q1ThxijmZY3R06Z4LaVnQY5Kog4b4ocaSfP1i5XaX9MnM9JRuboXdmqWwdXMDGAGTjL+8Rw+EuK2NnEOhe0Aekk0OfY7uRUpXT33XzcW8A/cUtBIcl0JyOsvNt03Pskr53mWOUdza26crP+g75q4F6Z3fkUa86Sc+lZ/Rzhcrmt/N3uGubtkInb4sQwLjUvN1eLF0g61a9fgiWrls1uVINA8/fD7kdEE/J1v2yVCaVaMA/wTVlRFUlweIkQfxPiRjYwJiiD5xXHYg93t6K/4WiX1gs5vjrAuhFGTBKKCguMy1D8pUukqW20fSYBj+Bp6 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WbqFpahFqFlJLIiitvr5faunfcEpebKM9sSgIumuKlYlcfgHH7KCfzkhtdjI5OTnUHJXe/nGDOWAHaI3h0tUwlPSCIZ6AP4XhhMTGWKpSCBrlL7vIrPzWkwXTZEYycqGNX5HXaNmiWHJVYbn+AMqbZkzUyq2IV7+2Kv+nVbYn8fAH53Knrf8q3lP/ZYaQX+/0LLFk552Y0e/V8h7PZ/EGkX0pPfe19SJaWVGntNc4hQMrLB2NSw5OyWk2br7rBz54L5FfL17duGZ6upgX8yypr+aYBlMkwecacQ1re0g/LIhBlmx1UEsDVoOuIqXf7y0r4bjFAkA7I2ZT7xMkKbyfbxd2J65s3eZBnX0Ymwg4QgDzqTPWyDR8FBnYnl35OkVhlhlAjNt34eIJL/cGW41HtymydQCiU5UdtsdhcET32cvu7c4ZPRBmJ/8bnLn8uvBBw/H4YjRZfMWWTZSOtaeRy3ieeE1AOvoixbDzoc4oieN0K5zixdSZaeob5wNdkhKo3neB6on2uH3bSvuJQcpsRE0vok6zzJyYSYUGVswqPLA6ErHW2pabjQqro7euUHShW8lVOvo+8GwCij5W/LkNzxd7XQksGTialU2OqfXZnc= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SmMva3RVd2hINjBzeWJIQmtENU9qcElMLzJnTXRpQVBIMWpUS2kvNjZPaHFm?= =?utf-8?B?K1h1T3pkUzlzT2Myd3lJbmF4U2RjdTQyZGt1UXFzUDJlc1kwRFg0aFcyOFR5?= =?utf-8?B?UXdmdG5JNER3Y2tDbGxWeGg3NXYrblVpOFJXVllwSTcreXpYUUZvRGhWb2Zr?= =?utf-8?B?OWRCZnhMVE9ubG5BOWM2RHB5elNMbEQ1dk55akJPUU1hWENLNUx5MzZId1M4?= =?utf-8?B?N01tWVFPTkxsMldBT0Eyb24rdWQ0WHBWMUFCOVpGMUxKL21VVkhFY2g3Mjkv?= =?utf-8?B?L0wyNVBIbmlyNnQxa3JObnkzZzBqS0VUQ1hnWTlkWmFKQ0xUbE5iMFFNYTlV?= =?utf-8?B?d2JFbURhNzJMb0U3bDcvMWRCVHlxa251aUN1VHBoNzB4VXhzRnlVZW8rYnBp?= =?utf-8?B?VTcybFJZa3ZGcHN6dTE1bEZtU2ZNN3BGL256ZGRIb05WWG5WQjJjam44VDg3?= =?utf-8?B?TWFOQ01oWWQwUXdpRVpjUTVtRmkyRSttMGIrcDdoU2tPWmhsQUhpWW1pMjdn?= =?utf-8?B?RmJWblV2MGthM080OXJqNHBLeDZoM0tXRG5wMHNnclp5R3JvWnVkem05cnZx?= =?utf-8?B?dEtUK1FvelNKd2Q0VEdpaGNsclNMZ3BreU4zN2pET2IvemFQRjJOd01qbmFa?= =?utf-8?B?bHhycEt5MVNIb0FpQUxuc1hrNkh0aFB0QWJuaHNXMVViZFl4cWxGV01CbUIw?= =?utf-8?B?YnJVUHQxUnJIUGx4ZWYvTE5uVkpVTnV2VG9pS3ptd3JDTWdGbDJTVmxnSlYy?= =?utf-8?B?aEhTMkxKVWd6M1FlV0Vzb1ZTQ1crYXlJYkhIaGxNdHZFcnd6SFp3dEorRE5L?= =?utf-8?B?QW03NXpST2Y3dldkZ0RTcUUwVkl1ZTBQYjJqZVlYeDZYL3E3NVNjQTM2OFIx?= =?utf-8?B?UnkyTktINFEzNlhsbm9yVjJ2ZEUzRTNNT1pyYXJwMUxXS0FHUytucHNNMWEz?= =?utf-8?B?UTdpK0lWVkFqcFdJbmlCUzQ4NEpPbyt0TmJQYWlva084cDg4bGIyOXVnU1V2?= =?utf-8?B?MEg3U2wwdC9IZkpOVTJKekFIbzA5dUhySC9rRXJvMkN0aXVxdlhxN0UvOVNm?= =?utf-8?B?cHVtSGlKYnB6L1BGVjhoSVZJdFlTRVNWd3hOYjF6L1VJUVdMVXpweXRyQWky?= =?utf-8?B?V0dNVTFPc2pFcVhnN2dlUnc3RnRLNEFIK2RWNnJkOWxPUnJJTjNlVjZaY01B?= =?utf-8?B?NE5tVFlQSXZaT1BqNUo4L3U0UDVHZWdZdFJIOTZkR1VzZGpzTEhTMVBjQnMr?= =?utf-8?B?a1RRaDYya3VCaTVBZTRpWjIrK2hPN1RQZ3M5SUwvOXlRVzMrSUtHbnpRdmxh?= =?utf-8?B?K3FCWUJqLzFBTUZHWTMzc3p1TkZxZnRkNFdDdEUyb3k4blZ2T3lkR21ONFZL?= =?utf-8?B?VC9QZGJ2dWVaZitTdlUvK0V0b3BwL1BNcEFYNUtQMnpETmE1UHExZE5UTHRy?= =?utf-8?B?TThLTlFIRmdXbFJlbTVqbGwwazU3S0gvNDJMa0RKREVYVjY2MjJlclpkWTdX?= =?utf-8?B?MThzWkFZajJoR1FlSmoxWUl3bWs5Rk9QcC9TbHJ2R2txTlB4T2RqQTFTN2FX?= =?utf-8?B?NDhtanhvSXgwem1ZNWtGVEJSNGdpNmxhdVYrT0p4dFEyWEVJLzg1b0JRa0ZL?= =?utf-8?B?TXFXbnhkZXJTTHMwL216ZWVOaFg2TW1CY2FSYUxXVEdSSUpZVkhaSXN5M2RQ?= =?utf-8?B?cjEvZ0J2bUxKZnlwNnlPMk9QNkNueERTa2dUdUlPL3lkaHFQZFFRQUdBPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7a791085-3405-4a19-e892-08dc2adfd3f5 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Feb 2024 09:00:00.3770 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P250MB0104 Subject: Re: [FFmpeg-devel] [PATCH] avcodec/hevcdec: fix out of bounds index -1 for inter prediction 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: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Nuo Mi: > It's a false positive. We use -1 to index an array, but it's not actually used. > This patch will make the "GCC UndefinedBehaviorSanitizer" happy. > > Found by: checkasm-hevc_pel in https://fate.ffmpeg.org/report.cgi?time=20240211011905&slot=x86_64-archlinux-gcc-ubsan > Reported-by: James Almer > --- > libavcodec/hevcdsp_template.c | 6 +++--- > libavcodec/x86/hevcdsp_init.c | 6 +++--- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/libavcodec/hevcdsp_template.c b/libavcodec/hevcdsp_template.c > index 9b48bdf08e..a4b8901e5d 100644 > --- a/libavcodec/hevcdsp_template.c > +++ b/libavcodec/hevcdsp_template.c > @@ -301,9 +301,9 @@ IDCT_DC(32) > // > //////////////////////////////////////////////////////////////////////////////// > #define ff_hevc_pel_filters ff_hevc_qpel_filters > -#define DECL_HV_FILTER(f) \ > - const uint8_t *hf = ff_hevc_ ## f ## _filters[mx - 1]; \ > - const uint8_t *vf = ff_hevc_ ## f ## _filters[my - 1]; > +#define DECL_HV_FILTER(f) \ > + const uint8_t *hf = mx ? ff_hevc_ ## f ## _filters[mx - 1] : NULL; \ > + const uint8_t *vf = my ? ff_hevc_ ## f ## _filters[my - 1] : NULL; > > #define FW_PUT(p, f, t) \ > static void FUNC(put_hevc_## f)(int16_t *dst, const uint8_t *src, ptrdiff_t srcstride, int height, \ > diff --git a/libavcodec/x86/hevcdsp_init.c b/libavcodec/x86/hevcdsp_init.c > index 31e81eb11f..e0f65177c4 100644 > --- a/libavcodec/x86/hevcdsp_init.c > +++ b/libavcodec/x86/hevcdsp_init.c > @@ -87,9 +87,9 @@ IDCT_FUNCS(avx) > > > #define ff_hevc_pel_filters ff_hevc_qpel_filters > -#define DECL_HV_FILTER(f) \ > - const uint8_t *hf = ff_hevc_ ## f ## _filters[mx - 1]; \ > - const uint8_t *vf = ff_hevc_ ## f ## _filters[my - 1]; > +#define DECL_HV_FILTER(f) \ > + const uint8_t *hf = mx ? ff_hevc_ ## f ## _filters[mx - 1] : NULL; \ > + const uint8_t *vf = my ? ff_hevc_ ## f ## _filters[my - 1] : NULL; \ Spurious addition of trailing '\'. > > #define FW_PUT(p, a, b, depth, opt) \ > void ff_hevc_put_hevc_ ## a ## _ ## depth ## _##opt(int16_t *dst, const uint8_t *src, ptrdiff_t srcstride, \ I have just sent an alternative solution for this that avoids all these branches (which the compiler will not be able to eliminate). Unfortunately I can't test mips and loongarch myself; there is a fate-runner for the latter, but nothing for the former. So hopefully someone can test mips. - Andreas PS: The aarch64 code (hevcdsp_[eq]pel_neon.S) already offsets its filters via dummy arrays. I wonder whether it could now reuse the ordinary ones. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".