From patchwork Tue Apr 4 13:09:48 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ronald S. Bultje" X-Patchwork-Id: 3285 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.44.195 with SMTP id s186csp181752vss; Tue, 4 Apr 2017 06:10:01 -0700 (PDT) X-Received: by 10.28.180.137 with SMTP id d131mr9121874wmf.108.1491311401785; Tue, 04 Apr 2017 06:10:01 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id q71si24388974wrb.291.2017.04.04.06.10.01; Tue, 04 Apr 2017 06:10: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; dkim=neutral (body hash did not verify) header.i=@gmail.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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0E0236882AE; Tue, 4 Apr 2017 16:09:56 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qt0-f175.google.com (mail-qt0-f175.google.com [209.85.216.175]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 06317680D07 for ; Tue, 4 Apr 2017 16:09:49 +0300 (EEST) Received: by mail-qt0-f175.google.com with SMTP id i34so137942802qtc.0 for ; Tue, 04 Apr 2017 06:09:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=LRHhpkpdae1zeYDuS4yfXVxxudIyf0csm5g2420M0NE=; b=FUK7PcGsqurmFhdB6zHyHhgVTtrshk/qG9R3JgVbcdnWDQqFe1niM4N44/xlai/Bzp 0d6O4WkZu0xE1949E0pLTykbXjM5LulMYtrLaxkSN10MjlNXvSFsQjAwHEtSlxR2vmxF nRhLlbkcIF0iuuf9joD+kLu5qMm/mShvkyOtWHj4TSUlmRyjOc9xoBaVXF9wYGp/5LII 50XcXxFDar+yxdZUeq9nWQOkhJk9owgbxEMfTwASeELLK+mb3Xe41gUIB21TGiRBved/ qu3klDdV7mo4DH5WZBwQ4OhA06wGt4QO0pLVJmnhJhxSU1i/nF9b/C8cqLzZZcmulwnt yN9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=LRHhpkpdae1zeYDuS4yfXVxxudIyf0csm5g2420M0NE=; b=DdJLxUfyJ7gD1JkmlJ8tbIg1RCHY51rDy975NoB5pTFcwd/vC6NflBf0NHjsVbpO8s Txo8l7EPITl81ICuXZWgeW3ZMhSna+ZYiMX29o2yR7VPVfcE6jes7fg/I1dfBjlqJZTo AorMPeNl8KxqlSbHJgszaRXuvc+ew4RkPFPdEvKuu5lHcRFSuXSxhHQk0HhvbIEnhtwB h8OEw2U/DtOZtMEjtnCSBa3dOERIpABfgv1UnovVCFHPd5x8tUcbyw/Ym29bkeWaG4Gm IrJkMrB+xjylMEbYU2LgYnLBdnc6W0PeHeyOqeuf4866ppbfDDaH/SacBMOqNeiB78T8 yT4w== X-Gm-Message-State: AFeK/H39rcn4Q+yQaHoCaNEfsyIZjAAsEjj0TaO1Ssu14/0ArUInE9kj/HUNR7IJLJAivg== X-Received: by 10.200.49.29 with SMTP id g29mr22017301qtb.275.1491311389924; Tue, 04 Apr 2017 06:09:49 -0700 (PDT) Received: from localhost.localdomain ([65.206.95.146]) by smtp.gmail.com with ESMTPSA id k133sm5086476qke.25.2017.04.04.06.09.49 (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 04 Apr 2017 06:09:49 -0700 (PDT) From: "Ronald S. Bultje" To: ffmpeg-devel@ffmpeg.org Date: Tue, 4 Apr 2017 09:09:48 -0400 Message-Id: <1491311388-4180-1-git-send-email-rsbultje@gmail.com> X-Mailer: git-send-email 2.8.1 Subject: [FFmpeg-devel] [PATCH] dnxhd: set keyframe/pict_type before calling get_buffer(). X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: "Ronald S. Bultje" MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" This fixes the following tsan warning: WARNING: ThreadSanitizer: data race (pid=95987) Write of size 4 at 0x7d5000004278 by main thread: #0 get_frame_defaults frame.c:117 (ffmpeg:x86_64+0x1016c5b18) [..] Previous write of size 4 at 0x7d5000004278 by thread T2: [failed to restore the stack] --- libavcodec/dnxhddec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/dnxhddec.c b/libavcodec/dnxhddec.c index 383e64c..77e62a2 100644 --- a/libavcodec/dnxhddec.c +++ b/libavcodec/dnxhddec.c @@ -626,10 +626,10 @@ decode_coding_unit: return ret; if (first_field) { - if ((ret = ff_thread_get_buffer(avctx, &frame, 0)) < 0) - return ret; picture->pict_type = AV_PICTURE_TYPE_I; picture->key_frame = 1; + if ((ret = ff_thread_get_buffer(avctx, &frame, 0)) < 0) + return ret; } ctx->buf_size = buf_size - ctx->data_offset;