From patchwork Wed Oct 19 09:06:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Khirnov X-Patchwork-Id: 38823 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4a86:b0:9d:28a3:170e with SMTP id fn6csp248639pzb; Wed, 19 Oct 2022 02:07:19 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5f9CHB9tyM5gMQyis2lMWlHnR0UUoG5NpMCFpIzc8rdAyed81bMONtedg2eWe8d/dnt3WH X-Received: by 2002:aa7:de10:0:b0:458:e101:fe54 with SMTP id h16-20020aa7de10000000b00458e101fe54mr6335260edv.80.1666170439005; Wed, 19 Oct 2022 02:07:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666170438; cv=none; d=google.com; s=arc-20160816; b=Y+/ZT1rMqVPAZ4MP4ER/1y2yIrWLurNZZ3uTT1BOkBukJU5mjOjd/ZqFUtjBp+hIUt DeXoNe/nK2FG4sgmKS0oRQr8hUQPq4yQcvreTqa8ohtLYjD3n1BCWTHbkUvw0t0hfe4t mNvRv2pdx7L2UGFYz1jCtVj8I/5ra9ZGFvh+ajM3utscbRLCOWwj3DlbqgzTm1elVLfD MxxTowwD7nUJtmGWsZug3UI/p34EmH+Tpw9JgD+vB1sMTFtdIzvXGKtQZrbpwMvEpRAG +ZQ8C6GS31WMzzKv4NqJZ09Vd0gpbMD+aCekahFM8+ivvOoW2NG0AasgI9yKbkz51rL1 JeFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:delivered-to; bh=mbOKYxXq7dO1p3MffybXZ2n2kxkCPStpA+M/7zH8OCE=; b=lMUPfXhdv0GELToYFzWMqooyqZiK/fEuJPa8oInQoanMjDa646PNxmwcRa8IN4TkT+ EoHCSKESMhBERFTd4W2FYFSnxFME6y2K0eAfmrIjZtGoLNCT4cZ7lAp8c6tQ4fInfYiA bBz2OEQ+uWImOxzN7KwoiqS+jIJ9P/5yL9yN0SVr7SNQsxUwFDFajC6VcZHWR9ZgWby1 ceW4tu2IKfoUMhJgfyGIXJTAH5c+wYavjd3KFlggukFFr/sqqpod03fmCHR+YqxthIRX +ZFhJK4hL6LH1Iuz6OBVwVe83RDQqsQC50cm9yYIkeFmd3jtqmi089mU2BzVyqIsIEkw z0gQ== ARC-Authentication-Results: i=1; mx.google.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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id xg11-20020a170907320b00b0078dfdaa3fd3si13294360ejb.935.2022.10.19.02.07.18; Wed, 19 Oct 2022 02:07:18 -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; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 8E55E68BDFC; Wed, 19 Oct 2022 12:07:15 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail0.khirnov.net (red.khirnov.net [176.97.15.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 02B9668BC9B for ; Wed, 19 Oct 2022 12:07:08 +0300 (EEST) Received: from localhost (localhost [IPv6:::1]) by mail0.khirnov.net (Postfix) with ESMTP id 17D752404E4 for ; Wed, 19 Oct 2022 11:07:08 +0200 (CEST) Received: from mail0.khirnov.net ([IPv6:::1]) by localhost (mail0.khirnov.net [IPv6:::1]) (amavisd-new, port 10024) with ESMTP id vUVNWGPSEsNu for ; Wed, 19 Oct 2022 11:07:07 +0200 (CEST) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:2a00:c500:561:201::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "libav.khirnov.net", Issuer "smtp.khirnov.net SMTP CA" (verified OK)) by mail0.khirnov.net (Postfix) with ESMTPS id 85B902400F4 for ; Wed, 19 Oct 2022 11:07:07 +0200 (CEST) Received: from libav.khirnov.net (libav.khirnov.net [IPv6:::1]) by libav.khirnov.net (Postfix) with ESMTP id 76A5A3A056E for ; Wed, 19 Oct 2022 11:07:07 +0200 (CEST) From: Anton Khirnov To: ffmpeg-devel@ffmpeg.org Date: Wed, 19 Oct 2022 11:06:51 +0200 Message-Id: <20221019090651.31082-1-anton@khirnov.net> X-Mailer: git-send-email 2.35.1 In-Reply-To: <18407DAB-AFAD-4C94-A45B-D751BBA71C59@remlab.net> References: <18407DAB-AFAD-4C94-A45B-D751BBA71C59@remlab.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] lavc/pthread_frame: set worker thread names 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: GUUI/aP8jYAC --- Yes, the space is limited and we could bikeshed until christmas about the best way to use it. Here's an attempt with an 'av' prefix, 'ft' (frame thread) changed to df (decoder - frame thread), and only two characters guranteed for thread index. --- libavcodec/pthread_frame.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c index f8fddc5e4d..df82a4125f 100644 --- a/libavcodec/pthread_frame.c +++ b/libavcodec/pthread_frame.c @@ -179,6 +179,17 @@ static void async_unlock(FrameThreadContext *fctx) pthread_mutex_unlock(&fctx->async_mutex); } +static void thread_set_name(PerThreadContext *p) +{ + AVCodecContext *avctx = p->avctx; + int idx = p - p->parent->threads; + char name[16]; + + snprintf(name, sizeof(name), "av:%.7s:df%d", avctx->codec->name, idx); + + ff_thread_setname(name); +} + /** * Codec worker thread. * @@ -192,6 +203,8 @@ static attribute_align_arg void *frame_worker_thread(void *arg) AVCodecContext *avctx = p->avctx; const FFCodec *codec = ffcodec(avctx->codec); + thread_set_name(p); + pthread_mutex_lock(&p->mutex); while (1) { while (atomic_load(&p->state) == STATE_INPUT_READY && !p->die)