Message ID | 20241018152052.1509373-1-stephan.rohr@intel.com |
---|---|
Headers |
Return-Path: <gdb-patches-bounces~patchwork=sourceware.org@sourceware.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 79F2F385800F for <patchwork@sourceware.org>; Fri, 18 Oct 2024 15:22:13 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.16]) by sourceware.org (Postfix) with ESMTPS id F13B43858C42 for <gdb-patches@sourceware.org>; Fri, 18 Oct 2024 15:21:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F13B43858C42 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org F13B43858C42 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=192.198.163.16 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1729264897; cv=none; b=hXvsYpV0R0TmkbyTl0nGDh2seoPHJFjomQomnGkNXLRcTPklFen5eo8Qq8dv3ODPKV5DkBoyugO/OSfZvjfSwEby/B5QIHraG/mmWgrie3rLXt8e6PE2Ax6phIHy/E9ASkAA6GjzpB0556AaioXZpLu60YWFqM2dCNGNz/Nw5Lg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1729264897; c=relaxed/simple; bh=60keqXElVJZzKsCrDjpK6jG+DJXDqUh6BPEd7XuecOw=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=GufkIgehbwFVwN8WbYZ60c1z3IfQM1nhwklDZDlxUIgbAjuw77bGLb8nvgGp396A9c7nRFx/z9eJBJlLIHfVpaLl8HAO1R5GzYzRu29H5VBY6CMroB9YjHewKw+cnG9xcZDDjsNii6igxCv5z4KY1kOl/VOQ4VAQ+YwGZBbyzvk= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1729264893; x=1760800893; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=60keqXElVJZzKsCrDjpK6jG+DJXDqUh6BPEd7XuecOw=; b=UJckA+iKMe1BngwF+v6St/yMhM3V9LvUejLN8mDxH5+o/sCx7Q8kUhrh fhF8QY9nlhaFHTkwCVVVxzZzZ2OpYB/uqQQ5Pcep/qUY7pQFqX+PHb5VG bFGxK54DWyWGiaA3C374cqCJFvZLXmqgxsde5Fm4XpYmonznWusH0RjY8 3uEZ26S0ecstwqUnusVLhTmnYRrHF0+pIH16iw4uTCQAFeup7owoDwXRN T+2um6uSxntXRu+l3L2x7iH4rV2oQY5Dv/Xz2TODrPqaFuG4foHsxh5Bh BQ6ECgaNZjp6ioMRhB0YZypoVzhYO1/8V4uYptiOETHa0fxuyMWiEpDjA A==; X-CSE-ConnectionGUID: sNkdYxFqR7SC9YyVkkjOaQ== X-CSE-MsgGUID: AEFFxt7ZTHWQKgXNHSfZsQ== X-IronPort-AV: E=McAfee;i="6700,10204,11229"; a="16415721" X-IronPort-AV: E=Sophos;i="6.11,214,1725346800"; d="scan'208";a="16415721" Received: from orviesa006.jf.intel.com ([10.64.159.146]) by fmvoesa110.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Oct 2024 08:21:32 -0700 X-CSE-ConnectionGUID: uPch3iKGQvKTeCwHPdS14A== X-CSE-MsgGUID: 7IaPEc5zQWWKVtGDQtyZAQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,214,1725346800"; d="scan'208";a="79039281" Received: from 984fee0031af.jf.intel.com (HELO localhost) ([10.165.54.65]) by orviesa006-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Oct 2024 08:21:32 -0700 From: Stephan Rohr <stephan.rohr@intel.com> To: gdb-patches@sourceware.org Cc: simark@simark.ca, aburgess@redhat.com Subject: [PATCH v3 0/3] gdbserver: add thread map Date: Fri, 18 Oct 2024 08:20:49 -0700 Message-Id: <20241018152052.1509373-1-stephan.rohr@intel.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, SPF_HELO_NONE, SPF_NONE, TXREP, URIBL_SBL_A autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list <gdb-patches.sourceware.org> List-Unsubscribe: <https://sourceware.org/mailman/options/gdb-patches>, <mailto:gdb-patches-request@sourceware.org?subject=unsubscribe> List-Archive: <https://sourceware.org/pipermail/gdb-patches/> List-Post: <mailto:gdb-patches@sourceware.org> List-Help: <mailto:gdb-patches-request@sourceware.org?subject=help> List-Subscribe: <https://sourceware.org/mailman/listinfo/gdb-patches>, <mailto:gdb-patches-request@sourceware.org?subject=subscribe> Errors-To: gdb-patches-bounces~patchwork=sourceware.org@sourceware.org |
Series | gdbserver: add thread map | |
Message
Rohr, Stephan
Oct. 18, 2024, 3:20 p.m. UTC
Hi all, this is version 3 of my patch that extends the 'process_info' struct with a process specific thread map for faster lookup of threads. You can find v2 of the patch at https://sourceware.org/pipermail/gdb-patches/2024-September/211509.html Simon's feedback on v2: https://sourceware.org/pipermail/gdb-patches/2024-October/212207.html My reply on v2: https://sourceware.org/pipermail/gdb-patches/2024-October/212471.html Changes from v2: * Added a patch to replaced the templated versions of 'find_thread' and 'for_each_thread' with 'gdb::function_view'. * Added a patch to replace 'std::list' with 'intrusive_list'. * Adapted the gdbserver patch to the 'intrusive_list' type and 'gdb::function_view'. Stephan Rohr (3): gdbserver: use 'gdb::function_view' in 'find_*' and 'for_each_*' gdbserver: introduce 'introdusive_list' type gdbserver: add process specific thread list and map. gdbserver/dll.cc | 4 +- gdbserver/gdbthread.h | 125 +++++----------- gdbserver/inferiors.cc | 283 +++++++++++++++++++++++++++++++++---- gdbserver/inferiors.h | 72 +++++----- gdbserver/linux-low.cc | 196 ++++++++++++------------- gdbserver/linux-low.h | 2 +- gdbserver/linux-x86-low.cc | 4 +- gdbserver/regcache.cc | 12 +- gdbserver/regcache.h | 2 +- gdbserver/server.cc | 166 ++++++++++++++-------- 10 files changed, 535 insertions(+), 331 deletions(-)