On Fri, Jul 10, 2015 at 5:37 AM, Tejun Heo <[email protected]> wrote: > On Thu, Jul 09, 2015 at 02:55:10PM +0800, Ming Lei wrote: >> This patch looks fine since at least changing DEAD state of percpu ref >> state should have been synchronized by caller. >> >> Also looks __percpu_ref_switch_to_percpu() need to check if the refcount >> becomes dead after current switching, and seems something like following >> is needed: > > Hmmm... but the caller is responsible for synchronization for these > operations. If the state changes while waiting, it indicates a > synchronization bug and testing it one more time is kinda weird. What > if it changes right after that test?
OK. Also looks it is helpful to detect the bug early by adding WARN_ON(ref->percpu_count_ptr & __PERCPU_REF_DEAD) after wait_event(). -- Ming Lei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

