1. 23 Jun, 2015 32 commits
    • Linus Torvalds's avatar
      Merge tag 'fbdev-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · 1a13e36a
      Linus Torvalds authored
      Pull fbdev updates from Tomi Valkeinen:
      
       - ssd1307fb: various fixes and improvements, SSD1305 support
      
       - use architecture agnostic functions instead of MTRR functions in
         various fbdev drivers
      
       - TI DRA7xx SoC display support (arch/arm/ side)
      
       - OMAPDSS componentization to fix probing order issues
      
       - OMAPDSS scaling fixes
      
       - msm_fb: remove obsoleted driver
      
      * tag 'fbdev-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux: (77 commits)
        msm: msm_fb: Remove dead code
        OMAPDSS: HDMI: wait for framedone when stopping video
        OMAPDSS: HDMI4: fix error handling
        OMAPDSS: DISPC: scaler debug print
        OMAPDSS: DISPC: do only y decimation on OMAP3
        OMAPDSS: DISPC: check if scaling setup failed
        OMAPDSS: DISPC: fix 64 bit issue in 5-tap
        OMAPDSS: DISPC: fix row_inc for OMAP3
        OMAPDSS: DISPC: add check for scaling limits
        OMAPDSS: DISPC: fix check_horiz_timing_omap3 args
        OMAPDSS: DISPC: fix predecimation for YUV modes
        OMAPDSS: DISPC: work-around for errata i631
        OMAPDSS: simplify submodule reg/unreg code
        OMAPDSS: componentize omapdss
        OMAPDSS: reorder uninit calls
        OMAPDSS: remove uses of __init/__exit
        OMAPDSS: fix dss_init_ports error handling
        OMAPDSS: refactor dss probe function
        OMAPDSS: move 'dss_initialized' to dss driver
        fbdev: propagate result of fb_videomode_from_videomode()
        ...
      1a13e36a
    • Linus Torvalds's avatar
      Merge tag 'for-4.2' of git://git.infradead.org/battery-2.6 · 36a1624d
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
      
       - new charger drivers: BQ24257, BQ25890, AXP288, RT9455
      
       - MAX17042 battery: add health & temperature support
      
       - BQ2415x charger: add ACPI support
      
       - misc fixes and cleanups
      
      * tag 'for-4.2' of git://git.infradead.org/battery-2.6: (32 commits)
        power_supply: Correct kerneldoc copy paste errors
        wm831x_power: Fix off-by-one at free_irq()
        power_supply: rt9455_charger: Fix error reported by static analysis tool
        power_supply: bq24257: use flags argument of devm_gpiod_get
        power_supply: bq25890: use flags argument of devm_gpiod_get
        sbs-battery: add option to always register battery
        power: Add devm_power_supply_get_by_phandle() helper function
        power_supply: max17042: Add OF support for setting thresholds
        power_supply: sysfs: Bring back write to writeable properties
        power_supply: rt9455_charger: Check if CONFIG_USB_PHY is enabled
        power: reset: gpio-restart: increase priority slightly
        power_supply: bq25890: make chip_id int
        power_supply: Add support for Richtek RT9455 battery charger
        Documentation: devicetree: Add Richtek RT9455 bindings
        of: Add vendor prefix for Richtek Technology Corporation
        power_supply: 88pm860x_charger: Do not call free_irq() twice
        power: bq24190_charger: Change first_time flag reset condition
        power: axp288_charger: axp288 charger driver
        power: max17042_battery: add HEALTH and TEMP_* properties support
        power_supply: Add support for TI BQ25890 charger chip
        ...
      36a1624d
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 5262f25f
      Linus Torvalds authored
      Pull HSI updates from Sebastian Reichel:
       "Misc fixes"
      
      * tag 'hsi-for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: nokia-modem: use flags argument of devm_gpiod_get to set direction
        HSI: nokia-modem: Reduce missing driver message to debug level
        HSI: cmt_speech: fix timestamp interface
      5262f25f
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · acd53127
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This is the usual grab bag of driver updates (lpfc, hpsa,
        megaraid_sas, cxgbi, be2iscsi) plus an assortment of minor updates.
      
        There is also one new driver: the Cisco snic.  The advansys driver has
        been rewritten to get rid of the warning about converting it to the
        DMA API, the tape statistics patch got in and finally, there's a
        resuffle of SCSI header files to separate more cleanly initiator from
        target mode (and better share the common definitions)"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (156 commits)
        snic: driver for Cisco SCSI HBA
        qla2xxx: Fix indentation
        qla2xxx: Comment out unreachable code
        fusion: remove dead MTRR code
        advansys: fix compilation errors and warnings when CONFIG_PCI is not set
        mptsas: fix depth param in scsi_track_queue_full
        megaraid: fix irq setup process regression
        lpfc: Update version to 10.7.0.0 for upstream patch set.
        lpfc: Fix to drop PLOGIs from fabric node till LOGO processing completes
        lpfc: Fix scsi task management error message.
        lpfc: Fix cq_id masking problem.
        lpfc: Fix scsi prep dma buf error.
        lpfc: Add support for using block multi-queue
        lpfc: Devices are not discovered during takeaway/giveback testing
        lpfc: Fix vport deletion failure.
        lpfc: Check for active portpeerbeacon.
        lpfc: Update driver version for upstream patch set 10.6.0.1.
        lpfc: Change buffer pool empty message to miscellaneous category
        lpfc: Fix incorrect log message reported for empty FCF record.
        lpfc: Fix rport leak.
        ...
      acd53127
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma · f9d1b5a3
      Linus Torvalds authored
      Pull rdma updates from Doug Ledford:
      
       - a large cleanup of how device capabilities are checked for various
         features
      
       - additional cleanups in the MAD processing
      
       - update to the srp driver
      
       - creation and use of centralized log message helpers
      
       - add const to a number of args to calls and clean up call chain
      
       - add support for extended cq create verb
      
       - add support for timestamps on cq completion
      
       - add support for processing OPA MAD packets
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma: (92 commits)
        IB/mad: Add final OPA MAD processing
        IB/mad: Add partial Intel OPA MAD support
        IB/mad: Add partial Intel OPA MAD support
        IB/core: Add OPA MAD core capability flag
        IB/mad: Add support for additional MAD info to/from drivers
        IB/mad: Convert allocations from kmem_cache to kzalloc
        IB/core: Add ability for drivers to report an alternate MAD size.
        IB/mad: Support alternate Base Versions when creating MADs
        IB/mad: Create a generic helper for DR forwarding checks
        IB/mad: Create a generic helper for DR SMP Recv processing
        IB/mad: Create a generic helper for DR SMP Send processing
        IB/mad: Split IB SMI handling from MAD Recv handler
        IB/mad cleanup: Generalize processing of MAD data
        IB/mad cleanup: Clean up function params -- find_mad_agent
        IB/mlx4: Add support for CQ time-stamping
        IB/mlx4: Add mmap call to map the hardware clock
        IB/core: Pass hardware specific data in query_device
        IB/core: Add timestamp_mask and hca_core_clock to query_device
        IB/core: Extend ib_uverbs_create_cq
        IB/core: Add CQ creation time-stamping flag
        ...
      f9d1b5a3
    • Linus Torvalds's avatar
      Merge branch 'for-linus-clk' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · 2ad7b44f
      Linus Torvalds authored
      Pull clkdev updates from Russell King:
       "This series addresses some breakage in clkdev caused by a previous
        patch set from the clk tree which introduced per-user clk structures.
        This basically renamed the existing 'struct clk' to 'struct clk_hw',
        and introduced a new 'struct clk'.
      
        This change will break anyone using clk_add_alias() with the common
        clk code enabled.  Thankfully, the intersection of users of
        clk_add_alias() and those using the common clk code is practically
        zero, but this is something which should be fixed to keep the code
        sane.
      
        The problem is that clk_add_alias() does this:
      
              r = clk_get(...);
              l = clkdev_alloc(r, ...);
              clk_put(...);
      
        which causes the alias to store a pointer to 'r', which has been
        freed.
      
        The original patch set tried to work around this problem incorrectly -
        at clk_get() time, it tried to convert the struct clk to a struct
        clk_hw, and then creating a new struct clk from that.  Clearly, if the
        original struct clk has been freed, then we have a use-after-free bug.
      
        We have other places in the tree which do something similar, so this
        series also addresses those locations too.
      
        This series addresses this problem by converting clkdev to store and
        use the clk_hw pointer.  This allows clk_get() to only have to create
        it's per-user struct clk from the clk_hw.  We can also get to the
        desired clk_hw at clk_add_alias() or clk lookup creation time, when
        the struct clk is "alive".
      
        We also perform some cleanups of the code:
      
         - replacing looped calls to clkdev_add() with clkdev_add_table()
      
         - replacing open-coded lookup allocation (which should have been
           using clkdev_alloc()) and subsequent clkdev_add() with
           clkdev_create()
      
         - replacing open-coded clk_add_alias() with clk_add_alias()"
      
      * 'for-linus-clk' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        clk: s2mps11: use clkdev_create()
        ASoC: migor: use clkdev_create()
        ARM: omap2: use clkdev_add_alias()
        ARM: omap2: use clkdev_create()
        ARM: orion: use clkdev_create()
        ARM: lpc32xx: convert to use clkdev_add_table()
        SH: use clkdev_add_table()
        clkdev: add clkdev_create() helper
        clkdev: const-ify connection id to clk_add_alias()
        clkdev: get rid of redundant clk_add_alias() prototype in linux/clk.h
        clkdev: drop __init from clkdev_add_table()
        clk: update clk API documentation to clarify clk_round_rate()
        clkdev: use clk_hw internally
      2ad7b44f
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 43c9fad9
      Linus Torvalds authored
      Pull power management and ACPI updates from Rafael Wysocki:
       "The rework of backlight interface selection API from Hans de Goede
        stands out from the number of commits and the number of affected
        places perspective.  The cpufreq core fixes from Viresh Kumar are
        quite significant too as far as the number of commits goes and because
        they should reduce CPU online/offline overhead quite a bit in the
        majority of cases.
      
        From the new featues point of view, the ACPICA update (to upstream
        revision 20150515) adding support for new ACPI 6 material to ACPICA is
        the one that matters the most as some new significant features will be
        based on it going forward.  Also included is an update of the ACPI
        device power management core to follow ACPI 6 (which in turn reflects
        the Windows' device PM implementation), a PM core extension to support
        wakeup interrupts in a more generic way and support for the ACPI _CCA
        device configuration object.
      
        The rest is mostly fixes and cleanups all over and some documentation
        updates, including new DT bindings for Operating Performance Points.
      
        There is one fix for a regression introduced in the 4.1 cycle, but it
        adds quite a number of lines of code, it wasn't really ready before
        Thursday and you were on vacation, so I refrained from pushing it on
        the last minute for 4.1.
      
        Specifics:
      
         - ACPICA update to upstream revision 20150515 including basic support
           for ACPI 6 features: new ACPI tables introduced by ACPI 6 (STAO,
           XENV, WPBT, NFIT, IORT), changes related to the other tables (DTRM,
           FADT, LPIT, MADT), new predefined names (_BTH, _CR3, _DSD, _LPI,
           _MTL, _PRR, _RDI, _RST, _TFP, _TSN), fixes and cleanups (Bob Moore,
           Lv Zheng).
      
         - ACPI device power management core code update to follow ACPI 6
           which reflects the ACPI device power management implementation in
           Windows (Rafael J Wysocki).
      
         - rework of the backlight interface selection logic to reduce the
           number of kernel command line options and improve the handling of
           DMI quirks that may be involved in that and to make the code
           generally more straightforward (Hans de Goede).
      
         - fixes for the ACPI Embedded Controller (EC) driver related to the
           handling of EC transactions (Lv Zheng).
      
         - fix for a regression related to the ACPI resources management and
           resulting from a recent change of ACPI initialization code ordering
           (Rafael J Wysocki).
      
         - fix for a system initialization regression related to ACPI
           introduced during the 3.14 cycle and caused by running the code
           that switches the platform over to the ACPI mode too early in the
           initialization sequence (Rafael J Wysocki).
      
         - support for the ACPI _CCA device configuration object related to
           DMA cache coherence (Suravee Suthikulpanit).
      
         - ACPI/APEI fixes and cleanups (Jiri Kosina, Borislav Petkov).
      
         - ACPI battery driver cleanups (Luis Henriques, Mathias Krause).
      
         - ACPI processor driver cleanups (Hanjun Guo).
      
         - cleanups and documentation update related to the ACPI device
           properties interface based on _DSD (Rafael J Wysocki).
      
         - ACPI device power management fixes (Rafael J Wysocki).
      
         - assorted cleanups related to ACPI (Dominik Brodowski, Fabian
           Frederick, Lorenzo Pieralisi, Mathias Krause, Rafael J Wysocki).
      
         - fix for a long-standing issue causing General Protection Faults to
           be generated occasionally on return to user space after resume from
           ACPI-based suspend-to-RAM on 32-bit x86 (Ingo Molnar).
      
         - fix to make the suspend core code return -EBUSY consistently in all
           cases when system suspend is aborted due to wakeup detection (Ruchi
           Kandoi).
      
         - support for automated device wakeup IRQ handling allowing drivers
           to make their PM support more starightforward (Tony Lindgren).
      
         - new tracepoints for suspend-to-idle tracing and rework of the
           prepare/complete callbacks tracing in the PM core (Todd E Brandt,
           Rafael J Wysocki).
      
         - wakeup sources framework enhancements (Jin Qian).
      
         - new macro for noirq system PM callbacks (Grygorii Strashko).
      
         - assorted cleanups related to system suspend (Rafael J Wysocki).
      
         - cpuidle core cleanups to make the code more efficient (Rafael J
           Wysocki).
      
         - powernv/pseries cpuidle driver update (Shilpasri G Bhat).
      
         - cpufreq core fixes related to CPU online/offline that should reduce
           the overhead of these operations quite a bit, unless the CPU in
           question is physically going away (Viresh Kumar, Saravana Kannan).
      
         - serialization of cpufreq governor callbacks to avoid race
           conditions in some cases (Viresh Kumar).
      
         - intel_pstate driver fixes and cleanups (Doug Smythies, Prarit
           Bhargava, Joe Konno).
      
         - cpufreq driver (arm_big_little, cpufreq-dt, qoriq) updates (Sudeep
           Holla, Felipe Balbi, Tang Yuantian).
      
         - assorted cleanups in cpufreq drivers and core (Shailendra Verma,
           Fabian Frederick, Wang Long).
      
         - new Device Tree bindings for representing Operating Performance
           Points (Viresh Kumar).
      
         - updates for the common clock operations support code in the PM core
           (Rajendra Nayak, Geert Uytterhoeven).
      
         - PM domains core code update (Geert Uytterhoeven).
      
         - Intel Knights Landing support for the RAPL (Running Average Power
           Limit) power capping driver (Dasaratharaman Chandramouli).
      
         - fixes related to the floor frequency setting on Atom SoCs in the
           RAPL power capping driver (Ajay Thomas).
      
         - runtime PM framework documentation update (Ben Dooks).
      
         - cpupower tool fix (Herton R Krzesinski)"
      
      * tag 'pm+acpi-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (194 commits)
        cpuidle: powernv/pseries: Auto-promotion of snooze to deeper idle state
        x86: Load __USER_DS into DS/ES after resume
        PM / OPP: Add binding for 'opp-suspend'
        PM / OPP: Allow multiple OPP tables to be passed via DT
        PM / OPP: Add new bindings to address shortcomings of existing bindings
        ACPI: Constify ACPI device IDs in documentation
        ACPI / enumeration: Document the rules regarding the PRP0001 device ID
        ACPI / video: Make acpi_video_unregister_backlight() private
        acpi-video-detect: Remove old API
        toshiba-acpi: Port to new backlight interface selection API
        thinkpad-acpi: Port to new backlight interface selection API
        sony-laptop: Port to new backlight interface selection API
        samsung-laptop: Port to new backlight interface selection API
        msi-wmi: Port to new backlight interface selection API
        msi-laptop: Port to new backlight interface selection API
        intel-oaktrail: Port to new backlight interface selection API
        ideapad-laptop: Port to new backlight interface selection API
        fujitsu-laptop: Port to new backlight interface selection API
        eeepc-laptop: Port to new backlight interface selection API
        dell-wmi: Port to new backlight interface selection API
        ...
      43c9fad9
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · cb8a4dea
      Linus Torvalds authored
      Pull trivial tree updates from Jiri Kosina:
       "As usual, mostly comment, kerneldoc and printk() fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
        lpfc: Grammar s/an negative/a negative/
        ARM: lib/lib1funcs.S: fix typo s/substractions/subtractions/
        cx25821: cx25821-medusa-reg.h: fix 0x0x prefix
        lib: crc-itu-t.[ch] fix 0x0x prefix in integer constants
        rapidio: Fix kerneldoc and comment
        qla4xxx: Fix printk() in qla4_83xx_read_reset_template() and qla4_83xx_pre_loopback_config()
        treewide: Kconfig: fix wording / spelling
        usb/serial: fix grammar in Kconfig help text for FTDI_SIO
        megaraid_sas: fix kerneldoc
        netfilter: ebtables: fix comment grammar
        drm/radeon: fix comment
        isdn: fix grammar in comment
        ARM: KVM: fix comment
      cb8a4dea
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching · 0faef837
      Linus Torvalds authored
      Pull livepatching fixes from Jiri Kosina:
      
       - symbol lookup locking fix, from Miroslav Benes
      
       - error handling improvements in case of failure of the module coming
         notifier, from Minfei Huang
      
       - we were too pessimistic when kASLR has been enabled on x86 and were
         dropping address hints on the floor unnecessarily in such case.  Fix
         from Jiri Kosina
      
       - a few other small fixes and cleanups
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
        livepatch: add module locking around kallsyms calls
        livepatch: annotate klp_init() with __init
        livepatch: introduce patch/func-walking helpers
        livepatch: make kobject in klp_object statically allocated
        livepatch: Prevent patch inconsistencies if the coming module notifier fails
        livepatch: match return value to function signature
        x86: kaslr: fix build due to missing ALIGN definition
        livepatch: x86: make kASLR logic more accurate
        x86: introduce kaslr_offset()
      0faef837
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 67db8a80
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - spurious power/wakeup sysfs files removal for I2C-HID devices, from
         Andrew Duggan
      
       - Logitech M560 support, from Goffredo Baroncelli
      
       - a lot of housekeeping cleanups to hid-lg4ff driver, from Michal Maly
      
       - improved support for Plantronics devices, from Terry Junge
      
       - Sony Motion Controller and Navigation Controller support and
         subsequent cleanups of hid-sony driver, from Frank Praznik and Simon
         Wood
      
       - HW support improvements to the Wacom driver, from Jason Gerecke and
         Ping Cheng
      
       - assorted small cleanups and device ID additions all over the place
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (69 commits)
        HID: cypress: use swap() in cp_report_fixup()
        HID: microsoft: Add Surface Power Cover
        HID: hid-sony: Fix report descriptor for Navigation Controller
        HID: hid-sony: Navigation controller only has 1 LED and no rumble
        HID: hid-sony: Add BT support for Navigation Controller
        HID: wacom: Introduce new 'touch_input' device
        HID: wacom: Split apart 'wacom_setup_pentouch_input_capabilites'
        HID: wacom: Introduce a new WACOM_DEVICETYPE_PAD device_type
        HID: wacom: Treat features->device_type values as flags
        HID: wacom: Simplify 'wacom_update_name'
        HID: rmi: Disable populating F30 when the touchpad has physical buttons
        HID: plantronics: Update to map volume up/down controls
        HID: sony: PS Move fix report descriptor
        HID: sony: PS3 Move enable LEDs and Rumble via BT
        HID: sony: Add support PS3 Move Battery via BT
        HID: sony: Add quirk for MOTION_CONTROLLER_BT
        HID: sony: Support PS3 Move Controller when connected via Bluetooth
        HID: i2c-hid: Do not set the ACPI companion field in the HID device
        usb, HID: Remove Vernier devices from lsusb and hid_ignore_list
        HID: hidpp: Add driver for mouse logitech M560
        ...
      67db8a80
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia · a394c6a0
      Linus Torvalds authored
      Pull PCMCIA update from Dominik Brodowski:
       "A few PCMCIA fixes and cleanups are available in the PCMCIA tree.
      
        Most of them are trivial and self-explanatory.  Of particular note are
        the last three patches which add an important hardware quirk for
        Toshiba ToPIC95 sockets (or BIOS breakage on systems with these
        sockets), fix resource leaks in yenta_socket enable/disable call
        paths, and fix a regression caused by patch 1c6c9b1d since v4.0.
      
        Alan stated he is OK with me pushing this patch upstream.  Once it
        works out well in your tree, I will push it to stable for 4.0/4.1 as
        well"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia:
        pcmcia: do not break rsrc_nonstatic when handling anonymous cards
        pcmcia: Fix resource leaks in yenta_probe() and _close()
        Disable write buffering on Toshiba ToPIC95
        pcmcia: Convert dev_printk to dev_<level>
        pcmcia/vrc4171: Remove typedefs for enums and struct
        pcmcia: Remove typedef in structs and emum
        pcmcia: Remove typedef tuple_flags
        drivers: pcmcia: electra_cf.c fix checkpatch error and warnings
        drivers: pcmcia: ds.c fix checkpatch errors
        PCMCIA: Remove commented references to dead class_device_create_file()
        drivers/pcmcia/electra_cf.c: add missing iounmap and kfree
        pcmcia: replace open-coded ARRAY_SIZE with macro
      a394c6a0
    • Linus Torvalds's avatar
      Merge tag 'pci-v4.2-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · d8133356
      Linus Torvalds authored
      Pull PCI updates from Bjorn Helgaas:
       "PCI changes for the v4.2 merge window:
      
        Enumeration
          - Move pci_ari_enabled() to global header (Alex Williamson)
          - Account for ARI in _PRT lookups (Alex Williamson)
          - Remove unused pci_scan_bus_parented() (Yijing Wang)
      
        Resource management
          - Use host bridge _CRS info on systems with >32 bit addressing (Bjorn Helgaas)
          - Use host bridge _CRS info on Foxconn K8M890-8237A (Bjorn Helgaas)
          - Fix pci_address_to_pio() conversion of CPU address to I/O port (Zhichang Yuan)
          - Add pci_bus_addr_t (Yinghai Lu)
      
        PCI device hotplug
          - Wait for pciehp command completion where necessary (Alex Williamson)
          - Drop pointless ACPI-based "slot detection" check (Rafael J. Wysocki)
          - Check ignore_hotplug for all downstream devices (Rafael J. Wysocki)
          - Propagate the "ignore hotplug" setting to parent (Rafael J. Wysocki)
          - Inline pciehp "handle event" functions into the ISR (Bjorn Helgaas)
          - Clean up pciehp debug logging (Bjorn Helgaas)
      
        Power management
          - Remove redundant PCIe port type checking (Yijing Wang)
          - Add dev->has_secondary_link to track downstream PCIe links (Yijing Wang)
          - Use dev->has_secondary_link to find downstream links for ASPM (Yijing Wang)
          - Drop __pci_disable_link_state() useless "force" parameter (Bjorn Helgaas)
          - Simplify Clock Power Management setting (Bjorn Helgaas)
      
        Virtualization
          - Add ACS quirks for Intel 9-series PCH root ports (Alex Williamson)
          - Add function 1 DMA alias quirk for Marvell 9120 (Sakari Ailus)
      
        MSI
          - Disable MSI at enumeration even if kernel doesn't support MSI (Michael S. Tsirkin)
          - Remove unused pci_msi_off() (Bjorn Helgaas)
          - Rename msi_set_enable(), msix_clear_and_set_ctrl() (Michael S.  Tsirkin)
          - Export pci_msi_set_enable(), pci_msix_clear_and_set_ctrl() (Michael S. Tsirkin)
          - Drop pci_msi_off() calls during probe (Michael S. Tsirkin)
      
        APM X-Gene host bridge driver
          - Add APM X-Gene v1 PCIe MSI/MSIX termination driver (Duc Dang)
          - Add APM X-Gene PCIe MSI DTS nodes (Duc Dang)
          - Disable Configuration Request Retry Status for v1 silicon (Duc Dang)
          - Allow config access to Root Port even when link is down (Duc Dang)
      
        Broadcom iProc host bridge driver
          - Allow override of device tree IRQ mapping function (Hauke Mehrtens)
          - Add BCMA PCIe driver (Hauke Mehrtens)
          - Directly add PCI resources (Hauke Mehrtens)
          - Free resource list after registration (Hauke Mehrtens)
      
        Freescale i.MX6 host bridge driver
          - Add speed change timeout message (Troy Kisky)
          - Rename imx6_pcie_start_link() to imx6_pcie_establish_link() (Bjorn Helgaas)
      
        Freescale Layerscape host bridge driver
          - Use dw_pcie_link_up() consistently (Bjorn Helgaas)
          - Factor out ls_pcie_establish_link() (Bjorn Helgaas)
      
        Marvell MVEBU host bridge driver
          - Remove mvebu_pcie_scan_bus() (Yijing Wang)
      
        NVIDIA Tegra host bridge driver
          - Remove tegra_pcie_scan_bus() (Yijing Wang)
      
        Synopsys DesignWare host bridge driver
          - Consolidate outbound iATU programming functions (Jisheng Zhang)
          - Use iATU0 for cfg and IO, iATU1 for MEM (Jisheng Zhang)
          - Add support for x8 links (Zhou Wang)
          - Wait for link to come up with consistent style (Bjorn Helgaas)
          - Use pci_scan_root_bus() for simplicity (Yijing Wang)
      
        TI DRA7xx host bridge driver
          - Use dw_pcie_link_up() consistently (Bjorn Helgaas)
      
        Miscellaneous
          - Include <linux/pci.h>, not <asm/pci.h> (Bjorn Helgaas)
          - Remove unnecessary #includes of <asm/pci.h> (Bjorn Helgaas)
          - Remove unused pcibios_select_root() (again) (Bjorn Helgaas)
          - Remove unused pci_dma_burst_advice() (Bjorn Helgaas)
          - xen/pcifront: Don't use deprecated function pci_scan_bus_parented() (Arnd Bergmann)"
      
      * tag 'pci-v4.2-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (58 commits)
        PCI: pciehp: Inline the "handle event" functions into the ISR
        PCI: pciehp: Rename queue_interrupt_event() to pciehp_queue_interrupt_event()
        PCI: pciehp: Make queue_interrupt_event() void
        PCI: xgene: Allow config access to Root Port even when link is down
        PCI: xgene: Disable Configuration Request Retry Status for v1 silicon
        PCI: pciehp: Clean up debug logging
        x86/PCI: Use host bridge _CRS info on systems with >32 bit addressing
        PCI: imx6: Add #define PCIE_RC_LCSR
        PCI: imx6: Use "u32", not "uint32_t"
        PCI: Remove unused pci_scan_bus_parented()
        xen/pcifront: Don't use deprecated function pci_scan_bus_parented()
        PCI: imx6: Add speed change timeout message
        PCI/ASPM: Simplify Clock Power Management setting
        PCI: designware: Wait for link to come up with consistent style
        PCI: layerscape: Factor out ls_pcie_establish_link()
        PCI: layerscape: Use dw_pcie_link_up() consistently
        PCI: dra7xx: Use dw_pcie_link_up() consistently
        x86/PCI: Use host bridge _CRS info on Foxconn K8M890-8237A
        PCI: pciehp: Wait for hotplug command completion where necessary
        PCI: Remove unused pci_dma_burst_advice()
        ...
      d8133356
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.2' of... · 234a56c8
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon updates from Guenter Roeck:
      
       - new driver for Microchip TC74
      
       - support for ncpXXwf104 added to ntc_thermistor driver
      
       - minor cleanup
      
      * tag 'hwmon-for-linus-v4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: add driver for Microchip TC74
        hwmon: (ntc_thermistor) Improve precision of resistance calculation
        hwmon: (ntc_thermistor) fix iio raw to microvolts conversion
        hwmon: (atxp1) Drop auto-detection
        hwmon: (atxp1) Drop FSF mailing address
        hwmon: Allow compile test of GPIO consumers if !GPIOLIB
        hwmon: (sht15) Constify platform_device_id
        hwmon: (max197) Constify platform_device_id
        hwmon: (ntc_thermistor) Add support for ncpXXwf104
      234a56c8
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.2' of git://git.linaro.org/people/ulf.hansson/mmc · a57f14ba
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "Here are the changes for MMC for v4.2.
      
        MMC core:
         - Fix an error path in the mmc block layer
         - Fix PM domain attachment for the SDIO bus
         - Add support for driver strength selection
         - Increase a delay to let voltage stabilize
         - Add support for disabling write-protect detection
         - Add facility to support re-tuning
         - Re-tune and retry in the recovery path
         - Add reset option for SDIO
         - Consolidations and clean-ups
      
        MMC host:
         - Add Mediatek MMC driver
         - Constify platform_device_id for a couple of hosts
         - Fix modalias to make module auto-loading work for a couple of hosts
         - sdhci: Add support for sdhci-arasan4.9a
         - sdhci: Fix low memory corruption
         - sdhci: Restore behavior while creating OCR mask
         - sdhci: Add a callback to select drive strength
         - sdhci: Fix driver type B and D handling
         - sdhci: Add support for drive strength selection for SPT
         - sdhci: Enable HS400 for some Intel host controllers
         - sdhci: Convert to use the new re-tuning facility
         - sdhci: Various minor fixes and clean-ups
         - dw_mmc: Add support for hi6220
         - dw_mmc: Use core to handle absent write protect line
         - dw_mmc: Add support to switch voltage
         - tmio: Some fixes and modernizations
         - sh_mmcif: Improve clock rate calculation"
      
      * tag 'mmc-v4.2' of git://git.linaro.org/people/ulf.hansson/mmc: (98 commits)
        mmc: queue: prevent soft lockups on PREEMPT=n
        mmc: mediatek: Add PM support for MMC driver
        mmc: mediatek: Add Mediatek MMC driver
        mmc: dt-bindings: add Mediatek MMC bindings
        mmc: card: Fixup request missing in mmc_blk_issue_rw_rq
        mmc: sdhci: fix low memory corruption
        mmc: sdhci-pci: Change AMD SDHCI quirk application scope
        i2c-piix4: Use Macro for AMD CZ SMBus device ID
        pci_ids: Add AMD KERNCZ device ID support
        mmc: queue: use swap() in mmc_queue_thread()
        mmc: dw_mmc: insmod followed by rmmod will hung for eMMC
        mmc: sdhci: Restore behavior while creating OCR mask
        mmc: sdhci-pxav3: fix device wakeup initialization
        mmc: core: Attach PM domain prior probing of SDIO func driver
        mmc: core: Remove redundant ->power_restore() callback for SD
        mmc: core: Remove redundant ->power_restore() callback for MMC
        mmc: sdhci-bcm2835: Actually enable the clock
        mmc: sdhci-bcm2835: Clean up platform allocations if sdhci init fails.
        mmc: sdhci-of-esdhc: enable interrupt mode to detect card
        mmc: sdhci-esdhc-imx: add quirk SDHCI_QUIRK2_BROKEN_HS200 for imx6qdl
        ...
      a57f14ba
    • Linus Torvalds's avatar
      Merge tag 'gpio-v4.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 10b4b096
      Linus Torvalds authored
      Pull gpio updates from Linus Walleij:
       "This is the big bulk of GPIO changes queued for the v4.2 kernel
        series:
      
         - a big set of cleanups to the aged sysfs interface from Johan
           Hovold.  To get these in, v4.1-rc3 was merged into the tree as the
           first patch in that series had to go into stable.  This makes the
           locking much more fine-grained (get rid of the "big GPIO lock(s)"
           and store states in the GPIO descriptors.
      
         - rename gpiod_[g|s]et_array() to gpiod_[g|s]et_array_value() to
           avoid confusions.
      
         - New drivers for:
            * NXP LPC18xx (currently LPC1850)
            * NetLogic XLP
            * Broadcom STB SoC's
            * Axis ETRAXFS
            * Zynq Ultrascale+ (subdriver)
      
         - ACPI:
            * make it possible to retrieve GpioInt resources from a GPIO
              device using acpi_dev_gpio_irq_get()
            * merge some dependent I2C changes exploiting this.
            * support the ARM X-Gene GPIO standby driver.
      
         - make it possible for the generic GPIO driver to read back the value
           set registers to reflect current status.
      
         - loads of OMAP IRQ handling fixes.
      
         - incremental improvements to Kona, max732x, OMAP, MXC, RCAR,
           PCA953x, STP-XWAY, PCF857x, Crystalcove, TB10x.
      
         - janitorial (constification, checkpatch cleanups)"
      
      * tag 'gpio-v4.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (71 commits)
        gpio: Fix checkpatch.pl issues
        gpio: pcf857x: handle only enabled irqs
        gpio / ACPI: Return -EPROBE_DEFER if the gpiochip was not found
        GPIO / ACPI: export acpi_gpiochip_request(free)_interrupts for module use
        gpio: improve error reporting on own descriptors
        gpio: promote own request failure to pr_err()
        gpio: Added support to Zynq Ultrascale+ MPSoC
        gpio: add ETRAXFS GPIO driver
        fix documentation after renaming gpiod_set_array to gpiod_set_array_value
        gpio: Add GPIO support for Broadcom STB SoCs
        gpio: xgene: add ACPI support for APM X-Gene GPIO standby driver
        gpio: tb10x: Drop unneeded free_irq() call
        gpio: crystalcove: set IRQCHIP_SKIP_SET_WAKE for the irqchip
        gpio: stp-xway: Use the of_property_read_u32 helper
        gpio: pcf857x: Check for irq_set_irq_wake() failures
        gpio-stp-xway: Fix enabling the highest bit of the PHY LEDs
        gpio: Prevent an integer overflow in the pca953x driver
        gpio: omap: rework omap_gpio_irq_startup to handle current pin state properly
        gpio: omap: rework omap_gpio_request to touch only gpio specific registers
        gpio: omap: rework omap_x_irq_shutdown to touch only irqs specific registers
        ...
      10b4b096
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-4.2-rc1' of... · c70c5fb2
      Linus Torvalds authored
      Merge tag 'pwm/for-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm
      
      Pull pwm updates from Thierry Reding:
       "This has a couple of fixes for Atmel, Samsung and Broadcom drivers.
      
        Some preparatory patches for more upcoming Intel work is included as
        well"
      
      * tag 'pwm/for-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
        pwm: lpss: pci: Add support for Broxton platform
        pwm: bcm-kona: Don't set polarity in probe
        pwm: Add pwmchip_add_with_polarity() API
        pwm: atmel: Fix incorrect CDTY value after disabling
        pwm: atmel: Fix incorrect CDTY value after enabling
        pwm: samsung: Use MODULE_DEVICE_TABLE() to include OF modalias
        pwm: Add support to remove registered consumer lookup tables
      c70c5fb2
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 44d21c3f
      Linus Torvalds authored
      Pull crypto update from Herbert Xu:
       "Here is the crypto update for 4.2:
      
        API:
      
         - Convert RNG interface to new style.
      
         - New AEAD interface with one SG list for AD and plain/cipher text.
           All external AEAD users have been converted.
      
         - New asymmetric key interface (akcipher).
      
        Algorithms:
      
         - Chacha20, Poly1305 and RFC7539 support.
      
         - New RSA implementation.
      
         - Jitter RNG.
      
         - DRBG is now seeded with both /dev/random and Jitter RNG.  If kernel
           pool isn't ready then DRBG will be reseeded when it is.
      
         - DRBG is now the default crypto API RNG, replacing krng.
      
         - 842 compression (previously part of powerpc nx driver).
      
        Drivers:
      
         - Accelerated SHA-512 for arm64.
      
         - New Marvell CESA driver that supports DMA and more algorithms.
      
         - Updated powerpc nx 842 support.
      
         - Added support for SEC1 hardware to talitos"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (292 commits)
        crypto: marvell/cesa - remove COMPILE_TEST dependency
        crypto: algif_aead - Temporarily disable all AEAD algorithms
        crypto: af_alg - Forbid the use internal algorithms
        crypto: echainiv - Only hold RNG during initialisation
        crypto: seqiv - Add compatibility support without RNG
        crypto: eseqiv - Offer normal cipher functionality without RNG
        crypto: chainiv - Offer normal cipher functionality without RNG
        crypto: user - Add CRYPTO_MSG_DELRNG
        crypto: user - Move cryptouser.h to uapi
        crypto: rng - Do not free default RNG when it becomes unused
        crypto: skcipher - Allow givencrypt to be NULL
        crypto: sahara - propagate the error on clk_disable_unprepare() failure
        crypto: rsa - fix invalid select for AKCIPHER
        crypto: picoxcell - Update to the current clk API
        crypto: nx - Check for bogus firmware properties
        crypto: marvell/cesa - add DT bindings documentation
        crypto: marvell/cesa - add support for Kirkwood and Dove SoCs
        crypto: marvell/cesa - add support for Orion SoCs
        crypto: marvell/cesa - add allhwsupport module parameter
        crypto: marvell/cesa - add support for all armada SoCs
        ...
      44d21c3f
    • Linus Torvalds's avatar
      Merge tag 'please-pull-paravirt' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · efdfce2b
      Linus Torvalds authored
      Pull ia64 paravirt removal from Tony Luck:
       "Nobody cares about paravirtualization on ia64 anymore"
      
      * tag 'please-pull-paravirt' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        ia64: remove paravirt code
      efdfce2b
    • Linus Torvalds's avatar
      Merge branch 'for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · df687709
      Linus Torvalds authored
      Pull m68k update from Geert Uytterhoeven.
      
      * 'for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k: Use for_each_sg()
        m68k/defconfig: Update defconfigs for v4.1-rc6
      df687709
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 407a2c72
      Linus Torvalds authored
      Pull irq updates from Thomas Gleixner:
       "The irq departement delivers:
      
         - plug a potential race related to chained interrupt handlers
      
         - core updates which address the needs of the x86 irqdomain conversion
      
         - new irqchip callback to support affinity settings for VCPUs
      
         - the usual pile of updates to interrupt chip drivers
      
         - a few helper functions to allow further cleanups and
           simplifications
      
        I have a largish pile of coccinelle scripted/verified cleanups and
        simplifications pending on top of that, but I prefer to send that
        towards the end of the merge window when the arch/driver changes have
        hit your tree to avoid API change wreckage as far as possible"
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
        genirq: Remove bogus restriction in irq_move_mask_irq()
        irqchip: atmel-aic5: Add sama5d2 support
        irq: spear-shirq: Fix race in installing chained IRQ handler
        irq: irq-keystone: Fix race in installing chained IRQ handler
        gpio: gpio-tegra: Fix race in installing chained IRQ handler
        gpio: gpio-mxs: Fix race in installing chained IRQ handler
        gpio: gpio-mxc: Fix race in installing chained IRQ handler
        ARM: gemini: Fix race in installing GPIO chained IRQ handler
        GPU: ipu: Fix race in installing IPU chained IRQ handler
        ARM: sa1100: convert SA11x0 related code to use new chained handler helper
        irq: Add irq_set_chained_handler_and_data()
        irqchip: exynos-combiner: Save IRQ enable set on suspend
        genirq: Introduce helper function irq_data_get_affinity_mask()
        genirq: Introduce helper function irq_data_get_node()
        genirq: Introduce struct irq_common_data to host shared irq data
        genirq: Prevent crash in irq_move_irq()
        genirq: Enhance irq_data_to_desc() to support hierarchy irqdomain
        irqchip: gic: Simplify gic_configure_irq by using IRQCHIP_SET_TYPE_MASKED
        irqchip: renesas: intc-irqpin: Improve binding documentation
        genirq: Set IRQCHIP_SKIP_SET_WAKE for no_irq_chip
        ...
      407a2c72
    • Linus Torvalds's avatar
      Merge branch 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3a95398f
      Linus Torvalds authored
      Pull NOHZ updates from Thomas Gleixner:
       "A few updates to the nohz infrastructure:
      
         - recursion protection for context tracking
      
         - make the TIF_NOHZ inheritance smarter
      
         - isolate cpus which belong to the NOHZ full set"
      
      * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        nohz: Set isolcpus when nohz_full is set
        nohz: Add tick_nohz_full_add_cpus_to() API
        context_tracking: Inherit TIF_NOHZ through forks instead of context switches
        context_tracking: Protect against recursion
      3a95398f
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 43224b96
      Linus Torvalds authored
      Pull timer updates from Thomas Gleixner:
       "A rather largish update for everything time and timer related:
      
         - Cache footprint optimizations for both hrtimers and timer wheel
      
         - Lower the NOHZ impact on systems which have NOHZ or timer migration
           disabled at runtime.
      
         - Optimize run time overhead of hrtimer interrupt by making the clock
           offset updates smarter
      
         - hrtimer cleanups and removal of restrictions to tackle some
           problems in sched/perf
      
         - Some more leap second tweaks
      
         - Another round of changes addressing the 2038 problem
      
         - First step to change the internals of clock event devices by
           introducing the necessary infrastructure
      
         - Allow constant folding for usecs/msecs_to_jiffies()
      
         - The usual pile of clockevent/clocksource driver updates
      
        The hrtimer changes contain updates to sched, perf and x86 as they
        depend on them plus changes all over the tree to cleanup API changes
        and redundant code, which got copied all over the place.  The y2038
        changes touch s390 to remove the last non 2038 safe code related to
        boot/persistant clock"
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (114 commits)
        clocksource: Increase dependencies of timer-stm32 to limit build wreckage
        timer: Minimize nohz off overhead
        timer: Reduce timer migration overhead if disabled
        timer: Stats: Simplify the flags handling
        timer: Replace timer base by a cpu index
        timer: Use hlist for the timer wheel hash buckets
        timer: Remove FIFO "guarantee"
        timers: Sanitize catchup_timer_jiffies() usage
        hrtimer: Allow hrtimer::function() to free the timer
        seqcount: Introduce raw_write_seqcount_barrier()
        seqcount: Rename write_seqcount_barrier()
        hrtimer: Fix hrtimer_is_queued() hole
        hrtimer: Remove HRTIMER_STATE_MIGRATE
        selftest: Timers: Avoid signal deadlock in leap-a-day
        timekeeping: Copy the shadow-timekeeper over the real timekeeper last
        clockevents: Check state instead of mode in suspend/resume path
        selftests: timers: Add leap-second timer edge testing to leap-a-day.c
        ntp: Do leapsecond adjustment in adjtimex read path
        time: Prevent early expiry of hrtimers[CLOCK_REALTIME] at the leap second edge
        ntp: Introduce and use SECS_PER_DAY macro instead of 86400
        ...
      43224b96
    • Linus Torvalds's avatar
      Merge branch 'x86-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d70b3ef5
      Linus Torvalds authored
      Pull x86 core updates from Ingo Molnar:
       "There were so many changes in the x86/asm, x86/apic and x86/mm topics
        in this cycle that the topical separation of -tip broke down somewhat -
        so the result is a more traditional architecture pull request,
        collected into the 'x86/core' topic.
      
        The topics were still maintained separately as far as possible, so
        bisectability and conceptual separation should still be pretty good -
        but there were a handful of merge points to avoid excessive
        dependencies (and conflicts) that would have been poorly tested in the
        end.
      
        The next cycle will hopefully be much more quiet (or at least will
        have fewer dependencies).
      
        The main changes in this cycle were:
      
         * x86/apic changes, with related IRQ core changes: (Jiang Liu, Thomas
           Gleixner)
      
           - This is the second and most intrusive part of changes to the x86
             interrupt handling - full conversion to hierarchical interrupt
             domains:
      
                [IOAPIC domain]   -----
                                       |
                [MSI domain]      --------[Remapping domain] ----- [ Vector domain ]
                                       |   (optional)          |
                [HPET MSI domain] -----                        |
                                                               |
                [DMAR domain]     -----------------------------
                                                               |
                [Legacy domain]   -----------------------------
      
             This now reflects the actual hardware and allowed us to distangle
             the domain specific code from the underlying parent domain, which
             can be optional in the case of interrupt remapping.  It's a clear
             separation of functionality and removes quite some duct tape
             constructs which plugged the remap code between ioapic/msi/hpet
             and the vector management.
      
           - Intel IOMMU IRQ remapping enhancements, to allow direct interrupt
             injection into guests (Feng Wu)
      
         * x86/asm changes:
      
           - Tons of cleanups and small speedups, micro-optimizations.  This
             is in preparation to move a good chunk of the low level entry
             code from assembly to C code (Denys Vlasenko, Andy Lutomirski,
             Brian Gerst)
      
           - Moved all system entry related code to a new home under
             arch/x86/entry/ (Ingo Molnar)
      
           - Removal of the fragile and ugly CFI dwarf debuginfo annotations.
             Conversion to C will reintroduce many of them - but meanwhile
             they are only getting in the way, and the upstream kernel does
             not rely on them (Ingo Molnar)
      
           - NOP handling refinements. (Borislav Petkov)
      
         * x86/mm changes:
      
           - Big PAT and MTRR rework: making the code more robust and
             preparing to phase out exposing direct MTRR interfaces to drivers -
             in favor of using PAT driven interfaces (Toshi Kani, Luis R
             Rodriguez, Borislav Petkov)
      
           - New ioremap_wt()/set_memory_wt() interfaces to support
             Write-Through cached memory mappings.  This is especially
             important for good performance on NVDIMM hardware (Toshi Kani)
      
         * x86/ras changes:
      
           - Add support for deferred errors on AMD (Aravind Gopalakrishnan)
      
             This is an important RAS feature which adds hardware support for
             poisoned data.  That means roughly that the hardware marks data
             which it has detected as corrupted but wasn't able to correct, as
             poisoned data and raises an APIC interrupt to signal that in the
             form of a deferred error.  It is the OS's responsibility then to
             take proper recovery action and thus prolonge system lifetime as
             far as possible.
      
           - Add support for Intel "Local MCE"s: upcoming CPUs will support
             CPU-local MCE interrupts, as opposed to the traditional system-
             wide broadcasted MCE interrupts (Ashok Raj)
      
           - Misc cleanups (Borislav Petkov)
      
         * x86/platform changes:
      
           - Intel Atom SoC updates
      
        ... and lots of other cleanups, fixlets and other changes - see the
        shortlog and the Git log for details"
      
      * 'x86-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (222 commits)
        x86/hpet: Use proper hpet device number for MSI allocation
        x86/hpet: Check for irq==0 when allocating hpet MSI interrupts
        x86/mm/pat, drivers/infiniband/ipath: Use arch_phys_wc_add() and require PAT disabled
        x86/mm/pat, drivers/media/ivtv: Use arch_phys_wc_add() and require PAT disabled
        x86/platform/intel/baytrail: Add comments about why we disabled HPET on Baytrail
        genirq: Prevent crash in irq_move_irq()
        genirq: Enhance irq_data_to_desc() to support hierarchy irqdomain
        iommu, x86: Properly handle posted interrupts for IOMMU hotplug
        iommu, x86: Provide irq_remapping_cap() interface
        iommu, x86: Setup Posted-Interrupts capability for Intel iommu
        iommu, x86: Add cap_pi_support() to detect VT-d PI capability
        iommu, x86: Avoid migrating VT-d posted interrupts
        iommu, x86: Save the mode (posted or remapped) of an IRTE
        iommu, x86: Implement irq_set_vcpu_affinity for intel_ir_chip
        iommu: dmar: Provide helper to copy shared irte fields
        iommu: dmar: Extend struct irte for VT-d Posted-Interrupts
        iommu: Add new member capability to struct irq_remap_ops
        x86/asm/entry/64: Disentangle error_entry/exit gsbase/ebx/usermode code
        x86/asm/entry/32: Shorten __audit_syscall_entry() args preparation
        x86/asm/entry/32: Explain reloading of registers after __audit_syscall_entry()
        ...
      d70b3ef5
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 650ec5a6
      Linus Torvalds authored
      Pull x86 warning fixlet from Ingo Molnar:
       "A build fix for certain (rare) variants of binutils that did not make
        it into v4.1"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/boot: Fix overflow warning with 32-bit binutils
      650ec5a6
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 35ffccdb
      Linus Torvalds authored
      Pul x86 microcode updates from Ingo Molnar:
       "x86 microcode loader updates from Borislav Petkov:
      
         - early parsing of the built-in microcode
      
         - cleanups
      
         - misc smaller fixes"
      
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode: Correct CPU family related variable types
        x86/microcode: Disable builtin microcode loading on 32-bit for now
        x86/microcode/intel: Rename get_matching_sig()
        x86/microcode/intel: Simplify get_matching_sig()
        x86/microcode/intel: Simplify update_match_cpu()
        x86/microcode/intel: Rename get_matching_microcode
        x86/cpu/microcode: Zap changelog
        x86/microcode: Parse built-in microcode early
        x86/microcode/intel: Remove unused @rev arg of get_matching_sig()
        x86/microcode/intel: Get rid of revision_is_newer()
      35ffccdb
    • Linus Torvalds's avatar
      Merge branch 'x86-kdump-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e2172d8f
      Linus Torvalds authored
      Pull x86 kdump updates from Ingo Molnar:
       "Three kdump robustness related improvements (Joerg Roedel)"
      
      * 'x86-kdump-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/crash: Allocate enough low memory when crashkernel=high
        x86/swiotlb: Try coherent allocations with __GFP_NOWARN
        swiotlb: Warn on allocation failure in swiotlb_alloc_coherent()
      e2172d8f
    • Uwe Kleine-König's avatar
      HSI: nokia-modem: use flags argument of devm_gpiod_get to set direction · f451e76f
      Uwe Kleine-König authored
      Since 39b2bbe3 (gpio: add flags argument to gpiod_get*() functions)
      which appeared in v3.17-rc1, the gpiod_get* functions take an additional
      parameter that allows to specify direction and initial value for output.
      
      Use this to simplify the driver. Furthermore this is one caller less
      that stops us making the flags argument to gpiod_get*() mandatory.
      Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Acked-by: default avatarAlexandre Courbot <acourbot@nvidia.com>
      Signed-off-by: default avatarSebastian Reichel <sre@kernel.org>
      f451e76f
    • Sebastian Reichel's avatar
      HSI: nokia-modem: Reduce missing driver message to debug level · 505875e1
      Sebastian Reichel authored
      Reduce message priority from dev_err to dev_dbg for missing cmt-speech
      or ssi-protocol drivers, since they will be probed again and it may
      result in spamming the boot log.
      Reported-by: default avatarAaro Koskinen <aaro.koskinen@iki.fi>
      Signed-off-by: default avatarSebastian Reichel <sre@kernel.org>
      505875e1
    • Sebastian Reichel's avatar
      HSI: cmt_speech: fix timestamp interface · 5023a5ca
      Sebastian Reichel authored
      The user interface for timestamps in the new cmt_speech
      driver is broken in multiple ways:
      
      - The layout is incompatible between 32-bit and 64-bit user
        space, because of the size differences in 'struct timespec'.
        This means that the driver can not work when used with 32-bit
        user space on a 64-bit kernel.
      
      - As there are plans to change 32-bit user space to use
        a 64-bit time_t type in the future, it will also be
        incompatible with new 32-bit user space.
      
      - It is using ktime_get_ts under it's deprecated alias
        (do_posix_clock_monotonic_gettime).
      
      To keep support for the user space tools written for this driver (which
      have lived many years out-of-tree), the interface has been hardened to
      unsigned 32-bit values.
      Reported-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarSebastian Reichel <sre@kernel.org>
      5023a5ca
    • Linus Torvalds's avatar
      Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e75c73ad
      Linus Torvalds authored
      Pull x86 FPU updates from Ingo Molnar:
       "This tree contains two main changes:
      
         - The big FPU code rewrite: wide reaching cleanups and reorganization
           that pulls all the FPU code together into a clean base in
           arch/x86/fpu/.
      
           The resulting code is leaner and faster, and much easier to
           understand.  This enables future work to further simplify the FPU
           code (such as removing lazy FPU restores).
      
           By its nature these changes have a substantial regression risk: FPU
           code related bugs are long lived, because races are often subtle
           and bugs mask as user-space failures that are difficult to track
           back to kernel side backs.  I'm aware of no unfixed (or even
           suspected) FPU related regression so far.
      
         - MPX support rework/fixes.  As this is still not a released CPU
           feature, there were some buglets in the code - should be much more
           robust now (Dave Hansen)"
      
      * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (250 commits)
        x86/fpu: Fix double-increment in setup_xstate_features()
        x86/mpx: Allow 32-bit binaries on 64-bit kernels again
        x86/mpx: Do not count MPX VMAs as neighbors when unmapping
        x86/mpx: Rewrite the unmap code
        x86/mpx: Support 32-bit binaries on 64-bit kernels
        x86/mpx: Use 32-bit-only cmpxchg() for 32-bit apps
        x86/mpx: Introduce new 'directory entry' to 'addr' helper function
        x86/mpx: Add temporary variable to reduce masking
        x86: Make is_64bit_mm() widely available
        x86/mpx: Trace allocation of new bounds tables
        x86/mpx: Trace the attempts to find bounds tables
        x86/mpx: Trace entry to bounds exception paths
        x86/mpx: Trace #BR exceptions
        x86/mpx: Introduce a boot-time disable flag
        x86/mpx: Restrict the mmap() size check to bounds tables
        x86/mpx: Remove redundant MPX_BNDCFG_ADDR_MASK
        x86/mpx: Clean up the code by not passing a task pointer around when unnecessary
        x86/mpx: Use the new get_xsave_field_ptr()API
        x86/fpu/xstate: Wrap get_xsave_addr() to make it safer
        x86/fpu/xstate: Fix up bad get_xsave_addr() assumptions
        ...
      e75c73ad
    • Linus Torvalds's avatar
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cfe3eceb
      Linus Torvalds authored
      Pull x86 EFI updates from Ingo Molnar:
       "EFI changes:
      
         - Use idiomatic negative error values in efivar_create_sysfs_entry()
           instead of returning '1' to indicate error (Dan Carpenter)
      
         - Implement new support to expose the EFI System Resource Tables in
           sysfs, which provides information for performing firmware updates
           (Peter Jones)
      
         - Documentation cleanup in the EFI handover protocol section which
           falsely claimed that 'cmdline_size' needed to be filled out by the
           boot loader (Alex Smith)
      
         - Align the order of SMBIOS tables in /sys/firmware/efi/systab to
           match the way that we do things for ACPI and add documentation to
           Documentation/ABI (Jean Delvare)"
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        efi: Work around ia64 build problem with ESRT driver
        efi: Add 'systab' information to Documentation/ABI
        efi: dmi: List SMBIOS3 table before SMBIOS table
        efi/esrt: Fix some compiler warnings
        x86, doc: Remove cmdline_size from list of fields to be filled in for EFI handover
        efi: Add esrt support
        efi: efivar_create_sysfs_entry() should return negative error codes
      cfe3eceb
    • Linus Torvalds's avatar
      Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5ef6ca4f
      Linus Torvalds authored
      Pull x86 debugging documentation updates from Ingo Molnar:
       "Documentation updates about x86 kernel stacks"
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/Documentation: Adapt Ingo's explanation on printing backtraces
        x86/Documentation: Remove STACKFAULT_STACK bulletpoint
        x86/Documentation: Move kernel-stacks doc one level up
      5ef6ca4f
  2. 22 Jun, 2015 8 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b3ba283d
      Linus Torvalds authored
      Pull x86 CPU features from Ingo Molnar:
       "Various CPU feature support related changes: in particular the
        /proc/cpuinfo model name sanitization change should be monitored, it
        has a chance to break stuff.  (but really shouldn't and there are no
        regression reports)"
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/cpu/amd: Give access to the number of nodes in a physical package
        x86/cpu: Trim model ID whitespace
        x86/cpu: Strip any /proc/cpuinfo model name field whitespace
        x86/cpu/amd: Set X86_FEATURE_EXTD_APICID for future processors
        x86/gart: Check for GART support before accessing GART registers
      b3ba283d
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d43e4f44
      Linus Torvalds authored
      Pull x86 cleanups from Ingo Molnar:
       "Misc cleanups"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mm: Clean up types in xlate_dev_mem_ptr() some more
        x86: Deinline dma_free_attrs()
        x86: Deinline dma_alloc_attrs()
        x86: Remove unused TI_cpu
        x86: Merge common 32-bit values in asm-offsets.c
      d43e4f44
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 23b77762
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "The main changes are:
      
         - lockless wakeup support for futexes and IPC message queues
           (Davidlohr Bueso, Peter Zijlstra)
      
         - Replace spinlocks with atomics in thread_group_cputimer(), to
           improve scalability (Jason Low)
      
         - NUMA balancing improvements (Rik van Riel)
      
         - SCHED_DEADLINE improvements (Wanpeng Li)
      
         - clean up and reorganize preemption helpers (Frederic Weisbecker)
      
         - decouple page fault disabling machinery from the preemption
           counter, to improve debuggability and robustness (David
           Hildenbrand)
      
         - SCHED_DEADLINE documentation updates (Luca Abeni)
      
         - topology CPU masks cleanups (Bartosz Golaszewski)
      
         - /proc/sched_debug improvements (Srikar Dronamraju)"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (79 commits)
        sched/deadline: Remove needless parameter in dl_runtime_exceeded()
        sched: Remove superfluous resetting of the p->dl_throttled flag
        sched/deadline: Drop duplicate init_sched_dl_class() declaration
        sched/deadline: Reduce rq lock contention by eliminating locking of non-feasible target
        sched/deadline: Make init_sched_dl_class() __init
        sched/deadline: Optimize pull_dl_task()
        sched/preempt: Add static_key() to preempt_notifiers
        sched/preempt: Fix preempt notifiers documentation about hlist_del() within unsafe iteration
        sched/stop_machine: Fix deadlock between multiple stop_two_cpus()
        sched/debug: Add sum_sleep_runtime to /proc/<pid>/sched
        sched/debug: Replace vruntime with wait_sum in /proc/sched_debug
        sched/debug: Properly format runnable tasks in /proc/sched_debug
        sched/numa: Only consider less busy nodes as numa balancing destinations
        Revert 095bebf6 ("sched/numa: Do not move past the balance point if unbalanced")
        sched/fair: Prevent throttling in early pick_next_task_fair()
        preempt: Reorganize the notrace definitions a bit
        preempt: Use preempt_schedule_context() as the official tracing preemption point
        sched: Make preempt_schedule_context() function-tracing safe
        x86: Remove cpu_sibling_mask() and cpu_core_mask()
        x86: Replace cpu_**_mask() with topology_**_cpumask()
        ...
      23b77762
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6bc4c3ad
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "These are the left over fixes from the v4.1 cycle"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf tools: Fix build breakage if prefix= is specified
        perf/x86: Honor the architectural performance monitoring version
        perf/x86/intel: Fix PMI handling for Intel PT
        perf/x86/intel/bts: Fix DS area sharing with x86_pmu events
        perf/x86: Add more Broadwell model numbers
        perf: Fix ring_buffer_attach() RCU sync, again
      6bc4c3ad
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c58267e9
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Kernel side changes mostly consist of work on x86 PMU drivers:
      
         - x86 Intel PT (hardware CPU tracer) improvements (Alexander
           Shishkin)
      
         - x86 Intel CQM (cache quality monitoring) improvements (Thomas
           Gleixner)
      
         - x86 Intel PEBSv3 support (Peter Zijlstra)
      
         - x86 Intel PEBS interrupt batching support for lower overhead
           sampling (Zheng Yan, Kan Liang)
      
         - x86 PMU scheduler fixes and improvements (Peter Zijlstra)
      
        There's too many tooling improvements to list them all - here are a
        few select highlights:
      
        'perf bench':
      
            - Introduce new 'perf bench futex' benchmark: 'wake-parallel', to
              measure parallel waker threads generating contention for kernel
              locks (hb->lock). (Davidlohr Bueso)
      
        'perf top', 'perf report':
      
            - Allow disabling/enabling events dynamicaly in 'perf top':
              a 'perf top' session can instantly become a 'perf report'
              one, i.e. going from dynamic analysis to a static one,
              returning to a dynamic one is possible, to toogle the
              modes, just press 'f' to 'freeze/unfreeze' the sampling. (Arnaldo Carvalho de Melo)
      
            - Make Ctrl-C stop processing on TUI, allowing interrupting the load of big
              perf.data files (Namhyung Kim)
      
        'perf probe': (Masami Hiramatsu)
      
            - Support glob wildcards for function name
            - Support $params special probe argument: Collect all function arguments
            - Make --line checks validate C-style function name.
            - Add --no-inlines option to avoid searching inline functions
            - Greatly speed up 'perf probe --list' by caching debuginfo.
            - Improve --filter support for 'perf probe', allowing using its arguments
              on other commands, as --add, --del, etc.
      
        'perf sched':
      
            - Add option in 'perf sched' to merge like comms to lat output (Josef Bacik)
      
        Plus tons of infrastructure work - in particular preparation for
        upcoming threaded perf report support, but also lots of other work -
        and fixes and other improvements.  See (much) more details in the
        shortlog and in the git log"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (305 commits)
        perf tools: Configurable per thread proc map processing time out
        perf tools: Add time out to force stop proc map processing
        perf report: Fix sort__sym_cmp to also compare end of symbol
        perf hists browser: React to unassigned hotkey pressing
        perf top: Tell the user how to unfreeze events after pressing 'f'
        perf hists browser: Honour the help line provided by builtin-{top,report}.c
        perf hists browser: Do not exit when 'f' is pressed in 'report' mode
        perf top: Replace CTRL+z with 'f' as hotkey for enable/disable events
        perf annotate: Rename source_line_percent to source_line_samples
        perf annotate: Display total number of samples with --show-total-period
        perf tools: Ensure thread-stack is flushed
        perf top: Allow disabling/enabling events dynamicly
        perf evlist: Add toggle_enable() method
        perf trace: Fix race condition at the end of started workloads
        perf probe: Speed up perf probe --list by caching debuginfo
        perf probe: Show usage even if the last event is skipped
        perf tools: Move libtraceevent dynamic list to separated LDFLAGS variable
        perf tools: Fix a problem when opening old perf.data with different byte order
        perf tools: Ignore .config-detected in .gitignore
        perf probe: Fix to return error if no probe is added
        ...
      c58267e9
    • Linus Torvalds's avatar
      Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1bf7067c
      Linus Torvalds authored
      Pull locking updates from Ingo Molnar:
       "The main changes are:
      
         - 'qspinlock' support, enabled on x86: queued spinlocks - these are
           now the spinlock variant used by x86 as they outperform ticket
           spinlocks in every category.  (Waiman Long)
      
         - 'pvqspinlock' support on x86: paravirtualized variant of queued
           spinlocks.  (Waiman Long, Peter Zijlstra)
      
         - 'qrwlock' support, enabled on x86: queued rwlocks.  Similar to
           queued spinlocks, they are now the variant used by x86:
      
             CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
             CONFIG_QUEUED_SPINLOCKS=y
             CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
             CONFIG_QUEUED_RWLOCKS=y
      
         - various lockdep fixlets
      
         - various locking primitives cleanups, further WRITE_ONCE()
           propagation"
      
      * 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
        locking/lockdep: Remove hard coded array size dependency
        locking/qrwlock: Don't contend with readers when setting _QW_WAITING
        lockdep: Do not break user-visible string
        locking/arch: Rename set_mb() to smp_store_mb()
        locking/arch: Add WRITE_ONCE() to set_mb()
        rtmutex: Warn if trylock is called from hard/softirq context
        arch: Remove __ARCH_HAVE_CMPXCHG
        locking/rtmutex: Drop usage of __HAVE_ARCH_CMPXCHG
        locking/qrwlock: Rename QUEUE_RWLOCK to QUEUED_RWLOCKS
        locking/pvqspinlock: Rename QUEUED_SPINLOCK to QUEUED_SPINLOCKS
        locking/pvqspinlock: Replace xchg() by the more descriptive set_mb()
        locking/pvqspinlock, x86: Enable PV qspinlock for Xen
        locking/pvqspinlock, x86: Enable PV qspinlock for KVM
        locking/pvqspinlock, x86: Implement the paravirt qspinlock call patching
        locking/pvqspinlock: Implement simple paravirt support for the qspinlock
        locking/qspinlock: Revert to test-and-set on hypervisors
        locking/qspinlock: Use a simple write to grab the lock
        locking/qspinlock: Optimize for smaller NR_CPUS
        locking/qspinlock: Extract out code snippets for the next patch
        locking/qspinlock: Add pending bit
        ...
      1bf7067c
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fc934d40
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
      
       - Continued initialization/Kconfig updates: hide most Kconfig options
         from unsuspecting users.
      
         There's now a single high level configuration option:
      
              *
              * RCU Subsystem
              *
              Make expert-level adjustments to RCU configuration (RCU_EXPERT) [N/y/?] (NEW)
      
         Which if answered in the negative, leaves us with a single
         interactive configuration option:
      
              Offload RCU callback processing from boot-selected CPUs (RCU_NOCB_CPU) [N/y/?] (NEW)
      
         All the rest of the RCU options are configured automatically.  Later
         on we'll remove this single leftover configuration option as well.
      
       - Remove all uses of RCU-protected array indexes: replace the
         rcu_[access|dereference]_index_check() APIs with READ_ONCE() and
         rcu_lockdep_assert()
      
       - RCU CPU-hotplug cleanups
      
       - Updates to Tiny RCU: a race fix and further code shrinkage.
      
       - RCU torture-testing updates: fixes, speedups, cleanups and
         documentation updates.
      
       - Miscellaneous fixes
      
       - Documentation updates
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (60 commits)
        rcutorture: Allow repetition factors in Kconfig-fragment lists
        rcutorture: Display "make oldconfig" errors
        rcutorture: Update TREE_RCU-kconfig.txt
        rcutorture: Make rcutorture scripts force RCU_EXPERT
        rcutorture: Update configuration fragments for rcutree.rcu_fanout_exact
        rcutorture: TASKS_RCU set directly, so don't explicitly set it
        rcutorture: Test SRCU cleanup code path
        rcutorture: Replace barriers with smp_store_release() and smp_load_acquire()
        locktorture: Change longdelay_us to longdelay_ms
        rcutorture: Allow negative values of nreaders to oversubscribe
        rcutorture: Exchange TREE03 and TREE08 NR_CPUS, speed up CPU hotplug
        rcutorture: Exchange TREE03 and TREE04 geometries
        locktorture: fix deadlock in 'rw_lock_irq' type
        rcu: Correctly handle non-empty Tiny RCU callback list with none ready
        rcutorture: Test both RCU-sched and RCU-bh for Tiny RCU
        rcu: Further shrink Tiny RCU by making empty functions static inlines
        rcu: Conditionally compile RCU's eqs warnings
        rcu: Remove prompt for RCU implementation
        rcu: Make RCU able to tolerate undefined CONFIG_RCU_KTHREAD_PRIO
        rcu: Make RCU able to tolerate undefined CONFIG_RCU_FANOUT_LEAF
        ...
      fc934d40
    • Linus Torvalds's avatar
      Merge branch 'for-linus-1' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 052b398a
      Linus Torvalds authored
      Pull vfs updates from Al Viro:
       "In this pile: pathname resolution rewrite.
      
         - recursion in link_path_walk() is gone.
      
         - nesting limits on symlinks are gone (the only limit remaining is
           that the total amount of symlinks is no more than 40, no matter how
           nested).
      
         - "fast" (inline) symlinks are handled without leaving rcuwalk mode.
      
         - stack footprint (independent of the nesting) is below kilobyte now,
           about on par with what it used to be with one level of nested
           symlinks and ~2.8 times lower than it used to be in the worst case.
      
         - struct nameidata is entirely private to fs/namei.c now (not even
           opaque pointers are being passed around).
      
         - ->follow_link() and ->put_link() calling conventions had been
           changed; all in-tree filesystems converted, out-of-tree should be
           able to follow reasonably easily.
      
           For out-of-tree conversions, see Documentation/filesystems/porting
           for details (and in-tree filesystems for examples of conversion).
      
        That has sat in -next since mid-May, seems to survive all testing
        without regressions and merges clean with v4.1"
      
      * 'for-linus-1' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (131 commits)
        turn user_{path_at,path,lpath,path_dir}() into static inlines
        namei: move saved_nd pointer into struct nameidata
        inline user_path_create()
        inline user_path_parent()
        namei: trim do_last() arguments
        namei: stash dfd and name into nameidata
        namei: fold path_cleanup() into terminate_walk()
        namei: saner calling conventions for filename_parentat()
        namei: saner calling conventions for filename_create()
        namei: shift nameidata down into filename_parentat()
        namei: make filename_lookup() reject ERR_PTR() passed as name
        namei: shift nameidata inside filename_lookup()
        namei: move putname() call into filename_lookup()
        namei: pass the struct path to store the result down into path_lookupat()
        namei: uninline set_root{,_rcu}()
        namei: be careful with mountpoint crossings in follow_dotdot_rcu()
        Documentation: remove outdated information from automount-support.txt
        get rid of assorted nameidata-related debris
        lustre: kill unused helper
        lustre: kill unused macro (LOOKUP_CONTINUE)
        ...
      052b398a