about held locks in acpi_psx_execute()

From: Felipe Alfaro Solana (felipe_alfaro_at_linuxmail.org)
Date: 11/30/03

  • Next message: Marcel Holtmann: "[PATCH] User level driver support for input subsystem"
    To: acpi-devel@lists.sourceforge.net
    Date:	Sun, 30 Nov 2003 22:53:05 +0100
    
    

    Hi!

    While looking at drivers/acpi/parser/psxface.c,I have noticed that the
    acpi_psx_execute(0 function seems to held some structures referrenced
    when an error occurs during its execution:

    acpi_status
    acpi_psx_execute (
            struct acpi_namespace_node *method_node,
            union acpi_operand_object **params,
            union acpi_operand_object **return_obj_desc)
    {
    ...
            if (params) {
                    /*
                     * The caller "owns" the parameters, so give each one an
    extra
                     * reference
                     */
                    for (i = 0; params[i]; i++) {
                            acpi_ut_add_reference (params[i]);
                    }
            }

            /*
             * 1) Perform the first pass parse of the method to enter any
             * named objects that it creates into the namespace
             */
            ACPI_DEBUG_PRINT ((ACPI_DB_PARSE,
                    "**** Begin Method Parse **** Entry=%p obj=%p\n",
                    method_node, obj_desc));

            /* Create and init a Root Node */

            op = acpi_ps_create_scope_op ();
            if (!op) {
                    return_ACPI_STATUS (AE_NO_MEMORY);
            }

    As you can see, acpi_psx_execute() will hold a lock for each element of
    the params[] array if there's an error while invoking
    acpi_ps_create_scope_op(), for example.

    Is this intentional?
    Thanks!

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


  • Next message: Marcel Holtmann: "[PATCH] User level driver support for input subsystem"

    Relevant Pages