From patchwork Fri Apr 16 22:28:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= X-Patchwork-Id: 11970 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 312D5BD237 for ; Fri, 16 Apr 2021 22:29:19 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id B4FE96880C; Sat, 17 Apr 2021 00:29:18 +0200 (CEST) Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 8B2B3687F3 for ; Sat, 17 Apr 2021 00:29:17 +0200 (CEST) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: nfraprado) with ESMTPSA id B44F81F43A4A From: =?utf-8?b?TsOtY29sYXMgRi4gUi4gQS4gUHJhZG8=?= To: libcamera-devel@lists.libcamera.org Date: Fri, 16 Apr 2021 19:28:28 -0300 Message-Id: <20210416222830.335755-1-nfraprado@collabora.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 0/2] lc-compliance: Add test to queue more requests than hardware depth X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" This series adds a new test to lc-compliance that tests queuing a lot of requests at once and hopefully exposing the issue described in [1]. I hardcoded the amount of buffers to allocate at once to 8 since more than that would cause errors when allocating. Hirokazu, since you have a patch series addressing this issue on the IPU3 pipeline [2], could you test this series? If both my and your patch series are working, lc-compliance should crash before applying your series but run through completion after applying it. Changes in v2: - Renamed and reworded commits and series - Dropped patches 2 and 3, which were hacks to test, and added patch 1 to add count to FrameBufferAllocator - Thanks to Niklas: - Created new standalone test instead of looping over the other tests [1] https://bugs.libcamera.org/show_bug.cgi?id=24 [2] https://lists.libcamera.org/pipermail/libcamera-devel/2021-April/019108.html v1: https://lists.libcamera.org/pipermail/libcamera-devel/2021-April/019139.html NĂ­colas F. R. A. Prado (2): libcamera: framebuffer_allocator: Make allocate() accept count lc-compliance: Add test to queue more requests than hardware depth include/libcamera/camera.h | 3 +- include/libcamera/framebuffer_allocator.h | 2 +- include/libcamera/internal/pipeline_handler.h | 3 +- src/cam/capture.cpp | 2 +- src/lc-compliance/simple_capture.cpp | 69 +++++++++++++++++-- src/lc-compliance/simple_capture.h | 16 ++++- src/lc-compliance/single_stream.cpp | 28 +++++++- src/libcamera/camera.cpp | 5 +- src/libcamera/framebuffer_allocator.cpp | 5 +- src/libcamera/pipeline/ipu3/ipu3.cpp | 9 ++- .../pipeline/raspberrypi/raspberrypi.cpp | 9 ++- src/libcamera/pipeline/rkisp1/rkisp1.cpp | 9 ++- src/libcamera/pipeline/simple/simple.cpp | 9 ++- src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 9 ++- src/libcamera/pipeline/vimc/vimc.cpp | 9 ++- src/libcamera/pipeline_handler.cpp | 1 + src/qcam/main_window.cpp | 2 +- test/camera/capture.cpp | 2 +- test/camera/statemachine.cpp | 2 +- test/mapped-buffer.cpp | 2 +- 20 files changed, 160 insertions(+), 36 deletions(-)