[{"id":22013,"web_url":"https://patchwork.libcamera.org/comment/22013/","msgid":"<CAO5uPHOwXPqm5QN6hchyy1NbbDQMxM-pByJNBs-oqoRmvx2ahw@mail.gmail.com>","date":"2022-01-12T06:24:11","subject":"Re: [libcamera-devel] [PATCH 2/5] android: camera_stream: Create\n\tallocator unconditionally","submitter":{"id":63,"url":"https://patchwork.libcamera.org/api/people/63/","name":"Hirokazu Honda","email":"hiroh@chromium.org"},"content":"Hi Jacopo,\n\nOn Tue, Jan 11, 2022 at 1:54 AM Jacopo Mondi <jacopo@jmondi.org> wrote:\n>\n> With the introduction of PlatformBufferAllocator all CameraStream can\n> be used to allocate buffers on-demand.\n>\n> Create CameraStream::allocator_ and the associated mutex for all types\n> of stream.\n>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n\nI confirm both PlatformFrameBufferAllocators' constructors are cheap.\nSo creating always sounds good to me.\n> ---\n>  src/android/camera_stream.cpp | 6 ++----\n>  1 file changed, 2 insertions(+), 4 deletions(-)\n>\n> diff --git a/src/android/camera_stream.cpp b/src/android/camera_stream.cpp\n> index 032b0407bd32..eeeb238f395c 100644\n> --- a/src/android/camera_stream.cpp\n> +++ b/src/android/camera_stream.cpp\n> @@ -128,10 +128,8 @@ int CameraStream::configure()\n>                 worker_->start();\n>         }\n>\n> -       if (type_ == Type::Internal) {\n> -               allocator_ = std::make_unique<PlatformFrameBufferAllocator>(cameraDevice_);\n> -               mutex_ = std::make_unique<Mutex>();\n> -       }\n> +       allocator_ = std::make_unique<PlatformFrameBufferAllocator>(cameraDevice_);\n> +       mutex_ = std::make_unique<Mutex>();\n\nI think mutex_ should be now non pointer, just instance as it is always created.\nFor PFBAllocator, either pointer or instance is fine for me.\n\nWith the nit,\n\nReviewed-by: Hirokazu Honda<hiroh@chromium.org>\n\n>\n>         camera3Stream_->max_buffers = configuration().bufferCount;\n>\n> --\n> 2.34.1\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 89AE6BF415\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 12 Jan 2022 06:24:24 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id C413960921;\n\tWed, 12 Jan 2022 07:24:23 +0100 (CET)","from mail-ed1-x531.google.com (mail-ed1-x531.google.com\n\t[IPv6:2a00:1450:4864:20::531])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id AF6E160217\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 12 Jan 2022 07:24:22 +0100 (CET)","by mail-ed1-x531.google.com with SMTP id t24so5614480edi.8\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 11 Jan 2022 22:24:22 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=chromium.org header.i=@chromium.org\n\theader.b=\"fAvdnwJg\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org;\n\ts=google; \n\th=mime-version:references:in-reply-to:from:date:message-id:subject:to\n\t:cc; bh=J1bNtlCxWQlIoeVdld/Ghf4i2Owvum4DvBuAde7Nkdw=;\n\tb=fAvdnwJgqdwDxuAJkRy89sIeHyPRQgAM6NE/SIjX8IF7B1Yt4oKkCxRGnEwgU8if1l\n\tEDHfQfw8YPzMuKLvRMNfvw81LZGpXaG1YXq3Rje89M+6vIWFqzdj8CoiN1b50lQctwos\n\tBP0WR/E92SQm2ubbeOOmhdLg5RCdL6MApOB5w=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=x-gm-message-state:mime-version:references:in-reply-to:from:date\n\t:message-id:subject:to:cc;\n\tbh=J1bNtlCxWQlIoeVdld/Ghf4i2Owvum4DvBuAde7Nkdw=;\n\tb=hMn2JNpCynORW3hVv5i+hNA0gCR88vBrawmw74PXRadO4peABGEtCoM9EYj4R2F8le\n\tCvfWgRs2zCK6rHmH2571RfaF4PxU3Vd80BrsoWFBc+zZ8r6rJGdXXeTfYHkJnVE6Lxul\n\tY4BIYZODw0zL4fU2qOCDkjNlqygUxIu+L47CK7+dmapQ1WwXzsxyYC1fgELmyRfRYWMh\n\tNRMalUgIyz4EbLUV9uiLkMAwF4Oh4WCHSaCuRN0TQTz+nURSb6UapAtHjDfRiAa9Fof/\n\tjW3QlpuY0tko8sV7grOxLi+fV92Q9KTfsGK5/3t/VxMUiljJbvsILr+fx7tbm0mpDOR/\n\t/QZA==","X-Gm-Message-State":"AOAM533Ncw1DzWC3oaSvTdEXVihfIRJwrMY89SaMYi4icFspMBvw+cUS\n\tfXBRPNXz9+/c0WYUva7yYxKHOiYu2DbEOlukNY+kEA==","X-Google-Smtp-Source":"ABdhPJw5Qq9u3ggQnBvZkE0x43+dSCTK0aDhnPvSZOY4msQwfMA7FeYNLCAbSPDWvuuL/bjG0VQumx4nLK89tt1Vh+8=","X-Received":"by 2002:a17:907:6e26:: with SMTP id\n\tsd38mr4042321ejc.558.1641968662247; \n\tTue, 11 Jan 2022 22:24:22 -0800 (PST)","MIME-Version":"1.0","References":"<20220110165524.72978-1-jacopo@jmondi.org>\n\t<20220110165524.72978-3-jacopo@jmondi.org>","In-Reply-To":"<20220110165524.72978-3-jacopo@jmondi.org>","From":"Hirokazu Honda <hiroh@chromium.org>","Date":"Wed, 12 Jan 2022 15:24:11 +0900","Message-ID":"<CAO5uPHOwXPqm5QN6hchyy1NbbDQMxM-pByJNBs-oqoRmvx2ahw@mail.gmail.com>","To":"Jacopo Mondi <jacopo@jmondi.org>","Content-Type":"text/plain; charset=\"UTF-8\"","Subject":"Re: [libcamera-devel] [PATCH 2/5] android: camera_stream: Create\n\tallocator unconditionally","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@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]