Skip to content
Permalink
Tree: 123906095e
Commits on Jun 18, 2018
  1. kmsan: introduce kmsan_interrupt_enter()/kmsan_interrupt_exit()

    ramosian-glider committed Jun 18, 2018
    preempt_count() and the percpu |irq_count| var can't be used to
    reliably tell whether we're in the interrupt context.
    For example, __do_softirq() is entered with in_task()==true, despite
    we soon switch to the interrupt stack.
    
    To simplify tracking IRQ entry/exit, we add calls to KMSAN runtime
    around do_IRQ() in entry64.S
    
    A similar approach is taken in google/ktsan@f213f1b
Commits on Jun 14, 2018
  1. kmsan: fix off-by-one error in map_pages()

    ramosian-glider committed Jun 14, 2018
    fixes 0064ced ("kmsan: don't track
    pages used for memory compaction")
  2. kmsan: don't track pages used for memory compaction

    ramosian-glider committed Jun 14, 2018
    TODO(glider): track them
Commits on Jun 13, 2018
  1. kmsan: unpoison virtio input buffers when adding them to to virtqueue

    ramosian-glider committed Jun 13, 2018
    It's hard (and too late already) to figure out the memory range to
    be unpoisoned when we receive something via virtio.
    Instead, we unpoison the input buffer before putting it into the
    virtqueue.
Commits on Jun 12, 2018
Commits on Jun 11, 2018
  1. kmsan: better virtio handling

    ramosian-glider committed Jun 11, 2018
    Unpoison only the actually received bytes in virtnet_receive()
    Don't unpoison the memory in virtqueue_get_buf_ctx()
Commits on Jun 8, 2018
  1. kmsan: copy shadow/origins for COWed pages

    ramosian-glider committed Jun 8, 2018
    Fixes the following case:
    
    process_vm_readv(0xfd2, 0x20000440, 0x1, 0x200006c0, 0x1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) = 0x2800
    clone(child_stack=0x20fbf000, flags=CLONE_FS) = 4052
    gettid()                                = 4050
    process_vm_readv(0xfd2, 0x20000440, 0x1, 0x200006c0, 0x1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) = 0x2800
Commits on Jun 7, 2018
  1. kmsan: unpoison data in pdu_read()

    ramosian-glider committed Jun 7, 2018
    This removes a bunch of reports in 9P, but for some reason the
    9P-enabled kernel still doesn't boot with KMSAN.
  2. [NON-UPSTREAM] crypto: remove several VLAs

    ramosian-glider committed Jun 7, 2018
    Patch from https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git/commit/?id=6650c4de681ee9
    
    We avoid various VLAs[1] by using constant expressions for block size
    and alignment mask.
    
    [1] http://lkml.kernel.org/r/CA+55aFzCG-zNmZwX4A2FQpadafLfEzK6CC=qPXydAacU1RqZWA@mail.gmail.com
    
    Signed-off-by: Salvatore Mesoraca <s.mesoraca16@gmail.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  3. [NON-UPSTREAM] crypto: api - laying defines and checks for statically…

    ramosian-glider committed Jun 7, 2018
    … allocated buffers
    
    Patch from https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git/commit/?id=13c935bb09948a
    
    In preparation for the removal of VLAs[1] from crypto code.
    We create 2 new compile-time constants: all ciphers implemented
    in Linux have a block size less than or equal to 16 bytes and
    the most demanding hw require 16 bytes alignment for the block
    buffer.
    We also enforce these limits in crypto_check_alg when a new
    cipher is registered.
    
    [1] http://lkml.kernel.org/r/CA+55aFzCG-zNmZwX4A2FQpadafLfEzK6CC=qPXydAacU1RqZWA@mail.gmail.com
    
    Signed-off-by: Salvatore Mesoraca <s.mesoraca16@gmail.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  4. Revert "x86: Force asm-goto"

    ramosian-glider committed Jun 7, 2018
    This reverts commit e501ce9.
  5. Revert "x86: Remove FAST_FEATURE_TESTS"

    ramosian-glider committed Jun 7, 2018
    This reverts commit d026604.
  6. Revert "locking/atomic/x86: Switch atomic.h to use atomic-instrumente…

    ramosian-glider committed May 8, 2018
    …d.h"
    
    This reverts commit 8bf705d, which
    breaks Clang
  7. kmsan: updated LLVM/Clang patches to r334104

    ramosian-glider committed Jun 6, 2018
    Fixed incorrect handling of va_args
    Added __msan_unpoison_alloca() calls
  8. kmsan: instrument kernel/module.c

    ramosian-glider committed Jun 6, 2018
    Skipping this file causes false positives when unloading modules.
  9. kmsan: print addresses in reports when possible

    ramosian-glider committed May 17, 2018
    This is currently only possible for kmsan_check_memory()
  10. kmsan: unpoison only the created pages in get_user_pages_fast()

    ramosian-glider committed May 15, 2018
    gup_pgd_range() may return less pages than requested. In that case
    we must unpoison only the created pages.
  11. kmsan: fixup for 1c54bfd

    ramosian-glider committed May 15, 2018
    Encryption and decryption functions must both check the inputs and
    unpoison the outputs.
Older
You can’t perform that action at this time.