04 Jan, 2012

1 commit


31 Oct, 2011

1 commit

  • The changed files were only including linux/module.h for the
    EXPORT_SYMBOL infrastructure, and nothing else. Revector them
    onto the isolated export header for faster compile times.

    Nothing to see here but a whole lot of instances of:

    -#include
    +#include

    This commit is only changing the kernel dir; next targets
    will probably be mm, fs, the arch dirs, etc.

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

05 Nov, 2010

1 commit


28 May, 2010

1 commit


22 May, 2010

1 commit


07 Mar, 2010

1 commit

  • "ret" needs to be signed or the error handling for splice_to_pipe() won't
    work correctly.

    Signed-off-by: Dan Carpenter
    Cc: Tom Zanussi
    Cc: Jens Axboe
    Cc: Lai Jiangshan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dan Carpenter
     

16 Dec, 2009

1 commit


28 Sep, 2009

1 commit


06 Apr, 2009

1 commit

  • * 'tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (413 commits)
    tracing, net: fix net tree and tracing tree merge interaction
    tracing, powerpc: fix powerpc tree and tracing tree interaction
    ring-buffer: do not remove reader page from list on ring buffer free
    function-graph: allow unregistering twice
    trace: make argument 'mem' of trace_seq_putmem() const
    tracing: add missing 'extern' keywords to trace_output.h
    tracing: provide trace_seq_reserve()
    blktrace: print out BLK_TN_MESSAGE properly
    blktrace: extract duplidate code
    blktrace: fix memory leak when freeing struct blk_io_trace
    blktrace: fix blk_probes_ref chaos
    blktrace: make classic output more classic
    blktrace: fix off-by-one bug
    blktrace: fix the original blktrace
    blktrace: fix a race when creating blk_tree_root in debugfs
    blktrace: fix timestamp in binary output
    tracing, Text Edit Lock: cleanup
    tracing: filter fix for TRACE_EVENT_FORMAT events
    ftrace: Using FTRACE_WARN_ON() to check "freed record" in ftrace_release()
    x86: kretprobe-booster interrupt emulation code fix
    ...

    Fix up trivial conflicts in
    arch/parisc/include/asm/ftrace.h
    include/linux/memory.h
    kernel/extable.c
    kernel/module.c

    Linus Torvalds
     

03 Apr, 2009

1 commit

  • Fix possible loss/corruption of produced subbufs in
    relay_subbufs_consumed().

    When buf->subbufs_produced wraps around after UINT_MAX and
    buf->subbufs_consumed is still < UINT_MAX, the condition

    if (buf->subbufs_consumed > buf->subbufs_produced)

    will be true even for certain valid values of subbufs_consumed. This may
    lead to loss or corruption of produced subbufs.

    Signed-off-by: Aravind Srinivasan
    Cc: Tom Zanussi
    Cc: Tom Zanussi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Aravind Srinivasan
     

02 Apr, 2009

1 commit


19 Feb, 2009

1 commit

  • Impact: new timer API

    Based on an idea from Martin Josefsson with the help of
    Patrick McHardy and Stephen Hemminger:

    introduce the mod_timer_pending() API which is a mod_timer()
    offspring that is an invariant on already removed timers.

    (regular mod_timer() re-activates non-pending timers.)

    This is useful for the networking code in that it can
    allow unserialized mod_timer_pending() timer-forwarding
    calls, but a single del_timer*() will stop the timer
    from being reactivated again.

    Also while at it:

    - optimize the regular mod_timer() path some more, the
    timer-stat and a debug check was needlessly duplicated
    in __mod_timer().

    - make the exports come straight after the function, as
    most other exports in timer.c already did.

    - eliminate __mod_timer() as an external API, change the
    users to mod_timer().

    The regular mod_timer() code path is not impacted
    significantly, due to inlining optimizations and due to
    the simplifications.

    Based-on-patch-from: Stephen Hemminger
    Acked-by: Stephen Hemminger
    Cc: "David S. Miller"
    Cc: Patrick McHardy
    Cc: netdev@vger.kernel.org
    Cc: Oleg Nesterov
    Cc: Andrew Morton
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     

03 Feb, 2009

1 commit


19 Jan, 2009

1 commit


30 Dec, 2008

1 commit

  • Impact: turn boot crash into boot warning

    This BUG() can trigger:

    [ 16.684131] initcall fail_page_alloc_debugfs+0x0/0xc1 returned 0 after 0 usecs
    [ 16.692035] calling kmemtrace_setup_late+0x0/0xd5 @ 1
    [ 16.700087] relay_late_setup_files: CPU 1 has no buffer, it must have!
    [ 16.704044] ------------[ cut here ]------------
    [ 16.708030] kernel BUG at kernel/relay.c:680!
    [ 16.708030] invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC
    [ 16.708030] last sysfs file:
    [ 16.708030]
    [ 16.708030] Pid: 1, comm: swapper Not tainted (2.6.28-tip-03903-g9a39f58-dirty #13207) System Product Name
    [ 16.708030] EIP: 0060:[] EFLAGS: 00010246 CPU: 1
    [ 16.708030] EIP is at relay_late_setup_files+0x8c/0x176

    Reduce it to a more reportable WARN_ONCE().

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     

11 Dec, 2008

1 commit

  • Running kmemtraced, which uses splice() on relayfs, causes a hard lock on
    x86-64 SMP. As described by Tom Zanussi:

    It looks like you hit the same problem as described here:

    commit 8191ecd1d14c6914c660dfa007154860a7908857

    splice: fix infinite loop in generic_file_splice_read()

    relay uses the same loop but it never got noticed or fixed.

    Cc: Mathieu Desnoyers
    Tested-by: Pekka Enberg
    Signed-off-by: Tom Zanussi
    Signed-off-by: Pekka Enberg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tom Zanussi
     

18 Nov, 2008

1 commit

  • relay_open() will close allocated buffers when failed.
    but if cpu offlined, some buffer will not be closed.
    this patch fixed it.

    and did cleanup for relay_reset() too.

    Signed-off-by: Lai Jiangshan
    Signed-off-by: Jens Axboe

    Lai Jiangshan
     

06 Aug, 2008

1 commit

  • In relay's current read implementation, if the buffer is completely full
    but hasn't triggered the buffer-full condition (i.e. the last write
    didn't cross the subbuffer boundary) and the last subbuffer is exactly
    full, the subbuffer accounting code erroneously finds nothing available.
    This patch fixes the problem.

    Signed-off-by: Tom Zanussi
    Cc: Eduard - Gabriel Munteanu
    Cc: Pekka Enberg
    Cc: Jens Axboe
    Cc: Mathieu Desnoyers
    Cc: Andrea Righi
    Cc: [2.6.25.x, 2.6.26.x]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tom Zanussi
     

27 Jul, 2008

1 commit

  • Allows one to create and use a channel with no associated files. Files
    can be initialized later. This is useful in scenarios such as logging in
    early code, before VFS is up. Therefore, such channels can be created and
    used as soon as kmem_cache_init() completed.

    This is needed by kmemtrace to do tracing in early kernel code.

    [kosaki.motohiro@jp.fujitsu.com: build fix]
    Signed-off-by: Eduard - Gabriel Munteanu
    Cc: Tom Zanussi
    Signed-off-by: KOSAKI Motohiro
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Eduard - Gabriel Munteanu
     

28 May, 2008

1 commit


08 May, 2008

1 commit


29 Apr, 2008

3 commits

  • * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
    block: Skip I/O merges when disabled
    block: add large command support
    block: replace sizeof(rq->cmd) with BLK_MAX_CDB
    ide: use blk_rq_init() to initialize the request
    block: use blk_rq_init() to initialize the request
    block: rename and export rq_init()
    block: no need to initialize rq->cmd with blk_get_request
    block: no need to initialize rq->cmd in prepare_flush_fn hook
    block/blk-barrier.c:blk_ordered_cur_seq() mustn't be inline
    block/elevator.c:elv_rq_merge_ok() mustn't be inline
    block: make queue flags non-atomic
    block: add dma alignment and padding support to blk_rq_map_kern
    unexport blk_max_pfn
    ps3disk: Remove superfluous cast
    block: make rq_init() do a full memset()
    relay: fix splice problem

    Linus Torvalds
     
  • Use vmalloc() and memset() instead of kcalloc() to allocate a page* array when
    the array size is bigger than one page. This enables relayfs to support
    bigger relay buffers than 64MB on 4k-page system, 512MB on 16k-page system.

    [akpm@linux-foundation.org: cleanup]
    Signed-off-by: Masami Hiramatsu
    Cc: David Wilder
    Reviewed-by: Tom Zanussi
    Reviewed-by: Pekka Enberg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Masami Hiramatsu
     
  • Splice isn't always incrementing the ppos correctly, which broke
    relay splice.

    Signed-off-by: Tom Zanussi
    Signed-off-by: Jens Axboe

    Tom Zanussi
     

26 Mar, 2008

2 commits


17 Mar, 2008

1 commit


07 Feb, 2008

1 commit

  • Convert relay from nopage to fault.
    Remove redundant vma range checks.
    Switch from OOM to SIGBUS if the resource is not available.

    Signed-off-by: Nick Piggin
    Cc: Tom Zanussi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nick Piggin
     

04 Feb, 2008

1 commit

  • Drivers that register a ->fault handler, but do not range-check the
    offset argument, must set VM_DONTEXPAND in the vm_flags in order to
    prevent an expanding mremap from overflowing the resource.

    I've audited the tree and attempted to fix these problems (usually by
    adding VM_DONTEXPAND where it is not obvious).

    Signed-off-by: Nick Piggin
    Signed-off-by: Linus Torvalds

    Nick Piggin
     

19 Oct, 2007

1 commit


01 Aug, 2007

1 commit

  • Coverity spotted what looks like a real possible case of using a variable
    after it has been freed. The problem is in
    kernel/relay.c::relay_open_buf()

    If the code hits "goto free_buf;" it ends up in this code :

    free_buf:
    relay_destroy_buf(buf); cb->create_buf_file(), so that looks like a clear error to
    me).

    The patch simply sets 'buf' to NULL after the call to
    relay_destroy_buf(buf); - as far as I can see that should take care of the
    problem.

    The patch also corrects a reference to a documentation file while
    I was at it.

    Note from Mathieu: the documentation reference change should have been
    done in a separate patch, but I guess no one will really care.

    Signed-off-by: Jesper Juhl
    Acked-by: "David J. Wilder"
    Tested-by: "David J. Wilder"
    Signed-off-by: Mathieu Desnoyers
    Cc: Tom Zanussi
    Cc: Karim Yaghmour
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesper Juhl
     

20 Jul, 2007

1 commit


13 Jul, 2007

2 commits


10 Jul, 2007

4 commits


29 Jun, 2007

2 commits

  • When I use relayfs with "overwrite" mode, read() still sets incorrect
    number of consumed bytes.

    Signed-off-by: Masami Hiramatsu
    Acked-by: Tom Zanussi
    Acked-by: David Wilder
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Masami Hiramatsu
     
  • Fix a bug in the relay read interface causing the number of consumed bytes
    to be set incorrectly.

    Signed-off-by: Tom Zanussi
    Signed-off-by: David Wilder
    Cc: Masami Hiramatsu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Wilder