aboutsummaryrefslogtreecommitdiff
path: root/gdb/nat/linux-btrace.h
diff options
context:
space:
mode:
authorMarkus Metzger <markus.t.metzger@intel.com>2015-07-08 09:38:16 +0200
committerMarkus Metzger <markus.t.metzger@intel.com>2015-07-15 08:40:57 +0200
commite7b01ce03de85cfbbddb6ed755486db528abf1d1 (patch)
treebefceca0e4eb95a1a8fa297c536e4665105d35a8 /gdb/nat/linux-btrace.h
parent210187848791f50ee7dd8eaae8fc4bd371b3550b (diff)
downloadgdb-e7b01ce03de85cfbbddb6ed755486db528abf1d1.zip
gdb-e7b01ce03de85cfbbddb6ed755486db528abf1d1.tar.gz
gdb-e7b01ce03de85cfbbddb6ed755486db528abf1d1.tar.bz2
ari, btrace: avoid unsigned long long
Fix the ARI warning about the use of unsigned long long. We can't use ULONGEST as this is defined unsigned long on 64-bit systems. This will result in a compile error when storing a pointer to an unsigned long long structure field (declared in perf_event.h as __u64) in a ULONGEST * variable. Use size_t to hold the buffer size inside GDB and __u64 when interfacing the Linux kernel. gdb/ * nat/linux-btrace.c (perf_event_read): Change the type of DATA_HEAD. (perf_event_read_all): Change the type of SIZE and DATA_HEAD. (perf_event_read_bts): Change the type of SIZE and READ. (linux_enable_bts): Change the type of SIZE, PAGES, DATA_SIZE, and DATA_OFFSET. Move DATA_SIZE declaration. Restrict the buffer size to UINT_MAX. Check for overflows when using DATA_HEAD from the perf mmap page. (linux_enable_pt): Change the type of PAGES and SIZE. Restrict the buffer size to UINT_MAX. (linux_read_bts): Change the type of BUFFER_SIZE, SIZE, DATA_HEAD, and DATA_TAIL. * nat/linux-btrace.h (struct perf_event_buffer)<size, data_head> <last_head>: Change type. * common/btrace-common.h (struct btrace_dat_pt) <size>: Change type. * common/btrace-common.c (btrace_data_append): Change the type of SIZE. * btrace.c (parse_xml_raw): Change the type of SIZE. Change oddness check.
Diffstat (limited to 'gdb/nat/linux-btrace.h')
-rw-r--r--gdb/nat/linux-btrace.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/gdb/nat/linux-btrace.h b/gdb/nat/linux-btrace.h
index b680bf5..5ea87a8 100644
--- a/gdb/nat/linux-btrace.h
+++ b/gdb/nat/linux-btrace.h
@@ -38,13 +38,13 @@ struct perf_event_buffer
const uint8_t *mem;
/* The size of the mapped memory in bytes. */
- unsigned long long size;
+ size_t size;
/* A pointer to the data_head field for this buffer. */
- volatile unsigned long long *data_head;
+ volatile __u64 *data_head;
/* The data_head value from the last read. */
- unsigned long long last_head;
+ __u64 last_head;
};
/* Branch trace target information for BTS tracing. */