03 Aug, 2018

1 commit

  • [ Upstream commit ece97f3a5fb50cf5f98886fbc63c9665f2bb199d ]

    simpleImage generation was broken for some time. This patch is fixing
    steps how simpleImage.*.ub file is generated. Steps are objdump of
    vmlinux and create .ub.
    Also make sure that there is striped elf version with .strip suffix.

    Signed-off-by: Michal Simek
    Signed-off-by: Sasha Levin
    Signed-off-by: Greg Kroah-Hartman

    Michal Simek
     

29 Apr, 2018

1 commit

  • commit 18ffc0cce4ff947a2acc9b2e06ae5309a6e6fb43 upstream.

    The patch:
    "microblaze: Setup proper dependency for optimized lib functions"
    (sha1: 7b6ce52be3f86520524711a6f33f3866f9339694)
    didn't setup all dependencies properly.
    Optimized lib functions in C are also present for little endian
    and optimized library functions in assembler are implemented only for
    big endian version.

    Reported-by: kbuild test robot
    Signed-off-by: Michal Simek
    Cc: Arnd Bergmann
    Signed-off-by: Greg Kroah-Hartman

    Michal Simek
     

28 Feb, 2018

1 commit

  • commit 71e7673dadfdae0605d4c1f66ecb4b045c79fe0f upstream.

    Building an allmodconfig kernel fails horribly because of
    endian mismatch. It turns out that the -mlittle-endian
    switch was not honored at all as we were using the wrong
    Kconfig symbol and failing to apply CPUFLAGS to the CFLAGS.
    Finally, the linker flags did not get set right.

    This addresses all three of those issues, which now lets
    me build both big-endian and little-endian kernels for
    testing.

    Fixes: 428dbf156cc5 ("arch: change default endian for microblaze")
    Fixes: 206d3642d8ee ("arch/microblaze: add choice for endianness and update Makefile")
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Michal Simek
    Cc: Guenter Roeck
    Signed-off-by: Greg Kroah-Hartman

    Arnd Bergmann
     

13 Feb, 2018

1 commit

  • commit 10b62a2f785ab55857380f0c63d9fa468fd8c676 upstream.

    Most of DT files are compiled under arch/*/boot/dts/, but we have some
    other directories, like drivers/of/unittest-data/. We often miss to
    add gitignore patterns per directory. Since there are no source files
    that end with .dtb or .dtb.S, we can ignore the patterns globally.

    Signed-off-by: Masahiro Yamada
    Signed-off-by: Rob Herring
    Signed-off-by: Greg Kroah-Hartman

    Masahiro Yamada
     

02 Nov, 2017

3 commits

  • Many user space API headers have licensing information, which is either
    incomplete, badly formatted or just a shorthand for referring to the
    license under which the file is supposed to be. This makes it hard for
    compliance tools to determine the correct license.

    Update these files with an SPDX license identifier. The identifier was
    chosen based on the license information in the file.

    GPL/LGPL licensed headers get the matching GPL/LGPL SPDX license
    identifier with the added 'WITH Linux-syscall-note' exception, which is
    the officially assigned exception identifier for the kernel syscall
    exception:

    NOTE! This copyright does *not* cover user programs that use kernel
    services by normal system calls - this is merely considered normal use
    of the kernel, and does *not* fall under the heading of "derived work".

    This exception makes it possible to include GPL headers into non GPL
    code, without confusing license compliance tools.

    Headers which have either explicit dual licensing or are just licensed
    under a non GPL license are updated with the corresponding SPDX
    identifier and the GPLv2 with syscall exception identifier. The format
    is:
    ((GPL-2.0 WITH Linux-syscall-note) OR SPDX-ID-OF-OTHER-LICENSE)

    SPDX license identifiers are a legally binding shorthand, which can be
    used instead of the full boiler plate text. The update does not remove
    existing license information as this has to be done on a case by case
    basis and the copyright holders might have to be consulted. This will
    happen in a separate step.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne. See the previous patch in this series for the
    methodology of how this patch was researched.

    Reviewed-by: Kate Stewart
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Many user space API headers are missing licensing information, which
    makes it hard for compliance tools to determine the correct license.

    By default are files without license information under the default
    license of the kernel, which is GPLV2. Marking them GPLV2 would exclude
    them from being included in non GPLV2 code, which is obviously not
    intended. The user space API headers fall under the syscall exception
    which is in the kernels COPYING file:

    NOTE! This copyright does *not* cover user programs that use kernel
    services by normal system calls - this is merely considered normal use
    of the kernel, and does *not* fall under the heading of "derived work".

    otherwise syscall usage would not be possible.

    Update the files which contain no license information with an SPDX
    license identifier. The chosen identifier is 'GPL-2.0 WITH
    Linux-syscall-note' which is the officially assigned identifier for the
    Linux syscall exception. SPDX license identifiers are a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne. See the previous patch in this series for the
    methodology of how this patch was researched.

    Reviewed-by: Kate Stewart
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

25 Sep, 2017

3 commits

  • Fix the default for microblaze. Michal Simek mentioned default for
    microblaze should be CPU_LITTLE_ENDIAN.

    Fixes : commit 206d3642d8ee ("arch/microblaze: add choice for endianness
    and update Makefile")

    Signed-off-by: Babu Moger
    Cc: Michal Simek
    Signed-off-by: Michal Simek

    Babu Moger
     
  • Use vma_pages function on vma object instead of explicit computation.
    Found by coccinelle spatch "api/vma_pages.cocci"

    Signed-off-by: Thomas Meyer
    Signed-off-by: Michal Simek

    Thomas Meyer
     
  • Running make allmodconfig;make is throwing compilation error:
    CC kernel/watchdog.o
    In file included from ./include/linux/kvm_para.h:4:0,
    from kernel/watchdog.c:29:
    ./include/uapi/linux/kvm_para.h:32:26: fatal error: asm/kvm_para.h: No
    such file or directory
    #include
    ^
    compilation terminated.
    make[1]: *** [kernel/watchdog.o] Error 1
    make: *** [kernel/watchdog.o] Error 2

    Reported-by: Michal Hocko
    Suggested-by: Geert Uytterhoeven
    Signed-off-by: Michal Simek
    Fixes: 83f0124ad81e87b ("microblaze: remove asm-generic wrapper headers")
    Reviewed-by: Tobias Klauser
    Tested-by: Michal Hocko

    Michal Simek
     

10 Sep, 2017

1 commit

  • Merge more updates from Andrew Morton:

    - most of the rest of MM

    - a small number of misc things

    - lib/ updates

    - checkpatch

    - autofs updates

    - ipc/ updates

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

    Linus Torvalds
     

09 Sep, 2017

2 commits

  • microblaze architectures can be configured for either little or big endian
    formats. Add a choice option for the user to select the correct endian
    format(default to big endian).

    Also update the Makefile so toolchain can compile for the format it is
    configured for.

    Link: http://lkml.kernel.org/r/1499358861-179979-3-git-send-email-babu.moger@oracle.com
    Signed-off-by: Babu Moger
    Signed-off-by: Arnd Bergmann
    Cc: Michal Simek
    Cc: "James E.J. Bottomley"
    Cc: Alexander Viro
    Cc: David S. Miller
    Cc: Geert Uytterhoeven
    Cc: Greg KH
    Cc: Helge Deller
    Cc: Ingo Molnar
    Cc: Jonas Bonn
    Cc: Max Filippov
    Cc: Michael Ellerman (powerpc)
    Cc: Peter Zijlstra
    Cc: Stafford Horne
    Cc: Stefan Kristiansson
    Cc: Yoshinori Sato
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Babu Moger
     
  • Pull PCI updates from Bjorn Helgaas:

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

    - add Layerscape ls1088a and ls2088a support (Hou Zhiqiang)

    - add MediaTek MT2712 and MT7622 support (Ryder Lee)

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

    - add Qualcom IPQ8074 support (Varadarajan Narayanan)

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

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

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

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

    - fix pciehp power fault infinite loop (Keith Busch)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    - fix DesignWare ATU enable checking (Jisheng Zhang)

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

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

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

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

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

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

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

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

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

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

    - constify various structures (Arvind Yadav, Bhumika Goyal)

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

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

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

    Linus Torvalds
     

08 Sep, 2017

1 commit

  • Pull DeviceTree updates from Rob Herring:
    "There's a few orphans in the conversion to %pOF printf specifiers
    included here that no one else picked up.

    Summary:

    - Convert more DT code to use of_property_read_* API.

    - Improve DT overlay support when adding multiple overlays

    - Convert printk's to %pOF format specifiers. Most went via subsystem
    trees, but picked up the remaining orphans

    - Correct unittests to use preferred "okay" for "status" property
    value

    - Add a KASLR seed property

    - Vendor prefixes for Mellanox, Theobroma System, Adaptrum, Moxa

    - Fix modalias buffer handling

    - Clean-up of include paths for building dtbs

    - Add bindings for amc6821, isl1208, tsl2x7x, srf02, and srf10
    devices

    - Add nvmem bindings for MediaTek MT7623 and MT7622 SoC

    - Add compatible string for Allwinner H5 Mali-450 GPU

    - Fix links to old OpenFirmware docs with new mirror on
    devicetree.org

    - Remove status property from binding doc examples"

    * tag 'devicetree-for-4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (45 commits)
    devicetree: Adjust status "ok" -> "okay" under drivers/of/
    dt-bindings: Remove "status" from examples
    dt-bindings: pinctrl: sh-pfc: Use generic node name
    dt-bindings: Add vendor Mellanox
    dt-binding: net/phy: fix interrupts description
    virt: Convert to using %pOF instead of full_name
    macintosh: Convert to using %pOF instead of full_name
    ide: pmac: Convert to using %pOF instead of full_name
    microblaze: Convert to using %pOF instead of full_name
    dt-bindings: usb: musb: Grammar s/the/to/, s/is/are/
    of: Use PLATFORM_DEVID_NONE definition
    of/device: Fix of_device_get_modalias() buffer handling
    of/device: Prevent buffer overflow in of_device_modalias()
    dt-bindings: add amc6821, isl1208 trivial bindings
    dt-bindings: add vendor prefix for Theobroma Systems
    of: search scripts/dtc/include-prefixes path for both CPP and DTC
    of: remove arch/$(SRCARCH)/boot/dts from include search path for CPP
    of: remove drivers/of/testcase-data from include search path for CPP
    of: return of_get_cpu_node from of_cpu_device_node_get if CPUs are not registered
    iio: srf08: add device tree binding for srf02 and srf10
    ...

    Linus Torvalds
     

04 Sep, 2017

1 commit


01 Sep, 2017

1 commit

  • Change the m32r flat_put_addr_at_rp() function to return int and
    always return 0.

    The microblaze function already returned 0 so just change its
    function return type from void to int.

    Seven (7) other arch-es already have this function as returning
    an int type result.

    Fixes: 468138d78510 (binfmt_flat: flat_{get,put}_addr_from_rp()
    should be able to fail)

    Signed-off-by: Randy Dunlap
    Cc: Al Viro
    Reported-by: kbuild test robot
    Signed-off-by: Al Viro

    Randy Dunlap
     

29 Aug, 2017

1 commit


26 Aug, 2017

1 commit

  • There is code duplicated over all architecture's headers for
    futex_atomic_op_inuser. Namely op decoding, access_ok check for uaddr,
    and comparison of the result.

    Remove this duplication and leave up to the arches only the needed
    assembly which is now in arch_futex_atomic_op_inuser.

    This effectively distributes the Will Deacon's arm64 fix for undefined
    behaviour reported by UBSAN to all architectures. The fix was done in
    commit 5f16a046f8e1 (arm64: futex: Fix undefined behaviour with
    FUTEX_OP_OPARG_SHIFT usage). Look there for an example dump.

    And as suggested by Thomas, check for negative oparg too, because it was
    also reported to cause undefined behaviour report.

    Note that s390 removed access_ok check in d12a29703 ("s390/uaccess:
    remove pointless access_ok() checks") as access_ok there returns true.
    We introduce it back to the helper for the sake of simplicity (it gets
    optimized away anyway).

    Signed-off-by: Jiri Slaby
    Signed-off-by: Thomas Gleixner
    Acked-by: Russell King
    Acked-by: Michael Ellerman (powerpc)
    Acked-by: Heiko Carstens [s390]
    Acked-by: Chris Metcalf [for tile]
    Reviewed-by: Darren Hart (VMware)
    Reviewed-by: Will Deacon [core/arm64]
    Cc: linux-mips@linux-mips.org
    Cc: Rich Felker
    Cc: linux-ia64@vger.kernel.org
    Cc: linux-sh@vger.kernel.org
    Cc: peterz@infradead.org
    Cc: Benjamin Herrenschmidt
    Cc: Max Filippov
    Cc: Paul Mackerras
    Cc: sparclinux@vger.kernel.org
    Cc: Jonas Bonn
    Cc: linux-s390@vger.kernel.org
    Cc: linux-arch@vger.kernel.org
    Cc: Yoshinori Sato
    Cc: linux-hexagon@vger.kernel.org
    Cc: Helge Deller
    Cc: "James E.J. Bottomley"
    Cc: Catalin Marinas
    Cc: Matt Turner
    Cc: linux-snps-arc@lists.infradead.org
    Cc: Fenghua Yu
    Cc: Arnd Bergmann
    Cc: linux-xtensa@linux-xtensa.org
    Cc: Stefan Kristiansson
    Cc: openrisc@lists.librecores.org
    Cc: Ivan Kokshaysky
    Cc: Stafford Horne
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: Richard Henderson
    Cc: Chris Zankel
    Cc: Michal Simek
    Cc: Tony Luck
    Cc: linux-parisc@vger.kernel.org
    Cc: Vineet Gupta
    Cc: Ralf Baechle
    Cc: Richard Kuo
    Cc: linux-alpha@vger.kernel.org
    Cc: Martin Schwidefsky
    Cc: linuxppc-dev@lists.ozlabs.org
    Cc: "David S. Miller"
    Link: http://lkml.kernel.org/r/20170824073105.3901-1-jslaby@suse.cz

    Jiri Slaby
     

11 Aug, 2017

1 commit

  • 01cf9d524ff0 ("microblaze/PCI: Support generic Xilinx AXI PCIe Host Bridge
    IP driver") removed pcibios calls to:

    pcibios_setup_bus_self()
    pcibios_setup_bus_devices()

    Given that pcibios_fixup_bus() was the only caller of those functions they
    have now become dead code (along with the functions they were calling in
    turn), so they can be removed.

    Signed-off-by: Lorenzo Pieralisi
    [bhelgaas: remove "Fixup resources of a PCIPCI bridge" comment]
    Signed-off-by: Bjorn Helgaas
    Acked-by: Michal Simek
    Cc: Bharat Kumar Gogada
    Cc: Ravi Kiran Gummaluri

    Lorenzo Pieralisi
     

03 Aug, 2017

2 commits

  • Multiple architectures define this as a trivial function, and I'm adding
    another one as part of the RISC-V port. Add a __weak version of
    pcibios_align_resource() and delete the now-obselete ones in a handful of
    ports.

    The only functional change should be that a handful of ports used to export
    pcibios_fixup_bus(). Only some architectures export this, so I just
    dropped it.

    Signed-off-by: Palmer Dabbelt
    Signed-off-by: Bjorn Helgaas

    Palmer Dabbelt
     
  • Multiple architectures define this as an empty function, and I'm adding
    another one as part of the RISC-V port. Add a __weak version of
    pcibios_fixup_bus() and delete the now-obselete ones in a handful of
    ports.

    The only functional change should be that microblaze used to export
    pcibios_fixup_bus(). None of the other architectures exports this, so I
    just dropped it.

    Signed-off-by: Palmer Dabbelt
    Signed-off-by: Bjorn Helgaas

    Palmer Dabbelt
     

16 Jul, 2017

1 commit


10 Jul, 2017

1 commit

  • Since commit fcc8487d477a ("uapi: export all headers under uapi
    directories"), all (and only) headers under uapi directories are
    exported, but asm-generic wrappers are still exceptions.

    To complete de-coupling the uapi from kernel headers, move generic-y
    of exported headers to uapi/asm/Kbuild.

    With this change, "make headers_install" will just need to parse
    uapi/asm/Kbuild to build up exported headers.

    For microblaze, "generic-y += siginfo.h" is doubled in asm/Kbuild and
    uapi/asm/Kbuild. So, the one in the former can be simply removed.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

07 Jul, 2017

2 commits

  • Pull user access str* updates from Al Viro:
    "uaccess str...() dead code removal"

    * 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    s390 keyboard.c: don't open-code strndup_user()
    mips: get rid of unused __strnlen_user()
    get rid of unused __strncpy_from_user() instances
    kill strlen_user()

    Linus Torvalds
     
  • Pull dma-mapping infrastructure from Christoph Hellwig:
    "This is the first pull request for the new dma-mapping subsystem

    In this new subsystem we'll try to properly maintain all the generic
    code related to dma-mapping, and will further consolidate arch code
    into common helpers.

    This pull request contains:

    - removal of the DMA_ERROR_CODE macro, replacing it with calls to
    ->mapping_error so that the dma_map_ops instances are more self
    contained and can be shared across architectures (me)

    - removal of the ->set_dma_mask method, which duplicates the
    ->dma_capable one in terms of functionality, but requires more
    duplicate code.

    - various updates for the coherent dma pool and related arm code
    (Vladimir)

    - various smaller cleanups (me)"

    * tag 'dma-mapping-4.13' of git://git.infradead.org/users/hch/dma-mapping: (56 commits)
    ARM: dma-mapping: Remove traces of NOMMU code
    ARM: NOMMU: Set ARM_DMA_MEM_BUFFERABLE for M-class cpus
    ARM: NOMMU: Introduce dma operations for noMMU
    drivers: dma-mapping: allow dma_common_mmap() for NOMMU
    drivers: dma-coherent: Introduce default DMA pool
    drivers: dma-coherent: Account dma_pfn_offset when used with device tree
    dma: Take into account dma_pfn_offset
    dma-mapping: replace dmam_alloc_noncoherent with dmam_alloc_attrs
    dma-mapping: remove dmam_free_noncoherent
    crypto: qat - avoid an uninitialized variable warning
    au1100fb: remove a bogus dma_free_nonconsistent call
    MAINTAINERS: add entry for dma mapping helpers
    powerpc: merge __dma_set_mask into dma_set_mask
    dma-mapping: remove the set_dma_mask method
    powerpc/cell: use the dma_supported method for ops switching
    powerpc/cell: clean up fixed mapping dma_ops initialization
    tile: remove dma_supported and mapping_error methods
    xen-swiotlb: remove xen_swiotlb_set_dma_mask
    arm: implement ->dma_supported instead of ->set_dma_mask
    mips/loongson64: implement ->dma_supported instead of ->set_dma_mask
    ...

    Linus Torvalds
     

04 Jul, 2017

3 commits

  • Pull timer updates from Thomas Gleixner:
    "A rather large update for timers/timekeeping:

    - compat syscall consolidation (Al Viro)

    - Posix timer consolidation (Christoph Helwig / Thomas Gleixner)

    - Cleanup of the device tree based initialization for clockevents and
    clocksources (Daniel Lezcano)

    - Consolidation of the FTTMR010 clocksource/event driver (Linus
    Walleij)

    - The usual set of small fixes and updates all over the place"

    * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (93 commits)
    timers: Make the cpu base lock raw
    clocksource/drivers/mips-gic-timer: Fix an error code in 'gic_clocksource_of_init()'
    clocksource/drivers/fsl_ftm_timer: Unmap region obtained by of_iomap
    clocksource/drivers/tcb_clksrc: Make IO endian agnostic
    clocksource/drivers/sun4i: Switch to the timer-of common init
    clocksource/drivers/timer-of: Fix invalid iomap check
    Revert "ktime: Simplify ktime_compare implementation"
    clocksource/drivers: Fix uninitialized variable use in timer_of_init
    kselftests: timers: Add test for frequency step
    kselftests: timers: Fix inconsistency-check to not ignore first timestamp
    time: Add warning about imminent deprecation of CONFIG_GENERIC_TIME_VSYSCALL_OLD
    time: Clean up CLOCK_MONOTONIC_RAW time handling
    posix-cpu-timers: Make timespec to nsec conversion safe
    itimer: Make timeval to nsec conversion range limited
    timers: Fix parameter description of try_to_del_timer_sync()
    ktime: Simplify ktime_compare implementation
    clocksource/drivers/fttmr010: Factor out clock read code
    clocksource/drivers/fttmr010: Implement delay timer
    clocksource/drivers: Add timer-of common init routine
    clocksource/drivers/tcb_clksrc: Save timer context on suspend/resume
    ...

    Linus Torvalds
     
  • on MMU targets EFAULT is possible here. Make both return 0 or error,
    passing what used to be the return value of flat_get_addr_from_rp()
    by reference.

    Signed-off-by: Al Viro

    Al Viro
     
  • Pull microblaze updates from Michal Simek:

    - timer fix

    - use simplified macro in dma.c

    - wire-up new syscall

    - remove asp-generic wrappers

    - fix MMU table handling

    - defconfig updates

    - low-level entry.S changes

    * tag 'microblaze-4.13-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
    microblaze: Fix MSR flags when returning from exception
    microblaze: Separate GP registers from MSR handling
    microblaze: Enabling CONFIG_BRIDGE in mmu_defconfig
    microblaze: Enabling CONFIGS related to MTD
    microblaze: Update defconfigs
    microblaze: mm: Flush TLB to ensure correct mapping when higmem ON
    microblaze: remove asm-generic wrapper headers
    microblaze: wire up statx syscall
    microblaze: Set ->min_delta_ticks and ->max_delta_ticks for timer
    microblaze: use sg_phys()

    Linus Torvalds
     

01 Jul, 2017

1 commit

  • Currently, internals of dma_common_mmap() is compiled out if build is
    done for either NOMMU or target which explicitly says it does not
    have/want coherent DMA mmap. It turned out that dma_common_mmap() can
    be handy in NOMMU setup (at least for ARM).

    This patch converts exitent NOMMU targets to use ARCH_NO_COHERENT_DMA_MMAP,
    thus when CONFIG_MMU is gone from dma_common_mmap() their behaviour stays
    unchanged.

    ARM is not converted to ARCH_NO_COHERENT_DMA_MMAP because it 1)
    already has mmap callback which can handle (at some extent) NOMMU 2)
    already defines dummy pgprot_noncached() for NOMMU build.

    c6x and frv stay untouched since they already have ARCH_NO_COHERENT_DMA_MMAP.

    Cc: Steven Miao
    Cc: Geert Uytterhoeven
    Cc: Michal Simek
    Cc: Yoshinori Sato
    Cc: Rich Felker
    Cc: Chris Zankel
    Cc: Max Filippov
    Suggested-by: Christoph Hellwig
    Signed-off-by: Vladimir Murzin
    Tested-by: Benjamin Gaignard

    Vladimir Murzin
     

29 Jun, 2017

1 commit

  • The only user of thread_saved_pc() in non-arch-specific code was removed
    in commit 8243d5597793 ("sched/core: Remove pointless printout in
    sched_show_task()"). Remove the implementations as well.

    Some architectures use thread_saved_pc() in their arch-specific code.
    Leave their thread_saved_pc() intact.

    Signed-off-by: Tobias Klauser
    Acked-by: Geert Uytterhoeven
    Cc: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Tobias Klauser
     

22 Jun, 2017

6 commits


20 Jun, 2017

1 commit


14 Jun, 2017

3 commits

  • The config option name is now renamed to 'TIMER_OF' for consistency with
    the CLOCKSOURCE_OF_DECLARE => TIMER_OF_DECLARE change.

    Signed-off-by: Daniel Lezcano
    Reviewed-by: Linus Walleij

    Daniel Lezcano
     
  • The function name is now renamed to 'timer_probe' for consistency with
    the CLOCKSOURCE_OF_DECLARE => TIMER_OF_DECLARE change.

    Signed-off-by: Daniel Lezcano
    Acked-by: Viresh Kumar
    Acked-by: Heiko Stuebner
    Reviewed-by: Linus Walleij

    Daniel Lezcano
     
  • The CLOCKSOURCE_OF_DECLARE macro is used widely for the timers to declare the
    clocksource at early stage. However, this macro is also used to initialize
    the clockevent if any, or the clockevent only.

    It was originally suggested to declare another macro to initialize a
    clockevent, so in order to separate the two entities even they belong to the
    same IP. This was not accepted because of the impact on the DT where splitting
    a clocksource/clockevent definition does not make sense as it is a Linux
    concept not a hardware description.

    On the other side, the clocksource has not interrupt declared while the
    clockevent has, so it is easy from the driver to know if the description is
    for a clockevent or a clocksource, IOW it could be implemented at the driver
    level.

    So instead of dealing with a named clocksource macro, let's use a more generic
    one: TIMER_OF_DECLARE.

    The patch has not functional changes.

    Signed-off-by: Daniel Lezcano
    Acked-by: Heiko Stuebner
    Acked-by: Neil Armstrong
    Acked-by: Arnd Bergmann
    Acked-by: Matthias Brugger
    Reviewed-by: Linus Walleij

    Daniel Lezcano