diff options
author | David Howells <dhowells@redhat.com> | 2006-12-05 12:01:28 -0500 |
---|---|---|
committer | David Howells <dhowells@warthog.cambridge.redhat.com> | 2006-12-05 12:01:28 -0500 |
commit | 9db73724453a9350e1c22dbe732d427e2939a5c9 (patch) | |
tree | 15e3ead6413ae97398a54292acc199bee0864d42 /block | |
parent | 4c1ac1b49122b805adfa4efc620592f68dccf5db (diff) | |
parent | e62438630ca37539c8cc1553710bbfaa3cf960a7 (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/Kconfig | 6 | ||||
-rw-r--r-- | block/blktrace.c | 35 |
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 | ||
20 | if BLOCK | 20 | if BLOCK |
21 | 21 | ||
22 | #XXX - it makes sense to enable this only for 32-bit subarch's, not for x86_64 | ||
23 | #for instance. | ||
24 | config LBD | 22 | config 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 | ||
45 | config LSF | 43 | config 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 | */ |
34 | static inline unsigned int trace_note(struct blk_trace *bt, | 34 | static 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 | */ |
60 | static void trace_note_tsk(struct blk_trace *bt, struct task_struct *tsk) | 58 | static 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 | ||
67 | static void trace_note_time(struct blk_trace *bt) | 64 | static void trace_note_time(struct blk_trace *bt) |