[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-04-19 Thread Mike Pagano
commit: 0632b05dfe0edf20e50d473d3c174fda502d6808
Author: Mike Pagano  gentoo  org>
AuthorDate: Thu Apr 19 10:44:15 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Thu Apr 19 10:44:15 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=0632b05d

Linux patch 4.15.18

 _README  |4 +
 1017_linux-4.15.18.patch | 2152 ++
 2 files changed, 2156 insertions(+)

diff --git a/_README b/_README
index f973683..e2ca4c8 100644
--- a/_README
+++ b/_README
@@ -111,6 +111,10 @@ Patch:  1016_linux-4.15.17.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.17
 
+Patch:  1017_linux-4.15.18.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.18
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1017_linux-4.15.18.patch b/1017_linux-4.15.18.patch
new file mode 100644
index 000..8aac24f
--- /dev/null
+++ b/1017_linux-4.15.18.patch
@@ -0,0 +1,2152 @@
+diff --git a/Makefile b/Makefile
+index cfff73b62eb5..83152471e1a9 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 17
++SUBLEVEL = 18
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c
+index 29b99b8964aa..d4240aa7f8b1 100644
+--- a/arch/parisc/kernel/drivers.c
 b/arch/parisc/kernel/drivers.c
+@@ -651,6 +651,10 @@ static int match_pci_device(struct device *dev, int index,
+   (modpath->mod == PCI_FUNC(devfn)));
+   }
+ 
++  /* index might be out of bounds for bc[] */
++  if (index >= 6)
++  return 0;
++
+   id = PCI_SLOT(pdev->devfn) | (PCI_FUNC(pdev->devfn) << 5);
+   return (modpath->bc[index] == id);
+ }
+diff --git a/arch/parisc/kernel/hpmc.S b/arch/parisc/kernel/hpmc.S
+index 8d072c44f300..781c3b9a3e46 100644
+--- a/arch/parisc/kernel/hpmc.S
 b/arch/parisc/kernel/hpmc.S
+@@ -84,6 +84,7 @@ END(hpmc_pim_data)
+   .text
+ 
+   .import intr_save, code
++  .align 16
+ ENTRY_CFI(os_hpmc)
+ .os_hpmc:
+ 
+@@ -300,12 +301,15 @@ os_hpmc_6:
+ 
+   b .
+   nop
++  .align 16   /* make function length multiple of 16 bytes */
+ ENDPROC_CFI(os_hpmc)
+ .os_hpmc_end:
+ 
+ 
+   __INITRODATA
++.globl os_hpmc_size
+   .align 4
+-  .export os_hpmc_size
++  .type   os_hpmc_size, @object
++  .size   os_hpmc_size, 4
+ os_hpmc_size:
+   .word .os_hpmc_end-.os_hpmc
+diff --git a/arch/powerpc/kvm/book3s_hv_rm_mmu.c 
b/arch/powerpc/kvm/book3s_hv_rm_mmu.c
+index 26c11f678fbf..d981dfdf8319 100644
+--- a/arch/powerpc/kvm/book3s_hv_rm_mmu.c
 b/arch/powerpc/kvm/book3s_hv_rm_mmu.c
+@@ -470,8 +470,6 @@ static void do_tlbies(struct kvm *kvm, unsigned long 
*rbvalues,
+   for (i = 0; i < npages; ++i) {
+   asm volatile(PPC_TLBIE_5(%0,%1,0,0,0) : :
+"r" (rbvalues[i]), "r" (kvm->arch.lpid));
+-  trace_tlbie(kvm->arch.lpid, 0, rbvalues[i],
+-  kvm->arch.lpid, 0, 0, 0);
+   }
+   asm volatile("eieio; tlbsync; ptesync" : : : "memory");
+   kvm->arch.tlbie_lock = 0;
+@@ -481,8 +479,6 @@ static void do_tlbies(struct kvm *kvm, unsigned long 
*rbvalues,
+   for (i = 0; i < npages; ++i) {
+   asm volatile(PPC_TLBIEL(%0,%1,0,0,0) : :
+"r" (rbvalues[i]), "r" (0));
+-  trace_tlbie(kvm->arch.lpid, 1, rbvalues[i],
+-  0, 0, 0, 0);
+   }
+   asm volatile("ptesync" : : : "memory");
+   }
+diff --git a/arch/s390/kernel/compat_signal.c 
b/arch/s390/kernel/compat_signal.c
+index ef246940b44c..f19e90856e49 100644
+--- a/arch/s390/kernel/compat_signal.c
 b/arch/s390/kernel/compat_signal.c
+@@ -379,7 +379,7 @@ static int setup_frame32(struct ksignal *ksig, sigset_t 
*set,
+   if (put_compat_sigset((compat_sigset_t __user *)frame->sc.oldmask,
+ set, sizeof(compat_sigset_t)))
+   return -EFAULT;
+-  if (__put_user(ptr_to_compat(>sc), >sc.sregs))
++  if (__put_user(ptr_to_compat(>sregs), >sc.sregs))
+   return -EFAULT;
+ 
+   /* Store registers needed to create the signal frame */
+diff --git a/arch/s390/kernel/ipl.c b/arch/s390/kernel/ipl.c
+index 8ecb8726ac47..66c470be1b58 100644
+--- a/arch/s390/kernel/ipl.c
 b/arch/s390/kernel/ipl.c
+@@ -779,6 +779,7 @@ static ssize_t reipl_generic_loadparm_store(struct 
ipl_parameter_block *ipb,
+   /* copy and convert to ebcdic */
+   memcpy(ipb->hdr.loadparm, buf, lp_len);
+   ASCEBC(ipb->hdr.loadparm, LOADPARM_LEN);
++  ipb->hdr.flags |= DIAG308_FLAGS_LP_VALID;
+   return len;

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-04-08 Thread Mike Pagano
commit: 14243423be4baa539a5f9b13c2ddbeed904b7cad
Author: Mike Pagano  gentoo  org>
AuthorDate: Sun Apr  8 14:30:59 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Sun Apr  8 14:30:59 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=14243423

Linux patch 4.15.16

 _README  |4 +
 1015_linux-4.15.16.patch | 2899 ++
 2 files changed, 2903 insertions(+)

diff --git a/_README b/_README
index f1a4ce6..ba8435c 100644
--- a/_README
+++ b/_README
@@ -103,6 +103,10 @@ Patch:  1014_linux-4.15.15.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.15
 
+Patch:  1015_linux-4.15.16.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.16
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1015_linux-4.15.16.patch b/1015_linux-4.15.16.patch
new file mode 100644
index 000..bec9a07
--- /dev/null
+++ b/1015_linux-4.15.16.patch
@@ -0,0 +1,2899 @@
+diff --git a/Documentation/devicetree/bindings/serial/8250.txt 
b/Documentation/devicetree/bindings/serial/8250.txt
+index dad3b2ec66d4..aeb6db4e35c3 100644
+--- a/Documentation/devicetree/bindings/serial/8250.txt
 b/Documentation/devicetree/bindings/serial/8250.txt
+@@ -24,6 +24,7 @@ Required properties:
+   - "ti,da830-uart"
+   - "aspeed,ast2400-vuart"
+   - "aspeed,ast2500-vuart"
++  - "nuvoton,npcm750-uart"
+   - "serial" if the port type is unknown.
+ - reg : offset and length of the register set for the device.
+ - interrupts : should contain uart interrupt.
+diff --git a/Makefile b/Makefile
+index 20c9b7bfeed4..b28f0f721ec7 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 15
++SUBLEVEL = 16
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/arm/boot/dts/am335x-pepper.dts 
b/arch/arm/boot/dts/am335x-pepper.dts
+index 9fb7426070ce..03c7d77023c6 100644
+--- a/arch/arm/boot/dts/am335x-pepper.dts
 b/arch/arm/boot/dts/am335x-pepper.dts
+@@ -139,7 +139,7 @@
+ _codec {
+   status = "okay";
+ 
+-  reset-gpios = < 16 GPIO_ACTIVE_LOW>;
++  gpio-reset = < 16 GPIO_ACTIVE_LOW>;
+   AVDD-supply = <_reg>;
+   IOVDD-supply = <_reg>;
+   DRVDD-supply = <_reg>;
+diff --git a/arch/arm/boot/dts/dra76-evm.dts b/arch/arm/boot/dts/dra76-evm.dts
+index b024a65c6e27..f64aab450315 100644
+--- a/arch/arm/boot/dts/dra76-evm.dts
 b/arch/arm/boot/dts/dra76-evm.dts
+@@ -148,6 +148,7 @@
+   compatible = "ti,tps65917";
+   reg = <0x58>;
+   ti,system-power-controller;
++  ti,palmas-override-powerhold;
+   interrupt-controller;
+   #interrupt-cells = <2>;
+ 
+diff --git a/arch/arm/boot/dts/omap3-n900.dts 
b/arch/arm/boot/dts/omap3-n900.dts
+index 5362139d5312..669c51c00c00 100644
+--- a/arch/arm/boot/dts/omap3-n900.dts
 b/arch/arm/boot/dts/omap3-n900.dts
+@@ -558,7 +558,7 @@
+   tlv320aic3x: tlv320aic3x@18 {
+   compatible = "ti,tlv320aic3x";
+   reg = <0x18>;
+-  reset-gpios = < 28 GPIO_ACTIVE_LOW>; /* 60 */
++  gpio-reset = < 28 GPIO_ACTIVE_HIGH>; /* 60 */
+   ai3x-gpio-func = <
+   0 /* AIC3X_GPIO1_FUNC_DISABLED */
+   5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
+@@ -575,7 +575,7 @@
+   tlv320aic3x_aux: tlv320aic3x@19 {
+   compatible = "ti,tlv320aic3x";
+   reg = <0x19>;
+-  reset-gpios = < 28 GPIO_ACTIVE_LOW>; /* 60 */
++  gpio-reset = < 28 GPIO_ACTIVE_HIGH>; /* 60 */
+ 
+   AVDD-supply = <>;
+   DRVDD-supply = <>;
+diff --git a/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts 
b/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts
+index 51e6f1d21c32..b2758dd8ce43 100644
+--- a/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts
 b/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts
+@@ -42,7 +42,6 @@
+ 
+ /dts-v1/;
+ #include "sun6i-a31s.dtsi"
+-#include "sunxi-common-regulators.dtsi"
+ #include 
+ 
+ / {
+@@ -99,6 +98,7 @@
+   pinctrl-0 = <_pins_rgmii_a>, <_phy_reset_pin_bpi_m2>;
+   phy = <>;
+   phy-mode = "rgmii";
++  phy-supply = <_dldo1>;
+   snps,reset-gpio = < 0 21 GPIO_ACTIVE_HIGH>; /* PA21 */
+   snps,reset-active-low;
+   snps,reset-delays-us = <0 1 3>;
+@@ -118,7 +118,7 @@
+  {
+   pinctrl-names = "default";
+   pinctrl-0 = <_pins_a>, <_cd_pin_bpi_m2>;
+-  vmmc-supply = <_vcc3v0>;
++  vmmc-supply = <_dcdc1>;
+   bus-width = <4>;
+   cd-gpios = < 0 4 GPIO_ACTIVE_HIGH>; /* PA4 */
+   cd-inverted;
+@@ -132,7 +132,7 @@
+  {
+   pinctrl-names = "default";
+   pinctrl-0 = <_pins_a>;
+-  vmmc-supply = <_vcc3v0>;
++  vmmc-supply = <_aldo1>;
+   mmc-pwrseq = 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-31 Thread Mike Pagano
commit: b2dfe994a979d5ace0f18e467c1e82bfa4d3ab30
Author: Mike Pagano  gentoo  org>
AuthorDate: Sat Mar 31 22:19:50 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Sat Mar 31 22:19:50 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=b2dfe994

Linux patch 4.15.15

 _README  |4 +
 1014_linux-4.15.15.patch | 1683 ++
 2 files changed, 1687 insertions(+)

diff --git a/_README b/_README
index f4d8a80..f1a4ce6 100644
--- a/_README
+++ b/_README
@@ -99,6 +99,10 @@ Patch:  1013_linux-4.15.14.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.14
 
+Patch:  1014_linux-4.15.15.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.15
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1014_linux-4.15.15.patch b/1014_linux-4.15.15.patch
new file mode 100644
index 000..ab1089f
--- /dev/null
+++ b/1014_linux-4.15.15.patch
@@ -0,0 +1,1683 @@
+diff --git a/Makefile b/Makefile
+index a5e561900daf..20c9b7bfeed4 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 14
++SUBLEVEL = 15
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/drivers/net/ethernet/arc/emac_rockchip.c 
b/drivers/net/ethernet/arc/emac_rockchip.c
+index 16f9bee992fe..0f6576802607 100644
+--- a/drivers/net/ethernet/arc/emac_rockchip.c
 b/drivers/net/ethernet/arc/emac_rockchip.c
+@@ -169,8 +169,10 @@ static int emac_rockchip_probe(struct platform_device 
*pdev)
+   /* Optional regulator for PHY */
+   priv->regulator = devm_regulator_get_optional(dev, "phy");
+   if (IS_ERR(priv->regulator)) {
+-  if (PTR_ERR(priv->regulator) == -EPROBE_DEFER)
+-  return -EPROBE_DEFER;
++  if (PTR_ERR(priv->regulator) == -EPROBE_DEFER) {
++  err = -EPROBE_DEFER;
++  goto out_clk_disable;
++  }
+   dev_err(dev, "no regulator found\n");
+   priv->regulator = NULL;
+   }
+diff --git a/drivers/net/ethernet/broadcom/bcmsysport.c 
b/drivers/net/ethernet/broadcom/bcmsysport.c
+index 087f01b4dc3a..f239ef2e6f23 100644
+--- a/drivers/net/ethernet/broadcom/bcmsysport.c
 b/drivers/net/ethernet/broadcom/bcmsysport.c
+@@ -855,10 +855,12 @@ static void bcm_sysport_tx_reclaim_one(struct 
bcm_sysport_tx_ring *ring,
+ static unsigned int __bcm_sysport_tx_reclaim(struct bcm_sysport_priv *priv,
+struct bcm_sysport_tx_ring *ring)
+ {
+-  unsigned int c_index, last_c_index, last_tx_cn, num_tx_cbs;
+   unsigned int pkts_compl = 0, bytes_compl = 0;
+   struct net_device *ndev = priv->netdev;
++  unsigned int txbds_processed = 0;
+   struct bcm_sysport_cb *cb;
++  unsigned int txbds_ready;
++  unsigned int c_index;
+   u32 hw_ind;
+ 
+   /* Clear status before servicing to reduce spurious interrupts */
+@@ -871,29 +873,23 @@ static unsigned int __bcm_sysport_tx_reclaim(struct 
bcm_sysport_priv *priv,
+   /* Compute how many descriptors have been processed since last call */
+   hw_ind = tdma_readl(priv, TDMA_DESC_RING_PROD_CONS_INDEX(ring->index));
+   c_index = (hw_ind >> RING_CONS_INDEX_SHIFT) & RING_CONS_INDEX_MASK;
+-  ring->p_index = (hw_ind & RING_PROD_INDEX_MASK);
+-
+-  last_c_index = ring->c_index;
+-  num_tx_cbs = ring->size;
+-
+-  c_index &= (num_tx_cbs - 1);
+-
+-  if (c_index >= last_c_index)
+-  last_tx_cn = c_index - last_c_index;
+-  else
+-  last_tx_cn = num_tx_cbs - last_c_index + c_index;
++  txbds_ready = (c_index - ring->c_index) & RING_CONS_INDEX_MASK;
+ 
+   netif_dbg(priv, tx_done, ndev,
+-"ring=%d c_index=%d last_tx_cn=%d last_c_index=%d\n",
+-ring->index, c_index, last_tx_cn, last_c_index);
++"ring=%d old_c_index=%u c_index=%u txbds_ready=%u\n",
++ring->index, ring->c_index, c_index, txbds_ready);
+ 
+-  while (last_tx_cn-- > 0) {
+-  cb = ring->cbs + last_c_index;
++  while (txbds_processed < txbds_ready) {
++  cb = >cbs[ring->clean_index];
+   bcm_sysport_tx_reclaim_one(ring, cb, _compl, _compl);
+ 
+   ring->desc_count++;
+-  last_c_index++;
+-  last_c_index &= (num_tx_cbs - 1);
++  txbds_processed++;
++
++  if (likely(ring->clean_index < ring->size - 1))
++  ring->clean_index++;
++  else
++  ring->clean_index = 0;
+   }
+ 
+   u64_stats_update_begin(>syncp);
+@@ -1406,6 +1402,7 @@ static int bcm_sysport_init_tx_ring(struct 
bcm_sysport_priv *priv,
+   netif_tx_napi_add(priv->netdev, >napi, bcm_sysport_tx_poll, 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-28 Thread Mike Pagano
commit: dfca21c3d8cf051f97cc37a7e27b7640b98e0472
Author: Mike Pagano  gentoo  org>
AuthorDate: Wed Mar 28 17:03:40 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Wed Mar 28 17:03:40 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=dfca21c3

Linux patch 4.15.14

 _README  |4 +
 1013_linux-4.15.14.patch | 3891 ++
 2 files changed, 3895 insertions(+)

diff --git a/_README b/_README
index 2b51c4d..f4d8a80 100644
--- a/_README
+++ b/_README
@@ -95,6 +95,10 @@ Patch:  1012_linux-4.15.13.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.13
 
+Patch:  1013_linux-4.15.14.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.14
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1013_linux-4.15.14.patch b/1013_linux-4.15.14.patch
new file mode 100644
index 000..9227e36
--- /dev/null
+++ b/1013_linux-4.15.14.patch
@@ -0,0 +1,3891 @@
+diff --git a/Documentation/ABI/testing/sysfs-bus-iio 
b/Documentation/ABI/testing/sysfs-bus-iio
+index 2e3f919485f4..fdec308a5041 100644
+--- a/Documentation/ABI/testing/sysfs-bus-iio
 b/Documentation/ABI/testing/sysfs-bus-iio
+@@ -32,7 +32,7 @@ Description:
+   Description of the physical chip / device for device X.
+   Typically a part number.
+ 
+-What: /sys/bus/iio/devices/iio:deviceX/timestamp_clock
++What: /sys/bus/iio/devices/iio:deviceX/current_timestamp_clock
+ KernelVersion:4.5
+ Contact:  linux-...@vger.kernel.org
+ Description:
+diff --git a/Makefile b/Makefile
+index 82245e654d10..a5e561900daf 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 13
++SUBLEVEL = 14
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+@@ -798,6 +798,15 @@ KBUILD_CFLAGS += $(call cc-disable-warning, pointer-sign)
+ # disable invalid "can't wrap" optimizations for signed / pointers
+ KBUILD_CFLAGS += $(call cc-option,-fno-strict-overflow)
+ 
++# clang sets -fmerge-all-constants by default as optimization, but this
++# is non-conforming behavior for C and in fact breaks the kernel, so we
++# need to disable it here generally.
++KBUILD_CFLAGS += $(call cc-option,-fno-merge-all-constants)
++
++# for gcc -fno-merge-all-constants disables everything, but it is fine
++# to have actual conforming behavior enabled.
++KBUILD_CFLAGS += $(call cc-option,-fmerge-constants)
++
+ # Make sure -fstack-check isn't enabled (like gentoo apparently did)
+ KBUILD_CFLAGS  += $(call cc-option,-fno-stack-check,)
+ 
+diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c
+index 5bdc2c4db9ad..f15dc3dfecf8 100644
+--- a/arch/arm64/mm/mmu.c
 b/arch/arm64/mm/mmu.c
+@@ -941,3 +941,13 @@ int pmd_clear_huge(pmd_t *pmd)
+   pmd_clear(pmd);
+   return 1;
+ }
++
++int pud_free_pmd_page(pud_t *pud)
++{
++  return pud_none(*pud);
++}
++
++int pmd_free_pte_page(pmd_t *pmd)
++{
++  return pmd_none(*pmd);
++}
+diff --git a/arch/h8300/include/asm/byteorder.h 
b/arch/h8300/include/asm/byteorder.h
+index ecff2d1ca5a3..6eaa7ad5fc2c 100644
+--- a/arch/h8300/include/asm/byteorder.h
 b/arch/h8300/include/asm/byteorder.h
+@@ -2,7 +2,6 @@
+ #ifndef __H8300_BYTEORDER_H__
+ #define __H8300_BYTEORDER_H__
+ 
+-#define __BIG_ENDIAN __ORDER_BIG_ENDIAN__
+ #include 
+ 
+ #endif
+diff --git a/arch/mips/lantiq/Kconfig b/arch/mips/lantiq/Kconfig
+index 692ae85a3e3d..8e3a1fc2bc39 100644
+--- a/arch/mips/lantiq/Kconfig
 b/arch/mips/lantiq/Kconfig
+@@ -13,6 +13,8 @@ choice
+ config SOC_AMAZON_SE
+   bool "Amazon SE"
+   select SOC_TYPE_XWAY
++  select MFD_SYSCON
++  select MFD_CORE
+ 
+ config SOC_XWAY
+   bool "XWAY"
+diff --git a/arch/mips/lantiq/xway/sysctrl.c b/arch/mips/lantiq/xway/sysctrl.c
+index 52500d3b7004..e0af39b33e28 100644
+--- a/arch/mips/lantiq/xway/sysctrl.c
 b/arch/mips/lantiq/xway/sysctrl.c
+@@ -549,9 +549,9 @@ void __init ltq_soc_init(void)
+   clkdev_add_static(ltq_ar9_cpu_hz(), ltq_ar9_fpi_hz(),
+   ltq_ar9_fpi_hz(), CLOCK_250M);
+   clkdev_add_pmu("1f203018.usb2-phy", "phy", 1, 0, PMU_USB0_P);
+-  clkdev_add_pmu("1e101000.usb", "otg", 1, 0, PMU_USB0);
++  clkdev_add_pmu("1e101000.usb", "otg", 1, 0, PMU_USB0 | 
PMU_AHBM);
+   clkdev_add_pmu("1f203034.usb2-phy", "phy", 1, 0, PMU_USB1_P);
+-  clkdev_add_pmu("1e106000.usb", "otg", 1, 0, PMU_USB1);
++  clkdev_add_pmu("1e106000.usb", "otg", 1, 0, PMU_USB1 | 
PMU_AHBM);
+   clkdev_add_pmu("1e18.etop", "switch", 1, 0, PMU_SWITCH);
+   clkdev_add_pmu("1e103000.sdio", NULL, 1, 0, PMU_SDIO);
+   clkdev_add_pmu("1e103100.deu", NULL, 1, 0, PMU_DEU);
+@@ -560,7 +560,7 @@ void __init ltq_soc_init(void)
+   

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-25 Thread Mike Pagano
commit: bbfab546bd200ea52bed26d55ab0cdc7e92c0a82
Author: Mike Pagano  gentoo  org>
AuthorDate: Sun Mar 25 13:37:05 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Sun Mar 25 13:37:05 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=bbfab546

Linux patch 4.15.13

 _README  |4 +
 1012_linux-4.15.13.patch | 2806 ++
 2 files changed, 2810 insertions(+)

diff --git a/_README b/_README
index 2ad5c9b..2b51c4d 100644
--- a/_README
+++ b/_README
@@ -91,6 +91,10 @@ Patch:  1011_linux-4.15.12.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.12
 
+Patch:  1012_linux-4.15.13.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.13
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1012_linux-4.15.13.patch b/1012_linux-4.15.13.patch
new file mode 100644
index 000..5685162
--- /dev/null
+++ b/1012_linux-4.15.13.patch
@@ -0,0 +1,2806 @@
+diff --git 
a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt 
b/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
+deleted file mode 100644
+index 7175dc3740ac..
+--- a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
 /dev/null
+@@ -1,30 +0,0 @@
+-Toppoly TD028TTEC1 Panel
+-
+-
+-Required properties:
+-- compatible: "toppoly,td028ttec1"
+-
+-Optional properties:
+-- label: a symbolic name for the panel
+-
+-Required nodes:
+-- Video port for DPI input
+-
+-Example
+
+-
+-lcd-panel: td028ttec1@0 {
+-  compatible = "toppoly,td028ttec1";
+-  reg = <0>;
+-  spi-max-frequency = <10>;
+-  spi-cpol;
+-  spi-cpha;
+-
+-  label = "lcd";
+-  port {
+-  lcd_in: endpoint {
+-  remote-endpoint = <_out>;
+-  };
+-  };
+-};
+-
+diff --git 
a/Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt 
b/Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
+index 4c0caaf246c9..89826116628c 100644
+--- a/Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
 b/Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
+@@ -1,7 +1,7 @@
+ Toshiba 8.9" WXGA (1280x768) TFT LCD panel
+ 
+ Required properties:
+-- compatible: should be "toshiba,lt089ac29000.txt"
++- compatible: should be "toshiba,lt089ac29000"
+ - power-supply: as specified in the base binding
+ 
+ This binding is compatible with the simple-panel binding, which is specified
+diff --git 
a/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt 
b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
+new file mode 100644
+index ..ed34253d9fb1
+--- /dev/null
 b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
+@@ -0,0 +1,30 @@
++Toppoly TD028TTEC1 Panel
++
++
++Required properties:
++- compatible: "tpo,td028ttec1"
++
++Optional properties:
++- label: a symbolic name for the panel
++
++Required nodes:
++- Video port for DPI input
++
++Example
++---
++
++lcd-panel: td028ttec1@0 {
++  compatible = "tpo,td028ttec1";
++  reg = <0>;
++  spi-max-frequency = <10>;
++  spi-cpol;
++  spi-cpha;
++
++  label = "lcd";
++  port {
++  lcd_in: endpoint {
++  remote-endpoint = <_out>;
++  };
++  };
++};
++
+diff --git a/Makefile b/Makefile
+index 2e6ba1553dff..82245e654d10 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 12
++SUBLEVEL = 13
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/alpha/kernel/console.c b/arch/alpha/kernel/console.c
+index 8e9a41966881..5476279329a6 100644
+--- a/arch/alpha/kernel/console.c
 b/arch/alpha/kernel/console.c
+@@ -21,6 +21,7 @@
+ struct pci_controller *pci_vga_hose;
+ static struct resource alpha_vga = {
+   .name   = "alpha-vga+",
++  .flags  = IORESOURCE_IO,
+   .start  = 0x3C0,
+   .end= 0x3DF
+ };
+diff --git a/arch/arm/boot/dts/aspeed-ast2500-evb.dts 
b/arch/arm/boot/dts/aspeed-ast2500-evb.dts
+index 602bc10fdaf4..7472ed355d4b 100644
+--- a/arch/arm/boot/dts/aspeed-ast2500-evb.dts
 b/arch/arm/boot/dts/aspeed-ast2500-evb.dts
+@@ -16,7 +16,7 @@
+   bootargs = "console=ttyS4,115200 earlyprintk";
+   };
+ 
+-  memory {
++  memory@8000 {
+   reg = <0x8000 0x2000>;
+   };
+ };
+diff --git a/drivers/bluetooth/btqcomsmd.c b/drivers/bluetooth/btqcomsmd.c
+index 663bed63b871..2c9a5fc9137d 100644
+--- a/drivers/bluetooth/btqcomsmd.c
 b/drivers/bluetooth/btqcomsmd.c
+@@ -88,7 +88,8 @@ static int btqcomsmd_send(struct hci_dev *hdev, struct 
sk_buff *skb)
+   

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-21 Thread Mike Pagano
commit: eaeb5c4a6f5cf7ae7aa3f783c83f06ce942641a9
Author: Mike Pagano  gentoo  org>
AuthorDate: Wed Mar 21 14:42:31 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Wed Mar 21 14:42:31 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=eaeb5c4a

Linux patch 4.15.12

 _README  |4 +
 1011_linux-4.15.12.patch | 1976 ++
 2 files changed, 1980 insertions(+)

diff --git a/_README b/_README
index 6b57403..2ad5c9b 100644
--- a/_README
+++ b/_README
@@ -87,6 +87,10 @@ Patch:  1010_linux-4.15.11.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.11
 
+Patch:  1011_linux-4.15.12.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.12
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1011_linux-4.15.12.patch b/1011_linux-4.15.12.patch
new file mode 100644
index 000..b55e91e
--- /dev/null
+++ b/1011_linux-4.15.12.patch
@@ -0,0 +1,1976 @@
+diff --git a/Documentation/devicetree/bindings/usb/dwc2.txt 
b/Documentation/devicetree/bindings/usb/dwc2.txt
+index e64d903bcbe8..46da5f184460 100644
+--- a/Documentation/devicetree/bindings/usb/dwc2.txt
 b/Documentation/devicetree/bindings/usb/dwc2.txt
+@@ -19,7 +19,7 @@ Required properties:
+   configured in FS mode;
+   - "st,stm32f4x9-hsotg": The DWC2 USB HS controller instance in STM32F4x9 
SoCs
+   configured in HS mode;
+-  - "st,stm32f7xx-hsotg": The DWC2 USB HS controller instance in STM32F7xx 
SoCs
++  - "st,stm32f7-hsotg": The DWC2 USB HS controller instance in STM32F7 SoCs
+ configured in HS mode;
+ - reg : Should contain 1 register range (address and length)
+ - interrupts : Should contain 1 interrupt
+diff --git a/Makefile b/Makefile
+index 74c0f5e8dd55..2e6ba1553dff 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 11
++SUBLEVEL = 12
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/parisc/kernel/cache.c b/arch/parisc/kernel/cache.c
+index 79089778725b..e3b45546d589 100644
+--- a/arch/parisc/kernel/cache.c
 b/arch/parisc/kernel/cache.c
+@@ -543,7 +543,8 @@ void flush_cache_mm(struct mm_struct *mm)
+  rp3440, etc.  So, avoid it if the mm isn't too big.  */
+   if ((!IS_ENABLED(CONFIG_SMP) || !arch_irqs_disabled()) &&
+   mm_total_size(mm) >= parisc_cache_flush_threshold) {
+-  flush_tlb_all();
++  if (mm->context)
++  flush_tlb_all();
+   flush_cache_all();
+   return;
+   }
+@@ -571,6 +572,8 @@ void flush_cache_mm(struct mm_struct *mm)
+   pfn = pte_pfn(*ptep);
+   if (!pfn_valid(pfn))
+   continue;
++  if (unlikely(mm->context))
++  flush_tlb_page(vma, addr);
+   __flush_cache_page(vma, addr, PFN_PHYS(pfn));
+   }
+   }
+@@ -579,26 +582,46 @@ void flush_cache_mm(struct mm_struct *mm)
+ void flush_cache_range(struct vm_area_struct *vma,
+   unsigned long start, unsigned long end)
+ {
++  pgd_t *pgd;
++  unsigned long addr;
++
+   if ((!IS_ENABLED(CONFIG_SMP) || !arch_irqs_disabled()) &&
+   end - start >= parisc_cache_flush_threshold) {
+-  flush_tlb_range(vma, start, end);
++  if (vma->vm_mm->context)
++  flush_tlb_range(vma, start, end);
+   flush_cache_all();
+   return;
+   }
+ 
+-  flush_user_dcache_range_asm(start, end);
+-  if (vma->vm_flags & VM_EXEC)
+-  flush_user_icache_range_asm(start, end);
+-  flush_tlb_range(vma, start, end);
++  if (vma->vm_mm->context == mfsp(3)) {
++  flush_user_dcache_range_asm(start, end);
++  if (vma->vm_flags & VM_EXEC)
++  flush_user_icache_range_asm(start, end);
++  flush_tlb_range(vma, start, end);
++  return;
++  }
++
++  pgd = vma->vm_mm->pgd;
++  for (addr = vma->vm_start; addr < vma->vm_end; addr += PAGE_SIZE) {
++  unsigned long pfn;
++  pte_t *ptep = get_ptep(pgd, addr);
++  if (!ptep)
++  continue;
++  pfn = pte_pfn(*ptep);
++  if (pfn_valid(pfn)) {
++  if (unlikely(vma->vm_mm->context))
++  flush_tlb_page(vma, addr);
++  __flush_cache_page(vma, addr, PFN_PHYS(pfn));
++  }
++  }
+ }
+ 
+ void
+ flush_cache_page(struct vm_area_struct *vma, unsigned long vmaddr, unsigned 
long pfn)
+ {
+-  BUG_ON(!vma->vm_mm->context);
+-
+   if (pfn_valid(pfn)) {
+-  flush_tlb_page(vma, vmaddr);
++  if (likely(vma->vm_mm->context))
++ 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-19 Thread Mike Pagano
commit: 89e744181b46d6751c181899d789820432d371db
Author: Mike Pagano  gentoo  org>
AuthorDate: Mon Mar 19 12:02:08 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Mon Mar 19 12:02:08 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=89e74418

Linux patch 4.15.11

 _README  |4 +
 1010_linux-4.15.11.patch | 3788 ++
 2 files changed, 3792 insertions(+)

diff --git a/_README b/_README
index 172ed03..6b57403 100644
--- a/_README
+++ b/_README
@@ -83,6 +83,10 @@ Patch:  1009_linux-4.15.10.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.10
 
+Patch:  1010_linux-4.15.11.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.11
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1010_linux-4.15.11.patch b/1010_linux-4.15.11.patch
new file mode 100644
index 000..f914c5d
--- /dev/null
+++ b/1010_linux-4.15.11.patch
@@ -0,0 +1,3788 @@
+diff --git a/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt 
b/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt
+index 860a9559839a..89b92c1314cf 100644
+--- a/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt
 b/Documentation/devicetree/bindings/serial/fsl-imx-uart.txt
+@@ -9,7 +9,8 @@ Optional properties:
+ - fsl,irda-mode : Indicate the uart supports irda mode
+ - fsl,dte-mode : Indicate the uart works in DTE mode. The uart works
+   in DCE mode by default.
+-- rs485-rts-delay, rs485-rx-during-tx, linux,rs485-enabled-at-boot-time: see 
rs485.txt
++- rs485-rts-delay, rs485-rts-active-low, rs485-rx-during-tx,
++  linux,rs485-enabled-at-boot-time: see rs485.txt
+ 
+ Please check Documentation/devicetree/bindings/serial/serial.txt
+ for the complete list of generic properties.
+diff --git a/Documentation/devicetree/bindings/serial/fsl-lpuart.txt 
b/Documentation/devicetree/bindings/serial/fsl-lpuart.txt
+index 59567b51cf09..6bd3f2e93d61 100644
+--- a/Documentation/devicetree/bindings/serial/fsl-lpuart.txt
 b/Documentation/devicetree/bindings/serial/fsl-lpuart.txt
+@@ -16,7 +16,8 @@ Required properties:
+ Optional properties:
+ - dmas: A list of two dma specifiers, one for each entry in dma-names.
+ - dma-names: should contain "tx" and "rx".
+-- rs485-rts-delay, rs485-rx-during-tx, linux,rs485-enabled-at-boot-time: see 
rs485.txt
++- rs485-rts-delay, rs485-rts-active-low, rs485-rx-during-tx,
++  linux,rs485-enabled-at-boot-time: see rs485.txt
+ 
+ Note: Optional properties for DMA support. Write them both or both not.
+ 
+diff --git a/Documentation/devicetree/bindings/serial/omap_serial.txt 
b/Documentation/devicetree/bindings/serial/omap_serial.txt
+index 43eac675f21f..4b0f05adb228 100644
+--- a/Documentation/devicetree/bindings/serial/omap_serial.txt
 b/Documentation/devicetree/bindings/serial/omap_serial.txt
+@@ -20,6 +20,7 @@ Optional properties:
+  node and a DMA channel number.
+ - dma-names : "rx" for receive channel, "tx" for transmit channel.
+ - rs485-rts-delay, rs485-rx-during-tx, linux,rs485-enabled-at-boot-time: see 
rs485.txt
++- rs485-rts-active-high: drive RTS high when sending (default is low).
+ 
+ Example:
+ 
+diff --git a/Documentation/devicetree/bindings/serial/rs485.txt 
b/Documentation/devicetree/bindings/serial/rs485.txt
+index b8415936dfdb..b7c29f74ebb2 100644
+--- a/Documentation/devicetree/bindings/serial/rs485.txt
 b/Documentation/devicetree/bindings/serial/rs485.txt
+@@ -12,6 +12,7 @@ Optional properties:
+   * b is the delay between end of data sent and rts signal in milliseconds
+   it corresponds to the delay after sending data and actual release of 
the line.
+   If this property is not specified, <0 0> is assumed.
++- rs485-rts-active-low: drive RTS low when sending (default is high).
+ - linux,rs485-enabled-at-boot-time: empty property telling to enable the rs485
+   feature at boot time. It can be disabled later with proper ioctl.
+ - rs485-rx-during-tx: empty property that enables the receiving of data even
+diff --git a/Documentation/devicetree/bindings/usb/usb-xhci.txt 
b/Documentation/devicetree/bindings/usb/usb-xhci.txt
+index ae6e484a8d7c..4143ef222540 100644
+--- a/Documentation/devicetree/bindings/usb/usb-xhci.txt
 b/Documentation/devicetree/bindings/usb/usb-xhci.txt
+@@ -12,6 +12,7 @@ Required properties:
+ - "renesas,xhci-r8a7793" for r8a7793 SoC
+ - "renesas,xhci-r8a7795" for r8a7795 SoC
+ - "renesas,xhci-r8a7796" for r8a7796 SoC
++- "renesas,xhci-r8a77965" for r8a77965 SoC
+ - "renesas,rcar-gen2-xhci" for a generic R-Car Gen2 compatible device
+ - "renesas,rcar-gen3-xhci" for a generic R-Car Gen3 compatible device
+ - "xhci-platform" (deprecated)
+diff --git a/Makefile b/Makefile
+index 7eed0f168b13..74c0f5e8dd55 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-11 Thread Mike Pagano
commit: 5e0efe43ac3cd3191ca0b0ae3bac9313cbe72c3f
Author: Mike Pagano  gentoo  org>
AuthorDate: Sun Mar 11 17:38:59 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Sun Mar 11 17:38:59 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=5e0efe43

Linux patch 4.15.9

 _README |   4 +
 1008_linux-4.15.9.patch | 680 
 2 files changed, 684 insertions(+)

diff --git a/_README b/_README
index 552a9c3..bce11f7 100644
--- a/_README
+++ b/_README
@@ -75,6 +75,10 @@ Patch:  1007_linux-4.15.8.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.8
 
+Patch:  1008_linux-4.15.9.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.9
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1008_linux-4.15.9.patch b/1008_linux-4.15.9.patch
new file mode 100644
index 000..40befd5
--- /dev/null
+++ b/1008_linux-4.15.9.patch
@@ -0,0 +1,680 @@
+diff --git a/Documentation/virtual/kvm/cpuid.txt 
b/Documentation/virtual/kvm/cpuid.txt
+index 3c65feb83010..a81c97a4b4a5 100644
+--- a/Documentation/virtual/kvm/cpuid.txt
 b/Documentation/virtual/kvm/cpuid.txt
+@@ -54,6 +54,10 @@ KVM_FEATURE_PV_UNHALT  || 7 || guest checks 
this feature bit
+||   || before enabling paravirtualized
+||   || spinlock support.
+ --
++KVM_FEATURE_ASYNC_PF_VMEXIT||10 || paravirtualized async PF VM 
exit
++   ||   || can be enabled by setting bit 2
++   ||   || when writing to msr 0x4b564d02
++--
+ KVM_FEATURE_CLOCKSOURCE_STABLE_BIT ||24 || host will warn if no guest-side
+||   || per-cpu warps are expected in
+||   || kvmclock.
+diff --git a/Documentation/virtual/kvm/msr.txt 
b/Documentation/virtual/kvm/msr.txt
+index 1ebecc115dc6..f3f0d57ced8e 100644
+--- a/Documentation/virtual/kvm/msr.txt
 b/Documentation/virtual/kvm/msr.txt
+@@ -170,7 +170,8 @@ MSR_KVM_ASYNC_PF_EN: 0x4b564d02
+   when asynchronous page faults are enabled on the vcpu 0 when
+   disabled. Bit 1 is 1 if asynchronous page faults can be injected
+   when vcpu is in cpl == 0. Bit 2 is 1 if asynchronous page faults
+-  are delivered to L1 as #PF vmexits.
++  are delivered to L1 as #PF vmexits.  Bit 2 can be set only if
++  KVM_FEATURE_ASYNC_PF_VMEXIT is present in CPUID.
+ 
+   First 4 byte of 64 byte memory location will be written to by
+   the hypervisor at the time of asynchronous page fault (APF)
+diff --git a/Makefile b/Makefile
+index eb18d200a603..0420f9a0c70f 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 8
++SUBLEVEL = 9
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/arm64/net/bpf_jit_comp.c b/arch/arm64/net/bpf_jit_comp.c
+index bb32f7f6dd0f..be155f70f108 100644
+--- a/arch/arm64/net/bpf_jit_comp.c
 b/arch/arm64/net/bpf_jit_comp.c
+@@ -238,8 +238,9 @@ static int emit_bpf_tail_call(struct jit_ctx *ctx)
+   off = offsetof(struct bpf_array, map.max_entries);
+   emit_a64_mov_i64(tmp, off, ctx);
+   emit(A64_LDR32(tmp, r2, tmp), ctx);
++  emit(A64_MOV(0, r3, r3), ctx);
+   emit(A64_CMP(0, r3, tmp), ctx);
+-  emit(A64_B_(A64_COND_GE, jmp_offset), ctx);
++  emit(A64_B_(A64_COND_CS, jmp_offset), ctx);
+ 
+   /* if (tail_call_cnt > MAX_TAIL_CALL_CNT)
+* goto out;
+@@ -247,7 +248,7 @@ static int emit_bpf_tail_call(struct jit_ctx *ctx)
+*/
+   emit_a64_mov_i64(tmp, MAX_TAIL_CALL_CNT, ctx);
+   emit(A64_CMP(1, tcc, tmp), ctx);
+-  emit(A64_B_(A64_COND_GT, jmp_offset), ctx);
++  emit(A64_B_(A64_COND_HI, jmp_offset), ctx);
+   emit(A64_ADD_I(1, tcc, tcc, 1), ctx);
+ 
+   /* prog = array->ptrs[index];
+diff --git a/arch/powerpc/net/bpf_jit_comp64.c 
b/arch/powerpc/net/bpf_jit_comp64.c
+index d183b4801bdb..35591fb09042 100644
+--- a/arch/powerpc/net/bpf_jit_comp64.c
 b/arch/powerpc/net/bpf_jit_comp64.c
+@@ -242,6 +242,7 @@ static void bpf_jit_emit_tail_call(u32 *image, struct 
codegen_context *ctx, u32
+*   goto out;
+*/
+   PPC_LWZ(b2p[TMP_REG_1], b2p_bpf_array, offsetof(struct bpf_array, 
map.max_entries));
++  PPC_RLWINM(b2p_index, b2p_index, 0, 0, 31);
+   PPC_CMPLW(b2p_index, b2p[TMP_REG_1]);
+   PPC_BCC(COND_GE, out);
+ 
+diff --git a/arch/x86/include/asm/nospec-branch.h 
b/arch/x86/include/asm/nospec-branch.h
+index 76b058533e47..81a1be326571 100644
+--- 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-09 Thread Mike Pagano
commit: 186dad837693de84ff4792013172b41a991bfa70
Author: Mike Pagano  gentoo  org>
AuthorDate: Fri Mar  9 22:50:57 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Fri Mar  9 22:50:57 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=186dad83

Remove redundant patch 2901_allocate_buffer_on_heap_rather_than_globally.patch

 _README|   4 -
 ...ocate_buffer_on_heap_rather_than_globally.patch | 460 -
 2 files changed, 464 deletions(-)

diff --git a/_README b/_README
index bd1cdaf..552a9c3 100644
--- a/_README
+++ b/_README
@@ -103,10 +103,6 @@ Patch:  2900_dev-root-proc-mount-fix.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=438380
 Desc:   Ensure that /dev/root doesn't appear in /proc/mounts when bootint 
without an initramfs.
 
-Patch:  2901_allocate_buffer_on_heap_rather_than_globally.patch
-From:   https://bugs.gentoo.org/646438
-Desc:   Patchwork [v2] platform/x86: dell-laptop: Allocate buffer on heap 
rather than globally Bug #646438
-
 Patch:  4200_fbcondecor.patch
 From:   http://www.mepiscommunity.org/fbcondecor
 Desc:   Bootsplash ported by Conrad Kostecki. (Bug #637434)

diff --git a/2901_allocate_buffer_on_heap_rather_than_globally.patch 
b/2901_allocate_buffer_on_heap_rather_than_globally.patch
deleted file mode 100644
index eb5fecc..000
--- a/2901_allocate_buffer_on_heap_rather_than_globally.patch
+++ /dev/null
@@ -1,460 +0,0 @@
-diff --git a/drivers/platform/x86/dell-laptop.c 
b/drivers/platform/x86/dell-laptop.c
-index cd4725e7e0b5..6e8071d493dc 100644
 a/drivers/platform/x86/dell-laptop.c
-+++ b/drivers/platform/x86/dell-laptop.c
-@@ -78,7 +78,6 @@ static struct platform_driver platform_driver = {
-   }
- };
- 
--static struct calling_interface_buffer *buffer;
- static struct platform_device *platform_device;
- static struct backlight_device *dell_backlight_device;
- static struct rfkill *wifi_rfkill;
-@@ -286,7 +285,8 @@ static const struct dmi_system_id dell_quirks[] 
__initconst = {
-   { }
- };
- 
--void dell_set_arguments(u32 arg0, u32 arg1, u32 arg2, u32 arg3)
-+static void dell_fill_request(struct calling_interface_buffer *buffer,
-+ u32 arg0, u32 arg1, u32 arg2, u32 arg3)
- {
-   memset(buffer, 0, sizeof(struct calling_interface_buffer));
-   buffer->input[0] = arg0;
-@@ -295,7 +295,8 @@ void dell_set_arguments(u32 arg0, u32 arg1, u32 arg2, u32 
arg3)
-   buffer->input[3] = arg3;
- }
- 
--int dell_send_request(u16 class, u16 select)
-+static int dell_send_request(struct calling_interface_buffer *buffer,
-+   u16 class, u16 select)
- {
-   int ret;
- 
-@@ -432,21 +433,22 @@ static int dell_rfkill_set(void *data, bool blocked)
-   int disable = blocked ? 1 : 0;
-   unsigned long radio = (unsigned long)data;
-   int hwswitch_bit = (unsigned long)data - 1;
-+  struct calling_interface_buffer buffer;
-   int hwswitch;
-   int status;
-   int ret;
- 
--  dell_set_arguments(0, 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 0, 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   if (ret)
-   return ret;
--  status = buffer->output[1];
-+  status = buffer.output[1];
- 
--  dell_set_arguments(0x2, 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 0x2, 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   if (ret)
-   return ret;
--  hwswitch = buffer->output[1];
-+  hwswitch = buffer.output[1];
- 
-   /* If the hardware switch controls this radio, and the hardware
-  switch is disabled, always disable the radio */
-@@ -454,8 +456,8 @@ static int dell_rfkill_set(void *data, bool blocked)
-   (status & BIT(0)) && !(status & BIT(16)))
-   disable = 1;
- 
--  dell_set_arguments(1 | (radio<<8) | (disable << 16), 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 1 | (radio<<8) | (disable << 16), 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   return ret;
- }
- 
-@@ -464,9 +466,11 @@ static void dell_rfkill_update_sw_state(struct rfkill 
*rfkill, int radio,
- {
-   if (status & BIT(0)) {
-   /* Has hw-switch, sync sw_state to BIOS */
-+  struct calling_interface_buffer buffer;
-   int block = rfkill_blocked(rfkill);
--  dell_set_arguments(1 | (radio << 8) | (block << 16), 0, 0, 0);
--  dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(,
-+ 1 | (radio << 8) | (block << 16), 0, 0, 0);
-+  dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   } else {
-   /* No hw-switch, sync BIOS state to 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-03-01 Thread Alice Ferrazzi
commit: ea57e40b92f14ab61fb8a8352c4962a324bde09b
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Thu Mar  1 13:46:48 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Thu Mar  1 13:47:06 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=ea57e40b

fix Allocate buffer on heap rather than globally patch
bug #646438

 ...ocate_buffer_on_heap_rather_than_globally.patch | 46 +++---
 1 file changed, 24 insertions(+), 22 deletions(-)

diff --git a/2901_allocate_buffer_on_heap_rather_than_globally.patch 
b/2901_allocate_buffer_on_heap_rather_than_globally.patch
index 1912d9f..eb5fecc 100644
--- a/2901_allocate_buffer_on_heap_rather_than_globally.patch
+++ b/2901_allocate_buffer_on_heap_rather_than_globally.patch
@@ -1,6 +1,8 @@
 dell-laptop.c.orig 2018-02-28 19:24:04.598049000 +
-+++ linux-4.15.0/drivers/platform/x86/dell-laptop.c2018-02-28 
19:40:00.358049000 +
-@@ -78,7 +78,6 @@ static struct platform_driver platform_d
+diff --git a/drivers/platform/x86/dell-laptop.c 
b/drivers/platform/x86/dell-laptop.c
+index cd4725e7e0b5..6e8071d493dc 100644
+--- a/drivers/platform/x86/dell-laptop.c
 b/drivers/platform/x86/dell-laptop.c
+@@ -78,7 +78,6 @@ static struct platform_driver platform_driver = {
}
  };
  
@@ -8,27 +10,27 @@
  static struct platform_device *platform_device;
  static struct backlight_device *dell_backlight_device;
  static struct rfkill *wifi_rfkill;
-@@ -286,7 +285,8 @@ static const struct dmi_system_id dell_q
+@@ -286,7 +285,8 @@ static const struct dmi_system_id dell_quirks[] 
__initconst = {
{ }
  };
  
 -void dell_set_arguments(u32 arg0, u32 arg1, u32 arg2, u32 arg3)
-+void dell_set_arguments(struct calling_interface_buffer *buffer,
-+u32 arg0, u32 arg1, u32 arg2, u32 arg3)
++static void dell_fill_request(struct calling_interface_buffer *buffer,
++ u32 arg0, u32 arg1, u32 arg2, u32 arg3)
  {
memset(buffer, 0, sizeof(struct calling_interface_buffer));
buffer->input[0] = arg0;
-@@ -295,7 +295,8 @@ void dell_set_arguments(u32 arg0, u32 ar
+@@ -295,7 +295,8 @@ void dell_set_arguments(u32 arg0, u32 arg1, u32 arg2, u32 
arg3)
buffer->input[3] = arg3;
  }
  
 -int dell_send_request(u16 class, u16 select)
-+int dell_send_request(struct calling_interface_buffer *buffer,
-+u16 class, u16 select)
++static int dell_send_request(struct calling_interface_buffer *buffer,
++   u16 class, u16 select)
  {
int ret;
  
-@@ -432,21 +433,22 @@ static int dell_rfkill_set(void *data, b
+@@ -432,21 +433,22 @@ static int dell_rfkill_set(void *data, bool blocked)
int disable = blocked ? 1 : 0;
unsigned long radio = (unsigned long)data;
int hwswitch_bit = (unsigned long)data - 1;
@@ -57,7 +59,7 @@
  
/* If the hardware switch controls this radio, and the hardware
   switch is disabled, always disable the radio */
-@@ -454,8 +456,8 @@ static int dell_rfkill_set(void *data, b
+@@ -454,8 +456,8 @@ static int dell_rfkill_set(void *data, bool blocked)
(status & BIT(0)) && !(status & BIT(16)))
disable = 1;
  
@@ -68,7 +70,7 @@
return ret;
  }
  
-@@ -464,9 +466,11 @@ static void dell_rfkill_update_sw_state(
+@@ -464,9 +466,11 @@ static void dell_rfkill_update_sw_state(struct rfkill 
*rfkill, int radio,
  {
if (status & BIT(0)) {
/* Has hw-switch, sync sw_state to BIOS */
@@ -82,7 +84,7 @@
} else {
/* No hw-switch, sync BIOS state to sw_state */
rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16)));
-@@ -483,21 +487,22 @@ static void dell_rfkill_update_hw_state(
+@@ -483,21 +487,22 @@ static void dell_rfkill_update_hw_state(struct rfkill 
*rfkill, int radio,
  static void dell_rfkill_query(struct rfkill *rfkill, void *data)
  {
int radio = ((unsigned long)data & 0xF);
@@ -141,7 +143,7 @@
  
seq_printf(s, "return:\t%d\n", ret);
seq_printf(s, "status:\t0x%X\n", status);
-@@ -610,22 +616,23 @@ static const struct file_operations dell
+@@ -610,22 +616,23 @@ static const struct file_operations dell_debugfs_fops = {
  
  static void dell_update_rfkill(struct work_struct *ignored)
  {
@@ -171,7 +173,7 @@
  
if (wifi_rfkill) {
dell_rfkill_update_hw_state(wifi_rfkill, 1, status, hwswitch);
-@@ -683,6 +690,7 @@ static struct notifier_block dell_laptop
+@@ -683,6 +690,7 @@ static struct notifier_block dell_laptop_rbtn_notifier = {
  
  static int __init dell_setup_rfkill(void)
  {
@@ -179,7 +181,7 @@
int status, ret, whitelisted;
const char *product;
  
-@@ -698,9 +706,9 @@ static int __init dell_setup_rfkill(void
+@@ -698,9 +706,9 @@ static int __init dell_setup_rfkill(void)
if (!force_rfkill && !whitelisted)
return 0;
  
@@ -200,7 +202,7 @@
struct calling_interface_token *token;
int ret;
  

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-28 Thread Alice Ferrazzi
commit: ad2bf1670e8e20a07183cf3e6b500e2aa54b9a0a
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Wed Feb 28 20:04:26 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Wed Feb 28 20:05:28 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=ad2bf167

ia64 fix ptrace (restore from wrong commit)

 1700_ia64_fix_ptrace.patch | 460 -
 1 file changed, 460 deletions(-)

diff --git a/1700_ia64_fix_ptrace.patch b/1700_ia64_fix_ptrace.patch
deleted file mode 100644
index ad48a1a..000
--- a/1700_ia64_fix_ptrace.patch
+++ /dev/null
@@ -1,460 +0,0 @@
-diff --git a/drivers/platform/x86/dell-laptop.c 
b/drivers/platform/x86/dell-laptop.c
-index fc2dfc8..a7b1419 100644
 a/drivers/platform/x86/dell-laptop.c
-+++ b/drivers/platform/x86/dell-laptop.c
-@@ -78,7 +78,6 @@ static struct platform_driver platform_driver = {
-   }
- };
- 
--static struct calling_interface_buffer *buffer;
- static struct platform_device *platform_device;
- static struct backlight_device *dell_backlight_device;
- static struct rfkill *wifi_rfkill;
-@@ -322,7 +321,8 @@ static const struct dmi_system_id dell_quirks[] 
__initconst = {
-   { }
- };
- 
--static void dell_set_arguments(u32 arg0, u32 arg1, u32 arg2, u32 arg3)
-+static void dell_fill_request(struct calling_interface_buffer *buffer,
-+ u32 arg0, u32 arg1, u32 arg2, u32 arg3)
- {
-   memset(buffer, 0, sizeof(struct calling_interface_buffer));
-   buffer->input[0] = arg0;
-@@ -331,7 +331,8 @@ static void dell_set_arguments(u32 arg0, u32 arg1, u32 
arg2, u32 arg3)
-   buffer->input[3] = arg3;
- }
- 
--static int dell_send_request(u16 class, u16 select)
-+static int dell_send_request(struct calling_interface_buffer *buffer,
-+   u16 class, u16 select)
- {
-   int ret;
- 
-@@ -468,21 +469,22 @@ static int dell_rfkill_set(void *data, bool blocked)
-   int disable = blocked ? 1 : 0;
-   unsigned long radio = (unsigned long)data;
-   int hwswitch_bit = (unsigned long)data - 1;
-+  struct calling_interface_buffer buffer;
-   int hwswitch;
-   int status;
-   int ret;
- 
--  dell_set_arguments(0, 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 0, 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   if (ret)
-   return ret;
--  status = buffer->output[1];
-+  status = buffer.output[1];
- 
--  dell_set_arguments(0x2, 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 0x2, 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   if (ret)
-   return ret;
--  hwswitch = buffer->output[1];
-+  hwswitch = buffer.output[1];
- 
-   /* If the hardware switch controls this radio, and the hardware
-  switch is disabled, always disable the radio */
-@@ -490,8 +492,8 @@ static int dell_rfkill_set(void *data, bool blocked)
-   (status & BIT(0)) && !(status & BIT(16)))
-   disable = 1;
- 
--  dell_set_arguments(1 | (radio<<8) | (disable << 16), 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 1 | (radio<<8) | (disable << 16), 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   return ret;
- }
- 
-@@ -500,9 +502,11 @@ static void dell_rfkill_update_sw_state(struct rfkill 
*rfkill, int radio,
- {
-   if (status & BIT(0)) {
-   /* Has hw-switch, sync sw_state to BIOS */
-+  struct calling_interface_buffer buffer;
-   int block = rfkill_blocked(rfkill);
--  dell_set_arguments(1 | (radio << 8) | (block << 16), 0, 0, 0);
--  dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(,
-+ 1 | (radio << 8) | (block << 16), 0, 0, 0);
-+  dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   } else {
-   /* No hw-switch, sync BIOS state to sw_state */
-   rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16)));
-@@ -519,21 +523,22 @@ static void dell_rfkill_update_hw_state(struct rfkill 
*rfkill, int radio,
- static void dell_rfkill_query(struct rfkill *rfkill, void *data)
- {
-   int radio = ((unsigned long)data & 0xF);
-+  struct calling_interface_buffer buffer;
-   int hwswitch;
-   int status;
-   int ret;
- 
--  dell_set_arguments(0, 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
--  status = buffer->output[1];
-+  dell_fill_request(, 0, 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-+  status = buffer.output[1];
- 
-   if (ret != 0 || !(status & BIT(0))) {
-   return;
-   }
- 
--  dell_set_arguments(0, 0x2, 0, 0);
--  ret = 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-28 Thread Alice Ferrazzi
commit: e08bdc6ca7fec4ff403493157ca3ae663bace3a6
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Wed Feb 28 20:06:15 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Wed Feb 28 20:06:15 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=e08bdc6c

ia64 fix ptrace patch

 1700_ia64_fix_ptrace.patch | 87 ++
 1 file changed, 87 insertions(+)

diff --git a/1700_ia64_fix_ptrace.patch b/1700_ia64_fix_ptrace.patch
new file mode 100644
index 000..6173b05
--- /dev/null
+++ b/1700_ia64_fix_ptrace.patch
@@ -0,0 +1,87 @@
+From patchwork Fri Feb  2 22:12:24 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Subject: ia64: fix ptrace(PTRACE_GETREGS) (unbreaks strace, gdb)
+From: Sergei Trofimovich 
+X-Patchwork-Id: 10198159
+Message-Id: <20180202221224.16597-1-sly...@gentoo.org>
+To: Tony Luck , Fenghua Yu ,
+ linux-i...@vger.kernel.org, linux-ker...@vger.kernel.org
+Cc: Sergei Trofimovich 
+Date: Fri,  2 Feb 2018 22:12:24 +
+
+The strace breakage looks like that:
+./strace: get_regs: get_regs_error: Input/output error
+
+It happens because ia64 needs to load unwind tables
+to read certain registers. Unwind tables fail to load
+due to GCC quirk on the following code:
+
+extern char __end_unwind[];
+const struct unw_table_entry *end = (struct unw_table_entry *)table_end;
+table->end = segment_base + end[-1].end_offset;
+
+GCC does not generate correct code for this single memory
+reference after constant propagation (see https://gcc.gnu.org/PR84184).
+Two triggers are required for bad code generation:
+- '__end_unwind' has alignment lower (char), than
+  'struct unw_table_entry' (8).
+- symbol offset is negative.
+
+This commit workarounds it by fixing alignment of '__end_unwind'.
+While at it use hidden symbols to generate shorter gp-relative
+relocations.
+
+CC: Tony Luck 
+CC: Fenghua Yu 
+CC: linux-i...@vger.kernel.org
+CC: linux-ker...@vger.kernel.org
+Bug: https://github.com/strace/strace/issues/33
+Bug: https://gcc.gnu.org/PR84184
+Reported-by: Émeric Maschino 
+Signed-off-by: Sergei Trofimovich 
+Tested-by: stanton_a...@mail.com
+---
+ arch/ia64/include/asm/sections.h |  1 -
+ arch/ia64/kernel/unwind.c| 15 ++-
+ 2 files changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/arch/ia64/include/asm/sections.h 
b/arch/ia64/include/asm/sections.h
+index f3481408594e..0fc4f1757a44 100644
+--- a/arch/ia64/include/asm/sections.h
 b/arch/ia64/include/asm/sections.h
+@@ -24,7 +24,6 @@ extern char __start_gate_mckinley_e9_patchlist[], 
__end_gate_mckinley_e9_patchli
+ extern char __start_gate_vtop_patchlist[], __end_gate_vtop_patchlist[];
+ extern char __start_gate_fsyscall_patchlist[], 
__end_gate_fsyscall_patchlist[];
+ extern char __start_gate_brl_fsys_bubble_down_patchlist[], 
__end_gate_brl_fsys_bubble_down_patchlist[];
+-extern char __start_unwind[], __end_unwind[];
+ extern char __start_ivt_text[], __end_ivt_text[];
+ 
+ #undef dereference_function_descriptor
+diff --git a/arch/ia64/kernel/unwind.c b/arch/ia64/kernel/unwind.c
+index e04efa088902..025ba6700790 100644
+--- a/arch/ia64/kernel/unwind.c
 b/arch/ia64/kernel/unwind.c
+@@ -2243,7 +2243,20 @@ __initcall(create_gate_table);
+ void __init
+ unw_init (void)
+ {
+-  extern char __gp[];
++  #define __ia64_hidden __attribute__((visibility("hidden")))
++  /*
++   * We use hidden symbols to generate more efficient code using
++   * gp-relative addressing.
++   */
++  extern char __gp[] __ia64_hidden;
++  /*
++   * Unwind tables need to have proper alignment as init_unwind_table()
++   * uses negative offsets against '__end_unwind'.
++   * See https://gcc.gnu.org/PR84184
++   */
++  extern const struct unw_table_entry __start_unwind[] __ia64_hidden;
++  extern const struct unw_table_entry __end_unwind[] __ia64_hidden;
++  #undef __ia64_hidden
+   extern void unw_hash_index_t_is_too_narrow (void);
+   long i, off;
+ 



[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-28 Thread Alice Ferrazzi
commit: 0933e08b7a49a8d4cd1a5bfbc3fba0411031c225
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Wed Feb 28 19:53:03 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Wed Feb 28 19:53:03 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=0933e08b

dell-laptop: Allocate buffer on heap rather than globally

 _README|   4 +
 1700_ia64_fix_ptrace.patch | 543 +
 ...ocate_buffer_on_heap_rather_than_globally.patch | 458 +
 3 files changed, 920 insertions(+), 85 deletions(-)

diff --git a/_README b/_README
index a7bb4af..994c735 100644
--- a/_README
+++ b/_README
@@ -99,6 +99,10 @@ Patch:  2900_dev-root-proc-mount-fix.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=438380
 Desc:   Ensure that /dev/root doesn't appear in /proc/mounts when bootint 
without an initramfs.
 
+Patch:  2901_allocate_buffer_on_heap_rather_than_globally.patch
+From:   https://bugs.gentoo.org/646438
+Desc:   Patchwork [v2] platform/x86: dell-laptop: Allocate buffer on heap 
rather than globally Bug #646438
+
 Patch:  4200_fbcondecor.patch
 From:   http://www.mepiscommunity.org/fbcondecor
 Desc:   Bootsplash ported by Conrad Kostecki. (Bug #637434)

diff --git a/1700_ia64_fix_ptrace.patch b/1700_ia64_fix_ptrace.patch
index 6173b05..ad48a1a 100644
--- a/1700_ia64_fix_ptrace.patch
+++ b/1700_ia64_fix_ptrace.patch
@@ -1,87 +1,460 @@
-From patchwork Fri Feb  2 22:12:24 2018
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 8bit
-Subject: ia64: fix ptrace(PTRACE_GETREGS) (unbreaks strace, gdb)
-From: Sergei Trofimovich 
-X-Patchwork-Id: 10198159
-Message-Id: <20180202221224.16597-1-sly...@gentoo.org>
-To: Tony Luck , Fenghua Yu ,
- linux-i...@vger.kernel.org, linux-ker...@vger.kernel.org
-Cc: Sergei Trofimovich 
-Date: Fri,  2 Feb 2018 22:12:24 +
-
-The strace breakage looks like that:
-./strace: get_regs: get_regs_error: Input/output error
-
-It happens because ia64 needs to load unwind tables
-to read certain registers. Unwind tables fail to load
-due to GCC quirk on the following code:
-
-extern char __end_unwind[];
-const struct unw_table_entry *end = (struct unw_table_entry *)table_end;
-table->end = segment_base + end[-1].end_offset;
-
-GCC does not generate correct code for this single memory
-reference after constant propagation (see https://gcc.gnu.org/PR84184).
-Two triggers are required for bad code generation:
-- '__end_unwind' has alignment lower (char), than
-  'struct unw_table_entry' (8).
-- symbol offset is negative.
-
-This commit workarounds it by fixing alignment of '__end_unwind'.
-While at it use hidden symbols to generate shorter gp-relative
-relocations.
-
-CC: Tony Luck 
-CC: Fenghua Yu 
-CC: linux-i...@vger.kernel.org
-CC: linux-ker...@vger.kernel.org
-Bug: https://github.com/strace/strace/issues/33
-Bug: https://gcc.gnu.org/PR84184
-Reported-by: Émeric Maschino 
-Signed-off-by: Sergei Trofimovich 
-Tested-by: stanton_a...@mail.com

- arch/ia64/include/asm/sections.h |  1 -
- arch/ia64/kernel/unwind.c| 15 ++-
- 2 files changed, 14 insertions(+), 2 deletions(-)
-
-diff --git a/arch/ia64/include/asm/sections.h 
b/arch/ia64/include/asm/sections.h
-index f3481408594e..0fc4f1757a44 100644
 a/arch/ia64/include/asm/sections.h
-+++ b/arch/ia64/include/asm/sections.h
-@@ -24,7 +24,6 @@ extern char __start_gate_mckinley_e9_patchlist[], 
__end_gate_mckinley_e9_patchli
- extern char __start_gate_vtop_patchlist[], __end_gate_vtop_patchlist[];
- extern char __start_gate_fsyscall_patchlist[], 
__end_gate_fsyscall_patchlist[];
- extern char __start_gate_brl_fsys_bubble_down_patchlist[], 
__end_gate_brl_fsys_bubble_down_patchlist[];
--extern char __start_unwind[], __end_unwind[];
- extern char __start_ivt_text[], __end_ivt_text[];
- 
- #undef dereference_function_descriptor
-diff --git a/arch/ia64/kernel/unwind.c b/arch/ia64/kernel/unwind.c
-index e04efa088902..025ba6700790 100644
 a/arch/ia64/kernel/unwind.c
-+++ b/arch/ia64/kernel/unwind.c
-@@ -2243,7 +2243,20 @@ __initcall(create_gate_table);
- void __init
- unw_init (void)
+diff --git a/drivers/platform/x86/dell-laptop.c 
b/drivers/platform/x86/dell-laptop.c
+index fc2dfc8..a7b1419 100644
+--- a/drivers/platform/x86/dell-laptop.c
 b/drivers/platform/x86/dell-laptop.c
+@@ -78,7 +78,6 @@ static struct platform_driver platform_driver = {
+   }
+ };
+ 
+-static struct calling_interface_buffer *buffer;
+ static struct platform_device *platform_device;
+ static struct backlight_device *dell_backlight_device;
+ static struct rfkill *wifi_rfkill;
+@@ -322,7 +321,8 @@ static const struct dmi_system_id dell_quirks[] 
__initconst = {
+   { }
+ };
+ 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-28 Thread Alice Ferrazzi
commit: c416f80615aaa67080d64834d2281d57607a4445
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Wed Feb 28 15:16:38 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Wed Feb 28 15:16:38 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=c416f806

removed upstreamd patch

 _README|   4 -
 ...ocate_buffer_on_heap_rather_than_globally.patch | 489 -
 2 files changed, 493 deletions(-)

diff --git a/_README b/_README
index 2454462..a7bb4af 100644
--- a/_README
+++ b/_README
@@ -99,10 +99,6 @@ Patch:  2900_dev-root-proc-mount-fix.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=438380
 Desc:   Ensure that /dev/root doesn't appear in /proc/mounts when bootint 
without an initramfs.
 
-Patch:  2901_allocate_buffer_on_heap_rather_than_globally.patch
-From:   https://patchwork.kernel.org/patch/10194287/
-Desc:   Patchwork [v2] platform/x86: dell-laptop: Allocate buffer on heap 
rather than globally.
-
 Patch:  4200_fbcondecor.patch
 From:   http://www.mepiscommunity.org/fbcondecor
 Desc:   Bootsplash ported by Conrad Kostecki. (Bug #637434)

diff --git a/2901_allocate_buffer_on_heap_rather_than_globally.patch 
b/2901_allocate_buffer_on_heap_rather_than_globally.patch
deleted file mode 100644
index dd2f7ad..000
--- a/2901_allocate_buffer_on_heap_rather_than_globally.patch
+++ /dev/null
@@ -1,489 +0,0 @@
-From patchwork Wed Jan 31 17:47:35 2018
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 8bit
-Subject: [v2] platform/x86: dell-laptop: Allocate buffer on heap rather than
- globally
-From: Mario Limonciello 
-X-Patchwork-Id: 10194287
-Message-Id: <1517420855-19374-1-git-send-email-mario.limoncie...@dell.com>
-To: dvh...@infradead.org, Andy Shevchenko 
-Cc: pali.ro...@gmail.com, LKML ,
- platform-driver-...@vger.kernel.org,
- Mario Limonciello 
-Date: Wed, 31 Jan 2018 11:47:35 -0600
-
-There is no longer a need for the buffer to be defined in
-first 4GB physical address space.
-
-Furthermore there may be race conditions with multiple different functions
-working on a module wide buffer causing incorrect results.
-
-Fixes: 549b4930f057658dc50d8010e66219233119a4d8
-Suggested-by: Pali Rohar 
-Signed-off-by: Mario Limonciello 
-Reviewed-by: Pali Rohár 

- drivers/platform/x86/dell-laptop.c | 188 -
- 1 file changed, 103 insertions(+), 85 deletions(-)
-
-diff --git a/drivers/platform/x86/dell-laptop.c 
b/drivers/platform/x86/dell-laptop.c
-index fc2dfc8..a7b1419 100644
 a/drivers/platform/x86/dell-laptop.c
-+++ b/drivers/platform/x86/dell-laptop.c
-@@ -78,7 +78,6 @@ static struct platform_driver platform_driver = {
-   }
- };
- 
--static struct calling_interface_buffer *buffer;
- static struct platform_device *platform_device;
- static struct backlight_device *dell_backlight_device;
- static struct rfkill *wifi_rfkill;
-@@ -322,7 +321,8 @@ static const struct dmi_system_id dell_quirks[] 
__initconst = {
-   { }
- };
- 
--static void dell_set_arguments(u32 arg0, u32 arg1, u32 arg2, u32 arg3)
-+static void dell_fill_request(struct calling_interface_buffer *buffer,
-+ u32 arg0, u32 arg1, u32 arg2, u32 arg3)
- {
-   memset(buffer, 0, sizeof(struct calling_interface_buffer));
-   buffer->input[0] = arg0;
-@@ -331,7 +331,8 @@ static void dell_set_arguments(u32 arg0, u32 arg1, u32 
arg2, u32 arg3)
-   buffer->input[3] = arg3;
- }
- 
--static int dell_send_request(u16 class, u16 select)
-+static int dell_send_request(struct calling_interface_buffer *buffer,
-+   u16 class, u16 select)
- {
-   int ret;
- 
-@@ -468,21 +469,22 @@ static int dell_rfkill_set(void *data, bool blocked)
-   int disable = blocked ? 1 : 0;
-   unsigned long radio = (unsigned long)data;
-   int hwswitch_bit = (unsigned long)data - 1;
-+  struct calling_interface_buffer buffer;
-   int hwswitch;
-   int status;
-   int ret;
- 
--  dell_set_arguments(0, 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 0, 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   if (ret)
-   return ret;
--  status = buffer->output[1];
-+  status = buffer.output[1];
- 
--  dell_set_arguments(0x2, 0, 0, 0);
--  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
-+  dell_fill_request(, 0x2, 0, 0, 0);
-+  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
-   if (ret)
-   return ret;
--  hwswitch = buffer->output[1];
-+  hwswitch = buffer.output[1];
- 
-   /* If the hardware switch controls this radio, and the hardware
-  

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-28 Thread Alice Ferrazzi
commit: 006fd7a2fd975934fe667e0ab4c9a35d03ab9ce4
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Wed Feb 28 14:57:21 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Wed Feb 28 14:57:21 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=006fd7a2

linux kernel 4.15.7

 _README |4 +
 1006_linux-4.15.7.patch | 1984 +++
 2 files changed, 1988 insertions(+)

diff --git a/_README b/_README
index 8e1b91f..2454462 100644
--- a/_README
+++ b/_README
@@ -67,6 +67,10 @@ Patch:  1005_linux-4.15.6.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.6
 
+Patch:  1006_linux-4.15.7.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.7
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1006_linux-4.15.7.patch b/1006_linux-4.15.7.patch
new file mode 100644
index 000..b68c91a
--- /dev/null
+++ b/1006_linux-4.15.7.patch
@@ -0,0 +1,1984 @@
+diff --git a/Makefile b/Makefile
+index 51563c76bdf6..49f52050 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 6
++SUBLEVEL = 7
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
+index 46dee071bab1..1bcf03b5cd04 100644
+--- a/arch/arm64/kernel/cpufeature.c
 b/arch/arm64/kernel/cpufeature.c
+@@ -197,9 +197,11 @@ static const struct arm64_ftr_bits ftr_id_aa64mmfr2[] = {
+ };
+ 
+ static const struct arm64_ftr_bits ftr_ctr[] = {
+-  ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_EXACT, 31, 1, 1),   /* RAO 
*/
++  ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_EXACT, 31, 1, 1),   
/* RES1 */
++  ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_LOWER_SAFE, 29, 1, 1),  
/* DIC */
++  ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_LOWER_SAFE, 28, 1, 1),  
/* IDC */
+   ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_HIGHER_SAFE, 24, 4, 0), 
/* CWG */
+-  ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_LOWER_SAFE, 20, 4, 0),  
/* ERG */
++  ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_HIGHER_SAFE, 20, 4, 0), 
/* ERG */
+   ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_LOWER_SAFE, 16, 4, 1),  
/* DminLine */
+   /*
+* Linux can handle differing I-cache policies. Userspace JITs will
+diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
+index 583fd8154695..d6ca5fccb229 100644
+--- a/arch/arm64/kernel/process.c
 b/arch/arm64/kernel/process.c
+@@ -221,8 +221,15 @@ void __show_regs(struct pt_regs *regs)
+ 
+   show_regs_print_info(KERN_DEFAULT);
+   print_pstate(regs);
+-  print_symbol("pc : %s\n", regs->pc);
+-  print_symbol("lr : %s\n", lr);
++
++  if (!user_mode(regs)) {
++  print_symbol("pc : %s\n", regs->pc);
++  print_symbol("lr : %s\n", lr);
++  } else {
++  printk("pc : %016llx\n", regs->pc);
++  printk("lr : %016llx\n", lr);
++  }
++
+   printk("sp : %016llx\n", sp);
+ 
+   i = top_reg;
+diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel/traps.c
+index 3d3588fcd1c7..c759d9ca0e5a 100644
+--- a/arch/arm64/kernel/traps.c
 b/arch/arm64/kernel/traps.c
+@@ -57,7 +57,7 @@ static const char *handler[]= {
+   "Error"
+ };
+ 
+-int show_unhandled_signals = 1;
++int show_unhandled_signals = 0;
+ 
+ static void dump_backtrace_entry(unsigned long where)
+ {
+@@ -526,14 +526,6 @@ asmlinkage long do_ni_syscall(struct pt_regs *regs)
+   }
+ #endif
+ 
+-  if (show_unhandled_signals_ratelimited()) {
+-  pr_info("%s[%d]: syscall %d\n", current->comm,
+-  task_pid_nr(current), regs->syscallno);
+-  dump_instr("", regs);
+-  if (user_mode(regs))
+-  __show_regs(regs);
+-  }
+-
+   return sys_ni_syscall();
+ }
+ 
+diff --git a/arch/arm64/mm/proc.S b/arch/arm64/mm/proc.S
+index 248f2e7b24ab..a233975848cc 100644
+--- a/arch/arm64/mm/proc.S
 b/arch/arm64/mm/proc.S
+@@ -155,7 +155,7 @@ ENDPROC(cpu_do_switch_mm)
+ 
+ .macro__idmap_cpu_set_reserved_ttbr1, tmp1, tmp2
+   adrp\tmp1, empty_zero_page
+-  msr ttbr1_el1, \tmp2
++  msr ttbr1_el1, \tmp1
+   isb
+   tlbivmalle1
+   dsb nsh
+diff --git a/arch/microblaze/Makefile b/arch/microblaze/Makefile
+index 830ee7d42fa0..d269dd4b8279 100644
+--- a/arch/microblaze/Makefile
 b/arch/microblaze/Makefile
+@@ -36,16 +36,21 @@ endif
+ CPUFLAGS-$(CONFIG_XILINX_MICROBLAZE0_USE_DIV) += -mno-xl-soft-div
+ CPUFLAGS-$(CONFIG_XILINX_MICROBLAZE0_USE_BARREL) += -mxl-barrel-shift
+ CPUFLAGS-$(CONFIG_XILINX_MICROBLAZE0_USE_PCMP_INSTR) += -mxl-pattern-compare
+-CPUFLAGS-$(CONFIG_BIG_ENDIAN) += -mbig-endian
+-CPUFLAGS-$(CONFIG_LITTLE_ENDIAN) += 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-26 Thread Alice Ferrazzi
commit: ed41d637e2edb6303fe73f5d8be583a5d93046df
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Mon Feb 26 14:13:45 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Mon Feb 26 14:13:45 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=ed41d637

dell-laptop: Allocate buffer on heap rather than globally

 _README|   4 +
 ...ocate_buffer_on_heap_rather_than_globally.patch | 489 +
 2 files changed, 493 insertions(+)

diff --git a/_README b/_README
index 828cfeb..af0f948 100644
--- a/_README
+++ b/_README
@@ -91,6 +91,10 @@ Patch:  2900_dev-root-proc-mount-fix.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=438380
 Desc:   Ensure that /dev/root doesn't appear in /proc/mounts when bootint 
without an initramfs.
 
+Patch:  2901_allocate_buffer_on_heap_rather_than_globally.patch
+From:   https://patchwork.kernel.org/patch/10194287/
+Desc:   Patchwork [v2] platform/x86: dell-laptop: Allocate buffer on heap 
rather than globally
+
 Patch:  4200_fbcondecor.patch
 From:   http://www.mepiscommunity.org/fbcondecor
 Desc:   Bootsplash ported by Conrad Kostecki. (Bug #637434)

diff --git a/2901_allocate_buffer_on_heap_rather_than_globally.patch 
b/2901_allocate_buffer_on_heap_rather_than_globally.patch
new file mode 100644
index 000..dd2f7ad
--- /dev/null
+++ b/2901_allocate_buffer_on_heap_rather_than_globally.patch
@@ -0,0 +1,489 @@
+From patchwork Wed Jan 31 17:47:35 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Subject: [v2] platform/x86: dell-laptop: Allocate buffer on heap rather than
+ globally
+From: Mario Limonciello 
+X-Patchwork-Id: 10194287
+Message-Id: <1517420855-19374-1-git-send-email-mario.limoncie...@dell.com>
+To: dvh...@infradead.org, Andy Shevchenko 
+Cc: pali.ro...@gmail.com, LKML ,
+ platform-driver-...@vger.kernel.org,
+ Mario Limonciello 
+Date: Wed, 31 Jan 2018 11:47:35 -0600
+
+There is no longer a need for the buffer to be defined in
+first 4GB physical address space.
+
+Furthermore there may be race conditions with multiple different functions
+working on a module wide buffer causing incorrect results.
+
+Fixes: 549b4930f057658dc50d8010e66219233119a4d8
+Suggested-by: Pali Rohar 
+Signed-off-by: Mario Limonciello 
+Reviewed-by: Pali Rohár 
+---
+ drivers/platform/x86/dell-laptop.c | 188 -
+ 1 file changed, 103 insertions(+), 85 deletions(-)
+
+diff --git a/drivers/platform/x86/dell-laptop.c 
b/drivers/platform/x86/dell-laptop.c
+index fc2dfc8..a7b1419 100644
+--- a/drivers/platform/x86/dell-laptop.c
 b/drivers/platform/x86/dell-laptop.c
+@@ -78,7 +78,6 @@ static struct platform_driver platform_driver = {
+   }
+ };
+ 
+-static struct calling_interface_buffer *buffer;
+ static struct platform_device *platform_device;
+ static struct backlight_device *dell_backlight_device;
+ static struct rfkill *wifi_rfkill;
+@@ -322,7 +321,8 @@ static const struct dmi_system_id dell_quirks[] 
__initconst = {
+   { }
+ };
+ 
+-static void dell_set_arguments(u32 arg0, u32 arg1, u32 arg2, u32 arg3)
++static void dell_fill_request(struct calling_interface_buffer *buffer,
++ u32 arg0, u32 arg1, u32 arg2, u32 arg3)
+ {
+   memset(buffer, 0, sizeof(struct calling_interface_buffer));
+   buffer->input[0] = arg0;
+@@ -331,7 +331,8 @@ static void dell_set_arguments(u32 arg0, u32 arg1, u32 
arg2, u32 arg3)
+   buffer->input[3] = arg3;
+ }
+ 
+-static int dell_send_request(u16 class, u16 select)
++static int dell_send_request(struct calling_interface_buffer *buffer,
++   u16 class, u16 select)
+ {
+   int ret;
+ 
+@@ -468,21 +469,22 @@ static int dell_rfkill_set(void *data, bool blocked)
+   int disable = blocked ? 1 : 0;
+   unsigned long radio = (unsigned long)data;
+   int hwswitch_bit = (unsigned long)data - 1;
++  struct calling_interface_buffer buffer;
+   int hwswitch;
+   int status;
+   int ret;
+ 
+-  dell_set_arguments(0, 0, 0, 0);
+-  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
++  dell_fill_request(, 0, 0, 0, 0);
++  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
+   if (ret)
+   return ret;
+-  status = buffer->output[1];
++  status = buffer.output[1];
+ 
+-  dell_set_arguments(0x2, 0, 0, 0);
+-  ret = dell_send_request(CLASS_INFO, SELECT_RFKILL);
++  dell_fill_request(, 0x2, 0, 0, 0);
++  ret = dell_send_request(, CLASS_INFO, SELECT_RFKILL);
+   if (ret)
+   return ret;
+-  hwswitch = buffer->output[1];
++  hwswitch = buffer.output[1];
+ 
+   /* If the hardware switch controls this radio, 

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-26 Thread Alice Ferrazzi
commit: f98193ddca07dc67810a96082be4e2a6d8026a66
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Mon Feb 26 14:17:39 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Mon Feb 26 14:17:39 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=f98193dd

ia64 fix ptrace

 _README|  6 +++-
 1700_ia64_fix_ptrace.patch | 87 ++
 2 files changed, 92 insertions(+), 1 deletion(-)

diff --git a/_README b/_README
index af0f948..8e1b91f 100644
--- a/_README
+++ b/_README
@@ -75,6 +75,10 @@ Patch:  
1510_fs-enable-link-security-restrictions-by-default.patch
 From:   
http://sources.debian.net/src/linux/3.16.7-ckt4-3/debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch/
 Desc:   Enable link security restrictions by default.
 
+Patch:  1700_ia64_fix_ptrace.patch 
+From:   https://patchwork.kernel.org/patch/10198159/
+Desc:   ia64: fix ptrace(PTRACE_GETREGS) (unbreaks strace, gdb).
+
 Patch:  2300_enable-poweroff-on-Mac-Pro-11.patch
 From:   
http://kernel.ubuntu.com/git/ubuntu/ubuntu-xenial.git/patch/drivers/pci/quirks.c?id=5080ff61a438f3dd80b88b423e1a20791d8a774c
 Desc:   Workaround to enable poweroff on Mac Pro 11. See bug #601964.
@@ -93,7 +97,7 @@ Desc:   Ensure that /dev/root doesn't appear in /proc/mounts 
when bootint withou
 
 Patch:  2901_allocate_buffer_on_heap_rather_than_globally.patch
 From:   https://patchwork.kernel.org/patch/10194287/
-Desc:   Patchwork [v2] platform/x86: dell-laptop: Allocate buffer on heap 
rather than globally
+Desc:   Patchwork [v2] platform/x86: dell-laptop: Allocate buffer on heap 
rather than globally.
 
 Patch:  4200_fbcondecor.patch
 From:   http://www.mepiscommunity.org/fbcondecor

diff --git a/1700_ia64_fix_ptrace.patch b/1700_ia64_fix_ptrace.patch
new file mode 100644
index 000..6173b05
--- /dev/null
+++ b/1700_ia64_fix_ptrace.patch
@@ -0,0 +1,87 @@
+From patchwork Fri Feb  2 22:12:24 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Subject: ia64: fix ptrace(PTRACE_GETREGS) (unbreaks strace, gdb)
+From: Sergei Trofimovich 
+X-Patchwork-Id: 10198159
+Message-Id: <20180202221224.16597-1-sly...@gentoo.org>
+To: Tony Luck , Fenghua Yu ,
+ linux-i...@vger.kernel.org, linux-ker...@vger.kernel.org
+Cc: Sergei Trofimovich 
+Date: Fri,  2 Feb 2018 22:12:24 +
+
+The strace breakage looks like that:
+./strace: get_regs: get_regs_error: Input/output error
+
+It happens because ia64 needs to load unwind tables
+to read certain registers. Unwind tables fail to load
+due to GCC quirk on the following code:
+
+extern char __end_unwind[];
+const struct unw_table_entry *end = (struct unw_table_entry *)table_end;
+table->end = segment_base + end[-1].end_offset;
+
+GCC does not generate correct code for this single memory
+reference after constant propagation (see https://gcc.gnu.org/PR84184).
+Two triggers are required for bad code generation:
+- '__end_unwind' has alignment lower (char), than
+  'struct unw_table_entry' (8).
+- symbol offset is negative.
+
+This commit workarounds it by fixing alignment of '__end_unwind'.
+While at it use hidden symbols to generate shorter gp-relative
+relocations.
+
+CC: Tony Luck 
+CC: Fenghua Yu 
+CC: linux-i...@vger.kernel.org
+CC: linux-ker...@vger.kernel.org
+Bug: https://github.com/strace/strace/issues/33
+Bug: https://gcc.gnu.org/PR84184
+Reported-by: Émeric Maschino 
+Signed-off-by: Sergei Trofimovich 
+Tested-by: stanton_a...@mail.com
+---
+ arch/ia64/include/asm/sections.h |  1 -
+ arch/ia64/kernel/unwind.c| 15 ++-
+ 2 files changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/arch/ia64/include/asm/sections.h 
b/arch/ia64/include/asm/sections.h
+index f3481408594e..0fc4f1757a44 100644
+--- a/arch/ia64/include/asm/sections.h
 b/arch/ia64/include/asm/sections.h
+@@ -24,7 +24,6 @@ extern char __start_gate_mckinley_e9_patchlist[], 
__end_gate_mckinley_e9_patchli
+ extern char __start_gate_vtop_patchlist[], __end_gate_vtop_patchlist[];
+ extern char __start_gate_fsyscall_patchlist[], 
__end_gate_fsyscall_patchlist[];
+ extern char __start_gate_brl_fsys_bubble_down_patchlist[], 
__end_gate_brl_fsys_bubble_down_patchlist[];
+-extern char __start_unwind[], __end_unwind[];
+ extern char __start_ivt_text[], __end_ivt_text[];
+ 
+ #undef dereference_function_descriptor
+diff --git a/arch/ia64/kernel/unwind.c b/arch/ia64/kernel/unwind.c
+index e04efa088902..025ba6700790 100644
+--- a/arch/ia64/kernel/unwind.c
 b/arch/ia64/kernel/unwind.c
+@@ -2243,7 +2243,20 @@ __initcall(create_gate_table);
+ void __init
+ unw_init (void)
+ {
+-  extern char __gp[];
++  #define __ia64_hidden __attribute__((visibility("hidden")))
++  /*
++   

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-25 Thread Alice Ferrazzi
commit: d37109d7587a6faca28251272766319005a4c30b
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Sun Feb 25 13:45:54 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Sun Feb 25 13:45:54 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=d37109d7

linux kernel 4.15.6

 _README |4 +
 1005_linux-4.15.6.patch | 1556 +++
 2 files changed, 1560 insertions(+)

diff --git a/_README b/_README
index f22a6fe..828cfeb 100644
--- a/_README
+++ b/_README
@@ -63,6 +63,10 @@ Patch:  1004_linux-4.15.5.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.5
 
+Patch:  1005_linux-4.15.6.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.6
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1005_linux-4.15.6.patch b/1005_linux-4.15.6.patch
new file mode 100644
index 000..dc80bb9
--- /dev/null
+++ b/1005_linux-4.15.6.patch
@@ -0,0 +1,1556 @@
+diff --git a/Makefile b/Makefile
+index 28c537fbe328..51563c76bdf6 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 5
++SUBLEVEL = 6
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/arm/common/bL_switcher_dummy_if.c 
b/arch/arm/common/bL_switcher_dummy_if.c
+index 4c10c6452678..f4dc1714a79e 100644
+--- a/arch/arm/common/bL_switcher_dummy_if.c
 b/arch/arm/common/bL_switcher_dummy_if.c
+@@ -57,3 +57,7 @@ static struct miscdevice bL_switcher_device = {
+   _switcher_fops
+ };
+ module_misc_device(bL_switcher_device);
++
++MODULE_AUTHOR("Nicolas Pitre ");
++MODULE_LICENSE("GPL v2");
++MODULE_DESCRIPTION("big.LITTLE switcher dummy user interface");
+diff --git a/arch/arm64/boot/dts/mediatek/mt8173.dtsi 
b/arch/arm64/boot/dts/mediatek/mt8173.dtsi
+index 26396ef53bde..ea407aff1251 100644
+--- a/arch/arm64/boot/dts/mediatek/mt8173.dtsi
 b/arch/arm64/boot/dts/mediatek/mt8173.dtsi
+@@ -81,6 +81,7 @@
+   reg = <0x000>;
+   enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
++  #cooling-cells = <2>;
+   };
+ 
+   cpu1: cpu@1 {
+@@ -97,6 +98,7 @@
+   reg = <0x100>;
+   enable-method = "psci";
+   cpu-idle-states = <_SLEEP_0>;
++  #cooling-cells = <2>;
+   };
+ 
+   cpu3: cpu@101 {
+diff --git a/arch/x86/crypto/twofish-x86_64-asm_64-3way.S 
b/arch/x86/crypto/twofish-x86_64-asm_64-3way.S
+index 1c3b7ceb36d2..e7273a606a07 100644
+--- a/arch/x86/crypto/twofish-x86_64-asm_64-3way.S
 b/arch/x86/crypto/twofish-x86_64-asm_64-3way.S
+@@ -55,29 +55,31 @@
+ #define RAB1bl %bl
+ #define RAB2bl %cl
+ 
++#define CD0 0x0(%rsp)
++#define CD1 0x8(%rsp)
++#define CD2 0x10(%rsp)
++
++# used only before/after all rounds
+ #define RCD0 %r8
+ #define RCD1 %r9
+ #define RCD2 %r10
+ 
+-#define RCD0d %r8d
+-#define RCD1d %r9d
+-#define RCD2d %r10d
+-
+-#define RX0 %rbp
+-#define RX1 %r11
+-#define RX2 %r12
++# used only during rounds
++#define RX0 %r8
++#define RX1 %r9
++#define RX2 %r10
+ 
+-#define RX0d %ebp
+-#define RX1d %r11d
+-#define RX2d %r12d
++#define RX0d %r8d
++#define RX1d %r9d
++#define RX2d %r10d
+ 
+-#define RY0 %r13
+-#define RY1 %r14
+-#define RY2 %r15
++#define RY0 %r11
++#define RY1 %r12
++#define RY2 %r13
+ 
+-#define RY0d %r13d
+-#define RY1d %r14d
+-#define RY2d %r15d
++#define RY0d %r11d
++#define RY1d %r12d
++#define RY2d %r13d
+ 
+ #define RT0 %rdx
+ #define RT1 %rsi
+@@ -85,6 +87,8 @@
+ #define RT0d %edx
+ #define RT1d %esi
+ 
++#define RT1bl %sil
++
+ #define do16bit_ror(rot, op1, op2, T0, T1, tmp1, tmp2, ab, dst) \
+   movzbl ab ## bl,tmp2 ## d; \
+   movzbl ab ## bh,tmp1 ## d; \
+@@ -92,6 +96,11 @@
+   op1##l T0(CTX, tmp2, 4),dst ## d; \
+   op2##l T1(CTX, tmp1, 4),dst ## d;
+ 
++#define swap_ab_with_cd(ab, cd, tmp)  \
++  movq cd, tmp;   \
++  movq ab, cd;\
++  movq tmp, ab;
++
+ /*
+  * Combined G1 & G2 function. Reordered with help of rotates to have moves
+  * at begining.
+@@ -110,15 +119,15 @@
+   /* G1,2 && G2,2 */ \
+   do16bit_ror(32, xor, xor, Tx2, Tx3, RT0, RT1, ab ## 0, x ## 0); \
+   do16bit_ror(16, xor, xor, Ty3, Ty0, RT0, RT1, ab ## 0, y ## 0); \
+-  xchgq cd ## 0, ab ## 0; \
++  swap_ab_with_cd(ab ## 0, cd ## 0, RT0); \
+   \
+   do16bit_ror(32, xor, xor, Tx2, Tx3, RT0, RT1, ab ## 1, x ## 1); \
+   do16bit_ror(16, xor, xor, Ty3, Ty0, RT0, RT1, ab ## 1, y ## 1); \
+-  xchgq cd ## 1, ab ## 1; \
++  swap_ab_with_cd(ab ## 1, cd ## 1, RT0); \
+   \
+   do16bit_ror(32, xor, xor, Tx2, Tx3, RT0, RT1, ab ## 2, x ## 2); \
+   

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-12 Thread Alice Ferrazzi
commit: a0d0349612049072e45ad7d28ff2422914b4b2dd
Author: Alice Ferrazzi  gentoo  org>
AuthorDate: Mon Feb 12 09:01:01 2018 +
Commit: Alice Ferrazzi  gentoo  org>
CommitDate: Mon Feb 12 09:01:01 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=a0d03496

linux kernel 4.15.3

 _README |   4 +
 1002_linux-4.15.3.patch | 776 
 2 files changed, 780 insertions(+)

diff --git a/_README b/_README
index db575f6..635b977 100644
--- a/_README
+++ b/_README
@@ -51,6 +51,10 @@ Patch:  1001_linux-4.15.2.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.2
 
+Patch:  1002_linux-4.15.3.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.3
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1002_linux-4.15.3.patch b/1002_linux-4.15.3.patch
new file mode 100644
index 000..7d0d7a2
--- /dev/null
+++ b/1002_linux-4.15.3.patch
@@ -0,0 +1,776 @@
+diff --git a/Makefile b/Makefile
+index 54f1bc10b531..13566ad7863a 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 2
++SUBLEVEL = 3
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c
+index 9267cbdb14d2..3ced1ba1fd11 100644
+--- a/crypto/tcrypt.c
 b/crypto/tcrypt.c
+@@ -198,11 +198,13 @@ static void sg_init_aead(struct scatterlist *sg, char 
*xbuf[XBUFSIZE],
+   }
+ 
+   sg_init_table(sg, np + 1);
+-  np--;
++  if (rem)
++  np--;
+   for (k = 0; k < np; k++)
+   sg_set_buf([k + 1], xbuf[k], PAGE_SIZE);
+ 
+-  sg_set_buf([k + 1], xbuf[k], rem);
++  if (rem)
++  sg_set_buf([k + 1], xbuf[k], rem);
+ }
+ 
+ static void test_aead_speed(const char *algo, int enc, unsigned int secs,
+diff --git a/drivers/gpio/gpio-uniphier.c b/drivers/gpio/gpio-uniphier.c
+index 016d7427ebfa..761d8279abca 100644
+--- a/drivers/gpio/gpio-uniphier.c
 b/drivers/gpio/gpio-uniphier.c
+@@ -505,4 +505,4 @@ module_platform_driver(uniphier_gpio_driver);
+ 
+ MODULE_AUTHOR("Masahiro Yamada ");
+ MODULE_DESCRIPTION("UniPhier GPIO driver");
+-MODULE_LICENSE("GPL");
++MODULE_LICENSE("GPL v2");
+diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_util.c 
b/drivers/media/platform/mtk-vcodec/mtk_vcodec_util.c
+index 46768c056193..0c28d0b995cc 100644
+--- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_util.c
 b/drivers/media/platform/mtk-vcodec/mtk_vcodec_util.c
+@@ -115,3 +115,6 @@ struct mtk_vcodec_ctx *mtk_vcodec_get_curr_ctx(struct 
mtk_vcodec_dev *dev)
+   return ctx;
+ }
+ EXPORT_SYMBOL(mtk_vcodec_get_curr_ctx);
++
++MODULE_LICENSE("GPL v2");
++MODULE_DESCRIPTION("Mediatek video codec driver");
+diff --git a/drivers/media/platform/soc_camera/soc_scale_crop.c 
b/drivers/media/platform/soc_camera/soc_scale_crop.c
+index 270ec613c27c..6164102e6f9f 100644
+--- a/drivers/media/platform/soc_camera/soc_scale_crop.c
 b/drivers/media/platform/soc_camera/soc_scale_crop.c
+@@ -420,3 +420,7 @@ void soc_camera_calc_client_output(struct 
soc_camera_device *icd,
+   mf->height = soc_camera_shift_scale(rect->height, shift, scale_v);
+ }
+ EXPORT_SYMBOL(soc_camera_calc_client_output);
++
++MODULE_DESCRIPTION("soc-camera scaling-cropping functions");
++MODULE_AUTHOR("Guennadi Liakhovetski ");
++MODULE_LICENSE("GPL");
+diff --git a/drivers/media/platform/tegra-cec/tegra_cec.c 
b/drivers/media/platform/tegra-cec/tegra_cec.c
+index 807c94c70049..92f93a880015 100644
+--- a/drivers/media/platform/tegra-cec/tegra_cec.c
 b/drivers/media/platform/tegra-cec/tegra_cec.c
+@@ -493,3 +493,8 @@ static struct platform_driver tegra_cec_driver = {
+ };
+ 
+ module_platform_driver(tegra_cec_driver);
++
++MODULE_DESCRIPTION("Tegra HDMI CEC driver");
++MODULE_AUTHOR("NVIDIA CORPORATION");
++MODULE_AUTHOR("Cisco Systems, Inc. and/or its affiliates");
++MODULE_LICENSE("GPL v2");
+diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c 
b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
+index f7080d0ab874..46b0372dd032 100644
+--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
 b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
+@@ -3891,7 +3891,7 @@ static void qlcnic_83xx_flush_mbx_queue(struct 
qlcnic_adapter *adapter)
+   struct list_head *head = >cmd_q;
+   struct qlcnic_cmd_args *cmd = NULL;
+ 
+-  spin_lock(>queue_lock);
++  spin_lock_bh(>queue_lock);
+ 
+   while (!list_empty(head)) {
+   cmd = list_entry(head->next, struct qlcnic_cmd_args, list);
+@@ -3902,7 +3902,7 @@ static void qlcnic_83xx_flush_mbx_queue(struct 
qlcnic_adapter *adapter)
+   qlcnic_83xx_notify_cmd_completion(adapter, cmd);
+   }
+ 
+-  spin_unlock(>queue_lock);
++  

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-07 Thread Mike Pagano
commit: 8f7885176c06072da594527eb21ae23cfd8ddbf5
Author: Mike Pagano  gentoo  org>
AuthorDate: Thu Feb  8 00:38:44 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Thu Feb  8 00:38:44 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=8f788517

Linux patch 4.15.2

 _README |4 +
 1001_linux-4.15.2.patch | 3696 +++
 2 files changed, 3700 insertions(+)

diff --git a/_README b/_README
index da07a38..db575f6 100644
--- a/_README
+++ b/_README
@@ -47,6 +47,10 @@ Patch:  1000_linux-4.15.1.patch
 From:   http://www.kernel.org
 Desc:   Linux 4.15.1
 
+Patch:  1001_linux-4.15.2.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.2
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1001_linux-4.15.2.patch b/1001_linux-4.15.2.patch
new file mode 100644
index 000..e9d606b
--- /dev/null
+++ b/1001_linux-4.15.2.patch
@@ -0,0 +1,3696 @@
+diff --git a/Documentation/admin-guide/kernel-parameters.txt 
b/Documentation/admin-guide/kernel-parameters.txt
+index 46b26bfee27b..1e762c210f1b 100644
+--- a/Documentation/admin-guide/kernel-parameters.txt
 b/Documentation/admin-guide/kernel-parameters.txt
+@@ -2742,8 +2742,6 @@
+   norandmaps  Don't use address space randomization.  Equivalent to
+   echo 0 > /proc/sys/kernel/randomize_va_space
+ 
+-  noreplace-paravirt  [X86,IA-64,PV_OPS] Don't patch paravirt_ops
+-
+   noreplace-smp   [X86-32,SMP] Don't replace SMP instructions
+   with UP alternatives
+ 
+diff --git a/Documentation/speculation.txt b/Documentation/speculation.txt
+new file mode 100644
+index ..e9e6cbae2841
+--- /dev/null
 b/Documentation/speculation.txt
+@@ -0,0 +1,90 @@
++This document explains potential effects of speculation, and how undesirable
++effects can be mitigated portably using common APIs.
++
++===
++Speculation
++===
++
++To improve performance and minimize average latencies, many contemporary CPUs
++employ speculative execution techniques such as branch prediction, performing
++work which may be discarded at a later stage.
++
++Typically speculative execution cannot be observed from architectural state,
++such as the contents of registers. However, in some cases it is possible to
++observe its impact on microarchitectural state, such as the presence or
++absence of data in caches. Such state may form side-channels which can be
++observed to extract secret information.
++
++For example, in the presence of branch prediction, it is possible for bounds
++checks to be ignored by code which is speculatively executed. Consider the
++following code:
++
++  int load_array(int *array, unsigned int index)
++  {
++  if (index >= MAX_ARRAY_ELEMS)
++  return 0;
++  else
++  return array[index];
++  }
++
++Which, on arm64, may be compiled to an assembly sequence such as:
++
++  CMP , #MAX_ARRAY_ELEMS
++  B.LTless
++  MOV , #0
++  RET
++  less:
++  LDR , [, ]
++  RET
++
++It is possible that a CPU mis-predicts the conditional branch, and
++speculatively loads array[index], even if index >= MAX_ARRAY_ELEMS. This
++value will subsequently be discarded, but the speculated load may affect
++microarchitectural state which can be subsequently measured.
++
++More complex sequences involving multiple dependent memory accesses may
++result in sensitive information being leaked. Consider the following
++code, building on the prior example:
++
++  int load_dependent_arrays(int *arr1, int *arr2, int index)
++  {
++  int val1, val2,
++
++  val1 = load_array(arr1, index);
++  val2 = load_array(arr2, val1);
++
++  return val2;
++  }
++
++Under speculation, the first call to load_array() may return the value
++of an out-of-bounds address, while the second call will influence
++microarchitectural state dependent on this value. This may provide an
++arbitrary read primitive.
++
++
++Mitigating speculation side-channels
++
++
++The kernel provides a generic API to ensure that bounds checks are
++respected even under speculation. Architectures which are affected by
++speculation-based side-channels are expected to implement these
++primitives.
++
++The array_index_nospec() helper in  can be used to
++prevent information from being leaked via side-channels.
++
++A call to array_index_nospec(index, size) returns a sanitized index
++value that is bounded to [0, size) even under cpu speculation
++conditions.
++
++This can be used to protect the earlier load_array() example:
++
++  int load_array(int *array, unsigned int index)
++  {
++  

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-02-03 Thread Mike Pagano
commit: cd10231abdae4f2e8ddd323db3031b9d5778b320
Author: Mike Pagano  gentoo  org>
AuthorDate: Sat Feb  3 21:19:57 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Sat Feb  3 21:19:57 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=cd10231a

Linux patch 4.15.1

 _README |4 +
 1000_linux-4.15.1.patch | 1808 +++
 2 files changed, 1812 insertions(+)

diff --git a/_README b/_README
index 01553d4..da07a38 100644
--- a/_README
+++ b/_README
@@ -43,6 +43,10 @@ EXPERIMENTAL
 Individual Patch Descriptions:
 --
 
+Patch:  1000_linux-4.15.1.patch
+From:   http://www.kernel.org
+Desc:   Linux 4.15.1
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1000_linux-4.15.1.patch b/1000_linux-4.15.1.patch
new file mode 100644
index 000..7a10ddd
--- /dev/null
+++ b/1000_linux-4.15.1.patch
@@ -0,0 +1,1808 @@
+diff --git a/Makefile b/Makefile
+index c8b8e902d5a4..af101b556ba0 100644
+--- a/Makefile
 b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 4
+ PATCHLEVEL = 15
+-SUBLEVEL = 0
++SUBLEVEL = 1
+ EXTRAVERSION =
+ NAME = Fearless Coyote
+ 
+diff --git a/arch/x86/crypto/aesni-intel_asm.S 
b/arch/x86/crypto/aesni-intel_asm.S
+index 3d09e3aca18d..12e8484a8ee7 100644
+--- a/arch/x86/crypto/aesni-intel_asm.S
 b/arch/x86/crypto/aesni-intel_asm.S
+@@ -90,30 +90,6 @@ SHIFT_MASK: .octa 0x0f0e0d0c0b0a09080706050403020100
+ ALL_F:  .octa 0x
+ .octa 0x
+ 
+-.section .rodata
+-.align 16
+-.type aad_shift_arr, @object
+-.size aad_shift_arr, 272
+-aad_shift_arr:
+-.octa 0x
+-.octa 0xff0C
+-.octa 0x0D0C
+-.octa 0xff0E0D0C
+-.octa 0x0F0E0D0C
+-.octa 0xff0C0B0A0908
+-.octa 0x0D0C0B0A0908
+-.octa 0xff0E0D0C0B0A0908
+-.octa 0x0F0E0D0C0B0A0908
+-.octa 0xff0C0B0A090807060504
+-.octa 0x0D0C0B0A090807060504
+-.octa 0xff0E0D0C0B0A090807060504
+-.octa 0x0F0E0D0C0B0A090807060504
+-.octa 0xff0C0B0A09080706050403020100
+-.octa 0x0D0C0B0A09080706050403020100
+-.octa 0xff0E0D0C0B0A09080706050403020100
+-.octa 0x0F0E0D0C0B0A09080706050403020100
+-
+-
+ .text
+ 
+ 
+@@ -257,6 +233,37 @@ aad_shift_arr:
+   pxor  \TMP1, \GH# result is in TMP1
+ .endm
+ 
++# Reads DLEN bytes starting at DPTR and stores in XMMDst
++# where 0 < DLEN < 16
++# Clobbers %rax, DLEN and XMM1
++.macro READ_PARTIAL_BLOCK DPTR DLEN XMM1 XMMDst
++cmp $8, \DLEN
++jl _read_lt8_\@
++mov (\DPTR), %rax
++MOVQ_R64_XMM %rax, \XMMDst
++sub $8, \DLEN
++jz _done_read_partial_block_\@
++  xor %eax, %eax
++_read_next_byte_\@:
++shl $8, %rax
++mov 7(\DPTR, \DLEN, 1), %al
++dec \DLEN
++jnz _read_next_byte_\@
++MOVQ_R64_XMM %rax, \XMM1
++  pslldq $8, \XMM1
++por \XMM1, \XMMDst
++  jmp _done_read_partial_block_\@
++_read_lt8_\@:
++  xor %eax, %eax
++_read_next_byte_lt8_\@:
++shl $8, %rax
++mov -1(\DPTR, \DLEN, 1), %al
++dec \DLEN
++jnz _read_next_byte_lt8_\@
++MOVQ_R64_XMM %rax, \XMMDst
++_done_read_partial_block_\@:
++.endm
++
+ /*
+ * if a = number of total plaintext bytes
+ * b = floor(a/16)
+@@ -273,62 +280,30 @@ aad_shift_arr:
+ XMM2 XMM3 XMM4 XMMDst TMP6 TMP7 i i_seq operation
+ MOVADQ SHUF_MASK(%rip), %xmm14
+   movarg7, %r10   # %r10 = AAD
+-  movarg8, %r12   # %r12 = aadLen
+-  mov%r12, %r11
++  movarg8, %r11   # %r11 = aadLen
+   pxor   %xmm\i, %xmm\i
+   pxor   \XMM2, \XMM2
+ 
+   cmp$16, %r11
+-  jl _get_AAD_rest8\num_initial_blocks\operation
++  jl _get_AAD_rest\num_initial_blocks\operation
+ _get_AAD_blocks\num_initial_blocks\operation:
+   movdqu (%r10), %xmm\i
+   PSHUFB_XMM %xmm14, %xmm\i # byte-reflect the AAD data
+   pxor   %xmm\i, \XMM2
+   GHASH_MUL  \XMM2, \TMP3, \TMP1, \TMP2, \TMP4, \TMP5, \XMM1
+   add$16, %r10
+-  sub$16, %r12
+   sub$16, %r11
+   cmp$16, %r11
+   jge_get_AAD_blocks\num_initial_blocks\operation
+ 
+   movdqu \XMM2, %xmm\i
++
++  /* read the last <16B of AAD */

[gentoo-commits] proj/linux-patches:4.15 commit in: /

2018-01-16 Thread Mike Pagano
commit: 4d63e24f02c7d8d91b62045130b2b0e601e84891
Author: Mike Pagano  gentoo  org>
AuthorDate: Tue Jan 16 13:35:37 2018 +
Commit: Mike Pagano  gentoo  org>
CommitDate: Tue Jan 16 13:35:37 2018 +
URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=4d63e24f

Patch to support for namespace user.pax.* on tmpfs. Patch to Desc: Path to 
enable link security restrictions by default. Workaround to enable poweroff on 
Mac Pro 11. Patcg to add UAS disable quirk. See bug #640082. hid-apple patch to 
enable swapping of the FN and left Control keys and some additional on some 
apple keyboards. Patch to ensure that /dev/root doesn't appear in /proc/mounts 
when bootint without an initramfs. Bootsplash patch ported by Conrad Kostecki. 
Patch to enable control of the unaligned access control policy from sysctl. Add 
Gentoo Linux support config settings and defaults. Kernel patch that enables 
gcc >= v4.9 optimizations for additional.

 _README|   36 +
 1500_XATTR_USER_PREFIX.patch   |   69 +
 ...ble-link-security-restrictions-by-default.patch |   22 +
 2300_enable-poweroff-on-Mac-Pro-11.patch   |   76 +
 ...age-Disable-UAS-on-JMicron-SATA-enclosure.patch |   40 +
 2600_enable-key-swapping-for-apple-mac.patch   |  114 ++
 2900_dev-root-proc-mount-fix.patch |   38 +
 4200_fbcondecor.patch  | 2095 
 4400_alpha-sysctl-uac.patch|  142 ++
 ...able-additional-cpu-optimizations-for-gcc.patch |  530 +
 10 files changed, 3162 insertions(+)

diff --git a/_README b/_README
index 9018993..01553d4 100644
--- a/_README
+++ b/_README
@@ -43,6 +43,42 @@ EXPERIMENTAL
 Individual Patch Descriptions:
 --
 
+Patch:  1500_XATTR_USER_PREFIX.patch
+From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
+Desc:   Support for namespace user.pax.* on tmpfs.
+
+Patch:  1510_fs-enable-link-security-restrictions-by-default.patch
+From:   
http://sources.debian.net/src/linux/3.16.7-ckt4-3/debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch/
+Desc:   Enable link security restrictions by default.
+
+Patch:  2300_enable-poweroff-on-Mac-Pro-11.patch
+From:   
http://kernel.ubuntu.com/git/ubuntu/ubuntu-xenial.git/patch/drivers/pci/quirks.c?id=5080ff61a438f3dd80b88b423e1a20791d8a774c
+Desc:   Workaround to enable poweroff on Mac Pro 11. See bug #601964.
+
+Patch:  2500_usb-storage-Disable-UAS-on-JMicron-SATA-enclosure.patch
+From:   https://bugzilla.redhat.com/show_bug.cgi?id=1260207#c5
+Desc:   Add UAS disable quirk. See bug #640082.
+
+Patch:  2600_enable-key-swapping-for-apple-mac.patch
+From:   https://github.com/free5lot/hid-apple-patched
+Desc:   This hid-apple patch enables swapping of the FN and left Control keys 
and some additional on some apple keyboards. See bug #622902
+
+Patch:  2900_dev-root-proc-mount-fix.patch
+From:   https://bugs.gentoo.org/show_bug.cgi?id=438380
+Desc:   Ensure that /dev/root doesn't appear in /proc/mounts when bootint 
without an initramfs.
+
+Patch:  4200_fbcondecor.patch
+From:   http://www.mepiscommunity.org/fbcondecor
+Desc:   Bootsplash ported by Conrad Kostecki. (Bug #637434)
+
+Patch:  4400_alpha-sysctl-uac.patch
+From:   Tobias Klausmann (klaus...@gentoo.org) and 
http://bugs.gentoo.org/show_bug.cgi?id=217323 
+Desc:   Enable control of the unaligned access control policy from sysctl
+
 Patch:  4567_distro-Gentoo-Kconfig.patch
 From:   Tom Wijsman 
 Desc:   Add Gentoo Linux support config settings and defaults.
+
+Patch:  5010_enable-additional-cpu-optimizations-for-gcc.patch
+From:   https://github.com/graysky2/kernel_gcc_patch/
+Desc:   Kernel patch enables gcc >= v4.9 optimizations for additional CPUs.

diff --git a/1500_XATTR_USER_PREFIX.patch b/1500_XATTR_USER_PREFIX.patch
new file mode 100644
index 000..bacd032
--- /dev/null
+++ b/1500_XATTR_USER_PREFIX.patch
@@ -0,0 +1,69 @@
+From: Anthony G. Basile 
+
+This patch adds support for a restricted user-controlled namespace on
+tmpfs filesystem used to house PaX flags.  The namespace must be of the
+form user.pax.* and its value cannot exceed a size of 8 bytes.
+
+This is needed even on all Gentoo systems so that XATTR_PAX flags
+are preserved for users who might build packages using portage on
+a tmpfs system with a non-hardened kernel and then switch to a
+hardened kernel with XATTR_PAX enabled.
+
+The namespace is added to any user with Extended Attribute support
+enabled for tmpfs.  Users who do not enable xattrs will not have
+the XATTR_PAX flags preserved.
+
+diff --git a/include/uapi/linux/xattr.h b/include/uapi/linux/xattr.h
+index 1590c49..5eab462 100644
+--- a/include/uapi/linux/xattr.h
 b/include/uapi/linux/xattr.h
+@@ -73,5 +73,9 @@
+ #define XATTR_POSIX_ACL_DEFAULT  "posix_acl_default"
+