summaryrefslogtreecommitdiff
path: root/dev-util/perf/perf-6.18.5-no-compressed2.patch
blob: 728609041c4297f584e8228acbd6bc92ad1d2444 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
reverted:
--- perf/builtin-record.c
+++ perf/builtin-record.c
@@ -650,27 +650,14 @@
 	struct record *rec = to;
 
 	if (record__comp_enabled(rec)) {
-		struct perf_record_compressed2 *event = map->data;
-		size_t padding = 0;
-		u8 pad[8] = {0};
 		ssize_t compressed = zstd_compress(rec->session, map, map->data,
 						   mmap__mmap_len(map), bf, size);
 
 		if (compressed < 0)
 			return (int)compressed;
 
+		size = compressed;
+		bf   = map->data;
-		bf = event;
-		thread->samples++;
-
-		/*
-		 * The record from `zstd_compress` is not 8 bytes aligned, which would cause asan
-		 * error. We make it aligned here.
-		 */
-		event->data_size = compressed - sizeof(struct perf_record_compressed2);
-		event->header.size = PERF_ALIGN(compressed, sizeof(u64));
-		padding = event->header.size - compressed;
-		return record__write(rec, map, bf, compressed) ||
-		       record__write(rec, map, &pad, padding);
 	}
 
 	thread->samples++;
@@ -1549,7 +1536,7 @@
 
 static size_t process_comp_header(void *record, size_t increment)
 {
+	struct perf_record_compressed *event = record;
-	struct perf_record_compressed2 *event = record;
 	size_t size = sizeof(*event);
 
 	if (increment) {
@@ -1557,7 +1544,7 @@
 		return increment;
 	}
 
+	event->header.type = PERF_RECORD_COMPRESSED;
-	event->header.type = PERF_RECORD_COMPRESSED2;
 	event->header.size = size;
 
 	return size;
@@ -1567,7 +1554,7 @@
 			    void *dst, size_t dst_size, void *src, size_t src_size)
 {
 	ssize_t compressed;
+	size_t max_record_size = PERF_SAMPLE_MAX_SIZE - sizeof(struct perf_record_compressed) - 1;
-	size_t max_record_size = PERF_SAMPLE_MAX_SIZE - sizeof(struct perf_record_compressed2) - 1;
 	struct zstd_data *zstd_data = &session->zstd_data;
 
 	if (map && map->file)