[libcamera-devel] [PATCH 2/4] ipa: raspberrypi: fix missing initialize of status_
David Plowman
david.plowman at raspberrypi.com
Wed Oct 7 15:16:41 CEST 2020
Hi Tomi
Thank you for this patch. You are indeed correct, it is much tidier.
However, I'd quite like to hold off with this patch (and the related
patch 4/4) as I'm currently doing some maintenance on the AGC and
would like to avoid a conflict! As part of that maintenance I'll be
sure to grab the memset here, though I may leave the other
initialisations here (rather than move them to the header file) as
that seems to be the current style.
So please be sure to check I've done the right thing when I submit my
set of AGC patches, hopefully early next week.
Thanks and best regards
David
On Wed, 7 Oct 2020 at 13:49, Tomi Valkeinen <tomi.valkeinen at iki.fi> wrote:
>
> On 07/10/2020 15:48, Kieran Bingham wrote:
> > On 07/10/2020 13:35, Kieran Bingham wrote:
> >> Hi Tomi,
> >>
> >> On 07/10/2020 12:07, Tomi Valkeinen wrote:
> >>> Many fields in status_ are not initialized, causing use of uninitialized
> >>> memory.
> >>>
> >>> Drop the code that clears some of the individual fields, and instead
> >>> just memset the whole thing.
> >>>
> >>
> >> I think David/Naush' input will be important on this one.
> >>
> >>> Signed-off-by: Tomi Valkeinen <tomi.valkeinen at iki.fi>
> >>> ---
> >>> src/ipa/raspberrypi/controller/rpi/agc.cpp | 8 +-------
> >>> 1 file changed, 1 insertion(+), 7 deletions(-)
> >>>
> >>> diff --git a/src/ipa/raspberrypi/controller/rpi/agc.cpp b/src/ipa/raspberrypi/controller/rpi/agc.cpp
> >>> index df4d364..9e75178 100644
> >>> --- a/src/ipa/raspberrypi/controller/rpi/agc.cpp
> >>> +++ b/src/ipa/raspberrypi/controller/rpi/agc.cpp
> >>> @@ -148,14 +148,8 @@ Agc::Agc(Controller *controller)
> >>> exposure_mode_(nullptr), constraint_mode_(nullptr),
> >>> frame_count_(0), lock_count_(0)
> >>> {
> >>> + memset(&status_, 0, sizeof(status_));
> >>> ev_ = status_.ev = 1.0;
> >>> - flicker_period_ = status_.flicker_period = 0.0;
> >>> - fixed_shutter_ = status_.fixed_shutter = 0;
> >>> - fixed_analogue_gain_ = status_.fixed_analogue_gain = 0.0;
> >>> - // set to zero initially, so we can tell it's not been calculated
> >>
> >> Is there any benefit to retaining this comment in some adjusted form?
> >>
> >> Otherwise, I think generally clearing/initialising the whole status
> >> sounds good.
> >>
> >> Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> >
> > Ahem, coming back to correct myself - This patch introduces a defect.
> > However you fix it in 4/4 ... so ... well ... There's a problem. But
> > you've fixed it ;-)
>
> Oh, indeed. I was a bit too hasty =).
>
> Tomi
More information about the libcamera-devel
mailing list