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 122AC498D4 for ; Fri, 21 Jun 2024 09:39:02 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B92E668D7E1; Fri, 21 Jun 2024 12:38:59 +0300 (EEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04olkn2108.outbound.protection.outlook.com [40.92.75.108]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E31E268D7C4 for ; Fri, 21 Jun 2024 12:38:52 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QbUsWh2qDlL4E0mEamHWJ+X+pjQThPV8DUhzDmm2BUzoe+30YmQf4la+6W1Q0QTh+l68+x+cLljLdbQGQc+kRIdOmjIX57B/SRp9K20u/9ALtdwDQhVC31VKwqroxUPzOQfRHjoFmEds4cXqPV1aBgZYnbf/3wq07MdfnepKNQI9M0vepUZhaUcDRq1EZ8h55giOSQJvh5qgg+7gg1TB6aeUD0i4jd1VfQOT1pByONM6umZgV8F98i3HxDJA1bEyRPxwOwETr9NWBlHLuIVceczp6E9ACE4XIbrW69/WVL/Dx7GVkmSI7zrSfdRtkbJ8Rc9+ePot/3Kj1S1o0REMkQ== 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=DJVB5E1/d3y3WXnmjP5ON1IhZNmXTCD94mNuaHLKnf0=; b=XKLzZGoF0lBAsUXMYxflGI04qxqcYurUPRpqoS9wc7q4V8LzCAe+6MaA519Nng/UqZ8T1HBCOg60VdlRVfiRFa38FWCcDv+VfvP83Df1c3nsWQGz0H0R23yhq7l6+OuEFUHp8PkwEg7dLoxWqdKpKx2pK48eA49IvUFqwvgq/66z8qSl8yfhBDv/2xE/i42NElMXmWN4E5dW/roUfux6Np/CN+dBzCRQj6BnilsjTf8I2y8tVw0depYiElGem5bVgA9/FolbTJVzXg/k3oTIzU/x2xZ4eOm+McCZfo8g4RHaon0A6gCkAzLu3Z2WdcUfcLdQQKtvFajJhb4OeLFn8Q== 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=DJVB5E1/d3y3WXnmjP5ON1IhZNmXTCD94mNuaHLKnf0=; b=uw+SyJ7JgJDxapRUamDtjXCDu+LhyYZhb4ZMS8hYIsewROA/mGRfbNy1F6QSVxq8R0KOR+tKg5f1Xjhn+aZ+lPMJq2lyvce6p6hXuTyRydM/vnLMgcR5yqotE6OyhI90eDSEqYI4wHqJPPf3VN7mjyJnmaKdH6s544mMC2cwhE5Q3oVqydvtA/7uvHlhkZXVZUgbvAvO0ry03gnLhlVO59CTCZpNzQ8gD3MI1bX0ala0zl4EAeBMgIXmwyaARjHgqN/gprpfDNwDfoXLqiQzu0TPX3GRJfc2nn7XvaVbKH/1QsISF0/Cdp7Hd5xFLAcJ4mZahUvdEA49H8Q8rZcPYg== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by DU2P250MB0224.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:279::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7698.22; Fri, 21 Jun 2024 09:38:50 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%4]) with mapi id 15.20.7677.029; Fri, 21 Jun 2024 09:38:49 +0000 Message-ID: Date: Fri, 21 Jun 2024 11:38:46 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20240620193504.2310780-1-michael@niedermayer.cc> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20240620193504.2310780-1-michael@niedermayer.cc> X-TMN: [Vlhj9Lj55dZk8Ug4H1r3hm0VvwRaZhwADsW/p3BqUHA=] X-ClientProxiedBy: ZR2P278CA0081.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:65::17) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <0bfc6da6-7959-44cc-ae1b-d2b36df0b8b0@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|DU2P250MB0224:EE_ X-MS-Office365-Filtering-Correlation-Id: 8b5ad45b-991c-4232-0920-08dc91d5f3f7 X-Microsoft-Antispam: BCL:0; ARA:14566002|461199025|1602099009|440099025|3412199022|4302099010; X-Microsoft-Antispam-Message-Info: owGPpx4U9YxyNOga1zhtx8MkfkDK5OASLSORxsAp119M8iMlyu6bJ1B/B9nNLxuUpLwgxhmKmys+oc7XNZktiaJFcYwKbuI5OWQ2cLPmDpv6DlAq3mwU5wshrKeCUFxrh2Sduy/NFd4pUgJczStl3ngn+CxNwgp6k1YqTopPaMBr6iPRigc2O2R0oJLbP9w/DTekiuopzG+0ADcn8AJqKrabcSFzsc0s4aqksAzcAJ9P78QuAN2BZBav6paUfyD8pxJTqV800BGvrScSelbpk/3UJuykTSpiM67I59Ybxri6QIxiXUaHxBpQx+RwnlrlSfHkoD8Xrf7KEFXXdjRklzL7KqB2bCvAQyo7JXrYAFTwaQH11kMr0jJIoF1JUYU5CHiHZtZNPce4tTUpoKdxz9CmP9TtaDzOYu/n5La2aAS/DLFWMfEC58xKicrsYvzGHS3N4L0bcdv5nX2gwFWX02i10DMiMTqxe5P9bcmXTbI20VOnCJCqwNDChvT33H+qlzr8gHIIDEbiIEDbyPDzySXQL5oT2YwC08NTkkaJi3feE0+wpw5xOUbiNhULmsPTqUS+tOwkRlTuribsu/VX9Vyvzf85TS6gdG9SkF55SINTDJKZNPgZ3qVuxlID57sHZCKfyKI5GGFfdyID7ymX8qMcKFzpk4N9YWrQtInpeWdioTRcJvJxisd2p/yzE63+ X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bGd5LzVVVEZnV1NtMTlaakZEL0pQSE00dTNDWE90V2VUYUFNdDFqaDRpT3lo?= =?utf-8?B?LzZwelVaUXQxeGUyQStWL01sODJaR1pZYkRRd0pNT1FXNEg2VW5wczdrWjE4?= =?utf-8?B?VDFDUlNTeWx6NTJuOXdQU1hrM0tSelFHSnl4RG9NTGpqY00vbVhTNEwybEw0?= =?utf-8?B?RXM3WVBGQ2J5ZFZ1VlozV2ZQNzE2c1dqeHVqWllsMUh6SVh1Z2lLekpydUJM?= =?utf-8?B?UnFYUmp0eE5CcElnNTNVcEg4SFlvdzFvNGUxc1crVlowTzhJOVJaaTIxYnlj?= =?utf-8?B?UXJkVEVNZHZQelJoMHU1TnpLWlorVkRzS1JSSFZXZUoydVlMcjdWY2NQYTA1?= =?utf-8?B?NWI5QzQxRHVlRFlEZEEvQkNXNXBlVzhYOTRZek5IcG8zYTVzRFNqSzZaaU9J?= =?utf-8?B?a0Y0bTFLVVpSbGlXWHpZZHZUNzhRKy9aeUZJdWQwdjVKL2JDVWRjMWdFdlo4?= =?utf-8?B?R2szYzlTck03MlRxcDZZVys3L0UxU1cvb1RsZngzQzNDUVBUaVhUVFl5YlNj?= =?utf-8?B?a0RTUU4zREZlWmRiczJUVnZBUURVd2NlVWNVUFJWWUJjUldBeHgwckdLZTBD?= =?utf-8?B?OU5zaE15bU5zZjhUVkZKM2VUN2FVRW5IYTk1emJSSk15ZHNTd0VmUURMZXZN?= =?utf-8?B?dTZGVlRUc3BpUGhic0dnM29jS3RDWTNLQmh2UzNJT3BqTVpoWjNUVDNoUkRP?= =?utf-8?B?RzlRUUFLZDZ3ZG90TjgwY1ZWYk9RMnpia3ZtalhrWGQvKzI1ek96TVE1d0tC?= =?utf-8?B?eXQ3TjlENTE1N1I3UHlMeC95NWxITnlCL2EvMjRNczJ3RkV2L2E5MTRFUXlz?= =?utf-8?B?L3RSZGloSVVVYmdwZnpmcitLWW9NNXJZQ2dYdWI4M1d5cGlwSFVuR09OWDZE?= =?utf-8?B?bWVkZUhEUmxFdDlTcldqNi9zcnFqLzYzcEpydEhiTlVoSXduQjJWWDZidm9a?= =?utf-8?B?K0tTVzAvdmoxaGpreUMzVGhBanplUThkNC9pY096OVVXcURNaDM0VjlDNi9B?= =?utf-8?B?c1Vuaks0RlZJY1c2Slc5WnpWb0Y3eEx4ZmJxdEVXRlloa2REUmZUeUtVSnFv?= =?utf-8?B?dzZLVys5WUhxb0hkV0RNS1hHbDVDakFqQWlETkdFeWJJTDE1T3JjMzBaeHg0?= =?utf-8?B?TFQ5dVdYWEJrWGptL2VVeWd6ZndDaVRLZDVyMCtzZjVDeWpyWEV1SVZwYkFM?= =?utf-8?B?RUFyYnNXZzNuU1UycE9HNXMyTmVPU1Z2aEtVRlArbkxkbnIrRTZlU3VOYkFG?= =?utf-8?B?eWZOL2tWVk9Hb3lEZzBsWm1VL0hlWXRyeGxlSVNwMUFOc3dZMFFjN0MxU01t?= =?utf-8?B?eXh0VkpWTzViY0NJOE40eWRpYmVFTUpNREJQMUxLMGZocDBqRW9VemovaGJK?= =?utf-8?B?Z08wNTdJYlprM0tYSzU3eUlJUUJMT2kxK05zUWxISDhVazcyUkR4SHN6bmIv?= =?utf-8?B?Z1VNUFpSdUlYSTdLaXpwNDdvdDh6TEJIc3FDMkQwb2RvTW4ycGdIY2ZhZDJQ?= =?utf-8?B?bUl6WTVTSGlLdmcrUHVMYU9oVS8zZlpNYzhmU1MwaVdIcUdlVnV4YVIydDlM?= =?utf-8?B?Uyt6c2JVUGVTTVlRemRxUlNTdFVPQzZzbmVFWWxZdVJFWG11UmVrbUlNMG9F?= =?utf-8?B?WDliazdzMDQzUWVuQW1HTzllQmNDZXpmN0Y2VWphcnhiM0gwM2cxQWlJMWI5?= =?utf-8?B?WDg2U09qN1BrOVVmcnM4VXcvdktMV0YwZFRiNnFPQkhvZGlzSklQRjV3PT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b5ad45b-991c-4232-0920-08dc91d5f3f7 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2024 09:38:48.9507 (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: DU2P250MB0224 Subject: Re: [FFmpeg-devel] [PATCH 1/4] avcodec/j2kenc: Merge dwt_norm into lambda 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: Michael Niedermayer: > This moves computations out of a loop > > Fixes: signed integer overflow: 31665934879948800 * 9998 cannot be represented in type 'long' > Fixes: 69024/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-5949662967169024 > > Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg > Signed-off-by: Michael Niedermayer > --- > libavcodec/j2kenc.c | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/libavcodec/j2kenc.c b/libavcodec/j2kenc.c > index 8cf82f7216c..91e66d81048 100644 > --- a/libavcodec/j2kenc.c > +++ b/libavcodec/j2kenc.c > @@ -1349,7 +1349,7 @@ static void makelayers(Jpeg2000EncoderContext *s, Jpeg2000Tile *tile) > } > } > > -static int getcut(Jpeg2000Cblk *cblk, uint64_t lambda, int dwt_norm) > +static int getcut(Jpeg2000Cblk *cblk, uint64_t lambda) > { > int passno, res = 0; > for (passno = 0; passno < cblk->npasses; passno++){ > @@ -1361,7 +1361,7 @@ static int getcut(Jpeg2000Cblk *cblk, uint64_t lambda, int dwt_norm) > dd = cblk->passes[passno].disto > - (res ? cblk->passes[res-1].disto : 0); > > - if (((dd * dwt_norm) >> WMSEDEC_SHIFT) * dwt_norm >= dr * lambda) > + if (dd >= dr * lambda) > res = passno+1; > } > return res; > @@ -1384,11 +1384,12 @@ static void truncpasses(Jpeg2000EncoderContext *s, Jpeg2000Tile *tile) > Jpeg2000Band *band = reslevel->band + bandno; > Jpeg2000Prec *prec = band->prec + precno; > > + int64_t dwt_norm = dwt_norms[codsty->transform == FF_DWT53][bandpos][lev] * (int64_t)band->i_stepsize >> 15; > + int64_t lambda_prime = av_rescale(s->lambda, 1 << WMSEDEC_SHIFT, dwt_norm * dwt_norm); > for (cblkno = 0; cblkno < prec->nb_codeblocks_height * prec->nb_codeblocks_width; cblkno++){ > Jpeg2000Cblk *cblk = prec->cblk + cblkno; > > - cblk->ninclpasses = getcut(cblk, s->lambda, > - (int64_t)dwt_norms[codsty->transform == FF_DWT53][bandpos][lev] * (int64_t)band->i_stepsize >> 15); > + cblk->ninclpasses = getcut(cblk, lambda_prime); > cblk->layers[0].data_start = cblk->data; > cblk->layers[0].cum_passes = cblk->ninclpasses; > cblk->layers[0].npasses = cblk->ninclpasses; Does this also fix the UB in the vsynth*-jpeg2000-yuva444p16 tests? - Andreas _______________________________________________ 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".