this while (TRUE); means that "OS can't function anymore if this codepath is executed". It's a fatal, terminal way, so there is no power to save :)

On 04.01.2013 18:11, Javier Agustìn Fernàndez Arroyo wrote:
well, IMO, "while(true)" means CPU is permanently busy, while an ASSERT stops CPU from running ....
just a matter of power saving....

and i repeat, its just an opinion....

On Fri, Jan 4, 2013 at 3:02 PM, Aleksey Bragin <[email protected] <mailto:[email protected]>> wrote:

    With all respect, I don't understand many of these changes.
    Answering between the lines.

    On 04.01.2013 15:47, [email protected]
    <mailto:[email protected]> wrote:

          NTSTATUS
        @@ -643,7 +643,8 @@
              /* FIXME: TODO */
              DPRINT1("You have implemented the KD routines for
        searching PCI debugger"
                      "devices, but you have forgotten to implement
        this routine\n");
        -    while (TRUE);
        +    UNIMPLEMENTED;
        +    ASSERT(FALSE); // while (TRUE);
          }

    It already prints a mandatory log message that this part is
    unimplemented. And execution is supposed to stop after printing
    this message, because it's meaningless to continue (that's why
    while(TRUE); was put there in the first place).

            static ULONG NTAPI
        @@ -678,7 +679,7 @@
              {
                  /* /PCILOCK is not yet supported */
                  UNIMPLEMENTED;
        -        while (TRUE);
        +        ASSERT(FALSE); // while (TRUE);
              }
          #endif
              /* Now create the correct resource list based on the
        supported bus ranges */

    It already has UNIMPLEMENTED; and now you added an ASSERT(FALSE);
    which essentially is the same thing. And if continuation is
    possible, then just UNIMPLEMENTED would be enough.

    I'd like some general solution to this. Like,
    UNIMPLEMENTED_FATAL() or something like that.

    Any thoughts?

    Regards,
    Aleksey Bragin


_______________________________________________
Ros-dev mailing list
[email protected]
http://www.reactos.org/mailman/listinfo/ros-dev

Reply via email to