<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/sh/boot/compressed, branch linux-5.16.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.16.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.16.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-11-14T19:37:49Z</updated>
<entry>
<title>Merge tag 'sh-for-5.16' of git://git.libc.org/linux-sh</title>
<updated>2021-11-14T19:37:49Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2021-11-14T19:37:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=24318ae80d1705acc50f0d70ece543345336a6e1'/>
<id>urn:sha1:24318ae80d1705acc50f0d70ece543345336a6e1</id>
<content type='text'>
Pull arch/sh updates from Rich Felker.

* tag 'sh-for-5.16' of git://git.libc.org/linux-sh:
  sh: pgtable-3level: Fix cast to pointer from integer of different size
  sh: fix READ/WRITE redefinition warnings
  sh: define __BIG_ENDIAN for math-emu
  sh: math-emu: drop unused functions
  sh: fix kconfig unmet dependency warning for FRAME_POINTER
  sh: Cleanup about SPARSE_IRQ
  sh: kdump: add some attribute to function
  maple: fix wrong return value of maple_bus_init().
  sh: boot: avoid unneeded rebuilds under arch/sh/boot/compressed/
  sh: boot: add intermediate vmlinux.bin* to targets instead of extra-y
  sh: boards: Fix the cacography in irq.c
  sh: check return code of request_irq
  sh: fix trivial misannotations
</content>
</entry>
<entry>
<title>ftrace/sh: Add arch_ftrace_ops_list_func stub to have compressed image still link</title>
<updated>2021-10-26T21:23:36Z</updated>
<author>
<name>Steven Rostedt (VMware)</name>
</author>
<published>2021-10-26T21:23:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=17b251a290ba84a0c2c5c82df9596cb2e7207ca6'/>
<id>urn:sha1:17b251a290ba84a0c2c5c82df9596cb2e7207ca6</id>
<content type='text'>
Using the linker script to fix an issue where some archs call the
function tracer with just the ip (instruction pointer) and pip (parent
instruction pointer) where as more up to date archs also pass in the
associated ftrace_ops and the ftrace_regs pointer, the generic code
will be called either with two parameters or four. To avoid any C
undefined behavior of calling two parameters to four or four to two
parameter function, two functions are created, where a preprocessor
macro uses the one that matches the architecture. As the function
pointers for them may be different, a typecast is used. But this
triggers issues with newer compilers that will fail due to -Werror.

A linker trick is now used to map the generic function to the function
that is used (note the generic function is only used to set the default
function callback). The linker trick defines ftrace_ops_list_func (the
generic function) to arch_ftrace_ops_list_func (the arch defined one).

Link: https://lore.kernel.org/all/20200617165616.52241bde@oasis.local.home/

But this fails sh arch because their linker script is included in their
compressed image that does not define arch_ftrace_ops_list_func at all

  sh4-linux-ld:arch/sh/boot/compressed/../../kernel/vmlinux.lds:32: undefined symbol `arch_ftrace_ops_list_func' referenced in expression

Included a stub by that name in the misc.c to allow the code to
compile and link, even though it's not used.

This is similar to what was done for ftrace_stub:

  b83b43ffc6e4b ("fgraph: Fix function type mismatches of
  ftrace_graph_return using ftrace_stub")

Link: https://lkml.kernel.org/r/20211021221627.5d7270de@rorschach.local.home

Cc: Yoshinori Sato &lt;ysato@users.sourceforge.jp&gt;
Cc: Rich Felker &lt;dalias@libc.org&gt;
Cc: linux-sh@vger.kernel.org
Signed-off-by: Steven Rostedt (VMware) &lt;rostedt@goodmis.org&gt;
</content>
</entry>
<entry>
<title>sh: boot: avoid unneeded rebuilds under arch/sh/boot/compressed/</title>
<updated>2021-09-17T18:00:07Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2021-01-17T11:16:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7fe859eef99b6fac655416d5bb01c82bd0da2ada'/>
<id>urn:sha1:7fe859eef99b6fac655416d5bb01c82bd0da2ada</id>
<content type='text'>
Even if none of source code is updated, the following are every time
rebuilt:

  CC      arch/sh/boot/compressed/cache.o
  SHIPPED arch/sh/boot/compressed/ashiftrt.S
  AS      arch/sh/boot/compressed/ashiftrt.o
  SHIPPED arch/sh/boot/compressed/ashldi3.c
  CC      arch/sh/boot/compressed/ashldi3.o
  SHIPPED arch/sh/boot/compressed/ashrsi3.S
  AS      arch/sh/boot/compressed/ashrsi3.o
  SHIPPED arch/sh/boot/compressed/ashlsi3.S
  AS      arch/sh/boot/compressed/ashlsi3.o
  SHIPPED arch/sh/boot/compressed/lshrsi3.S
  AS      arch/sh/boot/compressed/lshrsi3.o
  LD      arch/sh/boot/compressed/vmlinux
  OBJCOPY arch/sh/boot/zImage

Add build artifacts to 'targets' as needed.

I turned the library files to check-in files. It is simpler than
copying from arch/sh/lib/ at build-time.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
Tested-by: John Paul Adrian Glaubitz &lt;glaubitz@physik.fu-berlin.de&gt;
Signed-off-by: Rich Felker &lt;dalias@libc.org&gt;
</content>
</entry>
<entry>
<title>kbuild: sh: remove unused install script</title>
<updated>2021-09-02T23:17:20Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
</author>
<published>2021-04-07T05:34:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=25c648a066c1cc5ed763f2354531fdff41ac83a1'/>
<id>urn:sha1:25c648a066c1cc5ed763f2354531fdff41ac83a1</id>
<content type='text'>
The sh arch has a install.sh script, but no Makefile actually calls it.
Remove it to keep anyone from accidentally calling it in the future.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
</content>
</entry>
<entry>
<title>kbuild: introduce ccflags-remove-y and asflags-remove-y</title>
<updated>2020-08-09T16:32:59Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2020-07-07T09:21:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=15d5761ad31dfb194ebe76554e6af0437eb20424'/>
<id>urn:sha1:15d5761ad31dfb194ebe76554e6af0437eb20424</id>
<content type='text'>
CFLAGS_REMOVE_&lt;file&gt;.o filters out flags when compiling a particular
object, but there is no convenient way to do that for every object in
a directory.

Add ccflags-remove-y and asflags-remove-y to make it easily.

Use ccflags-remove-y to clean up some Makefiles.

The add/remove order works as follows:

 [1] KBUILD_CFLAGS specifies compiler flags used globally

 [2] ccflags-y adds compiler flags for all objects in the
     current Makefile

 [3] ccflags-remove-y removes compiler flags for all objects in the
     current Makefile (New feature)

 [4] CFLAGS_&lt;file&gt; adds compiler flags per file.

 [5] CFLAGS_REMOVE_&lt;file&gt; removes compiler flags per file.

Having [3] before [4] allows us to remove flags from most (but not all)
objects in the current Makefile.

For example, kernel/trace/Makefile removes $(CC_FLAGS_FTRACE)
from all objects in the directory, then adds it back to
trace_selftest_dynamic.o and CFLAGS_trace_kprobe_selftest.o

The same applies to lib/livepatch/Makefile.

Please note ccflags-remove-y has no effect to the sub-directories.
In contrast, the previous notation got rid of compiler flags also from
all the sub-directories.

The following are not affected because they have no sub-directories:

  arch/arm/boot/compressed/
  arch/powerpc/xmon/
  arch/sh/
  kernel/trace/

However, lib/ has several sub-directories.

To keep the behavior, I added ccflags-remove-y to all Makefiles
in subdirectories of lib/, except the following:

  lib/vdso/Makefile        - Kbuild does not descend into this Makefile
  lib/raid/test/Makefile   - This is not used for the kernel build

I think commit 2464a609ded0 ("ftrace: do not trace library functions")
excluded too much. In the next commit, I will remove ccflags-remove-y
from the sub-directories of lib/.

Suggested-by: Sami Tolvanen &lt;samitolvanen@google.com&gt;
Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
Acked-by: Steven Rostedt (VMware) &lt;rostedt@goodmis.org&gt;
Acked-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt; (powerpc)
Acked-by: Brendan Higgins &lt;brendanhiggins@google.com&gt; (KUnit)
Tested-by: Anders Roxell &lt;anders.roxell@linaro.org&gt;
</content>
</entry>
<entry>
<title>sh: remove sh5 support</title>
<updated>2020-06-01T18:48:52Z</updated>
<author>
<name>Arnd Bergmann</name>
</author>
<published>2020-04-20T09:37:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=37744feebc086908fd89760650f458ab19071750'/>
<id>urn:sha1:37744feebc086908fd89760650f458ab19071750</id>
<content type='text'>
sh5 never became a product and has probably never really worked.

Remove it by recursively deleting all associated Kconfig options
and all corresponding files.

Reviewed-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Rich Felker &lt;dalias@libc.org&gt;
</content>
</entry>
<entry>
<title>arch/sh: vmlinux.scr</title>
<updated>2020-06-01T18:48:48Z</updated>
<author>
<name>Romain Naour</name>
</author>
<published>2020-03-15T17:51:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2bbb0e3cc8d4cd51fce9b306e207dba668d39c5f'/>
<id>urn:sha1:2bbb0e3cc8d4cd51fce9b306e207dba668d39c5f</id>
<content type='text'>
Since the patch [1], building the kernel using a toolchain built with
Binutils 2.33.1 prevent booting a sh4 system under Qemu.
Apply the patch provided by Alan Modra [2] that fix alignment of rodata.

[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ebd2263ba9a9124d93bbc0ece63d7e0fae89b40e
[2] https://www.sourceware.org/ml/binutils/2019-12/msg00112.html

Signed-off-by: Romain Naour &lt;romain.naour@gmail.com&gt;
Cc: Alan Modra &lt;amodra@gmail.com&gt;
Signed-off-by: Rich Felker &lt;dalias@libc.org&gt;
</content>
</entry>
<entry>
<title>.gitignore: add SPDX License Identifier</title>
<updated>2020-03-25T10:50:48Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2020-03-03T13:35:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d198b34f3855eee2571dda03eea75a09c7c31480'/>
<id>urn:sha1:d198b34f3855eee2571dda03eea75a09c7c31480</id>
<content type='text'>
Add SPDX License Identifier to all .gitignore files.

Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>fgraph: Fix function type mismatches of ftrace_graph_return using ftrace_stub</title>
<updated>2019-11-14T18:13:43Z</updated>
<author>
<name>Steven Rostedt (VMware)</name>
</author>
<published>2019-10-15T13:00:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b83b43ffc6e4b514ca034a0fbdee01322e2f7022'/>
<id>urn:sha1:b83b43ffc6e4b514ca034a0fbdee01322e2f7022</id>
<content type='text'>
The C compiler is allowing more checks to make sure that function pointers
are assigned to the correct prototype function. Unfortunately, the function
graph tracer uses a special name with its assigned ftrace_graph_return
function pointer that maps to a stub function used by the function tracer
(ftrace_stub). The ftrace_graph_return variable is compared to the
ftrace_stub in some archs to know if the function graph tracer is enabled or
not. This means we can not just simply create a new function stub that
compares it without modifying all the archs.

Instead, have the linker script create a function_graph_stub that maps to
ftrace_stub, and this way we can define the prototype for it to match the
prototype of ftrace_graph_return, and make the compiler checks all happy!

Link: http://lkml.kernel.org/r/20191015090055.789a0aed@gandalf.local.home

Cc: linux-sh@vger.kernel.org
Cc: Yoshinori Sato &lt;ysato@users.sourceforge.jp&gt;
Cc:  Rich Felker &lt;dalias@libc.org&gt;
Reported-by: Sami Tolvanen &lt;samitolvanen@google.com&gt;
Signed-off-by: Steven Rostedt (VMware) &lt;rostedt@goodmis.org&gt;
</content>
</entry>
<entry>
<title>zboot: fix stack protector in compressed boot phase</title>
<updated>2018-04-06T04:36:21Z</updated>
<author>
<name>Huacai Chen</name>
</author>
<published>2018-04-05T23:18:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7bbaf27d9c83037b6e60a818e57bdbedf6bc15be'/>
<id>urn:sha1:7bbaf27d9c83037b6e60a818e57bdbedf6bc15be</id>
<content type='text'>
Calling __stack_chk_guard_setup() in decompress_kernel() is too late
that stack checking always fails for decompress_kernel() itself.  So
remove __stack_chk_guard_setup() and initialize __stack_chk_guard before
we call decompress_kernel().

Original code comes from ARM but also used for MIPS and SH, so fix them
together.  If without this fix, compressed booting of these archs will
fail because stack checking is enabled by default (&gt;=4.16).

Link: http://lkml.kernel.org/r/1522226933-29317-1-git-send-email-chenhc@lemote.com
Fixes: 8779657d29c0 ("stackprotector: Introduce CONFIG_CC_STACKPROTECTOR_STRONG")
Signed-off-by: Huacai Chen &lt;chenhc@lemote.com&gt;
Acked-by: James Hogan &lt;jhogan@kernel.org&gt;
Acked-by: Kees Cook &lt;keescook@chromium.org&gt;
Acked-by: Rich Felker &lt;dalias@libc.org&gt;
Cc: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Cc: Russell King &lt;linux@arm.linux.org.uk&gt;
Cc: Yoshinori Sato &lt;ysato@users.sourceforge.jp&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
