From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from nx204.node02.secure-mailgate.com (nx204.node02.secure-mailgate.com [192.162.87.204]) by sourceware.org (Postfix) with ESMTPS id 3F3B03857340 for ; Sun, 24 Apr 2022 21:16:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 3F3B03857340 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=trande.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=trande.de Received: from host202.checkdomain.de ([185.137.168.148]) by node02.secure-mailgate.com with esmtps (TLSv1.2:AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from ) id 1nijaW-0066Bl-Hv for gdb-patches@sourceware.org; Sun, 24 Apr 2022 23:16:13 +0200 X-SecureMailgate-Identity: zied.guermazi@trande.de;host202.checkdomain.de Received: from Trande0001.fritz.box (dynamic-077-181-125-039.77.181.pool.telefonica.de [77.181.125.39]) (Authenticated sender: zied.guermazi@trande.de) by host202.checkdomain.de (Postfix) with ESMTPSA id 06D252805D8; Sun, 24 Apr 2022 23:16:12 +0200 (CEST) X-SecureMailgate-Identity: zied.guermazi@trande.de;host202.checkdomain.de From: Zied Guermazi To: gdb-patches@sourceware.org Cc: Zied Guermazi Subject: [PATCH 1/1] get page size using sysconf (_SC_PAGESIZE) instead of PAGE_SIZE Date: Sun, 24 Apr 2022 23:15:41 +0200 Message-Id: <20220424211541.70674-2-zied.guermazi@trande.de> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220424211541.70674-1-zied.guermazi@trande.de> References: <20220424211541.70674-1-zied.guermazi@trande.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-PPP-Message-ID: <20220424211612.1239726.45847@host202.checkdomain.de> X-PPP-Vhost: trande.de X-Originating-IP: 185.137.168.148 X-SecureMailgate-Domain: host202.checkdomain.de X-SecureMailgate-Username: 185.137.168.148 Authentication-Results: secure-mailgate.com; auth=pass smtp.auth=185.137.168.148@host202.checkdomain.de X-SecureMailgate-Outgoing-Class: ham X-SecureMailgate-Outgoing-Evidence: SB/global_tokens (0.00262950505907) X-Recommended-Action: accept X-Filter-ID: Pt3MvcO5N4iKaDQ5O6lkdGlMVN6RH8bjRMzItlySaT/sVMJadY2w6fTK2pRCU7z2PUtbdvnXkggZ 3YnVId/Y5jcf0yeVQAvfjHznO7+bT5wgSQOko5ya3orWH1MkzQXa2oPZqVS5i0KNMNtVCi0tRw/C h5SE4jAyhe1COeASyU96bUwq8Kywkpt9szD3Z3NF4ld5rdi2ZxohSIq+dqifZoVY3IcDeckxfee+ NDQ6wUl3g/WbBekzB3IK8RY7uNAEcY1i02TJefD768F5oV2iM8C0xB8SW32wy2mbLZXD/P/GvGW1 ah1D7hHxGiezZ96out5PpkrBQueV+Yg5wqLK/LXDLRhLABXs81Y8X58rOcwLMK9HC+pUQBAyR03+ Yzd8ARsynxDH0D+SLDJWdESXziw50BoEYB44qFPH6be8XgtMhiMRK0C70oXENkWqJaNtpfX1h/uL cDQJCG2naSen4S0KEAnwyE9dte+FkDKSV99EDBffVZVjmVaNbG4ZJG7F2RgQw3d3zmVen9wp80qQ nk5/t+UnI24Hleg6UWHjmGlvyMjbyNpr4xR6RL2C9+qlIny++hg9dJLqN5zmWqF/oNe6FVV7drXD mtOldfpWzeXX3Vs0+OVZ6o01Ur0UfsSgVqahaS1Xn3nbmTfiR5jKRrn6qQ/in5NA6oG3bP7L0DnU JleWftUulkbC12DciiOUAQy3WRoWhjJ4ABRp4spTBKsH/WzE78WB+6LKJkk4wWAos7Vk+4I720v2 H9/mQncon4T7OymHvLHT1C7MG/JfB2tffeAUw3J+xqCNAN7GfSBFXdcOXXm38/++NKnQrU/tOnYQ psOL3D4WKYPb9hiQqsMR3pimW+H6hrLs7bihM+ep7Sq+vnK5vq335GkOmYDoHPDsFqo1t5bEBI0m 4NsB3v57rn7svr0CR7c5hAqOktwTi5ftyk/jCHE72AtAGhc4OdJMhYIB6NnZ7EwQ60zrqjwJWw42 swm4bO6gacpMpzI93NKmpOx249IDJgHZhSqYgJJFthw94zyDVRbqPxaxhXoarW2MF3gazIzgmJi5 UydShOH22SRgbHWq1uciMDoDhcd9NG1JDoOknqc6qrb4AiZPF6HXPq5gLm4Q4ElmvUALMK9HC+pU QBAyR03+Yzd87yCUgX8YuF5WBQr1Bq861zvA3BXN5HBbApl4eIrLaWewxjLyThsLecb51qdaSQev MS+4ayUpOtEhdxekWDmK9g== X-Report-Abuse-To: spam@node04.secure-mailgate.com X-Spam-Status: No, score=-11.0 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Apr 2022 21:16:15 -0000 --- gdb/nat/linux-btrace.c | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/gdb/nat/linux-btrace.c b/gdb/nat/linux-btrace.c index b0d6dcd7cf1..a9aaa9c88b3 100644 --- a/gdb/nat/linux-btrace.c +++ b/gdb/nat/linux-btrace.c @@ -486,9 +486,10 @@ linux_enable_bts (ptid_t ptid, const struct btrace_config_bts *conf) if (fd.get () < 0) diagnose_perf_event_open_fail (); + long page_size = sysconf (_SC_PAGESIZE); /* Convert the requested size in bytes to pages (rounding up). */ - pages = ((size_t) conf->size / PAGE_SIZE - + ((conf->size % PAGE_SIZE) == 0 ? 0 : 1)); + pages = ((size_t) conf->size / page_size + + ((conf->size % page_size) == 0 ? 0 : 1)); /* We need at least one page. */ if (pages == 0) pages = 1; @@ -507,17 +508,17 @@ linux_enable_bts (ptid_t ptid, const struct btrace_config_bts *conf) size_t length; __u64 data_size; - data_size = (__u64) pages * PAGE_SIZE; + data_size = (__u64) pages * page_size; /* Don't ask for more than we can represent in the configuration. */ if ((__u64) UINT_MAX < data_size) continue; size = (size_t) data_size; - length = size + PAGE_SIZE; + length = size + page_size; /* Check for overflows. */ - if ((__u64) length != data_size + PAGE_SIZE) + if ((__u64) length != data_size + page_size) continue; errno = 0; @@ -532,7 +533,7 @@ linux_enable_bts (ptid_t ptid, const struct btrace_config_bts *conf) struct perf_event_mmap_page *header = (struct perf_event_mmap_page *) data.get (); - data_offset = PAGE_SIZE; + data_offset = page_size; #if defined (PERF_ATTR_SIZE_VER5) if (offsetof (struct perf_event_mmap_page, data_size) <= header->size) @@ -630,7 +631,8 @@ linux_enable_pt (ptid_t ptid, const struct btrace_config_pt *conf) diagnose_perf_event_open_fail (); /* Allocate the configuration page. */ - scoped_mmap data (nullptr, PAGE_SIZE, PROT_READ | PROT_WRITE, MAP_SHARED, + long page_size = sysconf (_SC_PAGESIZE); + scoped_mmap data (nullptr, (size_t) page_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd.get (), 0); if (data.get () == MAP_FAILED) error (_("Failed to map trace user page: %s."), safe_strerror (errno)); @@ -641,8 +643,8 @@ linux_enable_pt (ptid_t ptid, const struct btrace_config_pt *conf) header->aux_offset = header->data_offset + header->data_size; /* Convert the requested size in bytes to pages (rounding up). */ - pages = ((size_t) conf->size / PAGE_SIZE - + ((conf->size % PAGE_SIZE) == 0 ? 0 : 1)); + pages = ((size_t) conf->size / page_size + + ((conf->size % page_size) == 0 ? 0 : 1)); /* We need at least one page. */ if (pages == 0) pages = 1; @@ -661,7 +663,7 @@ linux_enable_pt (ptid_t ptid, const struct btrace_config_pt *conf) size_t length; __u64 data_size; - data_size = (__u64) pages * PAGE_SIZE; + data_size = (__u64) pages * page_size; /* Don't ask for more than we can represent in the configuration. */ if ((__u64) UINT_MAX < data_size) @@ -732,7 +734,8 @@ linux_enable_btrace (ptid_t ptid, const struct btrace_config *conf) static enum btrace_error linux_disable_bts (struct btrace_tinfo_bts *tinfo) { - munmap((void *) tinfo->header, tinfo->bts.size + PAGE_SIZE); + long page_size = sysconf (_SC_PAGESIZE); + munmap ((void *) tinfo->header, (size_t) (tinfo->bts.size + page_size)); close (tinfo->file); return BTRACE_ERR_NONE; @@ -743,8 +746,9 @@ linux_disable_bts (struct btrace_tinfo_bts *tinfo) static enum btrace_error linux_disable_pt (struct btrace_tinfo_pt *tinfo) { - munmap((void *) tinfo->pt.mem, tinfo->pt.size); - munmap((void *) tinfo->header, PAGE_SIZE); + long page_size = sysconf (_SC_PAGESIZE); + munmap ((void *) tinfo->pt.mem, tinfo->pt.size); + munmap ((void *) tinfo->header, (size_t) page_size); close (tinfo->file); return BTRACE_ERR_NONE; -- 2.25.1