Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

Three cases of simple overlapping changes.

Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
David S. Miller
2017-09-01 17:42:05 -07:00
359 changed files with 2442 additions and 1663 deletions
+6 -5
View File
@@ -1,7 +1,7 @@
VERSION = 4 VERSION = 4
PATCHLEVEL = 13 PATCHLEVEL = 13
SUBLEVEL = 0 SUBLEVEL = 0
EXTRAVERSION = -rc6 EXTRAVERSION = -rc7
NAME = Fearless Coyote NAME = Fearless Coyote
# *DOCUMENTATION* # *DOCUMENTATION*
@@ -396,7 +396,7 @@ LINUXINCLUDE := \
KBUILD_CPPFLAGS := -D__KERNEL__ KBUILD_CPPFLAGS := -D__KERNEL__
KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
-fno-strict-aliasing -fno-common \ -fno-strict-aliasing -fno-common -fshort-wchar \
-Werror-implicit-function-declaration \ -Werror-implicit-function-declaration \
-Wno-format-security \ -Wno-format-security \
-std=gnu89 $(call cc-option,-fno-PIE) -std=gnu89 $(call cc-option,-fno-PIE)
@@ -442,7 +442,7 @@ export RCS_TAR_IGNORE := --exclude SCCS --exclude BitKeeper --exclude .svn \
# =========================================================================== # ===========================================================================
# Rules shared between *config targets and build targets # Rules shared between *config targets and build targets
# Basic helpers built in scripts/ # Basic helpers built in scripts/basic/
PHONY += scripts_basic PHONY += scripts_basic
scripts_basic: scripts_basic:
$(Q)$(MAKE) $(build)=scripts/basic $(Q)$(MAKE) $(build)=scripts/basic
@@ -505,7 +505,7 @@ ifeq ($(KBUILD_EXTMOD),)
endif endif
endif endif
endif endif
# install and module_install need also be processed one by one # install and modules_install need also be processed one by one
ifneq ($(filter install,$(MAKECMDGOALS)),) ifneq ($(filter install,$(MAKECMDGOALS)),)
ifneq ($(filter modules_install,$(MAKECMDGOALS)),) ifneq ($(filter modules_install,$(MAKECMDGOALS)),)
mixed-targets := 1 mixed-targets := 1
@@ -964,7 +964,7 @@ export KBUILD_VMLINUX_MAIN := $(core-y) $(libs-y2) $(drivers-y) $(net-y) $(virt-
export KBUILD_VMLINUX_LIBS := $(libs-y1) export KBUILD_VMLINUX_LIBS := $(libs-y1)
export KBUILD_LDS := arch/$(SRCARCH)/kernel/vmlinux.lds export KBUILD_LDS := arch/$(SRCARCH)/kernel/vmlinux.lds
export LDFLAGS_vmlinux export LDFLAGS_vmlinux
# used by scripts/pacmage/Makefile # used by scripts/package/Makefile
export KBUILD_ALLDIRS := $(sort $(filter-out arch/%,$(vmlinux-alldirs)) arch Documentation include samples scripts tools) export KBUILD_ALLDIRS := $(sort $(filter-out arch/%,$(vmlinux-alldirs)) arch Documentation include samples scripts tools)
vmlinux-deps := $(KBUILD_LDS) $(KBUILD_VMLINUX_INIT) $(KBUILD_VMLINUX_MAIN) $(KBUILD_VMLINUX_LIBS) vmlinux-deps := $(KBUILD_LDS) $(KBUILD_VMLINUX_INIT) $(KBUILD_VMLINUX_MAIN) $(KBUILD_VMLINUX_LIBS)
@@ -1184,6 +1184,7 @@ PHONY += kselftest
kselftest: kselftest:
$(Q)$(MAKE) -C tools/testing/selftests run_tests $(Q)$(MAKE) -C tools/testing/selftests run_tests
PHONY += kselftest-clean
kselftest-clean: kselftest-clean:
$(Q)$(MAKE) -C tools/testing/selftests clean $(Q)$(MAKE) -C tools/testing/selftests clean
+1
View File
@@ -299,6 +299,7 @@ static inline void __iomem * ioremap_nocache(unsigned long offset,
return ioremap(offset, size); return ioremap(offset, size);
} }
#define ioremap_wc ioremap_nocache
#define ioremap_uc ioremap_nocache #define ioremap_uc ioremap_nocache
static inline void iounmap(volatile void __iomem *addr) static inline void iounmap(volatile void __iomem *addr)
+1 -1
View File
@@ -1,6 +1,6 @@
#ifndef _ALPHA_TYPES_H #ifndef _ALPHA_TYPES_H
#define _ALPHA_TYPES_H #define _ALPHA_TYPES_H
#include <asm-generic/int-ll64.h> #include <uapi/asm/types.h>
#endif /* _ALPHA_TYPES_H */ #endif /* _ALPHA_TYPES_H */
+1 -1
View File
@@ -3,7 +3,7 @@
#include <uapi/asm/unistd.h> #include <uapi/asm/unistd.h>
#define NR_SYSCALLS 514 #define NR_SYSCALLS 523
#define __ARCH_WANT_OLD_READDIR #define __ARCH_WANT_OLD_READDIR
#define __ARCH_WANT_STAT64 #define __ARCH_WANT_STAT64
+11 -1
View File
@@ -9,8 +9,18 @@
* need to be careful to avoid a name clashes. * need to be careful to avoid a name clashes.
*/ */
#ifndef __KERNEL__ /*
* This is here because we used to use l64 for alpha
* and we don't want to impact user mode with our change to ll64
* in the kernel.
*
* However, some user programs are fine with this. They can
* flag __SANE_USERSPACE_TYPES__ to get int-ll64.h here.
*/
#if !defined(__SANE_USERSPACE_TYPES__) && !defined(__KERNEL__)
#include <asm-generic/int-l64.h> #include <asm-generic/int-l64.h>
#else
#include <asm-generic/int-ll64.h>
#endif #endif
#endif /* _UAPI_ALPHA_TYPES_H */ #endif /* _UAPI_ALPHA_TYPES_H */
+14
View File
@@ -475,5 +475,19 @@
#define __NR_getrandom 511 #define __NR_getrandom 511
#define __NR_memfd_create 512 #define __NR_memfd_create 512
#define __NR_execveat 513 #define __NR_execveat 513
#define __NR_seccomp 514
#define __NR_bpf 515
#define __NR_userfaultfd 516
#define __NR_membarrier 517
#define __NR_mlock2 518
#define __NR_copy_file_range 519
#define __NR_preadv2 520
#define __NR_pwritev2 521
#define __NR_statx 522
/* Alpha doesn't have protection keys. */
#define __IGNORE_pkey_mprotect
#define __IGNORE_pkey_alloc
#define __IGNORE_pkey_free
#endif /* _UAPI_ALPHA_UNISTD_H */ #endif /* _UAPI_ALPHA_UNISTD_H */
+4 -2
View File
@@ -351,7 +351,7 @@ marvel_init_io7(struct io7 *io7)
} }
} }
void void __init
marvel_io7_present(gct6_node *node) marvel_io7_present(gct6_node *node)
{ {
int pe; int pe;
@@ -369,6 +369,7 @@ marvel_io7_present(gct6_node *node)
static void __init static void __init
marvel_find_console_vga_hose(void) marvel_find_console_vga_hose(void)
{ {
#ifdef CONFIG_VGA_HOSE
u64 *pu64 = (u64 *)((u64)hwrpb + hwrpb->ctbt_offset); u64 *pu64 = (u64 *)((u64)hwrpb + hwrpb->ctbt_offset);
if (pu64[7] == 3) { /* TERM_TYPE == graphics */ if (pu64[7] == 3) { /* TERM_TYPE == graphics */
@@ -402,9 +403,10 @@ marvel_find_console_vga_hose(void)
pci_vga_hose = hose; pci_vga_hose = hose;
} }
} }
#endif
} }
gct6_search_struct gct_wanted_node_list[] = { gct6_search_struct gct_wanted_node_list[] __initdata = {
{ GCT_TYPE_HOSE, GCT_SUBTYPE_IO_PORT_MODULE, marvel_io7_present }, { GCT_TYPE_HOSE, GCT_SUBTYPE_IO_PORT_MODULE, marvel_io7_present },
{ 0, 0, NULL } { 0, 0, NULL }
}; };
+2
View File
@@ -461,6 +461,7 @@ titan_ioremap(unsigned long addr, unsigned long size)
unsigned long *ptes; unsigned long *ptes;
unsigned long pfn; unsigned long pfn;
#ifdef CONFIG_VGA_HOSE
/* /*
* Adjust the address and hose, if necessary. * Adjust the address and hose, if necessary.
*/ */
@@ -468,6 +469,7 @@ titan_ioremap(unsigned long addr, unsigned long size)
h = pci_vga_hose->index; h = pci_vga_hose->index;
addr += pci_vga_hose->mem_space->start; addr += pci_vga_hose->mem_space->start;
} }
#endif
/* /*
* Find the hose. * Find the hose.
+3
View File
@@ -181,6 +181,9 @@ apply_relocate_add(Elf64_Shdr *sechdrs, const char *strtab,
switch (r_type) { switch (r_type) {
case R_ALPHA_NONE: case R_ALPHA_NONE:
break; break;
case R_ALPHA_REFLONG:
*(u32 *)location = value;
break;
case R_ALPHA_REFQUAD: case R_ALPHA_REFQUAD:
/* BUG() can produce misaligned relocations. */ /* BUG() can produce misaligned relocations. */
((u32 *)location)[0] = value; ((u32 *)location)[0] = value;
+1 -1
View File
@@ -115,7 +115,7 @@ wait_boot_cpu_to_stop(int cpuid)
/* /*
* Where secondaries begin a life of C. * Where secondaries begin a life of C.
*/ */
void void __init
smp_callin(void) smp_callin(void)
{ {
int cpuid = hard_smp_processor_id(); int cpuid = hard_smp_processor_id();
+9
View File
@@ -532,6 +532,15 @@ sys_call_table:
.quad sys_getrandom .quad sys_getrandom
.quad sys_memfd_create .quad sys_memfd_create
.quad sys_execveat .quad sys_execveat
.quad sys_seccomp
.quad sys_bpf /* 515 */
.quad sys_userfaultfd
.quad sys_membarrier
.quad sys_mlock2
.quad sys_copy_file_range
.quad sys_preadv2 /* 520 */
.quad sys_pwritev2
.quad sys_statx
.size sys_call_table, . - sys_call_table .size sys_call_table, . - sys_call_table
.type sys_call_table, @object .type sys_call_table, @object
+16 -6
View File
@@ -20,12 +20,8 @@ lib-y = __divqu.o __remqu.o __divlu.o __remlu.o \
checksum.o \ checksum.o \
csum_partial_copy.o \ csum_partial_copy.o \
$(ev67-y)strlen.o \ $(ev67-y)strlen.o \
$(ev67-y)strcat.o \ stycpy.o \
strcpy.o \ styncpy.o \
$(ev67-y)strncat.o \
strncpy.o \
$(ev6-y)stxcpy.o \
$(ev6-y)stxncpy.o \
$(ev67-y)strchr.o \ $(ev67-y)strchr.o \
$(ev67-y)strrchr.o \ $(ev67-y)strrchr.o \
$(ev6-y)memchr.o \ $(ev6-y)memchr.o \
@@ -49,3 +45,17 @@ AFLAGS___remlu.o = -DREM -DINTSIZE
$(addprefix $(obj)/,__divqu.o __remqu.o __divlu.o __remlu.o): \ $(addprefix $(obj)/,__divqu.o __remqu.o __divlu.o __remlu.o): \
$(src)/$(ev6-y)divide.S FORCE $(src)/$(ev6-y)divide.S FORCE
$(call if_changed_rule,as_o_S) $(call if_changed_rule,as_o_S)
# There are direct branches between {str*cpy,str*cat} and stx*cpy.
# Ensure the branches are within range by merging these objects.
LDFLAGS_stycpy.o := -r
LDFLAGS_styncpy.o := -r
$(obj)/stycpy.o: $(obj)/strcpy.o $(obj)/$(ev67-y)strcat.o \
$(obj)/$(ev6-y)stxcpy.o FORCE
$(call if_changed,ld)
$(obj)/styncpy.o: $(obj)/strncpy.o $(obj)/$(ev67-y)strncat.o \
$(obj)/$(ev6-y)stxncpy.o FORCE
$(call if_changed,ld)
+1 -1
View File
@@ -34,7 +34,7 @@
.ent __copy_user .ent __copy_user
__copy_user: __copy_user:
.prologue 0 .prologue 0
and $18,$18,$0 mov $18,$0
and $16,7,$3 and $16,7,$3
beq $0,$35 beq $0,$35
beq $3,$36 beq $3,$36
+4 -3
View File
@@ -45,9 +45,10 @@
# Pipeline info: Slotting & Comments # Pipeline info: Slotting & Comments
__copy_user: __copy_user:
.prologue 0 .prologue 0
andq $18, $18, $0 mov $18, $0 # .. .. .. E
subq $18, 32, $1 # .. E .. .. : Is this going to be a small copy? subq $18, 32, $1 # .. .. E. .. : Is this going to be a small copy?
beq $0, $zerolength # U .. .. .. : U L U L nop # .. E .. ..
beq $18, $zerolength # U .. .. .. : U L U L
and $16,7,$3 # .. .. .. E : is leading dest misalignment and $16,7,$3 # .. .. .. E : is leading dest misalignment
ble $1, $onebyteloop # .. .. U .. : 1st branch : small amount of data ble $1, $onebyteloop # .. .. U .. : 1st branch : small amount of data
+8 -1
View File
@@ -75,12 +75,19 @@ void arc_init_IRQ(void)
* Set a default priority for all available interrupts to prevent * Set a default priority for all available interrupts to prevent
* switching of register banks if Fast IRQ and multiple register banks * switching of register banks if Fast IRQ and multiple register banks
* are supported by CPU. * are supported by CPU.
* Also disable all IRQ lines so faulty external hardware won't * Also disable private-per-core IRQ lines so faulty external HW won't
* trigger interrupt that kernel is not ready to handle. * trigger interrupt that kernel is not ready to handle.
*/ */
for (i = NR_EXCEPTIONS; i < irq_bcr.irqs + NR_EXCEPTIONS; i++) { for (i = NR_EXCEPTIONS; i < irq_bcr.irqs + NR_EXCEPTIONS; i++) {
write_aux_reg(AUX_IRQ_SELECT, i); write_aux_reg(AUX_IRQ_SELECT, i);
write_aux_reg(AUX_IRQ_PRIORITY, ARCV2_IRQ_DEF_PRIO); write_aux_reg(AUX_IRQ_PRIORITY, ARCV2_IRQ_DEF_PRIO);
/*
* Only mask cpu private IRQs here.
* "common" interrupts are masked at IDU, otherwise it would
* need to be unmasked at each cpu, with IPIs
*/
if (i < FIRST_EXT_IRQ)
write_aux_reg(AUX_IRQ_ENABLE, 0); write_aux_reg(AUX_IRQ_ENABLE, 0);
} }
+1 -1
View File
@@ -27,7 +27,7 @@
*/ */
void arc_init_IRQ(void) void arc_init_IRQ(void)
{ {
int level_mask = 0, i; unsigned int level_mask = 0, i;
/* Is timer high priority Interrupt (Level2 in ARCompact jargon) */ /* Is timer high priority Interrupt (Level2 in ARCompact jargon) */
level_mask |= IS_ENABLED(CONFIG_ARC_COMPACT_IRQ_LEVELS) << TIMER0_IRQ; level_mask |= IS_ENABLED(CONFIG_ARC_COMPACT_IRQ_LEVELS) << TIMER0_IRQ;
@@ -266,6 +266,7 @@
&hdmicec { &hdmicec {
status = "okay"; status = "okay";
needs-hpd;
}; };
&hsi2c_4 { &hsi2c_4 {
-6
View File
@@ -225,12 +225,6 @@ int kvm_arm_copy_reg_indices(struct kvm_vcpu *vcpu, u64 __user *indices);
int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end); int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end);
int kvm_test_age_hva(struct kvm *kvm, unsigned long hva); int kvm_test_age_hva(struct kvm *kvm, unsigned long hva);
/* We do not have shadow page tables, hence the empty hooks */
static inline void kvm_arch_mmu_notifier_invalidate_page(struct kvm *kvm,
unsigned long address)
{
}
struct kvm_vcpu *kvm_arm_get_running_vcpu(void); struct kvm_vcpu *kvm_arm_get_running_vcpu(void);
struct kvm_vcpu __percpu **kvm_get_running_vcpus(void); struct kvm_vcpu __percpu **kvm_get_running_vcpus(void);
void kvm_arm_halt_guest(struct kvm *kvm); void kvm_arm_halt_guest(struct kvm *kvm);
+1 -1
View File
@@ -1,7 +1,7 @@
menuconfig ARCH_AT91 menuconfig ARCH_AT91
bool "Atmel SoCs" bool "Atmel SoCs"
depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
select ARM_CPU_SUSPEND if PM select ARM_CPU_SUSPEND if PM && ARCH_MULTI_V7
select COMMON_CLK_AT91 select COMMON_CLK_AT91
select GPIOLIB select GPIOLIB
select PINCTRL select PINCTRL
+12
View File
@@ -608,6 +608,9 @@ static void __init at91_pm_init(void (*pm_idle)(void))
void __init at91rm9200_pm_init(void) void __init at91rm9200_pm_init(void)
{ {
if (!IS_ENABLED(CONFIG_SOC_AT91RM9200))
return;
at91_dt_ramc(); at91_dt_ramc();
/* /*
@@ -620,18 +623,27 @@ void __init at91rm9200_pm_init(void)
void __init at91sam9_pm_init(void) void __init at91sam9_pm_init(void)
{ {
if (!IS_ENABLED(CONFIG_SOC_AT91SAM9))
return;
at91_dt_ramc(); at91_dt_ramc();
at91_pm_init(at91sam9_idle); at91_pm_init(at91sam9_idle);
} }
void __init sama5_pm_init(void) void __init sama5_pm_init(void)
{ {
if (!IS_ENABLED(CONFIG_SOC_SAMA5))
return;
at91_dt_ramc(); at91_dt_ramc();
at91_pm_init(NULL); at91_pm_init(NULL);
} }
void __init sama5d2_pm_init(void) void __init sama5d2_pm_init(void)
{ {
if (!IS_ENABLED(CONFIG_SOC_SAMA5D2))
return;
at91_pm_backup_init(); at91_pm_backup_init();
sama5_pm_init(); sama5_pm_init();
} }

Some files were not shown because too many files have changed in this diff Show More