Commit Graph

737480 Commits

Author SHA1 Message Date
Herbert Xu
d16b46e4fd xfrm: Use __skb_queue_tail in xfrm_trans_queue
We do not need locking in xfrm_trans_queue because it is designed
to use per-CPU buffers.  However, the original code incorrectly
used skb_queue_tail which takes the lock.  This patch switches
it to __skb_queue_tail instead.

Reported-and-tested-by: Artem Savkov <asavkov@redhat.com>
Fixes: acf568ee85 ("xfrm: Reinject transport-mode packets...")
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
2018-01-05 09:33:14 +01:00
Linus Walleij
24e78079bf gpio: label descriptors using the device name
Some GPIO lines appear named "?" in the lsgpio dump due to their
requesting drivers not passing a reasonable label.

Most typically this happens if a device tree node just defines
gpios = <...> and not foo-gpios = <...>, the former gets named
"foo" and the latter gets named "?".

However the struct device passed in is always valid so let's
just label the GPIO with dev_name() on the device if no proper
label was passed.

Cc: Reported-by: Jason Kridner <jkridner@beagleboard.org>
Reported-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-01-05 09:25:42 +01:00
Eric Biggers
b7dac37318 crypto: x86/poly1305 - remove cra_alignmask
crypto_poly1305_final() no longer requires a cra_alignmask, and nothing
else in the x86 poly1305-simd implementation does either.  So remove the
cra_alignmask so that the crypto API does not have to unnecessarily
align the buffers.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:12 +11:00
Eric Biggers
4c7dfbd421 crypto: poly1305 - remove cra_alignmask
Now that nothing in poly1305-generic assumes any special alignment,
remove the cra_alignmask so that the crypto API does not have to
unnecessarily align the buffers.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:11 +11:00
Eric Biggers
fcfbeedf79 crypto: poly1305 - use unaligned access macros to output digest
Currently the only part of poly1305-generic which is assuming special
alignment is the part where the final digest is written.  Switch this
over to the unaligned access macros so that we'll be able to remove the
cra_alignmask.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:10 +11:00
Eric Biggers
8b55107c57 crypto: algapi - remove unused notifications
There is a message posted to the crypto notifier chain when an algorithm
is unregistered, and when a template is registered or unregistered.  But
nothing is listening for those messages; currently there are only
listeners for the algorithm request and registration messages.

Get rid of these unused notifications for now.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:10 +11:00
Eric Biggers
ce8614a312 crypto: algapi - convert cra_refcnt to refcount_t
Reference counters should use refcount_t rather than atomic_t, since the
refcount_t implementation can prevent overflows, reducing the
exploitability of reference leak bugs.  crypto_alg.cra_refcount is a
reference counter with the usual semantics, so switch it over to
refcount_t.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:09 +11:00
Antoine Ténart
809778e02c crypto: inside-secure - fix hash when length is a multiple of a block
This patch fixes the hash support in the SafeXcel driver when the update
size is a multiple of a block size, and when a final call is made just
after with a size of 0. In such cases the driver should cache the last
block from the update to avoid handling 0 length data on the final call
(that's a hardware limitation).

Cc: stable@vger.kernel.org
Fixes: 1b44c5a60c ("crypto: inside-secure - add SafeXcel EIP197 crypto engine driver")
Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:06 +11:00
Antoine Ténart
c957f8b3e2 crypto: inside-secure - avoid unmapping DMA memory that was not mapped
This patch adds a parameter in the SafeXcel ahash request structure to
keep track of the number of SG entries mapped. This allows not to call
dma_unmap_sg() when dma_map_sg() wasn't called in the first place. This
also removes a warning when the debugging of the DMA-API is enabled in
the kernel configuration: "DMA-API: device driver tries to free DMA
memory it has not allocated".

Cc: stable@vger.kernel.org
Fixes: 1b44c5a60c ("crypto: inside-secure - add SafeXcel EIP197 crypto engine driver")
Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:05 +11:00
Christian Lamparter
0b5a7f71b4 crypto: crypto4xx - perform aead icv check in the driver
The ccm-aes-ppc4xx now fails one of testmgr's expected
failure test cases as such:

|decryption failed on test 10 for ccm-aes-ppc4xx:
|ret was 0, |expected -EBADMSG

It doesn't look like the hardware sets the authentication failure
flag. The original vendor source from which this was ported does
not have any special code or notes about why this would happen or
if there are any WAs.

Hence, this patch converts the aead_done callback handler to
perform the icv check in the driver. And this fixes the false
negative and the ccm-aes-ppc4xx passes the selftests once again.

|name         : ccm(aes)
|driver       : ccm-aes-ppc4xx
|module       : crypto4xx
|priority     : 300
|refcnt       : 1
|selftest     : passed
|internal     : no
|type         : aead
|async        : yes
|blocksize    : 1
|ivsize       : 16
|maxauthsize  : 16
|geniv        : <none>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:05 +11:00
Christian Lamparter
333b192856 crypto: crypto4xx - kill MODULE_NAME
KBUILD_MODNAME provides the same value.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:04 +11:00
Christian Lamparter
57268aba38 crypto: crypto4xx - fix missing irq devname
crypto4xx_device's name variable is not set to anything.
The common devname for request_irq seems to be the module
name. This will fix the seemingly anonymous interrupt
entry in /proc/interrupts for crypto4xx.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:04 +11:00
Christian Lamparter
b66c685a48 crypto: crypto4xx - support Revision B parts
This patch adds support for the crypto4xx RevB cores
found in the 460EX, 460SX and later cores (like the APM821xx).

Without this patch, the crypto4xx driver will not be
able to process any offloaded requests and simply hang
indefinitely.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:03 +11:00
Christian Lamparter
b0a191cebe crypto: crypto4xx - shuffle iomap in front of request_irq
It is possible to avoid the ce_base null pointer check in the
drivers' interrupt handler routine "crypto4xx_ce_interrupt_handler()"
by simply doing the iomap in front of the IRQ registration.

This way, the ce_base will always be valid in the handler and
a branch in an critical path can be avoided.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:02 +11:00
Łukasz Stelmach
6cd225cc5d hwrng: exynos - add Samsung Exynos True RNG driver
Add support for True Random Number Generator found in Samsung Exynos
5250+ SoCs.

Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Acked-by: Philippe Ombredanne <pombredanne@nexb.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:02 +11:00
Cheah Kok Cheong
08b21fbf4b padata: add SPDX identifier
Add SPDX license identifier according to the type of license text found
in the file.

Cc: Philippe Ombredanne <pombredanne@nexb.com>
Signed-off-by: Cheah Kok Cheong <thrust73@gmail.com>
Acked-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:43:00 +11:00
Eric Biggers
9a00674213 crypto: algapi - fix NULL dereference in crypto_remove_spawns()
syzkaller triggered a NULL pointer dereference in crypto_remove_spawns()
via a program that repeatedly and concurrently requests AEADs
"authenc(cmac(des3_ede-asm),pcbc-aes-aesni)" and hashes "cmac(des3_ede)"
through AF_ALG, where the hashes are requested as "untested"
(CRYPTO_ALG_TESTED is set in ->salg_mask but clear in ->salg_feat; this
causes the template to be instantiated for every request).

Although AF_ALG users really shouldn't be able to request an "untested"
algorithm, the NULL pointer dereference is actually caused by a
longstanding race condition where crypto_remove_spawns() can encounter
an instance which has had spawn(s) "grabbed" but hasn't yet been
registered, resulting in ->cra_users still being NULL.

We probably should properly initialize ->cra_users earlier, but that
would require updating many templates individually.  For now just fix
the bug in a simple way that can easily be backported: make
crypto_remove_spawns() treat a NULL ->cra_users list as empty.

Reported-by: syzbot <syzkaller@googlegroups.com>
Cc: stable@vger.kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-01-05 18:41:52 +11:00
Linus Walleij
586b2a4bef ARM: dts: Delete bogus reference to the charlcd
The EB MP board probably has a character LCD but the board manual does
not really state which IRQ it has assigned to this device. The invalid
assignment was a mistake by me during submission of the DTSI where I was
looking for the reference, didn't find it and didn't fill it in.

Delete this for now: it can probably be fixed but that requires access
to the actual board for some trial-and-error experiments.

Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:34:38 -08:00
Olof Johansson
57e36159cc Merge tag 'at91-ab-4.16-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/drivers
drivers for 4.16

 - use PTR_ERR_OR_ZERO were relevant in at91_cf

* tag 'at91-ab-4.16-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
  pcmcia: at91_cf: Use PTR_ERR_OR_ZERO()

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:31:40 -08:00
Olof Johansson
8ef9aea80d Merge tag 'at91-ab-4.16-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/dt
DT for 4.16

 - New boards:
   - Axentia Nattis with Natte power
   - sama5d2 PTC ek
 - Document and use extended TCB bindings

* tag 'at91-ab-4.16-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (50 commits)
  ARM: dts: at91: sama5d2_ptc_ek: use TCB0 as timers
  ARM: dts: at91: sama5d27_som1_ek: use TCB0 as timers
  ARM: dts: at91: sama5d2 Xplained: use TCB0 as timers
  ARM: dts: at91: sama5d2: TC blocks are also simple-mfd and syscon devices
  ARM: dts: at91: vinco: use TCB2 as timers
  ARM: dts: at91: ma5d4: use TCB2 as timers
  ARM: dts: at91: sama5d4 Xplained: use TCB2 as timers
  ARM: dts: at91: sama5d4ek: use TCB2 as timers
  ARM: dts: at91: sama5d4: Add TCB2
  ARM: dts: at91: sama5d4: TC blocks are also simple-mfd and syscon devices
  ARM: dts: at91: linea/tse850-3: use TCB0 as timers
  ARM: dts: at91: sama5d3xek_cmp: use TCB0 as timers
  ARM: dts: at91: kizbox2: use TCB0 as timers
  ARM: dts: at91: sama5d3 Xplained: use TCB0 as timers
  ARM: dts: at91: sama5d3xek: use TCB0 as timers
  ARM: dts: at91: sama5d3: TC blocks are also simple-mfd and syscon devices
  ARM: dts: at91: kizboxmini: use TCB0 as timers
  ARM: dts: at91: cosino: use TCB0 as timers
  ARM: dts: at91: acme/g25: use TCB0 as timers
  ARM: dts: at91: at91sam9x5cm: use TCB0 as timers
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:30:28 -08:00
Olof Johansson
b357e88414 Merge tag 'uniphier-dt64-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier into next/dt
UniPhier ARM64 SoC DT updates for v4.16

- clean up gpios properties by macro
- add GPIO hog for PXs3 reference node
- add has-transaction-translator property to generic-ehci nodes
- enable more serial ports for PXs3 reference node

* tag 'uniphier-dt64-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier:
  arm64: dts: uniphier: enable more serial ports for PXs3 ref board
  arm64: dts: uniphier: add has-transaction-translator property to usb node for LD11
  arm64: dts: uniphier: add GPIO hog definition for PXs3
  arm64: dts: uniphier: use macros in dt-bindings header

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:29:34 -08:00
Olof Johansson
bed1f7d127 Merge tag 'uniphier-dt-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier into next/dt
UniPhier ARM SoC DT updates for v4.16

- clean up gpios properties by macro
- add efuse nodes
- add has-transaction-translator property to generic-ehci nodes

* tag 'uniphier-dt-v4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier:
  ARM: dts: uniphier: add has-transaction-translator property to usb node for LD4, sLD8 and Pro4
  ARM: dts: uniphier: add efuse node for UniPhier 32bit SoC
  ARM: dts: uniphier: use macros in dt-bindings header

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:28:00 -08:00
Olof Johansson
564b65eebb Merge tag 'sunxi-config64-for-4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/soc
Allwinner arm64 defconfig changes for 4.16

Enables MUSB driver and the Allwinner glue layer driver by default.

All Allwinner SoCs (excluding the A80) have the Mentor Graphics Inventra
Multi-Point Hi-Speed OTG Controller (MHDRC). Enabling this extends test
coverage to this peripheral.

* tag 'sunxi-config64-for-4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: defconfig: enable MUSB HDRC along with Allwinner glue

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:18:50 -08:00
Olof Johansson
2943d853a0 Merge tag 'sunxi-dt64-for-4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/dt
Allwinner DT64 changes for 4.16

There are two important changes in this round.

The first removes the redundant pinctrl setting for the MMC card detect
GPIO. We are moving to strict pinctrl/GPIO exclusion, i.e. GPIO usage
will block other pin muxing usage, and vice versa. The usage of pinmux
for guarding GPIO pins in the device tree prevents us from doing so.
This is part of an ongoing effort to clean up the existing device trees.

The other important change enables the PMIC on the Orangepi Win. The
PMIC provides power to most of the external onboard peripherals.
Enabling it will allow us to enable Ethernet or WiFi support later on.

The remaining changes in this round enable some peripheral, such as
Ethernet, an external WiFi chip, or LEDs.

* tag 'sunxi-dt64-for-4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: dts: allwinner: a64: bananapi-m64: Add LED device node
  arm64: dts: a64-olinuxino: Enable RTL8723BS WiFi
  arm64: dts: allwinner: h5: NanoPi NEO Plus2 : add EMAC support
  arm64: dts: allwinner: H5: remove redundant MMC0 card detect pin
  arm64: allwinner: a64: Enable AXP803 for Orangepi Win
  arm64: dts: orange-pi-zero-plus2: enable AP6212a WiFi/BT combo

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:18:15 -08:00
Olof Johansson
5333aeb101 Merge tag 'sunxi-dt-for-4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/dt
Allwinner DT changes for 4.16

A random assortment of improvements.

GPIO device nodes are added for the AXP813/AXP818 PMICs, meaning we can
finally use the GPIO pins on the PMICs. The LDOs on the GPIO pins can
also be properly muxed and guarded.

EMAC Ethernet support is enabled for more H3 boards, and also for the
A83T, following the return of the bindings in 4.15, after a last minute
revert in 4.13. This will make the H3/A83T boards much more useful in
headless applications.

Two new boards are introduced. The Orange Pi R1 is a small board with
two Ethernet interfaces (one EMAC-based and one USB-based) and a WiFi
chip. This board is fully supported, with the exception of TV-out on
the expansion header, which will not be enabled by default. The WiFi
chip (RTL8189FTV) requires an out-of-tree driver. The Libre Computer
Board ALL-H3-CC H3 version is a newcomer to the Allwinner SBC space,
which was mostly represented by a bunch of fruit-Pis. It is mostly
supported, with the exception of HDMI and camera sensor interface,
which have not been implemented yet.

Two minor patches enable the audio codec on the A13 Olinuxino, and
HDMI output on the pcDuino3 Nano.

* tag 'sunxi-dt-for-4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  ARM: dts: sun8i: h3: nanopi-m1-plus: fix missing ethernet 0 in aliases
  ARM: dts: sun8i: h3: Enable dwmac-sun8i on the Nanopi M1
  ARM: dts: sun7i: Enable HDMI on pcDuino3 Nano
  ARM: dts: sun8i: a83t: Add I2C device nodes and pinmux settings
  ARM: dts: sun8i: a83t: Add I2S controller device nodes
  ARM: dts: sun8i-h3: Remove allwinner,leds-active-low for non internal PHY
  ARM: dts: sun8i: a83t: Enable Ethernet on two boards
  ARM: dts: sun8i: a83t: add dwmac-sun8i device node
  ARM: dts: sun8i: h3: enable USB OTG for NanoPi Neo board
  ARM: dts: sun8i: h3: Add dts file for Libre Computer Board ALL-H3-CC H3 ver.
  ARM: dtsi: axp81x: set pinmux for GPIO0/1 when used as LDOs
  ARM: dtsi: axp81x: add GPIO DT node
  ARM: dts: sun8i: add support for Orange Pi R1
  ARM: dts: sunxi: Add codec for A13 Olinuxino

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:17:16 -08:00
Olof Johansson
e84171bb9e Merge tag 'keystone_config_for_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/soc
ARM: Keystone configs for 4.16

  - Enable QSPI
  - Enable LEDs
  - Enable GPIO-decoder

* tag 'keystone_config_for_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: configs: keystone_defconfig: Enable few peripheral drivers

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:13:48 -08:00
Olof Johansson
11077e9bf7 Merge tag 'keystone_driver_soc_for_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/drivers
SOC: Keystone Soc driver updates for 4.16

 - TI EMIF-SRAM driver
 - TI SCI print format fix
 - Navigator strndup lenth fix

* tag 'keystone_driver_soc_for_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  soc: ti: fix max dup length for kstrndup
  firmware: ti_sci: Use %zu for size_t print format
  memory: ti-emif-sram: remove unused variable
  memory: ti-emif-sram: introduce relocatable suspend/resume handlers
  Documentation: dt: Update ti,emif bindings

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:12:57 -08:00
Olof Johansson
0e9288e003 Merge tag 'keystone_dts_for_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/dt
ARM: Keystone DTS update for 4.16

 - Enable GPIO bank2 for K2L
 - Enable QSPI for K2G & K2G-EVM
 - Enable UART1/2 for K2G & K2G-EVM
 - Enable peripherals for K2G-ICE
 - Fix C1 and C2 DTS warnings

* tag 'keystone_dts_for_4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone:
  ARM: dts: keystone-k2l-clocks: Add missing unit name to clock nodes that have regs
  ARM: dts: keystone-k2e-clocks: Add missing unit name to clock nodes that have regs
  ARM: dts: keystone-hk-clocks: Add missing unit name to clock nodes that have regs
  ARM: dts: keystone-clocks: Add missing unit name to clock nodes that have regs
  ARM: dts: keystone: Add missing unit name to interrupt controller
  ARM: dts: keystone: Get rid of usage of skeleton.dtsi
  ARM: dts: keystone*: Use a single soc0 instance
  ARM: dts: keystone*: Standardize license with SPDX tag
  ARM: dts: k2g-evm: Enable UART 2
  ARM: dts: k2g: Add UART 1 and 2 instances
  ARM: dts: keystone: Add generic compatible string for I2C EEPROM
  ARM: dts: keystone-k2g-ice: Add DT nodes for few peripherals
  ARM: dts: keystone-k2g-evm: Add QSPI DT node.
  ARM: dts: keystone-k2g: Move ti,non-removable property to board dts
  ARM: dts: keystone-k2g-evm: Fix botched up merge
  ARM: dts: keystone-k2g: Add QSPI DT entry
  ARM: dts: keystone-k2l: Add the second gpio bank node

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:12:16 -08:00
Olof Johansson
add49f7835 Merge tag 'pxa-for-4.16' of https://github.com/rjarzmik/linux into next/soc
This is the pxa changes for v4.16 cycle.

It is :
 - the conversion to the new parser sharpslpart parser
   for the Sharp variants
 - an I2C platform data cleanup for PXA
 - a gpioreg switch of one register for lubbock

* tag 'pxa-for-4.16' of https://github.com/rjarzmik/linux:
  ARM: pxa/lubbock: add GPIO driver for LUB_MISC_WR register
  ARM: pxa/poodle: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa/spitz: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa/tosa: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa/corgi: Remove hardcoded partitioning, use sharpslpart parser
  ARM: pxa: move header file out of I2C realm
  ARM: pxa: move declarations to proper place

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:10:08 -08:00
Olof Johansson
34c1baec7d Merge tag 'omap-for-v4.16/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc
Two defconfig updates for omaps

These are to configure dra7 PCIe for omap2plus_defconfig and
multi_v7_defconfig.

* tag 'omap-for-v4.16/defconfig-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: multi_v7_defconfig: Enable CONFIG_PCI_DRA7XX (Host & Device modes)
  ARM: omap2plus_defconfig: Enable CONFIG_PCI_DRA7XX (Host & Device modes)

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:07:10 -08:00
Olof Johansson
38b45e5186 Merge tag 'omap-for-v4.16/dt-pt2-v2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt
Second set of device tree changes for omaps for v4.16 merge window

This branch mostly configures more hardware support:

- Clean-up dts files to remove leading 0x and 0s from binding notation
  to remove more dtc compiler warnings

- A series of am437x updates for backlight, to fix inverted pad
  pull macro, and to configure power management related OPPs

- Configure n950 and droid 4 command mode LCD panels

- Updates to pandora and gta04 LCD panels

- Add support for am574x-idk

- A series of changes to configure more dra7 related PCIe features

- A series of fixes for am335x-boneblue for WLAN, UARTs and CAN
  configuration

- A series of changes to configure dra7 OPPs and VDD supplies

* tag 'omap-for-v4.16/dt-pt2-v2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (29 commits)
  Revert "ARM: dts: dra7: Add properties to enable PCIe x2 lane mode"
  ARM: dts: am572x-idk: Add cpu0 vdd supply
  ARM: dts: am571x-idk: Add cpu0 vdd supply
  ARM: dts: dra72-evm-tps65917: Add cpu0 vdd supply
  ARM: dts: dra7-evm: Add cpu0 vdd supply
  ARM: dts: am57xx-beagle-x15-common: Add cpu0 vdd supply
  ARM: dts: dra7: Enable 1.5 GHz operation for the CPU
  ARM: dts: dra7: Add MPU OPP supply node
  ARM: dts: dra7: Add vbb-supply to cpu and additional voltages
  ARM: dts: am335x-boneblue: enable can
  ARM: dts: am335x-boneblue: enable usarts
  ARM: dts: am335x-boneblue: fix wl1835 IRQ pin
  ARM: dts: dra7: Remove deprecated PCI compatible string
  ARM: dts: dra76-evm: Enable x2 PCIe lanes
  ARM: dts: DRA72x: Use PCIe compatible specific to dra72
  ARM: dts: DRA74x: Use PCIe compatible specific to dra74
  ARM: dts: dra7: Add properties to enable PCIe x2 lane mode
  ARM: dts: am57xx: Add support for am574x-idk
  ARM: dts: am43x-epos-evm: Hook dcdc2 as the cpu0-supply
  ARM: dts: am437x-idk-evm: Disable OPP50 for MPU
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:06:32 -08:00
Olof Johansson
8102324d86 Merge tag 'omap-for-v4.16/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/drivers
TI sysc driver updates for v4.16 merge window

We now have gotten ti-sysc driver to the point where it can parse
interconnect target configuration from device tree instead of the
legacy platform data. This series updates the device tree binding
and adds parsing to the driver for quirks and capabilities.

* tag 'omap-for-v4.16/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  bus: ti-sysc: Add parsing of module capabilities
  bus: ti-sysc: Handle module quirks based dts configuration
  bus: ti-sysc: Detect i2c interconnect target module based on register layout
  bus: ti-sysc: Add register bits for interconnect target modules
  bus: ti-sysc: Make omap_hwmod_sysc_fields into sysc_regbits platform data
  ARM: OMAP2+: Move all omap_hwmod_sysc_fields to omap_hwmod_common_data.c
  ARM: dts: Add generic ti,sysc compatible in addition to the custom ones
  dt-bindings: ti-sysc: Update binding for timers and capabilities

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:06:04 -08:00
Olof Johansson
dcd47b0d90 Merge tag 'omap-for-v4.16/soc-pt2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc
Second set of SoC changes for omaps for v4.16 merge window

We can now drop some more of legacy platform data for omap3 as
it's been booting in device tree only mode for quite a while now.
This clock related data is coming from device tree configured
clocks now.

The other changes add support for detecting new dra762 SoC variant.

* tag 'omap-for-v4.16/soc-pt2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2+: dra762: Register package specific hwmod
  ARM: OMAP2+: dra762: Add support for device package identification
  ARM: OMAP2+: Drop unused legacy data for prcm_reg_id and module_bit

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 23:04:38 -08:00
Olof Johansson
70687379b7 Merge tag 'mvebu-arm64-4.16-1' of git://git.infradead.org/linux-mvebu into next/soc
mvebu arm64 for 4.16 (part 1)

Adding the cpu frequency scaling support for Armada 37xx

* tag 'mvebu-arm64-4.16-1' of git://git.infradead.org/linux-mvebu:
  arm64: defconfig: enable ARM_ARMADA_37XX_CPUFREQ

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:58:31 -08:00
Olof Johansson
8db4e1faac Merge tag 'mvebu-dt64-4.16-1' of git://git.infradead.org/linux-mvebu into next/dt
mvebu dt64 for 4.16 (part 1)

Add the NAND support on the Marvell 8040-DB board
Add the thermal support for Martvell A7K/A8K Socs
Add nodes allowing cpufreq support on Aramda 3700 SoCs

* tag 'mvebu-dt64-4.16-1' of git://git.infradead.org/linux-mvebu:
  ARM64: dts: marvell: Add thermal support for A7K/A8K
  arm64: dts: marvell: armada-37xx: add nodes allowing cpufreq support
  arm64: dts: marvell: add NAND support on the 8040-DB board

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:58:00 -08:00
Olof Johansson
fb21a1a4e1 Merge tag 'mvebu-dt-4.16-1' of git://git.infradead.org/linux-mvebu into next/dt
mvebu dt for 4.16 (part 1)

Fix potential dtc warnings on kirkwoods files
Declare a new pin (RB) usbale for NAND controller on Armada 38x

* tag 'mvebu-dt-4.16-1' of git://git.infradead.org/linux-mvebu:
  arm: kirkwood: dts: Use lower case for bindings notation
  ARM: dts: armada-38x: Add NAND RB pinctrl information

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:52:45 -08:00
Olof Johansson
3864a53e14 Merge tag 'renesas-soc2-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
Second Round of Renesas ARM Based SoC Updates for v4.16

* rcar-sysc: Keep wakeup sources active during system suspend

  Geert Uytterhoeven says "If an R-Car SYSC slave device is part of the
  CPG/MSTP or CPG/MSSR Clock Domain and to be used as a wakeup source, it
  must be kept active during system suspend.

  Currently this is handled in device-specific drivers by explicitly
  increasing the use count of the module clock when the device is
  configured as a wakeup source.  However, the proper way to prevent the
  device from being stopped is to inform this requirement to the genpd
  core, by setting the GENPD_FLAG_ACTIVE_WAKEUP flag.

  Note that this will only affect devices configured as wakeup sources."

* tag 'renesas-soc2-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  soc: renesas: rcar-sysc: Keep wakeup sources active during system suspend

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:52:06 -08:00
Olof Johansson
150daec9dc Merge tag 'renesas-dt2-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt
Second Round of Renesas ARM Based SoC DT Updates for v4.16

* r8a7745 (RZ/G1E) SoC
  - Enable SMP

    Fabrizio Castro says "Add DT node for the Advanced Power Management
    Unit (APMU), add the second CPU core, and use "renesas,apmu" as
    "enable-method"."

* r8a7743 (RZ/G1M) SoC
  - Add node for thermal sensor module with thermal-zone support

* r8a7743 (RZ/G1M) and r8a7745 (RZ/G1E) SoCs
  - Add:
    + Renesas Core Match Timer (CMT) support
    + Renesas Timer Pulse Unit PWM Controller (TPU) support
    + Renesas PWM Timer Controller (PWM) support

* r8a7743 (RZ/G1M) iW-RainboW-G20D-Qseven and
  r8a7745 (RZ/G1E) iW-RainboW-G22D development platforms
  - Add sound support

* r8a7743 (RZ/G1M), r8a7745 (RZ/G1E) and r8a7792 (R-Car V2H) SoCs
  - Allow DTBs of boards of these SoCs to build without any warnings when
    compiled with W=1 using gcc-linaro-5.4.1-2017.05
    + Move nodes which have no reg property out of bus, they don't belong there
    + Also sort sub-nodes of root node to allow for easier maintenance

* r8a7790 (R-Car H2), r8a7791 (R-Car M2-W) and r8a7793 (R-Car M2-N) SoCs
  - Correct critical CPU temperature

    Chris Paterson says "The current R-Car Gen2 device trees define the CPU
    critical temperature as 115°C.

    The R-Car hardware manuals state that Tc = –40°C to +105°C. The thermal
    sensor has an accuracy of ±5°C and there can be a temperature
    difference of 1 or 2 degrees between Tjmax and the thermal sensor due
    to the location of the latter.

    This means that 95°C is a safer value to use.

    This value should also apply to r8a7792 but thermal sensor support has
    not been added yet."

* r8a7740 (R-Mobile A1) SoC
  - Correct TPU register block size

    Geert Uytterhoven says "The Timer Pulse Unit has registers that lie
    outside the declared register block.  Enlarge the register block size to
    fix this.

    This was probably based on the old platform code, which also assumed a
    register block size of 0x100."

* tag 'renesas-dt2-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (37 commits)
  ARM: dts: r8a7745: Add missing clock for secondary CA7 CPU core
  ARM: dts: iwg22d-sodimm: Sound DMA support via DVC on DTS
  ARM: dts: iwg22d-sodimm: Sound DMA support via SRC on DTS
  ARM: dts: iwg22d-sodimm: Sound DMA support via BUSIF on DTS
  ARM: dts: iwg22d-sodimm: Sound DMA support on DTS
  ARM: dts: iwg22d-sodimm: Sound PIO support
  ARM: dts: iwg22d-sodimm: Enable SGTL5000 audio codec
  ARM: dts: r8a7745: Add sound support
  ARM: dts: r8a7745: Add audio DMAC support
  ARM: dts: r8a7745: Add audio clocks
  ARM: dts: r8a7740: Correct TPU register block size
  ARM: dts: r8a7743: move timer and thermal-zones nodes out of bus
  ARM: dts: r8a7743: sort root sub-nodes alphabetically
  ARM: dts: iwg20d-q7-common: Sound DMA support via DVC on DTS
  ARM: dts: iwg20d-q7-common: Sound DMA support via SRC on DTS
  ARM: dts: iwg20d-q7-common: Sound DMA support via BUSIF on DTS
  ARM: dts: iwg20d-q7-common: Sound DMA support on DTS
  ARM: dts: iwg20d-q7-common: Sound PIO support
  ARM: dts: iwg20d-q7-common: Enable SGTL5000 audio codec
  ARM: dts: r8a7792: move timer node out of bus
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:51:06 -08:00
Olof Johansson
33f0624c6a Merge tag 'renesas-defconfig-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
Renesas ARM Based SoC Defconfig Updates for v4.16

shmobile_defconfig:
* Enable PWM timers, which are present on R-Car and RZ/G1 platforms,
  as a built-in
* Enable SGTL5000 audio codec, which is present on the he iWave RZ/G1M Q7
  carrier board, as a built-in

multi_v7_defconfig:
* Enable PWM timers, which are present on R-Car and RZ/G1 platforms,
  as a module

* tag 'renesas-defconfig-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: defconfig: Enable PWM
  ARM: multi_v7_defconfig: Select PWM_RCAR as module
  ARM: shmobile: defconfig: Enable SGTL5000 audio codec

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:39:30 -08:00
Olof Johansson
052f6026cc Merge tag 'renesas-arm64-dt2-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt
Second Round of Renesas ARM64 Based SoC DT Updates for v4.16

* Add usb3_phy node to r8a7795 (R-Car H3) and r8a7796 (R-Car M3-W) SoCs, and
  enable usb3_peri0 on salvator boards

* Allow DTBs of boards of r8a7795 (R-Car H3) and r8a7796 SoCs to build
  without any warnings when compiled with W=1 using gcc-linaro-5.4.1-2017.05
  - Move nodes which have no reg property out of bus, they don't belong there
  - Add reg properties to dummy pciec[01] nodes
  - Also sort sub-nodes of root node to allow for easier maintenance

* Add Add EthernetAVB PHY reset to r8a7795 (R-Car H3) and r8a7796 SoCs boards.

  Geert Uytterhoeven says "... add properties to describe the EthernetAVB
  PHY reset topology to the common Salvator-X/XS and ULCB DTS files, which
  solves two issues:
    1. On Salvator-XS, the enable pin of the regulator providing PHY power
       is connected to PRESETn, and PSCI powers down the SoC during system
       suspend.  Hence a PHY reset is needed to restore network
       functionality after system resume.
    2. Linux should not rely on the boot loader having reset the PHY, but
       should reset the PHY during driver probe."

* tag 'renesas-arm64-dt2-for-v4.16' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  arm64: dts: renesas: salvator-common: enable usb3_peri0
  arm64: dts: renesas: salvator-common: enable usb3_phy0 node
  arm64: dts: renesas: r8a7796: add usb3_phy node
  arm64: dts: renesas: r8a7795: add usb3_phy node
  arm64: dts: renesas: r8a7796: add reg properties to pciec[01] nodes
  arm64: dts: renesas: r8a7796: move nodes which have no reg property out of bus
  arm64: dts: renesas: r8a7796: sort subnodes of root node alphabetically
  arm64: dts: renesas: r8a7795: sort subnodes of root node alphabetically
  arm64: dts: renesas: ulcb: Add EthernetAVB PHY reset
  arm64: dts: renesas: salvator-common: Add EthernetAVB PHY reset
  arm64: dts: renesas: r8a7795: Move nodes which have no reg property out of bus

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:38:49 -08:00
Olof Johansson
710ae35c2e Merge tag 'actions-drivers-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions into next/drivers
Actions Semi SoC drivers for v4.16

The SPS power domain driver is extended for S700 SoC.

* tag 'actions-drivers-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions:
  soc: actions: sps: Add S700

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:37:59 -08:00
Olof Johansson
09fa4ba5e2 Merge tag 'actions-arm64-dt-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions into next/dt
Actions Semi arm64 based SoC DT for v4.16

This adds S700 SoC and CubieBoard7.

* tag 'actions-arm64-dt-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions:
  arm64: dts: actions: Add S700 and CubieBoard7
  dt-bindings: power: Add Actions Semi S700 SPS
  dt-bindings: arm: actions: Add S700 and CubieBoard7

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:36:42 -08:00
Olof Johansson
9019e1f813 Merge tag 'actions-arm-dt-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions into next/dt
Actions Semi arm based SoC DT for v4.16

This adds a DT for the Allo.com Sparky SBC.

* tag 'actions-arm-dt-for-4.16' of git://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions:
  arm: dts: owl-s500: Add Sparky
  dt-bindings: arm: actions: Add Sparky
  dt-bindings: Add vendor prefix for Allo.com

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:36:19 -08:00
Olof Johansson
36b8bee7b9 Merge tag 'hisi-arm64-dt-for-4.16-v2' of git://github.com/hisilicon/linux-hisi into next/dt
ARM64: DT: Hisilicon SoC DT updates for 4.16

- Add SD card support for the hi3798cv200-poplar board
- Replace the PMU node with exact match for the hi3660 SoC
- Add cpu capacity-dmips-mhz information for the hi3660 SoC

* tag 'hisi-arm64-dt-for-4.16-v2' of git://github.com/hisilicon/linux-hisi:
  arm64: dts: hisilicon: Add hi3660 cpu capacity-dmips-mhz information
  arm64: dts: hi3660: improve pmu description
  arm64: dts: hi3798cv200: add SD card support

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:35:13 -08:00
Olof Johansson
7e32c6054e Merge tag 'arm-soc/for-4.16/drivers' of http://github.com/Broadcom/stblinux into next/drivers
This pull request contains Broadcom ARM/ARM64 based SoCs drivers changes for
4.16, please pull the following:

- Arnd provides an update to the Raspberry Pi firmware interface and uses time64_t to
  print the time to make it more future proof

- Florian provides a set of updates to make the Broadcom STB Bus Interface Unit code
  work on newer ARM64-based chips, as well as perform the correct interface tuning
  for these chips to reach the expected performance

* tag 'arm-soc/for-4.16/drivers' of http://github.com/Broadcom/stblinux:
  soc: brcmstb: biuctrl: Move to early_initcall
  soc: brcmstb: Split initialization
  soc: brcmstb: biuctrl: Fine tune B53 MCP interface settings
  soc: brcmstb: biuctrl: Wire-up new registers
  soc: brcmstb: biuctrl: Prepare for saving/restoring other registers
  soc: brcmstb: Correct CPU_CREDIT_REG offset for Brahma-B53 CPUs
  soc: brcmstb: Make CPU credit offset more parameterized
  dt-bindings: arm: brcmstb: Correct BIUCTRL node documentation
  dt-bindings: arm: Add entry for Broadcom Brahma-B53
  firmware: raspberrypi: print time using time64_t

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:31:02 -08:00
Olof Johansson
594e45fd31 Merge tag 'arm-soc/for-4.16/devicetree' of http://github.com/Broadcom/stblinux into next/dt
This pull request contains Broadcom ARM-based SoCs Device Tree changes for
4.16, please pull the following:

- Stefan updates the BCM283x DTS to make consistent use of the existing GPIO
  defines for the polarity specifier

* tag 'arm-soc/for-4.16/devicetree' of http://github.com/Broadcom/stblinux:
  ARM: dts: bcm283x: Use GPIO polarity defines consistently

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-01-04 22:30:10 -08:00
Linus Torvalds
5866bec2f4 Merge tag 'drm-fixes-for-v4.15-rc7' of git://people.freedesktop.org/~airlied/linux
Pull drm fixes from Dave Airlie:
 "Just collecting some fixes to finish my hoildays :-).

  A few fixes for i915 (one documentation build fix), one ttm fix, one
  AMD display fix, one omapdrm fix, and a set of armada fixes from
  Russell.

  All seem pretty small, you can now return to your latest security news
  site"

* tag 'drm-fixes-for-v4.15-rc7' of git://people.freedesktop.org/~airlied/linux:
  drm/i915: Apply Display WA #1183 on skl, kbl, and cfl
  drm/ttm: check the return value of kzalloc
  drm/amd/display: call set csc_default if enable adjustment is false
  docs: fix, intel_guc_loader.c has been moved to intel_guc_fw.c
  omapdrm/dss/hdmi4_cec: fix interrupt handling
  documentation/gpu/i915: fix docs build error after file rename
  drm/i915: Put all non-blocking modesets onto an ordered wq
  drm/i915: Disable DC states around GMBUS on GLK
  drm/i915/psr: Fix register name mess up.
  drm/armada: fix YUV planar format framebuffer offsets
  drm/armada: improve efficiency of armada_drm_plane_calc_addrs()
  drm/armada: fix UV swap code
  drm/armada: fix SRAM powerdown
  drm/armada: fix leak of crtc structure
2018-01-04 18:02:55 -08:00
Dave Airlie
b0caa1333b Merge tag 'imx-drm-next-2018-01-02' of git://git.pengutronix.de/git/pza/linux into drm-next
drm/imx: format modifier support

- Add tiled prefetch support to PRE
- Add format modifier support to PRG and imx-drm-core
- Use runtime PM to control PRG clock
- Allow building ipu-v3 under COMPILE_TEST

* tag 'imx-drm-next-2018-01-02' of git://git.pengutronix.de/git/pza/linux:
  gpu: ipu-v3: allow to build with COMPILE_TEST
  drm/imx: advertise supported plane format modifiers
  drm/imx: add FB modifier support
  gpu: ipu-v3: prg: add modifier support
  gpu: ipu-v3: pre: add tiled prefetch support
  gpu: ipu-v3: prg: switch to runtime PM
2018-01-05 11:33:24 +10:00
Jeffy Chen
9a0e712010 mailmap: update Mark Yao's email address
Change the previous employers email addresses to the current email
address.

Link: http://lkml.kernel.org/r/20171229121726.31589-1-jeffy.chen@rock-chips.com
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
Acked-by: Martin Kepplinger <martink@posteo.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2018-01-04 16:45:09 -08:00
Andrea Arcangeli
0cbb4b4f4c userfaultfd: clear the vma->vm_userfaultfd_ctx if UFFD_EVENT_FORK fails
The previous fix in commit 384632e67e ("userfaultfd: non-cooperative:
fix fork use after free") corrected the refcounting in case of
UFFD_EVENT_FORK failure for the fork userfault paths.

That still didn't clear the vma->vm_userfaultfd_ctx of the vmas that
were set to point to the aborted new uffd ctx earlier in
dup_userfaultfd.

Link: http://lkml.kernel.org/r/20171223002505.593-2-aarcange@redhat.com
Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Reported-by: syzbot <syzkaller@googlegroups.com>
Reviewed-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Cc: Eric Biggers <ebiggers3@gmail.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2018-01-04 16:45:09 -08:00