Skip to content

Commit

Permalink
release v4.12-2
Browse files Browse the repository at this point in the history
  • Loading branch information
raphael committed Jul 17, 2017
1 parent 66aad82 commit 6ab469a
Show file tree
Hide file tree
Showing 96 changed files with 427 additions and 354 deletions.
2 changes: 1 addition & 1 deletion aur/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

pkgbase=linux-samus4
pkgver=4.12
pkgrel=1
pkgrel=2
arch=('x86_64')
url="https://github.com/raphael/linux-samus"
license=('GPL2')
Expand Down
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.12.0-ph+-2_amd64.deb
Binary file not shown.
Binary file not shown.
22 changes: 22 additions & 0 deletions build/linux-4.12.2-ph+_4.12.2-ph+-4.dsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
Format: 3.0 (quilt)
Source: linux-4.12.2-ph+
Binary: linux-image-4.12.2-ph+, linux-headers-4.12.2-ph+, linux-firmware-image-4.12.2-ph+, linux-libc-dev
Architecture: any all
Version: 4.12.2-ph+-4
Maintainer: Anonymous <root@chromia>
Homepage: http://www.kernel.org/
Build-Depends: bc, kmod, cpio
Package-List:
linux-firmware-image-4.12.2-ph+ deb kernel optional arch=all
linux-headers-4.12.2-ph+ deb kernel optional arch=any
linux-image-4.12.2-ph+ deb kernel optional arch=any
linux-libc-dev deb devel optional arch=any
Checksums-Sha1:
90ffa0f9f5ee283f761b5b68fe7645a8fabcbbc6 315274053 linux-4.12.2-ph+_4.12.2-ph+.orig.tar.gz
3bdb1a18c426c35af8af25b8540fd4d156ad8cc7 1246 linux-4.12.2-ph+_4.12.2-ph+-4.debian.tar.gz
Checksums-Sha256:
a5c2ffa64af8b1da1fecc67a0be20d139192be6ba3119c724b3788f8d446acdf 315274053 linux-4.12.2-ph+_4.12.2-ph+.orig.tar.gz
eb2a3d6be5382c0e42e0a55a0d65e8da989ea300a96ce02d46dbbd12ed75fae1 1246 linux-4.12.2-ph+_4.12.2-ph+-4.debian.tar.gz
Files:
dc1c71b254ec5ac10116aa36919765e9 315274053 linux-4.12.2-ph+_4.12.2-ph+.orig.tar.gz
bb0ca6f655ca060a4312e8ea458dbfbd 1246 linux-4.12.2-ph+_4.12.2-ph+-4.debian.tar.gz
43 changes: 43 additions & 0 deletions build/linux-4.12.2-ph+_4.12.2-ph+-4_amd64.changes
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
Format: 1.8
Date: Mon, 17 Jul 2017 10:10:45 -0700
Source: linux-4.12.2-ph+
Binary: linux-image-4.12.2-ph+ linux-headers-4.12.2-ph+ linux-firmware-image-4.12.2-ph+ linux-libc-dev
Architecture: source amd64 all
Version: 4.12.2-ph+-4
Distribution: vivid
Urgency: low
Maintainer: Anonymous <root@chromia>
Changed-By: Anonymous <root@chromia>
Description:
linux-firmware-image-4.12.2-ph+ - Linux kernel firmware, version 4.12.2-ph+
linux-headers-4.12.2-ph+ - Linux kernel headers for 4.12.2-ph+ on ${kernel:debarch}
linux-image-4.12.2-ph+ - Linux kernel, version 4.12.2-ph+
linux-libc-dev - Linux support headers for userspace development
Changes:
linux-4.12.2-ph+ (4.12.2-ph+-4) vivid; urgency=low
.
* Custom built Linux kernel.
Checksums-Sha1:
3790b800067844953e9640bab02119580c6a0616 1145 linux-4.12.2-ph+_4.12.2-ph+-4.dsc
90ffa0f9f5ee283f761b5b68fe7645a8fabcbbc6 315274053 linux-4.12.2-ph+_4.12.2-ph+.orig.tar.gz
3bdb1a18c426c35af8af25b8540fd4d156ad8cc7 1246 linux-4.12.2-ph+_4.12.2-ph+-4.debian.tar.gz
9f082dd7ebcac4f4eba41d0f31958fc0e0b983b2 736466 linux-firmware-image-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
ab9667f8faea2a222750887d71a2a85d7994378c 10682920 linux-headers-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
97f70fd68a2d6d3755c5838b4410ebe49fe919bf 18540016 linux-image-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
c45648be427c3831643d652682a90f7ddddb96d3 941542 linux-libc-dev_4.12.2-ph+-4_amd64.deb
Checksums-Sha256:
cae3da3fa610e9f45299b750e66afc76dd83ea19267de089c6263db455222737 1145 linux-4.12.2-ph+_4.12.2-ph+-4.dsc
a5c2ffa64af8b1da1fecc67a0be20d139192be6ba3119c724b3788f8d446acdf 315274053 linux-4.12.2-ph+_4.12.2-ph+.orig.tar.gz
eb2a3d6be5382c0e42e0a55a0d65e8da989ea300a96ce02d46dbbd12ed75fae1 1246 linux-4.12.2-ph+_4.12.2-ph+-4.debian.tar.gz
70478eecac03993688a6cc1d31d3eed423d89ef295d3a18ee3c490c905898e88 736466 linux-firmware-image-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
21ec507653d0e45e65610d8687f30da33f7ecdbc5c359e35d317c886b2145957 10682920 linux-headers-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
d2ac21ba59fc084c815be8db6abd3128091aa12be39beed614b0962edf34e90d 18540016 linux-image-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
8dc3d0ad1a1a430b68c0d38b00bd0e0f0eea8231ccd6d2409e3a8b98f31fef5d 941542 linux-libc-dev_4.12.2-ph+-4_amd64.deb
Files:
d7d50766eae0279145a6d78a06933731 1145 kernel optional linux-4.12.2-ph+_4.12.2-ph+-4.dsc
dc1c71b254ec5ac10116aa36919765e9 315274053 kernel optional linux-4.12.2-ph+_4.12.2-ph+.orig.tar.gz
bb0ca6f655ca060a4312e8ea458dbfbd 1246 kernel optional linux-4.12.2-ph+_4.12.2-ph+-4.debian.tar.gz
1f8da47e98f85723925b99b72506fa61 736466 kernel optional linux-firmware-image-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
128514b6a2ab53c55766382bafdc4d2e 10682920 kernel optional linux-headers-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
9a09c77456c64b67732a63fcf6ca902e 18540016 kernel optional linux-image-4.12.2-ph+_4.12.2-ph+-4_amd64.deb
72119ecba41c04b1eacce70bc0c18012 941542 devel optional linux-libc-dev_4.12.2-ph+-4_amd64.deb
1 change: 0 additions & 1 deletion build/linux/Documentation/Changes

This file was deleted.

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 = 12
SUBLEVEL = 0
SUBLEVEL = 2
EXTRAVERSION =
NAME = Fearless Coyote

Expand Down
1 change: 0 additions & 1 deletion build/linux/arch/arm/boot/dts/sun8i-a23-ippo-q8h-v1.2.dts

This file was deleted.

1 change: 0 additions & 1 deletion build/linux/arch/arm/boot/dts/sun8i-a23-ippo-q8h-v5.dts

This file was deleted.

1 change: 0 additions & 1 deletion build/linux/arch/arm/boot/dts/sun8i-a33-et-q8-v1.6.dts

This file was deleted.

1 change: 0 additions & 1 deletion build/linux/arch/arm/boot/dts/sun8i-a33-ippo-q8h-v1.2.dts

This file was deleted.

1 change: 0 additions & 1 deletion build/linux/arch/arm64/boot/dts/arm/vexpress-v2m-rs1.dtsi

This file was deleted.

1 change: 0 additions & 1 deletion build/linux/arch/arm64/boot/dts/broadcom/bcm2835-rpi.dtsi

This file was deleted.

This file was deleted.

This file was deleted.

1 change: 0 additions & 1 deletion build/linux/arch/arm64/boot/dts/broadcom/bcm283x.dtsi

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

2 changes: 2 additions & 0 deletions build/linux/arch/powerpc/platforms/powernv/idle.c
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,7 @@ static u64 pnv_deepest_stop_psscr_val;
static u64 pnv_deepest_stop_psscr_mask;
static bool deepest_stop_found;

#ifdef CONFIG_HOTPLUG_CPU
/*
* pnv_cpu_offline: A function that puts the CPU into the deepest
* available platform idle state on a CPU-Offline.
Expand Down Expand Up @@ -293,6 +294,7 @@ unsigned long pnv_cpu_offline(unsigned int cpu)

return srr1;
}
#endif

/*
* Power ISA 3.0 idle initialization.
Expand Down
1 change: 1 addition & 0 deletions build/linux/arch/x86/include/asm/pat.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
bool pat_enabled(void);
void pat_disable(const char *reason);
extern void pat_init(void);
extern void init_cache_modes(void);

extern int reserve_memtype(u64 start, u64 end,
enum page_cache_mode req_pcm, enum page_cache_mode *ret_pcm);
Expand Down
7 changes: 7 additions & 0 deletions build/linux/arch/x86/kernel/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -1075,6 +1075,13 @@ void __init setup_arch(char **cmdline_p)

max_possible_pfn = max_pfn;

/*
* This call is required when the CPU does not support PAT. If
* mtrr_bp_init() invoked it already via pat_init() the call has no
* effect.
*/
init_cache_modes();

/*
* Define random base addresses for memory sections after max_pfn is
* defined and before each memory section base is used.
Expand Down
7 changes: 5 additions & 2 deletions build/linux/arch/x86/lib/copy_user_64.S
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ ENTRY(copy_user_generic_unrolled)
movl %edx,%ecx
andl $63,%edx
shrl $6,%ecx
jz 17f
jz .L_copy_short_string
1: movq (%rsi),%r8
2: movq 1*8(%rsi),%r9
3: movq 2*8(%rsi),%r10
Expand All @@ -58,7 +58,8 @@ ENTRY(copy_user_generic_unrolled)
leaq 64(%rdi),%rdi
decl %ecx
jnz 1b
17: movl %edx,%ecx
.L_copy_short_string:
movl %edx,%ecx
andl $7,%edx
shrl $3,%ecx
jz 20f
Expand Down Expand Up @@ -174,6 +175,8 @@ EXPORT_SYMBOL(copy_user_generic_string)
*/
ENTRY(copy_user_enhanced_fast_string)
ASM_STAC
cmpl $64,%edx
jb .L_copy_short_string /* less then 64 bytes, avoid the costly 'rep' */
movl %edx,%ecx
1: rep
movsb
Expand Down
28 changes: 12 additions & 16 deletions build/linux/arch/x86/mm/pat.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,25 +37,23 @@
#undef pr_fmt
#define pr_fmt(fmt) "" fmt

static bool boot_cpu_done;

static int __read_mostly __pat_enabled = IS_ENABLED(CONFIG_X86_PAT);
static void init_cache_modes(void);
static bool __read_mostly boot_cpu_done;
static bool __read_mostly pat_disabled = !IS_ENABLED(CONFIG_X86_PAT);
static bool __read_mostly pat_initialized;
static bool __read_mostly init_cm_done;

void pat_disable(const char *reason)
{
if (!__pat_enabled)
if (pat_disabled)
return;

if (boot_cpu_done) {
WARN_ONCE(1, "x86/PAT: PAT cannot be disabled after initialization\n");
return;
}

__pat_enabled = 0;
pat_disabled = true;
pr_info("x86/PAT: %s\n", reason);

init_cache_modes();
}

static int __init nopat(char *str)
Expand All @@ -67,7 +65,7 @@ early_param("nopat", nopat);

bool pat_enabled(void)
{
return !!__pat_enabled;
return pat_initialized;
}
EXPORT_SYMBOL_GPL(pat_enabled);

Expand Down Expand Up @@ -205,6 +203,8 @@ static void __init_cache_modes(u64 pat)
update_cache_mode_entry(i, cache);
}
pr_info("x86/PAT: Configuration [0-7]: %s\n", pat_msg);

init_cm_done = true;
}

#define PAT(x, y) ((u64)PAT_ ## y << ((x)*8))
Expand All @@ -225,6 +225,7 @@ static void pat_bsp_init(u64 pat)
}

wrmsrl(MSR_IA32_CR_PAT, pat);
pat_initialized = true;

__init_cache_modes(pat);
}
Expand All @@ -242,10 +243,9 @@ static void pat_ap_init(u64 pat)
wrmsrl(MSR_IA32_CR_PAT, pat);
}

static void init_cache_modes(void)
void init_cache_modes(void)
{
u64 pat = 0;
static int init_cm_done;

if (init_cm_done)
return;
Expand Down Expand Up @@ -287,8 +287,6 @@ static void init_cache_modes(void)
}

__init_cache_modes(pat);

init_cm_done = 1;
}

/**
Expand All @@ -306,10 +304,8 @@ void pat_init(void)
u64 pat;
struct cpuinfo_x86 *c = &boot_cpu_data;

if (!pat_enabled()) {
init_cache_modes();
if (pat_disabled)
return;
}

if ((c->x86_vendor == X86_VENDOR_INTEL) &&
(((c->x86 == 0x6) && (c->x86_model <= 0xd)) ||
Expand Down
1 change: 1 addition & 0 deletions build/linux/crypto/drbg.c
Original file line number Diff line number Diff line change
Expand Up @@ -1691,6 +1691,7 @@ static int drbg_init_sym_kernel(struct drbg_state *drbg)
return PTR_ERR(sk_tfm);
}
drbg->ctr_handle = sk_tfm;
init_completion(&drbg->ctr_completion);

req = skcipher_request_alloc(sk_tfm, GFP_KERNEL);
if (!req) {
Expand Down
2 changes: 1 addition & 1 deletion build/linux/crypto/rsa-pkcs1pad.c
Original file line number Diff line number Diff line change
Expand Up @@ -496,7 +496,7 @@ static int pkcs1pad_verify_complete(struct akcipher_request *req, int err)
goto done;
pos++;

if (memcmp(out_buf + pos, digest_info->data, digest_info->size))
if (crypto_memneq(out_buf + pos, digest_info->data, digest_info->size))
goto done;

pos += digest_info->size;
Expand Down
6 changes: 5 additions & 1 deletion build/linux/drivers/base/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -2667,7 +2667,11 @@ void device_shutdown(void)
pm_runtime_get_noresume(dev);
pm_runtime_barrier(dev);

if (dev->bus && dev->bus->shutdown) {
if (dev->class && dev->class->shutdown) {
if (initcall_debug)
dev_info(dev, "shutdown\n");
dev->class->shutdown(dev);
} else if (dev->bus && dev->bus->shutdown) {
if (initcall_debug)
dev_info(dev, "shutdown\n");
dev->bus->shutdown(dev);
Expand Down
11 changes: 9 additions & 2 deletions build/linux/drivers/base/platform.c
Original file line number Diff line number Diff line change
Expand Up @@ -866,7 +866,7 @@ static ssize_t driver_override_store(struct device *dev,
const char *buf, size_t count)
{
struct platform_device *pdev = to_platform_device(dev);
char *driver_override, *old = pdev->driver_override, *cp;
char *driver_override, *old, *cp;

if (count > PATH_MAX)
return -EINVAL;
Expand All @@ -879,12 +879,15 @@ static ssize_t driver_override_store(struct device *dev,
if (cp)
*cp = '\0';

device_lock(dev);
old = pdev->driver_override;
if (strlen(driver_override)) {
pdev->driver_override = driver_override;
} else {
kfree(driver_override);
pdev->driver_override = NULL;
}
device_unlock(dev);

kfree(old);

Expand All @@ -895,8 +898,12 @@ static ssize_t driver_override_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
struct platform_device *pdev = to_platform_device(dev);
ssize_t len;

return sprintf(buf, "%s\n", pdev->driver_override);
device_lock(dev);
len = sprintf(buf, "%s\n", pdev->driver_override);
device_unlock(dev);
return len;
}
static DEVICE_ATTR_RW(driver_override);

Expand Down
34 changes: 34 additions & 0 deletions build/linux/drivers/char/tpm/tpm-chip.c
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,39 @@ static void tpm_devs_release(struct device *dev)
put_device(&chip->dev);
}

/**
* tpm_class_shutdown() - prepare the TPM device for loss of power.
* @dev: device to which the chip is associated.
*
* Issues a TPM2_Shutdown command prior to loss of power, as required by the
* TPM 2.0 spec.
* Then, calls bus- and device- specific shutdown code.
*
* XXX: This codepath relies on the fact that sysfs is not enabled for
* TPM2: sysfs uses an implicit lock on chip->ops, so this could race if TPM2
* has sysfs support enabled before TPM sysfs's implicit locking is fixed.
*/
static int tpm_class_shutdown(struct device *dev)
{
struct tpm_chip *chip = container_of(dev, struct tpm_chip, dev);

if (chip->flags & TPM_CHIP_FLAG_TPM2) {
down_write(&chip->ops_sem);
tpm2_shutdown(chip, TPM2_SU_CLEAR);
chip->ops = NULL;
up_write(&chip->ops_sem);
}
/* Allow bus- and device-specific code to run. Note: since chip->ops
* is NULL, more-specific shutdown code will not be able to issue TPM
* commands.
*/
if (dev->bus && dev->bus->shutdown)
dev->bus->shutdown(dev);
else if (dev->driver && dev->driver->shutdown)
dev->driver->shutdown(dev);
return 0;
}

/**
* tpm_chip_alloc() - allocate a new struct tpm_chip instance
* @pdev: device to which the chip is associated
Expand Down Expand Up @@ -181,6 +214,7 @@ struct tpm_chip *tpm_chip_alloc(struct device *pdev,
device_initialize(&chip->devs);

chip->dev.class = tpm_class;
chip->dev.class->shutdown = tpm_class_shutdown;
chip->dev.release = tpm_dev_release;
chip->dev.parent = pdev;
chip->dev.groups = chip->groups;
Expand Down
Loading

0 comments on commit 6ab469a

Please sign in to comment.