21 May, 2019

1 commit


20 May, 2019

8 commits

  • Pull networking fixes from David Miller:1) Use after free in __dev_map_entry_free(), from Eric Dumazet.

    1) Use after free in __dev_map_entry_free(), from Eric Dumazet.

    2) Fix TCP retransmission timestamps on passive Fast Open, from Yuchung
    Cheng.

    3) Orphan NFC, we'll take the patches directly into my tree. From
    Johannes Berg.

    4) We can't recycle cloned TCP skbs, from Eric Dumazet.

    5) Some flow dissector bpf test fixes, from Stanislav Fomichev.

    6) Fix RCU marking and warnings in rhashtable, from Herbert Xu.

    7) Fix some potential fib6 leaks, from Eric Dumazet.

    8) Fix a _decode_session4 uninitialized memory read bug fix that got
    lost in a merge. From Florian Westphal.

    9) Fix ipv6 source address routing wrt. exception route entries, from
    Wei Wang.

    10) The netdev_xmit_more() conversion was not done %100 properly in mlx5
    driver, fix from Tariq Toukan.

    11) Clean up botched merge on netfilter kselftest, from Florian
    Westphal.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (74 commits)
    of_net: fix of_get_mac_address retval if compiled without CONFIG_OF
    net: fix kernel-doc warnings for socket.c
    net: Treat sock->sk_drops as an unsigned int when printing
    kselftests: netfilter: fix leftover net/net-next merge conflict
    mlxsw: core: Prevent reading unsupported slave address from SFP EEPROM
    mlxsw: core: Prevent QSFP module initialization for old hardware
    vsock/virtio: Initialize core virtio vsock before registering the driver
    net/mlx5e: Fix possible modify header actions memory leak
    net/mlx5e: Fix no rewrite fields with the same match
    net/mlx5e: Additional check for flow destination comparison
    net/mlx5e: Add missing ethtool driver info for representors
    net/mlx5e: Fix number of vports for ingress ACL configuration
    net/mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled
    net/mlx5e: Fix wrong xmit_more application
    net/mlx5: Fix peer pf disable hca command
    net/mlx5: E-Switch, Correct type to u16 for vport_num and int for vport_index
    net/mlx5: Add meaningful return codes to status_to_err function
    net/mlx5: Imply MLXFW in mlx5_core
    Revert "tipc: fix modprobe tipc failed after switch order of device registration"
    vsock/virtio: free packets during the socket release
    ...

    Linus Torvalds
     
  • If you want to see if your linker supports a certain flag, then ask the
    linker directly with ld-option (not the compiler with cc-ldoption).
    Checking for linker flag support is an antipattern that complicates the
    usage of various linkers other than bfd via -fuse-ld={bfd|gold|lld}.

    Cc: clang-built-linux@googlegroups.com
    Suggested-by: Masahiro Yamada
    Signed-off-by: Nick Desaulniers
    Signed-off-by: Masahiro Yamada

    Nick Desaulniers
     
  • Merge yet more updates from Andrew Morton:
    "A few final bits:

    - large changes to vmalloc, yielding large performance benefits

    - tweak the console-flush-on-panic code

    - a few fixes"

    * emailed patches from Andrew Morton :
    panic: add an option to replay all the printk message in buffer
    initramfs: don't free a non-existent initrd
    fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount
    mm/compaction.c: correct zone boundary handling when isolating pages from a pageblock
    mm/vmap: add DEBUG_AUGMENT_LOWEST_MATCH_CHECK macro
    mm/vmap: add DEBUG_AUGMENT_PROPAGATE_CHECK macro
    mm/vmalloc.c: keep track of free blocks for vmap allocation

    Linus Torvalds
     
  • Pull i2c updates from Wolfram Sang:
    "Some I2C core API additions which are kind of simple but enhance error
    checking for users a lot, especially by returning errno now.

    There are wrappers to still support the old API but it will be removed
    once all users are converted"

    * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
    i2c: core: add device-managed version of i2c_new_dummy
    i2c: core: improve return value handling of i2c_new_device and i2c_new_dummy

    Linus Torvalds
     
  • Pull clocksource updates from Ingo Molnar:
    "Misc clocksource/clockevent driver updates that came in a bit late but
    are ready for v5.2"

    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    misc: atmel_tclib: Do not probe already used TCBs
    clocksource/drivers/timer-atmel-tcb: Convert tc_clksrc_suspend|resume() to static
    clocksource/drivers/tcb_clksrc: Rename the file for consistency
    clocksource/drivers/timer-atmel-pit: Rework Kconfig option
    clocksource/drivers/tcb_clksrc: Move Kconfig option
    ARM: at91: Implement clocksource selection
    clocksource/drivers/tcb_clksrc: Use tcb as sched_clock
    clocksource/drivers/tcb_clksrc: Stop depending on atmel_tclib
    ARM: at91: move SoC specific definitions to SoC folder
    clocksource/drivers/timer-milbeaut: Cleanup common register accesses
    clocksource/drivers/timer-milbeaut: Add shutdown function
    clocksource/drivers/timer-milbeaut: Fix to enable one-shot timer
    clocksource/drivers/tegra: Rework for compensation of suspend time
    clocksource/drivers/sp804: Add COMPILE_TEST to CONFIG_ARM_TIMER_SP804
    clocksource/drivers/sun4i: Add a compatible for suniv
    dt-bindings: timer: Add Allwinner suniv timer

    Linus Torvalds
     
  • Pull IRQ chip updates from Ingo Molnar:
    "A late irqchips update:

    - New TI INTR/INTA set of drivers

    - Rewrite of the stm32mp1-exti driver as a platform driver

    - Update the IOMMU MSI mapping API to be RT friendly

    - A number of cleanups and other low impact fixes"

    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
    iommu/dma-iommu: Remove iommu_dma_map_msi_msg()
    irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg()
    irqchip/ls-scfg-msi: Don't map the MSI page in ls_scfg_msi_compose_msg()
    irqchip/gic-v3-its: Don't map the MSI page in its_irq_compose_msi_msg()
    irqchip/gicv2m: Don't map the MSI page in gicv2m_compose_msi_msg()
    iommu/dma-iommu: Split iommu_dma_map_msi_msg() in two parts
    genirq/msi: Add a new field in msi_desc to store an IOMMU cookie
    arm64: arch_k3: Enable interrupt controller drivers
    irqchip/ti-sci-inta: Add msi domain support
    soc: ti: Add MSI domain bus support for Interrupt Aggregator
    irqchip/ti-sci-inta: Add support for Interrupt Aggregator driver
    dt-bindings: irqchip: Introduce TISCI Interrupt Aggregator bindings
    irqchip/ti-sci-intr: Add support for Interrupt Router driver
    dt-bindings: irqchip: Introduce TISCI Interrupt router bindings
    gpio: thunderx: Use the default parent apis for {request,release}_resources
    genirq: Introduce irq_chip_{request,release}_resource_parent() apis
    firmware: ti_sci: Add helper apis to manage resources
    firmware: ti_sci: Add RM mapping table for am654
    firmware: ti_sci: Add support for IRQ management
    firmware: ti_sci: Add support for RM core ops
    ...

    Linus Torvalds
     
  • Pull ARM SoC late updates from Olof Johansson:
    "This is some material that we picked up into our tree late. Most of it
    are smaller fixes and additions, some defconfig updates due to recent
    development, etc.

    Code-wise the largest portion is a series of PM updates for the at91
    platform, and those have been in linux-next a while through the at91
    tree before we picked them up"

    * tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (29 commits)
    arm64: dts: sprd: Add clock properties for serial devices
    Opt out of scripts/get_maintainer.pl
    ARM: ixp4xx: Remove duplicated include from common.c
    soc: ixp4xx: qmgr: Fix an NULL vs IS_ERR() check in probe
    arm64: tegra: Disable XUSB support on Jetson TX2
    arm64: tegra: Enable SMMU translation for PCI on Tegra186
    arm64: tegra: Fix insecure SMMU users for Tegra186
    arm64: tegra: Select ARM_GIC_PM
    amba: tegra-ahb: Mark PM functions as __maybe_unused
    ARM: dts: logicpd-som-lv: Fix MMC1 card detect
    ARM: mvebu: drop return from void function
    ARM: mvebu: prefix coprocessor operand with p
    ARM: mvebu: drop unnecessary label
    ARM: mvebu: fix a leaked reference by adding missing of_node_put
    ARM: socfpga_defconfig: enable LTC2497
    ARM: mvebu: kirkwood: remove error message when retrieving mac address
    ARM: at91: sama5: make ov2640 as a module
    ARM: OMAP1: ams-delta: fix early boot crash when LED support is disabled
    ARM: at91: remove HAVE_FB_ATMEL for sama5 SoC as they use DRM
    soc/fsl/qe: Fix an error code in qe_pin_request()
    ...

    Linus Torvalds
     
  • …/git/palmer/riscv-linux

    Pull RISC-V updates from Palmer Dabbelt:
    "This contains an assortment of RISC-V related patches that I'd like to
    target for the 5.2 merge window. Most of the patches are cleanups, but
    there are a handful of user-visible changes:

    - The nosmp and nr_cpus command-line arguments are now supported,
    which work like normal.

    - The SBI console no longer installs itself as a preferred console,
    we rely on standard mechanisms (/chosen, command-line, hueristics)
    instead.

    - sfence_remove_sfence_vma{,_asid} now pass their arguments along to
    the SBI call.

    - Modules now support BUG().

    - A missing sfence.vma during boot has been added. This bug only
    manifests during boot.

    - The arch/riscv support for SiFive's L2 cache controller has been
    merged, which should un-block the EDAC framework work.

    I've only tested this on QEMU again, as I didn't have time to get
    things running on the Unleashed. The latest master from this morning
    merges in cleanly and passes the tests as well"

    * tag 'riscv-for-linus-5.2-mw2' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux: (31 commits)
    riscv: fix locking violation in page fault handler
    RISC-V: sifive_l2_cache: Add L2 cache controller driver for SiFive SoCs
    RISC-V: Add DT documentation for SiFive L2 Cache Controller
    RISC-V: Avoid using invalid intermediate translations
    riscv: Support BUG() in kernel module
    riscv: Add the support for c.ebreak check in is_valid_bugaddr()
    riscv: support trap-based WARN()
    riscv: fix sbi_remote_sfence_vma{,_asid}.
    riscv: move switch_mm to its own file
    riscv: move flush_icache_{all,mm} to cacheflush.c
    tty: Don't force RISCV SBI console as preferred console
    RISC-V: Access CSRs using CSR numbers
    RISC-V: Add interrupt related SCAUSE defines in asm/csr.h
    RISC-V: Use tabs to align macro values in asm/csr.h
    RISC-V: Fix minor checkpatch issues.
    RISC-V: Support nr_cpus command line option.
    RISC-V: Implement nosmp commandline option.
    RISC-V: Add RISC-V specific arch_match_cpu_phys_id
    riscv: vdso: drop unnecessary cc-ldoption
    riscv: call pm_power_off from machine_halt / machine_power_off
    ...

    Linus Torvalds
     

19 May, 2019

1 commit

  • Currently on panic, kernel will lower the loglevel and print out pending
    printk msg only with console_flush_on_panic().

    Add an option for users to configure the "panic_print" to replay all
    dmesg in buffer, some of which they may have never seen due to the
    loglevel setting, which will help panic debugging .

    [feng.tang@intel.com: keep the original console_flush_on_panic() inside panic()]
    Link: http://lkml.kernel.org/r/1556199137-14163-1-git-send-email-feng.tang@intel.com
    [feng.tang@intel.com: use logbuf lock to protect the console log index]
    Link: http://lkml.kernel.org/r/1556269868-22654-1-git-send-email-feng.tang@intel.com
    Link: http://lkml.kernel.org/r/1556095872-36838-1-git-send-email-feng.tang@intel.com
    Signed-off-by: Feng Tang
    Reviewed-by: Petr Mladek
    Cc: Aaro Koskinen
    Cc: Petr Mladek
    Cc: Steven Rostedt
    Cc: Sergey Senozhatsky
    Cc: Kees Cook
    Cc: Borislav Petkov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Feng Tang
     

18 May, 2019

2 commits

  • Pull KVM updates from Paolo Bonzini:
    "ARM:
    - support for SVE and Pointer Authentication in guests
    - PMU improvements

    POWER:
    - support for direct access to the POWER9 XIVE interrupt controller
    - memory and performance optimizations

    x86:
    - support for accessing memory not backed by struct page
    - fixes and refactoring

    Generic:
    - dirty page tracking improvements"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (155 commits)
    kvm: fix compilation on aarch64
    Revert "KVM: nVMX: Expose RDPMC-exiting only when guest supports PMU"
    kvm: x86: Fix L1TF mitigation for shadow MMU
    KVM: nVMX: Disable intercept for FS/GS base MSRs in vmcs02 when possible
    KVM: PPC: Book3S: Remove useless checks in 'release' method of KVM device
    KVM: PPC: Book3S HV: XIVE: Fix spelling mistake "acessing" -> "accessing"
    KVM: PPC: Book3S HV: Make sure to load LPID for radix VCPUs
    kvm: nVMX: Set nested_run_pending in vmx_set_nested_state after checks complete
    tests: kvm: Add tests for KVM_SET_NESTED_STATE
    KVM: nVMX: KVM_SET_NESTED_STATE - Tear down old EVMCS state before setting new state
    tests: kvm: Add tests for KVM_CAP_MAX_VCPUS and KVM_CAP_MAX_CPU_ID
    tests: kvm: Add tests to .gitignore
    KVM: Introduce KVM_CAP_MANUAL_DIRTY_LOG_PROTECT2
    KVM: Fix kvm_clear_dirty_log_protect off-by-(minus-)one
    KVM: Fix the bitmap range to copy during clear dirty
    KVM: arm64: Fix ptrauth ID register masking logic
    KVM: x86: use direct accessors for RIP and RSP
    KVM: VMX: Use accessors for GPRs outside of dedicated caching logic
    KVM: x86: Omit caching logic for always-available GPRs
    kvm, x86: Properly check whether a pfn is an MMIO or not
    ...

    Linus Torvalds
     
  • i2c_new_dummy is typically called from the probe function of the
    driver for the primary i2c client. It requires calls to
    i2c_unregister_device in the error path of the probe function and
    in the remove function.
    This can be simplified by introducing a device-managed version.

    Note the changed error case return value type: i2c_new_dummy returns
    NULL whilst devm_i2c_new_dummy_device returns an ERR_PTR.

    Signed-off-by: Heiner Kallweit
    [wsa: rename new functions and fix minor kdoc issues]
    Signed-off-by: Wolfram Sang
    Reviewed-by: Peter Rosin
    Reviewed-by: Kieran Bingham
    Reviewed-by: Bartosz Golaszewski
    Signed-off-by: Wolfram Sang

    Heiner Kallweit
     

17 May, 2019

9 commits

  • Add device tree bindings for SiFive FU540 L2 cache controller driver

    Signed-off-by: Yash Shah
    Reviewed-by: Rob Herring
    Signed-off-by: Palmer Dabbelt

    Yash Shah
     
  • Pull Devicetree vendor prefix conversion from Rob Herring:
    "Conversion of vendor-prefixes.txt to json-schema"

    * tag 'devicetree-for-5.2-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
    dt-bindings: Convert vendor prefixes to json-schema

    Linus Torvalds
     
  • Pull misc AFS fixes from David Howells:
    "This fixes a set of miscellaneous issues in the afs filesystem,
    including:

    - leak of keys on file close.

    - broken error handling in xattr functions.

    - missing locking when updating VL server list.

    - volume location server DNS lookup whereby preloaded cells may not
    ever get a lookup and regular DNS lookups to maintain server lists
    consume power unnecessarily.

    - incorrect error propagation and handling in the fileserver
    iteration code causes operations to sometimes apparently succeed.

    - interruption of server record check/update side op during
    fileserver iteration causes uninterruptible main operations to fail
    unexpectedly.

    - callback promise expiry time miscalculation.

    - over invalidation of the callback promise on directories.

    - double locking on callback break waking up file locking waiters.

    - double increment of the vnode callback break counter.

    Note that it makes some changes outside of the afs code, including:

    - an extra parameter to dns_query() to allow the dns_resolver key
    just accessed to be immediately invalidated. AFS is caching the
    results itself, so the key can be discarded.

    - an interruptible version of wait_var_event().

    - an rxrpc function to allow the maximum lifespan to be set on a
    call.

    - a way for an rxrpc call to be marked as non-interruptible"

    * tag 'afs-fixes-20190516' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
    afs: Fix double inc of vnode->cb_break
    afs: Fix lock-wait/callback-break double locking
    afs: Don't invalidate callback if AFS_VNODE_DIR_VALID not set
    afs: Fix calculation of callback expiry time
    afs: Make dynamic root population wait uninterruptibly for proc_cells_lock
    afs: Make some RPC operations non-interruptible
    rxrpc: Allow the kernel to mark a call as being non-interruptible
    afs: Fix error propagation from server record check/update
    afs: Fix the maximum lifespan of VL and probe calls
    rxrpc: Provide kernel interface to set max lifespan on a call
    afs: Fix "kAFS: AFS vnode with undefined type 0"
    afs: Fix cell DNS lookup
    Add wait_var_event_interruptible()
    dns_resolver: Allow used keys to be invalidated
    afs: Fix afs_cell records to always have a VL server list record
    afs: Fix missing lock when replacing VL server list
    afs: Fix afs_xattr_get_yfs() to not try freeing an error value
    afs: Fix incorrect error handling in afs_xattr_get_acl()
    afs: Fix key leak in afs_release() and afs_evict_inode()

    Linus Torvalds
     
  • …it/device-mapper/linux-dm

    Pull device mapper updates from Mike Snitzer:

    - Improve DM snapshot target's scalability by using finer grained
    locking. Requires some list_bl interface improvements.

    - Add ability for DM integrity to use a bitmap mode, that tracks
    regions where data and metadata are out of sync, instead of using a
    journal.

    - Improve DM thin provisioning target to not write metadata changes to
    disk if the thin-pool and associated thin devices are merely
    activated but not used. This avoids metadata corruption due to
    concurrent activation of thin devices across different OS instances
    (e.g. split brain scenarios, which ultimately would be avoided if
    proper device filters were used -- but not having proper filtering
    has proven a very common configuration mistake)

    - Fix missing call to path selector type->end_io in DM multipath. This
    fixes reported performance problems due to inaccurate path selector
    IO accounting causing an imbalance of IO (e.g. avoiding issuing IO to
    particular path due to it seemingly being heavily used).

    - Fix bug in DM cache metadata's loading of its discard bitset that
    could lead to all cache blocks being discarded if the very first
    cache block was discarded (thankfully in practice the first cache
    block is generally in use; be it FS superblock, partition table, disk
    label, etc).

    - Add testing-only DM dust target which simulates a device that has
    failing sectors and/or read failures.

    - Fix a DM init error path reference count hang that caused boot hangs
    if user supplied malformed input on kernel commandline.

    - Fix a couple issues with DM crypt target's logging being overly
    verbose or lacking context.

    - Various other small fixes to DM init, DM multipath, DM zoned, and DM
    crypt.

    * tag 'for-5.2/dm-changes-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (42 commits)
    dm: fix a couple brace coding style issues
    dm crypt: print device name in integrity error message
    dm crypt: move detailed message into debug level
    dm ioctl: fix hang in early create error condition
    dm integrity: whitespace, coding style and dead code cleanup
    dm integrity: implement synchronous mode for reboot handling
    dm integrity: handle machine reboot in bitmap mode
    dm integrity: add a bitmap mode
    dm integrity: introduce a function add_new_range_and_wait()
    dm integrity: allow large ranges to be described
    dm ingerity: pass size to dm_integrity_alloc_page_list()
    dm integrity: introduce rw_journal_sectors()
    dm integrity: update documentation
    dm integrity: don't report unused options
    dm integrity: don't check null pointer before kvfree and vfree
    dm integrity: correctly calculate the size of metadata area
    dm dust: Make dm_dust_init and dm_dust_exit static
    dm dust: remove redundant unsigned comparison to less than zero
    dm mpath: always free attached_handler_name in parse_path()
    dm init: fix max devices/targets checks
    ...

    Linus Torvalds
     
  • Convert the vendor prefix registry to a schema. This will enable checking
    that new vendor prefixes are added (in addition to the less than perfect
    checkpatch.pl check) and will also check against adding other prefixes
    which are not vendors.

    Converted vendor-prefixes.txt using the following sed script:

    sed -e 's/\([a-zA-Z0-9\-]*\)[[:space:]]*\([a-zA-Z0-9].*\)/ "^\1,\.\*\":\n description: \2/'

    Signed-off-by: Rob Herring

    Rob Herring
     
  • Pull media fixes from Mauro Carvalho Chehab:
    "Some fixes for some platform drivers (rockchip, atmel, omap, daVinci,
    tegra-cec, coda and rcar).

    Also includes a fix on one of the V4L2 uAPI doc, explaining a border
    case"

    * tag 'media/v5.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
    media: rockchip/vpu: Fix/re-order probe-error/remove path
    media: rockchip/vpu: Initialize mdev->bus_info
    media: rockchip/vpu: Get vdev from the file arg in vidioc_querycap()
    media: rockchip/vpu: Add missing dont_use_autosuspend() calls
    media: rockchip/vpu: Do not request id 0 for our video device
    media: tegra-cec: fix cec_notifier_parse_hdmi_phandle return check
    media: davinci/vpbe: array underflow in vpbe_enum_outputs()
    media: field-order.rst: clarify FIELD_ANY and FIELD_NONE
    media: staging/imx: add media device to capture register
    media: rcar-csi2: Propagate the FLD signal for NTSC and PAL
    media: rcar-csi2: restart CSI-2 link if error is detected
    media: omap_vout: potential buffer overflow in vidioc_dqbuf()
    media: coda: fix unset field and fail on invalid field in buf_prepare
    media: atmel: atmel-isc: fix asd memory allocation
    media: atmel: atmel-isc: fix INIT_WORK misplacement
    media: atmel: atmel-isc: limit incoming pixels per frame

    Linus Torvalds
     
  • AT91 SoC for 5.2

    - PM changes for SAM9X60

    * tag 'at91-5.2-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
    ARM: at91: pm: do not disable/enable PLLA for ULP modes
    ARM: at91: pm: disable RC oscillator in ULP0
    ARM: at91: pm: add ULP1 support for SAM9X60
    ARM: at91: pm: add support for per SoC wakeup source configuration
    ARM: at91: pm: keep at91_pm_backup_init() only for SAMA5D2 SoCs
    ARM: at91: pm: initial PM support for SAM9X60
    dt-bindings: arm: atmel: add binding for SAM9X60 SoC
    ARM: at91: pm: introduce at91_soc_pm structure

    Signed-off-by: Olof Johansson

    Olof Johansson
     
  • Pull x86 fixes from Ingo Molnar:
    "Misc fixes and updates:

    - a handful of MDS documentation/comment updates

    - a cleanup related to hweight interfaces

    - a SEV guest fix for large pages

    - a kprobes LTO fix

    - and a final cleanup commit for vDSO HPET support removal"

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/speculation/mds: Improve CPU buffer clear documentation
    x86/speculation/mds: Revert CPU buffer clear on double fault exit
    x86/kconfig: Disable CONFIG_GENERIC_HWEIGHT and remove __HAVE_ARCH_SW_HWEIGHT
    x86/mm: Do not use set_{pud, pmd}_safe() when splitting a large page
    x86/kprobes: Make trampoline_handler() global and visible
    x86/vdso: Remove hpet_page from vDSO

    Linus Torvalds
     
  • Pull ARM SoC-related driver updates from Olof Johansson:
    "Various driver updates for platforms and a couple of the small driver
    subsystems we merge through our tree:

    Among the larger pieces:

    - Power management improvements for TI am335x and am437x (RTC
    suspend/wake)

    - Misc new additions for Amlogic (socinfo updates)

    - ZynqMP FPGA manager

    - Nvidia improvements for reset/powergate handling

    - PMIC wrapper for Mediatek MT8516

    - Misc fixes/improvements for ARM SCMI, TEE, NXP i.MX SCU drivers"

    * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (57 commits)
    soc: aspeed: fix Kconfig
    soc: add aspeed folder and misc drivers
    spi: zynqmp: Fix build break
    soc: imx: Add generic i.MX8 SoC driver
    MAINTAINERS: Update email for Qualcomm SoC maintainer
    memory: tegra: Fix a typos for "fdcdwr2" mc client
    Revert "ARM: tegra: Restore memory arbitration on resume from LP1 on Tegra30+"
    memory: tegra: Replace readl-writel with mc_readl-mc_writel
    memory: tegra: Fix integer overflow on tick value calculation
    memory: tegra: Fix missed registers values latching
    ARM: tegra: cpuidle: Handle tick broadcasting within cpuidle core on Tegra20/30
    optee: allow to work without static shared memory
    soc/tegra: pmc: Move powergate initialisation to probe
    soc/tegra: pmc: Remove reset sysfs entries on error
    soc/tegra: pmc: Fix reset sources and levels
    soc: amlogic: meson-gx-pwrc-vpu: Add support for G12A
    soc: amlogic: meson-gx-pwrc-vpu: Fix power on/off register bitmask
    fpga manager: Adding FPGA Manager support for Xilinx zynqmp
    dt-bindings: fpga: Add bindings for ZynqMP fpga driver
    firmware: xilinx: Add fpga API's
    ...

    Linus Torvalds
     

16 May, 2019

14 commits

  • Pull ARM Device-tree updates from Olof Johansson:
    "Besides new bindings and additional descriptions of hardware blocks
    for various SoCs and boards, the main new contents here is:

    SoCs:
    - Intel Agilex (SoCFPGA)
    - NXP i.MX8MM (Quad Cortex-A53 with media/graphics focus)

    New boards:
    - Allwinner:
    + RerVision H3-DVK (H3)
    + Oceanic 5205 5inMFD (H6)
    + Beelink GS2 (H6)
    + Orange Pi 3 (H6)
    - Rockchip:
    + Orange Pi RK3399
    + Nanopi NEO4
    + Veyron-Mighty Chromebook variant
    - Amlogic:
    + SEI Robotics SEI510
    - ST Micro:
    + stm32mp157a discovery1
    + stm32mp157c discovery2
    - NXP:
    + Eckelmann ci4x10 (i.MX6DL)
    + i.MX8MM EVK (i.MX8MM)
    + ZII i.MX7 RPU2 (i.MX7)
    + ZII SPB4 (VF610)
    + Zii Ultra (i.MX8M)
    + TQ TQMa7S (i.MX7Solo)
    + TQ TQMa7D (i.MX7Dual)
    + Kobo Aura (i.MX50)
    + Menlosystems M53 (i.MX53)j
    - Nvidia:
    + Jetson Nano (Tegra T210)"

    * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (593 commits)
    arm64: dts: bitmain: Add UART pinctrl support for Sophon Edge
    arm64: dts: bitmain: Add pinctrl support for BM1880 SoC
    arm64: dts: bitmain: Add GPIO Line names for Sophon Edge board
    arm64: dts: bitmain: Add GPIO support for BM1880 SoC
    ARM: dts: gemini: Indent DIR-685 partition table
    dt-bindings: hwmon (pwm-fan) Remove dead "cooling-*-state" properties
    ARM: dts: qcom-apq8064: Set 'cxo_board' as ref clock of the DSI PHY
    arm64: dts: msm8998: thermal: Restrict thermal zone name length to under 20
    arm64: dts: msm8998: thermal: Fix number of supported sensors
    arm64: dts: msm8998-mtp: thermal: Remove skin and battery thermal zones
    arm64: dts: exynos: Move fixed-clocks out of soc
    arm64: dts: exynos: Move pmu and timer nodes out of soc
    ARM: dts: s5pv210: Fix camera clock provider on Goni board
    ARM: dts: exynos: Properly override node to use MDMA0 on Universal C210
    ARM: dts: exynos: Move fixed-clocks out of soc on Exynos3250
    ARM: dts: exynos: Remove unneeded address/size cells from fixed-clock on Exynos3250
    ARM: dts: exynos: Move pmu and timer nodes out of soc
    arm64: dts: rockchip: fix IO domain voltage setting of APIO5 on rockpro64
    arm64: dts: db820c: Add sound card support
    arm64: dts: apq8096-db820c: Add HDMI display support
    ...

    Linus Torvalds
     
  • Pull ARM SoC platform updates from Olof Johansson:
    "SoC updates, mostly refactorings and cleanups of old legacy platforms.

    Major themes this release:

    - Conversion of ixp4xx to a modern platform (drivers, DT, bindings)

    - Moving some of the ep93xx headers around to get it closer to
    multiplatform enabled.

    - Cleanups of Davinci

    This also contains a few patches that were queued up as fixes before
    5.1 but I didn't get sent in before release"

    * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (123 commits)
    ARM: debug-ll: add default address for digicolor
    ARM: u300: regulator: add MODULE_LICENSE()
    ARM: ep93xx: move private headers out of mach/*
    ARM: ep93xx: move pinctrl interfaces into include/linux/soc
    ARM: ep93xx: keypad: stop using mach/platform.h
    ARM: ep93xx: move network platform data to separate header
    ARM: stm32: add AMBA support for stm32 family
    MAINTAINERS: update arch/arm/mach-davinci
    ARM: rockchip: add missing of_node_put in rockchip_smp_prepare_pmu
    ARM: dts: Add queue manager and NPE to the IXP4xx DTSI
    soc: ixp4xx: qmgr: Add DT probe code
    soc: ixp4xx: qmgr: Add DT bindings for IXP4xx qmgr
    soc: ixp4xx: npe: Add DT probe code
    soc: ixp4xx: Add DT bindings for IXP4xx NPE
    soc: ixp4xx: qmgr: Pass resources
    soc: ixp4xx: Remove unused functions
    soc: ixp4xx: Uninline several functions
    soc: ixp4xx: npe: Pass addresses as resources
    ARM: ixp4xx: Turn the QMGR into a platform device
    ARM: ixp4xx: Turn the NPE into a platform device
    ...

    Linus Torvalds
     
  • Allow kernel services using AF_RXRPC to indicate that a call should be
    non-interruptible. This allows kafs to make things like lock-extension and
    writeback data storage calls non-interruptible.

    If this is set, signals will be ignored for operations on that call where
    possible - such as waiting to get a call channel on an rxrpc connection.

    It doesn't prevent UDP sendmsg from being interrupted, but that will be
    handled by packet retransmission.

    rxrpc_kernel_recv_data() isn't affected by this since that never waits,
    preferring instead to return -EAGAIN and leave the waiting to the caller.

    Userspace initiated calls can't be set to be uninterruptible at this time.

    Signed-off-by: David Howells

    David Howells
     
  • Pull thermal soc updates from Eduardo Valentin:

    - thermal core has a new devm_* API for registering cooling devices. I
    took the entire series, that is why you see changes on drivers/hwmon
    in this pull (Guenter Roeck)

    - rockchip thermal driver gains support to PX30 SoC (Elaine Zhang)

    - the generic-adc thermal driver now considers the lookup table DT
    property as optional (Jean-Francois Dagenais)

    - Refactoring of tsens thermal driver (Amit Kucheria)

    - Cleanups on cpu cooling driver (Daniel Lezcano)

    - broadcom thermal driver dropped support to ACPI (Srinath Mannam)

    - tegra thermal driver gains support to OC hw throttle and GPU throtle
    (Wei Ni)

    - Fixes in several thermal drivers.

    * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal: (59 commits)
    hwmon: (pwm-fan) Use devm_thermal_of_cooling_device_register
    hwmon: (npcm750-pwm-fan) Use devm_thermal_of_cooling_device_register
    hwmon: (mlxreg-fan) Use devm_thermal_of_cooling_device_register
    hwmon: (gpio-fan) Use devm_thermal_of_cooling_device_register
    hwmon: (aspeed-pwm-tacho) Use devm_thermal_of_cooling_device_register
    thermal: rcar_gen3_thermal: Fix to show correct trip points number
    thermal: rcar_thermal: update calculation formula for R-Car Gen3 SoCs
    thermal: cpu_cooling: Actually trace CPU load in thermal_power_cpu_get_power
    thermal: rockchip: Support the PX30 SoC in thermal driver
    dt-bindings: rockchip-thermal: Support the PX30 SoC compatible
    thermal: rockchip: fix up the tsadc pinctrl setting error
    thermal: broadcom: Remove ACPI support
    thermal: Fix build error of missing devm_ioremap_resource on UM
    thermal/drivers/cpu_cooling: Remove pointless field
    thermal/drivers/cpu_cooling: Add Software Package Data Exchange (SPDX)
    thermal/drivers/cpu_cooling: Fixup the header and copyright
    thermal/drivers/cpu_cooling: Remove pointless test in power2state()
    thermal: rcar_gen3_thermal: disable interrupt in .remove
    thermal: rcar_gen3_thermal: fix interrupt type
    thermal: Introduce devm_thermal_of_cooling_device_register
    ...

    Linus Torvalds
     
  • Provide an interface to set max lifespan on a call from inside of the
    kernel without having to call kernel_sendmsg().

    Signed-off-by: David Howells

    David Howells
     
  • On x86_64, all returns to usermode go through
    prepare_exit_to_usermode(), with the sole exception of do_nmi().
    This even includes machine checks -- this was added several years
    ago to support MCE recovery. Update the documentation.

    Signed-off-by: Andy Lutomirski
    Cc: Borislav Petkov
    Cc: Frederic Weisbecker
    Cc: Greg Kroah-Hartman
    Cc: Jon Masters
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: stable@vger.kernel.org
    Fixes: 04dcbdb80578 ("x86/speculation/mds: Clear CPU buffers on exit to user")
    Link: http://lkml.kernel.org/r/999fa9e126ba6a48e9d214d2f18dbde5c62ac55c.1557865329.git.luto@kernel.org
    Signed-off-by: Ingo Molnar

    Andy Lutomirski
     
  • The double fault ESPFIX path doesn't return to user mode at all --
    it returns back to the kernel by simulating a #GP fault.
    prepare_exit_to_usermode() will run on the way out of
    general_protection before running user code.

    Signed-off-by: Andy Lutomirski
    Cc: Borislav Petkov
    Cc: Frederic Weisbecker
    Cc: Greg Kroah-Hartman
    Cc: Jon Masters
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: stable@vger.kernel.org
    Fixes: 04dcbdb80578 ("x86/speculation/mds: Clear CPU buffers on exit to user")
    Link: http://lkml.kernel.org/r/ac97612445c0a44ee10374f6ea79c222fe22a5c4.1557865329.git.luto@kernel.org
    Signed-off-by: Ingo Molnar

    Andy Lutomirski
     
  • Merge in a few pending fixes from pre-5.1 that didn't get sent in:

    MAINTAINERS: update arch/arm/mach-davinci
    ARM: dts: ls1021: Fix SGMII PCS link remaining down after PHY disconnect
    ARM: dts: imx6q-logicpd: Reduce inrush current on USBH1
    ARM: dts: imx6q-logicpd: Reduce inrush current on start
    ARM: dts: imx: Fix the AR803X phy-mode
    ARM: dts: sun8i: a33: Reintroduce default pinctrl muxing
    arm64: dts: allwinner: a64: Rename hpvcc-supply to cpvdd-supply
    ARM: sunxi: fix a leaked reference by adding missing of_node_put
    ARM: sunxi: fix a leaked reference by adding missing of_node_put

    Signed-off-by: Olof Johansson

    Olof Johansson
     
  • Pull power supply and reset updates from Sebastian Reichel:
    "Core:
    - Add over-current health state
    - Add standard, adaptive and custom charge types
    - Add new properties for start/end charge threshold

    New Drivers / Hardware:
    - UCS1002 Programmable USB Port Power Controller
    - Ingenic JZ47xx Battery Fuel Gauge
    - AXP20x USB Power: Add AXP813 support
    - AT91 poweroff: Add SAM9X60 support
    - OLPC battery: Add XO-1.5 and XO-1.75 support

    Misc Changes:
    - syscon-reboot: support mask property
    - AXP288 fuel gauge: Blacklist ACEPC T8/T11. Looks like some vendor
    thought it's a good idea to build a desktop system with a fuel
    gauge, that slowly "discharges"...
    - cpcap-battery: Fix calculation errors
    - misc fixes"

    * tag 'for-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (54 commits)
    power: supply: olpc_battery: force the le/be casts
    power: supply: ucs1002: Fix build error without CONFIG_REGULATOR
    power: supply: ucs1002: Fix wrong return value checking
    power: supply: Add driver for Microchip UCS1002
    dt-bindings: power: supply: Add bindings for Microchip UCS1002
    power: supply: core: Add POWER_SUPPLY_HEALTH_OVERCURRENT constant
    power: supply: core: fix clang -Wunsequenced
    power: supply: core: Add missing documentation for CHARGE_CONTROL_* properties
    power: supply: core: Add CHARGE_CONTROL_{START_THRESHOLD,END_THRESHOLD} properties
    power: supply: core: Add Standard, Adaptive, and Custom charge types
    power: supply: axp288_fuel_gauge: Add ACEPC T8 and T11 mini PCs to the blacklist
    power: supply: bq27xxx_battery: Notify also about status changes
    power: supply: olpc_battery: Have the framework register sysfs files for us
    power: supply: olpc_battery: Add OLPC XO 1.75 support
    power: supply: olpc_battery: Avoid using platform_info
    power: supply: olpc_battery: Use devm_power_supply_register()
    power: supply: olpc_battery: Move priv data to a struct
    power: supply: olpc_battery: Use DT to get battery version
    x86/platform/olpc: Use a correct version when making up a battery node
    x86/platform/olpc: Trivial code move in DT fixup
    ...

    Linus Torvalds
     
  • Pull xen updates from Juergen Gross:

    - some minor cleanups

    - two small corrections for Xen on ARM

    - two fixes for Xen PVH guest support

    - a patch for a new command line option to tune virtual timer handling

    * tag 'for-linus-5.2b-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
    xen/arm: Use p2m entry with lock protection
    xen/arm: Free p2m entry if fail to add it to RB tree
    xen/pvh: correctly setup the PV EFI interface for dom0
    xen/pvh: set xen_domain_type to HVM in xen_pvh_init
    xenbus: drop useless LIST_HEAD in xenbus_write_watch() and xenbus_file_write()
    xen-netfront: mark expected switch fall-through
    xen: xen-pciback: fix warning Using plain integer as NULL pointer
    x86/xen: Add "xen_timer_slop" command line option

    Linus Torvalds
     
  • Daniel Borkmann says:

    ====================
    pull-request: bpf 2019-05-16

    The following pull-request contains BPF updates for your *net* tree.

    The main changes are:

    1) Fix a use after free in __dev_map_entry_free(), from Eric.

    2) Several sockmap related bug fixes: a splat in strparser if
    it was never initialized, remove duplicate ingress msg list
    purging which can race, fix msg->sg.size accounting upon
    skb to msg conversion, and last but not least fix a timeout
    bug in tcp_bpf_wait_data(), from John.

    3) Fix LRU map to avoid messing with eviction heuristics upon
    syscall lookup, e.g. map walks from user space side will
    then lead to eviction of just recently created entries on
    updates as it would mark all map entries, from Daniel.

    4) Don't bail out when libbpf feature probing fails. Also
    various smaller fixes to flow_dissector test, from Stanislav.

    5) Fix missing brackets for BTF_INT_OFFSET() in UAPI, from Gary.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Pull tracing updates from Steven Rostedt:
    "The major changes in this tracing update includes:

    - Removal of non-DYNAMIC_FTRACE from 32bit x86

    - Removal of mcount support from x86

    - Emulating a call from int3 on x86_64, fixes live kernel patching

    - Consolidated Tracing Error logs file

    Minor updates:

    - Removal of klp_check_compiler_support()

    - kdb ftrace dumping output changes

    - Accessing and creating ftrace instances from inside the kernel

    - Clean up of #define if macro

    - Introduction of TRACE_EVENT_NOP() to disable trace events based on
    config options

    And other minor fixes and clean ups"

    * tag 'trace-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (44 commits)
    x86: Hide the int3_emulate_call/jmp functions from UML
    livepatch: Remove klp_check_compiler_support()
    ftrace/x86: Remove mcount support
    ftrace/x86_32: Remove support for non DYNAMIC_FTRACE
    tracing: Simplify "if" macro code
    tracing: Fix documentation about disabling options using trace_options
    tracing: Replace kzalloc with kcalloc
    tracing: Fix partial reading of trace event's id file
    tracing: Allow RCU to run between postponed startup tests
    tracing: Fix white space issues in parse_pred() function
    tracing: Eliminate const char[] auto variables
    ring-buffer: Fix mispelling of Calculate
    tracing: probeevent: Fix to make the type of $comm string
    tracing: probeevent: Do not accumulate on ret variable
    tracing: uprobes: Re-enable $comm support for uprobe events
    ftrace/x86_64: Emulate call function while updating in breakpoint handler
    x86_64: Allow breakpoints to emulate call instructions
    x86_64: Add gap to int3 to allow for call emulation
    tracing: kdb: Allow ftdump to skip all but the last few entries
    tracing: Add trace_total_entries() / trace_total_entries_cpu()
    ...

    Linus Torvalds
     
  • KVM/arm updates for 5.2

    - guest SVE support
    - guest Pointer Authentication support
    - Better discrimination of perf counters between host and guests

    Conflicts:
    include/uapi/linux/kvm.h

    Paolo Bonzini
     
  • …paulus/powerpc into HEAD

    PPC KVM update for 5.2

    * Support for guests to access the new POWER9 XIVE interrupt controller
    hardware directly, reducing interrupt latency and overhead for guests.

    * In-kernel implementation of the H_PAGE_INIT hypercall.

    * Reduce memory usage of sparsely-populated IOMMU tables.

    * Several bug fixes.

    Second PPC KVM update for 5.2

    * Fix a bug, fix a spelling mistake, remove some useless code.

    Paolo Bonzini
     

15 May, 2019

5 commits

  • Pull more ACPI updates from Rafael Wysocki:
    "These fix two regressions introduced during the 5.0 cycle, in ACPICA
    and in device PM, cause the values returned by _ADR to be stored in 64
    bits and fix two ACPI documentation issues.

    Specifics:

    - Update the ACPICA code in the kernel to upstream revision 20190509
    including one regression fix:
    * Prevent excessive ACPI debug messages from being printed by
    moving the ACPI_DEBUG_DEFAULT definition to the right place
    (Erik Schmauss).

    - Set the enable_for_wake bits for wakeup GPEs during suspend to idle
    to allow acpi_enable_all_wakeup_gpes() to enable them as
    aproppriate and make wakeup devices sighaling events through ACPI
    GPEs work with suspend-to-idle again (Rajat Jain).

    - Use 64 bits to store the return values of _ADR which are assumed to
    be 64-bit by some bus specs and may contain nonzero bits in the
    upper 32 bits part for some devices (Pierre-Louis Bossart).

    - Fix two minor issues with the ACPI documentation (Sakari Ailus)"

    * tag 'acpi-5.2-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle
    Documentation: ACPI: Direct references are allowed to devices only
    Documentation: ACPI: Use tabs for graph ASL indentation
    ACPICA: Update version to 20190509
    ACPICA: Linux: move ACPI_DEBUG_DEFAULT flag out of ifndef
    ACPI: bus: change _ADR representation to 64 bits

    Linus Torvalds
     
  • The maximum number of unique System V IPC identifiers was limited to
    32k. That limit should be big enough for most use cases.

    However, there are some users out there requesting for more, especially
    those that are migrating from Solaris which uses 24 bits for unique
    identifiers. To satisfy the need of those users, a new boot time kernel
    option "ipcmni_extend" is added to extend the IPCMNI value to 16M. This
    is a 512X increase which should be big enough for users out there that
    need a large number of unique IPC identifier.

    The use of this new option will change the pattern of the IPC
    identifiers returned by functions like shmget(2). An application that
    depends on such pattern may not work properly. So it should only be
    used if the users really need more than 32k of unique IPC numbers.

    This new option does have the side effect of reducing the maximum number
    of unique sequence numbers from 64k down to 128. So it is a trade-off.

    The computation of a new IPC id is not done in the performance critical
    path. So a little bit of additional overhead shouldn't have any real
    performance impact.

    Link: http://lkml.kernel.org/r/20190329204930.21620-1-longman@redhat.com
    Signed-off-by: Waiman Long
    Acked-by: Manfred Spraul
    Cc: Al Viro
    Cc: Davidlohr Bueso
    Cc: "Eric W . Biederman"
    Cc: Jonathan Corbet
    Cc: Kees Cook
    Cc: "Luis R. Rodriguez"
    Cc: Matthew Wilcox
    Cc: Takashi Iwai
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Waiman Long
     
  • This patch implements the device tree binding changes required for the
    PPS ECHO functionality for pps-gpio, that sysfs claims is available
    already.

    It adds two DT properties for configuring the PPS ECHO functionality.

    This patch is provided separated from the rest of the patch per
    Documentation/devicetree/bindings/submitting-patches.txt.

    This patch was originally written by Lukas Senger as part of a masters
    thesis project and modified for inclusion into the linux kernel by Tom
    Burkart.

    Link: http://lkml.kernel.org/r/20190324043305.6627-3-tom@aussec.com
    Signed-off-by: Tom Burkart
    Signed-off-by: Lukas Senger
    Acked-by: Rodolfo Giometti
    Reviewed-by: Rob Herring
    Cc: Philipp Zabel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tom Burkart
     
  • Allow specifying reboot_mode for panic only. This is needed on systems
    where ramoops is used to store panic logs, and user wants to use warm
    reset to preserve those, while still having cold reset on normal
    reboots.

    Link: http://lkml.kernel.org/r/20190322004735.27702-1-aaro.koskinen@iki.fi
    Signed-off-by: Aaro Koskinen
    Reviewed-by: Kees Cook
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Aaro Koskinen
     
  • Document some things of note to gcov users:
    1. GCC gcov and Clang llvm-cov tools are not compatible.
    2. The use of GCC vs Clang is transparent at build-time.

    Also adjust the documentation to account for the removal of config symbol
    CONFIG_GCOV_FORMAT_AUTODETECT by commit 6a61b70b43c9 ("gcov: remove
    CONFIG_GCOV_FORMAT_AUTODETECT").

    Link: http://lkml.kernel.org/r/20190318025411.98014-4-trong@android.com
    Signed-off-by: Tri Vo
    Reviewed-by: Peter Oberparleiter
    Cc: Daniel Mentz
    Cc: Greg Hackmann
    Cc: Nick Desaulniers
    Cc: Petri Gynther
    Cc: Prasad Sodagudi
    Cc: Trilok Soni
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tri Vo