15 Oct, 2019

1 commit

  • Commit 8974558f49a6 ("mm, page_owner, debug_pagealloc: save and dump
    freeing stack trace") enhanced page_owner to also store freeing stack
    trace, when debug_pagealloc is also enabled. KASAN would also like to
    do this [1] to improve error reports to debug e.g. UAF issues.

    Kirill has suggested that the freeing stack trace saving should be also
    possible to be enabled separately from KASAN or debug_pagealloc, i.e.
    with an extra boot option. Qian argued that we have enough options
    already, and avoiding the extra overhead is not worth the complications
    in the case of a debugging option. Kirill noted that the extra stack
    handle in struct page_owner requires 0.1% of memory.

    This patch therefore enables free stack saving whenever page_owner is
    enabled, regardless of whether debug_pagealloc or KASAN is also enabled.
    KASAN kernels booted with page_owner=on will thus benefit from the
    improved error reports.

    [1] https://bugzilla.kernel.org/show_bug.cgi?id=203967

    [vbabka@suse.cz: v3]
    Link: http://lkml.kernel.org/r/20191007091808.7096-3-vbabka@suse.cz
    Link: http://lkml.kernel.org/r/20190930122916.14969-3-vbabka@suse.cz
    Signed-off-by: Vlastimil Babka
    Reviewed-by: Qian Cai
    Suggested-by: Dmitry Vyukov
    Suggested-by: Walter Wu
    Suggested-by: Andrey Ryabinin
    Suggested-by: Kirill A. Shutemov
    Suggested-by: Qian Cai
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vlastimil Babka
     

02 Oct, 2019

1 commit

  • Let the user specify an optional TARGETS skiplist through the new optional
    SKIP_TARGETS Makefile variable.

    It is easier to skip at will using a reduced and well defined list of
    possibly problematic targets with SKIP_TARGETS than to provide a partially
    stripped down list of good targets using the usual TARGETS variable.

    Signed-off-by: Cristian Marussi
    Signed-off-by: Shuah Khan

    Cristian Marussi
     

23 Jul, 2019

1 commit


20 Jul, 2019

1 commit


17 Jul, 2019

1 commit


13 Jul, 2019

1 commit

  • Wikipedia now has a main article to "tracing garbage collector" topic.
    Change the URL and use the reStructuredText syntax for hyperlinks and add
    more details about the use of the tool. Add a section about how to use
    the kmemleak-test module to test the memory leak scanning.

    Link: http://lkml.kernel.org/r/20190612155231.19448-2-andrealmeid@collabora.com
    Signed-off-by: André Almeida
    Acked-by: Catalin Marinas
    Cc: Jonathan Corbet
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    André Almeida
     

15 May, 2019

1 commit

  • Document some things of note to gcov users:
    1. GCC gcov and Clang llvm-cov tools are not compatible.
    2. The use of GCC vs Clang is transparent at build-time.

    Also adjust the documentation to account for the removal of config symbol
    CONFIG_GCOV_FORMAT_AUTODETECT by commit 6a61b70b43c9 ("gcov: remove
    CONFIG_GCOV_FORMAT_AUTODETECT").

    Link: http://lkml.kernel.org/r/20190318025411.98014-4-trong@android.com
    Signed-off-by: Tri Vo
    Reviewed-by: Peter Oberparleiter
    Cc: Daniel Mentz
    Cc: Greg Hackmann
    Cc: Nick Desaulniers
    Cc: Petri Gynther
    Cc: Prasad Sodagudi
    Cc: Trilok Soni
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tri Vo
     

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
     

20 Apr, 2019

1 commit

  • Fix KBUILD_OUTPUT usage instructions. The current documentation is
    incorrect. Update and fix outdated information about summary option.
    Add a reference to kselftest wiki for additional information on the
    framework and tips on writing new tests.

    Signed-off-by: Shuah Khan
    Signed-off-by: Jonathan Corbet

    Shuah Khan
     

09 Apr, 2019

1 commit

  • kselftest runs as a userspace process. Sometimes we need to test things
    from kernel space. One way of doing this is by creating a test module.
    Currently doing so requires developers to write a bunch of boiler plate
    in the module if kselftest is to be used to run the tests. This means
    we currently have a load of duplicate code to achieve these ends. If we
    have a uniform method for implementing test modules then we can reduce
    code duplication, ensure uniformity in the test framework, ease code
    maintenance, and reduce the work required to create tests. This all
    helps to encourage developers to write and run tests.

    Add a C header file that can be included in test modules. This provides
    a single point for common test functions/macros. Implement a few macros
    that make up the start of the test framework.

    Add documentation for new kselftest header to kselftest documentation.

    Acked-by: Kees Cook
    Signed-off-by: Tobin C. Harding
    Signed-off-by: Shuah Khan

    Tobin C. Harding
     

15 Jan, 2019

1 commit


30 Dec, 2018

1 commit

  • Pull documentation update from Jonathan Corbet:
    "A fairly normal cycle for documentation stuff. We have a new document
    on perf security, more Italian translations, more improvements to the
    memory-management docs, improvements to the pathname lookup
    documentation, and the usual array of smaller fixes.

    As is often the case, there are a few reaches outside of
    Documentation/ to adjust kerneldoc comments"

    * tag 'docs-5.0' of git://git.lwn.net/linux: (38 commits)
    docs: improve pathname-lookup document structure
    configfs: fix wrong name of struct in documentation
    docs/mm-api: link slab_common.c to "The Slab Cache" section
    slab: make kmem_cache_create{_usercopy} description proper kernel-doc
    doc:process: add links where missing
    docs/core-api: make mm-api.rst more structured
    x86, boot: documentation whitespace fixup
    Documentation: devres: note checking needs when converting
    doc:it: add some process/* translations
    doc:it: fixes in process/1.Intro
    Documentation: convert path-lookup from markdown to resturctured text
    Documentation/admin-guide: update admin-guide index.rst
    Documentation/admin-guide: introduce perf-security.rst file
    scripts/kernel-doc: Fix struct and struct field attribute processing
    Documentation: dev-tools: Fix typos in index.rst
    Correct gen_init_cpio tool's documentation
    Document /proc/pid PID reuse behavior
    Documentation: update path-lookup.md for parallel lookups
    Documentation: Use "while" instead of "whilst"
    dmaengine: Add mailing list address to the documentation
    ...

    Linus Torvalds
     

29 Dec, 2018

1 commit

  • This patch updates KASAN documentation to reflect the addition of the new
    tag-based mode.

    Link: http://lkml.kernel.org/r/aabef9de317c54b8a3919a4946ce534c6576726a.1544099024.git.andreyknvl@google.com
    Signed-off-by: Andrey Konovalov
    Reviewed-by: Andrey Ryabinin
    Reviewed-by: Dmitry Vyukov
    Cc: Christoph Lameter
    Cc: Mark Rutland
    Cc: Will Deacon
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrey Konovalov
     

07 Dec, 2018

1 commit

  • Some documents are refering to others without links. With this
    patch I add those missing links.

    This patch affects only documents under process/ and labels where
    necessary.

    Signed-off-by: Federico Vaga
    Signed-off-by: Jonathan Corbet

    Federico Vaga
     

26 Nov, 2018

1 commit


08 Nov, 2018

1 commit


01 Sep, 2018

2 commits


29 Jun, 2018

1 commit


28 Apr, 2018

1 commit


17 Apr, 2018

2 commits

  • Mike Rapoport says:

    These patches convert files in Documentation/vm to ReST format, add an
    initial index and link it to the top level documentation.

    There are no contents changes in the documentation, except few spelling
    fixes. The relatively large diffstat stems from the indentation and
    paragraph wrapping changes.

    I've tried to keep the formatting as consistent as possible, but I could
    miss some places that needed markup and add some markup where it was not
    necessary.

    [jc: significant conflicts in vm/hmm.rst]

    Jonathan Corbet
     
  • Signed-off-by: Mike Rapoport
    Signed-off-by: Jonathan Corbet

    Mike Rapoport
     

04 Apr, 2018

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "There's been a fair amount of activity in Documentation/ this time
    around:

    - Lots of work aligning Documentation/ABI with reality, done by
    Aishwarya Pant.

    - The trace documentation has been converted to RST by Changbin Du

    - I thrashed up kernel-doc to deal with a parsing issue and to try to
    make the code more readable. It's still a 20+-year-old Perl hack,
    though.

    - Lots of other updates, typo fixes, and more"

    * tag 'docs-4.17' of git://git.lwn.net/linux: (82 commits)
    Documentation/process: update FUSE project website
    docs: kernel-doc: fix parsing of arrays
    dmaengine: Fix spelling for parenthesis in dmatest documentation
    dmaengine: Make dmatest.rst indeed reST compatible
    dmaengine: Add note to dmatest documentation about supported channels
    Documentation: magic-numbers: Fix typo
    Documentation: admin-guide: add kvmconfig, xenconfig and tinyconfig commands
    Input: alps - Update documentation for trackstick v3 format
    Documentation: Mention why %p prints ptrval
    COPYING: use the new text with points to the license files
    COPYING: create a new file with points to the Kernel license files
    Input: trackpoint: document sysfs interface
    xfs: Change URL for the project in xfs.txt
    char/bsr: add sysfs interface documentation
    acpi: nfit: document sysfs interface
    block: rbd: update sysfs interface
    Documentation/sparse: fix typo
    Documentation/CodingStyle: Add an example for braces
    docs/vm: update 00-INDEX
    kernel-doc: Remove __sched markings
    ...

    Linus Torvalds
     

21 Mar, 2018

1 commit


22 Feb, 2018

1 commit


18 Nov, 2017

2 commits

  • …asahiroy/linux-kbuild

    Pull Kbuild misc updates from Masahiro Yamada:

    - Clean up and fix RPM package build

    - Fix a warning in DEB package build

    - Improve coccicheck script

    - Improve some semantic patches

    * tag 'kbuild-misc-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    docs: dev-tools: coccinelle: delete out of date wiki reference
    coccinelle: orplus: reorganize to improve performance
    coccinelle: use exists to improve efficiency
    builddeb: Pass the kernel:debarch substvar to dpkg-genchanges
    Coccinelle: use false positive annotation
    coccinelle: fix verbose message about .cocci file being run
    coccinelle: grep Options and Requires fields more precisely
    Coccinelle: make DEBUG_FILE option more useful
    coccinelle: api: detect identical chip data arrays
    coccinelle: Improve setup_timer.cocci matching
    Coccinelle: setup_timer: improve messages from setup_timer
    kbuild: rpm-pkg: do not force -jN in submake
    kbuild: rpm-pkg: keep spec file until make mrproper
    kbuild: rpm-pkg: fix jobserver unavailable warning
    kbuild: rpm-pkg: replace $RPM_BUILD_ROOT with %{buildroot}
    kbuild: rpm-pkg: fix build error when CONFIG_MODULES is disabled
    kbuild: rpm-pkg: refactor mkspec with here doc
    kbuild: rpm-pkg: clean up mkspec
    kbuild: rpm-pkg: install vmlinux.bz2 unconditionally
    kbuild: rpm-pkg: remove ppc64 specific image handling

    Linus Torvalds
     
  • The updated documentation describes new KCOV mode for collecting
    comparison operands.

    Link: http://lkml.kernel.org/r/20171011095459.70721-3-glider@google.com
    Signed-off-by: Victor Chibotaru
    Signed-off-by: Alexander Potapenko
    Cc: Dmitry Vyukov
    Cc: Andrey Konovalov
    Cc: Mark Rutland
    Cc: Alexander Popov
    Cc: Andrey Ryabinin
    Cc: Kees Cook
    Cc: Vegard Nossum
    Cc: Quentin Casasnovas
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Victor Chibotaru
     

16 Nov, 2017

2 commits


20 Oct, 2017

1 commit


13 Oct, 2017

1 commit


18 Jul, 2017

2 commits

  • commit 6807c84652b0 ("x86: Enable KASLR by default") enables KASLR
    by default on x86. While KASLR will confuse gdb which resolve kernel
    symbol address from symbol table of vmlinux. We should turn off KASLR for
    kernel debugging.

    Signed-off-by: Zhouyi Zhou
    Reviewed-by: Kieran Bingham
    Acked-by: Jan Kiszka
    Signed-off-by: Jonathan Corbet

    Zhouyi Zhou
     
  • commit 6807c84652b0 ("x86: Enable KASLR by default") enables KASLR
    by default on x86. While KASLR will confuse gdb which resolve kernel
    symbol address from symbol table of vmlinux. We should turn off KASLR for
    kernel debugging.

    Signed-off-by: Zhouyi Zhou
    Signed-off-by: Jonathan Corbet

    Zhouyi Zhou
     

08 Jul, 2017

1 commit

  • …x/kernel/git/shuah/linux-kselftest

    Pull Kselftest updates from Shuah Khan:
    "This update consists of:

    - TAP13 framework and changes to some tests to convert to TAP13.
    Converting kselftest output to standard format will help identify
    run to run differences and pin point failures easily. TAP13 format
    has been in use for several years and the output is human friendly.

    Please find the specification:
    https://testanything.org/tap-version-13-specification.html

    Credit goes to Tim Bird for recommending TAP13 as a suitable
    format, and to Grag KH for kick starting the work with help from
    Paul Elder and Alice Ferrazzi

    The first phase of the TAp13 conversion is included in this update.
    Future updates will include updates to rest of the tests.

    - Masami Hiramatsu fixed ftrace to run on 4.9 stable kernels.

    - Kselftest documnetation has been converted to ReST format. Document
    now has a new home under Documentation/dev-tools.

    - kselftest_harness.h is now available for general use as a result of
    Mickaël Salaün's work.

    - Several fixes to skip and/or fail tests gracefully on older
    releases"

    * tag 'linux-kselftest-4.13-rc1-update' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest: (48 commits)
    selftests: membarrier: use ksft_* var arg msg api
    selftests: breakpoints: breakpoint_test_arm64: convert test to use TAP13
    selftests: breakpoints: step_after_suspend_test use ksft_* var arg msg api
    selftests: breakpoint_test: use ksft_* var arg msg api
    kselftest: add ksft_print_msg() function to output general information
    kselftest: make ksft_* output functions variadic
    selftests/capabilities: Fix the test_execve test
    selftests: intel_pstate: add .gitignore
    selftests: fix memory-hotplug test
    selftests: add missing test name in memory-hotplug test
    selftests: check percentage range for memory-hotplug test
    selftests: check hot-pluggagble memory for memory-hotplug test
    selftests: typo correction for memory-hotplug test
    selftests: ftrace: Use md5sum to take less time of checking logs
    tools/testing/selftests/sysctl: Add pre-check to the value of writes_strict
    kselftest.rst: do some adjustments after ReST conversion
    selftest/net/Makefile: Specify output with $(OUTPUT)
    selftest/intel_pstate/aperf: Use LDLIBS instead of LDFLAGS
    selftest/memfd/Makefile: Fix build error
    selftests: lib: Skip tests on missing test modules
    ...

    Linus Torvalds
     

07 Jul, 2017

1 commit

  • Kmemleak requires that vmalloc'ed objects have a minimum reference count
    of 2: one in the corresponding vm_struct object and the other owned by
    the vmalloc() caller. There are cases, however, where the original
    vmalloc() returned pointer is lost and, instead, a pointer to vm_struct
    is stored (see free_thread_stack()). Kmemleak currently reports such
    objects as leaks.

    This patch adds support for treating any surplus references to an object
    as additional references to a specified object. It introduces the
    kmemleak_vmalloc() API function which takes a vm_struct pointer and sets
    its surplus reference passing to the actual vmalloc() returned pointer.
    The __vmalloc_node_range() calling site has been modified accordingly.

    Link: http://lkml.kernel.org/r/1495726937-23557-4-git-send-email-catalin.marinas@arm.com
    Signed-off-by: Catalin Marinas
    Reported-by: "Luis R. Rodriguez"
    Cc: Michal Hocko
    Cc: Andy Lutomirski
    Cc: "Luis R. Rodriguez"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Catalin Marinas
     

04 Jul, 2017

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "There has been a fair amount of activity in the docs tree this time
    around. Highlights include:

    - Conversion of a bunch of security documentation into RST

    - The conversion of the remaining DocBook templates by The Amazing
    Mauro Machine. We can now drop the entire DocBook build chain.

    - The usual collection of fixes and minor updates"

    * tag 'docs-4.13' of git://git.lwn.net/linux: (90 commits)
    scripts/kernel-doc: handle DECLARE_HASHTABLE
    Documentation: atomic_ops.txt is core-api/atomic_ops.rst
    Docs: clean up some DocBook loose ends
    Make the main documentation title less Geocities
    Docs: Use kernel-figure in vidioc-g-selection.rst
    Docs: fix table problems in ras.rst
    Docs: Fix breakage with Sphinx 1.5 and upper
    Docs: Include the Latex "ifthen" package
    doc/kokr/howto: Only send regression fixes after -rc1
    docs-rst: fix broken links to dynamic-debug-howto in kernel-parameters
    doc: Document suitability of IBM Verse for kernel development
    Doc: fix a markup error in coding-style.rst
    docs: driver-api: i2c: remove some outdated information
    Documentation: DMA API: fix a typo in a function name
    Docs: Insert missing space to separate link from text
    doc/ko_KR/memory-barriers: Update control-dependencies example
    Documentation, kbuild: fix typo "minimun" -> "minimum"
    docs: Fix some formatting issues in request-key.rst
    doc: ReSTify keys-trusted-encrypted.txt
    doc: ReSTify keys-request-key.txt
    ...

    Linus Torvalds
     

27 Jun, 2017

1 commit


09 Jun, 2017

1 commit

  • The sparse-based checking for non-RCU accesses to RCU-protected pointers
    has been around for a very long time, and it is now the only type of
    sparse-based checking that is optional. This commit therefore makes
    it unconditional.

    Reported-by: Ingo Molnar
    Signed-off-by: Paul E. McKenney
    Cc: Fengguang Wu

    Paul E. McKenney
     

08 Jun, 2017

2 commits