aboutsummaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2006-12-05 12:01:28 -0500
committerDavid Howells <dhowells@warthog.cambridge.redhat.com>2006-12-05 12:01:28 -0500
commit9db73724453a9350e1c22dbe732d427e2939a5c9 (patch)
tree15e3ead6413ae97398a54292acc199bee0864d42 /block
parent4c1ac1b49122b805adfa4efc620592f68dccf5db (diff)
parente62438630ca37539c8cc1553710bbfaa3cf960a7 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts: drivers/ata/libata-scsi.c include/linux/libata.h Futher merge of Linus's head and compilation fixups. Signed-Off-By: David Howells <dhowells@redhat.com>
Diffstat (limited to 'block')
-rw-r--r--block/Kconfig6
-rw-r--r--block/blktrace.c35
2 files changed, 18 insertions, 23 deletions
diff --git a/block/Kconfig b/block/Kconfig
index 83766a6bdee2..a50f48111647 100644
--- a/block/Kconfig
+++ b/block/Kconfig
@@ -19,11 +19,9 @@ config BLOCK
19 19
20if BLOCK 20if BLOCK
21 21
22#XXX - it makes sense to enable this only for 32-bit subarch's, not for x86_64
23#for instance.
24config LBD 22config LBD
25 bool "Support for Large Block Devices" 23 bool "Support for Large Block Devices"
26 depends on X86 || (MIPS && 32BIT) || PPC32 || (S390 && !64BIT) || SUPERH || UML 24 depends on !64BIT
27 help 25 help
28 Say Y here if you want to attach large (bigger than 2TB) discs to 26 Say Y here if you want to attach large (bigger than 2TB) discs to
29 your machine, or if you want to have a raid or loopback device 27 your machine, or if you want to have a raid or loopback device
@@ -44,7 +42,7 @@ config BLK_DEV_IO_TRACE
44 42
45config LSF 43config LSF
46 bool "Support for Large Single Files" 44 bool "Support for Large Single Files"
47 depends on X86 || (MIPS && 32BIT) || PPC32 || ARCH_S390_31 || SUPERH || UML 45 depends on !64BIT
48 help 46 help
49 Say Y here if you want to be able to handle very large files (bigger 47 Say Y here if you want to be able to handle very large files (bigger
50 than 2TB), otherwise say N. 48 than 2TB), otherwise say N.
diff --git a/block/blktrace.c b/block/blktrace.c
index 562ca7cbf858..74e02c04b2da 100644
--- a/block/blktrace.c
+++ b/block/blktrace.c
@@ -31,26 +31,24 @@ static unsigned int blktrace_seq __read_mostly = 1;
31/* 31/*
32 * Send out a notify message. 32 * Send out a notify message.
33 */ 33 */
34static inline unsigned int trace_note(struct blk_trace *bt, 34static void trace_note(struct blk_trace *bt, pid_t pid, int action,
35 pid_t pid, int action, 35 const void *data, size_t len)
36 const void *data, size_t len)
37{ 36{
38 struct blk_io_trace *t; 37 struct blk_io_trace *t;
39 int cpu = smp_processor_id();
40 38
41 t = relay_reserve(bt->rchan, sizeof(*t) + len); 39 t = relay_reserve(bt->rchan, sizeof(*t) + len);
42 if (t == NULL) 40 if (t) {
43 return 0; 41 const int cpu = smp_processor_id();
44 42
45 t->magic = BLK_IO_TRACE_MAGIC | BLK_IO_TRACE_VERSION; 43 t->magic = BLK_IO_TRACE_MAGIC | BLK_IO_TRACE_VERSION;
46 t->time = sched_clock() - per_cpu(blk_trace_cpu_offset, cpu); 44 t->time = sched_clock() - per_cpu(blk_trace_cpu_offset, cpu);
47 t->device = bt->dev; 45 t->device = bt->dev;
48 t->action = action; 46 t->action = action;
49 t->pid = pid; 47 t->pid = pid;
50 t->cpu = cpu; 48 t->cpu = cpu;
51 t->pdu_len = len; 49 t->pdu_len = len;
52 memcpy((void *) t + sizeof(*t), data, len); 50 memcpy((void *) t + sizeof(*t), data, len);
53 return blktrace_seq; 51 }
54} 52}
55 53
56/* 54/*
@@ -59,9 +57,8 @@ static inline unsigned int trace_note(struct blk_trace *bt,
59 */ 57 */
60static void trace_note_tsk(struct blk_trace *bt, struct task_struct *tsk) 58static void trace_note_tsk(struct blk_trace *bt, struct task_struct *tsk)
61{ 59{
62 tsk->btrace_seq = trace_note(bt, tsk->pid, 60 tsk->btrace_seq = blktrace_seq;
63 BLK_TN_PROCESS, 61 trace_note(bt, tsk->pid, BLK_TN_PROCESS, tsk->comm, sizeof(tsk->comm));
64 tsk->comm, sizeof(tsk->comm));
65} 62}
66 63
67static void trace_note_time(struct blk_trace *bt) 64static void trace_note_time(struct blk_trace *bt)