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
     

29 Mar, 2012

1 commit


13 Dec, 2010

1 commit


01 Dec, 2010

3 commits

  • sparc64 systems have a restriction in that passing in buffer
    addressses above 4GB to prom calls is not reliable.

    We end up violating this when we do prom console writes, because we
    use an on-stack buffer to translate '\n' into '\r\n'.

    So instead, do this translation into an intermediate buffer, which is
    in the kernel image and thus below 4GB, then pass that to the PROM
    console write calls.

    On the 32-bit side we don't have to deal with any of these issues, so
    the new prom_console_write_buf() uses the existing prom_nbputchar()
    implementation. However we can now mark those routines static.

    Since the 64-bit side completely uses new code we can delete the
    putchar bits as they are now completely unused.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Completely unused.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • This gets us closer to being able to eliminate the use
    of dynamic and stack based buffers, so that we can adhere
    to the "no buffer addresses above 4GB" rule for PROM calls.

    Signed-off-by: David S. Miller

    David S. Miller
     

18 Nov, 2010

1 commit


17 Nov, 2010

1 commit


24 Aug, 2010

1 commit

  • This is based upon a report by Meelis Roos showing that it's possible
    that we'll try to fetch a property that is 32K in size with some
    devices. With the current fixed 3K buffer we use for moving data in
    and out of the firmware during PROM calls, that simply won't work.

    In fact, it will scramble random kernel data during bootup.

    The reasoning behind the temporary buffer is entirely historical. It
    used to be the case that we had problems referencing dynamic kernel
    memory (including the stack) early in the boot process before we
    explicitly told the firwmare to switch us over to the kernel trap
    table.

    So what we did was always give the firmware buffers that were locked
    into the main kernel image.

    But we no longer have problems like that, so get rid of all of this
    indirect bounce buffering.

    Besides fixing Meelis's bug, this also makes the kernel data about 3K
    smaller.

    It was also discovered during these conversions that the
    implementation of prom_retain() was completely wrong, so that was
    fixed here as well. Currently that interface is not in use.

    Reported-by: Meelis Roos
    Tested-by: Meelis Roos
    Signed-off-by: David S. Miller

    David S. Miller
     

11 Feb, 2010

1 commit


05 Dec, 2008

1 commit

  • - all files with identical names copied and renamed to *_64.c
    - the remaning files copied as is
    - added sparc64 specific files to sparc/prom/Makefile
    - teach sparc64 Makefile to look into sparc/prom/
    - delete unused Makefile from sparc64/prom/

    linking order was not kept for sparc64 with this change.
    It was not possible to keep linking order for both sparc and sparc64
    and as sparc64 see more testing than sparc it was natural to
    break linking order on sparc64. Should it have any effect it
    would be detected sooner this way.

    printf_32.c and printf_64.c are obvious candidates to be merged
    but they are not 100% equal so that was left for later

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

    Sam Ravnborg