Re: [PATCH] pv-qspinlock: Try to re-hash the lock after spurious_wakeup

2016-05-31 Thread xinhui
On 2016年06月01日 02:13, Waiman Long wrote: On 05/30/2016 04:53 AM, xinhui wrote: On 2016年05月28日 11:41, Waiman Long wrote: On 05/27/2016 06:32 AM, xinhui wrote: On 2016年05月27日 02:31, Waiman Long wrote: On 05/25/2016 02:09 AM, Pan Xinhui wrote: In pv_wait_head_or_lock, if there is a spuriou

Re: [PATCH] pv-qspinlock: Try to re-hash the lock after spurious_wakeup

2016-05-31 Thread Waiman Long
On 05/30/2016 04:53 AM, xinhui wrote: On 2016年05月28日 11:41, Waiman Long wrote: On 05/27/2016 06:32 AM, xinhui wrote: On 2016年05月27日 02:31, Waiman Long wrote: On 05/25/2016 02:09 AM, Pan Xinhui wrote: In pv_wait_head_or_lock, if there is a spurious_wakeup, and it fails to get the lock as th

Re: [PATCH] pv-qspinlock: Try to re-hash the lock after spurious_wakeup

2016-05-30 Thread xinhui
On 2016年05月28日 11:41, Waiman Long wrote: On 05/27/2016 06:32 AM, xinhui wrote: On 2016年05月27日 02:31, Waiman Long wrote: On 05/25/2016 02:09 AM, Pan Xinhui wrote: In pv_wait_head_or_lock, if there is a spurious_wakeup, and it fails to get the lock as there is lock stealing, then after a shor

Re: [PATCH] pv-qspinlock: Try to re-hash the lock after spurious_wakeup

2016-05-27 Thread Waiman Long
On 05/27/2016 06:32 AM, xinhui wrote: On 2016年05月27日 02:31, Waiman Long wrote: On 05/25/2016 02:09 AM, Pan Xinhui wrote: In pv_wait_head_or_lock, if there is a spurious_wakeup, and it fails to get the lock as there is lock stealing, then after a short spin, we need hash the lock again and en

Re: [PATCH] pv-qspinlock: Try to re-hash the lock after spurious_wakeup

2016-05-27 Thread xinhui
On 2016年05月27日 02:31, Waiman Long wrote: On 05/25/2016 02:09 AM, Pan Xinhui wrote: In pv_wait_head_or_lock, if there is a spurious_wakeup, and it fails to get the lock as there is lock stealing, then after a short spin, we need hash the lock again and enter pv_wait to yield. Currently after a

Re: [PATCH] pv-qspinlock: Try to re-hash the lock after spurious_wakeup

2016-05-26 Thread Waiman Long
On 05/25/2016 02:09 AM, Pan Xinhui wrote: In pv_wait_head_or_lock, if there is a spurious_wakeup, and it fails to get the lock as there is lock stealing, then after a short spin, we need hash the lock again and enter pv_wait to yield. Currently after a spurious_wakeup, as l->locked is not _Q_SLO

[PATCH] pv-qspinlock: Try to re-hash the lock after spurious_wakeup

2016-05-24 Thread Pan Xinhui
In pv_wait_head_or_lock, if there is a spurious_wakeup, and it fails to get the lock as there is lock stealing, then after a short spin, we need hash the lock again and enter pv_wait to yield. Currently after a spurious_wakeup, as l->locked is not _Q_SLOW_VAL, pv_wait might do nothing and return d