27 Aug, 2018

1 commit

  • Pull IDA updates from Matthew Wilcox:
    "A better IDA API:

    id = ida_alloc(ida, GFP_xxx);
    ida_free(ida, id);

    rather than the cumbersome ida_simple_get(), ida_simple_remove().

    The new IDA API is similar to ida_simple_get() but better named. The
    internal restructuring of the IDA code removes the bitmap
    preallocation nonsense.

    I hope the net -200 lines of code is convincing"

    * 'ida-4.19' of git://git.infradead.org/users/willy/linux-dax: (29 commits)
    ida: Change ida_get_new_above to return the id
    ida: Remove old API
    test_ida: check_ida_destroy and check_ida_alloc
    test_ida: Convert check_ida_conv to new API
    test_ida: Move ida_check_max
    test_ida: Move ida_check_leaf
    idr-test: Convert ida_check_nomem to new API
    ida: Start new test_ida module
    target/iscsi: Allocate session IDs from an IDA
    iscsi target: fix session creation failure handling
    drm/vmwgfx: Convert to new IDA API
    dmaengine: Convert to new IDA API
    ppc: Convert vas ID allocation to new IDA API
    media: Convert entity ID allocation to new IDA API
    ppc: Convert mmu context allocation to new IDA API
    Convert net_namespace to new IDA API
    cb710: Convert to new IDA API
    rsxx: Convert to new IDA API
    osd: Convert to new IDA API
    sd: Convert to new IDA API
    ...

    Linus Torvalds
     

24 Aug, 2018

1 commit

  • The font files contain bit masks for characters in the cp437 character
    set, and comments showing what character this is supposed to be.

    This only makes sense when the terminal used to view the files is set to
    the same codepage, but all other files in the kernel now use utf-8
    encoding.

    This changes those comments to utf-8 as well, for consistency.

    Link: http://lkml.kernel.org/r/20180724111600.4158975-3-arnd@arndb.de
    Signed-off-by: Arnd Bergmann
    Cc: Greg Kroah-Hartman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arnd Bergmann
     

23 Aug, 2018

7 commits

  • rhashtable_init() may fail due to -ENOMEM, thus making the entire api
    unusable. This patch removes this scenario, however unlikely. In order
    to guarantee memory allocation, this patch always ends up doing
    GFP_KERNEL|__GFP_NOFAIL for both the tbl as well as
    alloc_bucket_spinlocks().

    Upon the first table allocation failure, we shrink the size to the
    smallest value that makes sense and retry with __GFP_NOFAIL semantics.
    With the defaults, this means that from 64 buckets, we retry with only 4.
    Any later issues regarding performance due to collisions or larger table
    resizing (when more memory becomes available) is the least of our
    problems.

    Link: http://lkml.kernel.org/r/20180712185241.4017-9-manfred@colorfullife.com
    Signed-off-by: Davidlohr Bueso
    Signed-off-by: Manfred Spraul
    Acked-by: Herbert Xu
    Cc: Dmitry Vyukov
    Cc: Kees Cook
    Cc: Michael Kerrisk
    Cc: Michal Hocko
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Davidlohr Bueso
     
  • As of ce91f6ee5b3b ("mm: kvmalloc does not fallback to vmalloc for
    incompatible gfp flags") we can simplify the caller and trust kvzalloc()
    to just do the right thing. For the case of the GFP_ATOMIC context, we
    can drop the __GFP_NORETRY flag for obvious reasons, and for the
    __GFP_NOWARN case, however, it is changed such that the caller passes the
    flag instead of making bucket_table_alloc() handle it.

    This slightly changes the gfp flags passed on to nested_table_alloc() as
    it will now also use GFP_ATOMIC | __GFP_NOWARN. However, I consider this
    a positive consequence as for the same reasons we want nowarn semantics in
    bucket_table_alloc().

    [manfred@colorfullife.com: commit id extended to 12 digits, line wraps updated]
    Link: http://lkml.kernel.org/r/20180712185241.4017-8-manfred@colorfullife.com
    Signed-off-by: Davidlohr Bueso
    Signed-off-by: Manfred Spraul
    Acked-by: Michal Hocko
    Cc: Dmitry Vyukov
    Cc: Herbert Xu
    Cc: Kees Cook
    Cc: Michael Kerrisk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Davidlohr Bueso
     
  • On a big endian cpu, test_hexdump fails as follows. The logs show that
    bytes are expected in reversed order.

    [...]
    test_hexdump: Len: 24 buflen: 130 strlen: 97
    test_hexdump: Result: 97 'be32db7b 0a1893b2 70bac424 7d83349b a69c31ad 9c0face9 .2.{....p..$}.4...1.....'
    test_hexdump: Expect: 97 '7bdb32be b293180a 24c4ba70 9b34837d ad319ca6 e9ac0f9c .2.{....p..$}.4...1.....'
    test_hexdump: Len: 8 buflen: 130 strlen: 77
    test_hexdump: Result: 77 'be32db7b0a1893b2 .2.{....'
    test_hexdump: Expect: 77 'b293180a7bdb32be .2.{....'
    test_hexdump: Len: 6 buflen: 131 strlen: 87
    test_hexdump: Result: 87 'be32 db7b 0a18 .2.{..'
    test_hexdump: Expect: 87 '32be 7bdb 180a .2.{..'
    test_hexdump: Len: 24 buflen: 131 strlen: 97
    test_hexdump: Result: 97 'be32db7b 0a1893b2 70bac424 7d83349b a69c31ad 9c0face9 .2.{....p..$}.4...1.....'
    test_hexdump: Expect: 97 '7bdb32be b293180a 24c4ba70 9b34837d ad319ca6 e9ac0f9c .2.{....p..$}.4...1.....'
    test_hexdump: Len: 32 buflen: 131 strlen: 101
    test_hexdump: Result: 101 'be32db7b0a1893b2 70bac4247d83349b a69c31ad9c0face9 4cd1199943b1af0c .2.{....p..$}.4...1.....L...C...'
    test_hexdump: Expect: 101 'b293180a7bdb32be 9b34837d24c4ba70 e9ac0f9cad319ca6 0cafb1439919d14c .2.{....p..$}.4...1.....L...C...'
    test_hexdump: failed 801 out of 1184 tests

    This patch fixes it.

    Link: http://lkml.kernel.org/r/f3112437f62c2f48300535510918e8be1dceacfb.1533610877.git.christophe.leroy@c-s.fr
    Fixes: 64d1d77a44697 ("hexdump: introduce test suite")
    Signed-off-by: Christophe Leroy
    Reviewed-by: Andy Shevchenko
    Cc: Michael Ellerman
    Cc: rashmica
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christophe Leroy
     
  • It seems contributors follow the style of Kconfig entries where explicit
    'default n' is present. The default 'default' is 'n' already, thus, drop
    these lines from Kconfig to make it more clear.

    Link: http://lkml.kernel.org/r/20180719085131.79541-1-andriy.shevchenko@linux.intel.com
    Signed-off-by: Andy Shevchenko
    Acked-by: Coly Li
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     
  • Patch series "add crc64 calculation as kernel library", v5.

    This patchset adds basic implementation of crc64 calculation as a Linux
    kernel library. Since bcache already does crc64 by itself, this patchset
    also modifies bcache code to use the new crc64 library routine.

    Currently bcache is the only user of crc64 calculation, another potential
    user is bcachefs which is on the way to be in mainline kernel. Therefore
    it makes sense to make crc64 calculation to be a public library.

    bcache uses crc64 as storage checksum, if a change of crc lib routines
    results an inconsistent result, the unmatched checksum may make bcache
    'think' the on-disk is corrupted, such a change should be avoided or
    detected as early as possible. Therefore a patch is being prepared which
    adds a crc test framework, to check consistency of different calculations.

    This patch (of 2):

    Add the re-write crc64 calculation routines for Linux kernel. The CRC64
    polynomical arithmetic follows ECMA-182 specification, inspired by CRC
    paper of Dr. Ross N. Williams (see
    http://www.ross.net/crc/download/crc_v3.txt) and other public domain
    implementations.

    All the changes work in this way,
    - When Linux kernel is built, host program lib/gen_crc64table.c will be
    compiled to lib/gen_crc64table and executed.
    - The output of gen_crc64table execution is an array called as lookup
    table (a.k.a POLY 0x42f0e1eba9ea369) which contain 256 64-bit long
    numbers, this table is dumped into header file lib/crc64table.h.
    - Then the header file is included by lib/crc64.c for normal 64bit crc
    calculation.
    - Function declaration of the crc64 calculation routines is placed in
    include/linux/crc64.h

    Currently bcache is the only user of crc64_be(), another potential user is
    bcachefs which is on the way to be in mainline kernel. Therefore it makes
    sense to move crc64 calculation into lib/crc64.c as public code.

    [colyli@suse.de: fix review comments from v4]
    Link: http://lkml.kernel.org/r/20180726053352.2781-2-colyli@suse.de
    Link: http://lkml.kernel.org/r/20180718165545.1622-2-colyli@suse.de
    Signed-off-by: Coly Li
    Co-developed-by: Andy Shevchenko
    Signed-off-by: Andy Shevchenko
    Reviewed-by: Hannes Reinecke
    Cc: Greg Kroah-Hartman
    Cc: Andy Shevchenko
    Cc: Michael Lyle
    Cc: Kent Overstreet
    Cc: Thomas Gleixner
    Cc: Kate Stewart
    Cc: Eric Biggers
    Cc: Randy Dunlap
    Cc: Noah Massey
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Coly Li
     
  • The pointer foo is local to the source and does not need to be
    in global scope, so make it static.

    Cleans up sparse warning:
    symbol 'foo' was not declared. Should it be static?

    Link: http://lkml.kernel.org/r/20180624112206.5722-1-colin.king@canonical.com
    Signed-off-by: Colin Ian King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Colin Ian King
     
  • nbits == 0 is safe to be supplied to the function body, so remove
    unnecessary checks in bitmap_to_arr32() and bitmap_from_arr32().

    Link: http://lkml.kernel.org/r/20180531131914.44352-1-andriy.shevchenko@linux.intel.com
    Signed-off-by: Andy Shevchenko
    Acked-by: Yury Norov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     

22 Aug, 2018

10 commits

  • This calling convention makes more sense for the implementation as well
    as the callers. It even shaves 32 bytes off the compiled code size.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • Delete ida_pre_get(), ida_get_new(), ida_get_new_above() and ida_remove()
    from the public API. Some of these functions still exist as internal
    helpers, but they should not be called by consumers.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • Move these tests from the userspace test-suite to the kernel test-suite.
    Also convert check_ida_random to the new API.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • Move as much as possible to kernel space; leave the parts in user space
    that rely on checking memory allocation failures to detect the
    transition between an exceptional entry and a bitmap.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • Convert to new API and move to kernel space.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • Convert to new API and move to kernel space. Take the opportunity to
    test the situation a little more thoroughly (ie at different offsets).

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • Start transitioning the IDA tests into kernel space. Framework heavily
    cribbed from test_xarray.c.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • Add ida_alloc(), ida_alloc_min(), ida_alloc_max(), ida_alloc_range()
    and ida_free(). The ida_alloc_max() and ida_alloc_range() functions
    differ from ida_simple_get() in that they take an inclusive 'max'
    parameter instead of an exclusive 'end' parameter. Callers are about
    evenly split whether they'd like inclusive or exclusive parameters and
    'max' is easier to document than 'end'.

    Change the IDA allocation to first attempt to allocate a bit using
    existing memory, and only allocate memory afterwards. Also change the
    behaviour of 'min' > INT_MAX from being a BUG() to returning -ENOSPC.

    Leave compatibility wrappers in place for ida_simple_get() and
    ida_simple_remove() to avoid changing all callers.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • The user has no need to handle locking between ida_simple_get() and
    ida_simple_remove(). They shouldn't be forced to think about whether
    ida_destroy() might be called at the same time as any of their other
    IDA manipulation calls. Improve the documnetation while I'm in here.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     
  • get_slot_offset() can be called with a NULL 'parent' argument.
    In this case, the calculated value will not be used, but calculating
    it is undefined. Rather than fixing the caller (__radix_tree_delete)
    to not call get_slot_offset(), make get_slot_offset() robust against
    being called with a NULL parent.

    Signed-off-by: Matthew Wilcox

    Matthew Wilcox
     

20 Aug, 2018

1 commit

  • Pull networking fixes from David Miller:

    1) Fix races in IPVS, from Tan Hu.

    2) Missing unbind in matchall classifier, from Hangbin Liu.

    3) Missing act_ife action release, from Vlad Buslov.

    4) Cure lockdep splats in ila, from Cong Wang.

    5) veth queue leak on link delete, from Toshiaki Makita.

    6) Disable isdn's IIOCDBGVAR ioctl, it exposes kernel addresses. From
    Kees Cook.

    7) RCU usage fixup in XDP, from Tariq Toukan.

    8) Two TCP ULP fixes from Daniel Borkmann.

    9) r8169 needs REALTEK_PHY as a Kconfig dependency, from Heiner
    Kallweit.

    10) Always take tcf_lock with BH disabled, otherwise we can deadlock
    with rate estimator code paths. From Vlad Buslov.

    11) Don't use MSI-X on RTL8106e r8169 chips, they don't resume properly.
    From Jian-Hong Pan.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (41 commits)
    ip6_vti: fix creating fallback tunnel device for vti6
    ip_vti: fix a null pointer deferrence when create vti fallback tunnel
    r8169: don't use MSI-X on RTL8106e
    net: lan743x_ptp: convert to ktime_get_clocktai_ts64
    net: sched: always disable bh when taking tcf_lock
    ip6_vti: simplify stats handling in vti6_xmit
    bpf: fix redirect to map under tail calls
    r8169: add missing Kconfig dependency
    tools/bpf: fix bpf selftest test_cgroup_storage failure
    bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist
    bpf, sockmap: fix map elem deletion race with smap_stop_sock
    bpf, sockmap: fix leakage of smap_psock_map_entry
    tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach
    tcp, ulp: add alias for all ulp modules
    bpf: fix a rcu usage warning in bpf_prog_array_copy_core()
    samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM
    net/xdp: Fix suspicious RCU usage warning
    net/mlx5e: Delete unneeded function argument
    Documentation: networking: ti-cpsw: correct cbs parameters for Eth1 100Mb
    isdn: Disable IIOCDBGVAR
    ...

    Linus Torvalds
     

19 Aug, 2018

4 commits

  • Pull input updates from Dmitry Torokhov:

    - a new driver for Rohm BU21029 touch controller

    - new bitmap APIs: bitmap_alloc, bitmap_zalloc and bitmap_free

    - updates to Atmel, eeti. pxrc and iforce drivers

    - assorted driver cleanups and fixes.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (57 commits)
    MAINTAINERS: Add PhoenixRC Flight Controller Adapter
    Input: do not use WARN() in input_alloc_absinfo()
    Input: mark expected switch fall-throughs
    Input: raydium_i2c_ts - use true and false for boolean values
    Input: evdev - switch to bitmap API
    Input: gpio-keys - switch to bitmap_zalloc()
    Input: elan_i2c_smbus - cast sizeof to int for comparison
    bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free()
    md: Avoid namespace collision with bitmap API
    dm: Avoid namespace collision with bitmap API
    Input: pm8941-pwrkey - add resin entry
    Input: pm8941-pwrkey - abstract register offsets and event code
    Input: iforce - reorganize joystick configuration lists
    Input: atmel_mxt_ts - move completion to after config crc is updated
    Input: atmel_mxt_ts - don't report zero pressure from T9
    Input: atmel_mxt_ts - zero terminate config firmware file
    Input: atmel_mxt_ts - refactor config update code to add context struct
    Input: atmel_mxt_ts - config CRC may start at T71
    Input: atmel_mxt_ts - remove unnecessary debug on ENOMEM
    Input: atmel_mxt_ts - remove duplicate setup of ABS_MT_PRESSURE
    ...

    Linus Torvalds
     
  • We haven't had lots of deprecation warnings lately, but the rdma use of
    it made them flare up again.

    They are not useful. They annoy everybody, and nobody ever does
    anything about them, because it's always "somebody elses problem". And
    when people start thinking that warnings are normal, they stop looking
    at them, and the real warnings that mean something go unnoticed.

    If you want to get rid of a function, just get rid of it. Convert every
    user to the new world order.

    And if you can't do that, then don't annoy everybody else with your
    marking that says "I couldn't be bothered to fix this, so I'll just spam
    everybody elses build logs with warnings about my laziness".

    Make a kernelnewbies wiki page about things that could be cleaned up,
    write a blog post about it, or talk to people on the mailing lists. But
    don't add warnings to the kernel build about cleanup that you think
    should happen but you aren't doing yourself.

    Don't. Just don't.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Pull driver core updates from Greg KH:
    "Here are all of the driver core and related patches for 4.19-rc1.

    Nothing huge here, just a number of small cleanups and the ability to
    now stop the deferred probing after init happens.

    All of these have been in linux-next for a while with only a merge
    issue reported"

    * tag 'driver-core-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (21 commits)
    base: core: Remove WARN_ON from link dependencies check
    drivers/base: stop new probing during shutdown
    drivers: core: Remove glue dirs from sysfs earlier
    driver core: remove unnecessary function extern declare
    sysfs.h: fix non-kernel-doc comment
    PM / Domains: Stop deferring probe at the end of initcall
    iommu: Remove IOMMU_OF_DECLARE
    iommu: Stop deferring probe at end of initcalls
    pinctrl: Support stopping deferred probe after initcalls
    dt-bindings: pinctrl: add a 'pinctrl-use-default' property
    driver core: allow stopping deferred probe after init
    driver core: add a debugfs entry to show deferred devices
    sysfs: Fix internal_create_group() for named group updates
    base: fix order of OF initialization
    linux/device.h: fix kernel-doc notation warning
    Documentation: update firmware loader fallback reference
    kobject: Replace strncpy with memcpy
    drivers: base: cacheinfo: use OF property_read_u32 instead of get_property,read_number
    kernfs: Replace strncpy with memcpy
    device: Add #define dev_fmt similar to #define pr_fmt
    ...

    Linus Torvalds
     
  • Pull char/misc driver updates from Greg KH:
    "Here is the bit set of char/misc drivers for 4.19-rc1

    There is a lot here, much more than normal, seems like everyone is
    writing new driver subsystems these days... Anyway, major things here
    are:

    - new FSI driver subsystem, yet-another-powerpc low-level hardware
    bus

    - gnss, finally an in-kernel GPS subsystem to try to tame all of the
    crazy out-of-tree drivers that have been floating around for years,
    combined with some really hacky userspace implementations. This is
    only for GNSS receivers, but you have to start somewhere, and this
    is great to see.

    Other than that, there are new slimbus drivers, new coresight drivers,
    new fpga drivers, and loads of DT bindings for all of these and
    existing drivers.

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'char-misc-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (255 commits)
    android: binder: Rate-limit debug and userspace triggered err msgs
    fsi: sbefifo: Bump max command length
    fsi: scom: Fix NULL dereference
    misc: mic: SCIF Fix scif_get_new_port() error handling
    misc: cxl: changed asterisk position
    genwqe: card_base: Use true and false for boolean values
    misc: eeprom: assignment outside the if statement
    uio: potential double frees if __uio_register_device() fails
    eeprom: idt_89hpesx: clean up an error pointer vs NULL inconsistency
    misc: ti-st: Fix memory leak in the error path of probe()
    android: binder: Show extra_buffers_size in trace
    firmware: vpd: Fix section enabled flag on vpd_section_destroy
    platform: goldfish: Retire pdev_bus
    goldfish: Use dedicated macros instead of manual bit shifting
    goldfish: Add missing includes to goldfish.h
    mux: adgs1408: new driver for Analog Devices ADGS1408/1409 mux
    dt-bindings: mux: add adi,adgs1408
    Drivers: hv: vmbus: Cleanup synic memory free path
    Drivers: hv: vmbus: Remove use of slow_virt_to_phys()
    Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind()
    ...

    Linus Torvalds
     

17 Aug, 2018

3 commits

  • rdma.git merge resolution for the 4.19 merge window

    Conflicts:
    drivers/infiniband/core/rdma_core.c
    - Use the rdma code and revise with the new spelling for
    atomic_fetch_add_unless
    drivers/nvme/host/rdma.c
    - Replace max_sge with max_send_sge in new blk code
    drivers/nvme/target/rdma.c
    - Use the blk code and revise to use NULL for ib_post_recv when
    appropriate
    - Replace max_sge with max_recv_sge in new blk code
    net/rds/ib_send.c
    - Use the net code and revise to use NULL for ib_post_recv when
    appropriate

    Signed-off-by: Jason Gunthorpe

    Jason Gunthorpe
     
  • Previously, alloc_ila_locks() and bucket_table_alloc() call
    spin_lock_init() separately, therefore they have two different
    lock names and lock class keys. However, after commit b893281715ab
    ("ila: Call library function alloc_bucket_locks") they both call
    helper alloc_bucket_spinlocks() which now only has one lock
    name and lock class key. This causes a few bogus lockdep warnings
    as reported by syzbot.

    Fix this by making alloc_bucket_locks() a macro and pass declaration
    name as lock name and a static lock class key inside the macro.

    Fixes: b893281715ab ("ila: Call library function alloc_bucket_locks")
    Reported-by:
    Cc: Tom Herbert
    Signed-off-by: Cong Wang
    Signed-off-by: David S. Miller

    Cong Wang
     
  • Resolve merge conflicts from the -rc cycle against the rdma.git tree:

    Conflicts:
    drivers/infiniband/core/uverbs_cmd.c
    - New ifs added to ib_uverbs_ex_create_flow in -rc and for-next
    - Merge removal of file->ucontext in for-next with new code in -rc
    drivers/infiniband/core/uverbs_main.c
    - for-next removed code from ib_uverbs_write() that was modified
    in for-rc

    Signed-off-by: Jason Gunthorpe

    Jason Gunthorpe
     

16 Aug, 2018

7 commits

  • Pull SCSI updates from James Bottomley:
    "This is mostly updates to the usual drivers: mpt3sas, lpfc, qla2xxx,
    hisi_sas, smartpqi, megaraid_sas, arcmsr.

    In addition, with the continuing absence of Nic we have target updates
    for tcmu and target core (all with reviews and acks).

    The biggest observable change is going to be that we're (again) trying
    to switch to mulitqueue as the default (a user can still override the
    setting on the kernel command line).

    Other major core stuff is the removal of the remaining Microchannel
    drivers, an update of the internal timers and some reworks of
    completion and result handling"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (203 commits)
    scsi: core: use blk_mq_run_hw_queues in scsi_kick_queue
    scsi: ufs: remove unnecessary query(DM) UPIU trace
    scsi: qla2xxx: Fix issue reported by static checker for qla2x00_els_dcmd2_sp_done()
    scsi: aacraid: Spelling fix in comment
    scsi: mpt3sas: Fix calltrace observed while running IO & reset
    scsi: aic94xx: fix an error code in aic94xx_init()
    scsi: st: remove redundant pointer STbuffer
    scsi: qla2xxx: Update driver version to 10.00.00.08-k
    scsi: qla2xxx: Migrate NVME N2N handling into state machine
    scsi: qla2xxx: Save frame payload size from ICB
    scsi: qla2xxx: Fix stalled relogin
    scsi: qla2xxx: Fix race between switch cmd completion and timeout
    scsi: qla2xxx: Fix Management Server NPort handle reservation logic
    scsi: qla2xxx: Flush mailbox commands on chip reset
    scsi: qla2xxx: Fix unintended Logout
    scsi: qla2xxx: Fix session state stuck in Get Port DB
    scsi: qla2xxx: Fix redundant fc_rport registration
    scsi: qla2xxx: Silent erroneous message
    scsi: qla2xxx: Prevent sysfs access when chip is down
    scsi: qla2xxx: Add longer window for chip reset
    ...

    Linus Torvalds
     
  • Pull random updates from Ted Ts'o:
    "Some changes to trust cpu-based hwrng (such as RDRAND) for
    initializing hashed pointers and (optionally, controlled by a config
    option) to initialize the CRNG to avoid boot hangs"

    * tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random:
    random: Make crng state queryable
    random: remove preempt disabled region
    random: add a config option to trust the CPU's hwrng
    vsprintf: Add command line option debug_boot_weak_hash
    vsprintf: Use hw RNG for ptr_key
    random: Return nbytes filled from hw RNG
    random: Fix whitespace pre random-bytes work

    Linus Torvalds
     
  • Pull drm updates from Dave Airlie:
    "This is the main drm pull request for 4.19.

    Rob has some new hardware support for new qualcomm hw that I'll send
    along separately. This has the display part of it, the remaining pull
    is for the acceleration engine.

    This also contains a wound-wait/wait-die mutex rework, Peter has acked
    it for merging via my tree.

    Otherwise mostly the usual level of activity. Summary:

    core:
    - Wound-wait/wait-die mutex rework
    - Add writeback connector type
    - Add "content type" property for HDMI
    - Move GEM bo to drm_framebuffer
    - Initial gpu scheduler documentation
    - GPU scheduler fixes for dying processes
    - Console deferred fbcon takeover support
    - Displayport support for CEC tunneling over AUX

    panel:
    - otm8009a panel driver fixes
    - Innolux TV123WAM and G070Y2-L01 panel driver
    - Ilitek ILI9881c panel driver
    - Rocktech RK070ER9427 LCD
    - EDT ETM0700G0EDH6 and EDT ETM0700G0BDH6
    - DLC DLC0700YZG-1
    - BOE HV070WSA-100
    - newhaven, nhd-4.3-480272ef-atxl LCD
    - DataImage SCF0700C48GGU18
    - Sharp LQ035Q7DB03
    - p079zca: Refactor to support multiple panels

    tinydrm:
    - ILI9341 display panel

    New driver:
    - vkms - virtual kms driver to testing.

    i915:
    - Icelake:
    Display enablement
    DSI support
    IRQ support
    Powerwell support
    - GPU reset fixes and improvements
    - Full ppgtt support refactoring
    - PSR fixes and improvements
    - Execlist improvments
    - GuC related fixes

    amdgpu:
    - Initial amdgpu documentation
    - JPEG engine support on VCN
    - CIK uses powerplay by default
    - Move to using core PCIE functionality for gens/lanes
    - DC/Powerplay interface rework
    - Stutter mode support for RV
    - Vega12 Powerplay updates
    - GFXOFF fixes
    - GPUVM fault debugging
    - Vega12 GFXOFF
    - DC improvements
    - DC i2c/aux changes
    - UVD 7.2 fixes
    - Powerplay fixes for Polaris12, CZ/ST
    - command submission bo_list fixes

    amdkfd:
    - Raven support
    - Power management fixes

    udl:
    - Cleanups and fixes

    nouveau:
    - misc fixes and cleanups.

    msm:
    - DPU1 support display controller in sdm845
    - GPU coredump support.

    vmwgfx:
    - Atomic modesetting validation fixes
    - Support for multisample surfaces

    armada:
    - Atomic modesetting support completed.

    exynos:
    - IPPv2 fixes
    - Move g2d to component framework
    - Suspend/resume support cleanups
    - Driver cleanups

    imx:
    - CSI configuration improvements
    - Driver cleanups
    - Use atomic suspend/resume helpers
    - ipu-v3 V4L2 XRGB32/XBGR32 support

    pl111:
    - Add Nomadik LCDC variant

    v3d:
    - GPU scheduler jobs management

    sun4i:
    - R40 display engine support
    - TCON TOP driver

    mediatek:
    - MT2712 SoC support

    rockchip:
    - vop fixes

    omapdrm:
    - Workaround for DRA7 errata i932
    - Fix mm_list locking

    mali-dp:
    - Writeback implementation
    PM improvements
    - Internal error reporting debugfs

    tilcdc:
    - Single fix for deferred probing

    hdlcd:
    - Teardown fixes

    tda998x:
    - Converted to a bridge driver.

    etnaviv:
    - Misc fixes"

    * tag 'drm-next-2018-08-15' of git://anongit.freedesktop.org/drm/drm: (1506 commits)
    drm/amdgpu/sriov: give 8s for recover vram under RUNTIME
    drm/scheduler: fix param documentation
    drm/i2c: tda998x: correct PLL divider calculation
    drm/i2c: tda998x: get rid of private fill_modes function
    drm/i2c: tda998x: move mode_valid() to bridge
    drm/i2c: tda998x: register bridge outside of component helper
    drm/i2c: tda998x: cleanup from previous changes
    drm/i2c: tda998x: allocate tda998x_priv inside tda998x_create()
    drm/i2c: tda998x: convert to bridge driver
    drm/scheduler: fix timeout worker setup for out of order job completions
    drm/amd/display: display connected to dp-1 does not light up
    drm/amd/display: update clk for various HDMI color depths
    drm/amd/display: program display clock on cache match
    drm/amd/display: Add NULL check for enabling dp ss
    drm/amd/display: add vbios table check for enabling dp ss
    drm/amd/display: Don't share clk source between DP and HDMI
    drm/amd/display: Fix DP HBR2 Eye Diagram Pattern on Carrizo
    drm/amd/display: Use calculated disp_clk_khz value for dce110
    drm/amd/display: Implement custom degamma lut on dcn
    drm/amd/display: Destroy aux_engines only once
    ...

    Linus Torvalds
     
  • Pull crypto updates from Herbert Xu:
    "API:
    - Fix dcache flushing crash in skcipher.
    - Add hash finup self-tests.
    - Reschedule during speed tests.

    Algorithms:
    - Remove insecure vmac and replace it with vmac64.
    - Add public key verification for DH/ECDH.

    Drivers:
    - Decrease priority of sha-mb on x86.
    - Improve NEON latency/throughput on ARM64.
    - Add md5/sha384/sha512/des/3des to inside-secure.
    - Support eip197d in inside-secure.
    - Only register algorithms supported by the host in virtio.
    - Add cts and remove incompatible cts1 from ccree.
    - Add hisilicon SEC security accelerator driver.
    - Replace msm hwrng driver with qcom pseudo rng driver.

    Misc:
    - Centralize CRC polynomials"

    * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (121 commits)
    crypto: arm64/ghash-ce - implement 4-way aggregation
    crypto: arm64/ghash-ce - replace NEON yield check with block limit
    crypto: hisilicon - sec_send_request() can be static
    lib/mpi: remove redundant variable esign
    crypto: arm64/aes-ce-gcm - don't reload key schedule if avoidable
    crypto: arm64/aes-ce-gcm - implement 2-way aggregation
    crypto: arm64/aes-ce-gcm - operate on two input blocks at a time
    crypto: dh - make crypto_dh_encode_key() make robust
    crypto: dh - fix calculating encoded key size
    crypto: ccp - Check for NULL PSP pointer at module unload
    crypto: arm/chacha20 - always use vrev for 16-bit rotates
    crypto: ccree - allow bigger than sector XTS op
    crypto: ccree - zero all of request ctx before use
    crypto: ccree - remove cipher ivgen left overs
    crypto: ccree - drop useless type flag during reg
    crypto: ablkcipher - fix crash flushing dcache in error path
    crypto: blkcipher - fix crash flushing dcache in error path
    crypto: skcipher - fix crash flushing dcache in error path
    crypto: skcipher - remove unnecessary setting of walk->nbytes
    crypto: scatterwalk - remove scatterwalk_samebuf()
    ...

    Linus Torvalds
     
  • Pull networking updates from David Miller:
    "Highlights:

    - Gustavo A. R. Silva keeps working on the implicit switch fallthru
    changes.

    - Support 802.11ax High-Efficiency wireless in cfg80211 et al, From
    Luca Coelho.

    - Re-enable ASPM in r8169, from Kai-Heng Feng.

    - Add virtual XFRM interfaces, which avoids all of the limitations of
    existing IPSEC tunnels. From Steffen Klassert.

    - Convert GRO over to use a hash table, so that when we have many
    flows active we don't traverse a long list during accumluation.

    - Many new self tests for routing, TC, tunnels, etc. Too many
    contributors to mention them all, but I'm really happy to keep
    seeing this stuff.

    - Hardware timestamping support for dpaa_eth/fsl-fman from Yangbo Lu.

    - Lots of cleanups and fixes in L2TP code from Guillaume Nault.

    - Add IPSEC offload support to netdevsim, from Shannon Nelson.

    - Add support for slotting with non-uniform distribution to netem
    packet scheduler, from Yousuk Seung.

    - Add UDP GSO support to mlx5e, from Boris Pismenny.

    - Support offloading of Team LAG in NFP, from John Hurley.

    - Allow to configure TX queue selection based upon RX queue, from
    Amritha Nambiar.

    - Support ethtool ring size configuration in aquantia, from Anton
    Mikaev.

    - Support DSCP and flowlabel per-transport in SCTP, from Xin Long.

    - Support list based batching and stack traversal of SKBs, this is
    very exciting work. From Edward Cree.

    - Busyloop optimizations in vhost_net, from Toshiaki Makita.

    - Introduce the ETF qdisc, which allows time based transmissions. IGB
    can offload this in hardware. From Vinicius Costa Gomes.

    - Add parameter support to devlink, from Moshe Shemesh.

    - Several multiplication and division optimizations for BPF JIT in
    nfp driver, from Jiong Wang.

    - Lots of prepatory work to make more of the packet scheduler layer
    lockless, when possible, from Vlad Buslov.

    - Add ACK filter and NAT awareness to sch_cake packet scheduler, from
    Toke Høiland-Jørgensen.

    - Support regions and region snapshots in devlink, from Alex Vesker.

    - Allow to attach XDP programs to both HW and SW at the same time on
    a given device, with initial support in nfp. From Jakub Kicinski.

    - Add TLS RX offload and support in mlx5, from Ilya Lesokhin.

    - Use PHYLIB in r8169 driver, from Heiner Kallweit.

    - All sorts of changes to support Spectrum 2 in mlxsw driver, from
    Ido Schimmel.

    - PTP support in mv88e6xxx DSA driver, from Andrew Lunn.

    - Make TCP_USER_TIMEOUT socket option more accurate, from Jon
    Maxwell.

    - Support for templates in packet scheduler classifier, from Jiri
    Pirko.

    - IPV6 support in RDS, from Ka-Cheong Poon.

    - Native tproxy support in nf_tables, from Máté Eckl.

    - Maintain IP fragment queue in an rbtree, but optimize properly for
    in-order frags. From Peter Oskolkov.

    - Improvde handling of ACKs on hole repairs, from Yuchung Cheng"

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1996 commits)
    bpf: test: fix spelling mistake "REUSEEPORT" -> "REUSEPORT"
    hv/netvsc: Fix NULL dereference at single queue mode fallback
    net: filter: mark expected switch fall-through
    xen-netfront: fix warn message as irq device name has '/'
    cxgb4: Add new T5 PCI device ids 0x50af and 0x50b0
    net: dsa: mv88e6xxx: missing unlock on error path
    rds: fix building with IPV6=m
    inet/connection_sock: prefer _THIS_IP_ to current_text_addr
    net: dsa: mv88e6xxx: bitwise vs logical bug
    net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd()
    ieee802154: hwsim: using right kind of iteration
    net: hns3: Add vlan filter setting by ethtool command -K
    net: hns3: Set tx ring' tc info when netdev is up
    net: hns3: Remove tx ring BD len register in hns3_enet
    net: hns3: Fix desc num set to default when setting channel
    net: hns3: Fix for phy link issue when using marvell phy driver
    net: hns3: Fix for information of phydev lost problem when down/up
    net: hns3: Fix for command format parsing error in hclge_is_all_function_id_zero
    net: hns3: Add support for serdes loopback selftest
    bnxt_en: take coredump_record structure off stack
    ...

    Linus Torvalds
     
  • Pull Kconfig consolidation from Masahiro Yamada:
    "Consolidation of Kconfig files by Christoph Hellwig.

    Move the source statements of arch-independent Kconfig files instead
    of duplicating the includes in every arch/$(SRCARCH)/Kconfig"

    * tag 'kconfig-v4.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kconfig: add a Memory Management options" menu
    kconfig: move the "Executable file formats" menu to fs/Kconfig.binfmt
    kconfig: use a menu in arch/Kconfig to reduce clutter
    kconfig: include kernel/Kconfig.preempt from init/Kconfig
    Kconfig: consolidate the "Kernel hacking" menu
    kconfig: include common Kconfig files from top-level Kconfig
    kconfig: remove duplicate SWAP symbol defintions
    um: create a proper drivers Kconfig
    um: cleanup Kconfig files
    um: stop abusing KBUILD_KCONFIG

    Linus Torvalds
     
  • Pull printk updates from Petr Mladek:

    - Different vendors have a different expectation about a console
    quietness. Make it configurable to reduce bike-shedding about the
    upstream default

    - Decide about the message visibility when the message is stored. It
    avoids races caused by a delayed console handling

    - Always store printk() messages into the per-CPU buffers again in NMI.
    The only exception is when flushing trace log in panic(). There the
    risk of loosing messages is worth an eventual reordering

    - Handle invalid %pO printf modifiers correctly

    - Better handle %p printf modifier tests before crng is initialized

    - Some clean up

    * tag 'printk-for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk:
    lib/vsprintf: Do not handle %pO[^F] as %px
    printk: Fix warning about unused suppress_message_printing
    printk/nmi: Prevent deadlock when accessing the main log buffer in NMI
    printk: Create helper function to queue deferred console handling
    printk: Split the code for storing a message into the log buffer
    printk: Clean up syslog_print_all()
    printk: Remove unnecessary kmalloc() from syslog during clear
    printk: Make CONSOLE_LOGLEVEL_QUIET configurable
    printk: make sure to print log on console.
    lib/test_printf.c: accept "ptrval" as valid result for plain 'p' tests

    Linus Torvalds
     

15 Aug, 2018

2 commits

  • Pull documentation update from Jonathan Corbet:
    "This was a moderately busy cycle for docs, with the usual collection
    of small fixes and updates.

    We also have new ktime_get_*() docs from Arnd, some kernel-doc fixes,
    a new set of Italian translations (non so se vale la pena, ma non fa
    male - speriamo bene), and some extensive early memory-management
    documentation improvements from Mike Rapoport"

    * tag 'docs-4.19' of git://git.lwn.net/linux: (52 commits)
    Documentation: corrections to console/console.txt
    Documentation: add ioctl number entry for v4l2-subdev.h
    Remove gendered language from management style documentation
    scripts/kernel-doc: Escape all literal braces in regexes
    docs/mm: add description of boot time memory management
    docs/mm: memblock: add overview documentation
    docs/mm: memblock: add kernel-doc description for memblock types
    docs/mm: memblock: add kernel-doc comments for memblock_add[_node]
    docs/mm: memblock: update kernel-doc comments
    mm/memblock: add a name for memblock flags enumeration
    docs/mm: bootmem: add overview documentation
    docs/mm: bootmem: add kernel-doc description of 'struct bootmem_data'
    docs/mm: bootmem: fix kernel-doc warnings
    docs/mm: nobootmem: fixup kernel-doc comments
    mm/bootmem: drop duplicated kernel-doc comments
    Documentation: vm.txt: Adding 'nr_hugepages_mempolicy' parameter description.
    doc:it_IT: translation for kernel-hacking
    docs: Fix the reference labels in Locking.rst
    doc: tracing: Fix a typo of trace_stat
    mm: Introduce new type vm_fault_t
    ...

    Linus Torvalds
     
  • Pull mtd updates from Boris Brezillon:
    "JFFS2 changes:
    - Support 64-bit timestamps

    MTD core changes:
    - Support sub-partitions
    - Clarify mtd_oob_ops documentation
    - Make Kconfig formatting consistent
    - Fix potential overflows in mtdchar_{write,read}()
    - Fallback to ->_{read,write}() when ->_{read,write}_oob() is missing
    and no OOB data were requested
    - Remove VLA usage in the bch lib

    MTD driver changes:
    - Use mtd_device_register() instead of mtd_device_parse_register()
    where applicable
    - Use proper printk format to print physical addresses in the
    solutionengine driver
    - Add missing mtd_set_of_node() call in the powernv driver
    - Remove unneeded variables in a few drivers
    - Plug the TRX part parser to the DT partition parsers logic
    - Check ioremap_cache() return code in the gpio-addr-flash driver
    - Stop using VMLINUX_SYMBOL_STR() in gen_probe.c

    SPI NOR core changes:
    - Apply reset hacks only when reset is explicitly marked as broken in
    the DT

    SPI NOR driver changes:
    - Minor cleanup/fixes in the m25p80 driver
    - Release flash_np in the nxp-spifi driver
    - Add suspend/resume hooks to the atmel-quadspi driver
    - Include gpio/consumer.h instead of gpio.h in the atmel-quadspi
    driver
    - Use %pK instead of %p in the stm32-quadspi driver
    - Improve timeout handling in the cadence-quadspi driver
    - Use mtd_device_register() instead of mtd_device_parse_register() in
    the intel-spi driver

    NAND core changes:
    - Add the SPI-NAND framework.
    - Create a helper to find the best ECC configuration.
    - Create NAND controller operations.
    - Allocate dynamically ONFI parameters structure.
    - Add defines for ONFI version bits.
    - Add manufacturer fixup for ONFI parameter page.
    - Add an option to specify NAND chip as a boot device.
    - Add Reed-Solomon error correction algorithm.
    - Better name for the controller structure.
    - Remove unused caller_is_module() definition.
    - Make subop helpers return unsigned values.
    - Expose _notsupp() helpers for raw page accessors.
    - Add default values for dynamic timings.
    - Kill the chip->scan_bbt() hook.
    - Rename nand_default_bbt() into nand_create_bbt().
    - Start to clean the nand_chip structure.
    - Remove stale prototype from rawnand.h.

    Raw NAND controllers drivers changes:
    - Qcom: structuring cleanup.
    - Denali: use core helper to find the best ECC configuration.
    - Possible build of almost all drivers by adding a dependency on
    COMPILE_TEST for almost all of them in Kconfig, implies various
    fixes, Kconfig cleanup, GPIO headers inclusion cleanup, and even
    changes in sparc64 and ia64 architectures.
    - Clean the ->probe() functions error path of a lot of drivers.
    - Migrate all drivers to use nand_scan() instead of
    nand_scan_ident()/nand_scan_tail() pair.
    - Use mtd_device_register() where applicable to simplify the code.
    - Marvell:
    * Handle on-die ECC.
    * Better clocks handling.
    * Remove bogus comment.
    * Add suspend and resume support.
    - Tegra: add NAND controller driver.
    - Atmel:
    * Add module param to avoid using dma.
    * Drop Wenyou Yang from MAINTAINERS.
    - Denali: optimize timings handling.
    - FSMC: Stop using chip->read_buf().
    - FSL:
    * Switch to SPDX license tag identifiers.
    * Fix qualifiers in MXC init functions.

    Raw NAND chip drivers changes:
    - Micron:
    * Add fixup for ONFI revision.
    * Update ecc_stats.corrected.
    * Make ECC activation stateful.
    * Avoid enabling/disabling ECC when it can't be disabled.
    * Get the actual number of bitflips.
    * Allow forced on-die ECC.
    * Support 8/512 on-die ECC.
    * Fix on-die ECC detection logic.
    - Hynix:
    * Fix decoding the OOB size on H27UCG8T2BTR.
    * Use ->exec_op() in hynix_nand_reg_write_op()"

    * tag 'mtd/for-4.19' of git://git.infradead.org/linux-mtd: (188 commits)
    mtd: rawnand: atmel: Select GENERIC_ALLOCATOR
    MAINTAINERS: drop Wenyou Yang from Atmel NAND driver support
    mtd: rawnand: allocate dynamically ONFI parameters during detection
    mtd: spi-nor: only apply reset hacks to broken hardware
    mtd: spi-nor: cadence-quadspi: fix timeout handling
    mtd: spi-nor: atmel-quadspi: Include gpio/consumer.h instead of gpio.h
    mtd: spi-nor: intel-spi: use mtd_device_register()
    mtd: spi-nor: stm32-quadspi: replace "%p" with "%pK"
    mtd: spi-nor: atmel-quadspi: add suspend/resume hooks
    mtd: rawnand: allocate model parameter dynamically
    mtd: rawnand: do not export nand_scan_[ident|tail]() anymore
    mtd: rawnand: txx9ndfmc: convert driver to nand_scan()
    mtd: rawnand: txx9ndfmc: clarify ECC parameters assignation
    mtd: rawnand: tegra: convert driver to nand_scan()
    mtd: rawnand: jz4740: convert driver to nand_scan()
    mtd: rawnand: jz4740: group nand_scan_{ident, tail} calls
    mtd: rawnand: jz4740: fix probe function error path
    mtd: rawnand: docg4: convert driver to nand_scan()
    mtd: rawnand: do not execute nand_scan_ident() if maxchips is zero
    mtd: rawnand: atmel: convert driver to nand_scan()
    ...

    Linus Torvalds
     

14 Aug, 2018

4 commits

  • Petr Mladek
     
  • Pull s390 updates from Heiko Carstens:
    "Since Martin is on vacation you get the s390 pull request from me:

    - Host large page support for KVM guests. As the patches have large
    impact on arch/s390/mm/ this series goes out via both the KVM and
    the s390 tree.

    - Add an option for no compression to the "Kernel compression mode"
    menu, this will come in handy with the rework of the early boot
    code.

    - A large rework of the early boot code that will make life easier
    for KASAN and KASLR. With the rework the bootable uncompressed
    image is not generated anymore, only the bzImage is available. For
    debuggung purposes the new "no compression" option is used.

    - Re-enable the gcc plugins as the issue with the latent entropy
    plugin is solved with the early boot code rework.

    - More spectre relates changes:
    + Detect the etoken facility and remove expolines automatically.
    + Add expolines to a few more indirect branches.

    - A rewrite of the common I/O layer trace points to make them
    consumable by 'perf stat'.

    - Add support for format-3 PCI function measurement blocks.

    - Changes for the zcrypt driver:
    + Add attributes to indicate the load of cards and queues.
    + Restructure some code for the upcoming AP device support in KVM.

    - Build flags improvements in various Makefiles.

    - A few fixes for the kdump support.

    - A couple of patches for gcc 8 compile warning cleanup.

    - Cleanup s390 specific proc handlers.

    - Add s390 support to the restartable sequence self tests.

    - Some PTR_RET vs PTR_ERR_OR_ZERO cleanup.

    - Lots of bug fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (107 commits)
    s390/dasd: fix hanging offline processing due to canceled worker
    s390/dasd: fix panic for failed online processing
    s390/mm: fix addressing exception after suspend/resume
    rseq/selftests: add s390 support
    s390: fix br_r1_trampoline for machines without exrl
    s390/lib: use expoline for all bcr instructions
    s390/numa: move initial setup of node_to_cpumask_map
    s390/kdump: Fix elfcorehdr size calculation
    s390/cpum_sf: save TOD clock base in SDBs for time conversion
    KVM: s390: Add huge page enablement control
    s390/mm: Add huge page gmap linking support
    s390/mm: hugetlb pages within a gmap can not be freed
    KVM: s390: Add skey emulation fault handling
    s390/mm: Add huge pmd storage key handling
    s390/mm: Clear skeys for newly mapped huge guest pmds
    s390/mm: Clear huge page storage keys on enable_skey
    s390/mm: Add huge page dirty sync support
    s390/mm: Add gmap pmd invalidation and clearing
    s390/mm: Add gmap pmd notification bit setting
    s390/mm: Add gmap pmd linking
    ...

    Linus Torvalds
     
  • Pull x86 mm updates from Thomas Gleixner:

    - Make lazy TLB mode even lazier to avoid pointless switch_mm()
    operations, which reduces CPU load by 1-2% for memcache workloads

    - Small cleanups and improvements all over the place

    * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/mm: Remove redundant check for kmem_cache_create()
    arm/asm/tlb.h: Fix build error implicit func declaration
    x86/mm/tlb: Make clear_asid_other() static
    x86/mm/tlb: Skip atomic operations for 'init_mm' in switch_mm_irqs_off()
    x86/mm/tlb: Always use lazy TLB mode
    x86/mm/tlb: Only send page table free TLB flush to lazy TLB CPUs
    x86/mm/tlb: Make lazy TLB mode lazier
    x86/mm/tlb: Restructure switch_mm_irqs_off()
    x86/mm/tlb: Leave lazy TLB mode at page table free time
    mm: Allocate the mm_cpumask (mm->cpu_bitmap[]) dynamically based on nr_cpu_ids
    x86/mm: Add TLB purge to free pmd/pte page interfaces
    ioremap: Update pgtable free interfaces with addr
    x86/mm: Disable ioremap free page handling on x86-PAE

    Linus Torvalds
     
  • Pull perf update from Thomas Gleixner:
    "The perf crowd presents:

    Kernel updates:

    - Removal of jprobes

    - Cleanup and consolidatation the handling of kprobes

    - Cleanup and consolidation of hardware breakpoints

    - The usual pile of fixes and updates to PMUs and event descriptors

    Tooling updates:

    - Updates and improvements all over the place. Nothing outstanding,
    just the (good) boring incremental grump work"

    * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (103 commits)
    perf trace: Do not require --no-syscalls to suppress strace like output
    perf bpf: Include uapi/linux/bpf.h from the 'perf trace' script's bpf.h
    perf tools: Allow overriding MAX_NR_CPUS at compile time
    perf bpf: Show better message when failing to load an object
    perf list: Unify metric group description format with PMU event description
    perf vendor events arm64: Update ThunderX2 implementation defined pmu core events
    perf cs-etm: Generate branch sample for CS_ETM_TRACE_ON packet
    perf cs-etm: Generate branch sample when receiving a CS_ETM_TRACE_ON packet
    perf cs-etm: Support dummy address value for CS_ETM_TRACE_ON packet
    perf cs-etm: Fix start tracing packet handling
    perf build: Fix installation directory for eBPF
    perf c2c report: Fix crash for empty browser
    perf tests: Fix indexing when invoking subtests
    perf trace: Beautify the AF_INET & AF_INET6 'socket' syscall 'protocol' args
    perf trace beauty: Add beautifiers for 'socket''s 'protocol' arg
    perf trace beauty: Do not print NULL strarray entries
    perf beauty: Add a generator for IPPROTO_ socket's protocol constants
    tools include uapi: Grab a copy of linux/in.h
    perf tests: Fix complex event name parsing
    perf evlist: Fix error out while applying initial delay and LBR
    ...

    Linus Torvalds