Re: [ACPI] PATCH-ACPI based CPU hotplug[1/6]-ACPI core enhancement support

Keshavamurthy Anil S
2004-09-20T19:01:28Z

On Mon, Sep 20, 2004 at 01:26:44PM -0500, Dmitry Torokhov wrote:
> On Monday 20 September 2004 11:34 am, Keshavamurthy Anil S wrote:
> > +void
> > +acpi_bus_trim(struct acpi_device       *start,
> > +               int rmdevice)
> > +{
> > +       acpi_status             status = AE_OK;
> > +       struct acpi_device      *parent = NULL;
> > +       struct acpi_device      *child = NULL;
> > +       acpi_handle             phandle = 0;
> > +       acpi_handle             chandle = 0;
> > +
> > +       parent  = start;
> > +       phandle = start->handle;
>
>
> Why do all these variables have to be initialized? parent and phandle are
> set up explicitly couple of lines below, the rest is only used safely
> as well...
You are correct, variable initialization can be removed. I will do this.

>
> Also, introducing recursion (depth does not seem to be limited here) is
> not a good idea IMHO - better convert it into iteration to avoid stack
> problems down teh road.
Humm, I guess recursion should be fine and even though the code does not have
an explicit limit, the ACPI namespace describing the Ejectable device will limit the
number of recursible devices. And I believe this won;t be more than 3 to 4 level depth.
Hence recursion is fine here.

If you still strongly believe that recursion is not the right choice here,
let me know and I will convert it to iteration.

Thanks,
Anil