Re: [PATCH v2 01/15] media: ipu-bridge: Fix null pointer deref on SSDB/PLD parsing warnings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jul 4, 2023 at 5:50 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
> On 7/4/23 16:28, Andy Shevchenko wrote:
> > On Tue, Jul 04, 2023 at 12:02:00PM +0100, Dan Scally wrote:
> >> On 30/06/2023 16:23, Andy Shevchenko wrote:
> >>> On Fri, Jun 30, 2023 at 2:06 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
> >>>> When ipu_bridge_parse_rotation() and ipu_bridge_parse_orientation() run
> >>>> sensor->adev is not set yet.
> >>>>
> >>>> So if either of the dev_warn() calls about unknown values are hit this
> >>>> will lead to a NULL pointer deref.
> >>>>
> >>>> Set sensor->adev earlier, with a borrowed ref to avoid making unrolling
> >>>> on errors harder, to fix this.
> >>> TBH, I don't like this approach, it seems a bit dirty to me.
> >>>
> >>> First of all, why do we need pci_dev to be a parameter in this function?
> >>> Second, why don't we consistently use the ACPI handle (with respective
> >>> acpi_handle_*() macros to print messages)?
> >>>
> >>> So, my proposal here is to actually save the ACPI device handle in the
> >>> sensor object and use it for the messaging. It makes it consistent and
> >>> doesn't require to rewrite adev field which seems the dirty part to
> >>> me.
> >>
> >> It's a bit finicky but I don't think it's so bad; the refcounting is all
> >> fine, the later acpi_dev_get() is only to hold a reference once the next
> >> loop iteration frees the existing one and the rewrite should store the exact
> >> same pointer...we could just not store the result of the acpi_dev_get() call
> >> to avoid that weird rewrite perhaps?
> >
> > For short term solution in between the patches I might agree with you, but
> > backporting. Backporting a bad code doesn't make it better even if it fixes
> > nasty bug. And I proposed the solution. We may kill the handle same way as
> > we are killing the awkwardness of this assignment later in the series.
>
> Yeah, no sorry. As Dan pointed out this fix is fine and I don't feel
> like re-writing it just because you don't like it.
>
> I don't see any real technical arguments against this approach, just
> you not liking it.

OK.

-- 
With Best Regards,
Andy Shevchenko




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux