> +#define ceph_try_get_string(x) \ > +({ \ > + struct ceph_string *___str; \ > + rcu_read_lock(); \ > + ___str = rcu_dereference(x); \ > + if (___str && !kref_get_unless_zero(&___str->kref)) \ > + ___str = NULL; \ > + rcu_read_unlock(); \ > + (___str); \ Isn’t this an unsafe use of __str? As I understand it, it could be updated after rcu_read_unlock(). > +}) -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html