<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/ipc, branch v6.0.18</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v6.0.18</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v6.0.18'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2022-12-31T12:25:48Z</updated>
<entry>
<title>ipc: fix memory leak in init_mqueue_fs()</title>
<updated>2022-12-31T12:25:48Z</updated>
<author>
<name>Zhengchao Shao</name>
<email>shaozhengchao@huawei.com</email>
</author>
<published>2022-12-09T09:29:29Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=86273624a68d07f129dc182b8394f487ed4de484'/>
<id>urn:sha1:86273624a68d07f129dc182b8394f487ed4de484</id>
<content type='text'>
[ Upstream commit 12b677f2c697d61e5ddbcb6c1650050a39392f54 ]

When setup_mq_sysctls() failed in init_mqueue_fs(), mqueue_inode_cachep is
not released.  In order to fix this issue, the release path is reordered.

Link: https://lkml.kernel.org/r/20221209092929.1978875-1-shaozhengchao@huawei.com
Fixes: dc55e35f9e81 ("ipc: Store mqueue sysctls in the ipc namespace")
Signed-off-by: Zhengchao Shao &lt;shaozhengchao@huawei.com&gt;
Cc: Alexey Gladkov &lt;legion@kernel.org&gt;
Cc: "Eric W. Biederman" &lt;ebiederm@xmission.com&gt;
Cc: Jingyu Wang &lt;jingyuwang_vip@163.com&gt;
Cc: Muchun Song &lt;songmuchun@bytedance.com&gt;
Cc: Roman Gushchin &lt;roman.gushchin@linux.dev&gt;
Cc: Waiman Long &lt;longman@redhat.com&gt;
Cc: Wei Yongjun &lt;weiyongjun1@huawei.com&gt;
Cc: YueHaibing &lt;yuehaibing@huawei.com&gt;
Cc: Yu Zhe &lt;yuzhe@nfschina.com&gt;
Cc: Manfred Spraul &lt;manfred@colorfullife.com&gt;
Cc: Davidlohr Bueso &lt;dave@stgolabs.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>ipc/sem: Fix dangling sem_array access in semtimedop race</title>
<updated>2022-12-08T10:30:22Z</updated>
<author>
<name>Jann Horn</name>
<email>jannh@google.com</email>
</author>
<published>2022-12-05T16:59:27Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=0641b614d1154f32c0dacecea46aca7460b69e32'/>
<id>urn:sha1:0641b614d1154f32c0dacecea46aca7460b69e32</id>
<content type='text'>
commit b52be557e24c47286738276121177a41f54e3b83 upstream.

When __do_semtimedop() goes to sleep because it has to wait for a
semaphore value becoming zero or becoming bigger than some threshold, it
links the on-stack sem_queue to the sem_array, then goes to sleep
without holding a reference on the sem_array.

When __do_semtimedop() comes back out of sleep, one of two things must
happen:

 a) We prove that the on-stack sem_queue has been disconnected from the
    (possibly freed) sem_array, making it safe to return from the stack
    frame that the sem_queue exists in.

 b) We stabilize our reference to the sem_array, lock the sem_array, and
    detach the sem_queue from the sem_array ourselves.

sem_array has RCU lifetime, so for case (b), the reference can be
stabilized inside an RCU read-side critical section by locklessly
checking whether the sem_queue is still connected to the sem_array.

However, the current code does the lockless check on sem_queue before
starting an RCU read-side critical section, so the result of the
lockless check immediately becomes useless.

Fix it by doing rcu_read_lock() before the lockless check.  Now RCU
ensures that if we observe the object being on our queue, the object
can't be freed until rcu_read_unlock().

This bug is only hittable on kernel builds with full preemption support
(either CONFIG_PREEMPT or PREEMPT_DYNAMIC with preempt=full).

Fixes: 370b262c896e ("ipc/sem: avoid idr tree lookup for interrupted semop")
Cc: stable@vger.kernel.org
Signed-off-by: Jann Horn &lt;jannh@google.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>ipc: mqueue: fix possible memory leak in init_mqueue_fs()</title>
<updated>2022-10-21T10:38:55Z</updated>
<author>
<name>Hangyu Hua</name>
<email>hbh25y@gmail.com</email>
</author>
<published>2022-07-15T06:23:01Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=55b3709c6d68e32cd3fdd2a630b1f4c97d51b17c'/>
<id>urn:sha1:55b3709c6d68e32cd3fdd2a630b1f4c97d51b17c</id>
<content type='text'>
[ Upstream commit c579d60f0d0cd87552f64fdebe68b5d941d20309 ]

commit db7cfc380900 ("ipc: Free mq_sysctls if ipc namespace creation
failed")

Here's a similar memory leak to the one fixed by the patch above.
retire_mq_sysctls need to be called when init_mqueue_fs fails after
setup_mq_sysctls.

Fixes: dc55e35f9e81 ("ipc: Store mqueue sysctls in the ipc namespace")
Signed-off-by: Hangyu Hua &lt;hbh25y@gmail.com&gt;
Link: https://lkml.kernel.org/r/20220715062301.19311-1-hbh25y@gmail.com
Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'mm-nonmm-stable-2022-08-06-2' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm</title>
<updated>2022-08-07T17:03:24Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2022-08-07T17:03:24Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=eb5699ba31558bdb2cee6ebde3d0a68091e47dce'/>
<id>urn:sha1:eb5699ba31558bdb2cee6ebde3d0a68091e47dce</id>
<content type='text'>
Pull misc updates from Andrew Morton:
 "Updates to various subsystems which I help look after. lib, ocfs2,
  fatfs, autofs, squashfs, procfs, etc. A relatively small amount of
  material this time"

* tag 'mm-nonmm-stable-2022-08-06-2' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (72 commits)
  scripts/gdb: ensure the absolute path is generated on initial source
  MAINTAINERS: kunit: add David Gow as a maintainer of KUnit
  mailmap: add linux.dev alias for Brendan Higgins
  mailmap: update Kirill's email
  profile: setup_profiling_timer() is moslty not implemented
  ocfs2: fix a typo in a comment
  ocfs2: use the bitmap API to simplify code
  ocfs2: remove some useless functions
  lib/mpi: fix typo 'the the' in comment
  proc: add some (hopefully) insightful comments
  bdi: remove enum wb_congested_state
  kernel/hung_task: fix address space of proc_dohung_task_timeout_secs
  lib/lzo/lzo1x_compress.c: replace ternary operator with min() and min_t()
  squashfs: support reading fragments in readahead call
  squashfs: implement readahead
  squashfs: always build "file direct" version of page actor
  Revert "squashfs: provide backing_dev_info in order to disable read-ahead"
  fs/ocfs2: Fix spelling typo in comment
  ia64: old_rr4 added under CONFIG_HUGETLB_PAGE
  proc: fix test for "vsyscall=xonly" boot option
  ...
</content>
</entry>
<entry>
<title>ipc/mqueue: remove unnecessary (void*) conversion</title>
<updated>2022-07-18T00:31:40Z</updated>
<author>
<name>Yu Zhe</name>
<email>yuzhe@nfschina.com</email>
</author>
<published>2022-06-28T02:12:51Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=2c795fb03f138e9602e1f1ee31b8bfc00a96c7e5'/>
<id>urn:sha1:2c795fb03f138e9602e1f1ee31b8bfc00a96c7e5</id>
<content type='text'>
Remove unnecessary void* type casting.

Link: https://lkml.kernel.org/r/20220628021251.17197-1-yuzhe@nfschina.com
Signed-off-by: Yu Zhe &lt;yuzhe@nfschina.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>ipc: Free mq_sysctls if ipc namespace creation failed</title>
<updated>2022-06-22T22:47:41Z</updated>
<author>
<name>Alexey Gladkov</name>
<email>legion@kernel.org</email>
</author>
<published>2022-06-22T20:07:29Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=db7cfc380900bc4243b09623fd72fabe0a8ff23b'/>
<id>urn:sha1:db7cfc380900bc4243b09623fd72fabe0a8ff23b</id>
<content type='text'>
The problem that Dmitry Vyukov pointed out is that if setup_ipc_sysctls fails,
mq_sysctls must be freed before return.

executing program
BUG: memory leak
unreferenced object 0xffff888112fc9200 (size 512):
  comm "syz-executor237", pid 3648, jiffies 4294970469 (age 12.270s)
  hex dump (first 32 bytes):
    ef d3 60 85 ff ff ff ff 0c 9b d2 12 81 88 ff ff  ..`.............
    04 00 00 00 a4 01 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [&lt;ffffffff814b6eb3&gt;] kmemdup+0x23/0x50 mm/util.c:129
    [&lt;ffffffff82219a9b&gt;] kmemdup include/linux/fortify-string.h:456 [inline]
    [&lt;ffffffff82219a9b&gt;] setup_mq_sysctls+0x4b/0x1c0 ipc/mq_sysctl.c:89
    [&lt;ffffffff822197f2&gt;] create_ipc_ns ipc/namespace.c:63 [inline]
    [&lt;ffffffff822197f2&gt;] copy_ipcs+0x292/0x390 ipc/namespace.c:91
    [&lt;ffffffff8127de7c&gt;] create_new_namespaces+0xdc/0x4f0 kernel/nsproxy.c:90
    [&lt;ffffffff8127e89b&gt;] unshare_nsproxy_namespaces+0x9b/0x120 kernel/nsproxy.c:226
    [&lt;ffffffff8123f92e&gt;] ksys_unshare+0x2fe/0x600 kernel/fork.c:3165
    [&lt;ffffffff8123fc42&gt;] __do_sys_unshare kernel/fork.c:3236 [inline]
    [&lt;ffffffff8123fc42&gt;] __se_sys_unshare kernel/fork.c:3234 [inline]
    [&lt;ffffffff8123fc42&gt;] __x64_sys_unshare+0x12/0x20 kernel/fork.c:3234
    [&lt;ffffffff845aab45&gt;] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
    [&lt;ffffffff845aab45&gt;] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
    [&lt;ffffffff8460006a&gt;] entry_SYSCALL_64_after_hwframe+0x46/0xb0

BUG: memory leak
unreferenced object 0xffff888112fd5f00 (size 256):
  comm "syz-executor237", pid 3648, jiffies 4294970469 (age 12.270s)
  hex dump (first 32 bytes):
    00 92 fc 12 81 88 ff ff 00 00 00 00 01 00 00 00  ................
    01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [&lt;ffffffff816fea1b&gt;] kmalloc include/linux/slab.h:605 [inline]
    [&lt;ffffffff816fea1b&gt;] kzalloc include/linux/slab.h:733 [inline]
    [&lt;ffffffff816fea1b&gt;] __register_sysctl_table+0x7b/0x7f0 fs/proc/proc_sysctl.c:1344
    [&lt;ffffffff82219b7a&gt;] setup_mq_sysctls+0x12a/0x1c0 ipc/mq_sysctl.c:112
    [&lt;ffffffff822197f2&gt;] create_ipc_ns ipc/namespace.c:63 [inline]
    [&lt;ffffffff822197f2&gt;] copy_ipcs+0x292/0x390 ipc/namespace.c:91
    [&lt;ffffffff8127de7c&gt;] create_new_namespaces+0xdc/0x4f0 kernel/nsproxy.c:90
    [&lt;ffffffff8127e89b&gt;] unshare_nsproxy_namespaces+0x9b/0x120 kernel/nsproxy.c:226
    [&lt;ffffffff8123f92e&gt;] ksys_unshare+0x2fe/0x600 kernel/fork.c:3165
    [&lt;ffffffff8123fc42&gt;] __do_sys_unshare kernel/fork.c:3236 [inline]
    [&lt;ffffffff8123fc42&gt;] __se_sys_unshare kernel/fork.c:3234 [inline]
    [&lt;ffffffff8123fc42&gt;] __x64_sys_unshare+0x12/0x20 kernel/fork.c:3234
    [&lt;ffffffff845aab45&gt;] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
    [&lt;ffffffff845aab45&gt;] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
    [&lt;ffffffff8460006a&gt;] entry_SYSCALL_64_after_hwframe+0x46/0xb0

BUG: memory leak
unreferenced object 0xffff888112fbba00 (size 256):
  comm "syz-executor237", pid 3648, jiffies 4294970469 (age 12.270s)
  hex dump (first 32 bytes):
    78 ba fb 12 81 88 ff ff 00 00 00 00 01 00 00 00  x...............
    01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [&lt;ffffffff816fef49&gt;] kmalloc include/linux/slab.h:605 [inline]
    [&lt;ffffffff816fef49&gt;] kzalloc include/linux/slab.h:733 [inline]
    [&lt;ffffffff816fef49&gt;] new_dir fs/proc/proc_sysctl.c:978 [inline]
    [&lt;ffffffff816fef49&gt;] get_subdir fs/proc/proc_sysctl.c:1022 [inline]
    [&lt;ffffffff816fef49&gt;] __register_sysctl_table+0x5a9/0x7f0 fs/proc/proc_sysctl.c:1373
    [&lt;ffffffff82219b7a&gt;] setup_mq_sysctls+0x12a/0x1c0 ipc/mq_sysctl.c:112
    [&lt;ffffffff822197f2&gt;] create_ipc_ns ipc/namespace.c:63 [inline]
    [&lt;ffffffff822197f2&gt;] copy_ipcs+0x292/0x390 ipc/namespace.c:91
    [&lt;ffffffff8127de7c&gt;] create_new_namespaces+0xdc/0x4f0 kernel/nsproxy.c:90
    [&lt;ffffffff8127e89b&gt;] unshare_nsproxy_namespaces+0x9b/0x120 kernel/nsproxy.c:226
    [&lt;ffffffff8123f92e&gt;] ksys_unshare+0x2fe/0x600 kernel/fork.c:3165
    [&lt;ffffffff8123fc42&gt;] __do_sys_unshare kernel/fork.c:3236 [inline]
    [&lt;ffffffff8123fc42&gt;] __se_sys_unshare kernel/fork.c:3234 [inline]
    [&lt;ffffffff8123fc42&gt;] __x64_sys_unshare+0x12/0x20 kernel/fork.c:3234
    [&lt;ffffffff845aab45&gt;] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
    [&lt;ffffffff845aab45&gt;] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
    [&lt;ffffffff8460006a&gt;] entry_SYSCALL_64_after_hwframe+0x46/0xb0

BUG: memory leak
unreferenced object 0xffff888112fbb900 (size 256):
  comm "syz-executor237", pid 3648, jiffies 4294970469 (age 12.270s)
  hex dump (first 32 bytes):
    78 b9 fb 12 81 88 ff ff 00 00 00 00 01 00 00 00  x...............
    01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  backtrace:
    [&lt;ffffffff816fef49&gt;] kmalloc include/linux/slab.h:605 [inline]
    [&lt;ffffffff816fef49&gt;] kzalloc include/linux/slab.h:733 [inline]
    [&lt;ffffffff816fef49&gt;] new_dir fs/proc/proc_sysctl.c:978 [inline]
    [&lt;ffffffff816fef49&gt;] get_subdir fs/proc/proc_sysctl.c:1022 [inline]
    [&lt;ffffffff816fef49&gt;] __register_sysctl_table+0x5a9/0x7f0 fs/proc/proc_sysctl.c:1373
    [&lt;ffffffff82219b7a&gt;] setup_mq_sysctls+0x12a/0x1c0 ipc/mq_sysctl.c:112
    [&lt;ffffffff822197f2&gt;] create_ipc_ns ipc/namespace.c:63 [inline]
    [&lt;ffffffff822197f2&gt;] copy_ipcs+0x292/0x390 ipc/namespace.c:91
    [&lt;ffffffff8127de7c&gt;] create_new_namespaces+0xdc/0x4f0 kernel/nsproxy.c:90
    [&lt;ffffffff8127e89b&gt;] unshare_nsproxy_namespaces+0x9b/0x120 kernel/nsproxy.c:226
    [&lt;ffffffff8123f92e&gt;] ksys_unshare+0x2fe/0x600 kernel/fork.c:3165
    [&lt;ffffffff8123fc42&gt;] __do_sys_unshare kernel/fork.c:3236 [inline]
    [&lt;ffffffff8123fc42&gt;] __se_sys_unshare kernel/fork.c:3234 [inline]
    [&lt;ffffffff8123fc42&gt;] __x64_sys_unshare+0x12/0x20 kernel/fork.c:3234
    [&lt;ffffffff845aab45&gt;] do_syscall_x64 arch/x86/entry/common.c:50 [inline]
    [&lt;ffffffff845aab45&gt;] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
    [&lt;ffffffff8460006a&gt;] entry_SYSCALL_64_after_hwframe+0x46/0xb0

Reported-by: syzbot+b4b0d1b35442afbf6fd2@syzkaller.appspotmail.com
Signed-off-by: Alexey Gladkov &lt;legion@kernel.org&gt;
Link: https://lkml.kernel.org/r/000000000000f5004705e1db8bad@google.com
Link: https://lkml.kernel.org/r/20220622200729.2639663-1-legion@kernel.org
Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'per-namespace-ipc-sysctls-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace</title>
<updated>2022-06-03T22:54:57Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2022-06-03T22:54:57Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=1888e9b4bb78c88514b24ecafa9e4e4faf761747'/>
<id>urn:sha1:1888e9b4bb78c88514b24ecafa9e4e4faf761747</id>
<content type='text'>
Pull ipc sysctl namespace updates from Eric Biederman:
 "This updates the ipc sysctls so that they are fundamentally per ipc
  namespace. Previously these sysctls depended upon a hack to simulate
  being per ipc namespace by looking up the ipc namespace in read or
  write. With this set of changes the ipc sysctls are registered per ipc
  namespace and open looks up the ipc namespace.

  Not only does this series of changes ensure the traditional binding at
  open time happens, but it sets a foundation for being able to relax
  the permission checks to allow a user namspace root to change the ipc
  sysctls for an ipc namespace that the user namespace root requires. To
  do this requires the ipc namespace to be known at open time"

* tag 'per-namespace-ipc-sysctls-for-v5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
  ipc: Remove extra braces
  ipc: Check permissions for checkpoint_restart sysctls at open time
  ipc: Remove extra1 field abuse to pass ipc namespace
  ipc: Use the same namespace to modify and validate
  ipc: Store ipc sysctls in the ipc namespace
  ipc: Store mqueue sysctls in the ipc namespace
</content>
</entry>
<entry>
<title>ipc/mqueue: use get_tree_nodev() in mqueue_get_tree()</title>
<updated>2022-05-10T01:29:21Z</updated>
<author>
<name>Waiman Long</name>
<email>longman@redhat.com</email>
</author>
<published>2022-05-10T01:29:21Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=d60c4d01a98bc1942dba6e3adc02031f5519f94b'/>
<id>urn:sha1:d60c4d01a98bc1942dba6e3adc02031f5519f94b</id>
<content type='text'>
When running the stress-ng clone benchmark with multiple testing threads,
it was found that there were significant spinlock contention in sget_fc().
The contended spinlock was the sb_lock.  It is under heavy contention
because the following code in the critcal section of sget_fc():

  hlist_for_each_entry(old, &amp;fc-&gt;fs_type-&gt;fs_supers, s_instances) {
      if (test(old, fc))
          goto share_extant_sb;
  }

After testing with added instrumentation code, it was found that the
benchmark could generate thousands of ipc namespaces with the
corresponding number of entries in the mqueue's fs_supers list where the
namespaces are the key for the search.  This leads to excessive time in
scanning the list for a match.

Looking back at the mqueue calling sequence leading to sget_fc():

  mq_init_ns()
  =&gt; mq_create_mount()
  =&gt; fc_mount()
  =&gt; vfs_get_tree()
  =&gt; mqueue_get_tree()
  =&gt; get_tree_keyed()
  =&gt; vfs_get_super()
  =&gt; sget_fc()

Currently, mq_init_ns() is the only mqueue function that will indirectly
call mqueue_get_tree() with a newly allocated ipc namespace as the key for
searching.  As a result, there will never be a match with the exising ipc
namespaces stored in the mqueue's fs_supers list.

So using get_tree_keyed() to do an existing ipc namespace search is just a
waste of time.  Instead, we could use get_tree_nodev() to eliminate the
useless search.  By doing so, we can greatly reduce the sb_lock hold time
and avoid the spinlock contention problem in case a large number of ipc
namespaces are present.

Of course, if the code is modified in the future to allow
mqueue_get_tree() to be called with an existing ipc namespace instead of a
new one, we will have to use get_tree_keyed() in this case.

The following stress-ng clone benchmark command was run on a 2-socket
48-core Intel system:

./stress-ng --clone 32 --verbose --oomable --metrics-brief -t 20

The "bogo ops/s" increased from 5948.45 before patch to 9137.06 after
patch. This is an increase of 54% in performance.

Link: https://lkml.kernel.org/r/20220121172315.19652-1-longman@redhat.com
Fixes: 935c6912b198 ("ipc: Convert mqueue fs to fs_context")
Signed-off-by: Waiman Long &lt;longman@redhat.com&gt;
Cc: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Cc: David Howells &lt;dhowells@redhat.com&gt;
Cc: Manfred Spraul &lt;manfred@colorfullife.com&gt;
Cc: Davidlohr Bueso &lt;dave@stgolabs.net&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>ipc: update semtimedop() to use hrtimer</title>
<updated>2022-05-10T01:29:20Z</updated>
<author>
<name>Prakash Sangappa</name>
<email>prakash.sangappa@oracle.com</email>
</author>
<published>2022-05-10T01:29:20Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=49c9dd0df65d547a58642d2f717eeb560e1db140'/>
<id>urn:sha1:49c9dd0df65d547a58642d2f717eeb560e1db140</id>
<content type='text'>
semtimedop() should be converted to use hrtimer like it has been done for
most of the system calls with timeouts.  This system call already takes a
struct timespec as an argument and can therefore provide finer granularity
timed wait.

Link: https://lkml.kernel.org/r/1651187881-2858-1-git-send-email-prakash.sangappa@oracle.com
Signed-off-by: Prakash Sangappa &lt;prakash.sangappa@oracle.com&gt;
Reviewed-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Davidlohr Bueso &lt;dave@stgolabs.net&gt;
Reviewed-by: Manfred Spraul &lt;manfred@colorfullife.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>ipc/sem: remove redundant assignments</title>
<updated>2022-05-10T01:29:20Z</updated>
<author>
<name>Michal Orzel</name>
<email>michalorzel.eng@gmail.com</email>
</author>
<published>2022-05-10T01:29:20Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=0e900029655327bb5326ced02eff97667a079039'/>
<id>urn:sha1:0e900029655327bb5326ced02eff97667a079039</id>
<content type='text'>
Get rid of redundant assignments which end up in values not being
read either because they are overwritten or the function ends.

Reported by clang-tidy [deadcode.DeadStores]

Link: https://lkml.kernel.org/r/20220409101933.207157-1-michalorzel.eng@gmail.com
Signed-off-by: Michal Orzel &lt;michalorzel.eng@gmail.com&gt;
Reviewed-by: Tom Rix &lt;trix@redhat.com&gt;
Reviewed-by: Nathan Chancellor &lt;nathan@kernel.org&gt;
Cc: Nick Desaulniers &lt;ndesaulniers@google.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
</content>
</entry>
</feed>
