13 Apr, 2014

1 commit

  • Pull vfs updates from Al Viro:
    "The first vfs pile, with deep apologies for being very late in this
    window.

    Assorted cleanups and fixes, plus a large preparatory part of iov_iter
    work. There's a lot more of that, but it'll probably go into the next
    merge window - it *does* shape up nicely, removes a lot of
    boilerplate, gets rid of locking inconsistencie between aio_write and
    splice_write and I hope to get Kent's direct-io rewrite merged into
    the same queue, but some of the stuff after this point is having
    (mostly trivial) conflicts with the things already merged into
    mainline and with some I want more testing.

    This one passes LTP and xfstests without regressions, in addition to
    usual beating. BTW, readahead02 in ltp syscalls testsuite has started
    giving failures since "mm/readahead.c: fix readahead failure for
    memoryless NUMA nodes and limit readahead pages" - might be a false
    positive, might be a real regression..."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (63 commits)
    missing bits of "splice: fix racy pipe->buffers uses"
    cifs: fix the race in cifs_writev()
    ceph_sync_{,direct_}write: fix an oops on ceph_osdc_new_request() failure
    kill generic_file_buffered_write()
    ocfs2_file_aio_write(): switch to generic_perform_write()
    ceph_aio_write(): switch to generic_perform_write()
    xfs_file_buffered_aio_write(): switch to generic_perform_write()
    export generic_perform_write(), start getting rid of generic_file_buffer_write()
    generic_file_direct_write(): get rid of ppos argument
    btrfs_file_aio_write(): get rid of ppos
    kill the 5th argument of generic_file_buffered_write()
    kill the 4th argument of __generic_file_aio_write()
    lustre: don't open-code kernel_recvmsg()
    ocfs2: don't open-code kernel_recvmsg()
    drbd: don't open-code kernel_recvmsg()
    constify blk_rq_map_user_iov() and friends
    lustre: switch to kernel_sendmsg()
    ocfs2: don't open-code kernel_sendmsg()
    take iov_iter stuff to mm/iov_iter.c
    process_vm_access: tidy up a bit
    ...

    Linus Torvalds
     

02 Apr, 2014

1 commit


24 Feb, 2014

2 commits


05 Feb, 2014

1 commit

  • It really isn't very interesting to have DEBUG_INFO when doing compile
    coverage stuff (you wouldn't want to run the result anyway, that's kind
    of the whole point of COMPILE_TEST), and it currently makes the build
    take longer and use much more disk space for "all{yes,mod}config".

    There's somewhat active discussion about this still, and we might end up
    with some new config option for things like this (Andi points out that
    the silly X86_DECODER_SELFTEST option also slows down the normal
    coverage tests hugely), but I'm starting the ball rolling with this
    simple one-liner.

    DEBUG_INFO isn't that noticeable if you have tons of memory and a good
    IO subsystem, but it hurts you a lot if you don't - for very little
    upside for the common use.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

28 Jan, 2014

1 commit

  • Pull firewire updates from Stefan Richter:
    "IEEE 1394 (FireWire) subsystem changes:

    - make remote debugging over 1394 a runtime option instead of a
    buildtime option
    - extend remote debug access past the 4 GB barrier on respectively
    capable hardware
    - documentation update"

    * tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
    firewire: Enable remote DMA above 4 GB
    firewire: ohci: Turn remote DMA support into a module parameter
    Documentation/: update FireWire debugging documentation

    Linus Torvalds
     

24 Jan, 2014

2 commits

  • To help avoid an architecture failing to correctly check kernel/user
    boundaries when handling copy_to_user, copy_from_user, put_user, or
    get_user, perform some simple tests and fail to load if any of them
    behave unexpectedly.

    Specifically, this is to make sure there is a way to notice if things
    like what was fixed in commit 8404663f81d2 ("ARM: 7527/1: uaccess:
    explicitly check __user pointer when !CPU_USE_DOMAINS") ever regresses
    again, for any architecture.

    Additionally, adds new "user" selftest target, which loads this module.

    Signed-off-by: Kees Cook
    Cc: Rusty Russell
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     
  • This is a pair of test modules I'd like to see in the tree. Instead of
    putting these in lkdtm, where I've been adding various tests that trigger
    crashes, these don't make sense there since they need to be either
    distinctly separate, or their pass/fail state don't need to crash the
    machine.

    These live in lib/ for now, along with a few other in-kernel test modules,
    and use the slightly more common "test_" naming convention, instead of
    "test-". We should likely standardize on the former:

    $ find . -name 'test_*.c' | grep -v /tools/ | wc -l
    4
    $ find . -name 'test-*.c' | grep -v /tools/ | wc -l
    2

    The first is entirely a no-op module, designed to allow simple testing of
    the module loading and verification interface. It's useful to have a
    module that has no other uses or dependencies so it can be reliably used
    for just testing module loading and verification.

    The second is a module that exercises the user memory access functions, in
    an effort to make sure that we can quickly catch any regressions in
    boundary checking (e.g. like what was recently fixed on ARM).

    This patch (of 2):

    When doing module loading verification tests (for example, with module
    signing, or LSM hooks), it is very handy to have a module that can be
    built on all systems under test, isn't auto-loaded at boot, and has no
    device or similar dependencies. This creates the "test_module.ko" module
    for that purpose, which only reports its load and unload to printk.

    Signed-off-by: Kees Cook
    Acked-by: Rusty Russell
    Cc: Joe Perches
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kees Cook
     

22 Jan, 2014

1 commit

  • Record actively mapped pages and provide an api for asserting a given
    page is dma inactive before execution proceeds. Placing
    debug_dma_assert_idle() in cow_user_page() flagged the violation of the
    dma-api in the NET_DMA implementation (see commit 77873803363c "net_dma:
    mark broken").

    The implementation includes the capability to count, in a limited way,
    repeat mappings of the same page that occur without an intervening
    unmap. This 'overlap' counter is limited to the few bits of tag space
    in a radix tree. This mechanism is added to mitigate false negative
    cases where, for example, a page is dma mapped twice and
    debug_dma_assert_idle() is called after the page is un-mapped once.

    Signed-off-by: Dan Williams
    Cc: Joerg Roedel
    Cc: Vinod Koul
    Cc: Russell King
    Cc: James Bottomley
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dan Williams
     

13 Jan, 2014

1 commit


26 Nov, 2013

1 commit

  • The panic_timeout value can be set via the command line option
    'panic=x', or via /proc/sys/kernel/panic, however that is not
    sufficient when the panic occurs before we are able to set up
    these values. Thus, add a CONFIG_PANIC_TIMEOUT so that we can
    set the desired value from the .config.

    The default panic_timeout value continues to be 0 - wait
    forever. Also adds set_arch_panic_timeout(new_timeout,
    arch_default_timeout), which is intended to be used by arches in
    arch_setup(). The idea being that the new_timeout is only set if
    the user hasn't changed from the arch_default_timeout.

    Signed-off-by: Jason Baron
    Cc: benh@kernel.crashing.org
    Cc: paulus@samba.org
    Cc: ralf@linux-mips.org
    Cc: mpe@ellerman.id.au
    Cc: felipe.contreras@gmail.com
    Cc: Linus Torvalds
    Cc: Andrew Morton
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Link: http://lkml.kernel.org/r/1a1674daec27c534df409697025ac568ebcee91e.1385418410.git.jbaron@akamai.com
    Signed-off-by: Ingo Molnar

    Jason Baron
     

13 Nov, 2013

1 commit


07 Nov, 2013

1 commit

  • Pull tty/serial driver updates from Greg KH:
    "Here's the big tty/serial driver update for 3.13-rc1.

    There's some more minor n_tty work here, but nothing like previous
    kernel releases. Also some new driver ids, driver updates for new
    hardware, and other small things.

    All of this has been in linux-next for a while with no issues"

    * tag 'tty-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (84 commits)
    serial: omap: fix missing comma
    serial: sh-sci: Enable the driver on all ARM platforms
    serial: mfd: Staticize local symbols
    serial: omap: fix a few checkpatch warnings
    serial: omap: improve RS-485 performance
    mrst_max3110: fix unbalanced IRQ issue during resume
    serial: omap: Add support for optional wake-up
    serial: sirf: remove duplicate defines
    tty: xuartps: Fix build error when COMMON_CLK is not set
    tty: xuartps: Fix build error due to missing forward declaration
    tty: xuartps: Fix "may be used uninitialized" build warning
    serial: 8250_pci: add Pericom PCIe Serial board Support (12d8:7952/4/8) - Chip PI7C9X7952/4/8
    tty: xuartps: Update copyright information
    tty: xuartps: Implement suspend/resume callbacks
    tty: xuartps: Dynamically adjust to input frequency changes
    tty: xuartps: Updating set_baud_rate()
    tty: xuartps: Force enable the UART in xuartps_console_write
    tty: xuartps: support 64 byte FIFO size
    tty: xuartps: Add polled mode support for xuartps
    tty: xuartps: Implement BREAK detection, add SYSRQ support
    ...

    Linus Torvalds
     

29 Oct, 2013

1 commit


17 Oct, 2013

1 commit


13 Sep, 2013

1 commit


12 Sep, 2013

1 commit

  • No reason require rbtree test code to be a module, allow it to be builtin
    (streamlines my development process)

    Signed-off-by: Cody P Schafer
    Reviewed-by: Seth Jennings
    Cc: David Woodhouse
    Cc: Rik van Riel
    Cc: Michel Lespinasse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Cody P Schafer
     

10 Sep, 2013

1 commit

  • Pull ARC changes from Vineet Gupta:

    - ARC MM changes:
    - preparation for MMUv4 (accomodate new PTE bits, new cmds)
    - Rework the ASID allocation algorithm to remove asid-mm reverse map
    - Boilerplate code consolidation in Exception Handlers
    - Disable FRAME_POINTER for ARC
    - Unaligned Access Emulation for Big-Endian from Noam
    - Bunch of fixes (udelay, missing accessors) from Mischa

    * tag 'arc-v3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
    ARC: fix new Section mismatches in build (post __cpuinit cleanup)
    Kconfig.debug: Add FRAME_POINTER anti-dependency for ARC
    ARC: Fix __udelay calculation
    ARC: remove console_verbose() from setup_arch()
    ARC: Add read*_relaxed to asm/io.h
    ARC: Handle un-aligned user space access in BE.
    ARC: [ASID] Track ASID allocation cycles/generations
    ARC: [ASID] activate_mm() == switch_mm()
    ARC: [ASID] get_new_mmu_context() to conditionally allocate new ASID
    ARC: [ASID] Refactor the TLB paranoid debug code
    ARC: [ASID] Remove legacy/unused debug code
    ARC: No need to flush the TLB in early boot
    ARC: MMUv4 preps/3 - Abstract out TLB Insert/Delete
    ARC: MMUv4 preps/2 - Reshuffle PTE bits
    ARC: MMUv4 preps/1 - Fold PTE K/U access flags
    ARC: Code cosmetics (Nothing semantical)
    ARC: Entry Handler tweaks: Optimize away redundant IRQ_DISABLE_SAVE
    ARC: Exception Handlers Code consolidation
    ARC: Add some .gitignore entries

    Linus Torvalds
     

05 Sep, 2013

1 commit

  • Frame pointer on ARC doesn't serve the conventional purpose of stack
    unwinding due to the typical way ABI designates it's usage.
    Thus it's explicit usage on ARC is discouraged (gcc is free to use it,
    for some tricky stack frames even if -fomit-frame-pointer).

    Hence no point enabling it for ARC.

    References: http://www.spinics.net/lists/kernel/msg1593937.html
    Signed-off-by: Vineet Gupta
    Cc: Dave Hansen
    Cc: Andrew Morton
    Cc: "Paul E. McKenney"
    Cc: Catalin Marinas
    Cc: Michel Lespinasse
    Cc: linux-kernel@vger.kernel.org

    Vineet Gupta
     

26 Jul, 2013

1 commit

  • Implement debugging for kobject release functions. kobjects are
    reference counted, so the drop of the last reference to them is not
    predictable. However, the common case is for the last reference to be
    the kobject's removal from a subsystem, which results in the release
    function being immediately called.

    This can hide subtle bugs, which can occur when another thread holds a
    reference to the kobject at the same time that a kobject is removed.
    This results in the release method being delayed.

    In order to make these kinds of problems more visible, the following
    patch implements a delayed release; this has the effect that the
    release function will be out of order with respect to the removal of
    the kobject in the same manner that it would be if a reference was
    being held.

    This provides us with an easy way to allow driver writers to debug
    their drivers and fix otherwise hidden problems.

    Signed-off-by: Russell King
    Signed-off-by: Greg Kroah-Hartman

    Russell King
     

15 Jul, 2013

1 commit

  • The __cpuinit type of throwaway sections might have made sense
    some time ago when RAM was more constrained, but now the savings
    do not offset the cost and complications. For example, the fix in
    commit 5e427ec2d0 ("x86: Fix bit corruption at CPU resume time")
    is a good example of the nasty type of bugs that can be created
    with improper use of the various __init prefixes.

    After a discussion on LKML[1] it was decided that cpuinit should go
    the way of devinit and be phased out. Once all the users are gone,
    we can then finally remove the macros themselves from linux/init.h.

    This removes all the uses of the __cpuinit macros from C files in
    the core kernel directories (kernel, init, lib, mm, and include)
    that don't really have a specific maintainer.

    [1] https://lkml.org/lkml/2013/5/20/589

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

14 Jul, 2013

1 commit

  • Pull MIPS updates from Ralf Baechle:
    "MIPS updates:

    - All the things that didn't make 3.10.
    - Removes the Windriver PPMC platform. Nobody will miss it.
    - Remove a workaround from kernel/irq/irqdomain.c which was there
    exclusivly for MIPS. Patch by Grant Likely.
    - More small improvments for the SEAD 3 platform
    - Improvments on the BMIPS / SMP support for the BCM63xx series.
    - Various cleanups of dead leftovers.
    - Platform support for the Cavium Octeon-based EdgeRouter Lite.

    Two large KVM patchsets didn't make it for this pull request because
    their respective authors are vacationing"

    * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (124 commits)
    MIPS: Kconfig: Add missing MODULES dependency to VPE_LOADER
    MIPS: BCM63xx: CLK: Add dummy clk_{set,round}_rate() functions
    MIPS: SEAD3: Disable L2 cache on SEAD-3.
    MIPS: BCM63xx: Enable second core SMP on BCM6328 if available
    MIPS: BCM63xx: Add SMP support to prom.c
    MIPS: define write{b,w,l,q}_relaxed
    MIPS: Expose missing pci_io{map,unmap} declarations
    MIPS: Malta: Update GCMP detection.
    Revert "MIPS: make CAC_ADDR and UNCAC_ADDR account for PHYS_OFFSET"
    MIPS: APSP: Remove
    SSB: Kconfig: Amend SSB_EMBEDDED dependencies
    MIPS: microMIPS: Fix improper definition of ISA exception bit.
    MIPS: Don't try to decode microMIPS branch instructions where they cannot exist.
    MIPS: Declare emulate_load_store_microMIPS as a static function.
    MIPS: Fix typos and cleanup comment
    MIPS: Cleanup indentation and whitespace
    MIPS: BMIPS: support booting from physical CPU other than 0
    MIPS: Only set cpu_has_mmips if SYS_SUPPORTS_MICROMIPS
    MIPS: GIC: Fix gic_set_affinity infinite loop
    MIPS: Don't save/restore OCTEON wide multiplier state on syscalls.
    ...

    Linus Torvalds
     

05 Jul, 2013

8 commits

  • Merge Kconfig menu diet patches from Dave Hansen:
    "I think the "Kernel Hacking" menu has gotten a bit out of hand. It is
    over 120 lines long on my system with everything enabled and options
    are scattered around it haphazardly.

    http://sr71.net/~dave/linux/kconfig-horror.png

    Let's try to introduce some sanity. This set takes that 120 lines
    down to 55 and makes it vastly easier to find some things. It's a
    start.

    This set stands on its own, but there is plenty of room for follow-up
    patches. The arch-specific debug options still end up getting stuck
    in the top-level "kernel hacking" menu. OPTIMIZE_INLINING, for
    instance, could obviously go in to the "compiler options" menu, but
    the fact that it is defined in arch/ in a separate Kconfig file keeps
    it on its own for the moment.

    The Signed-off-by's in here look funky. I changed employers while
    working on this set, so I have signoffs from both email addresses"

    * emailed patches from Dave Hansen :
    hang and lockup detection menu
    kconfig: consolidate printk options
    group locking debugging options
    consolidate compilation option configs
    consolidate runtime testing configs
    order memory debugging Kconfig options
    consolidate per-arch stack overflow debugging options

    Linus Torvalds
     
  • The hard/softlockup and hung-task entries take up 6 lines
    of screen real-estate when enabled. I bet folks don't
    mess with these _that_ often, so move them in a group
    down a level.

    Signed-off-by: Dave Hansen
    Signed-off-by: Linus Torvalds

    Dave Hansen
     
  • Same deal, take the printk-related things and hide them in a menu.
    This takes another 4 items out of the top-level menu.

    Signed-off-by: Dave Hansen
    Signed-off-by: Linus Torvalds

    Dave Hansen
     
  • Original posting:

    http://lkml.kernel.org/r/20121214184208.D9E5804D@kernel.stglabs.ibm.com

    There are quite a few of these, and we want to make sure that
    there is one-stop-shopping for lock debugging.

    Signed-off-by: Dave Hansen
    Signed-off-by: Dave Hansen
    Signed-off-by: Linus Torvalds

    Dave Hansen
     
  • Original Post:

    http://lkml.kernel.org/r/20121214184207.6E00DDEC@kernel.stglabs.ibm.com

    Again, trying to come up with some common themes of the stuff in
    the kernel hacking menu... There are quite a few options to
    tweak compilation in some way, or perform extra compile-time
    checks. Give them their own menu.

    The diff here looks a bit funny... makes it look like I'm
    moving debugfs even though I'm actually moving the options on
    either side of it.

    Signed-off-by: Dave Hansen
    Signed-off-by: Dave Hansen
    Signed-off-by: Linus Torvalds

    Dave Hansen
     
  • Original posting:

    http://lkml.kernel.org/r/20121214184206.FC11422F@kernel.stglabs.ibm.com

    These runtime tests are great, except that there are a lot of them,
    and they are very rarely needed. Give them their own menu so that
    only the folks who need them will have to go looking for them.

    Note that there are some other runtime tests that are not in here,
    like for RCU or locking. This menu should only be used for tests
    that do not have a more appropriate home.

    Signed-off-by: Dave Hansen
    Signed-off-by: Dave Hansen
    Signed-off-by: Linus Torvalds

    Dave Hansen
     
  • Original posting:

    http://lkml.kernel.org/r/20121214184203.37E6C724@kernel.stglabs.ibm.com

    There are a *LOT* of memory debugging options. They are just scattered
    all over the "Kernel Hacking" menu. Sure, "memory debugging" is a very
    vague term and it's going to be hard to make absolute rules about what
    goes in here, but this has to be better than what we had before.

    This does, however, leave out the architecture-specific memory
    debugging options (like x86's DEBUG_SET_MODULE_RONX). There would need
    to be some substantial changes to move those in here. Kconfig can not
    easily mix arch-specific and generic options together: it really
    requires a file per-architecture, and I think having an
    arch/foo/Kconfig.debug-memory might be taking things a bit too far

    Signed-off-by: Dave Hansen
    Signed-off-by: Dave Hansen
    Signed-off-by: Linus Torvalds

    Dave Hansen
     
  • Original posting:

    http://lkml.kernel.org/r/20121214184202.F54094D9@kernel.stglabs.ibm.com

    Several architectures have similar stack debugging config options.
    They all pretty much do the same thing, some with slightly
    differing help text.

    This patch changes the architectures to instead enable a Kconfig
    boolean, and then use that boolean in the generic Kconfig.debug
    to present the actual menu option. This removes a bunch of
    duplication and adds consistency across arches.

    Signed-off-by: Dave Hansen
    Reviewed-by: H. Peter Anvin
    Reviewed-by: James Hogan
    Acked-by: Chris Metcalf [for tile]
    Signed-off-by: Dave Hansen
    Signed-off-by: Linus Torvalds

    Dave Hansen
     

26 Jun, 2013

1 commit

  • Injects EDEADLK conditions at pseudo-random interval, with
    exponential backoff up to UINT_MAX (to ensure that every lock
    operation still completes in a reasonable time).

    This way we can test the wound slowpath even for ww mutex users
    where contention is never expected, and the ww deadlock
    avoidance algorithm is only needed for correctness against
    malicious userspace. An example would be protecting kernel
    modesetting properties, which thanks to single-threaded X isn't
    really expected to contend, ever.

    I've looked into using the CONFIG_FAULT_INJECTION
    infrastructure, but decided against it for two reasons:

    - EDEADLK handling is mandatory for ww mutex users and should
    never affect the outcome of a syscall. This is in contrast to -ENOMEM
    injection. So fine configurability isn't required.

    - The fault injection framework only allows to set a simple
    probability for failure. Now the probability that a ww mutex acquire
    stage with N locks will never complete (due to too many injected
    EDEADLK backoffs) is zero. But the expected number of ww_mutex_lock
    operations for the completely uncontended case would be O(exp(N)).
    The per-acuiqire ctx exponential backoff solution choosen here only
    results in O(log N) overhead due to injection and so O(log N * N)
    lock operations. This way we can fail with high probability (and so
    have good test coverage even for fancy backoff and lock acquisition
    paths) without running into patalogical cases.

    Note that EDEADLK will only ever be injected when we managed to
    acquire the lock. This prevents any behaviour changes for users
    which rely on the EALREADY semantics.

    Signed-off-by: Daniel Vetter
    Signed-off-by: Maarten Lankhorst
    Acked-by: Peter Zijlstra
    Cc: dri-devel@lists.freedesktop.org
    Cc: linaro-mm-sig@lists.linaro.org
    Cc: rostedt@goodmis.org
    Cc: daniel@ffwll.ch
    Cc: Linus Torvalds
    Cc: Andrew Morton
    Cc: Thomas Gleixner
    Link: http://lkml.kernel.org/r/20130620113117.4001.21681.stgit@patser
    Signed-off-by: Ingo Molnar

    Daniel Vetter
     

22 Jun, 2013

1 commit

  • FAULT_INJECTION_STACKTRACE_FILTER selects FRAME_POINTER but
    that symbol is not available for MIPS.

    Fixes the following problem on a randconfig:
    warning: (LOCKDEP && FAULT_INJECTION_STACKTRACE_FILTER && LATENCYTOP &&
    KMEMCHECK) selects FRAME_POINTER which has unmet direct dependencies
    (DEBUG_KERNEL && (CRIS || M68K || FRV || UML || AVR32 || SUPERH || BLACKFIN ||
    MN10300 || METAG) || ARCH_WANT_FRAME_POINTERS)

    Signed-off-by: Markos Chandras
    Acked-by: Steven J. Hill
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/5441/
    Signed-off-by: Ralf Baechle

    Markos Chandras
     

01 May, 2013

3 commits

  • The Kconfig help text for MEMORY_NOTIFIER_ERROR_INJECT and
    OF_RECONFIG_NOTIFIER_ERROR_INJECT has mismatched module names.

    Signed-off-by: Akinobu Mita
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     
  • The help text for this config is duplicated across the x86, parisc, and
    s390 Kconfig.debug files. Arnd Bergman noted that the help text was
    slightly misleading and should be fixed to state that enabling this
    option isn't a problem when using pre 4.4 gcc.

    To simplify the rewording, consolidate the text into lib/Kconfig.debug
    and modify it there to be more explicit about when you should say N to
    this config.

    Also, make the text a bit more generic by stating that this option
    enables compile time checks so we can cover architectures which emit
    warnings vs. ones which emit errors. The details of how an
    architecture decided to implement the checks isn't as important as the
    concept of compile time checking of copy_from_user() calls.

    While we're doing this, remove all the copy_from_user_overflow() code
    that's duplicated many times and place it into lib/ so that any
    architecture supporting this option can get the function for free.

    Signed-off-by: Stephen Boyd
    Acked-by: Arnd Bergmann
    Acked-by: Ingo Molnar
    Acked-by: H. Peter Anvin
    Cc: Arjan van de Ven
    Acked-by: Helge Deller
    Cc: Heiko Carstens
    Cc: Stephen Rothwell
    Cc: Chris Metcalf
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stephen Boyd
     
  • There are several places in kernel where modules unescapes input to convert
    C-Style Escape Sequences into byte codes.

    The patch provides generic implementation of such approach. Test cases are
    also included into the patch.

    [akpm@linux-foundation.org: clarify comment]
    [akpm@linux-foundation.org: export get_random_int() to modules]
    Signed-off-by: Andy Shevchenko
    Cc: Samuel Thibault
    Cc: Greg Kroah-Hartman
    Cc: Jason Baron
    Cc: Alexander Viro
    Cc: William Hubbs
    Cc: Chris Brannon
    Cc: Kirk Reiser
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andy Shevchenko
     

04 Mar, 2013

1 commit

  • Pull new ImgTec Meta architecture from James Hogan:
    "This adds core architecture support for Imagination's Meta processor
    cores, followed by some later miscellaneous arch/metag cleanups and
    fixes which I kept separate to ease review:

    - Support for basic Meta 1 (ATP) and Meta 2 (HTP) core architecture
    - A few fixes all over, particularly for symbol prefixes
    - A few privilege protection fixes
    - Several cleanups (setup.c includes, split out a lot of
    metag_ksyms.c)
    - Fix some missing exports
    - Convert hugetlb to use vm_unmapped_area()
    - Copy device tree to non-init memory
    - Provide dma_get_sgtable()"

    * tag 'metag-v3.9-rc1-v4' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag: (61 commits)
    metag: Provide dma_get_sgtable()
    metag: prom.h: remove declaration of metag_dt_memblock_reserve()
    metag: copy devicetree to non-init memory
    metag: cleanup metag_ksyms.c includes
    metag: move mm/init.c exports out of metag_ksyms.c
    metag: move usercopy.c exports out of metag_ksyms.c
    metag: move setup.c exports out of metag_ksyms.c
    metag: move kick.c exports out of metag_ksyms.c
    metag: move traps.c exports out of metag_ksyms.c
    metag: move irq enable out of irqflags.h on SMP
    genksyms: fix metag symbol prefix on crc symbols
    metag: hugetlb: convert to vm_unmapped_area()
    metag: export clear_page and copy_page
    metag: export metag_code_cache_flush_all
    metag: protect more non-MMU memory regions
    metag: make TXPRIVEXT bits explicit
    metag: kernel/setup.c: sort includes
    perf: Enable building perf tools for Meta
    metag: add boot time LNKGET/LNKSET check
    metag: add __init to metag_cache_probe()
    ...

    Linus Torvalds
     

03 Mar, 2013

1 commit

  • Add [!]METAG to a couple of Kconfig dependencies in lib/Kconfig.debug.
    Don't allow stack utilization instrumentation on metag, and allow
    building with frame pointers.

    Signed-off-by: James Hogan
    Cc: Andrew Morton
    Cc: "Paul E. McKenney"
    Cc: Akinobu Mita
    Cc: Michel Lespinasse
    Cc: Catalin Marinas

    James Hogan
     

22 Feb, 2013

3 commits

  • Merge misc patches from Andrew Morton:

    - Florian has vanished so I appear to have become fbdev maintainer
    again :(

    - Joel and Mark are distracted to welcome to the new OCFS2 maintainer

    - The backlight queue

    - Small core kernel changes

    - lib/ updates

    - The rtc queue

    - Various random bits

    * akpm: (164 commits)
    rtc: rtc-davinci: use devm_*() functions
    rtc: rtc-max8997: use devm_request_threaded_irq()
    rtc: rtc-max8907: use devm_request_threaded_irq()
    rtc: rtc-da9052: use devm_request_threaded_irq()
    rtc: rtc-wm831x: use devm_request_threaded_irq()
    rtc: rtc-tps80031: use devm_request_threaded_irq()
    rtc: rtc-lp8788: use devm_request_threaded_irq()
    rtc: rtc-coh901331: use devm_clk_get()
    rtc: rtc-vt8500: use devm_*() functions
    rtc: rtc-tps6586x: use devm_request_threaded_irq()
    rtc: rtc-imxdi: use devm_clk_get()
    rtc: rtc-cmos: use dev_warn()/dev_dbg() instead of printk()/pr_debug()
    rtc: rtc-pcf8583: use dev_warn() instead of printk()
    rtc: rtc-sun4v: use pr_warn() instead of printk()
    rtc: rtc-vr41xx: use dev_info() instead of printk()
    rtc: rtc-rs5c313: use pr_err() instead of printk()
    rtc: rtc-at91rm9200: use dev_dbg()/dev_err() instead of printk()/pr_debug()
    rtc: rtc-rs5c372: use dev_dbg()/dev_warn() instead of printk()/pr_debug()
    rtc: rtc-ds2404: use dev_err() instead of printk()
    rtc: rtc-efi: use dev_err()/dev_warn()/pr_err() instead of printk()
    ...

    Linus Torvalds
     
  • CONFIG_EXPERT doesn't really make sense, and hides it unintentionally.
    Remove superfluous "default n" pointed out by Ingo as well.

    Signed-off-by: Kyle McMartin
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kyle McMartin
     
  • Pull driver core patches from Greg Kroah-Hartman:
    "Here is the big driver core merge for 3.9-rc1

    There are two major series here, both of which touch lots of drivers
    all over the kernel, and will cause you some merge conflicts:

    - add a new function called devm_ioremap_resource() to properly be
    able to check return values.

    - remove CONFIG_EXPERIMENTAL

    Other than those patches, there's not much here, some minor fixes and
    updates"

    Fix up trivial conflicts

    * tag 'driver-core-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits)
    base: memory: fix soft/hard_offline_page permissions
    drivercore: Fix ordering between deferred_probe and exiting initcalls
    backlight: fix class_find_device() arguments
    TTY: mark tty_get_device call with the proper const values
    driver-core: constify data for class_find_device()
    firmware: Ignore abort check when no user-helper is used
    firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER
    firmware: Make user-mode helper optional
    firmware: Refactoring for splitting user-mode helper code
    Driver core: treat unregistered bus_types as having no devices
    watchdog: Convert to devm_ioremap_resource()
    thermal: Convert to devm_ioremap_resource()
    spi: Convert to devm_ioremap_resource()
    power: Convert to devm_ioremap_resource()
    mtd: Convert to devm_ioremap_resource()
    mmc: Convert to devm_ioremap_resource()
    mfd: Convert to devm_ioremap_resource()
    media: Convert to devm_ioremap_resource()
    iommu: Convert to devm_ioremap_resource()
    drm: Convert to devm_ioremap_resource()
    ...

    Linus Torvalds