summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/trace/ring_buffer.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
index 05b0b3139ebc..66358d66c933 100644
--- a/kernel/trace/ring_buffer.c
+++ b/kernel/trace/ring_buffer.c
@@ -128,16 +128,7 @@ int ring_buffer_print_entry_header(struct trace_seq *s)
128#define RB_ALIGNMENT 4U 128#define RB_ALIGNMENT 4U
129#define RB_MAX_SMALL_DATA (RB_ALIGNMENT * RINGBUF_TYPE_DATA_TYPE_LEN_MAX) 129#define RB_MAX_SMALL_DATA (RB_ALIGNMENT * RINGBUF_TYPE_DATA_TYPE_LEN_MAX)
130#define RB_EVNT_MIN_SIZE 8U /* two 32bit words */ 130#define RB_EVNT_MIN_SIZE 8U /* two 32bit words */
131 131#define RB_ALIGN_DATA __aligned(RB_ALIGNMENT)
132#ifndef CONFIG_HAVE_64BIT_ALIGNED_ACCESS
133# define RB_FORCE_8BYTE_ALIGNMENT 0
134# define RB_ARCH_ALIGNMENT RB_ALIGNMENT
135#else
136# define RB_FORCE_8BYTE_ALIGNMENT 1
137# define RB_ARCH_ALIGNMENT 8U
138#endif
139
140#define RB_ALIGN_DATA __aligned(RB_ARCH_ALIGNMENT)
141 132
142/* define RINGBUF_TYPE_DATA for 'case RINGBUF_TYPE_DATA:' */ 133/* define RINGBUF_TYPE_DATA for 'case RINGBUF_TYPE_DATA:' */
143#define RINGBUF_TYPE_DATA 0 ... RINGBUF_TYPE_DATA_TYPE_LEN_MAX 134#define RINGBUF_TYPE_DATA 0 ... RINGBUF_TYPE_DATA_TYPE_LEN_MAX
@@ -2373,7 +2364,7 @@ rb_update_event(struct ring_buffer_per_cpu *cpu_buffer,
2373 2364
2374 event->time_delta = delta; 2365 event->time_delta = delta;
2375 length -= RB_EVNT_HDR_SIZE; 2366 length -= RB_EVNT_HDR_SIZE;
2376 if (length > RB_MAX_SMALL_DATA || RB_FORCE_8BYTE_ALIGNMENT) { 2367 if (length > RB_MAX_SMALL_DATA) {
2377 event->type_len = 0; 2368 event->type_len = 0;
2378 event->array[0] = length; 2369 event->array[0] = length;
2379 } else 2370 } else
@@ -2388,11 +2379,11 @@ static unsigned rb_calculate_event_length(unsigned length)
2388 if (!length) 2379 if (!length)
2389 length++; 2380 length++;
2390 2381
2391 if (length > RB_MAX_SMALL_DATA || RB_FORCE_8BYTE_ALIGNMENT) 2382 if (length > RB_MAX_SMALL_DATA)
2392 length += sizeof(event.array[0]); 2383 length += sizeof(event.array[0]);
2393 2384
2394 length += RB_EVNT_HDR_SIZE; 2385 length += RB_EVNT_HDR_SIZE;
2395 length = ALIGN(length, RB_ARCH_ALIGNMENT); 2386 length = ALIGN(length, RB_ALIGNMENT);
2396 2387
2397 /* 2388 /*
2398 * In case the time delta is larger than the 27 bits for it 2389 * In case the time delta is larger than the 27 bits for it