05 Oct, 2017

1 commit

  • Update my imgtec.com and personal email address to my kernel.org one in
    a few places as MIPS will soon no longer be part of Imagination
    Technologies, and add mappings in .mailcap so get_maintainer.pl reports
    the right address.

    Signed-off-by: James Hogan
    Signed-off-by: Linus Torvalds

    James Hogan
     

30 Sep, 2017

1 commit

  • …j.anaszewski/linux-leds

    Pull LED fixes from Jacek Anaszewski:
    "Four fixes for the as3645a LED flash controller and one update to
    MAINTAINERS"

    * tag 'led_fixes-4.14-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
    MAINTAINERS: Add entry for MediaTek PMIC LED driver
    as3645a: Unregister indicator LED on device unbind
    as3645a: Use integer numbers for parsing LEDs
    dt: bindings: as3645a: Use LED number to refer to LEDs
    as3645a: Use ams,input-max-microamp as documented in DT bindings

    Linus Torvalds
     

26 Sep, 2017

1 commit


23 Sep, 2017

2 commits

  • Pull networking fixes from David Miller:

    1) Fix NAPI poll list corruption in enic driver, from Christian
    Lamparter.

    2) Fix route use after free, from Eric Dumazet.

    3) Fix regression in reuseaddr handling, from Josef Bacik.

    4) Assert the size of control messages in compat handling since we copy
    it in from userspace twice. From Meng Xu.

    5) SMC layer bug fixes (missing RCU locking, bad refcounting, etc.)
    from Ursula Braun.

    6) Fix races in AF_PACKET fanout handling, from Willem de Bruijn.

    7) Don't use ARRAY_SIZE on spinlock array which might have zero
    entries, from Geert Uytterhoeven.

    8) Fix miscomputation of checksum in ipv6 udp code, from Subash Abhinov
    Kasiviswanathan.

    9) Push the ipv6 header properly in ipv6 GRE tunnel driver, from Xin
    Long.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (75 commits)
    inet: fix improper empty comparison
    net: use inet6_rcv_saddr to compare sockets
    net: set tb->fast_sk_family
    net: orphan frags on stand-alone ptype in dev_queue_xmit_nit
    MAINTAINERS: update git tree locations for ieee802154 subsystem
    net: prevent dst uses after free
    net: phy: Fix truncation of large IRQ numbers in phy_attached_print()
    net/smc: no close wait in case of process shut down
    net/smc: introduce a delay
    net/smc: terminate link group if out-of-sync is received
    net/smc: longer delay for client link group removal
    net/smc: adapt send request completion notification
    net/smc: adjust net_device refcount
    net/smc: take RCU read lock for routing cache lookup
    net/smc: add receive timeout check
    net/smc: add missing dev_put
    net: stmmac: Cocci spatch "of_table"
    lan78xx: Use default values loaded from EEPROM/OTP after reset
    lan78xx: Allow EEPROM write for less than MAX_EEPROM_SIZE
    lan78xx: Fix for eeprom read/write when device auto suspend
    ...

    Linus Torvalds
     
  • Patches for ieee802154 will go through my new trees towards netdev from
    now on. The 6LoWPAN subsystem will stay as is (shared between ieee802154
    and bluetooth) and go through the bluetooth tree as usual.

    Signed-off-by: Stefan Schmidt
    Signed-off-by: David S. Miller

    Stefan Schmidt
     

20 Sep, 2017

1 commit


18 Sep, 2017

1 commit

  • Andy and Mika review code changes under drivers/acpi/pmic/ on
    a regular basis and I rely on their help with that, so add them
    as code reviwewers for that part of the kernel.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Lee Jones
    Reviewed-by: Mika Westerberg
    Reviewed-by: Andy Shevchenko

    Rafael Wysocki
     

17 Sep, 2017

1 commit

  • Pull networking fixes from David Miller:

    1) Fix hotplug deadlock in hv_netvsc, from Stephen Hemminger.

    2) Fix double-free in rmnet driver, from Dan Carpenter.

    3) INET connection socket layer can double put request sockets, fix
    from Eric Dumazet.

    4) Don't match collect metadata-mode tunnels if the device is down,
    from Haishuang Yan.

    5) Do not perform TSO6/GSO on ipv6 packets with extensions headers in
    be2net driver, from Suresh Reddy.

    6) Fix scaling error in gen_estimator, from Eric Dumazet.

    7) Fix 64-bit statistics deadlock in systemport driver, from Florian
    Fainelli.

    8) Fix use-after-free in sctp_sock_dump, from Xin Long.

    9) Reject invalid BPF_END instructions in verifier, from Edward Cree.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (43 commits)
    mlxsw: spectrum_router: Only handle IPv4 and IPv6 events
    Documentation: link in networking docs
    tcp: fix data delivery rate
    bpf/verifier: reject BPF_ALU64|BPF_END
    sctp: do not mark sk dumped when inet_sctp_diag_fill returns err
    sctp: fix an use-after-free issue in sctp_sock_dump
    netvsc: increase default receive buffer size
    tcp: update skb->skb_mstamp more carefully
    net: ipv4: fix l3slave check for index returned in IP_PKTINFO
    net: smsc911x: Quieten netif during suspend
    net: systemport: Fix 64-bit stats deadlock
    net: vrf: avoid gcc-4.6 warning
    qed: remove unnecessary call to memset
    tg3: clean up redundant initialization of tnapi
    tls: make tls_sw_free_resources static
    sctp: potential read out of bounds in sctp_ulpevent_type_enabled()
    MAINTAINERS: review Renesas DT bindings as well
    net_sched: gen_estimator: fix scaling error in bytes/packets samples
    nfp: wait for the NSP resource to appear on boot
    nfp: wait for board state before talking to the NSP
    ...

    Linus Torvalds
     

16 Sep, 2017

1 commit

  • Pull MIPS updates from Ralf Baechle:
    "This is the main pull request for 4.14 for MIPS; below a summary of
    the non-merge commits:

    CM:
    - Rename mips_cm_base to mips_gcr_base
    - Specify register size when generating accessors
    - Use BIT/GENMASK for register fields, order & drop shifts
    - Add cluster & block args to mips_cm_lock_other()

    CPC:
    - Use common CPS accessor generation macros
    - Use BIT/GENMASK for register fields, order & drop shifts
    - Introduce register modify (set/clear/change) accessors
    - Use change_*, set_* & clear_* where appropriate
    - Add CM/CPC 3.5 register definitions
    - Use GlobalNumber macros rather than magic numbers
    - Have asm/mips-cps.h include CM & CPC headers
    - Cluster support for topology functions
    - Detect CPUs in secondary clusters

    CPS:
    - Read GIC_VL_IDENT directly, not via irqchip driver

    DMA:
    - Consolidate coherent and non-coherent dma_alloc code
    - Don't use dma_cache_sync to implement fd_cacheflush

    FPU emulation / FP assist code:
    - Another series of 14 commits fixing corner cases such as NaN
    propgagation and other special input values.
    - Zero bits 32-63 of the result for a CLASS.D instruction.
    - Enhanced statics via debugfs
    - Do not use bools for arithmetic. GCC 7.1 moans about this.
    - Correct user fault_addr type

    Generic MIPS:
    - Enhancement of stack backtraces
    - Cleanup from non-existing options
    - Handle non word sized instructions when examining frame
    - Fix detection and decoding of ADDIUSP instruction
    - Fix decoding of SWSP16 instruction
    - Refactor handling of stack pointer in get_frame_info
    - Remove unreachable code from force_fcr31_sig()
    - Convert to using %pOF instead of full_name
    - Remove the R6000 support.
    - Move FP code from *_switch.S to *_fpu.S
    - Remove unused ST_OFF from r2300_switch.S
    - Allow platform to specify multiple its.S files
    - Add #includes to various files to ensure code builds reliable and
    without warning..
    - Remove __invalidate_kernel_vmap_range
    - Remove plat_timer_setup
    - Declare various variables & functions static
    - Abstract CPU core & VP(E) ID access through accessor functions
    - Store core & VP IDs in GlobalNumber-style variable
    - Unify checks for sibling CPUs
    - Add CPU cluster number accessors
    - Prevent direct use of generic_defconfig
    - Make CONFIG_MIPS_MT_SMP default y
    - Add __ioread64_copy
    - Remove unnecessary inclusions of linux/irqchip/mips-gic.h

    GIC:
    - Introduce asm/mips-gic.h with accessor functions
    - Use new GIC accessor functions in mips-gic-timer
    - Remove counter access functions from irq-mips-gic.c
    - Remove gic_read_local_vp_id() from irq-mips-gic.c
    - Simplify shared interrupt pending/mask reads in irq-mips-gic.c
    - Simplify gic_local_irq_domain_map() in irq-mips-gic.c
    - Drop gic_(re)set_mask() functions in irq-mips-gic.c
    - Remove gic_set_polarity(), gic_set_trigger(), gic_set_dual_edge(),
    gic_map_to_pin() and gic_map_to_vpe() from irq-mips-gic.c.
    - Convert remaining shared reg access, local int mask access and
    remaining local reg access to new accessors
    - Move GIC_LOCAL_INT_* to asm/mips-gic.h
    - Remove GIC_CPU_INT* macros from irq-mips-gic.c
    - Move various definitions to the driver
    - Remove gic_get_usm_range()
    - Remove __gic_irq_dispatch() forward declaration
    - Remove gic_init()
    - Use mips_gic_present() in place of gic_present and remove
    gic_present
    - Move gic_get_c0_*_int() to asm/mips-gic.h
    - Remove linux/irqchip/mips-gic.h
    - Inline __gic_init()
    - Inline gic_basic_init()
    - Make pcpu_masks a per-cpu variable
    - Use pcpu_masks to avoid reading GIC_SH_MASK*
    - Clean up mti, reserved-cpu-vectors handling
    - Use cpumask_first_and() in gic_set_affinity()
    - Let the core set struct irq_common_data affinity

    microMIPS:
    - Fix microMIPS stack unwinding on big endian systems

    MIPS-GIC:
    - SYNC after enabling GIC region

    NUMA:
    - Remove the unused parent_node() macro

    R6:
    - Constify r2_decoder_tables
    - Add accessor & bit definitions for GlobalNumber

    SMP:
    - Constify smp ops
    - Allow boot_secondary SMP op to return errors

    VDSO:
    - Drop gic_get_usm_range() usage
    - Avoid use of linux/irqchip/mips-gic.h

    Platform changes:

    Alchemy:
    - Add devboard machine type to cpuinfo
    - update cpu feature overrides
    - Threaded carddetect irqs for devboards

    AR7:
    - allow NULL clock for clk_get_rate

    BCM63xx:
    - Fix ENETDMA_6345_MAXBURST_REG offset
    - Allow NULL clock for clk_get_rate

    CI20:
    - Enable GPIO and RTC drivers in defconfig
    - Add ethernet and fixed-regulator nodes to DTS

    Generic platform:
    - Move Boston and NI 169445 FIT image source to their own files
    - Include asm/bootinfo.h for plat_fdt_relocated()
    - Include asm/time.h for get_c0_*_int()
    - Include asm/bootinfo.h for plat_fdt_relocated()
    - Include asm/time.h for get_c0_*_int()
    - Allow filtering enabled boards by requirements
    - Don't explicitly disable CONFIG_USB_SUPPORT
    - Bump default NR_CPUS to 16

    JZ4700:
    - Probe the jz4740-rtc driver from devicetree

    Lantiq:
    - Drop check of boot select from the spi-falcon driver.
    - Drop check of boot select from the lantiq-flash MTD driver.
    - Access boot cause register in the watchdog driver through regmap
    - Add device tree binding documentation for the watchdog driver
    - Add docs for the RCU DT bindings.
    - Convert the fpi bus driver to a platform_driver
    - Remove ltq_reset_cause() and ltq_boot_select(
    - Switch to a proper reset driver
    - Switch to a new drivers/soc GPHY driver
    - Add an USB PHY driver for the Lantiq SoCs using the RCU module
    - Use of_platform_default_populate instead of __dt_register_buses
    - Enable MFD_SYSCON to be able to use it for the RCU MFD
    - Replace ltq_boot_select() with dummy implementation.

    Loongson 2F:
    - Allow NULL clock for clk_get_rate

    Malta:
    - Use new GIC accessor functions

    NI 169445:
    - Add support for NI 169445 board.
    - Only include in 32r2el kernels

    Octeon:
    - Add support for watchdog of 78XX SOCs.
    - Add support for watchdog of CN68XX SOCs.
    - Expose support for mips32r1, mips32r2 and mips64r1
    - Enable more drivers in config file
    - Add support for accessing the boot vector.
    - Remove old boot vector code from watchdog driver
    - Define watchdog registers for 70xx, 73xx, 78xx, F75xx.
    - Make CSR functions node aware.
    - Allow access to CIU3 IRQ domains.
    - Misc cleanups in the watchdog driver

    Omega2+:
    - New board, add support and defconfig

    Pistachio:
    - Enable Root FS on NFS in defconfig

    Ralink:
    - Add Mediatek MT7628A SoC
    - Allow NULL clock for clk_get_rate
    - Explicitly request exclusive reset control in the pci-mt7620 PCI driver.

    SEAD3:
    - Only include in 32 bit kernels by default

    VoCore:
    - Add VoCore as a vendor t0 dt-bindings
    - Add defconfig file"

    * '4.14-features' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (167 commits)
    MIPS: Refactor handling of stack pointer in get_frame_info
    MIPS: Stacktrace: Fix microMIPS stack unwinding on big endian systems
    MIPS: microMIPS: Fix decoding of swsp16 instruction
    MIPS: microMIPS: Fix decoding of addiusp instruction
    MIPS: microMIPS: Fix detection of addiusp instruction
    MIPS: Handle non word sized instructions when examining frame
    MIPS: ralink: allow NULL clock for clk_get_rate
    MIPS: Loongson 2F: allow NULL clock for clk_get_rate
    MIPS: BCM63XX: allow NULL clock for clk_get_rate
    MIPS: AR7: allow NULL clock for clk_get_rate
    MIPS: BCM63XX: fix ENETDMA_6345_MAXBURST_REG offset
    mips: Save all registers when saving the frame
    MIPS: Add DWARF unwinding to assembly
    MIPS: Make SAVE_SOME more standard
    MIPS: Fix issues in backtraces
    MIPS: jz4780: DTS: Probe the jz4740-rtc driver from devicetree
    MIPS: Ci20: Enable RTC driver
    watchdog: octeon-wdt: Add support for 78XX SOCs.
    watchdog: octeon-wdt: Add support for cn68XX SOCs.
    watchdog: octeon-wdt: File cleaning.
    ...

    Linus Torvalds
     

14 Sep, 2017

6 commits

  • Add driver support for the Altera I2C Controller. The I2C
    controller is soft IP for use in FPGAs.

    Signed-off-by: Thor Thayer
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Wolfram Sang

    Thor Thayer
     
  • When adding myself as a reviewer for the Renesas Ethernet drivers
    I somehow forgot about the bindings -- I want to review them as well.

    Fixes: 8e6569af3a1b ("MAINTAINERS: add myself as Renesas Ethernet drivers reviewer")
    Signed-off-by: Sergei Shtylyov
    Signed-off-by: David S. Miller

    Sergei Shtylyov
     
  • Pull x86 fixes from Ingo Molnar:
    "The main changes are the PCID fixes from Andy, but there's also two
    hyperv fixes and two paravirt updates"

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/hyper-v: Remove duplicated HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED definition
    x86/hyper-V: Allocate the IDT entry early in boot
    paravirt: Switch maintainer
    x86/paravirt: Remove no longer used paravirt functions
    x86/mm/64: Initialize CR4.PCIDE early
    x86/hibernate/64: Mask off CR3's PCID bits in the saved CR3
    x86/mm: Get rid of VM_BUG_ON in switch_tlb_irqs_off()

    Linus Torvalds
     
  • Another merge window, another MAINTAINERS file disaster.

    People have serious problems with the alphabet and sorting, and poor
    Jérôme Glisse and Radim Krčmář get their names mangled by locale issues,
    turning them into some mangled mess (probably others do too, but those
    two stood out when sorting things again).

    And we now have two copies of the same 'AS3645A LED FLASH CONTROLLER
    DRIVER' in the tree and in the MAINTAINERS file, but that's a separate
    issue - the duplication is real, and I left them as two entries for the
    same name.

    This does not try to sort the actual section pattern entries, although I
    may end up doing that later.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Pull clk updates from Stephen Boyd:
    "The diff is dominated by the Allwinner A10/A20 SoCs getting converted
    to the sunxi-ng framework. Otherwise, the heavy hitters are various
    drivers for SoCs like AT91, Amlogic, Renesas, and Rockchip. There are
    some other new clk drivers in here too but overall this is just a
    bunch of clk drivers for various different pieces of hardware and a
    collection of non-critical fixes for clk drivers.

    New Drivers:
    - Allwinner R40 SoCs
    - Renesas R-Car Gen3 USB 2.0 clock selector PHY
    - Atmel AT91 audio PLL
    - Uniphier PXs3 SoCs
    - ARC HSDK Board PLLs
    - AXS10X Board PLLs
    - STMicroelectronics STM32H743 SoCs

    Removed Drivers:
    - Non-compiling mb86s7x support

    Updates:
    - Allwinner A10/A20 SoCs converted to sunxi-ng framework
    - Allwinner H3 CPU clk fixes
    - Renesas R-Car D3 SoC
    - Renesas V2H and M3-W modules
    - Samsung Exynos5420/5422/5800 audio fixes
    - Rockchip fractional clk approximation fixes
    - Rockchip rk3126 SoC support within the rk3128 driver
    - Amlogic gxbb CEC32 and sd_emmc clks
    - Amlogic meson8b reset controller support
    - IDT VersaClock 5P49V5925/5P49V6901 support
    - Qualcomm MSM8996 SMMU clks
    - Various 'const' applications for struct clk_ops
    - si5351 PLL reset bugfix
    - Uniphier audio on LD11/LD20 and ethernet support on LD11/LD20/Pro4/PXs2
    - Assorted Tegra clk driver fixes"

    * tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (120 commits)
    clk: si5351: fix PLL reset
    ASoC: atmel-classd: remove aclk clock
    ASoC: atmel-classd: remove aclk clock from DT binding
    clk: at91: clk-generated: make gclk determine audio_pll rate
    clk: at91: clk-generated: create function to find best_diff
    clk: at91: add audio pll clock drivers
    dt-bindings: clk: at91: add audio plls to the compatible list
    clk: at91: clk-generated: remove useless divisor loop
    clk: mb86s7x: Drop non-building driver
    clk: ti: check for null return in strrchr to avoid null dereferencing
    clk: Don't write error code into divider register
    clk: uniphier: add video input subsystem clock
    clk: uniphier: add audio system clock
    clk: stm32h7: Add stm32h743 clock driver
    clk: gate: expose clk_gate_ops::is_enabled
    clk: nxp: clk-lpc32xx: rename clk_gate_is_enabled()
    clk: uniphier: add PXs3 clock data
    clk: hi6220: change watchdog clock source
    clk: Kconfig: Name RK805 in Kconfig for COMMON_CLK_RK808
    clk: cs2000: Add cs2000_set_saved_rate
    ...

    Linus Torvalds
     
  • Pull RTC updates from Alexandre Belloni:
    "Subsystem:
    - remove .open() and .release() RTC ops
    - constify i2c_device_id

    New driver:
    - Realtek RTD1295
    - Android emulator (goldfish) RTC

    Drivers:
    - ds1307: Beginning of a huge cleanup
    - s35390a: handle invalid RTC time
    - sun6i: external oscillator gate support"

    * tag 'rtc-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (40 commits)
    rtc: ds1307: use octal permissions
    rtc: ds1307: fix braces
    rtc: ds1307: fix alignments and blank lines
    rtc: ds1307: use BIT
    rtc: ds1307: use u32
    rtc: ds1307: use sizeof
    rtc: ds1307: remove regs member
    rtc: Add Realtek RTD1295
    dt-bindings: rtc: Add Realtek RTD1295
    rtc: sun6i: Add support for the external oscillator gate
    rtc: goldfish: Add RTC driver for Android emulator
    dt-bindings: Add device tree binding for Goldfish RTC driver
    rtc: ds1307: add basic support for ds1341 chip
    rtc: ds1307: remove member nvram_offset from struct ds1307
    rtc: ds1307: factor out offset to struct chip_desc
    rtc: ds1307: factor out rtc_ops to struct chip_desc
    rtc: ds1307: factor out irq_handler to struct chip_desc
    rtc: ds1307: improve irq setup
    rtc: ds1307: constify struct chip_desc variables
    rtc: ds1307: improve trickle charger initialization
    ...

    Linus Torvalds
     

13 Sep, 2017

3 commits

  • Jeremy Fitzhardinge is stepping down as a paravirt maintainer. I'll
    replace him.

    While at it, update the file list to the actual pattern.

    Signed-off-by: Juergen Gross
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: akataria@vmware.com
    Cc: chrisw@sous-sol.org
    Cc: jeremy@goop.org
    Cc: rusty@rustcorp.com.au
    Cc: virtualization@lists.linux-foundation.org
    Link: http://lkml.kernel.org/r/20170905143407.9227-1-jgross@suse.com
    Signed-off-by: Ingo Molnar

    Juergen Gross
     
  • Pull dma-mapping updates from Christoph Hellwig:

    - removal of the old dma_alloc_noncoherent interface

    - remove unused flags to dma_declare_coherent_memory

    - restrict OF DMA configuration to specific physical busses

    - use the iommu mailing list for dma-mapping questions and patches

    * tag 'dma-mapping-4.14' of git://git.infradead.org/users/hch/dma-mapping:
    dma-coherent: fix dma_declare_coherent_memory() logic error
    ARM: imx: mx31moboard: Remove unused 'dma' variable
    dma-coherent: remove an unused variable
    MAINTAINERS: use the iommu list for the dma-mapping subsystem
    dma-coherent: remove the DMA_MEMORY_MAP and DMA_MEMORY_IO flags
    dma-coherent: remove the DMA_MEMORY_INCLUDES_CHILDREN flag
    of: restrict DMA configuration
    dma-mapping: remove dma_alloc_noncoherent and dma_free_noncoherent
    i825xx: switch to switch to dma_alloc_attrs
    au1000_eth: switch to dma_alloc_attrs
    sgiseeq: switch to dma_alloc_attrs
    dma-mapping: reduce dma_mapping_error inline bloat

    Linus Torvalds
     
  • Pull selinux updates from Paul Moore:
    "A relatively quiet period for SELinux, 11 patches with only two/three
    having any substantive changes.

    These noteworthy changes include another tweak to the NNP/nosuid
    handling, per-file labeling for cgroups, and an object class fix for
    AF_UNIX/SOCK_RAW sockets; the rest of the changes are minor tweaks or
    administrative updates (Stephen's email update explains the file
    explosion in the diffstat).

    Everything passes the selinux-testsuite"

    [ Also a couple of small patches from the security tree from Tetsuo
    Handa for Tomoyo and LSM cleanup. The separation of security policy
    updates wasn't all that clean - Linus ]

    * tag 'selinux-pr-20170831' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
    selinux: constify nf_hook_ops
    selinux: allow per-file labeling for cgroupfs
    lsm_audit: update my email address
    selinux: update my email address
    MAINTAINERS: update the NetLabel and Labeled Networking information
    selinux: use GFP_NOWAIT in the AVC kmem_caches
    selinux: Generalize support for NNP/nosuid SELinux domain transitions
    selinux: genheaders should fail if too many permissions are defined
    selinux: update the selinux info in MAINTAINERS
    credits: update Paul Moore's info
    selinux: Assign proper class to PF_UNIX/SOCK_RAW sockets
    tomoyo: Update URLs in Documentation/admin-guide/LSM/tomoyo.rst
    LSM: Remove security_task_create() hook.

    Linus Torvalds
     

11 Sep, 2017

3 commits

  • Pull ARM SoC driver updates from Olof Johansson:
    "This branch contains platform-related driver updates for ARM and ARM64.

    Among them:

    - Reset driver updates:
    + New API for dealing with arrays of resets
    + Make unimplemented {de,}assert return success on shared resets
    + MSDKv1 driver
    + Removal of obsolete Gemini reset driver
    + Misc updates for sunxi and Uniphier

    - SoC drivers:
    + Platform SoC driver registration on Tegra
    + Shuffle of Qualcomm drivers into a submenu
    + Allwinner A64 support for SRAM
    + Renesas R-Car R3 support
    + Power domains for Rockchip RK3366

    - Misc updates and smaller fixes for TEE and memory driver
    subsystems"

    * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (54 commits)
    firmware: arm_scpi: fix endianness of dev_id in struct dev_pstate_set
    soc/tegra: fuse: Add missing semi-colon
    soc/tegra: Restrict SoC device registration to Tegra
    drivers: soc: sunxi: add support for A64 and its SRAM C
    drivers: soc: sunxi: add support for remapping func value to reg value
    drivers: soc: sunxi: fix error processing on base address when claiming
    dt-bindings: add binding for Allwinner A64 SRAM controller and SRAM C
    bus: sunxi-rsb: Enable by default for ARM64
    soc/tegra: Register SoC device
    firmware: tegra: set drvdata earlier
    memory: Convert to using %pOF instead of full_name
    soc: Convert to using %pOF instead of full_name
    bus: Convert to using %pOF instead of full_name
    firmware: Convert to using %pOF instead of full_name
    soc: mediatek: add SCPSYS power domain driver for MediaTek MT7622 SoC
    soc: mediatek: add header files required for MT7622 SCPSYS dt-binding
    soc: mediatek: reduce code duplication of scpsys_probe across all SoCs
    dt-bindings: soc: update the binding document for SCPSYS on MediaTek MT7622 SoC
    reset: uniphier: add analog amplifiers reset control
    reset: uniphier: add video input subsystem reset control
    ...

    Linus Torvalds
     
  • Pull ARM/arm64 SoC platform updates from Olof Johansson: "This branch
    contains platform updates for 32- and 64-bit ARM, including defconfig
    updates to enable new options, drivers and platforms. There are also a
    few fixes and cleanups for some existing vendors.

    Some of the things worth highlighting here are:

    - Enabling new crypt drivers on arm64 defconfig

    - QCOM IPQ8074 clocks and pinctrl drivers on arm64 defconfig

    - Debug support enabled for Renesas r8a7743

    - Various config updates for Renesas platforms (sound, USB, other
    drivers)

    - Platform support (including SMP) for TI dra762

    - OMAP cleanups: Move to use generic 8250 debug_ll, removal of stale
    DMA code"

    * tag 'armsoc-platforms' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (109 commits)
    ARM: multi_v7_defconfig: make eSDHC driver built-in
    arm64: defconfig: enable rockchip graphics
    MAINTAINERS: Update Cavium ThunderX2 entry
    ARM: config: aspeed: Add I2C, VUART, LPC Snoop
    ARM: configs: aspeed: Update Aspeed G4 with VMSPLIT_2G
    ARM: s3c24xx: Fix NAND ECC mode for mini2440 board
    ARM: davinci_all_defconfig: enable tinydrm and ST7586
    arm64: defconfig: Enable QCOM IPQ8074 clock and pinctrl
    ARM: defconfig: tegra: Enable ChipIdea UDC driver
    ARM: configs: Add Tegra I2S interfaces to multi_v7_defconfig
    ARM: tegra: Add Tegra I2S interfaces to defconfig
    ARM: tegra: Update default configuration for v4.13-rc1
    MAINTAINERS: update ARM/ZTE entry
    soc: versatile: remove unnecessary static in realview_soc_probe()
    ARM: Convert to using %pOF instead of full_name
    ARM: hisi: Fix typo in comment
    ARM: multi_v7_defconfig: add CONFIG_BRCMSTB_THERMAL
    arm64: defconfig: add CONFIG_BRCMSTB_THERMAL
    arm64: defconfig: add recently added crypto drivers as modules
    arm64: defconfig: enable CONFIG_UNIPHIER_WATCHDOG
    ...

    Linus Torvalds
     
  • Pull sparc updates from David Miller:

    1) Use register window state adjustment instructions when available,
    from Anthony Yznaga.

    2) Add VCC console concentrator driver, from Jag Raman.

    3) Add 16GB hugepage support, from Nitin Gupta.

    4) Support cpu 'poke' hypercall, from Vijay Kumar.

    5) Add M7/M8 optimized memcpy/memset/copy_{to,from}_user, from Babu
    Moger.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next: (33 commits)
    sparc64: Handle additional cases of no fault loads
    sparc64: speed up etrap/rtrap on NG2 and later processors
    sparc64: vcc: make ktermios const
    sparc: leon: grpci1: constify of_device_id
    sparc: leon: grpci2: constify of_device_id
    sparc64: vcc: Check for IS_ERR() instead of NULL
    sparc64: Cleanup hugepage table walk functions
    sparc64: Add 16GB hugepage support
    sparc64: Support huge PUD case in get_user_pages
    sparc64: vcc: Add install & cleanup TTY operations
    sparc64: vcc: Add break_ctl TTY operation
    sparc64: vcc: Add chars_in_buffer TTY operation
    sparc64: vcc: Add write & write_room TTY operations
    sparc64: vcc: Add hangup TTY operation
    sparc64: vcc: Add open & close TTY operations
    sparc64: vcc: Enable LDC event processing engine
    sparc64: vcc: Add RX & TX timer for delayed LDC operation
    sparc64: vcc: Create sysfs attribute group
    sparc64: vcc: Enable VCC port probe and removal
    sparc64: vcc: TTY driver initialization and cleanup
    ...

    Linus Torvalds
     

10 Sep, 2017

4 commits

  • Pull IOMMU updates from Joerg Roedel:
    "Slightly more changes than usual this time:

    - KDump Kernel IOMMU take-over code for AMD IOMMU. The code now tries
    to preserve the mappings of the kernel so that master aborts for
    devices are avoided. Master aborts cause some devices to fail in
    the kdump kernel, so this code makes the dump more likely to
    succeed when AMD IOMMU is enabled.

    - common flush queue implementation for IOVA code users. The code is
    still optional, but AMD and Intel IOMMU drivers had their own
    implementation which is now unified.

    - finish support for iommu-groups. All drivers implement this feature
    now so that IOMMU core code can rely on it.

    - finish support for 'struct iommu_device' in iommu drivers. All
    drivers now use the interface.

    - new functions in the IOMMU-API for explicit IO/TLB flushing. This
    will help to reduce the number of IO/TLB flushes when IOMMU drivers
    support this interface.

    - support for mt2712 in the Mediatek IOMMU driver

    - new IOMMU driver for QCOM hardware

    - system PM support for ARM-SMMU

    - shutdown method for ARM-SMMU-v3

    - some constification patches

    - various other small improvements and fixes"

    * tag 'iommu-updates-v4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (87 commits)
    iommu/vt-d: Don't be too aggressive when clearing one context entry
    iommu: Introduce Interface for IOMMU TLB Flushing
    iommu/s390: Constify iommu_ops
    iommu/vt-d: Avoid calling virt_to_phys() on null pointer
    iommu/vt-d: IOMMU Page Request needs to check if address is canonical.
    arm/tegra: Call bus_set_iommu() after iommu_device_register()
    iommu/exynos: Constify iommu_ops
    iommu/ipmmu-vmsa: Make ipmmu_gather_ops const
    iommu/ipmmu-vmsa: Rereserving a free context before setting up a pagetable
    iommu/amd: Rename a few flush functions
    iommu/amd: Check if domain is NULL in get_domain() and return -EBUSY
    iommu/mediatek: Fix a build warning of BIT(32) in ARM
    iommu/mediatek: Fix a build fail of m4u_type
    iommu: qcom: annotate PM functions as __maybe_unused
    iommu/pamu: Fix PAMU boot crash
    memory: mtk-smi: Degrade SMI init to module_init
    iommu/mediatek: Enlarge the validate PA range for 4GB mode
    iommu/mediatek: Disable iommu clock when system suspend
    iommu/mediatek: Move pgtable allocation into domain_alloc
    iommu/mediatek: Merge 2 M4U HWs into one iommu domain
    ...

    Linus Torvalds
     
  • Pull MTD updates from Boris Brezillon:
    "General updates:
    - Constify pci_device_id in various drivers
    - Constify device_type
    - Remove pad control code from the Gemini driver
    - Use %pOF to print OF node full_name
    - Various fixes in the physmap_of driver
    - Remove unused vars in mtdswap
    - Check devm_kzalloc() return value in the spear_smi driver
    - Check clk_prepare_enable() return code in the st_spi_fsm driver
    - Create per MTD device debugfs enties

    NAND updates, from Boris Brezillon:
    - Fix memory leaks in the core
    - Remove unused NAND locking support
    - Rename nand.h into rawnand.h (preparing support for spi NANDs)
    - Use NAND_MAX_ID_LEN where appropriate
    - Fix support for 20nm Hynix chips
    - Fix support for Samsung and Hynix SLC NANDs
    - Various cleanup, improvements and fixes in the qcom driver
    - Fixes for bugs detected by various static code analysis tools
    - Fix mxc ooblayout definition
    - Add a new part_parsers to tmio and sharpsl platform data in order
    to define a custom list of partition parsers
    - Request the reset line in exclusive mode in the sunxi driver
    - Fix a build error in the orion-nand driver when compiled for ARMv4
    - Allow 64-bit mvebu platforms to select the PXA3XX driver

    SPI NOR updates, from Cyrille Pitchen and Marek Vasut:
    - add support to the JEDEC JESD216B specification (SFDP tables).
    - add support to the Intel Denverton SPI flash controller.
    - fix error recovery for Spansion/Cypress SPI NOR memories.
    - fix 4-byte address management for the Aspeed SPI controller.
    - add support to some Microchip SST26 memory parts
    - remove unneeded pinctrl header Write a message for tag:"

    * tag 'for-linus-20170904' of git://git.infradead.org/linux-mtd: (74 commits)
    mtd: nand: complain loudly when chip->bits_per_cell is not correctly initialized
    mtd: nand: make Samsung SLC NAND usable again
    mtd: nand: tmio: Register partitions using the parsers
    mfd: tmio: Add partition parsers platform data
    mtd: nand: sharpsl: Register partitions using the parsers
    mtd: nand: sharpsl: Add partition parsers platform data
    mtd: nand: qcom: Support for IPQ8074 QPIC NAND controller
    mtd: nand: qcom: support for IPQ4019 QPIC NAND controller
    dt-bindings: qcom_nandc: IPQ8074 QPIC NAND documentation
    dt-bindings: qcom_nandc: IPQ4019 QPIC NAND documentation
    dt-bindings: qcom_nandc: fix the ipq806x device tree example
    mtd: nand: qcom: support for different DEV_CMD register offsets
    mtd: nand: qcom: QPIC data descriptors handling
    mtd: nand: qcom: enable BAM or ADM mode
    mtd: nand: qcom: erased codeword detection configuration
    mtd: nand: qcom: support for read location registers
    mtd: nand: qcom: support for passing flags in DMA helper functions
    mtd: nand: qcom: add BAM DMA descriptor handling
    mtd: nand: qcom: allocate BAM transaction
    mtd: nand: qcom: DMA mapping support for register read buffer
    ...

    Linus Torvalds
     
  • Pull i2c updates from Wolfram Sang:

    - new drivers for Spreadtrum I2C, Intel Cherry Trail Whiskey Cove SMBUS

    - quite some driver updates

    - cleanups for the i2c-mux subsystem

    - some subsystem-wide constification

    - further cleanup of include/linux/i2c

    * 'i2c/for-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (50 commits)
    i2c: sprd: Fix undefined reference errors
    i2c: nomadik: constify amba_id
    i2c: versatile: Make i2c_algo_bit_data const
    i2c: busses: make i2c_adapter_quirks const
    i2c: busses: make i2c_adapter const
    i2c: busses: make i2c_algorithm const
    i2c: Add Spreadtrum I2C controller driver
    dt-bindings: i2c: Add Spreadtrum I2C controller documentation
    i2c-cht-wc: make cht_wc_i2c_adap_driver static
    MAINTAINERS: Add entry for drivers/i2c/busses/i2c-cht-wc.c
    i2c: aspeed: Retain delay/setup/hold values when configuring bus frequency
    dt-bindings: i2c: eeprom: Document vendor to be used and deprecated ones
    i2c: i801: Restore the presence state of P2SB PCI device after reading BAR
    MAINTAINERS: drop entry for Blackfin I2C and Sonic's email
    blackfin: merge the two TWI header files
    i2c: davinci: Preserve return value of devm_clk_get
    i2c: mediatek: Add i2c compatible for MediaTek MT7622
    dt-bindings: i2c: Add MediaTek MT7622 i2c binding
    dt-bindings: i2c: modify information formats
    i2c: mux: i2c-arb-gpio-challenge: allow compiling w/o OF support
    ...

    Linus Torvalds
     
  • Merge more updates from Andrew Morton:

    - most of the rest of MM

    - a small number of misc things

    - lib/ updates

    - checkpatch

    - autofs updates

    - ipc/ updates

    * emailed patches from Andrew Morton : (126 commits)
    ipc: optimize semget/shmget/msgget for lots of keys
    ipc/sem: play nicer with large nsops allocations
    ipc/sem: drop sem_checkid helper
    ipc: convert kern_ipc_perm.refcount from atomic_t to refcount_t
    ipc: convert sem_undo_list.refcnt from atomic_t to refcount_t
    ipc: convert ipc_namespace.count from atomic_t to refcount_t
    kcov: support compat processes
    sh: defconfig: cleanup from old Kconfig options
    mn10300: defconfig: cleanup from old Kconfig options
    m32r: defconfig: cleanup from old Kconfig options
    drivers/pps: use surrounding "if PPS" to remove numerous dependency checks
    drivers/pps: aesthetic tweaks to PPS-related content
    cpumask: make cpumask_next() out-of-line
    kmod: move #ifdef CONFIG_MODULES wrapper to Makefile
    kmod: split off umh headers into its own file
    MAINTAINERS: clarify kmod is just a kernel module loader
    kmod: split out umh code into its own file
    test_kmod: flip INT checks to be consistent
    test_kmod: remove paranoid UINT_MAX check on uint range processing
    vfat: deduplicate hex2bin()
    ...

    Linus Torvalds
     

09 Sep, 2017

7 commits

  • Collection of aesthetic adjustments to various PPS-related files,
    directories and Documentation, some quite minor just for the sake of
    consistency, including:

    * Updated example of pps device tree node (courtesy Rodolfo G.)
    * "PPS-API" -> "PPS API"
    * "pps_source_info_s" -> "pps_source_info"
    * "ktimer driver" -> "pps-ktimer driver"
    * "ppstest /dev/pps0" -> "ppstest /dev/pps1" to match example
    * Add missing PPS-related entries to MAINTAINERS file
    * Other trivialities

    Link: http://lkml.kernel.org/r/alpine.LFD.2.20.1708261048220.8106@localhost.localdomain
    Signed-off-by: Robert P. J. Day
    Acked-by: Rodolfo Giometti
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     
  • In the future usermode helper users do not need to carry in all the of
    kmod headers declarations.

    Since kmod.h still includes umh.h this change has no functional changes,
    each umh user can be cleaned up separately later and with time.

    Link: http://lkml.kernel.org/r/20170810180618.22457-4-mcgrof@kernel.org
    Signed-off-by: Luis R. Rodriguez
    Cc: Kees Cook
    Cc: Dmitry Torokhov
    Cc: Jessica Yu
    Cc: Rusty Russell
    Cc: Michal Marek
    Cc: Petr Mladek
    Cc: Miroslav Benes
    Cc: Josh Poimboeuf
    Cc: Guenter Roeck
    Cc: "Eric W. Biederman"
    Cc: Matt Redfearn
    Cc: Dan Carpenter
    Cc: Colin Ian King
    Cc: Daniel Mentz
    Cc: David Binderman
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Luis R. Rodriguez
     
  • This should make it clearer what the kmod code is now that
    the umh code is split out separately.

    Link: http://lkml.kernel.org/r/20170810180618.22457-3-mcgrof@kernel.org
    Signed-off-by: Luis R. Rodriguez
    Cc: Kees Cook
    Cc: Dmitry Torokhov
    Cc: Jessica Yu
    Cc: Rusty Russell
    Cc: Michal Marek
    Cc: Petr Mladek
    Cc: Miroslav Benes
    Cc: Josh Poimboeuf
    Cc: Guenter Roeck
    Cc: "Eric W. Biederman"
    Cc: Matt Redfearn
    Cc: Dan Carpenter
    Cc: Colin Ian King
    Cc: Daniel Mentz
    Cc: David Binderman
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Luis R. Rodriguez
     
  • Patch series "kmod: few code cleanups to split out umh code"

    The usermode helper has a provenance from the old usb code which first
    required a usermode helper. Eventually this was shoved into kmod.c and
    the kernel's modprobe calls was converted over eventually to share the
    same code. Over time the list of usermode helpers in the kernel has grown
    -- so kmod is just but one user of the API.

    This series is a simple logical cleanup which acknowledges the code
    evolution of the usermode helper and shoves the UMH API into its own
    dedicated file. This way users of the API can later just include umh.h
    instead of kmod.h.

    Note despite the diff state the first patch really is just a code shove,
    no functional changes are done there. I did use git format-patch -M to
    generate the patch, but in the end the split was not enough for git to
    consider it a rename hence the large diffstat.

    I've put this through 0-day and it gives me their machine compilation
    blessings with all tests as OK.

    This patch (of 4):

    There's a slew of usermode helper users and kmod is just one of them.
    Split out the usermode helper code into its own file to keep the logic and
    focus split up.

    This change provides no functional changes.

    Link: http://lkml.kernel.org/r/20170810180618.22457-2-mcgrof@kernel.org
    Signed-off-by: Luis R. Rodriguez
    Cc: Kees Cook
    Cc: Dmitry Torokhov
    Cc: Jessica Yu
    Cc: Rusty Russell
    Cc: Michal Marek
    Cc: Petr Mladek
    Cc: Miroslav Benes
    Cc: Josh Poimboeuf
    Cc: Guenter Roeck
    Cc: "Eric W. Biederman"
    Cc: Matt Redfearn
    Cc: Dan Carpenter
    Cc: Colin Ian King
    Cc: Daniel Mentz
    Cc: David Binderman
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Luis R. Rodriguez
     
  • Patch series "HMM (Heterogeneous Memory Management)", v25.

    Heterogeneous Memory Management (HMM) (description and justification)

    Today device driver expose dedicated memory allocation API through their
    device file, often relying on a combination of IOCTL and mmap calls.
    The device can only access and use memory allocated through this API.
    This effectively split the program address space into object allocated
    for the device and useable by the device and other regular memory
    (malloc, mmap of a file, share memory, â) only accessible by
    CPU (or in a very limited way by a device by pinning memory).

    Allowing different isolated component of a program to use a device thus
    require duplication of the input data structure using device memory
    allocator. This is reasonable for simple data structure (array, grid,
    image, â) but this get extremely complex with advance data
    structure (list, tree, graph, â) that rely on a web of memory
    pointers. This is becoming a serious limitation on the kind of work
    load that can be offloaded to device like GPU.

    New industry standard like C++, OpenCL or CUDA are pushing to remove
    this barrier. This require a shared address space between GPU device
    and CPU so that GPU can access any memory of a process (while still
    obeying memory protection like read only). This kind of feature is also
    appearing in various other operating systems.

    HMM is a set of helpers to facilitate several aspects of address space
    sharing and device memory management. Unlike existing sharing mechanism
    that rely on pining pages use by a device, HMM relies on mmu_notifier to
    propagate CPU page table update to device page table.

    Duplicating CPU page table is only one aspect necessary for efficiently
    using device like GPU. GPU local memory have bandwidth in the TeraBytes/
    second range but they are connected to main memory through a system bus
    like PCIE that is limited to 32GigaBytes/second (PCIE 4.0 16x). Thus it
    is necessary to allow migration of process memory from main system memory
    to device memory. Issue is that on platform that only have PCIE the
    device memory is not accessible by the CPU with the same properties as
    main memory (cache coherency, atomic operations, ...).

    To allow migration from main memory to device memory HMM provides a set of
    helper to hotplug device memory as a new type of ZONE_DEVICE memory which
    is un-addressable by CPU but still has struct page representing it. This
    allow most of the core kernel logic that deals with a process memory to
    stay oblivious of the peculiarity of device memory.

    When page backing an address of a process is migrated to device memory the
    CPU page table entry is set to a new specific swap entry. CPU access to
    such address triggers a migration back to system memory, just like if the
    page was swap on disk. HMM also blocks any one from pinning a ZONE_DEVICE
    page so that it can always be migrated back to system memory if CPU access
    it. Conversely HMM does not migrate to device memory any page that is pin
    in system memory.

    To allow efficient migration between device memory and main memory a new
    migrate_vma() helpers is added with this patchset. It allows to leverage
    device DMA engine to perform the copy operation.

    This feature will be use by upstream driver like nouveau mlx5 and probably
    other in the future (amdgpu is next suspect in line). We are actively
    working on nouveau and mlx5 support. To test this patchset we also worked
    with NVidia close source driver team, they have more resources than us to
    test this kind of infrastructure and also a bigger and better userspace
    eco-system with various real industry workload they can be use to test and
    profile HMM.

    The expected workload is a program builds a data set on the CPU (from
    disk, from network, from sensors, â). Program uses GPU API (OpenCL,
    CUDA, ...) to give hint on memory placement for the input data and also
    for the output buffer. Program call GPU API to schedule a GPU job, this
    happens using device driver specific ioctl. All this is hidden from
    programmer point of view in case of C++ compiler that transparently
    offload some part of a program to GPU. Program can keep doing other stuff
    on the CPU while the GPU is crunching numbers.

    It is expected that CPU will not access the same data set as the GPU while
    GPU is working on it, but this is not mandatory. In fact we expect some
    small memory object to be actively access by both GPU and CPU concurrently
    as synchronization channel and/or for monitoring purposes. Such object
    will stay in system memory and should not be bottlenecked by system bus
    bandwidth (rare write and read access from both CPU and GPU).

    As we are relying on device driver API, HMM does not introduce any new
    syscall nor does it modify any existing ones. It does not change any
    POSIX semantics or behaviors. For instance the child after a fork of a
    process that is using HMM will not be impacted in anyway, nor is there any
    data hazard between child COW or parent COW of memory that was migrated to
    device prior to fork.

    HMM assume a numbers of hardware features. Device must allow device page
    table to be updated at any time (ie device job must be preemptable).
    Device page table must provides memory protection such as read only.
    Device must track write access (dirty bit). Device must have a minimum
    granularity that match PAGE_SIZE (ie 4k).

    Reviewer (just hint):
    Patch 1 HMM documentation
    Patch 2 introduce core infrastructure and definition of HMM, pretty
    small patch and easy to review
    Patch 3 introduce the mirror functionality of HMM, it relies on
    mmu_notifier and thus someone familiar with that part would be
    in better position to review
    Patch 4 is an helper to snapshot CPU page table while synchronizing with
    concurrent page table update. Understanding mmu_notifier makes
    review easier.
    Patch 5 is mostly a wrapper around handle_mm_fault()
    Patch 6 add new add_pages() helper to avoid modifying each arch memory
    hot plug function
    Patch 7 add a new memory type for ZONE_DEVICE and also add all the logic
    in various core mm to support this new type. Dan Williams and
    any core mm contributor are best people to review each half of
    this patchset
    Patch 8 special case HMM ZONE_DEVICE pages inside put_page() Kirill and
    Dan Williams are best person to review this
    Patch 9 allow to uncharge a page from memory group without using the lru
    list field of struct page (best reviewer: Johannes Weiner or
    Vladimir Davydov or Michal Hocko)
    Patch 10 Add support to uncharge ZONE_DEVICE page from a memory cgroup (best
    reviewer: Johannes Weiner or Vladimir Davydov or Michal Hocko)
    Patch 11 add helper to hotplug un-addressable device memory as new type
    of ZONE_DEVICE memory (new type introducted in patch 3 of this
    serie). This is boiler plate code around memory hotplug and it
    also pick a free range of physical address for the device memory.
    Note that the physical address do not point to anything (at least
    as far as the kernel knows).
    Patch 12 introduce a new hmm_device class as an helper for device driver
    that want to expose multiple device memory under a common fake
    device driver. This is usefull for multi-gpu configuration.
    Anyone familiar with device driver infrastructure can review
    this. Boiler plate code really.
    Patch 13 add a new migrate mode. Any one familiar with page migration is
    welcome to review.
    Patch 14 introduce a new migration helper (migrate_vma()) that allow to
    migrate a range of virtual address of a process using device DMA
    engine to perform the copy. It is not limited to do copy from and
    to device but can also do copy between any kind of source and
    destination memory. Again anyone familiar with migration code
    should be able to verify the logic.
    Patch 15 optimize the new migrate_vma() by unmapping pages while we are
    collecting them. This can be review by any mm folks.
    Patch 16 add unaddressable memory migration to helper introduced in patch
    7, this can be review by anyone familiar with migration code
    Patch 17 add a feature that allow device to allocate non-present page on
    the GPU when migrating a range of address to device memory. This
    is an helper for device driver to avoid having to first allocate
    system memory before migration to device memory
    Patch 18 add a new kind of ZONE_DEVICE memory for cache coherent device
    memory (CDM)
    Patch 19 add an helper to hotplug CDM memory

    Previous patchset posting :
    v1 http://lwn.net/Articles/597289/
    v2 https://lkml.org/lkml/2014/6/12/559
    v3 https://lkml.org/lkml/2014/6/13/633
    v4 https://lkml.org/lkml/2014/8/29/423
    v5 https://lkml.org/lkml/2014/11/3/759
    v6 http://lwn.net/Articles/619737/
    v7 http://lwn.net/Articles/627316/
    v8 https://lwn.net/Articles/645515/
    v9 https://lwn.net/Articles/651553/
    v10 https://lwn.net/Articles/654430/
    v11 http://www.gossamer-threads.com/lists/linux/kernel/2286424
    v12 http://www.kernelhub.org/?msg=972982&p=2
    v13 https://lwn.net/Articles/706856/
    v14 https://lkml.org/lkml/2016/12/8/344
    v15 http://www.mail-archive.com/linux-kernel@xxxxxxxxxxxxxxx/msg1304107.html
    v16 http://www.spinics.net/lists/linux-mm/msg119814.html
    v17 https://lkml.org/lkml/2017/1/27/847
    v18 https://lkml.org/lkml/2017/3/16/596
    v19 https://lkml.org/lkml/2017/4/5/831
    v20 https://lwn.net/Articles/720715/
    v21 https://lkml.org/lkml/2017/4/24/747
    v22 http://lkml.iu.edu/hypermail/linux/kernel/1705.2/05176.html
    v23 https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1404788.html
    v24 https://lwn.net/Articles/726691/

    This patch (of 19):

    This adds documentation for HMM (Heterogeneous Memory Management). It
    presents the motivation behind it, the features necessary for it to be
    useful and and gives an overview of how this is implemented.

    Link: http://lkml.kernel.org/r/20170817000548.32038-2-jglisse@redhat.com
    Signed-off-by: Jérôme Glisse
    Cc: John Hubbard
    Cc: Dan Williams
    Cc: David Nellans
    Cc: Balbir Singh
    Cc: Aneesh Kumar
    Cc: Benjamin Herrenschmidt
    Cc: Evgeny Baskakov
    Cc: Johannes Weiner
    Cc: Kirill A. Shutemov
    Cc: Mark Hairgrove
    Cc: Michal Hocko
    Cc: Paul E. McKenney
    Cc: Ross Zwisler
    Cc: Sherry Cheung
    Cc: Subhash Gutti
    Cc: Vladimir Davydov
    Cc: Bob Liu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jérôme Glisse
     
  • Pull PCI updates from Bjorn Helgaas:

    - add enhanced Downstream Port Containment support, which prints more
    details about Root Port Programmed I/O errors (Dongdong Liu)

    - add Layerscape ls1088a and ls2088a support (Hou Zhiqiang)

    - add MediaTek MT2712 and MT7622 support (Ryder Lee)

    - add MediaTek MT2712 and MT7622 MSI support (Honghui Zhang)

    - add Qualcom IPQ8074 support (Varadarajan Narayanan)

    - add R-Car r8a7743/5 device tree support (Biju Das)

    - add Rockchip per-lane PHY support for better power management (Shawn
    Lin)

    - fix IRQ mapping for hot-added devices by replacing the
    pci_fixup_irqs() boot-time design with a host bridge hook called at
    probe-time (Lorenzo Pieralisi, Matthew Minter)

    - fix race when enabling two devices that results in upstream bridge
    not being enabled correctly (Srinath Mannam)

    - fix pciehp power fault infinite loop (Keith Busch)

    - fix SHPC bridge MSI hotplug events by enabling bus mastering
    (Aleksandr Bezzubikov)

    - fix a VFIO issue by correcting PCIe capability sizes (Alex
    Williamson)

    - fix an INTD issue on Xilinx and possibly other drivers by unifying
    INTx IRQ domain support (Paul Burton)

    - avoid IOMMU stalls by marking AMD Stoney GPU ATS as broken (Joerg
    Roedel)

    - allow APM X-Gene device assignment to guests by adding an ACS quirk
    (Feng Kan)

    - fix driver crashes by disabling Extended Tags on Broadcom HT2100
    (Extended Tags support is required for PCIe Receivers but not
    Requesters, and we now enable them by default when Requesters support
    them) (Sinan Kaya)

    - fix MSIs for devices that use phantom RIDs for DMA by assuming MSIs
    use the real Requester ID (not a phantom RID) (Robin Murphy)

    - prevent assignment of Intel VMD children to guests (which may be
    supported eventually, but isn't yet) by not associating an IOMMU with
    them (Jon Derrick)

    - fix Intel VMD suspend/resume by releasing IRQs on suspend (Scott
    Bauer)

    - fix a Function-Level Reset issue with Intel 750 NVMe by waiting
    longer (up to 60sec instead of 1sec) for device to become ready
    (Sinan Kaya)

    - fix a Function-Level Reset issue on iProc Stingray by working around
    hardware defects in the CRS implementation (Oza Pawandeep)

    - fix an issue with Intel NVMe P3700 after an iProc reset by adding a
    delay during shutdown (Oza Pawandeep)

    - fix a Microsoft Hyper-V lockdep issue by polling instead of blocking
    in compose_msi_msg() (Stephen Hemminger)

    - fix a wireless LAN driver timeout by clearing DesignWare MSI
    interrupt status after it is handled, not before (Faiz Abbas)

    - fix DesignWare ATU enable checking (Jisheng Zhang)

    - reduce Layerscape dependencies on the bootloader by doing more
    initialization in the driver (Hou Zhiqiang)

    - improve Intel VMD performance allowing allocation of more IRQ vectors
    than present CPUs (Keith Busch)

    - improve endpoint framework support for initial DMA mask, different
    BAR sizes, configurable page sizes, MSI, test driver, etc (Kishon
    Vijay Abraham I, Stan Drozd)

    - rework CRS support to add periodic messages while we poll during
    enumeration and after Function-Level Reset and prepare for possible
    other uses of CRS (Sinan Kaya)

    - clean up Root Port AER handling by removing unnecessary code and
    moving error handler methods to struct pcie_port_service_driver
    (Christoph Hellwig)

    - clean up error handling paths in various drivers (Bjorn Andersson,
    Fabio Estevam, Gustavo A. R. Silva, Harunobu Kurokawa, Jeffy Chen,
    Lorenzo Pieralisi, Sergei Shtylyov)

    - clean up SR-IOV resource handling by disabling VF decoding before
    updating the corresponding resource structs (Gavin Shan)

    - clean up DesignWare-based drivers by unifying quirks to update Class
    Code and Interrupt Pin and related handling of write-protected
    registers (Hou Zhiqiang)

    - clean up by adding empty generic pcibios_align_resource() and
    pcibios_fixup_bus() and removing empty arch-specific implementations
    (Palmer Dabbelt)

    - request exclusive reset control for several drivers to allow cleanup
    elsewhere (Philipp Zabel)

    - constify various structures (Arvind Yadav, Bhumika Goyal)

    - convert from full_name() to %pOF (Rob Herring)

    - remove unused variables from iProc, HiSi, Altera, Keystone (Shawn
    Lin)

    * tag 'pci-v4.14-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (170 commits)
    PCI: xgene: Clean up whitespace
    PCI: xgene: Define XGENE_PCI_EXP_CAP and use generic PCI_EXP_RTCTL offset
    PCI: xgene: Fix platform_get_irq() error handling
    PCI: xilinx-nwl: Fix platform_get_irq() error handling
    PCI: rockchip: Fix platform_get_irq() error handling
    PCI: altera: Fix platform_get_irq() error handling
    PCI: spear13xx: Fix platform_get_irq() error handling
    PCI: artpec6: Fix platform_get_irq() error handling
    PCI: armada8k: Fix platform_get_irq() error handling
    PCI: dra7xx: Fix platform_get_irq() error handling
    PCI: exynos: Fix platform_get_irq() error handling
    PCI: iproc: Clean up whitespace
    PCI: iproc: Rename PCI_EXP_CAP to IPROC_PCI_EXP_CAP
    PCI: iproc: Add 500ms delay during device shutdown
    PCI: Fix typos and whitespace errors
    PCI: Remove unused "res" variable from pci_resource_io()
    PCI: Correct kernel-doc of pci_vpd_srdt_size(), pci_vpd_srdt_tag()
    PCI/AER: Reformat AER register definitions
    iommu/vt-d: Prevent VMD child devices from being remapping targets
    x86/PCI: Use is_vmd() rather than relying on the domain number
    ...

    Linus Torvalds
     
  • Pull KVM updates from Radim Krčmář:
    "First batch of KVM changes for 4.14

    Common:
    - improve heuristic for boosting preempted spinlocks by ignoring
    VCPUs in user mode

    ARM:
    - fix for decoding external abort types from guests

    - added support for migrating the active priority of interrupts when
    running a GICv2 guest on a GICv3 host

    - minor cleanup

    PPC:
    - expose storage keys to userspace

    - merge kvm-ppc-fixes with a fix that missed 4.13 because of
    vacations

    - fixes

    s390:
    - merge of kvm/master to avoid conflicts with additional sthyi fixes

    - wire up the no-dat enhancements in KVM

    - multiple epoch facility (z14 feature)

    - Configuration z/Architecture Mode

    - more sthyi fixes

    - gdb server range checking fix

    - small code cleanups

    x86:
    - emulate Hyper-V TSC frequency MSRs

    - add nested INVPCID

    - emulate EPTP switching VMFUNC

    - support Virtual GIF

    - support 5 level page tables

    - speedup nested VM exits by packing byte operations

    - speedup MMIO by using hardware provided physical address

    - a lot of fixes and cleanups, especially nested"

    * tag 'kvm-4.14-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (67 commits)
    KVM: arm/arm64: Support uaccess of GICC_APRn
    KVM: arm/arm64: Extract GICv3 max APRn index calculation
    KVM: arm/arm64: vITS: Drop its_ite->lpi field
    KVM: arm/arm64: vgic: constify seq_operations and file_operations
    KVM: arm/arm64: Fix guest external abort matching
    KVM: PPC: Book3S HV: Fix memory leak in kvm_vm_ioctl_get_htab_fd
    KVM: s390: vsie: cleanup mcck reinjection
    KVM: s390: use WARN_ON_ONCE only for checking
    KVM: s390: guestdbg: fix range check
    KVM: PPC: Book3S HV: Report storage key support to userspace
    KVM: PPC: Book3S HV: Fix case where HDEC is treated as 32-bit on POWER9
    KVM: PPC: Book3S HV: Fix invalid use of register expression
    KVM: PPC: Book3S HV: Fix H_REGISTER_VPA VPA size validation
    KVM: PPC: Book3S HV: Fix setting of storage key in H_ENTER
    KVM: PPC: e500mc: Fix a NULL dereference
    KVM: PPC: e500: Fix some NULL dereferences on error
    KVM: PPC: Book3S HV: Protect updates to spapr_tce_tables list
    KVM: s390: we are always in czam mode
    KVM: s390: expose no-DAT to guest and migration support
    KVM: s390: sthyi: remove invalid guest write access
    ...

    Linus Torvalds
     

08 Sep, 2017

8 commits

  • This fix was intended for 4.13, but didn't get in because both
    maintainers were on vacation.

    Paul Mackerras:
    "It adds mutual exclusion between list_add_rcu and list_del_rcu calls
    on the kvm->arch.spapr_tce_tables list. Without this, userspace could
    potentially trigger corruption of the list and cause a host crash or
    worse."

    Radim Krčmář
     
  • Pull SCSI updates from James Bottomley:
    "This is mostly updates of the usual suspects: lpfc, qla2xxx, hisi_sas,
    megaraid_sas, zfcp and a host of minor updates.

    The major driver change here is the elimination of the block based
    cciss driver in favour of the SCSI based hpsa driver (which now drives
    all the legacy cases cciss used to be required for). Plus a reset
    handler clean up and the redo of the SAS SMP handler to use bsg lib"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (279 commits)
    scsi: scsi-mq: Always unprepare before requeuing a request
    scsi: Show .retries and .jiffies_at_alloc in debugfs
    scsi: Improve requeuing behavior
    scsi: Call scsi_initialize_rq() for filesystem requests
    scsi: qla2xxx: Reset the logo flag, after target re-login.
    scsi: qla2xxx: Fix slow mem alloc behind lock
    scsi: qla2xxx: Clear fc4f_nvme flag
    scsi: qla2xxx: add missing includes for qla_isr
    scsi: qla2xxx: Fix an integer overflow in sysfs code
    scsi: aacraid: report -ENOMEM to upper layer from aac_convert_sgraw2()
    scsi: aacraid: get rid of one level of indentation
    scsi: aacraid: fix indentation errors
    scsi: storvsc: fix memory leak on ring buffer busy
    scsi: scsi_transport_sas: switch to bsg-lib for SMP passthrough
    scsi: smartpqi: remove the smp_handler stub
    scsi: hpsa: remove the smp_handler stub
    scsi: bsg-lib: pass the release callback through bsg_setup_queue
    scsi: Rework handling of scsi_device.vpd_pg8[03]
    scsi: Rework the code for caching Vital Product Data (VPD)
    scsi: rcu: Introduce rcu_swap_protected()
    ...

    Linus Torvalds
     
  • Pull audit updates from Paul Moore:
    "A small pull request for audit this time, only four patches and only
    two with any real code changes.

    Those two changes are the removal of a pointless SELinux AVC
    initialization audit event and a fix to improve the audit timestamp
    overhead.

    The other two patches are comment cleanup and administrative updates,
    nothing very exciting.

    Everything passes our tests"

    * tag 'audit-pr-20170907' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
    audit: update the function comments
    selinux: remove AVC init audit log message
    audit: update the audit info in MAINTAINERS
    audit: Reduce overhead using a coarse clock

    Linus Torvalds
     
  • Pull UDF, reiserfs, quota, fsnotify cleanups from Jan Kara:
    "Several UDF, reiserfs, quota and fsnotify cleanups.

    Note that there is also a patch updating MAINTAINERS entry for
    notification subsystem to point to me as a maintainer since current
    entries are stale"

    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
    fsnotify: make dnotify_fsnotify_ops const
    isofs: Delete an unnecessary variable initialisation in isofs_read_inode()
    isofs: Adjust four checks for null pointers
    isofs: Delete an error message for a failed memory allocation in isofs_read_inode()
    quota_v2: Delete an error message for a failed memory allocation in v2_read_file_info()
    fs-udf: Delete an error message for a failed memory allocation in two functions
    fs-udf: Improve six size determinations
    fs-udf: Adjust two checks for null pointers
    reiserfs: fix spelling mistake: "tranasction" -> "transaction"
    MAINTAINERS: Update entries for notification subsystem
    uapi/linux/quota.h: Do not include linux/errno.h

    Linus Torvalds
     
  • Pull MFD updates from Lee Jones:
    "New Drivers
    - RK805 Power Management IC (PMIC)
    - ROHM BD9571MWV-M MFD Power Management IC (PMIC)
    - Texas Instruments TPS68470 Power Management IC (PMIC) & LEDs

    New Device Support:
    - Add support for HiSilicon Hi6421v530 to hi6421-pmic-core
    - Add support for X-Powers AXP806 to axp20x
    - Add support for X-Powers AXP813 to axp20x
    - Add support for Intel Sunrise Point LPSS to intel-lpss-pci

    New Functionality:
    - Amend API to provide register layout; atmel-smc

    Fix-ups:
    - DT re-work; omap, nokia
    - Header file location change {I2C => MFD}; dm355evm_msp, tps65010
    - Fix chip ID formatting issue(s); rk808
    - Optionally register touchscreen devices; da9052-core
    - Documentation improvements; twl-core
    - Constification; rtsx_pcr, ab8500-core, da9055-i2c, da9052-spi
    - Drop unnecessary static declaration; max8925-i2c
    - Kconfig changes (missing deps and remove module support)
    - Slim down oversized licence statement; hi6421-pmic-core
    - Use managed resources (devm_*); lp87565
    - Supply proper error checking/handling; t7l66xb

    Bug Fixes:
    - Fix counter duplication issue; da9052-core
    - Fix potential NULL deference issue; max8998
    - Leave SPI-NOR write-protection bit alone; lpc_ich
    - Ensure device is put into reset during suspend; intel-lpss
    - Correct register offset variable size; omap-usb-tll"

    * tag 'mfd-next-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (61 commits)
    mfd: intel_soc_pmic: Differentiate between Bay and Cherry Trail CRC variants
    mfd: intel_soc_pmic: Export separate mfd-cell configs for BYT and CHT
    dt-bindings: mfd: Add bindings for ZII RAVE devices
    mfd: omap-usb-tll: Fix register offsets
    mfd: da9052: Constify spi_device_id
    mfd: intel-lpss: Put I2C and SPI controllers into reset state on suspend
    mfd: da9055: Constify i2c_device_id
    mfd: intel-lpss: Add missing PCI ID for Intel Sunrise Point LPSS devices
    mfd: t7l66xb: Handle return value of clk_prepare_enable
    mfd: Add ROHM BD9571MWV-M PMIC DT bindings
    mfd: intel_soc_pmic_chtwc: Turn Kconfig option into a bool
    mfd: lp87565: Convert to use devm_mfd_add_devices()
    mfd: Add support for TPS68470 device
    mfd: lpc_ich: Do not touch SPI-NOR write protection bit on Haswell/Broadwell
    mfd: syscon: atmel-smc: Add helper to retrieve register layout
    mfd: axp20x: Use correct platform device ID for many PEK
    dt-bindings: mfd: axp20x: Introduce bindings for AXP813
    mfd: axp20x: Add support for AXP813 PMIC
    dt-bindings: mfd: axp20x: Add AXP806 to supported list of chips
    mfd: Add ROHM BD9571MWV-M MFD PMIC driver
    ...

    Linus Torvalds
     
  • Pull media updates from Mauro Carvalho Chehab:
    "Brazil's Independence Day pull request :-)

    This is one of the biggest media pull requests, with 625 patches
    affecting almost all parts of media (RC, DVB, V4L2, CEC, docs).

    This contains:

    - A lot of new drivers:
    * DVB frontends: mxl5xx, stv0910, stv6111;
    * camera flash: as3645a led driver;
    * HDMI receiver: adv748X;
    * camera sensor: Omnivision 6650 5M driver (ov6650);
    * HDMI CEC: ao-cec meson driver;
    * V4L2: Qualcom camss driver;
    * Remote controller: gpio-ir-tx, pwm-ir-tx and zx-irdec drivers.

    - The DDbridge DVB driver got a massive update, with makes it in sync
    with modern hardware from that vendor;

    - There's an important milestone on this series: the DVB
    documentation was written in 2003, but only started to be updated
    in 2007. It also used to contain several gaps from the time it was
    kept out of tree, mentioning error codes and device nodes that
    never existed upstream. On this series, it received a massive
    update: all non-deprecated digital TV APIs are now in sync with the
    current implementation;

    - Some DVB APIs that aren't used by any upstream driver got removed;

    - Other parts of the media documentation algo got updated, fixing
    some bugs on its PDF output and making it compatible with Sphinx
    version 1.6.

    As the number of hacks required to build PDF output reduced, I hope
    we'll have less troubles as newer versions of our documentation
    toolchain are released (famous last words);

    - As usual, lots of driver cleanups and improvements"

    * tag 'media/v4.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (624 commits)
    media: leds: as3645a: add V4L2_FLASH_LED_CLASS dependency
    media: get rid of removed DMX_GET_CAPS and DMX_SET_SOURCE leftovers
    media: Revert "[media] v4l: async: make v4l2 coexist with devicetree nodes in a dt overlay"
    media: staging: atomisp: sh_css_calloc shall return a pointer to the allocated space
    media: Revert "[media] lirc_dev: remove superfluous get/put_device() calls"
    media: add qcom_camss.rst to v4l-drivers rst file
    media: dvb headers: make checkpatch happier
    media: dvb uapi: move frontend legacy API to another part of the book
    media: pixfmt-srggb12p.rst: better format the table for PDF output
    media: docs-rst: media: Don't use \small for V4L2_PIX_FMT_SRGGB10 documentation
    media: index.rst: don't write "Contents:" on PDF output
    media: pixfmt*.rst: replace a two dots by a comma
    media: vidioc-g-fmt.rst: adjust table format
    media: vivid.rst: add a blank line to correct ReST format
    media: v4l2 uapi book: get rid of driver programming's chapter
    media: format.rst: use the right markup for important notes
    media: docs-rst: cardlists: change their format to flat-tables
    media: em28xx-cardlist.rst: update to reflect last changes
    media: v4l2-event.rst: adjust table to fit on PDF output
    media: docs: don't show ToC for each part on PDF output
    ...

    Linus Torvalds
     
  • Pull block layer updates from Jens Axboe:
    "This is the first pull request for 4.14, containing most of the code
    changes. It's a quiet series this round, which I think we needed after
    the churn of the last few series. This contains:

    - Fix for a registration race in loop, from Anton Volkov.

    - Overflow complaint fix from Arnd for DAC960.

    - Series of drbd changes from the usual suspects.

    - Conversion of the stec/skd driver to blk-mq. From Bart.

    - A few BFQ improvements/fixes from Paolo.

    - CFQ improvement from Ritesh, allowing idling for group idle.

    - A few fixes found by Dan's smatch, courtesy of Dan.

    - A warning fixup for a race between changing the IO scheduler and
    device remova. From David Jeffery.

    - A few nbd fixes from Josef.

    - Support for cgroup info in blktrace, from Shaohua.

    - Also from Shaohua, new features in the null_blk driver to allow it
    to actually hold data, among other things.

    - Various corner cases and error handling fixes from Weiping Zhang.

    - Improvements to the IO stats tracking for blk-mq from me. Can
    drastically improve performance for fast devices and/or big
    machines.

    - Series from Christoph removing bi_bdev as being needed for IO
    submission, in preparation for nvme multipathing code.

    - Series from Bart, including various cleanups and fixes for switch
    fall through case complaints"

    * 'for-4.14/block' of git://git.kernel.dk/linux-block: (162 commits)
    kernfs: checking for IS_ERR() instead of NULL
    drbd: remove BIOSET_NEED_RESCUER flag from drbd_{md_,}io_bio_set
    drbd: Fix allyesconfig build, fix recent commit
    drbd: switch from kmalloc() to kmalloc_array()
    drbd: abort drbd_start_resync if there is no connection
    drbd: move global variables to drbd namespace and make some static
    drbd: rename "usermode_helper" to "drbd_usermode_helper"
    drbd: fix race between handshake and admin disconnect/down
    drbd: fix potential deadlock when trying to detach during handshake
    drbd: A single dot should be put into a sequence.
    drbd: fix rmmod cleanup, remove _all_ debugfs entries
    drbd: Use setup_timer() instead of init_timer() to simplify the code.
    drbd: fix potential get_ldev/put_ldev refcount imbalance during attach
    drbd: new disk-option disable-write-same
    drbd: Fix resource role for newly created resources in events2
    drbd: mark symbols static where possible
    drbd: Send P_NEG_ACK upon write error in protocol != C
    drbd: add explicit plugging when submitting batches
    drbd: change list_for_each_safe to while(list_first_entry_or_null)
    drbd: introduce drbd_recv_header_maybe_unplug
    ...

    Linus Torvalds
     
  • * pci/trivial:
    PCI: Fix typos and whitespace errors
    PCI: Remove unused "res" variable from pci_resource_io()
    PCI: Correct kernel-doc of pci_vpd_srdt_size(), pci_vpd_srdt_tag()

    Bjorn Helgaas