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

Commit ed5062dd authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull UAPI disintegration fixes from David Howells:
 "There are three main parts:

 (1) I found I needed some more fixups in the wake of testing Arm64
     (some asm/unistd.h files had weird guards that caused problems -
     mostly in arches for which I don't have a compiler) and some
     __KERNEL__ splitting needed to take place in Arm64.

 (2) I found that c6x was missing some __KERNEL__ guards in its
     asm/signal.h.  Mark Salter pointed me at a tree with a patch to
     remove that file entirely and use the asm-generic variant instead.

 (3) Lastly, m68k turned out to have a header installation problem due
     to it lacking a kvm_para.h file.

     The conditional installation bits for linux/kvm_para.h, linux/kvm.h
     and linux/a.out.h weren't very well specified - and didn't work if
     an arch didn't have the asm/ version of that file, but there *was*
     an asm-generic/ version.

     It seems the "ifneq $((wildcard ...),)" for each of those three
     headers in include/kernel/Kbuild is invoked twice during header
     installation, and the second time it matches on the just installed
     asm-generic/kvm_para.h file and thus incorrectly installs
     linux/kvm_para.h as well.

     Most arches actually have an asm/kvm_para.h, so this wasn't
     detectable in those."

* 'uapi-prep' of git://git.infradead.org/users/dhowells/linux-headers:
  UAPI: Fix conditional header installation handling (notably kvm_para.h on m68k)
  c6x: remove c6x signal.h
  UAPI: Split compound conditionals containing __KERNEL__ in Arm64
  UAPI: Fix the guards on various asm/unistd.h files
  c6x: make dsk6455 the default config
parents 125b79d7 f3dfd599
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -35,7 +35,8 @@
#define COMPAT_HWCAP_IDIVT	(1 << 18)
#define COMPAT_HWCAP_IDIV	(COMPAT_HWCAP_IDIVA|COMPAT_HWCAP_IDIVT)

#if defined(__KERNEL__) && !defined(__ASSEMBLY__)
#ifdef __KERNEL__
#ifndef __ASSEMBLY__
/*
 * This yields a mask that user programs can use to figure out what
 * instruction set this cpu supports.
@@ -49,5 +50,6 @@

extern unsigned int elf_hwcap;
#endif
#endif

#endif
+3 −1
Original line number Diff line number Diff line
@@ -18,7 +18,8 @@

#include <asm-generic/stat.h>

#if defined(__KERNEL__) && defined(CONFIG_COMPAT)
#ifdef __KERNEL__
#ifdef CONFIG_COMPAT

#include <asm/compat.h>

@@ -57,6 +58,7 @@ struct stat64 {
	compat_u64	st_ino;
};

#endif
#endif

#endif
+3 −5
Original line number Diff line number Diff line
@@ -13,15 +13,13 @@
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#if !defined(__ASM_UNISTD_H) || defined(__SYSCALL)
#define __ASM_UNISTD_H

#ifndef __SYSCALL_COMPAT
#include <asm-generic/unistd.h>
#endif

#if defined(__KERNEL__) && defined(CONFIG_COMPAT)
#ifdef __KERNEL__
#ifdef CONFIG_COMPAT
#include <asm/unistd32.h>
#endif

#endif /* __ASM_UNISTD_H */
#endif
+0 −4
Original line number Diff line number Diff line
@@ -16,8 +16,6 @@
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#if !defined(__ASM_UNISTD32_H) || defined(__SYSCALL)
#define __ASM_UNISTD32_H

#ifndef __SYSCALL
#define __SYSCALL(x, y)
@@ -754,5 +752,3 @@ __SYSCALL(__NR_syncfs, sys_syncfs)
#define __ARCH_WANT_SYS_SIGPENDING
#define __ARCH_WANT_SYS_SIGPROCMASK
#define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND

#endif /* __ASM_UNISTD32_H */
+2 −0
Original line number Diff line number Diff line
@@ -6,6 +6,8 @@
# for more details.
#

KBUILD_DEFCONFIG := dsk6455_defconfig

cflags-y += -mno-dsbt -msdata=none

cflags-$(CONFIG_C6X_BIG_KERNEL) += -mlong-calls
Loading