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
     

01 Jun, 2012

1 commit

  • The init/mount.o source files produce a number of sparse warnings of the
    type:

    warning: incorrect type in argument 1 (different address spaces)
    expected char [noderef] *dev_name
    got char *name

    This is due to the syscalls expecting some of the arguments to be user
    pointers but they are being passed as kernel pointers. This is harmless
    but adds a lot of noise to a sparse build.

    To limit the noise just disable the sparse checking in the relevant source
    files, but still display a warning so that the user knows this has been
    done.

    Since the sparse checking has been disabled we can also remove the __user
    __force casts that are scattered thru the source.

    Signed-off-by: H Hartley Sweeten
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    H Hartley Sweeten
     

27 Oct, 2010

1 commit

  • When calling syscall service routines in kernel, some of arguments should
    be user pointers but were missing __user markup on string literals. Add
    it. Removes some sparse warnings.

    Signed-off-by: Namhyung Kim
    Cc: Phillip Lougher
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Namhyung Kim
     

31 Mar, 2009

2 commits


22 Feb, 2009

1 commit


07 Jan, 2009

1 commit

  • The function autodetect_raid is only used by __init functions, and it refers
    to __initdata, so it needs __init markings. Fixes this error:
    The function autodetect_raid() references
    the variable __initdata raid_noautodetect.
    This is often because autodetect_raid lacks a __initdata
    annotation or the annotation of raid_noautodetect is wrong.

    Signed-off-by: Mike Frysinger
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Frysinger
     

02 Nov, 2008

1 commit

  • Removed duplicated #include in init/do_mounts_md.c.

    The same compile error ("error: implicit declaration of function
    'msleep'") got fixed twice:

    - f8b77d39397e1510b1a3bcfd385ebd1a45aae77f ("init/do_mounts_md.c:
    msleep compile fix")

    - 73b4a24f5ff09389ba6277c53a266b142f655ed2 ("init/do_mounts_md.c must
    #include ")

    by people adding the include in two slightly different
    places. Andrew's quilt scripts happily ignore the fuzz, and will
    re-apply the patch even though they had conflicts.

    Signed-off-by: Huang Weiyi
    Signed-off-by: Linus Torvalds

    Huang Weiyi
     

31 Oct, 2008

1 commit


17 Oct, 2008

1 commit

  • This patch fixes the following compile error caused by commit
    589f800bb12c5cd6c9167bbf9bf3cb70cd8e422c ("fastboot: make the raid
    autodetect code wait for all devices to init"):

    CC init/do_mounts_md.o
    init/do_mounts_md.c: In function 'autodetect_raid':
    init/do_mounts_md.c:285: error: implicit declaration of function 'msleep'
    make[2]: *** [init/do_mounts_md.o] Error 1

    Signed-off-by: Adrian Bunk
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     

12 Oct, 2008

4 commits

  • RAID autodetect has the side effect of requiring synchronisation
    of all device drivers, which can make the boot several seconds longer
    (I've measured 7 on one of my laptops).... even for systems that don't
    have RAID setup for the root filesystem (the only FS where this matters).

    This patch makes the default for autodetect a config option; either way
    the user can always override via the kernel command line.

    Signed-off-by: Arjan van de Ven
    Acked-by: NeilBrown

    Arjan van de Ven
     
  • fix warning:

    init/do_mounts_md.c: In function ‘md_run_setup’:
    init/do_mounts_md.c:282: warning: ISO C90 forbids mixed declarations and code

    also, use the opportunity to put the RAID autodetection code
    into a separate function - this also solves a checkpatch style warning.

    No code changed:

    md5:
    aa36a35faef371b05f1974ad583bdbbd do_mounts_md.o.before.asm
    aa36a35faef371b05f1974ad583bdbbd do_mounts_md.o.after.asm

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • As requested/suggested by Neil Brown: make the raid code print that it's
    about to wait for probing to be done as well as give a suggestion on how
    to disable the probing if the user doesn't use raid.

    Signed-off-by: Arjan van de Ven <arjan@linux.intel.com

    Arjan van de Ven
     
  • The raid autodetect code really needs to have all devices probed before
    it can detect raid arrays; not doing so would give rather messy situations
    where arrays would get detected as degraded while they shouldn't be etc.

    This is in preparation of removing the "wait for everything to init"
    code that makes everyone pay, not just raid users.

    Signed-off-by: Arjan van de Ven

    Arjan van de Ven
     

25 May, 2008

1 commit


29 Apr, 2008

1 commit


03 Oct, 2006

1 commit

  • Once upon a time we needed to fixed limit to the number of md devices,
    probably because we preallocated some array. This need no longer exists, but
    we still have an arbitrary limit.

    So remove MAX_MD_DEVS and allow as many devices as we can fit into the 'minor'
    part of a device number.

    Also remove some useless noise at init time (which reports MAX_MD_DEVS) and
    remove MD_THREAD_NAME_MAX which hasn't been used for a while.

    Signed-off-by: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    NeilBrown
     

27 Jun, 2006

1 commit


07 Jan, 2006

1 commit

  • md supports multiple different RAID level, each being implemented by a
    'personality' (which is often in a separate module).

    These personalities have fairly artificial 'numbers'. The numbers
    are use to:
    1- provide an index into an array where the various personalities
    are recorded
    2- identify the module (via an alias) which implements are particular
    personality.

    Neither of these uses really justify the existence of personality numbers.
    The array can be replaced by a linked list which is searched (array lookup
    only happens very rarely). Module identification can be done using an alias
    based on level rather than 'personality' number.

    The current 'raid5' modules support two level (4 and 5) but only one
    personality. This slight awkwardness (which was handled in the mapping from
    level to personality) can be better handled by allowing raid5 to register 2
    personalities.

    With this change in place, the core md module does not need to have an
    exhaustive list of all possible personalities, so other personalities can be
    added independently.

    This patch also moves the check for chunksize being non-zero into the ->run
    routines for the personalities that need it, rather than having it in core-md.
    This has a side effect of allowing 'faulty' and 'linear' not to have a
    chunk-size set.

    Signed-off-by: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    NeilBrown
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds