<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/arc/include/asm/atomic-llsc.h, branch linux-5.18.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.18.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.18.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2022-04-18T21:45:09Z</updated>
<entry>
<title>ARC: atomic: cleanup atomic-llsc definitions</title>
<updated>2022-04-18T21:45:09Z</updated>
<author>
<name>Sergey Matyukevich</name>
</author>
<published>2022-02-22T14:05:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ac411e41ec065daa867b5668b6e71ea1aff7b36a'/>
<id>urn:sha1:ac411e41ec065daa867b5668b6e71ea1aff7b36a</id>
<content type='text'>
Remove redundant c_op macro argument. Only asm_op is needed
to define atomic operations using llock/scond.

Signed-off-by: Sergey Matyukevich &lt;sergey.matyukevich@synopsys.com&gt;
Signed-off-by: Vineet Gupta &lt;vgupta@kernel.org&gt;
</content>
</entry>
<entry>
<title>ARC: atomics: implement relaxed variants</title>
<updated>2021-08-24T21:25:47Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2020-04-14T01:07:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b64be6836993c431e54fad239fcba0543854ee35'/>
<id>urn:sha1:b64be6836993c431e54fad239fcba0543854ee35</id>
<content type='text'>
The current ARC fetch/return atomics provide fully ordered semantics
only with 2 full barriers around the operation.

Instead implement them as relaxed variants without any barriers and
rely on generic code to generate the fully-ordered, acquire and release
varaints by adding the appropriate full barriers.

This helps elide some extra barriers in case of acquire/release/relaxed
calls.

bloat-o-meter for hsdk defconfig shows codegen improvements, although
numbers below inflated due to unrelated inlining heuristic changes

| bloat-o-meter vmlinux-643babe34fd7-non-relaxed vmlinux-45aa05cb44d7-relaxed
| add/remove: 2/5 grow/shrink: 42/1222 up/down: 4158/-14312 (-10154)
| Function                                     old     new   delta
| ..
| sys_renameat                                 462     476     +14
| ip_mc_inc_group                              424     436     +12
| do_read_cache_page                          1882    1894     +12
| ..
| refcount_dec_and_mutex_lock                  254     250      -4
| refcount_dec_and_lock_irqsave                258     254      -4
| refcount_dec_and_lock                        254     250      -4
| ..
| tcp_v6_route_req                             246     238      -8
| tcp_v4_destroy_sock                          286     278      -8
| tcp_twsk_unique                              352     344      -8

Link: https://lore.kernel.org/r/20180830144344.GW24142@hirez.programming.kicks-ass.net
Suggested-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Acked-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Signed-off-by: Vineet Gupta &lt;vgupta@kernel.org&gt;
</content>
</entry>
<entry>
<title>ARC: atomics: disintegrate header</title>
<updated>2021-08-24T21:25:46Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2021-08-04T03:26:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b0f839b4b91588c24bac8d320f7fc9fe2dea4517'/>
<id>urn:sha1:b0f839b4b91588c24bac8d320f7fc9fe2dea4517</id>
<content type='text'>
Non functional change, to ease future addition/removal

Acked-by: Peter Zijlstra (Intel) &lt;peterz@infradead.org&gt;
Signed-off-by: Vineet Gupta &lt;vgupta@kernel.org&gt;
</content>
</entry>
</feed>
