Re: [PATCH] regulator core: fix double-free in regulator_register() error path

From: David Brownell
Date: Mon Apr 27 2009 - 23:09:07 EST


On Saturday 25 April 2009, Paul Walmsley wrote:
>
> > device_unregister() calls regulator_dev_release() which frees rdev.  The
> > subsequent kfree corrupts memory and causes some OMAP3 systems to oops on
> > boot in regulator_get().
>
> For the 3430SDP users out there, this patch also fixes the boot hang after
> "regulator_init_complete: incomplete constraints, leaving VAUX3 on"
> on that device.

For the record, that "incomplete constraints" message is bogus.
On that board, VAUX3 has a complete set of constraints: it may
only emit 2.8V.

What it lacks is something entirely different: driver support
for the LCD which uses the regulator framework, instead of just
bypassing it and talking directly to the PMIC. By the time it
gets there, the LCD has probably been turned on.

Mark and/or Liam ... you might want to fix that diagnostic, to
avoid leading more developers astray!

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/