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 DF9D84F182 for ; Mon, 16 Jun 2025 09:40:45 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id E4D1268DB78; Mon, 16 Jun 2025 12:40:41 +0300 (EEST) Received: from out203-205-221-235.mail.qq.com (out203-205-221-235.mail.qq.com [203.205.221.235]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 34A0668DB69 for ; Mon, 16 Jun 2025 12:40:33 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1750066824; bh=7aHccgwKJy/aTk58v3XogdGLqfKRlgyfSmZDzu32jd4=; h=From:To:Cc:Subject:Date; b=De7OPvjOG3KGKOqwTN4q9UZQYoACr+GSlyqLtwgPI1H4HoIyb5mtNNthItInUFuQy 4MZNL9Dv84bELtXv5baK0g4Kdjz/Nh6hCTfpFk0mDQgdBWEylXcGFwsPgJUKciNh8+ UHnyZVqHjM+VklZyKq3l4Q/bvCCcRMsO0Q/pZl3E= Received: from localhost.localdomain ([119.147.10.242]) by newxmesmtplogicsvrszc16-0.qq.com (NewEsmtp) with SMTP id A15B62F8; Mon, 16 Jun 2025 17:40:21 +0800 X-QQ-mid: xmsmtpt1750066821t61rnrspw Message-ID: X-QQ-XMAILINFO: OCYbvBDBNb9rI3V958YM3I2rJ6tP0CivlEkwRRskarzmBSDoDY1yfmCy50eszS M7M4AyOnUlxHsgXgxcGl5TV99/hIMKQLA2VtdYJC0HlI7OhTbriXhENMARl7vBh/gU7cCELSmE6E 0mk2YQAZDm1EHB+lsPmL6uCv2ZJskTec4W1hMclDGWTAK7av2tCl2ykLGvPjp1rfujQdTUX2hvaI 4fxFg7fiD9my9Vh+UEBhrkNuCcUcLuMqukhXEc5yjGi4ByMeyIeBcS3uCYLW16OcP9m2StSF7eHD dZfP2NfAxd/tA+teQjEQ8kg2CM7tnfDwX9DQxXJtuZjmyB19AuDeWbj3hCjuE13kKiExJ990Z5wj Pr1QZvPsTxoUZw6Gw3MTSX3YegLFMpOKl0/GiLLrTi2XhlbQAtvD8Om9ifFWLrsR18quGBARD0ZA 9HD03e+HAeUFJiuiwWG+naQVil2WAVyi8jeGC0vMR4Ah7FGt6ia1VIMC4W9sgq3RtrE2b5k01HfK tdls49fH/xlu65IQapWfE2zlqn+BItxNfHhWkIxoUHWPYpO8rdyX22WkEszdBZlgd7SmbbadOsrz eaYn5EMJOO13EP4Q7uoDtGBgdItjVwJnKV6kjEurQY5AAYWYRZs8kNynZ5uEDuc+PLbLHvFH75PK XBZN+Y1w1t46u51VnguPhp55ML2s70jsjEBQu63l8IHq1piHzWxWe50iJGwTWgnuEbR4aRmqJKA8 TC9Z0q5ipLSfkxyo/5MAZXblSD2+vF/rybeEJmSOjbXTjVIZzvut1OWq53q6NkVtUBUQT+qnuF8z QhDhSPRFKoBJQOjFXRwJrzGL2iNci6D5sZRovkc5W4emSoGoULzmtkjIO8qlGZZ5/d3FGjH/8614 CXpWu2k9H0xwWGmbasl76n5OawA5Q3KLxsx6f+ovz/9a7g4au8PJLAZZXVfMYG9aYh/xSNZROvG0 KahLSNhG4op8RyUZrsskrJ8MjQwXkGhwKlZR9AIJDIlaWoBsqIPlsoubIjVwPlZkMr3Vnfe7RUdv jcuZ0X9w== X-QQ-XMRINFO: OWPUhxQsoeAVDbp3OJHYyFg= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Mon, 16 Jun 2025 17:40:21 +0800 X-OQ-MSGID: <20250616094021.299726-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3] checkasm/h264dsp: Fix stack overflow in check_idct_dequant 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 Cc: Zhao Zhili 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: From: Zhao Zhili --- tests/checkasm/h264dsp.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/tests/checkasm/h264dsp.c b/tests/checkasm/h264dsp.c index f5f9650224..a0f8fd858a 100644 --- a/tests/checkasm/h264dsp.c +++ b/tests/checkasm/h264dsp.c @@ -328,25 +328,35 @@ static void check_idct_multiple(void) static void check_idct_dequant(void) { static const int depths[5] = { 8, 9, 10, 12, 14 }; - LOCAL_ALIGNED_16(int16_t, src, [16]); - /* Ensure dst buffers are large enough to hold dctcoefs of all bit-depths. */ + /* Ensure buffers are large enough to hold dctcoefs of all bit-depths. */ + LOCAL_ALIGNED_16(uint8_t, src_buf, [16 * sizeof(int32_t)]); LOCAL_ALIGNED_16(uint8_t, dst0, [16 * 16 * sizeof(int32_t)]); LOCAL_ALIGNED_16(uint8_t, dst1, [16 * 16 * sizeof(int32_t)]); + int16_t *src = (int16_t *)src_buf; int16_t *dst_ref = (int16_t *)dst0; int16_t *dst_new = (int16_t *)dst1; H264DSPContext h; int bit_depth, i, qmul; declare_func_emms(AV_CPU_FLAG_MMX | AV_CPU_FLAG_SSE2, void, int16_t *output, int16_t *input, int qmul); - for (int j = 0; j < 16; j++) - src[j] = (rnd() % 512) - 256; - qmul = rnd() % 4096; for (i = 0; i < FF_ARRAY_ELEMS(depths); i++) { bit_depth = depths[i]; ff_h264dsp_init(&h, bit_depth, 1); + if (bit_depth == 8) { + for (size_t j = 0; j < 16; j++) { + int16_t r = (rnd() % 512) - 256; + AV_WN16A(&src_buf[j << 1], r); + } + } else { + for (size_t j = 0; j < 16; j++) { + int32_t r = (rnd() % (1 << (bit_depth + 1))) - (1 << bit_depth); + AV_WN32A(&src_buf[j << 2], r); + } + } + memset(dst0, 0, 16 * 16 * SIZEOF_COEF); memset(dst1, 0, 16 * 16 * SIZEOF_COEF); -- 2.25.1 _______________________________________________ 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".