This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 4/7] Add ATTRIBUTE_UNUSED_RESULT to scoped_mmap


This applies ATTRIBUTE_UNUSED_RESULT to scoped_mmap::release and fixes
a couple of spots to comply.

2019-02-27  Tom Tromey  <tromey@adacore.com>

	* nat/linux-btrace.c (linux_enable_bts, linux_enable_pt): Update.
	* common/scoped_mmap.h (class scoped_mmap) <release>: Add
	ATTRIBUTE_UNUSED_RESULT.
---
 gdb/ChangeLog            | 6 ++++++
 gdb/common/scoped_mmap.h | 2 +-
 gdb/nat/linux-btrace.c   | 9 +++------
 3 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/gdb/common/scoped_mmap.h b/gdb/common/scoped_mmap.h
index 763f40e201c..0b504c96fec 100644
--- a/gdb/common/scoped_mmap.h
+++ b/gdb/common/scoped_mmap.h
@@ -57,7 +57,7 @@ public:
 
   DISABLE_COPY_AND_ASSIGN (scoped_mmap);
 
-  void *release () noexcept
+  ATTRIBUTE_UNUSED_RESULT void *release () noexcept
   {
     void *mem = m_mem;
     m_mem = MAP_FAILED;
diff --git a/gdb/nat/linux-btrace.c b/gdb/nat/linux-btrace.c
index b51e70fbaff..ef291ec2310 100644
--- a/gdb/nat/linux-btrace.c
+++ b/gdb/nat/linux-btrace.c
@@ -544,13 +544,11 @@ linux_enable_bts (ptid_t ptid, const struct btrace_config_bts *conf)
 
   bts->bts.size = size;
   bts->bts.data_head = &header->data_head;
-  bts->bts.mem = (const uint8_t *) data.get () + data_offset;
+  bts->bts.mem = (const uint8_t *) data.release () + data_offset;
   bts->bts.last_head = 0ull;
   bts->header = header;
   bts->file = fd.release ();
 
-  data.release ();
-
   tinfo->conf.bts.size = (unsigned int) size;
   return tinfo.release ();
 }
@@ -667,11 +665,10 @@ linux_enable_pt (ptid_t ptid, const struct btrace_config_pt *conf)
   pt->pt.size = aux.size ();
   pt->pt.mem = (const uint8_t *) aux.release ();
   pt->pt.data_head = &header->aux_head;
-  pt->header = header;
+  pt->header = (struct perf_event_mmap_page *) data.release ();
+  gdb_assert (pt->header == header);
   pt->file = fd.release ();
 
-  data.release ();
-
   tinfo->conf.pt.size = (unsigned int) pt->pt.size;
   return tinfo.release ();
 }
-- 
2.20.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]