<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/tools/testing/selftests/rseq, branch v5.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.2</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2019-05-17T01:57:58Z</updated>
<entry>
<title>Merge tag 'linux-kselftest-5.2-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest</title>
<updated>2019-05-17T01:57:58Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2019-05-17T01:57:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4c7b63a32d54850a31a00f22131db417face70e4'/>
<id>urn:sha1:4c7b63a32d54850a31a00f22131db417face70e4</id>
<content type='text'>
Pull more kselftest updates from Shuah Khan:

 - kselftest framework bpf build/test workflow regression fix

 - Fix to kselftest install to use default install path

 - Fix to kselftest KBUILD_OUTPUT builds to not clutter main
   KBUILD_OUTPUT directory with selftest objects

 - .gitignore fixes (Kelsey Skunberg)

 - rseq selftests updates (Mathieu Desnoyers and Martin Schwidefsky)

   They change the per-architecture pre-abort signatures to ensure those
   are valid trap instructions.

   The way exit points are presented to debuggers is enhanced, ensuring
   all exit points are present, so debuggers don't have to disassemble
   rseq critical section to properly skip over them.

   Discussions with the glibc community is reaching a consensus of
   exposing a __rseq_handled symbol from glibc to coexist with rseq
   early adopters. Update the rseq selftest code to expose and use this
   symbol.

   Support for compiling asm goto with clang is added with the
   "-no-integrated-as" compiler switch, similarly to the top level
   kernel Makefile.

 - kselftest Makefile test run output refactoring and making test output
   TAP13 compliant from Kees Cook:

   This re-factors the selftest Makefiles to extract the test running
   logic to be reused between "run_tests" and "emit_tests", while also
   fixing up the test output to be TAP version 13 compliant:
	- added "plan" line
	- fixed result line syntax
	- moved all test output to be "# "-prefixed as TAP "diagnostic"
	  lines

   The prefixing code includes a fallback mode for limited execution
   environments.

   Additionally, the plan lines are fixed for all callers of
   kselftest.h.

* tag 'linux-kselftest-5.2-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: (25 commits)
  selftests: avoid KBUILD_OUTPUT dir cluttering with selftest objects
  selftests: drivers: Create .gitignore to include /dma-buf/udmabuf
  selftests: pidfd: Create .gitignore to include pidfd_test
  selftests: fix bpf build/test workflow regression when KBUILD_OUTPUT is set
  selftests: fix install target to use default install path
  rseq/selftests: add -no-integrated-as for clang
  rseq/selftests: mips: use break instruction for RSEQ_SIG
  rseq/selftests: powerpc code signature: generate valid instructions
  rseq/selftests: aarch64 code signature: handle big-endian environment
  rseq/selftests: arm: use udf instruction for RSEQ_SIG
  rseq/selftests: s390: use trap4 for RSEQ_SIG
  rseq/selftests: x86: use ud1 instruction as RSEQ_SIG opcode
  rseq/selftests: s390: use jg instruction for jumps outside of the asm
  rseq/selftests: Use __rseq_handled symbol to coexist with glibc
  rseq/selftests: Introduce __rseq_cs_ptr_array, rename __rseq_table to __rseq_cs
  rseq/selftests: Add __rseq_exit_point_array section for debuggers
  rseq/selftests: x86: Work-around bogus gcc-8 optimisation
  selftests: Add test plan API to kselftest.h and adjust callers
  selftests: Remove KSFT_TAP_LEVEL
  selftests: Move test output to diagnostic lines
  ...
</content>
</entry>
<entry>
<title>rseq/selftests: add -no-integrated-as for clang</title>
<updated>2019-05-07T21:33:17Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-04-29T15:28:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=fdeb89d84eb28241f5168cc13cc53a5c39f5d111'/>
<id>urn:sha1:fdeb89d84eb28241f5168cc13cc53a5c39f5d111</id>
<content type='text'>
Ongoing work for asm goto support from clang requires the
-no-integrated-as compiler flag.

This compiler flag is present in the toplevel kernel Makefile,
but is not replicated for selftests. Add it specifically for
the rseq selftest which requires asm goto.

Link: https://reviews.llvm.org/D56571
Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
CC: Nick Desaulniers &lt;ndesaulniers@google.com&gt;
CC: Thomas Gleixner &lt;tglx@linutronix.de&gt;
CC: Joel Fernandes &lt;joelaf@google.com&gt;
CC: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
CC: Dave Watson &lt;davejwatson@fb.com&gt;
CC: Will Deacon &lt;will.deacon@arm.com&gt;
CC: Shuah Khan &lt;shuah@kernel.org&gt;
CC: Andi Kleen &lt;andi@firstfloor.org&gt;
CC: linux-kselftest@vger.kernel.org
CC: "H . Peter Anvin" &lt;hpa@zytor.com&gt;
CC: Chris Lameter &lt;cl@linux.com&gt;
CC: Russell King &lt;linux@arm.linux.org.uk&gt;
CC: Michael Kerrisk &lt;mtk.manpages@gmail.com&gt;
CC: "Paul E . McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
CC: Paul Turner &lt;pjt@google.com&gt;
CC: Boqun Feng &lt;boqun.feng@gmail.com&gt;
CC: Josh Triplett &lt;josh@joshtriplett.org&gt;
CC: Steven Rostedt &lt;rostedt@goodmis.org&gt;
CC: Ben Maurer &lt;bmaurer@fb.com&gt;
CC: linux-api@vger.kernel.org
CC: Andy Lutomirski &lt;luto@amacapital.net&gt;
CC: Andrew Morton &lt;akpm@linux-foundation.org&gt;
CC: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Reviewed-by: Nick Desaulniers &lt;ndesaulniers@google.com&gt;
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: mips: use break instruction for RSEQ_SIG</title>
<updated>2019-05-07T21:33:09Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-04-29T15:28:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=16b96b6ed87faa616e2d2750ba44d78ee157ce26'/>
<id>urn:sha1:16b96b6ed87faa616e2d2750ba44d78ee157ce26</id>
<content type='text'>
Use break as guard instruction for the restartable sequence abort
handler.

Previously, the chosen signature was simply data, based on the
assumption that it could always sit in a literal pool. However,
some compilation environments favor disabling literal pool. Therefore,
ensure the signature is a valid uncommon trap instruction.

Suggested-by: Paul Burton &lt;paul.burton@mips.com&gt;
Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
CC: Paul Burton &lt;paul.burton@mips.com&gt;
CC: James Hogan &lt;jhogan@kernel.org&gt;
Cc: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Cc: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;
Cc: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
Cc: Boqun Feng &lt;boqun.feng@gmail.com&gt;
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: powerpc code signature: generate valid instructions</title>
<updated>2019-05-07T21:33:00Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-04-29T15:28:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=496fd0fc9f5c4c187e69e8697387a7604ab7141d'/>
<id>urn:sha1:496fd0fc9f5c4c187e69e8697387a7604ab7141d</id>
<content type='text'>
Use "twui" as the guard instruction for the restartable sequence abort
handler.

Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
CC: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
CC: Paul Mackerras &lt;paulus@samba.org&gt;
CC: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
CC: Boqun Feng &lt;boqun.feng@gmail.com&gt;
CC: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: "Paul E. McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
CC: Alan Modra &lt;amodra@gmail.com&gt;
CC: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: aarch64 code signature: handle big-endian environment</title>
<updated>2019-05-07T21:32:51Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-04-29T15:28:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7cd4ce2e466f56ae92930adbded675a4e326a59e'/>
<id>urn:sha1:7cd4ce2e466f56ae92930adbded675a4e326a59e</id>
<content type='text'>
Handle compiling with -mbig-endian on aarch64, which generates binaries
with mixed code vs data endianness (little endian code, big endian
data).

Else mismatch between code endianness for the generated signatures and
data endianness for the RSEQ_SIG parameter passed to the rseq
registration will trigger application segmentation faults when the
kernel try to abort rseq critical sections.

Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
Acked-by: Will Deacon &lt;will.deacon@arm.com&gt;
CC: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: Thomas Gleixner &lt;tglx@linutronix.de&gt;
CC: Joel Fernandes &lt;joelaf@google.com&gt;
CC: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
CC: Dave Watson &lt;davejwatson@fb.com&gt;
CC: Will Deacon &lt;will.deacon@arm.com&gt;
CC: Shuah Khan &lt;shuah@kernel.org&gt;
CC: Andi Kleen &lt;andi@firstfloor.org&gt;
CC: linux-kselftest@vger.kernel.org
CC: "H . Peter Anvin" &lt;hpa@zytor.com&gt;
CC: Chris Lameter &lt;cl@linux.com&gt;
CC: Russell King &lt;linux@arm.linux.org.uk&gt;
CC: Michael Kerrisk &lt;mtk.manpages@gmail.com&gt;
CC: "Paul E . McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
CC: Paul Turner &lt;pjt@google.com&gt;
CC: Boqun Feng &lt;boqun.feng@gmail.com&gt;
CC: Josh Triplett &lt;josh@joshtriplett.org&gt;
CC: Steven Rostedt &lt;rostedt@goodmis.org&gt;
CC: Ben Maurer &lt;bmaurer@fb.com&gt;
CC: linux-api@vger.kernel.org
CC: Andy Lutomirski &lt;luto@amacapital.net&gt;
CC: Andrew Morton &lt;akpm@linux-foundation.org&gt;
CC: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: arm: use udf instruction for RSEQ_SIG</title>
<updated>2019-05-07T21:32:36Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-05-03T19:38:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2b845d4b4acd9422bbb668989db8dc36dfc8f438'/>
<id>urn:sha1:2b845d4b4acd9422bbb668989db8dc36dfc8f438</id>
<content type='text'>
Use udf as the guard instruction for the restartable sequence abort
handler.

Previously, the chosen signature was not a valid instruction, based
on the assumption that it could always sit in a literal pool. However,
there are compilation environments in which literal pools are not
available, for instance execute-only code. Therefore, we need to
choose a signature value that is also a valid instruction.

Handle compiling with -mbig-endian on ARMv6+, which generates binaries
with mixed code vs data endianness (little endian code, big endian
data).

Else mismatch between code endianness for the generated signatures and
data endianness for the RSEQ_SIG parameter passed to the rseq
registration will trigger application segmentation faults when the
kernel try to abort rseq critical sections.

Prior to ARMv6, -mbig-endian generates big-endian code and data, so
endianness should not be reversed in that case.

Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
CC: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: Thomas Gleixner &lt;tglx@linutronix.de&gt;
CC: Joel Fernandes &lt;joelaf@google.com&gt;
CC: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
CC: Dave Watson &lt;davejwatson@fb.com&gt;
CC: Will Deacon &lt;will.deacon@arm.com&gt;
CC: Shuah Khan &lt;shuah@kernel.org&gt;
CC: Andi Kleen &lt;andi@firstfloor.org&gt;
CC: linux-kselftest@vger.kernel.org
CC: "H . Peter Anvin" &lt;hpa@zytor.com&gt;
CC: Chris Lameter &lt;cl@linux.com&gt;
CC: Russell King &lt;linux@arm.linux.org.uk&gt;
CC: Michael Kerrisk &lt;mtk.manpages@gmail.com&gt;
CC: "Paul E . McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
CC: Paul Turner &lt;pjt@google.com&gt;
CC: Boqun Feng &lt;boqun.feng@gmail.com&gt;
CC: Josh Triplett &lt;josh@joshtriplett.org&gt;
CC: Steven Rostedt &lt;rostedt@goodmis.org&gt;
CC: Ben Maurer &lt;bmaurer@fb.com&gt;
CC: linux-api@vger.kernel.org
CC: Andy Lutomirski &lt;luto@amacapital.net&gt;
CC: Andrew Morton &lt;akpm@linux-foundation.org&gt;
CC: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: s390: use trap4 for RSEQ_SIG</title>
<updated>2019-05-07T21:32:14Z</updated>
<author>
<name>Martin Schwidefsky</name>
<email>schwidefsky@de.ibm.com</email>
</author>
<published>2019-04-29T15:27:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3d4d1f05bc990f240d66b0ffaf7121397e14df19'/>
<id>urn:sha1:3d4d1f05bc990f240d66b0ffaf7121397e14df19</id>
<content type='text'>
Use trap4 as the guard instruction for the restartable sequence abort
handler.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: x86: use ud1 instruction as RSEQ_SIG opcode</title>
<updated>2019-05-07T21:32:05Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-04-29T15:27:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=24fa5d1efe98bc09a96ba41fdba96ef715aede77'/>
<id>urn:sha1:24fa5d1efe98bc09a96ba41fdba96ef715aede77</id>
<content type='text'>
Use ud1 as the guard instruction for the restartable sequence abort
handler. Its benefit compared to nopl is to trap execution if the
program ends up trying to execute it by mistake, which makes debugging
easier.

The 4-byte signature per se is unchanged (it is the instruction
operand). Only the opcode is changed from nopl to ud1.

Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
Suggested-by: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: Thomas Gleixner &lt;tglx@linutronix.de&gt;
CC: Joel Fernandes &lt;joelaf@google.com&gt;
CC: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
CC: Dave Watson &lt;davejwatson@fb.com&gt;
CC: Will Deacon &lt;will.deacon@arm.com&gt;
CC: Shuah Khan &lt;shuah@kernel.org&gt;
CC: Andi Kleen &lt;andi@firstfloor.org&gt;
CC: linux-kselftest@vger.kernel.org
CC: "H . Peter Anvin" &lt;hpa@zytor.com&gt;
CC: Chris Lameter &lt;cl@linux.com&gt;
CC: Russell King &lt;linux@arm.linux.org.uk&gt;
CC: Michael Kerrisk &lt;mtk.manpages@gmail.com&gt;
CC: "Paul E . McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
CC: Paul Turner &lt;pjt@google.com&gt;
CC: Boqun Feng &lt;boqun.feng@gmail.com&gt;
CC: Josh Triplett &lt;josh@joshtriplett.org&gt;
CC: Steven Rostedt &lt;rostedt@goodmis.org&gt;
CC: Ben Maurer &lt;bmaurer@fb.com&gt;
CC: linux-api@vger.kernel.org
CC: Andy Lutomirski &lt;luto@amacapital.net&gt;
CC: Andrew Morton &lt;akpm@linux-foundation.org&gt;
CC: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: s390: use jg instruction for jumps outside of the asm</title>
<updated>2019-05-07T21:31:55Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-04-29T15:27:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=97b8be816840da81296f3a90352a7fce4e66c156'/>
<id>urn:sha1:97b8be816840da81296f3a90352a7fce4e66c156</id>
<content type='text'>
The branch target range of the "j" instruction is 64K, which is not
enough for the general case.

Suggested-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
CC: Thomas Gleixner &lt;tglx@linutronix.de&gt;
CC: Joel Fernandes &lt;joelaf@google.com&gt;
CC: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
CC: Dave Watson &lt;davejwatson@fb.com&gt;
CC: Will Deacon &lt;will.deacon@arm.com&gt;
CC: Shuah Khan &lt;shuah@kernel.org&gt;
CC: Andi Kleen &lt;andi@firstfloor.org&gt;
CC: linux-kselftest@vger.kernel.org
CC: "H . Peter Anvin" &lt;hpa@zytor.com&gt;
CC: Chris Lameter &lt;cl@linux.com&gt;
CC: Russell King &lt;linux@arm.linux.org.uk&gt;
CC: Michael Kerrisk &lt;mtk.manpages@gmail.com&gt;
CC: "Paul E . McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
CC: Paul Turner &lt;pjt@google.com&gt;
CC: Boqun Feng &lt;boqun.feng@gmail.com&gt;
CC: Josh Triplett &lt;josh@joshtriplett.org&gt;
CC: Steven Rostedt &lt;rostedt@goodmis.org&gt;
CC: Ben Maurer &lt;bmaurer@fb.com&gt;
CC: linux-api@vger.kernel.org
CC: Andy Lutomirski &lt;luto@amacapital.net&gt;
CC: Andrew Morton &lt;akpm@linux-foundation.org&gt;
CC: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rseq/selftests: Use __rseq_handled symbol to coexist with glibc</title>
<updated>2019-05-07T21:31:46Z</updated>
<author>
<name>Mathieu Desnoyers</name>
<email>mathieu.desnoyers@efficios.com</email>
</author>
<published>2019-04-29T15:27:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5b0c308a0565a94d2e1070cbf287197b676faaaf'/>
<id>urn:sha1:5b0c308a0565a94d2e1070cbf287197b676faaaf</id>
<content type='text'>
In order to integrate rseq into user-space applications, expose a
__rseq_handled symbol so many rseq users can be linked into the same
application (e.g. librseq and glibc).

The __rseq_refcount TLS variable is static to the librseq library. It
ensures that rseq syscall registration/unregistration happens only for
the most early/late caller to rseq_{,un}register_current_thread for each
thread, thus ensuring that rseq is registered across the lifetime of all
rseq users for a given thread.

Signed-off-by: Mathieu Desnoyers &lt;mathieu.desnoyers@efficios.com&gt;
CC: Shuah Khan &lt;shuah@kernel.org&gt;
CC: Carlos O'Donell &lt;carlos@redhat.com&gt;
CC: Florian Weimer &lt;fweimer@redhat.com&gt;
CC: Joseph Myers &lt;joseph@codesourcery.com&gt;
CC: Szabolcs Nagy &lt;szabolcs.nagy@arm.com&gt;
CC: Thomas Gleixner &lt;tglx@linutronix.de&gt;
CC: Ben Maurer &lt;bmaurer@fb.com&gt;
CC: Peter Zijlstra &lt;peterz@infradead.org&gt;
CC: "Paul E. McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
CC: Boqun Feng &lt;boqun.feng@gmail.com&gt;
CC: Will Deacon &lt;will.deacon@arm.com&gt;
CC: Dave Watson &lt;davejwatson@fb.com&gt;
CC: Paul Turner &lt;pjt@google.com&gt;
CC: linux-api@vger.kernel.org
Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;
</content>
</entry>
</feed>
