[{"id":17951,"web_url":"https://patchwork.libcamera.org/comment/17951/","msgid":"<CAHW6GYLSV+33mXma7FQdKx-NyDQYEAryR5ShGGdW-mdH4c9+8A@mail.gmail.com>","date":"2021-07-02T13:02:12","subject":"Re: [libcamera-devel] [PATCH 0/3] base: Fix crash with recursive\n\tmessages dispatch","submitter":{"id":42,"url":"https://patchwork.libcamera.org/api/people/42/","name":"David Plowman","email":"david.plowman@raspberrypi.com"},"content":"Hi Laurent\n\nThank you very much for working on this problem, it is highly appreciated!\n\nOn Fri, 2 Jul 2021 at 00:08, Laurent Pinchart\n<laurent.pinchart@ideasonboard.com> wrote:\n>\n> Hello,\n>\n> This patch series fixes a crash related to recursive dispatch of\n> messages, as reported in https://bugs.libcamera.org/show_bug.cgi?id=26.\n>\n> Patch 1/3 is a small drive-by documentation fix. Patch 2/3 adds a test\n> case to trigger the issue, and patch 3/3 fixes it. Please see patch 3/3\n> for a detailed explanation of the problem and the fix.\n>\n> David, would you be able to check if this fixes the issue you've\n> reported ?\n\nI've applied the patches and all is good so far. To be fair, the\nproblem has definitely been less frequent recently than it used to be,\nbut I'll keep going for the next few days and add a tag once I reckon\nI've used it enough!\n\nBest regards\nDavid\n\n>\n> Laurent Pinchart (3):\n>   base: thread: Document the postMessage() function as thread-safe\n>   test: message: Test recursive Thread::dispatchMessages() calls\n>   base: thread: Fix recursive calls to dispatchMessages()\n>\n>  src/libcamera/base/thread.cpp | 45 ++++++++++++++++++------\n>  test/message.cpp              | 66 +++++++++++++++++++++++++++++++++--\n>  2 files changed, 99 insertions(+), 12 deletions(-)\n>\n> --\n> Regards,\n>\n> Laurent Pinchart\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 67788C3222\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri,  2 Jul 2021 13:02:26 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9DD18684F3;\n\tFri,  2 Jul 2021 15:02:25 +0200 (CEST)","from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com\n\t[IPv6:2a00:1450:4864:20::42d])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 99F30684E8\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri,  2 Jul 2021 15:02:24 +0200 (CEST)","by mail-wr1-x42d.google.com with SMTP id t15so9014724wry.11\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 02 Jul 2021 06:02:24 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"hoMDIZun\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=mime-version:references:in-reply-to:from:date:message-id:subject:to\n\t:cc; bh=8FxzgvFzkvs9bE8p2dYbDK/Awfd9Sk8D9uQN+CotP+Y=;\n\tb=hoMDIZun1ASaTy4upZ/wzdP7EqG4X5qq6BjxTbJuqTyKcrpaKTNKroBNP6n1zXu0Hm\n\tSwVBRGzZ4mYSwTAGXlEsFuic/cXMToEJ4xIN/ywoJ4fKk9O/QnGftvHsRJgMNDJvm5BD\n\tO0JGjDoRUPW2z6cIIRrJmZ2VoXEJKTzTmxhRQbBTP1hGRadm4DGJqgqE4oqKslyhn7yA\n\t26wHxgCOLGaN3jtvpig0Pl/020oqVAPNjbfchukbFFlGN62gR4yVWmsMab0VVU/CqXa4\n\tWX/ATqcFnoUpf3YNu2VilcZD+4702uvp2YlcNXlC7Fc57vqRNLah3QLzobf7pugRWJ8U\n\tV6zw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:references:in-reply-to:from:date\n\t:message-id:subject:to:cc;\n\tbh=8FxzgvFzkvs9bE8p2dYbDK/Awfd9Sk8D9uQN+CotP+Y=;\n\tb=clSq2hjgbycAPjmiptx6yKvsQPtkpCjShtGEsuNP2KyJXDyHF5PdLSGbX/LJNedYqt\n\trvfxv66hOLdEAogEctSCra0cm6LtboLW3UTXyBJ/4IlH7QVZxTo5g9Wgx2u7RdwOF1Lr\n\t5tcGiJtygODw+EO4bi7EorfD4ivnpijc5kMimFmjf63ECSGEjt9CWobAbh7Pe2e0jBuu\n\taHWmaoxo/FEQG5cyHpeLF349iAzSuRoxBYsvXh0DXf1FRs0VtE8aUBSYdknsbAGe+biP\n\tlFjCw3YzwpkLk6gnuKK3j33KIpveHfIYkwmvQkKYPx1I/uL4qOedrv7gUBZFUev60zet\n\tlMCg==","X-Gm-Message-State":"AOAM533apS3OA6pwi5fmhfH9Jt9uuW2O9p6Jb+B+CHJDoGMvA1eSg02U\n\tIeJSzjkENNMbxVm3CSGbvj9Y02vjWt9vjdRhjhjHCQ==","X-Google-Smtp-Source":"ABdhPJx8R33sJrNpi6kH7lnJADT/yKzoNDNjmdfJis1IW4oKBoVih3tVOppSvvgGMcIT2OwctAqsBzZNXjAlq+iJKts=","X-Received":"by 2002:adf:e8cc:: with SMTP id\n\tk12mr5711164wrn.163.1625230944278; \n\tFri, 02 Jul 2021 06:02:24 -0700 (PDT)","MIME-Version":"1.0","References":"<20210701230741.14320-1-laurent.pinchart@ideasonboard.com>","In-Reply-To":"<20210701230741.14320-1-laurent.pinchart@ideasonboard.com>","From":"David Plowman <david.plowman@raspberrypi.com>","Date":"Fri, 2 Jul 2021 14:02:12 +0100","Message-ID":"<CAHW6GYLSV+33mXma7FQdKx-NyDQYEAryR5ShGGdW-mdH4c9+8A@mail.gmail.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Content-Type":"text/plain; charset=\"UTF-8\"","Subject":"Re: [libcamera-devel] [PATCH 0/3] base: Fix crash with recursive\n\tmessages dispatch","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]