12 Oct, 2019

1 commit

  • Pull module fixes from Jessica Yu:
    "Code cleanups and kbuild/namespace related fixups from Masahiro.

    Most importantly, it fixes a namespace-related modpost issue for
    external module builds

    - Fix broken external module builds due to a modpost bug in
    read_dump(), where the namespace was not being strdup'd and
    sym->namespace would be set to bogus data.

    - Various namespace-related kbuild fixes and cleanups thanks to
    Masahiro Yamada"

    * tag 'modules-for-v5.4-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux:
    doc: move namespaces.rst from kbuild/ to core-api/
    nsdeps: make generated patches independent of locale
    nsdeps: fix hashbang of scripts/nsdeps
    kbuild: fix build error of 'make nsdeps' in clean tree
    module: rename __kstrtab_ns_* to __kstrtabns_* to avoid symbol conflict
    modpost: fix broken sym->namespace for external module builds
    module: swap the order of symbol.namespace
    scripts: add_namespace: Fix coccicheck failed

    Linus Torvalds
     

08 Oct, 2019

2 commits

  • We discussed a better location for this file, and agreed that
    core-api/ is a good fit. Rename it to symbol-namespaces.rst
    for disambiguation, and also add it to index.rst and MAINTAINERS.

    Signed-off-by: Masahiro Yamada
    Acked-by: Matthias Maennich
    Signed-off-by: Jessica Yu

    Masahiro Yamada
     
  • In most configurations, kmalloc() happens to return naturally aligned
    (i.e. aligned to the block size itself) blocks for power of two sizes.

    That means some kmalloc() users might unknowingly rely on that
    alignment, until stuff breaks when the kernel is built with e.g.
    CONFIG_SLUB_DEBUG or CONFIG_SLOB, and blocks stop being aligned. Then
    developers have to devise workaround such as own kmem caches with
    specified alignment [1], which is not always practical, as recently
    evidenced in [2].

    The topic has been discussed at LSF/MM 2019 [3]. Adding a
    'kmalloc_aligned()' variant would not help with code unknowingly relying
    on the implicit alignment. For slab implementations it would either
    require creating more kmalloc caches, or allocate a larger size and only
    give back part of it. That would be wasteful, especially with a generic
    alignment parameter (in contrast with a fixed alignment to size).

    Ideally we should provide to mm users what they need without difficult
    workarounds or own reimplementations, so let's make the kmalloc()
    alignment to size explicitly guaranteed for power-of-two sizes under all
    configurations. What this means for the three available allocators?

    * SLAB object layout happens to be mostly unchanged by the patch. The
    implicitly provided alignment could be compromised with
    CONFIG_DEBUG_SLAB due to redzoning, however SLAB disables redzoning for
    caches with alignment larger than unsigned long long. Practically on at
    least x86 this includes kmalloc caches as they use cache line alignment,
    which is larger than that. Still, this patch ensures alignment on all
    arches and cache sizes.

    * SLUB layout is also unchanged unless redzoning is enabled through
    CONFIG_SLUB_DEBUG and boot parameter for the particular kmalloc cache.
    With this patch, explicit alignment is guaranteed with redzoning as
    well. This will result in more memory being wasted, but that should be
    acceptable in a debugging scenario.

    * SLOB has no implicit alignment so this patch adds it explicitly for
    kmalloc(). The potential downside is increased fragmentation. While
    pathological allocation scenarios are certainly possible, in my testing,
    after booting a x86_64 kernel+userspace with virtme, around 16MB memory
    was consumed by slab pages both before and after the patch, with
    difference in the noise.

    [1] https://lore.kernel.org/linux-btrfs/c3157c8e8e0e7588312b40c853f65c02fe6c957a.1566399731.git.christophe.leroy@c-s.fr/
    [2] https://lore.kernel.org/linux-fsdevel/20190225040904.5557-1-ming.lei@redhat.com/
    [3] https://lwn.net/Articles/787740/

    [akpm@linux-foundation.org: documentation fixlet, per Matthew]
    Link: http://lkml.kernel.org/r/20190826111627.7505-3-vbabka@suse.cz
    Signed-off-by: Vlastimil Babka
    Reviewed-by: Matthew Wilcox (Oracle)
    Acked-by: Michal Hocko
    Acked-by: Kirill A. Shutemov
    Acked-by: Christoph Hellwig
    Cc: David Sterba
    Cc: Christoph Lameter
    Cc: Pekka Enberg
    Cc: David Rientjes
    Cc: Ming Lei
    Cc: Dave Chinner
    Cc: "Darrick J . Wong"
    Cc: Christoph Hellwig
    Cc: James Bottomley
    Cc: Vlastimil Babka
    Cc: Joonsoo Kim
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vlastimil Babka
     

26 Sep, 2019

1 commit

  • core-api should show all the various string functions including the newly
    added stracpy and stracpy_pad.

    Miscellanea:

    o Update the Returns: value for strscpy
    o fix a defect with %NUL)

    [joe@perches.com: correct return of -E2BIG descriptions]
    Link: http://lkml.kernel.org/r/29f998b4c1a9d69fbeae70500ba0daa4b340c546.1563889130.git.joe@perches.com
    Link: http://lkml.kernel.org/r/224a6ebf39955f4107c0c376d66155d970e46733.1563841972.git.joe@perches.com
    Signed-off-by: Joe Perches
    Reviewed-by: Kees Cook
    Cc: Jonathan Corbet
    Cc: Stephen Kitt
    Cc: Nitin Gote
    Cc: Rasmus Villemoes
    Cc: Jann Horn
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     

14 Sep, 2019

1 commit

  • Standard integer promotion is already done and %hx and %hhx is useless
    so do not encourage the use of %hh[xudi] or %h[xudi].

    As Linus said in:
    https://lore.kernel.org/lkml/CAHk-=wgoxnmsj8GEVFJSvTwdnWm8wVJthefNk2n6+4TC=20e0Q@mail.gmail.com/

    It's a pointless warning, making for more complex code, and
    making people remember esoteric printf format details that have no
    reason for existing.

    The "h" and "hh" things should never be used. The only reason for them
    being used if if you have an "int", but you want to print it out as a
    "char" (and honestly, that is a really bad reason, you'd be better off
    just using a proper cast to make the code more obvious).

    So if what you have a "char" (or unsigned char) you should always just
    print it out as an "int", knowing that the compiler already did the
    proper type conversion.

    Signed-off-by: Joe Perches
    Reviewed-by: Louis Taylor
    Signed-off-by: Jonathan Corbet

    Joe Perches
     

01 Aug, 2019

2 commits

  • The genindex logic is meant to be used only for html output, as
    pdf build has its own way to generate indexes.

    Signed-off-by: Mauro Carvalho Chehab
    Acked-by: Vinod Koul # dmaengine and soundwire
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     
  • The packing.txt file was misplaced, as docs should be part of
    a documentation book, and not at the root dir.

    So, move it to the core-api directory and add to its index.

    Also, ensure that the file will be properly parsed and the bitmap
    ascii artwork will use a monotonic font.

    Fixes: 554aae35007e ("lib: Add support for generic packing operations")
    Signed-off-by: Mauro Carvalho Chehab
    Reviewed-by: Vladimir Oltean
    Tested-by: Vladimir Oltean
    Reviewed-by: Mike Rapoport
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     

17 Jul, 2019

1 commit


15 Jul, 2019

3 commits

  • The stuff under sysctl describes /sys interface from userspace
    point of view. So, add it to the admin-guide and remove the
    :orphan: from its index file.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • The gcc_plugins.txt file is already a ReST file. Move it
    to the core-api book while renaming it.

    Signed-off-by: Mauro Carvalho Chehab
    Acked-by: Kees Cook

    Mauro Carvalho Chehab
     
  • Rename the /proc/sys/ documentation files to ReST, using the
    README file as a template for an index.rst, adding the other
    files there via TOC markup.

    Despite being written on different times with different
    styles, try to make them somewhat coherent with a similar
    look and feel, ensuring that they'll look nice as both
    raw text file and as via the html output produced by the
    Sphinx build system.

    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

    Mauro Carvalho Chehab
     

13 Jul, 2019

1 commit

  • This adds a new header to asm-generic to allow optionally instrumenting
    architecture-specific asm implementations of bitops.

    This change includes the required change for x86 as reference and
    changes the kernel API doc to point to bitops-instrumented.h instead.
    Rationale: the functions in x86's bitops.h are no longer the kernel API
    functions, but instead the arch_ prefixed functions, which are then
    instrumented via bitops-instrumented.h.

    Other architectures can similarly add support for asm implementations of
    bitops.

    The documentation text was derived from x86 and existing bitops
    asm-generic versions: 1) references to x86 have been removed; 2) as a
    result, some of the text had to be reworded for clarity and consistency.

    Tested using lib/test_kasan with bitops tests (pre-requisite patch).
    Bugzilla ref: https://bugzilla.kernel.org/show_bug.cgi?id=198439

    Link: http://lkml.kernel.org/r/20190613125950.197667-4-elver@google.com
    Signed-off-by: Marco Elver
    Acked-by: Mark Rutland
    Reviewed-by: Andrey Ryabinin
    Cc: Alexander Potapenko
    Cc: Andrey Konovalov
    Cc: Arnd Bergmann
    Cc: Borislav Petkov
    Cc: Dmitry Vyukov
    Cc: "H. Peter Anvin"
    Cc: Ingo Molnar
    Cc: Jonathan Corbet
    Cc: Josh Poimboeuf
    Cc: Peter Zijlstra (Intel)
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Marco Elver
     

10 Jul, 2019

1 commit

  • Pull Documentation updates from Jonathan Corbet:
    "It's been a relatively busy cycle for docs:

    - A fair pile of RST conversions, many from Mauro. These create more
    than the usual number of simple but annoying merge conflicts with
    other trees, unfortunately. He has a lot more of these waiting on
    the wings that, I think, will go to you directly later on.

    - A new document on how to use merges and rebases in kernel repos,
    and one on Spectre vulnerabilities.

    - Various improvements to the build system, including automatic
    markup of function() references because some people, for reasons I
    will never understand, were of the opinion that
    :c:func:``function()`` is unattractive and not fun to type.

    - We now recommend using sphinx 1.7, but still support back to 1.4.

    - Lots of smaller improvements, warning fixes, typo fixes, etc"

    * tag 'docs-5.3' of git://git.lwn.net/linux: (129 commits)
    docs: automarkup.py: ignore exceptions when seeking for xrefs
    docs: Move binderfs to admin-guide
    Disable Sphinx SmartyPants in HTML output
    doc: RCU callback locks need only _bh, not necessarily _irq
    docs: format kernel-parameters -- as code
    Doc : doc-guide : Fix a typo
    platform: x86: get rid of a non-existent document
    Add the RCU docs to the core-api manual
    Documentation: RCU: Add TOC tree hooks
    Documentation: RCU: Rename txt files to rst
    Documentation: RCU: Convert RCU UP systems to reST
    Documentation: RCU: Convert RCU linked list to reST
    Documentation: RCU: Convert RCU basic concepts to reST
    docs: filesystems: Remove uneeded .rst extension on toctables
    scripts/sphinx-pre-install: fix out-of-tree build
    docs: zh_CN: submitting-drivers.rst: Remove a duplicated Documentation/
    Documentation: PGP: update for newer HW devices
    Documentation: Add section about CPU vulnerabilities for Spectre
    Documentation: platform: Delete x86-laptop-drivers.txt
    docs: Note that :c:func: should no longer be used
    ...

    Linus Torvalds
     

09 Jul, 2019

1 commit

  • Pull RCU updates from Ingo Molnar:
    "The changes in this cycle are:

    - RCU flavor consolidation cleanups and optmizations

    - Documentation updates

    - Miscellaneous fixes

    - SRCU updates

    - RCU-sync flavor consolidation

    - Torture-test updates

    - Linux-kernel memory-consistency-model updates, most notably the
    addition of plain C-language accesses"

    * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (61 commits)
    tools/memory-model: Improve data-race detection
    tools/memory-model: Change definition of rcu-fence
    tools/memory-model: Expand definition of barrier
    tools/memory-model: Do not use "herd" to refer to "herd7"
    tools/memory-model: Fix comment in MP+poonceonces.litmus
    Documentation: atomic_t.txt: Explain ordering provided by smp_mb__{before,after}_atomic()
    rcu: Don't return a value from rcu_assign_pointer()
    rcu: Force inlining of rcu_read_lock()
    rcu: Fix irritating whitespace error in rcu_assign_pointer()
    rcu: Upgrade sync_exp_work_done() to smp_mb()
    rcutorture: Upper case solves the case of the vanishing NULL pointer
    torture: Suppress propagating trace_printk() warning
    rcutorture: Dump trace buffer for callback pipe drain failures
    torture: Add --trust-make to suppress "make clean"
    torture: Make --cpus override idleness calculations
    torture: Run kernel build in source directory
    torture: Add function graph-tracing cheat sheet
    torture: Capture qemu output
    rcutorture: Tweak kvm options
    rcutorture: Add trivial RCU implementation
    ...

    Linus Torvalds
     

28 Jun, 2019

1 commit


27 Jun, 2019

2 commits


25 Jun, 2019

1 commit


22 Jun, 2019

2 commits

  • This further unifies the accessors for the fast and coarse functions, so
    that the same types of functions are available for each. There was also
    a bit of confusion with the documentation, which prior advertised a
    function that has never existed. Finally, the vanilla ktime_get_coarse()
    was omitted from the API originally, so this fills this oversight.

    Signed-off-by: Jason A. Donenfeld
    Signed-off-by: Thomas Gleixner
    Reviewed-by: Arnd Bergmann
    Link: https://lkml.kernel.org/r/20190621203249.3909-3-Jason@zx2c4.com

    Jason A. Donenfeld
     
  • This makes boot uniformly boottime and tai uniformly clocktai, to
    address the remaining oversights.

    Signed-off-by: Jason A. Donenfeld
    Signed-off-by: Thomas Gleixner
    Reviewed-by: Arnd Bergmann
    Link: https://lkml.kernel.org/r/20190621203249.3909-2-Jason@zx2c4.com

    Jason A. Donenfeld
     

09 Jun, 2019

1 commit

  • This document is used by multiple architectures:

    $ echo $(git grep -l pkey_mprotect arch|cut -d'/' -f 2|sort|uniq)
    alpha arm arm64 ia64 m68k microblaze mips parisc powerpc s390 sh sparc x86 xtensa

    So, let's move it to the core book and adjust the links to it
    accordingly.

    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Jonathan Corbet

    Mauro Carvalho Chehab
     

08 Jun, 2019

1 commit


06 Jun, 2019

2 commits


29 May, 2019

1 commit


25 May, 2019

1 commit


15 May, 2019

1 commit

  • For better maintenance and expansion move the mathematic helpers to the
    separate folder.

    No functional change intended.

    Note, the int_sqrt() is not used as a part of lib, so, moved to regular
    obj.

    Link: http://lkml.kernel.org/r/20190323172531.80025-1-andriy.shevchenko@linux.intel.com
    Signed-off-by: Andy Shevchenko
    Signed-off-by: Mauro Carvalho Chehab
    Cc: Randy Dunlap
    Cc: Thierry Reding
    Cc: Lee Jones
    Cc: Daniel Thompson
    Cc: Ray Jui
    [mchehab+samsung@kernel.org: fix broken doc references for div64.c and gcd.c]
    Link: http://lkml.kernel.org/r/734f49bae5d4052b3c25691dfefad59bea2e5843.1555580999.git.mchehab+samsung@kernel.org
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     

09 May, 2019

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "A reasonably busy cycle for docs, including:

    - Lots of work on the Chinese and Italian translations

    - Some license-rules clarifications from Christoph

    - Various build-script fixes

    - A new document on memory models

    - RST conversion of the live-patching docs

    - The usual collection of typo fixes and corrections"

    * tag 'docs-5.2' of git://git.lwn.net/linux: (140 commits)
    docs/livepatch: Unify style of livepatch documentation in the ReST format
    docs: livepatch: convert docs to ReST and rename to *.rst
    scripts/documentation-file-ref-check: detect broken :doc:`foo`
    scripts/documentation-file-ref-check: don't parse Next/ dir
    LICENSES: Rename other to deprecated
    LICENSES: Clearly mark dual license only licenses
    docs: Don't reference the ZLib license in license-rules.rst
    docs/vm: Minor editorial changes in the THP and hugetlbfs
    docs/vm: add documentation of memory models
    doc:it_IT: translation alignment
    doc: fix typo in PGP guide
    dontdiff: update with Kconfig build artifacts
    docs/zh_CN: fix typos in 1.Intro.rst file
    docs/zh_CN: redirect CoC docs to Chinese version
    doc: mm: migration doesn't use FOLL_SPLIT anymore
    docs: doc-guide: remove the extension from .rst files
    doc: kselftest: Fix KBUILD_OUTPUT usage instructions
    docs: trace: fix some Sphinx warnings
    docs: speculation.txt: mark example blocks as such
    docs: ntb.txt: add blank lines to clean up some Sphinx warnings
    ...

    Linus Torvalds
     

08 May, 2019

1 commit

  • Pull printk updates from Petr Mladek:

    - Allow state reset of printk_once() calls.

    - Prevent crashes when dereferencing invalid pointers in vsprintf().
    Only the first byte is checked for simplicity.

    - Make vsprintf warnings consistent and inlined.

    - Treewide conversion of obsolete %pf, %pF to %ps, %pF printf
    modifiers.

    - Some clean up of vsprintf and test_printf code.

    * tag 'printk-for-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk:
    lib/vsprintf: Make function pointer_string static
    vsprintf: Limit the length of inlined error messages
    vsprintf: Avoid confusion between invalid address and value
    vsprintf: Prevent crash when dereferencing invalid pointers
    vsprintf: Consolidate handling of unknown pointer specifiers
    vsprintf: Factor out %pO handler as kobject_string()
    vsprintf: Factor out %pV handler as va_format()
    vsprintf: Factor out %p[iI] handler as ip_addr_string()
    vsprintf: Do not check address of well-known strings
    vsprintf: Consistent %pK handling for kptr_restrict == 0
    vsprintf: Shuffle restricted_pointer()
    printk: Tie printk_once / printk_deferred_once into .data.once for reset
    treewide: Switch printk users from %pf and %pF to %ps and %pS, respectively
    lib/test_printf: Switch to bitmap_zalloc()

    Linus Torvalds
     

26 Apr, 2019

2 commits

  • We are able to detect invalid values handled by %p[iI] printk specifier.
    The current error message is "invalid address". It might cause confusion
    against "(efault)" reported by the generic valid_pointer_address() check.

    Let's unify the style and use the more appropriate error code description
    "(einval)".

    Link: http://lkml.kernel.org/r/20190417115350.20479-10-pmladek@suse.com
    To: Rasmus Villemoes
    Cc: Linus Torvalds
    Cc: "Tobin C . Harding"
    Cc: Joe Perches
    Cc: Andrew Morton
    Cc: Michal Hocko
    Cc: Steven Rostedt
    Cc: Sergey Senozhatsky
    Cc: linux-kernel@vger.kernel.org
    Reviewed-by: Sergey Senozhatsky
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Petr Mladek

    Petr Mladek
     
  • We already prevent crash when dereferencing some obviously broken
    pointers. But the handling is not consistent. Sometimes we print "(null)"
    only for pure NULL pointer, sometimes for pointers in the first
    page and sometimes also for pointers in the last page (error codes).

    Note that printk() call this code under logbuf_lock. Any recursive
    printks are redirected to the printk_safe implementation and the messages
    are stored into per-CPU buffers. These buffers might be eventually flushed
    in printk_safe_flush_on_panic() but it is not guaranteed.

    This patch adds a check using probe_kernel_read(). It is not a full-proof
    test. But it should help to see the error message in 99% situations where
    the kernel would silently crash otherwise.

    Also it makes the error handling unified for "%s" and the many %p*
    specifiers that need to read the data from a given address. We print:

    + (null) when accessing data on pure pure NULL address
    + (efault) when accessing data on an invalid address

    It does not affect the %p* specifiers that just print the given address
    in some form, namely %pF, %pf, %pS, %ps, %pB, %pK, %px, and plain %p.

    Note that we print (efault) from security reasons. In fact, the real
    address can be seen only by %px or eventually %pK.

    Link: http://lkml.kernel.org/r/20190417115350.20479-9-pmladek@suse.com
    To: Rasmus Villemoes
    Cc: Linus Torvalds
    Cc: "Tobin C . Harding"
    Cc: Joe Perches
    Cc: Andrew Morton
    Cc: Michal Hocko
    Cc: Steven Rostedt
    Cc: Sergey Senozhatsky
    Cc: linux-kernel@vger.kernel.org
    Reviewed-by: Sergey Senozhatsky
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Petr Mladek

    Petr Mladek
     

03 Apr, 2019

1 commit

  • Only ia64-sn2 uses this as an optimization, and there it is of
    questionable correctness due to the mm_users==1 test.

    Remove it entirely.

    No change in behavior intended.

    Signed-off-by: Peter Zijlstra (Intel)
    Cc: Andrew Morton
    Cc: Andy Lutomirski
    Cc: Borislav Petkov
    Cc: Dave Hansen
    Cc: H. Peter Anvin
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Rik van Riel
    Cc: Thomas Gleixner
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     

02 Apr, 2019

1 commit


13 Mar, 2019

3 commits

  • Merge misc updates from Andrew Morton:

    - a few misc things

    - the rest of MM

    - remove flex_arrays, replace with new simple radix-tree implementation

    * emailed patches from Andrew Morton : (38 commits)
    Drop flex_arrays
    sctp: convert to genradix
    proc: commit to genradix
    generic radix trees
    selinux: convert to kvmalloc
    md: convert to kvmalloc
    openvswitch: convert to kvmalloc
    of: fix kmemleak crash caused by imbalance in early memory reservation
    mm: memblock: update comments and kernel-doc
    memblock: split checks whether a region should be skipped to a helper function
    memblock: remove memblock_{set,clear}_region_flags
    memblock: drop memblock_alloc_*_nopanic() variants
    memblock: memblock_alloc_try_nid: don't panic
    treewide: add checks for the return value of memblock_alloc*()
    swiotlb: add checks for the return value of memblock_alloc*()
    init/main: add checks for the return value of memblock_alloc*()
    mm/percpu: add checks for the return value of memblock_alloc*()
    sparc: add checks for the return value of memblock_alloc*()
    ia64: add checks for the return value of memblock_alloc*()
    arch: don't memset(0) memory returned by memblock_alloc()
    ...

    Linus Torvalds
     
  • All existing users have been converted to generic radix trees

    Link: http://lkml.kernel.org/r/20181217131929.11727-8-kent.overstreet@gmail.com
    Signed-off-by: Kent Overstreet
    Acked-by: Dave Hansen
    Cc: Alexey Dobriyan
    Cc: Al Viro
    Cc: Eric Paris
    Cc: Marcelo Ricardo Leitner
    Cc: Matthew Wilcox
    Cc: Neil Horman
    Cc: Paul Moore
    Cc: Pravin B Shelar
    Cc: Shaohua Li
    Cc: Stephen Smalley
    Cc: Vlad Yasevich
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kent Overstreet
     
  • Very simple radix tree implementation that supports storing arbitrary
    size entries, up to PAGE_SIZE - upcoming patches will convert existing
    flex_array users to genradixes. The new genradix code has a much
    simpler API and implementation, and doesn't have a hard limit on the
    number of elements like flex_array does.

    Link: http://lkml.kernel.org/r/20181217131929.11727-5-kent.overstreet@gmail.com
    Signed-off-by: Kent Overstreet
    Cc: Alexey Dobriyan
    Cc: Al Viro
    Cc: Dave Hansen
    Cc: Eric Paris
    Cc: Marcelo Ricardo Leitner
    Cc: Matthew Wilcox
    Cc: Neil Horman
    Cc: Paul Moore
    Cc: Pravin B Shelar
    Cc: Shaohua Li
    Cc: Stephen Smalley
    Cc: Vlad Yasevich
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kent Overstreet
     

12 Mar, 2019

1 commit

  • Pull XArray updates from Matthew Wilcox:
    "This pull request changes the xa_alloc() API. I'm only aware of one
    subsystem that has started trying to use it, and we agree on the fixup
    as part of the merge.

    The xa_insert() error code also changed to match xa_alloc() (EEXIST to
    EBUSY), and I added xa_alloc_cyclic(). Beyond that, the usual
    bugfixes, optimisations and tweaking.

    I now have a git tree with all users of the radix tree and IDR
    converted over to the XArray that I'll be feeding to maintainers over
    the next few weeks"

    * tag 'xarray-5.1-rc1' of git://git.infradead.org/users/willy/linux-dax:
    XArray: Fix xa_reserve for 2-byte aligned entries
    XArray: Fix xa_erase of 2-byte aligned entries
    XArray: Use xa_cmpxchg to implement xa_reserve
    XArray: Fix xa_release in allocating arrays
    XArray: Mark xa_insert and xa_reserve as must_check
    XArray: Add cyclic allocation
    XArray: Redesign xa_alloc API
    XArray: Add support for 1s-based allocation
    XArray: Change xa_insert to return -EBUSY
    XArray: Update xa_erase family descriptions
    XArray tests: RCU lock prohibits GFP_KERNEL

    Linus Torvalds
     

10 Mar, 2019

2 commits

  • Pull documentation updates from Jonathan Corbet:
    "A fairly routine cycle for docs - lots of typo fixes, some new
    documents, and more translations. There's also some LICENSES
    adjustments from Thomas"

    * tag 'docs-5.1' of git://git.lwn.net/linux: (74 commits)
    docs: Bring some order to filesystem documentation
    Documentation/locking/lockdep: Drop last two chars of sample states
    doc: rcu: Suspicious RCU usage is a warning
    docs: driver-api: iio: fix errors in documentation
    Documentation/process/howto: Update for 4.x -> 5.x versioning
    docs: Explicitly state that the 'Fixes:' tag shouldn't split lines
    doc: security: Add kern-doc for lsm_hooks.h
    doc: sctp: Merge and clean up rst files
    Docs: Correct /proc/stat path
    scripts/spdxcheck.py: fix C++ comment style detection
    doc: fix typos in license-rules.rst
    Documentation: fix admin-guide/README.rst minimum gcc version requirement
    doc: process: complete removal of info about -git patches
    doc: translations: sync translations 'remove info about -git patches'
    perf-security: wrap paragraphs on 72 columns
    perf-security: elaborate on perf_events/Perf privileged users
    perf-security: document collected perf_events/Perf data categories
    perf-security: document perf_events/Perf resource control
    sysfs.txt: add note on available attribute macros
    docs: kernel-doc: typo "if ... if" -> "if ... is"
    ...

    Linus Torvalds
     
  • Pull printk updates from Petr Mladek:

    - Allow to sort mixed lines by an extra information about the caller

    - Remove no longer used LOG_PREFIX.

    - Some clean up and documentation update.

    * tag 'printk-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk:
    printk/docs: Add extra integer types to printk-formats
    printk: Remove no longer used LOG_PREFIX.
    lib/vsprintf: Remove %pCr remnant in comment
    printk: Pass caller information to log_store().
    printk: Add caller information to printk() output.

    Linus Torvalds
     

04 Mar, 2019

1 commit

  • A few commonly used integer types were absent from this table, so add
    them.

    Link: https://github.com/ClangBuiltLinux/linux/issues/378
    Suggested-by: Nick Desaulniers
    Link: http://lkml.kernel.org/r/20190303123647.22020-1-louis@kragniz.eu
    Cc: pmladek@suse.com
    Cc: geert+renesas@glider.be
    Cc: andriy.shevchenko@linux.intel.com
    Cc: linux-doc@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Cc: clang-built-linux@googlegroups.com
    Cc: ndesaulniers@google.com
    Cc: jflat@chromium.org
    Cc: Louis Taylor
    Signed-off-by: Louis Taylor
    [pmladek@suse.com: sorted both variants the same way by size]
    Signed-off-by: Petr Mladek

    Louis Taylor