summaryrefslogtreecommitdiff
path: root/src/android/camera_worker.h
diff options
context:
space:
mode:
authorJacopo Mondi <jacopo@jmondi.org>2021-01-28 09:58:06 +0100
committerJacopo Mondi <jacopo@jmondi.org>2021-02-02 18:50:03 +0100
commitbc6440792bbae533a4f9a5837dbed628ec664cc4 (patch)
treeea9361435356a95a38fe70b50fe8b17fa56afe5e /src/android/camera_worker.h
parent3e952cfb0f8ef3c6a6594420dccfcbf5f9a9624b (diff)
libcamera: Improve Request life cycle tracking
The current logging to track the status of a Request when running the Android camera HAL provide the following information: When a Request is queued to libcamera: HAL camera_device.cpp:1776 '\_SB_.PCI0.I2C2.CAM0': Queueing Request to libcamera with 1 HAL streams When a Request completes: Request request.cpp:268 Request has completed - cookie: 138508601719648 The queueing of a Request reports the number of streams it contains while the completion of a Request reports the address of the associated cookie. This makes very hard to keep track of what Requests have completed, as the logging associated with a queue/complete event does not allow to identify a Request easily. Add two more printouts to make it easier to track a Request life cycle. To make it possible to print the Request cookie in the CameraDevice class add a method to access it from the CameraRequest class. The result looks like the following trace: Request request.cpp:92 Created request - cookie: 140701719392768 HAL camera_device.cpp:1710 '\_SB_.PCI0.I2C2.CAM0': Queueing request 140701719392768 with 1 streams HAL camera_device.cpp:1747 '\_SB_.PCI0.I2C2.CAM0': 0 - (4160x3104)[0x00000023] -> (4160x3104)[NV12] (direct) ... Request request.cpp:268 Request has completed - cookie: 140701719392768 HAL camera_device.cpp:1800 '\_SB_.PCI0.I2C2.CAM0': Request 140701719392768 completed with 1 streams.. Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src/android/camera_worker.h')
-rw-r--r--src/android/camera_worker.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/android/camera_worker.h b/src/android/camera_worker.h
index 6522f1d6..d7060576 100644
--- a/src/android/camera_worker.h
+++ b/src/android/camera_worker.h
@@ -30,6 +30,7 @@ public:
{
return request_->metadata();
}
+ unsigned long cookie() const { return request_->cookie(); }
void addBuffer(libcamera::Stream *stream,
libcamera::FrameBuffer *buffer, int fence);