24 May, 2019

1 commit

  • Based on 1 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version this program is distributed in the
    hope that it will be useful but without any warranty without even
    the implied warranty of merchantability or fitness for a particular
    purpose see the gnu general public license for more details you
    should have received a copy of the gnu general public license along
    with this program if not write to the free software foundation inc
    675 mass ave cambridge ma 02139 usa

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

    has been chosen to replace the boilerplate/reference in 441 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Michael Ellerman (powerpc)
    Reviewed-by: Richard Fontana
    Reviewed-by: Allison Randal
    Reviewed-by: Kate Stewart
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190520071858.739733335@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

21 May, 2019

3 commits

  • Based on 2 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version this program is distributed in the
    hope that it will be useful but without any warranty without even
    the implied warranty of merchantability or fitness for a particular
    purpose see the gnu general public license for more details you
    should have received a copy of the gnu general public license along
    with this program if not see http www gnu org licenses

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation either version 2 of the license or at
    your option any later version this program is distributed in the
    hope that it will be useful but without any warranty without even
    the implied warranty of merchantability or fitness for a particular
    purpose see the gnu general public license for more details [based]
    [from] [clk] [highbank] [c] you should have received a copy of the
    gnu general public license along with this program if not see http
    www gnu org licenses

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

    has been chosen to replace the boilerplate/reference in 355 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Kate Stewart
    Reviewed-by: Jilayne Lovejoy
    Reviewed-by: Steve Winslow
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190519154041.837383322@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     
  • Add SPDX license identifiers to all Make/Kconfig files which:

    - Have no license information of any form

    These files fall under the project license, GPL v2 only. The resulting SPDX
    license identifier is:

    GPL-2.0-only

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     
  • Add SPDX license identifiers to all files which:

    - Have no license information of any form

    - Have MODULE_LICENCE("GPL*") inside which was used in the initial
    scan/conversion to ignore the file

    These files fall under the project license, GPL v2 only. The resulting SPDX
    license identifier is:

    GPL-2.0-only

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

15 May, 2019

1 commit

  • To facilitate additional options to get_user_pages_fast() change the
    singular write parameter to be gup_flags.

    This patch does not change any functionality. New functionality will
    follow in subsequent patches.

    Some of the get_user_pages_fast() call sites were unchanged because they
    already passed FOLL_WRITE or 0 for the write parameter.

    NOTE: It was suggested to change the ordering of the get_user_pages_fast()
    arguments to ensure that callers were converted. This breaks the current
    GUP call site convention of having the returned pages be the final
    parameter. So the suggestion was rejected.

    Link: http://lkml.kernel.org/r/20190328084422.29911-4-ira.weiny@intel.com
    Link: http://lkml.kernel.org/r/20190317183438.2057-4-ira.weiny@intel.com
    Signed-off-by: Ira Weiny
    Reviewed-by: Mike Marshall
    Cc: Aneesh Kumar K.V
    Cc: Benjamin Herrenschmidt
    Cc: Borislav Petkov
    Cc: Dan Williams
    Cc: "David S. Miller"
    Cc: Heiko Carstens
    Cc: Ingo Molnar
    Cc: James Hogan
    Cc: Jason Gunthorpe
    Cc: John Hubbard
    Cc: "Kirill A. Shutemov"
    Cc: Martin Schwidefsky
    Cc: Michal Hocko
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Ralf Baechle
    Cc: Rich Felker
    Cc: Thomas Gleixner
    Cc: Yoshinori Sato
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ira Weiny
     

09 May, 2019

1 commit

  • Rename the sparc documentation files to ReST, add an
    index for them and adjust in order to produce a nice html
    output via the Sphinx build system.

    There is an except from a document under oradax dir.
    It doesn't seem to make much sense to convert this one
    to ReST, so let's add it as an included document.

    At its new index.rst, let's add a :orphan: while this is not linked to
    the main index.rst file, in order to avoid build warnings.

    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: David S. Miller

    Mauro Carvalho Chehab
     

27 Dec, 2018

1 commit

  • Pull sparc updates from David Miller:

    - Automatic system call table generation, from Firoz Khan.

    - Clean up accesses to the OF device names by using full_name instead
    of path_component_name.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next:
    ALSA: sparc: Use of_node_name_eq for node name comparisons
    sbus: Use of_node_name_eq for node name comparisons
    sparc: generate uapi header and system call table files
    sparc: add system call table generation support
    sparc: add __NR_syscalls along with NR_syscalls
    sparc: move __IGNORE* entries to non uapi header
    sparc: Use DT node full_name instead of name for resources
    sparc: Remove unused leon_trans_init
    sparc: Use device_type helpers to access the node type
    sparc: Use of_node_name_eq for node name comparisons
    sparc: Convert to using %pOFn instead of device_node.name
    sparc: prom: use property "name" directly to construct node names
    of: Drop full path from full_name for PDT systems
    sparc: Convert to using %pOF instead of full_name
    fs/openpromfs: Use of_node_name_eq for node name comparisons
    fs/openpromfs: use full_name instead of path_component_name

    Linus Torvalds
     

06 Dec, 2018

1 commit


03 Dec, 2018

2 commits


08 Oct, 2018

2 commits


16 Jun, 2018

1 commit


16 May, 2018

1 commit

  • Nobody is using it anymore, and it's been abandoned. Since David
    is fine with removing it, kill it.

    Suggested-by: Christoph Hellwig
    Acked-by: David S. Miller
    Signed-off-by: Jens Axboe

    Jens Axboe
     

12 May, 2018

1 commit

  • Just kmap the bio single page payload before processing it.

    (and yes, now highmem on sparc32 anyway, but kmap_(un)map atomic are nops,
    so this gives the right example)

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Jens Axboe

    Christoph Hellwig
     

01 May, 2018

1 commit


02 Apr, 2018

1 commit

  • Each Oracle DAX CCB has a corresponding completion area, and the required
    number of areas must fit within a previously allocated array of completion
    areas beginning at the requested index. Since the completion area index
    is specified by a file offset, a user can pass arbitrary values, including
    negative numbers. So the index must be thoroughly range checked to prevent
    access to addresses outside the bounds of the allocated completion
    area array. The index cannot be negative, and it cannot exceed the
    total array size, less the number of CCBs requested. The old code did
    not check for negative values and was off by one on the upper bound.

    Signed-off-by: Rob Gardner
    Signed-off-by: Jonathan Helman
    Reported-by: Linus Torvalds
    Signed-off-by: David S. Miller

    Rob Gardner
     

18 Mar, 2018

1 commit

  • sparc:allmodconfig fails to build as follows.

    ERROR: "mdesc_release" [drivers/sbus/char/oradax.ko] undefined!
    ERROR: "sun4v_hvapi_register" [drivers/sbus/char/oradax.ko] undefined!
    ERROR: "mdesc_get_property" [drivers/sbus/char/oradax.ko] undefined!
    ERROR: "mdesc_node_by_name" [drivers/sbus/char/oradax.ko] undefined!
    ERROR: "mdesc_grab" [drivers/sbus/char/oradax.ko] undefined!
    ERROR: "sun4v_ccb_info" [drivers/sbus/char/oradax.ko] undefined!
    ERROR: "sun4v_ccb_submit" [drivers/sbus/char/oradax.ko] undefined!
    ERROR: "sun4v_ccb_kill" [drivers/sbus/char/oradax.ko] undefined!

    The symbols are only available with SPARC64 builds, thus the driver
    depends on it.

    Fixes: dd0273284c74 ("sparc64: Oracle DAX driver")
    Cc: Kees Cook
    Signed-off-by: Guenter Roeck
    Signed-off-by: David S. Miller

    Guenter Roeck
     

07 Feb, 2018

1 commit

  • Pull PCI updates from Bjorn Helgaas:

    - skip AER driver error recovery callbacks for correctable errors
    reported via ACPI APEI, as we already do for errors reported via the
    native path (Tyler Baicar)

    - fix DPC shared interrupt handling (Alex Williamson)

    - print full DPC interrupt number (Keith Busch)

    - enable DPC only if AER is available (Keith Busch)

    - simplify DPC code (Bjorn Helgaas)

    - calculate ASPM L1 substate parameter instead of hardcoding it (Bjorn
    Helgaas)

    - enable Latency Tolerance Reporting for ASPM L1 substates (Bjorn
    Helgaas)

    - move ASPM internal interfaces out of public header (Bjorn Helgaas)

    - allow hot-removal of VGA devices (Mika Westerberg)

    - speed up unplug and shutdown by assuming Thunderbolt controllers
    don't support Command Completed events (Lukas Wunner)

    - add AtomicOps support for GPU and Infiniband drivers (Felix Kuehling,
    Jay Cornwall)

    - expose "ari_enabled" in sysfs to help NIC naming (Stuart Hayes)

    - clean up PCI DMA interface usage (Christoph Hellwig)

    - remove PCI pool API (replaced with DMA pool) (Romain Perier)

    - deprecate pci_get_bus_and_slot(), which assumed PCI domain 0 (Sinan
    Kaya)

    - move DT PCI code from drivers/of/ to drivers/pci/ (Rob Herring)

    - add PCI-specific wrappers for dev_info(), etc (Frederick Lawler)

    - remove warnings on sysfs mmap failure (Bjorn Helgaas)

    - quiet ROM validation messages (Alex Deucher)

    - remove redundant memory alloc failure messages (Markus Elfring)

    - fill in types for compile-time VGA and other I/O port resources
    (Bjorn Helgaas)

    - make "pci=pcie_scan_all" work for Root Ports as well as Downstream
    Ports to help AmigaOne X1000 (Bjorn Helgaas)

    - add SPDX tags to all PCI files (Bjorn Helgaas)

    - quirk Marvell 9128 DMA aliases (Alex Williamson)

    - quirk broken INTx disable on Ceton InfiniTV4 (Bjorn Helgaas)

    - fix CONFIG_PCI=n build by adding dummy pci_irqd_intx_xlate() (Niklas
    Cassel)

    - use DMA API to get MSI address for DesignWare IP (Niklas Cassel)

    - fix endpoint-mode DMA mask configuration (Kishon Vijay Abraham I)

    - fix ARTPEC-6 incorrect IS_ERR() usage (Wei Yongjun)

    - add support for ARTPEC-7 SoC (Niklas Cassel)

    - add endpoint-mode support for ARTPEC (Niklas Cassel)

    - add Cadence PCIe host and endpoint controller driver (Cyrille
    Pitchen)

    - handle multiple INTx status bits being set in dra7xx (Vignesh R)

    - translate dra7xx hwirq range to fix INTD handling (Vignesh R)

    - remove deprecated Exynos PHY initialization code (Jaehoon Chung)

    - fix MSI erratum workaround for HiSilicon Hip06/Hip07 (Dongdong Liu)

    - fix NULL pointer dereference in iProc BCMA driver (Ray Jui)

    - fix Keystone interrupt-controller-node lookup (Johan Hovold)

    - constify qcom driver structures (Julia Lawall)

    - rework Tegra config space mapping to increase space available for
    endpoints (Vidya Sagar)

    - simplify Tegra driver by using bus->sysdata (Manikanta Maddireddy)

    - remove PCI_REASSIGN_ALL_BUS usage on Tegra (Manikanta Maddireddy)

    - add support for Global Fabric Manager Server (GFMS) event to
    Microsemi Switchtec switch driver (Logan Gunthorpe)

    - add IDs for Switchtec PSX 24xG3 and PSX 48xG3 (Kelvin Cao)

    * tag 'pci-v4.16-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (140 commits)
    PCI: cadence: Add EndPoint Controller driver for Cadence PCIe controller
    dt-bindings: PCI: cadence: Add DT bindings for Cadence PCIe endpoint controller
    PCI: endpoint: Fix EPF device name to support multi-function devices
    PCI: endpoint: Add the function number as argument to EPC ops
    PCI: cadence: Add host driver for Cadence PCIe controller
    dt-bindings: PCI: cadence: Add DT bindings for Cadence PCIe host controller
    PCI: Add vendor ID for Cadence
    PCI: Add generic function to probe PCI host controllers
    PCI: generic: fix missing call of pci_free_resource_list()
    PCI: OF: Add generic function to parse and allocate PCI resources
    PCI: Regroup all PCI related entries into drivers/pci/Makefile
    PCI/DPC: Reformat DPC register definitions
    PCI/DPC: Add and use DPC Status register field definitions
    PCI/DPC: Squash dpc_rp_pio_get_info() into dpc_process_rp_pio_error()
    PCI/DPC: Remove unnecessary RP PIO register structs
    PCI/DPC: Push dpc->rp_pio_status assignment into dpc_rp_pio_get_info()
    PCI/DPC: Squash dpc_rp_pio_print_error() into dpc_rp_pio_get_info()
    PCI/DPC: Make RP PIO log size check more generic
    PCI/DPC: Rename local "status" to "dpc_status"
    PCI/DPC: Squash dpc_rp_pio_print_tlp_header() into dpc_rp_pio_print_error()
    ...

    Linus Torvalds
     

30 Jan, 2018

1 commit

  • In case of error, the function class_create() returns ERR_PTR() and
    never returns NULL. The NULL test in the return value check should be
    replaced with IS_ERR().

    Fixes: dd0273284c74 ("sparc64: Oracle DAX driver")
    Signed-off-by: Wei Yongjun
    Signed-off-by: David S. Miller

    Wei Yongjun
     

23 Jan, 2018

1 commit

  • DAX is a coprocessor which resides on the SPARC M7 (DAX1) and M8
    (DAX2) processor chips, and has direct access to the CPU's L3 caches
    as well as physical memory. It can perform several operations on data
    streams with various input and output formats. This driver provides a
    transport mechanism and has limited knowledge of the various opcodes
    and data formats. A user space library provides high level services
    and translates these into low level commands which are then passed
    into the driver and subsequently the hypervisor and the coprocessor.
    The library is the recommended way for applications to use the
    coprocessor, and the driver interface is not intended for general use.

    Signed-off-by: Rob Gardner
    Signed-off-by: Jonathan Helman
    Signed-off-by: Sanath Kumar
    Signed-off-by: David S. Miller

    Rob Gardner
     

17 Jan, 2018

1 commit

  • pci_get_bus_and_slot() is restrictive such that it assumes domain=0 as
    where a PCI device is present. This restricts the device drivers to be
    reused for other domain numbers.

    Getting ready to remove pci_get_bus_and_slot() function in favor of
    pci_get_domain_bus_and_slot().

    Hard-coding the domain as 0 since domain information is not available.

    Signed-off-by: Sinan Kaya
    Signed-off-by: Bjorn Helgaas
    Acked-by: David S. Miller

    Sinan Kaya
     

18 Nov, 2017

1 commit

  • Pull sparc updates from David Miller:

    1) Add missing cmpxchg64() for 32-bit sparc.

    2) Timer conversions from Allen Pais and Kees Cook.

    3) vDSO support, from Nagarathnam Muthusamy.

    4) Fix sparc64 huge page table walks based upon bug report by Al Viro,
    from Nitin Gupta.

    5) Optimized fls() for T4 and above, from Vijay Kumar.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
    sparc64: Fix page table walk for PUD hugepages
    sparc64: Convert timers to user timer_setup()
    sparc64: convert mdesc_handle.refcnt from atomic_t to refcount_t
    sparc/led: Convert timers to use timer_setup()
    sparc64: Use sparc optimized fls and __fls for T4 and above
    sparc64: SPARC optimized __fls function
    sparc64: SPARC optimized fls function
    sparc64: Define SPARC default __fls function
    sparc64: Define SPARC default fls function
    vDSO for sparc
    sparc32: Add cmpxchg64().
    sbus: char: Move D7S_MINOR to include/linux/miscdevice.h
    sparc: time: Remove unneeded linux/miscdevice.h include
    sparc64: mmu_context: Add missing include files

    Linus Torvalds
     

02 Nov, 2017

1 commit

  • 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
     

28 Sep, 2017

1 commit


21 Jul, 2017

1 commit

  • Now that we have a custom printf format specifier, convert users of
    full_name to use %pOF instead. This is preparation to remove storing
    of the full path string for each node.

    Signed-off-by: Rob Herring
    Cc: "David S. Miller"
    Cc: sparclinux@vger.kernel.org
    Acked-by: David S. Miller
    Signed-off-by: David S. Miller

    Rob Herring
     

28 Jun, 2017

1 commit


09 Jun, 2017

1 commit

  • Currently we use nornal Linux errno values in the block layer, and while
    we accept any error a few have overloaded magic meanings. This patch
    instead introduces a new blk_status_t value that holds block layer specific
    status codes and explicitly explains their meaning. Helpers to convert from
    and to the previous special meanings are provided for now, but I suspect
    we want to get rid of them in the long run - those drivers that have a
    errno input (e.g. networking) usually get errnos that don't know about
    the special block layer overloads, and similarly returning them to userspace
    will usually return somethings that strictly speaking isn't correct
    for file system operations, but that's left as an exercise for later.

    For now the set of errors is a very limited set that closely corresponds
    to the previous overloaded errno values, but there is some low hanging
    fruite to improve it.

    blk_status_t (ab)uses the sparse __bitwise annotations to allow for sparse
    typechecking, so that we can easily catch places passing the wrong values.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Jens Axboe

    Christoph Hellwig
     

29 Mar, 2017

1 commit


25 Dec, 2016

1 commit


21 May, 2016

1 commit

  • Fix following warnings:
    openprom.c:510:2: warning: 'tmp' may be used uninitialized in this function [-Wmaybe-uninitialized]
    openprom.c:503:3: warning: 'str' may be used uninitialized in this function [-Wmaybe-uninitialized]
    openprom.c:459:8: warning: 'str' may be used uninitialized in this function [-Wmaybe-uninitialized]
    openprom.c:422:7: warning: 'str' may be used uninitialized in this function [-Wmaybe-uninitialized]

    Fixed by introducing PTR_ERR etc.
    This simplified the code as a nice side effect.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Sam Ravnborg
     

04 Jan, 2016

1 commit


16 Apr, 2015

1 commit

  • orderly_poweroff() unconditionally returns 0, so remove the dead code that
    checks the return value.

    A future patch will change the return type to void.

    Signed-off-by: Joel Stanley
    Acked-by: David S. Miller
    Cc: Fabian Frederick
    Cc: Benjamin Herrenschmidt
    Cc: Michael Ellerman
    Cc: Rusty Russell
    Cc: Jeremy Kerr
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joel Stanley
     

20 Oct, 2014

1 commit


06 Aug, 2014

1 commit


05 Aug, 2014

1 commit

  • Fix regression in bbc i2c temperature and fan control on some Sun systems
    that causes the driver to refuse to load due to the bbc_i2c_bussel resource not
    being present on the (second) i2c bus where the temperature sensors and fan
    control are located. (The check for the number of resources was removed when
    the driver was ported to a pure OF driver in mid 2008.)

    Signed-off-by: Christopher Alexander Tobias Schulze
    Signed-off-by: David S. Miller

    Christopher Alexander Tobias Schulze
     

22 Jul, 2014

2 commits

  • Flipping a bit doesn't need four lines of code; and gcc seems to
    actually generate two branches.

    Signed-off-by: Rasmus Villemoes
    Signed-off-by: David S. Miller

    Rasmus Villemoes
     
  • This patch moves data allocated using kzalloc to managed data allocated
    using devm_kzalloc and cleans now unnecessary kfrees in probe and remove
    functions. The header file is added to make the devm function explicitly
    available.

    The following Coccinelle semantic patch was used for making a part of
    the change:

    @platform@
    identifier p, probefn, removefn;
    @@
    struct platform_driver p = {
    .probe = probefn,
    .remove = removefn,
    };

    @prb@
    identifier platform.probefn, pdev;
    expression e, e1, e2;
    @@
    probefn(struct platform_device *pdev, ...) {
    dev, e1, e2)
    ...
    ?-kfree(e);
    ...+>
    }

    @rem depends on prb@
    identifier platform.removefn;
    expression e;
    @@
    removefn(...) {

    }

    Signed-off-by: Himangi Saraogi
    Acked-by: Julia Lawall
    Acked-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Himangi Saraogi
     

17 Apr, 2014

1 commit


21 Feb, 2014

1 commit