Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update 5.4-1.0.0-imx to v5.4.47 from stable #86

Merged
merged 133 commits into from
Jun 19, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
133 commits
Select commit Hold shift + click to select a range
f560ea6
ipv6: fix IPV6_ADDRFORM operation logic
liuhangbin Jun 1, 2020
5ab453b
mlxsw: core: Use different get_trend() callbacks for different therma…
mellanoxbmc Jun 7, 2020
c8e374e
net_failover: fixed rollback in net_failover_open()
vaverin Jun 2, 2020
747d5bc
tun: correct header offsets in napi frags mode
wdebruij May 30, 2020
de9d101
bridge: Avoid infinite loop when suppressing NS messages with invalid…
idosch Jun 1, 2020
3a577e6
vxlan: Avoid infinite loop when suppressing NS messages with invalid …
idosch Jun 1, 2020
f04d1e8
bpf: Support llvm-objcopy for vmlinux BTF
MaskRay Mar 18, 2020
b4aa6da
elfnote: mark all .note sections SHF_ALLOC
nickdesaulniers Jun 4, 2020
bafaf47
Input: mms114 - fix handling of mms345l
stephan-gh Apr 9, 2020
1a28b20
ARM: 8977/1: ptrace: Fix mask for thumb breakpoint hook
frestr May 18, 2020
53fed23
sched/fair: Don't NUMA balance for kthreads
axboe May 26, 2020
16d9028
Input: synaptics - add a second working PNP_ID for Lenovo T470s
May 27, 2020
1086810
csky: Fixup abiv2 syscall_trace break a4 & a5
guoren83 May 24, 2020
f8713c2
gfs2: Even more gfs2_find_jhead fixes
May 26, 2020
282acc1
drivers/net/ibmvnic: Update VNIC protocol version reporting
tlfalcon May 28, 2020
eb63150
powerpc/xive: Clear the page tables for the ESB IO mapping
legoater Apr 29, 2020
b06bbbc
spi: dw: Fix native CS being unset
Jun 12, 2020
3242fa0
ath9k_htc: Silence undersized packet warnings
masap May 4, 2020
3f14df5
smack: avoid unused 'sip' variable warning
arndb Apr 8, 2020
f23be4d
RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated
jgunthorpe Apr 7, 2020
77db4e1
padata: add separate cpuhp node for CPUHP_PADATA_DEAD
danieljordan10 Apr 21, 2020
86c7d24
s390/pci: Log new handle in clp_disable_fh()
ptesarik May 22, 2020
79e3781
x86/cpu/amd: Make erratum #1054 a legacy erratum
kimphillamd Apr 17, 2020
ba95f95
KVM: x86: only do L1TF workaround on affected processors
bonzini May 19, 2020
a3e6ba3
PCI/PM: Adjust pcie_wait_for_link_delay() for caller delay
bjorn-helgaas May 15, 2020
7c41d8c
perf probe: Accept the instance number of kretprobe event
mhiramat May 6, 2020
0b11ec4
mm: add kvfree_sensitive() for freeing sensitive data objects
Waiman-Long Jun 4, 2020
515e02b
selftests: fix flower parent qdisc
w1ldptr May 14, 2020
f27ad51
fanotify: fix ignore mask logic for events on child and on dir
amir73il May 24, 2020
7328f9a
aio: fix async fsync creds
May 14, 2020
0315cfc
ipv4: fix a RCU-list lock in fib_triestat_seq_show
Mar 25, 2020
f1bb90b
iwlwifi: mvm: fix NVM check for 3168 devices
lucacoelho Nov 25, 2019
067ef17
sctp: fix possibly using a bad saddr with a given dst
marceloleitner Mar 26, 2020
7ae5360
sctp: fix refcount bug in sctp_wfree
Mar 27, 2020
e8652fe
x86_64: Fix jiffies ODR violation
inglorion Jun 2, 2020
41551b5
x86/PCI: Mark Intel C620 MROMs as having non-compliant BARs
xiaochunlee May 15, 2020
9d1dcba
x86/speculation: Prevent rogue cross-process SSBD shutdown
asteinha Jan 5, 2020
6d60d54
x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanc…
asteinha May 19, 2020
e154584
x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branc…
asteinha Jun 7, 2020
57a537b
x86/reboot/quirks: Add MacBook6,1 reboot quirk
mahiuchun Apr 25, 2020
d872f17
perf/x86/intel: Add more available bits for OFFCORE_RESPONSE of Intel…
May 1, 2020
af71811
KVM: x86/mmu: Set mmio_value to '0' if reserved #PF can't be generated
May 27, 2020
a2b0ce3
KVM: x86: respect singlestep when emulating instruction
franciozzy May 19, 2020
cb810f7
KVM: x86: Fix APIC page invalidation race
Etsukata Jun 6, 2020
ac0175f
powerpc/ptdump: Properly handle non standard page size
chleroy May 19, 2020
d4a13e6
ASoC: max9867: fix volume controls
dobiasp May 15, 2020
ab2df99
io_uring: use kvfree() in io_sqe_buffer_register()
evdenis Jun 5, 2020
e1437d1
efi/efivars: Add missing kobject_put() in sysfs entry creation error …
ardbiesheuvel May 22, 2020
0470d6c
smb3: fix incorrect number of credits when ioctl MaxOutputResponse > 64K
Jun 3, 2020
3003daa
smb3: add indatalen that can be a non-zero value to calculation of cr…
namjaejeon Jun 11, 2020
f7d57ba
watchdog: imx_sc_wdt: Fix reboot on crash
fabioestevam Apr 12, 2020
110d04a
ALSA: es1688: Add the missed snd_card_free()
WillLester Jun 3, 2020
13c1835
ALSA: fireface: fix configuration error for nominal sampling transfer…
takaswie May 10, 2020
1900bf5
ALSA: hda/realtek - add a pintbl quirk for several Lenovo machines
jason77-wang Jun 8, 2020
4f643b8
ALSA: pcm: disallow linking stream to itself
osctobe Jun 8, 2020
1f5ab51
ALSA: pcm: fix snd_pcm_link() lockdep splat
osctobe Jun 8, 2020
969c9b5
ALSA: usb-audio: Fix inconsistent card PM state after resume
tiwai Jun 3, 2020
10a8c04
ALSA: usb-audio: Add vendor, product and profile name for HP Thunderb…
khfeng Jun 8, 2020
e4cc99e
ACPI: sysfs: Fix reference count leak in acpi_sysfs_add_hotplug_profi…
QiushiWu May 27, 2020
040b4dc
ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe()
QiushiWu May 27, 2020
75d6d0a
ACPI: GED: add support for _Exx / _Lxx handler methods
ardbiesheuvel May 15, 2020
2868223
ACPI: PM: Avoid using power resources if there are none for D0
rafaeljw Jun 4, 2020
07ffdf0
arm64: acpi: fix UBSAN warning
nickdesaulniers Jun 8, 2020
d4904b3
lib/lzo: fix ambiguous encoding bug in lzo-rle
daverodgman Jun 12, 2020
ffe5ebd
nilfs2: fix null pointer dereference at nilfs_segctor_do_construct()
konis Jun 11, 2020
7753886
spi: dw: Fix controller unregister order
l1k May 25, 2020
824a4e3
spi: Fix controller unregister order
l1k May 15, 2020
1aec7b2
spi: pxa2xx: Fix controller unregister order
l1k May 25, 2020
73d9bae
spi: pxa2xx: Fix runtime PM ref imbalance on probe error
l1k May 25, 2020
496a5e5
spi: bcm2835: Fix controller unregister order
l1k May 15, 2020
3bb1e6e
spi: bcm2835aux: Fix controller unregister order
l1k May 15, 2020
0cd1833
spi: bcm-qspi: Handle clock probe deferral
ffainelli Apr 20, 2020
fc45cd2
spi: bcm-qspi: when tx/rx buffer is NULL set to 0
Ryceancurry Apr 20, 2020
6ed1198
PM: runtime: clk: Fix clk_pm_runtime_get() error path
rafaeljw May 21, 2020
1027dc0
gup: document and work around "COW can break either way" issue
torvalds May 28, 2020
4a87772
crypto: cavium/nitrox - Fix 'nitrox_get_first_device()' when ndevlist…
tititiou36 May 30, 2020
6ebdf34
crypto: algapi - Avoid spurious modprobe on LOADED
ebiggers Apr 7, 2020
977b89e
crypto: drbg - fix error return code in drbg_alloc_state()
Apr 30, 2020
9a20d6c
x86/{mce,mm}: Unmap the entire page if the whole page is affected and…
aegl May 20, 2020
da24a76
firmware: imx: warn on unexpected RX
cdleonard Sep 4, 2019
a1fd068
firmware: imx-scu: Support one TX and one RX
MrVan Mar 19, 2020
0070e73
firmware: imx: scu: Fix corruption of header
lenormandfranck Mar 25, 2020
2ef260d
crypto: virtio: Fix use-after-free in virtio_crypto_skcipher_finalize…
Jun 2, 2020
af03d59
crypto: virtio: Fix src/dst scatterlist calculation in __virtio_crypt…
Jun 2, 2020
5ab6f11
crypto: virtio: Fix dest length calculation in __virtio_crypto_skciph…
Jun 2, 2020
05e275d
dccp: Fix possible memleak in dccp_init and dccp_fini
Jun 9, 2020
57bad9e
selftests/net: in rxtimestamp getopt_long needs terminating null entry
tannerlove Jun 9, 2020
cd5d027
net/mlx5: drain health workqueue in case of driver load error
shayshd May 6, 2020
b05f2b6
net/mlx5: Fix fatal error handling during device load
shayshd May 7, 2020
5650ce0
net/mlx5e: Fix repeated XSK usage on one channel
Jun 1, 2020
98a3dea
ovl: initialize error in ovl_copy_xattr
yshui May 27, 2020
12b24ba
proc: Use new_inode not new_inode_pseudo
ebiederm Jun 12, 2020
81fb06c
remoteproc: Fall back to using parent memory pool if no dedicated ava…
Apr 20, 2020
943f3ae
remoteproc: Fix and restore the parenting hierarchy for vdev
sumananna Apr 20, 2020
cd266f8
cpufreq: Fix up cpufreq_boost_set_sw()
rafaeljw May 18, 2020
78e6964
EDAC/skx: Use the mcmtr register to retrieve close_pg/bank_xor_enable
qzhuo2 May 15, 2020
dc8897b
video: vt8500lcdfb: fix fallthrough warning
sravnborg Apr 12, 2020
d181dc3
video: fbdev: w100fb: Fix a potential double free.
tititiou36 May 6, 2020
64b8f33
KVM: nVMX: Skip IBPB when switching between vmcs01 and vmcs02
May 1, 2020
3c0bee0
KVM: nSVM: fix condition for filtering async PF
bonzini May 16, 2020
021cd99
KVM: nSVM: leave ASID aside in copy_vmcb_control_area
bonzini May 20, 2020
c6d2eb8
KVM: nVMX: Consult only the "basic" exit reason when routing nested exit
Feb 27, 2020
94f4af1
KVM: MIPS: Define KVM_ENTRYHI_ASID to cpu_asid_mask(&boot_cpu_data)
lixing-star May 23, 2020
8c82383
KVM: MIPS: Fix VPN2_MASK definition for variable cpu_vmbits
lixing-star May 23, 2020
f9551b7
KVM: arm64: Stop writing aarch32's CSSELR into ACTLR
May 29, 2020
205b4c4
KVM: arm64: Make vcpu_cp1x() work on Big Endian hosts
Jun 9, 2020
387d51f
scsi: megaraid_sas: TM command refire leads to controller firmware crash
sumitsaxena11 May 8, 2020
221b26e
scsi: lpfc: Fix negation of else clause in lpfc_prep_node_fc4type
May 1, 2020
fe09572
selftests/ftrace: Return unsupported if no error_log file
mhiramat May 25, 2020
7f33634
ath9k: Fix use-after-free Read in htc_connect_service
Apr 4, 2020
3eb8029
ath9k: Fix use-after-free Read in ath9k_wmi_ctrl_rx
Apr 4, 2020
3412e94
ath9k: Fix use-after-free Write in ath9k_htc_rx_msg
Apr 4, 2020
db899f2
ath9x: Fix stack-out-of-bounds Write in ath9k_hif_usb_rx_cb
Apr 4, 2020
b5c8896
ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb
Apr 4, 2020
9c09a77
Smack: slab-out-of-bounds in vsscanf
cschaufler Apr 9, 2020
b21602a
drm/vkms: Hold gem object while still in-use
ezequielgarcia Apr 27, 2020
c49a17f
mm/slub: fix a memory leak in sysfs_slab_add()
Jun 3, 2020
e054427
fat: don't allow to mount if the FAT length == 0
OGAWAHirofumi Jun 4, 2020
e81b05e
perf: Add cond_resched() to task_function_call()
Apr 14, 2020
bfc12ff
agp/intel: Reinforce the barrier after GTT updates
ickle Apr 10, 2020
f5b13ef
mmc: sdhci-msm: Clear tuning done flag while hs400 tuning
May 28, 2020
e9614e0
mmc: mmci_sdmmc: fix DMA API warning overlapping mappings
ludovicbarre May 26, 2020
1ccf2d6
mmc: tmio: Further fixup runtime PM management at remove
storulf May 19, 2020
5a05406
mmc: uniphier-sd: call devm_request_irq() after tmio_mmc_host_probe()
masahir0y May 11, 2020
d3c4c5a
ARM: dts: at91: sama5d2_ptc_ek: fix sdmmc0 node description
ldesroches Apr 1, 2020
55d805a
mmc: sdio: Fix potential NULL pointer error in mmc_sdio_init_card()
storulf Apr 30, 2020
9ec34f4
mmc: sdio: Fix several potential memory leaks in mmc_sdio_init_card()
storulf Apr 30, 2020
29ed456
block/floppy: fix contended case in floppy_queue_rq()
May 26, 2020
8583198
xen/pvcalls-back: test for errors when calling backend_connect()
jgross1 May 11, 2020
8128576
KVM: arm64: Synchronize sysreg state on injecting an AArch32 exception
Jun 9, 2020
d96ef8f
KVM: arm64: Save the host's PtrAuth keys in non-preemptible context
Jun 3, 2020
fd8cd8a
Linux 5.4.47
gregkh Jun 17, 2020
a896a80
Merge tag 'v5.4.47' into 5.4-1.0.0-imx
zandrey Jun 18, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions Documentation/lzo.txt
Original file line number Diff line number Diff line change
Expand Up @@ -159,11 +159,15 @@ Byte sequences
distance = 16384 + (H << 14) + D
state = S (copy S literals after this block)
End of stream is reached if distance == 16384
In version 1 only, to prevent ambiguity with the RLE case when
((distance & 0x803f) == 0x803f) && (261 <= length <= 264), the
compressor must not emit block copies where distance and length
meet these conditions.

In version 1 only, this instruction is also used to encode a run of
zeros if distance = 0xbfff, i.e. H = 1 and the D bits are all 1.
zeros if distance = 0xbfff, i.e. H = 1 and the D bits are all 1.
In this case, it is followed by a fourth byte, X.
run length = ((X << 3) | (0 0 0 0 0 L L L)) + 4.
run length = ((X << 3) | (0 0 0 0 0 L L L)) + 4

0 0 1 L L L L L (32..63)
Copy of small block within 16kB distance (preferably less than 34B)
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0
VERSION = 5
PATCHLEVEL = 4
SUBLEVEL = 46
SUBLEVEL = 47
EXTRAVERSION =
NAME = Kleptomaniac Octopus

Expand Down
2 changes: 0 additions & 2 deletions arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts
Original file line number Diff line number Diff line change
Expand Up @@ -125,8 +125,6 @@
bus-width = <8>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc0_default>;
non-removable;
mmc-ddr-1_8v;
status = "okay";
};

Expand Down
3 changes: 2 additions & 1 deletion arch/arm/include/asm/kvm_emulate.h
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,7 @@ static inline unsigned long vcpu_data_host_to_guest(struct kvm_vcpu *vcpu,
}
}

static inline void vcpu_ptrauth_setup_lazy(struct kvm_vcpu *vcpu) {}
static inline bool vcpu_has_ptrauth(struct kvm_vcpu *vcpu) { return false; }
static inline void vcpu_ptrauth_disable(struct kvm_vcpu *vcpu) { }

#endif /* __ARM_KVM_EMULATE_H__ */
2 changes: 2 additions & 0 deletions arch/arm/include/asm/kvm_host.h
Original file line number Diff line number Diff line change
Expand Up @@ -421,4 +421,6 @@ static inline bool kvm_arm_vcpu_is_finalized(struct kvm_vcpu *vcpu)
return true;
}

#define kvm_arm_vcpu_loaded(vcpu) (false)

#endif /* __ARM_KVM_HOST_H__ */
4 changes: 2 additions & 2 deletions arch/arm/kernel/ptrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -219,8 +219,8 @@ static struct undef_hook arm_break_hook = {
};

static struct undef_hook thumb_break_hook = {
.instr_mask = 0xffff,
.instr_val = 0xde01,
.instr_mask = 0xffffffff,
.instr_val = 0x0000de01,
.cpsr_mask = PSR_T_BIT,
.cpsr_val = PSR_T_BIT,
.fn = break_trap,
Expand Down
5 changes: 3 additions & 2 deletions arch/arm64/include/asm/acpi.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#include <linux/efi.h>
#include <linux/memblock.h>
#include <linux/psci.h>
#include <linux/stddef.h>

#include <asm/cputype.h>
#include <asm/io.h>
Expand All @@ -31,14 +32,14 @@
* is therefore used to delimit the MADT GICC structure minimum length
* appropriately.
*/
#define ACPI_MADT_GICC_MIN_LENGTH ACPI_OFFSET( \
#define ACPI_MADT_GICC_MIN_LENGTH offsetof( \
struct acpi_madt_generic_interrupt, efficiency_class)

#define BAD_MADT_GICC_ENTRY(entry, end) \
(!(entry) || (entry)->header.length < ACPI_MADT_GICC_MIN_LENGTH || \
(unsigned long)(entry) + (entry)->header.length > (end))

#define ACPI_MADT_GICC_SPE (ACPI_OFFSET(struct acpi_madt_generic_interrupt, \
#define ACPI_MADT_GICC_SPE (offsetof(struct acpi_madt_generic_interrupt, \
spe_interrupt) + sizeof(u16))

/* Basic configuration for ACPI */
Expand Down
6 changes: 0 additions & 6 deletions arch/arm64/include/asm/kvm_emulate.h
Original file line number Diff line number Diff line change
Expand Up @@ -97,12 +97,6 @@ static inline void vcpu_ptrauth_disable(struct kvm_vcpu *vcpu)
vcpu->arch.hcr_el2 &= ~(HCR_API | HCR_APK);
}

static inline void vcpu_ptrauth_setup_lazy(struct kvm_vcpu *vcpu)
{
if (vcpu_has_ptrauth(vcpu))
vcpu_ptrauth_disable(vcpu);
}

static inline unsigned long vcpu_get_vsesr(struct kvm_vcpu *vcpu)
{
return vcpu->arch.vsesr_el2;
Expand Down
8 changes: 6 additions & 2 deletions arch/arm64/include/asm/kvm_host.h
Original file line number Diff line number Diff line change
Expand Up @@ -392,8 +392,10 @@ void vcpu_write_sys_reg(struct kvm_vcpu *vcpu, u64 val, int reg);
* CP14 and CP15 live in the same array, as they are backed by the
* same system registers.
*/
#define vcpu_cp14(v,r) ((v)->arch.ctxt.copro[(r)])
#define vcpu_cp15(v,r) ((v)->arch.ctxt.copro[(r)])
#define CPx_BIAS IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)

#define vcpu_cp14(v,r) ((v)->arch.ctxt.copro[(r) ^ CPx_BIAS])
#define vcpu_cp15(v,r) ((v)->arch.ctxt.copro[(r) ^ CPx_BIAS])

struct kvm_vm_stat {
ulong remote_tlb_flush;
Expand Down Expand Up @@ -677,4 +679,6 @@ bool kvm_arm_vcpu_is_finalized(struct kvm_vcpu *vcpu);
#define kvm_arm_vcpu_sve_finalized(vcpu) \
((vcpu)->arch.flags & KVM_ARM64_VCPU_SVE_FINALIZED)

#define kvm_arm_vcpu_loaded(vcpu) ((vcpu)->arch.sysregs_loaded_on_cpu)

#endif /* __ARM64_KVM_HOST_H__ */
19 changes: 2 additions & 17 deletions arch/arm64/kvm/handle_exit.c
Original file line number Diff line number Diff line change
Expand Up @@ -162,31 +162,16 @@ static int handle_sve(struct kvm_vcpu *vcpu, struct kvm_run *run)
return 1;
}

#define __ptrauth_save_key(regs, key) \
({ \
regs[key ## KEYLO_EL1] = read_sysreg_s(SYS_ ## key ## KEYLO_EL1); \
regs[key ## KEYHI_EL1] = read_sysreg_s(SYS_ ## key ## KEYHI_EL1); \
})

/*
* Handle the guest trying to use a ptrauth instruction, or trying to access a
* ptrauth register.
*/
void kvm_arm_vcpu_ptrauth_trap(struct kvm_vcpu *vcpu)
{
struct kvm_cpu_context *ctxt;

if (vcpu_has_ptrauth(vcpu)) {
if (vcpu_has_ptrauth(vcpu))
vcpu_ptrauth_enable(vcpu);
ctxt = vcpu->arch.host_cpu_context;
__ptrauth_save_key(ctxt->sys_regs, APIA);
__ptrauth_save_key(ctxt->sys_regs, APIB);
__ptrauth_save_key(ctxt->sys_regs, APDA);
__ptrauth_save_key(ctxt->sys_regs, APDB);
__ptrauth_save_key(ctxt->sys_regs, APGA);
} else {
else
kvm_inject_undefined(vcpu);
}
}

/*
Expand Down
10 changes: 8 additions & 2 deletions arch/arm64/kvm/sys_regs.c
Original file line number Diff line number Diff line change
Expand Up @@ -1280,10 +1280,16 @@ static bool access_clidr(struct kvm_vcpu *vcpu, struct sys_reg_params *p,
static bool access_csselr(struct kvm_vcpu *vcpu, struct sys_reg_params *p,
const struct sys_reg_desc *r)
{
int reg = r->reg;

/* See the 32bit mapping in kvm_host.h */
if (p->is_aarch32)
reg = r->reg / 2;

if (p->is_write)
vcpu_write_sys_reg(vcpu, p->regval, r->reg);
vcpu_write_sys_reg(vcpu, p->regval, reg);
else
p->regval = vcpu_read_sys_reg(vcpu, r->reg);
p->regval = vcpu_read_sys_reg(vcpu, reg);
return true;
}

Expand Down
2 changes: 2 additions & 0 deletions arch/csky/abiv2/inc/abi/entry.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
#define LSAVE_A1 28
#define LSAVE_A2 32
#define LSAVE_A3 36
#define LSAVE_A4 40
#define LSAVE_A5 44

#define KSPTOUSP
#define USPTOKSP
Expand Down
6 changes: 4 additions & 2 deletions arch/csky/kernel/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -170,8 +170,10 @@ csky_syscall_trace:
ldw a3, (sp, LSAVE_A3)
#if defined(__CSKYABIV2__)
subi sp, 8
stw r5, (sp, 0x4)
stw r4, (sp, 0x0)
ldw r9, (sp, LSAVE_A4)
stw r9, (sp, 0x0)
ldw r9, (sp, LSAVE_A5)
stw r9, (sp, 0x4)
#else
ldw r6, (sp, LSAVE_A4)
ldw r7, (sp, LSAVE_A5)
Expand Down
6 changes: 5 additions & 1 deletion arch/mips/include/asm/kvm_host.h
Original file line number Diff line number Diff line change
Expand Up @@ -274,8 +274,12 @@ enum emulation_result {
#define MIPS3_PG_SHIFT 6
#define MIPS3_PG_FRAME 0x3fffffc0

#if defined(CONFIG_64BIT)
#define VPN2_MASK GENMASK(cpu_vmbits - 1, 13)
#else
#define VPN2_MASK 0xffffe000
#define KVM_ENTRYHI_ASID MIPS_ENTRYHI_ASID
#endif
#define KVM_ENTRYHI_ASID cpu_asid_mask(&boot_cpu_data)
#define TLB_IS_GLOBAL(x) ((x).tlb_lo[0] & (x).tlb_lo[1] & ENTRYLO_G)
#define TLB_VPN2(x) ((x).tlb_hi & VPN2_MASK)
#define TLB_ASID(x) ((x).tlb_hi & KVM_ENTRYHI_ASID)
Expand Down
6 changes: 0 additions & 6 deletions arch/powerpc/kernel/vmlinux.lds.S
Original file line number Diff line number Diff line change
Expand Up @@ -326,12 +326,6 @@ SECTIONS
*(.branch_lt)
}

#ifdef CONFIG_DEBUG_INFO_BTF
.BTF : AT(ADDR(.BTF) - LOAD_OFFSET) {
*(.BTF)
}
#endif

.opd : AT(ADDR(.opd) - LOAD_OFFSET) {
__start_opd = .;
KEEP(*(.opd))
Expand Down
21 changes: 12 additions & 9 deletions arch/powerpc/mm/ptdump/ptdump.c
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ struct pg_state {
unsigned long start_address;
unsigned long start_pa;
unsigned long last_pa;
unsigned long page_size;
unsigned int level;
u64 current_flags;
bool check_wx;
Expand Down Expand Up @@ -155,9 +156,9 @@ static void dump_addr(struct pg_state *st, unsigned long addr)
#endif

pt_dump_seq_printf(st->seq, REG "-" REG " ", st->start_address, addr - 1);
if (st->start_pa == st->last_pa && st->start_address + PAGE_SIZE != addr) {
if (st->start_pa == st->last_pa && st->start_address + st->page_size != addr) {
pt_dump_seq_printf(st->seq, "[" REG "]", st->start_pa);
delta = PAGE_SIZE >> 10;
delta = st->page_size >> 10;
} else {
pt_dump_seq_printf(st->seq, " " REG " ", st->start_pa);
delta = (addr - st->start_address) >> 10;
Expand Down Expand Up @@ -188,7 +189,7 @@ static void note_prot_wx(struct pg_state *st, unsigned long addr)
}

static void note_page(struct pg_state *st, unsigned long addr,
unsigned int level, u64 val)
unsigned int level, u64 val, unsigned long page_size)
{
u64 flag = val & pg_level[level].mask;
u64 pa = val & PTE_RPN_MASK;
Expand All @@ -200,6 +201,7 @@ static void note_page(struct pg_state *st, unsigned long addr,
st->start_address = addr;
st->start_pa = pa;
st->last_pa = pa;
st->page_size = page_size;
pt_dump_seq_printf(st->seq, "---[ %s ]---\n", st->marker->name);
/*
* Dump the section of virtual memory when:
Expand All @@ -211,7 +213,7 @@ static void note_page(struct pg_state *st, unsigned long addr,
*/
} else if (flag != st->current_flags || level != st->level ||
addr >= st->marker[1].start_address ||
(pa != st->last_pa + PAGE_SIZE &&
(pa != st->last_pa + st->page_size &&
(pa != st->start_pa || st->start_pa != st->last_pa))) {

/* Check the PTE flags */
Expand Down Expand Up @@ -239,6 +241,7 @@ static void note_page(struct pg_state *st, unsigned long addr,
st->start_address = addr;
st->start_pa = pa;
st->last_pa = pa;
st->page_size = page_size;
st->current_flags = flag;
st->level = level;
} else {
Expand All @@ -254,7 +257,7 @@ static void walk_pte(struct pg_state *st, pmd_t *pmd, unsigned long start)

for (i = 0; i < PTRS_PER_PTE; i++, pte++) {
addr = start + i * PAGE_SIZE;
note_page(st, addr, 4, pte_val(*pte));
note_page(st, addr, 4, pte_val(*pte), PAGE_SIZE);

}
}
Expand All @@ -271,7 +274,7 @@ static void walk_pmd(struct pg_state *st, pud_t *pud, unsigned long start)
/* pmd exists */
walk_pte(st, pmd, addr);
else
note_page(st, addr, 3, pmd_val(*pmd));
note_page(st, addr, 3, pmd_val(*pmd), PMD_SIZE);
}
}

Expand All @@ -287,7 +290,7 @@ static void walk_pud(struct pg_state *st, pgd_t *pgd, unsigned long start)
/* pud exists */
walk_pmd(st, pud, addr);
else
note_page(st, addr, 2, pud_val(*pud));
note_page(st, addr, 2, pud_val(*pud), PUD_SIZE);
}
}

Expand All @@ -306,7 +309,7 @@ static void walk_pagetables(struct pg_state *st)
/* pgd exists */
walk_pud(st, pgd, addr);
else
note_page(st, addr, 1, pgd_val(*pgd));
note_page(st, addr, 1, pgd_val(*pgd), PGDIR_SIZE);
}
}

Expand Down Expand Up @@ -361,7 +364,7 @@ static int ptdump_show(struct seq_file *m, void *v)

/* Traverse kernel page tables */
walk_pagetables(&st);
note_page(&st, 0, 0, 0);
note_page(&st, 0, 0, 0, 0);
return 0;
}

Expand Down
5 changes: 5 additions & 0 deletions arch/powerpc/sysdev/xive/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <linux/msi.h>
#include <linux/vmalloc.h>

#include <asm/prom.h>
#include <asm/io.h>
Expand Down Expand Up @@ -1013,12 +1014,16 @@ EXPORT_SYMBOL_GPL(is_xive_irq);
void xive_cleanup_irq_data(struct xive_irq_data *xd)
{
if (xd->eoi_mmio) {
unmap_kernel_range((unsigned long)xd->eoi_mmio,
1u << xd->esb_shift);
iounmap(xd->eoi_mmio);
if (xd->eoi_mmio == xd->trig_mmio)
xd->trig_mmio = NULL;
xd->eoi_mmio = NULL;
}
if (xd->trig_mmio) {
unmap_kernel_range((unsigned long)xd->trig_mmio,
1u << xd->esb_shift);
iounmap(xd->trig_mmio);
xd->trig_mmio = NULL;
}
Expand Down
3 changes: 1 addition & 2 deletions arch/s390/pci/pci_clp.c
Original file line number Diff line number Diff line change
Expand Up @@ -309,14 +309,13 @@ int clp_enable_fh(struct zpci_dev *zdev, u8 nr_dma_as)

int clp_disable_fh(struct zpci_dev *zdev)
{
u32 fh = zdev->fh;
int rc;

if (!zdev_enabled(zdev))
return 0;

rc = clp_set_pci_fn(zdev, 0, CLP_SET_DISABLE_PCI_FN);
zpci_dbg(3, "dis fid:%x, fh:%x, rc:%d\n", zdev->fid, fh, rc);
zpci_dbg(3, "dis fid:%x, fh:%x, rc:%d\n", zdev->fid, zdev->fh, rc);
return rc;
}

Expand Down
4 changes: 2 additions & 2 deletions arch/x86/events/intel/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1892,8 +1892,8 @@ static __initconst const u64 tnt_hw_cache_extra_regs

static struct extra_reg intel_tnt_extra_regs[] __read_mostly = {
/* must define OFFCORE_RSP_X first, see intel_fixup_er() */
INTEL_UEVENT_EXTRA_REG(0x01b7, MSR_OFFCORE_RSP_0, 0xffffff9fffull, RSP_0),
INTEL_UEVENT_EXTRA_REG(0x02b7, MSR_OFFCORE_RSP_1, 0xffffff9fffull, RSP_1),
INTEL_UEVENT_EXTRA_REG(0x01b7, MSR_OFFCORE_RSP_0, 0x800ff0ffffff9fffull, RSP_0),
INTEL_UEVENT_EXTRA_REG(0x02b7, MSR_OFFCORE_RSP_1, 0xff0ffffff9fffull, RSP_1),
EVENT_EXTRA_END
};

Expand Down
Loading