Skip to content

Commit

Permalink
Merge remote-tracking branch 'torvalds/master' into perf/core
Browse files Browse the repository at this point in the history
To pick up fixes.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
  • Loading branch information
Arnaldo Carvalho de Melo committed Apr 26, 2021
2 parents 464c62f + 9f4ad9e commit 26bda3c
Showing 197 changed files with 1,311 additions and 929 deletions.
15 changes: 0 additions & 15 deletions Documentation/networking/ip-sysctl.rst
Original file line number Diff line number Diff line change
@@ -1849,21 +1849,6 @@ ip6frag_low_thresh - INTEGER
ip6frag_time - INTEGER
Time in seconds to keep an IPv6 fragment in memory.

IPv6 Segment Routing:

seg6_flowlabel - INTEGER
Controls the behaviour of computing the flowlabel of outer
IPv6 header in case of SR T.encaps

== =======================================================
-1 set flowlabel to zero.
0 copy flowlabel from Inner packet in case of Inner IPv6
(Set flowlabel to 0 in case IPv4/L2)
1 Compute the flowlabel using seg6_make_flowlabel()
== =======================================================

Default is 0.

``conf/default/*``:
Change the interface-specific default settings.

13 changes: 13 additions & 0 deletions Documentation/networking/seg6-sysctl.rst
Original file line number Diff line number Diff line change
@@ -24,3 +24,16 @@ seg6_require_hmac - INTEGER
* 1 - Drop SR packets without HMAC, validate SR packets with HMAC

Default is 0.

seg6_flowlabel - INTEGER
Controls the behaviour of computing the flowlabel of outer
IPv6 header in case of SR T.encaps

== =======================================================
-1 set flowlabel to zero.
0 copy flowlabel from Inner packet in case of Inner IPv6
(Set flowlabel to 0 in case IPv4/L2)
1 Compute the flowlabel using seg6_make_flowlabel()
== =======================================================

Default is 0.
6 changes: 4 additions & 2 deletions MAINTAINERS
Original file line number Diff line number Diff line change
@@ -1576,11 +1576,13 @@ R: Jernej Skrabec <jernej.skrabec@siol.net>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git
L: linux-sunxi@lists.linux.dev
F: arch/arm/mach-sunxi/
F: arch/arm64/boot/dts/allwinner/
F: drivers/clk/sunxi-ng/
F: drivers/pinctrl/sunxi/
F: drivers/soc/sunxi/
N: allwinner
N: sun[x456789]i
N: sun50i

@@ -7096,7 +7098,7 @@ S: Maintained
F: drivers/i2c/busses/i2c-cpm.c

FREESCALE IMX / MXC FEC DRIVER
M: Fugang Duan <fugang.duan@nxp.com>
M: Joakim Zhang <qiangqing.zhang@nxp.com>
L: netdev@vger.kernel.org
S: Maintained
F: Documentation/devicetree/bindings/net/fsl-fec.txt
@@ -8524,9 +8526,9 @@ F: drivers/pci/hotplug/rpaphp*

IBM Power SRIOV Virtual NIC Device Driver
M: Dany Madden <drt@linux.ibm.com>
M: Lijun Pan <ljp@linux.ibm.com>
M: Sukadev Bhattiprolu <sukadev@linux.ibm.com>
R: Thomas Falcon <tlfalcon@linux.ibm.com>
R: Lijun Pan <lijunp213@gmail.com>
L: netdev@vger.kernel.org
S: Supported
F: drivers/net/ethernet/ibm/ibmvnic.*
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@
VERSION = 5
PATCHLEVEL = 12
SUBLEVEL = 0
EXTRAVERSION = -rc7
EXTRAVERSION =
NAME = Frozen Wasteland

# *DOCUMENTATION*
8 changes: 7 additions & 1 deletion arch/arm/Kconfig
Original file line number Diff line number Diff line change
@@ -1293,9 +1293,15 @@ config KASAN_SHADOW_OFFSET

config NR_CPUS
int "Maximum number of CPUs (2-32)"
range 2 32
range 2 16 if DEBUG_KMAP_LOCAL
range 2 32 if !DEBUG_KMAP_LOCAL
depends on SMP
default "4"
help
The maximum number of CPUs that the kernel can support.
Up to 32 CPUs can be supported, or up to 16 if kmap_local()
debugging is enabled, which uses half of the per-CPU fixmap
slots as guard regions.

config HOTPLUG_CPU
bool "Support for hot-pluggable CPUs"
3 changes: 3 additions & 0 deletions arch/arm/boot/dts/omap3.dtsi
Original file line number Diff line number Diff line change
@@ -24,6 +24,9 @@
i2c0 = &i2c1;
i2c1 = &i2c2;
i2c2 = &i2c3;
mmc0 = &mmc1;
mmc1 = &mmc2;
mmc2 = &mmc3;
serial0 = &uart1;
serial1 = &uart2;
serial2 = &uart3;
4 changes: 2 additions & 2 deletions arch/arm/mach-footbridge/cats-pci.c
Original file line number Diff line number Diff line change
@@ -15,14 +15,14 @@
#include <asm/mach-types.h>

/* cats host-specific stuff */
static int irqmap_cats[] __initdata = { IRQ_PCI, IRQ_IN0, IRQ_IN1, IRQ_IN3 };
static int irqmap_cats[] = { IRQ_PCI, IRQ_IN0, IRQ_IN1, IRQ_IN3 };

static u8 cats_no_swizzle(struct pci_dev *dev, u8 *pin)
{
return 0;
}

static int __init cats_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
static int cats_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
if (dev->irq >= 255)
return -1; /* not a valid interrupt. */
4 changes: 2 additions & 2 deletions arch/arm/mach-footbridge/ebsa285-pci.c
Original file line number Diff line number Diff line change
@@ -14,9 +14,9 @@
#include <asm/mach/pci.h>
#include <asm/mach-types.h>

static int irqmap_ebsa285[] __initdata = { IRQ_IN3, IRQ_IN1, IRQ_IN0, IRQ_PCI };
static int irqmap_ebsa285[] = { IRQ_IN3, IRQ_IN1, IRQ_IN0, IRQ_PCI };

static int __init ebsa285_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
static int ebsa285_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
if (dev->vendor == PCI_VENDOR_ID_CONTAQ &&
dev->device == PCI_DEVICE_ID_CONTAQ_82C693)
2 changes: 1 addition & 1 deletion arch/arm/mach-footbridge/netwinder-pci.c
Original file line number Diff line number Diff line change
@@ -18,7 +18,7 @@
* We now use the slot ID instead of the device identifiers to select
* which interrupt is routed where.
*/
static int __init netwinder_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
static int netwinder_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
switch (slot) {
case 0: /* host bridge */
5 changes: 2 additions & 3 deletions arch/arm/mach-footbridge/personal-pci.c
Original file line number Diff line number Diff line change
@@ -14,13 +14,12 @@
#include <asm/mach/pci.h>
#include <asm/mach-types.h>

static int irqmap_personal_server[] __initdata = {
static int irqmap_personal_server[] = {
IRQ_IN0, IRQ_IN1, IRQ_IN2, IRQ_IN3, 0, 0, 0,
IRQ_DOORBELLHOST, IRQ_DMA1, IRQ_DMA2, IRQ_PCI
};

static int __init personal_server_map_irq(const struct pci_dev *dev, u8 slot,
u8 pin)
static int personal_server_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
unsigned char line;

2 changes: 1 addition & 1 deletion arch/arm/mach-omap2/board-generic.c
Original file line number Diff line number Diff line change
@@ -33,7 +33,7 @@ static void __init __maybe_unused omap_generic_init(void)
}

/* Clocks are needed early, see drivers/clocksource for the rest */
void __init __maybe_unused omap_init_time_of(void)
static void __init __maybe_unused omap_init_time_of(void)
{
omap_clk_init();
timer_probe();
2 changes: 1 addition & 1 deletion arch/arm/mach-omap2/sr_device.c
Original file line number Diff line number Diff line change
@@ -188,7 +188,7 @@ static const char * const dra7_sr_instances[] = {

int __init omap_devinit_smartreflex(void)
{
const char * const *sr_inst;
const char * const *sr_inst = NULL;
int i, nr_sr = 0;

if (soc_is_omap44xx()) {
3 changes: 1 addition & 2 deletions arch/arm/mm/mmu.c
Original file line number Diff line number Diff line change
@@ -387,8 +387,7 @@ void __set_fixmap(enum fixed_addresses idx, phys_addr_t phys, pgprot_t prot)
pte_t *pte = pte_offset_fixmap(pmd_off_k(vaddr), vaddr);

/* Make sure fixmap region does not exceed available allocation. */
BUILD_BUG_ON(FIXADDR_START + (__end_of_fixed_addresses * PAGE_SIZE) >
FIXADDR_END);
BUILD_BUG_ON(__fix_to_virt(__end_of_fixed_addresses) < FIXADDR_START);
BUG_ON(idx >= __end_of_fixed_addresses);

/* we only support device mappings until pgprot_kernel has been set */
4 changes: 3 additions & 1 deletion arch/arm/mm/pmsa-v7.c
Original file line number Diff line number Diff line change
@@ -235,6 +235,7 @@ void __init pmsav7_adjust_lowmem_bounds(void)
phys_addr_t mem_end;
phys_addr_t reg_start, reg_end;
unsigned int mem_max_regions;
bool first = true;
int num;
u64 i;

@@ -263,7 +264,7 @@ void __init pmsav7_adjust_lowmem_bounds(void)
#endif

for_each_mem_range(i, &reg_start, &reg_end) {
if (i == 0) {
if (first) {
phys_addr_t phys_offset = PHYS_OFFSET;

/*
@@ -275,6 +276,7 @@ void __init pmsav7_adjust_lowmem_bounds(void)
mem_start = reg_start;
mem_end = reg_end;
specified_mem_size = mem_end - mem_start;
first = false;
} else {
/*
* memblock auto merges contiguous blocks, remove
4 changes: 3 additions & 1 deletion arch/arm/mm/pmsa-v8.c
Original file line number Diff line number Diff line change
@@ -95,10 +95,11 @@ void __init pmsav8_adjust_lowmem_bounds(void)
{
phys_addr_t mem_end;
phys_addr_t reg_start, reg_end;
bool first = true;
u64 i;

for_each_mem_range(i, &reg_start, &reg_end) {
if (i == 0) {
if (first) {
phys_addr_t phys_offset = PHYS_OFFSET;

/*
@@ -107,6 +108,7 @@ void __init pmsav8_adjust_lowmem_bounds(void)
if (reg_start != phys_offset)
panic("First memory bank must be contiguous from PHYS_OFFSET");
mem_end = reg_end;
first = false;
} else {
/*
* memblock auto merges contiguous blocks, remove
4 changes: 2 additions & 2 deletions arch/arm/probes/uprobes/core.c
Original file line number Diff line number Diff line change
@@ -204,15 +204,15 @@ unsigned long uprobe_get_swbp_addr(struct pt_regs *regs)
static struct undef_hook uprobes_arm_break_hook = {
.instr_mask = 0x0fffffff,
.instr_val = (UPROBE_SWBP_ARM_INSN & 0x0fffffff),
.cpsr_mask = MODE_MASK,
.cpsr_mask = (PSR_T_BIT | MODE_MASK),
.cpsr_val = USR_MODE,
.fn = uprobe_trap_handler,
};

static struct undef_hook uprobes_arm_ss_hook = {
.instr_mask = 0x0fffffff,
.instr_val = (UPROBE_SS_ARM_INSN & 0x0fffffff),
.cpsr_mask = MODE_MASK,
.cpsr_mask = (PSR_T_BIT | MODE_MASK),
.cpsr_val = USR_MODE,
.fn = uprobe_trap_handler,
};
6 changes: 5 additions & 1 deletion arch/arm64/Kconfig
Original file line number Diff line number Diff line change
@@ -1406,10 +1406,13 @@ config ARM64_PAN
config AS_HAS_LDAPR
def_bool $(as-instr,.arch_extension rcpc)

config AS_HAS_LSE_ATOMICS
def_bool $(as-instr,.arch_extension lse)

config ARM64_LSE_ATOMICS
bool
default ARM64_USE_LSE_ATOMICS
depends on $(as-instr,.arch_extension lse)
depends on AS_HAS_LSE_ATOMICS

config ARM64_USE_LSE_ATOMICS
bool "Atomic instructions"
@@ -1666,6 +1669,7 @@ config ARM64_MTE
default y
depends on ARM64_AS_HAS_MTE && ARM64_TAGGED_ADDR_ABI
depends on AS_HAS_ARMV8_5
depends on AS_HAS_LSE_ATOMICS
# Required for tag checking in the uaccess routines
depends on ARM64_PAN
select ARCH_USES_HIGH_VMA_FLAGS
4 changes: 4 additions & 0 deletions arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-lts.dts
Original file line number Diff line number Diff line change
@@ -19,3 +19,7 @@
};
};
};

&mmc0 {
broken-cd; /* card detect is broken on *some* boards */
};
2 changes: 1 addition & 1 deletion arch/arm64/boot/dts/allwinner/sun50i-a64-sopine.dtsi
Original file line number Diff line number Diff line change
@@ -34,7 +34,7 @@
vmmc-supply = <&reg_dcdc1>;
disable-wp;
bus-width = <4>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 push-pull switch */
status = "okay";
};

4 changes: 0 additions & 4 deletions arch/arm64/boot/dts/allwinner/sun50i-h6-beelink-gs1.dts
Original file line number Diff line number Diff line change
@@ -289,10 +289,6 @@
vcc-pm-supply = <&reg_aldo1>;
};

&rtc {
clocks = <&ext_osc32k>;
};

&spdif {
status = "okay";
};
4 changes: 2 additions & 2 deletions arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
Original file line number Diff line number Diff line change
@@ -995,9 +995,9 @@
compatible = "allwinner,sun8i-a23-rsb";
reg = <0x07083000 0x400>;
interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&r_ccu 13>;
clocks = <&r_ccu CLK_R_APB2_RSB>;
clock-frequency = <3000000>;
resets = <&r_ccu 7>;
resets = <&r_ccu RST_R_APB2_RSB>;
pinctrl-names = "default";
pinctrl-0 = <&r_rsb_pins>;
status = "disabled";
2 changes: 1 addition & 1 deletion arch/arm64/boot/dts/nvidia/tegra186-p2771-0000.dts
Original file line number Diff line number Diff line change
@@ -10,7 +10,7 @@
model = "NVIDIA Jetson TX2 Developer Kit";
compatible = "nvidia,p2771-0000", "nvidia,tegra186";

aconnect {
aconnect@2900000 {
status = "okay";

dma-controller@2930000 {
2 changes: 1 addition & 1 deletion arch/arm64/boot/dts/nvidia/tegra186-p3310.dtsi
Original file line number Diff line number Diff line change
@@ -23,7 +23,7 @@
};

chosen {
bootargs = "earlycon console=ttyS0,115200n8";
bootargs = "earlycon console=ttyS0,115200n8 fw_devlink=on";
stdout-path = "serial0:115200n8";
};

2 changes: 1 addition & 1 deletion arch/arm64/boot/dts/nvidia/tegra186.dtsi
Original file line number Diff line number Diff line change
@@ -73,7 +73,7 @@
snps,rxpbl = <8>;
};

aconnect {
aconnect@2900000 {
compatible = "nvidia,tegra186-aconnect",
"nvidia,tegra210-aconnect";
clocks = <&bpmp TEGRA186_CLK_APE>,
3 changes: 2 additions & 1 deletion arch/arm64/boot/dts/nvidia/tegra194-p2972-0000.dts
Original file line number Diff line number Diff line change
@@ -651,14 +651,15 @@
reg = <0x1a>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA194_MAIN_GPIO(S, 5) GPIO_ACTIVE_HIGH>;
clocks = <&bpmp TEGRA194_CLK_AUD_MCLK>;
clock-names = "mclk";
realtek,jd-src = <2>;
sound-name-prefix = "CVB-RT";

port {
rt5658_ep: endpoint {
remote-endpoint = <&i2s1_dap_ep>;
mclk-fs = <256>;
clocks = <&bpmp TEGRA194_CLK_AUD_MCLK>;
};
};
};
4 changes: 4 additions & 0 deletions arch/arm64/boot/dts/nvidia/tegra194-p3668-0000.dtsi
Original file line number Diff line number Diff line change
@@ -5,6 +5,10 @@
model = "NVIDIA Jetson Xavier NX (SD-card)";
compatible = "nvidia,p3668-0000", "nvidia,tegra194";

aliases {
mmc0 = "/bus@0/mmc@3400000";
};

bus@0 {
/* SDMMC1 (SD/MMC) */
mmc@3400000 {
4 changes: 4 additions & 0 deletions arch/arm64/boot/dts/nvidia/tegra194-p3668-0001.dtsi
Original file line number Diff line number Diff line change
@@ -5,6 +5,10 @@
model = "NVIDIA Jetson Xavier NX (eMMC)";
compatible = "nvidia,p3668-0001", "nvidia,tegra194";

aliases {
mmc0 = "/bus@0/mmc@3460000";
};

bus@0 {
/* SDMMC4 (eMMC) */
mmc@3460000 {
1 change: 0 additions & 1 deletion arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi
Original file line number Diff line number Diff line change
@@ -14,7 +14,6 @@
i2c5 = "/bus@0/i2c@31c0000";
i2c6 = "/bus@0/i2c@c250000";
i2c7 = "/bus@0/i2c@31e0000";
mmc0 = "/bus@0/mmc@3460000";
rtc0 = "/bpmp/i2c/pmic@3c";
rtc1 = "/bus@0/rtc@c2a0000";
serial0 = &tcu;
Loading

0 comments on commit 26bda3c

Please sign in to comment.