]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
percpu_ref: Fix comment regarding percpu_ref_init flags
authorIra Weiny <ira.weiny@intel.com>
Fri, 21 Feb 2020 23:16:07 +0000 (15:16 -0800)
committerDennis Zhou <dennis@kernel.org>
Thu, 5 Mar 2020 21:10:26 +0000 (13:10 -0800)
The comment for percpu_ref_init() implies that using
PERCPU_REF_ALLOW_REINIT will cause the refcount to start at 0.  But
this is not true.  PERCPU_REF_ALLOW_REINIT starts the count at 1 as
if the flags were zero.  Add this fact to the kernel doc comment.

Signed-off-by: Ira Weiny <ira.weiny@intel.com>
[Dennis: reworded]
Signed-off-by: Dennis Zhou <dennis@kernel.org>
lib/percpu-refcount.c

index 4f6c6ebbbbdea8c311d30eda388b29c2f02893b6..8d092609928e48193f5780740dd9d9734b5d9397 100644 (file)
@@ -50,9 +50,10 @@ static unsigned long __percpu *percpu_count_ptr(struct percpu_ref *ref)
  * @flags: PERCPU_REF_INIT_* flags
  * @gfp: allocation mask to use
  *
- * Initializes @ref.  If @flags is zero, @ref starts in percpu mode with a
- * refcount of 1; analagous to atomic_long_set(ref, 1).  See the
- * definitions of PERCPU_REF_INIT_* flags for flag behaviors.
+ * Initializes @ref.  @ref starts out in percpu mode with a refcount of 1 unless
+ * @flags contains PERCPU_REF_INIT_ATOMIC or PERCPU_REF_INIT_DEAD.  These flags
+ * change the start state to atomic with the latter setting the initial refcount
+ * to 0.  See the definitions of PERCPU_REF_INIT_* flags for flag behaviors.
  *
  * Note that @release must not sleep - it may potentially be called from RCU
  * callback context by percpu_ref_kill().