04 Jan, 2012
1 commit
-
Signed-off-by: Al Viro
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
+#includeThis commit is only changing the kernel dir; next targets
will probably be mm, fs, the arch dirs, etc.Signed-off-by: Paul Gortmaker
05 Nov, 2010
1 commit
-
We can optimize kernel/relay.c::relay_alloc_page_array() slightly by
using vzalloc. The patch makes these changes:- use vzalloc instead of vmalloc+memset.
- remove redundant local variable 'array'.
- declare local 'pa_size' as const.Cuts down nicely on both source and object-code size.
Signed-off-by: Jesper Juhl
Acked-by: Pekka Enberg
Acked-by: Mathieu Desnoyers
Signed-off-by: Linus Torvalds
28 May, 2010
1 commit
-
By the previous modification, the cpu notifier can return encapsulate
errno value. This converts the cpu notifiers for kernel/*.cSigned-off-by: Akinobu Mita
Cc: Ingo Molnar
Cc: Peter Zijlstra
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
22 May, 2010
1 commit
-
This patch adds F_GETPIPE_SZ and F_SETPIPE_SZ fcntl() actions for
growing and shrinking the size of a pipe and adjusts pipe.c and splice.c
(and relay and network splice) usage to work with these larger (or smaller)
pipes.Signed-off-by: Jens Axboe
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
16 Dec, 2009
1 commit
-
Signed-off-by: Alexey Dobriyan
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
28 Sep, 2009
1 commit
-
* mark struct vm_area_struct::vm_ops as const
* mark vm_ops in AGP codeBut leave TTM code alone, something is fishy there with global vm_ops
being used.Signed-off-by: Alexey Dobriyan
Signed-off-by: Linus Torvalds
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
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 conditionif (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
02 Apr, 2009
1 commit
-
Conflicts:
include/linux/slub_def.h
lib/Kconfig.debug
mm/slob.c
mm/slub.c
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
03 Feb, 2009
1 commit
19 Jan, 2009
1 commit
-
One fail path in relay_late_setup_files() omits
mutex_unlock(&relay_channels_mutex);
Add it.Signed-off-by: Jiri Slaby
Signed-off-by: Ingo Molnar
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/0x176Reduce it to a more reportable WARN_ONCE().
Signed-off-by: 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
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
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
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
28 May, 2008
1 commit
-
Splice isn't always incrementing the ppos correctly, which broke
relay splice.Signed-off-by: Tom Zanussi
Tested-by: Dan Williams
Signed-off-by: Jens Axboe
08 May, 2008
1 commit
-
This reverts commit c3270e577c18b3d0e984c3371493205a4807db9d.
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 -
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 -
Splice isn't always incrementing the ppos correctly, which broke
relay splice.Signed-off-by: Tom Zanussi
Signed-off-by: Jens Axboe
26 Mar, 2008
2 commits
-
relay doesn't reference the pages it adds, however we need a non-NULL
hook or splice_to_pipe() can oops.Signed-off-by: Jens Axboe
-
I found that relay files can be read by pread(2). I fix it,
for relay files are not capable of seeking.Signed-off-by: Lai Jiangshan
Signed-off-by: Jens Axboe
17 Mar, 2008
1 commit
-
If subbuf_pages was larger than the max number of pages the pipe
buffer will hold, subbuf_splice_actor() would happily go beyond
the array size.Signed-off-by: Jens Axboe
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
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
19 Oct, 2007
1 commit
-
Signed-off-by: Daniel Walker
Cc: Tom Zanussi
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
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
20 Jul, 2007
1 commit
-
Signed-off-by: Adrian Bunk
Cc: Tom Zanussi
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
13 Jul, 2007
2 commits
-
Change comment from kerneldoc to normal.
Signed-off-by: Tom Zanussi
Signed-off-by: Jens Axboe -
The current code that sets the read position in subbuf_splice_actor may
give erroneous results if the buffer size isn't a power of 2. This
patch fixes the problem.Signed-off-by: Tom Zanussi
Signed-off-by: Jens Axboe
10 Jul, 2007
4 commits
-
The name 'pin' was badly chosen, it doesn't pin a pipe buffer
in the most commonly used sense in the kernel. So change the
name to 'confirm', after debating this issue with Hugh
Dickins a bit.A good return from ->confirm() means that the buffer is really
there, and that the contents are good.Signed-off-by: Jens Axboe
-
It cleans up the relay splice implementation a lot, and gets rid of
a lot of internal pipe knowledge that should not be in there.Plus fixes for padding and partial first page (and lots more) from
Tom Zanussi.Signed-off-by: Jens Axboe
-
We need to move even more stuff into the header so that folks can use
the splice_to_pipe() implementation instead of open-coding a lot of
pipe knowledge (see relay implementation), so move to our own header
file finally.Signed-off-by: Jens Axboe
-
Signed-off-by: Jens Axboe
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 -
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