Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 315c5554 authored by Tejun Heo's avatar Tejun Heo
Browse files

Merge branch 'for-3.15-fixes' of...

Merge branch 'for-3.15-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu.git

 into for-3.16

Pull percpu/for-3.15-fixes into percpu/for-3.16 to receive
0c36b390 ("percpu-refcount: fix usage of this_cpu_ops").

The merge doesn't produce any conflict but the automatic merge is
still incorrect because 4fb6e250 ("percpu-refcount: implement
percpu_ref_tryget()") added another use of __this_cpu_inc() which
should also be converted to this_cpu_ince().

This commit pulls in percpu/for-3.15-fixes and converts the newly
added __this_cpu_inc() to this_cpu_inc().

Signed-off-by: default avatarTejun Heo <tj@kernel.org>
parents 4fb6e250 0c36b390
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -110,7 +110,7 @@ static inline void percpu_ref_get(struct percpu_ref *ref)
	pcpu_count = ACCESS_ONCE(ref->pcpu_count);

	if (likely(REF_STATUS(pcpu_count) == PCPU_REF_PTR))
		__this_cpu_inc(*pcpu_count);
		this_cpu_inc(*pcpu_count);
	else
		atomic_inc(&ref->count);

@@ -136,7 +136,7 @@ static inline bool percpu_ref_tryget(struct percpu_ref *ref)
	pcpu_count = ACCESS_ONCE(ref->pcpu_count);

	if (likely(REF_STATUS(pcpu_count) == PCPU_REF_PTR)) {
		__this_cpu_inc(*pcpu_count);
		this_cpu_inc(*pcpu_count);
		ret = true;
	} else {
		ret = atomic_inc_not_zero(&ref->count);
@@ -171,7 +171,7 @@ static inline bool percpu_ref_tryget_live(struct percpu_ref *ref)
	pcpu_count = ACCESS_ONCE(ref->pcpu_count);

	if (likely(REF_STATUS(pcpu_count) == PCPU_REF_PTR)) {
		__this_cpu_inc(*pcpu_count);
		this_cpu_inc(*pcpu_count);
		ret = true;
	}

@@ -196,7 +196,7 @@ static inline void percpu_ref_put(struct percpu_ref *ref)
	pcpu_count = ACCESS_ONCE(ref->pcpu_count);

	if (likely(REF_STATUS(pcpu_count) == PCPU_REF_PTR))
		__this_cpu_dec(*pcpu_count);
		this_cpu_dec(*pcpu_count);
	else if (unlikely(atomic_dec_and_test(&ref->count)))
		ref->release(ref);

+1 −1
Original line number Diff line number Diff line
@@ -610,7 +610,7 @@ static struct pcpu_chunk *pcpu_alloc_chunk(void)
	chunk->map = pcpu_mem_zalloc(PCPU_DFL_MAP_ALLOC *
						sizeof(chunk->map[0]));
	if (!chunk->map) {
		kfree(chunk);
		pcpu_mem_free(chunk, pcpu_chunk_struct_size);
		return NULL;
	}