Skip to content

Commit

Permalink
release v4.9-10
Browse files Browse the repository at this point in the history
  • Loading branch information
raphael committed Feb 17, 2017
1 parent 1c1025e commit 8493db6
Show file tree
Hide file tree
Showing 88 changed files with 537 additions and 294 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
v4.9-9 2017-02-16
--------------------
Update to Linux 4.9.10

v4.9-8 2017-02-09
--------------------
Update to Linux 4.9.9
Expand Down
6 changes: 3 additions & 3 deletions aur/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,18 @@

pkgbase=linux-samus4
pkgver=4.9
pkgrel=8
pkgrel=9
arch=('x86_64')
url="https://github.com/raphael/linux-samus"
license=('GPL2')
makedepends=('xmlto' 'docbook-xsl' 'kmod' 'inetutils' 'bc' 'lzop')
options=('!strip')
source=("https://github.com/raphael/linux-samus/archive/v4.9-8.tar.gz"
source=("https://github.com/raphael/linux-samus/archive/v4.9-9.tar.gz"
"config"
"linux.preset"
)
_kernelname=${pkgbase#linux}
_linuxsrc=linux-samus-4.9-8/build/linux/
_linuxsrc=linux-samus-4.9-9/build/linux/

# $srcdir is: /home/raphael/src/kernel-pkg/src
prepare() {
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file removed build/debian/linux-libc-dev_4.9.9-ph+-21_amd64.deb
Binary file not shown.
23 changes: 23 additions & 0 deletions build/linux-4.9.10-ph+_4.9.10-ph+-23.dsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Format: 3.0 (quilt)
Source: linux-4.9.10-ph+
Binary: linux-image-4.9.10-ph+, linux-headers-4.9.10-ph+, linux-firmware-image-4.9.10-ph+, linux-libc-dev
Architecture: any all
Version: 4.9.10-ph+-23
Maintainer: Anonymous <root@chromia>
Homepage: http://www.kernel.org/
Standards-Version: 3.8.4
Build-Depends: bc, kmod, cpio
Package-List:
linux-firmware-image-4.9.10-ph+ deb kernel optional arch=all
linux-headers-4.9.10-ph+ deb kernel optional arch=any
linux-image-4.9.10-ph+ deb kernel optional arch=any
linux-libc-dev deb devel optional arch=any
Checksums-Sha1:
83d877377b08bdcfdad95c78c1fbe5325064c030 302225211 linux-4.9.10-ph+_4.9.10-ph+.orig.tar.gz
f16a54c564debc6ba3401a8fa79fd21e36669755 1281 linux-4.9.10-ph+_4.9.10-ph+-23.debian.tar.gz
Checksums-Sha256:
e47217b508da70ef3c4621f2bcaab813098cded5ffceb41070592ac3c90a81ca 302225211 linux-4.9.10-ph+_4.9.10-ph+.orig.tar.gz
537547aea010b323508f6c2782de5d9e572cc63946cfde64b4722679eaa9199c 1281 linux-4.9.10-ph+_4.9.10-ph+-23.debian.tar.gz
Files:
4e160d82d0989441baf604c86b59a262 302225211 linux-4.9.10-ph+_4.9.10-ph+.orig.tar.gz
573d143f3aebc1a2baffcdf5f20bf5af 1281 linux-4.9.10-ph+_4.9.10-ph+-23.debian.tar.gz
43 changes: 43 additions & 0 deletions build/linux-4.9.10-ph+_4.9.10-ph+-23_amd64.changes
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
Format: 1.8
Date: Thu, 16 Feb 2017 16:55:36 -0800
Source: linux-4.9.10-ph+
Binary: linux-image-4.9.10-ph+ linux-headers-4.9.10-ph+ linux-firmware-image-4.9.10-ph+ linux-libc-dev
Architecture: source amd64 all
Version: 4.9.10-ph+-23
Distribution: vivid
Urgency: low
Maintainer: Anonymous <root@chromia>
Changed-By: Anonymous <root@chromia>
Description:
linux-firmware-image-4.9.10-ph+ - Linux kernel firmware, version 4.9.10-ph+
linux-headers-4.9.10-ph+ - Linux kernel headers for 4.9.10-ph+ on ${kernel:debarch}
linux-image-4.9.10-ph+ - Linux kernel, version 4.9.10-ph+
linux-libc-dev - Linux support headers for userspace development
Changes:
linux-4.9.10-ph+ (4.9.10-ph+-23) vivid; urgency=low
.
* Custom built Linux kernel.
Checksums-Sha1:
5a90a35bcebfe1d12c8a6b830bdd2b87591824ba 1174 linux-4.9.10-ph+_4.9.10-ph+-23.dsc
83d877377b08bdcfdad95c78c1fbe5325064c030 302225211 linux-4.9.10-ph+_4.9.10-ph+.orig.tar.gz
f16a54c564debc6ba3401a8fa79fd21e36669755 1281 linux-4.9.10-ph+_4.9.10-ph+-23.debian.tar.gz
d34f82fd243761affcf652b44e8cdcd1cbca72d7 736168 linux-firmware-image-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
3ffd5fa3b99a1c03e49b1f84e46bb8532df91ca5 10429674 linux-headers-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
9cd37cdb2bb9974675ff45fe3106ce5187ef9ee7 18323362 linux-image-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
1a53ccc83a25c2c9a25e6e5af29f80e51098117c 868638 linux-libc-dev_4.9.10-ph+-23_amd64.deb
Checksums-Sha256:
1304bbb0404f44f6a77367d9efb327d29963a8f7c9f13b6b085f38c23819ed24 1174 linux-4.9.10-ph+_4.9.10-ph+-23.dsc
e47217b508da70ef3c4621f2bcaab813098cded5ffceb41070592ac3c90a81ca 302225211 linux-4.9.10-ph+_4.9.10-ph+.orig.tar.gz
537547aea010b323508f6c2782de5d9e572cc63946cfde64b4722679eaa9199c 1281 linux-4.9.10-ph+_4.9.10-ph+-23.debian.tar.gz
cd0a474846a16c964ceddf8ab22cb1718bc4c8066dccc53053f0d3815ff21732 736168 linux-firmware-image-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
3a521d0646d6632b48aaee907db0acbd7152f35725328e950916d495fbd995b2 10429674 linux-headers-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
725e853b270af9a2e90e30d430840813271c39b789c108577f0bbc27c7ac7d20 18323362 linux-image-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
a64649bd75bcb334960bd177d809a9e1f7133b9a5f6b42ff650d4f3f0b9d390b 868638 linux-libc-dev_4.9.10-ph+-23_amd64.deb
Files:
d490fd3f8495c1e96f5c801f0fe3170c 1174 kernel optional linux-4.9.10-ph+_4.9.10-ph+-23.dsc
4e160d82d0989441baf604c86b59a262 302225211 kernel optional linux-4.9.10-ph+_4.9.10-ph+.orig.tar.gz
573d143f3aebc1a2baffcdf5f20bf5af 1281 kernel optional linux-4.9.10-ph+_4.9.10-ph+-23.debian.tar.gz
ddd27194d4ded740a260cc7d47d36135 736168 kernel optional linux-firmware-image-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
63e2b3abeca9f6f24041e6f10ac24c9e 10429674 kernel optional linux-headers-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
0060e7cffa9d4c86f4ca9414ea9a664d 18323362 kernel optional linux-image-4.9.10-ph+_4.9.10-ph+-23_amd64.deb
262b17f473b2586623ebcf27c1eb37a0 868638 devel optional linux-libc-dev_4.9.10-ph+-23_amd64.deb
2 changes: 1 addition & 1 deletion build/linux/Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
VERSION = 4
PATCHLEVEL = 9
SUBLEVEL = 9
SUBLEVEL = 10
EXTRAVERSION =
NAME = Roaring Lionus

Expand Down
2 changes: 1 addition & 1 deletion build/linux/arch/arc/kernel/unaligned.c
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@ int misaligned_fixup(unsigned long address, struct pt_regs *regs,

/* clear any remanants of delay slot */
if (delay_mode(regs)) {
regs->ret = regs->bta ~1U;
regs->ret = regs->bta & ~1U;
regs->status32 &= ~STATUS_DE_MASK;
} else {
regs->ret += state.instr_len;
Expand Down
2 changes: 1 addition & 1 deletion build/linux/arch/arm/boot/dts/imx6dl.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@
&gpio4 {
gpio-ranges = <&iomuxc 5 136 1>, <&iomuxc 6 145 1>, <&iomuxc 7 150 1>,
<&iomuxc 8 146 1>, <&iomuxc 9 151 1>, <&iomuxc 10 147 1>,
<&iomuxc 11 151 1>, <&iomuxc 12 148 1>, <&iomuxc 13 153 1>,
<&iomuxc 11 152 1>, <&iomuxc 12 148 1>, <&iomuxc 13 153 1>,
<&iomuxc 14 149 1>, <&iomuxc 15 154 1>, <&iomuxc 16 39 7>,
<&iomuxc 23 56 1>, <&iomuxc 24 61 7>, <&iomuxc 31 46 1>;
};
Expand Down
2 changes: 1 addition & 1 deletion build/linux/arch/arm/kernel/ptrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -600,7 +600,7 @@ static int gpr_set(struct task_struct *target,
const void *kbuf, const void __user *ubuf)
{
int ret;
struct pt_regs newregs;
struct pt_regs newregs = *task_pt_regs(target);

ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf,
&newregs,
Expand Down
4 changes: 2 additions & 2 deletions build/linux/arch/arm/mm/fault.c
Original file line number Diff line number Diff line change
Expand Up @@ -610,9 +610,9 @@ static int __init early_abort_handler(unsigned long addr, unsigned int fsr,

void __init early_abt_enable(void)
{
fsr_info[22].fn = early_abort_handler;
fsr_info[FSR_FS_AEA].fn = early_abort_handler;
local_abt_enable();
fsr_info[22].fn = do_bad;
fsr_info[FSR_FS_AEA].fn = do_bad;
}

#ifndef CONFIG_ARM_LPAE
Expand Down
4 changes: 4 additions & 0 deletions build/linux/arch/arm/mm/fault.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,15 @@
#define FSR_FS5_0 (0x3f)

#ifdef CONFIG_ARM_LPAE
#define FSR_FS_AEA 17

static inline int fsr_fs(unsigned int fsr)
{
return fsr & FSR_FS5_0;
}
#else
#define FSR_FS_AEA 22

static inline int fsr_fs(unsigned int fsr)
{
return (fsr & FSR_FS3_0) | (fsr & FSR_FS4) >> 6;
Expand Down
3 changes: 2 additions & 1 deletion build/linux/arch/powerpc/include/asm/reg.h
Original file line number Diff line number Diff line change
Expand Up @@ -641,9 +641,10 @@
#define SRR1_ISI_N_OR_G 0x10000000 /* ISI: Access is no-exec or G */
#define SRR1_ISI_PROT 0x08000000 /* ISI: Other protection fault */
#define SRR1_WAKEMASK 0x00380000 /* reason for wakeup */
#define SRR1_WAKEMASK_P8 0x003c0000 /* reason for wakeup on POWER8 */
#define SRR1_WAKEMASK_P8 0x003c0000 /* reason for wakeup on POWER8 and 9 */
#define SRR1_WAKESYSERR 0x00300000 /* System error */
#define SRR1_WAKEEE 0x00200000 /* External interrupt */
#define SRR1_WAKEHVI 0x00240000 /* Hypervisor Virtualization Interrupt (P9) */
#define SRR1_WAKEMT 0x00280000 /* mtctrl */
#define SRR1_WAKEHMI 0x00280000 /* Hypervisor maintenance */
#define SRR1_WAKEDEC 0x00180000 /* Decrementer interrupt */
Expand Down
1 change: 1 addition & 0 deletions build/linux/arch/powerpc/include/asm/xics.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ static inline int icp_hv_init(void) { return -ENODEV; }

#ifdef CONFIG_PPC_POWERNV
extern int icp_opal_init(void);
extern void icp_opal_flush_interrupt(void);
#else
static inline int icp_opal_init(void) { return -ENODEV; }
#endif
Expand Down
6 changes: 1 addition & 5 deletions build/linux/arch/powerpc/mm/tlb-radix.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,7 @@ static inline void _tlbiel_pid(unsigned long pid, unsigned long ric)
for (set = 0; set < POWER9_TLB_SETS_RADIX ; set++) {
__tlbiel_pid(pid, set, ric);
}
if (cpu_has_feature(CPU_FTR_POWER9_DD1))
asm volatile(PPC_INVALIDATE_ERAT : : :"memory");
return;
asm volatile(PPC_INVALIDATE_ERAT "; isync" : : :"memory");
}

static inline void _tlbie_pid(unsigned long pid, unsigned long ric)
Expand Down Expand Up @@ -85,8 +83,6 @@ static inline void _tlbiel_va(unsigned long va, unsigned long pid,
asm volatile(PPC_TLBIEL(%0, %4, %3, %2, %1)
: : "r"(rb), "i"(r), "i"(prs), "i"(ric), "r"(rs) : "memory");
asm volatile("ptesync": : :"memory");
if (cpu_has_feature(CPU_FTR_POWER9_DD1))
asm volatile(PPC_INVALIDATE_ERAT : : :"memory");
}

static inline void _tlbie_va(unsigned long va, unsigned long pid,
Expand Down
12 changes: 10 additions & 2 deletions build/linux/arch/powerpc/platforms/powernv/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -155,8 +155,10 @@ static void pnv_smp_cpu_kill_self(void)
wmask = SRR1_WAKEMASK_P8;

idle_states = pnv_get_supported_cpuidle_states();

/* We don't want to take decrementer interrupts while we are offline,
* so clear LPCR:PECE1. We keep PECE2 enabled.
* so clear LPCR:PECE1. We keep PECE2 (and LPCR_PECE_HVEE on P9)
* enabled as to let IPIs in.
*/
mtspr(SPRN_LPCR, mfspr(SPRN_LPCR) & ~(u64)LPCR_PECE1);

Expand Down Expand Up @@ -206,8 +208,12 @@ static void pnv_smp_cpu_kill_self(void)
* contains 0.
*/
if (((srr1 & wmask) == SRR1_WAKEEE) ||
((srr1 & wmask) == SRR1_WAKEHVI) ||
(local_paca->irq_happened & PACA_IRQ_EE)) {
icp_native_flush_interrupt();
if (cpu_has_feature(CPU_FTR_ARCH_300))
icp_opal_flush_interrupt();
else
icp_native_flush_interrupt();
} else if ((srr1 & wmask) == SRR1_WAKEHDBELL) {
unsigned long msg = PPC_DBELL_TYPE(PPC_DBELL_SERVER);
asm volatile(PPC_MSGCLR(%0) : : "r" (msg));
Expand All @@ -221,6 +227,8 @@ static void pnv_smp_cpu_kill_self(void)
if (srr1 && !generic_check_cpu_restart(cpu))
DBG("CPU%d Unexpected exit while offline !\n", cpu);
}

/* Re-enable decrementer interrupts */
mtspr(SPRN_LPCR, mfspr(SPRN_LPCR) | LPCR_PECE1);
DBG("CPU%d coming online...\n", cpu);
}
Expand Down
29 changes: 29 additions & 0 deletions build/linux/arch/powerpc/sysdev/xics/icp-opal.c
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,35 @@ static irqreturn_t icp_opal_ipi_action(int irq, void *dev_id)
return smp_ipi_demux();
}

/*
* Called when an interrupt is received on an off-line CPU to
* clear the interrupt, so that the CPU can go back to nap mode.
*/
void icp_opal_flush_interrupt(void)
{
unsigned int xirr;
unsigned int vec;

do {
xirr = icp_opal_get_xirr();
vec = xirr & 0x00ffffff;
if (vec == XICS_IRQ_SPURIOUS)
break;
if (vec == XICS_IPI) {
/* Clear pending IPI */
int cpu = smp_processor_id();
kvmppc_set_host_ipi(cpu, 0);
opal_int_set_mfrr(get_hard_smp_processor_id(cpu), 0xff);
} else {
pr_err("XICS: hw interrupt 0x%x to offline cpu, "
"disabling\n", vec);
xics_mask_unknown_vec(vec);
}

/* EOI the interrupt */
} while (opal_int_eoi(xirr) > 0);
}

#endif /* CONFIG_SMP */

static const struct icp_ops icp_opal_ops = {
Expand Down
1 change: 1 addition & 0 deletions build/linux/arch/x86/include/asm/processor.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ struct cpuinfo_x86 {
__u8 x86_phys_bits;
/* CPUID returned core id bits: */
__u8 x86_coreid_bits;
__u8 cu_id;
/* Max extended CPUID function supported: */
__u32 extended_cpuid_level;
/* Maximum supported CPUID level, -1=no CPUID: */
Expand Down
2 changes: 0 additions & 2 deletions build/linux/arch/x86/kernel/apic/io_apic.c
Original file line number Diff line number Diff line change
Expand Up @@ -1876,7 +1876,6 @@ static struct irq_chip ioapic_chip __read_mostly = {
.irq_ack = irq_chip_ack_parent,
.irq_eoi = ioapic_ack_level,
.irq_set_affinity = ioapic_set_affinity,
.irq_retrigger = irq_chip_retrigger_hierarchy,
.flags = IRQCHIP_SKIP_SET_WAKE,
};

Expand All @@ -1888,7 +1887,6 @@ static struct irq_chip ioapic_ir_chip __read_mostly = {
.irq_ack = irq_chip_ack_parent,
.irq_eoi = ioapic_ir_ack_level,
.irq_set_affinity = ioapic_set_affinity,
.irq_retrigger = irq_chip_retrigger_hierarchy,
.flags = IRQCHIP_SKIP_SET_WAKE,
};

Expand Down
16 changes: 15 additions & 1 deletion build/linux/arch/x86/kernel/cpu/amd.c
Original file line number Diff line number Diff line change
Expand Up @@ -309,8 +309,22 @@ static void amd_get_topology(struct cpuinfo_x86 *c)

/* get information required for multi-node processors */
if (boot_cpu_has(X86_FEATURE_TOPOEXT)) {
u32 eax, ebx, ecx, edx;

node_id = cpuid_ecx(0x8000001e) & 7;
cpuid(0x8000001e, &eax, &ebx, &ecx, &edx);

node_id = ecx & 0xff;
smp_num_siblings = ((ebx >> 8) & 0xff) + 1;

if (c->x86 == 0x15)
c->cu_id = ebx & 0xff;

if (c->x86 >= 0x17) {
c->cpu_core_id = ebx & 0xff;

if (smp_num_siblings > 1)
c->x86_max_cores /= smp_num_siblings;
}

/*
* We may have multiple LLCs if L3 caches exist, so check if we
Expand Down
1 change: 1 addition & 0 deletions build/linux/arch/x86/kernel/cpu/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -1015,6 +1015,7 @@ static void identify_cpu(struct cpuinfo_x86 *c)
c->x86_model_id[0] = '\0'; /* Unset */
c->x86_max_cores = 1;
c->x86_coreid_bits = 0;
c->cu_id = 0xff;
#ifdef CONFIG_X86_64
c->x86_clflush_size = 64;
c->x86_phys_bits = 36;
Expand Down
12 changes: 9 additions & 3 deletions build/linux/arch/x86/kernel/smpboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -423,9 +423,15 @@ static bool match_smt(struct cpuinfo_x86 *c, struct cpuinfo_x86 *o)
int cpu1 = c->cpu_index, cpu2 = o->cpu_index;

if (c->phys_proc_id == o->phys_proc_id &&
per_cpu(cpu_llc_id, cpu1) == per_cpu(cpu_llc_id, cpu2) &&
c->cpu_core_id == o->cpu_core_id)
return topology_sane(c, o, "smt");
per_cpu(cpu_llc_id, cpu1) == per_cpu(cpu_llc_id, cpu2)) {
if (c->cpu_core_id == o->cpu_core_id)
return topology_sane(c, o, "smt");

if ((c->cu_id != 0xff) &&
(o->cu_id != 0xff) &&
(c->cu_id == o->cu_id))
return topology_sane(c, o, "smt");
}

} else if (c->phys_proc_id == o->phys_proc_id &&
c->cpu_core_id == o->cpu_core_id) {
Expand Down
2 changes: 2 additions & 0 deletions build/linux/arch/x86/mm/dump_pagetables.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
#include <linux/debugfs.h>
#include <linux/mm.h>
#include <linux/init.h>
#include <linux/sched.h>
#include <linux/seq_file.h>

#include <asm/pgtable.h>
Expand Down Expand Up @@ -406,6 +407,7 @@ static void ptdump_walk_pgd_level_core(struct seq_file *m, pgd_t *pgd,
} else
note_page(m, &st, __pgprot(0), 1);

cond_resched();
start++;
}

Expand Down
2 changes: 1 addition & 1 deletion build/linux/crypto/algif_aead.c
Original file line number Diff line number Diff line change
Expand Up @@ -671,9 +671,9 @@ static int aead_recvmsg_sync(struct socket *sock, struct msghdr *msg, int flags)
unlock:
list_for_each_entry_safe(rsgl, tmp, &ctx->list, list) {
af_alg_free_sg(&rsgl->sgl);
list_del(&rsgl->list);
if (rsgl != &ctx->first_rsgl)
sock_kfree_s(sk, rsgl, sizeof(*rsgl));
list_del(&rsgl->list);
}
INIT_LIST_HEAD(&ctx->list);
aead_wmem_wakeup(sk);
Expand Down
6 changes: 5 additions & 1 deletion build/linux/drivers/acpi/nfit/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -2704,6 +2704,7 @@ static int acpi_nfit_flush_probe(struct nvdimm_bus_descriptor *nd_desc)
struct acpi_nfit_desc *acpi_desc = to_acpi_nfit_desc(nd_desc);
struct device *dev = acpi_desc->dev;
struct acpi_nfit_flush_work flush;
int rc;

/* bounce the device lock to flush acpi_nfit_add / acpi_nfit_notify */
device_lock(dev);
Expand All @@ -2716,7 +2717,10 @@ static int acpi_nfit_flush_probe(struct nvdimm_bus_descriptor *nd_desc)
INIT_WORK_ONSTACK(&flush.work, flush_probe);
COMPLETION_INITIALIZER_ONSTACK(flush.cmp);
queue_work(nfit_wq, &flush.work);
return wait_for_completion_interruptible(&flush.cmp);

rc = wait_for_completion_interruptible(&flush.cmp);
cancel_work_sync(&flush.work);
return rc;
}

static int acpi_nfit_clear_to_send(struct nvdimm_bus_descriptor *nd_desc,
Expand Down
Loading

0 comments on commit 8493db6

Please sign in to comment.