Re: [PATCH v2 02/13] rwsem: shorter spinlocked section in rwsem_down_failed_common()

From: Rik van Riel
Date: Thu Mar 28 2013 - 15:05:24 EST


On 03/15/2013 06:54 AM, Michel Lespinasse wrote:
This change reduces the size of the spinlocked and TASK_UNINTERRUPTIBLE
sections in rwsem_down_failed_common():

- We only need the sem->wait_lock to insert ourselves on the wait_list;
the waiter node can be prepared outside of the wait_lock.

- The task state only needs to be set to TASK_UNINTERRUPTIBLE immediately
before checking if we actually need to sleep; it doesn't need to protect
the entire function.

Signed-off-by: Michel Lespinasse <walken@xxxxxxxxxx>

Reviewed-by: Rik van Riel <riel@xxxxxxxxxx>

Feel free to keep this Reviewed-by: line across cosmetic
changes.
--
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/