From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 102067 invoked by alias); 20 Nov 2017 16:35:14 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 102007 invoked by uid 89); 20 Nov 2017 16:35:14 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.3 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KB_WAM_FROM_NAME_SINGLEWORD,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: sessmg23.ericsson.net Received: from sessmg23.ericsson.net (HELO sessmg23.ericsson.net) (193.180.251.45) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 20 Nov 2017 16:35:12 +0000 Received: from ESESSHC015.ericsson.se (Unknown_Domain [153.88.183.63]) by sessmg23.ericsson.net (Symantec Mail Security) with SMTP id ED.F1.07741.F34031A5; Mon, 20 Nov 2017 17:35:12 +0100 (CET) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (153.88.183.145) by oa.msg.ericsson.com (153.88.183.63) with Microsoft SMTP Server (TLS) id 14.3.352.0; Mon, 20 Nov 2017 17:35:11 +0100 Received: from elxacz23q12.ca.am.ericsson.se (192.75.88.130) by AMSPR07MB310.eurprd07.prod.outlook.com (2a01:111:e400:802f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.260.2; Mon, 20 Nov 2017 16:35:10 +0000 From: Simon Marchi To: CC: Simon Marchi Subject: [PATCH 07/19] Remove usage of find_inferior in linux_detach Date: Mon, 20 Nov 2017 16:35:00 -0000 Message-ID: <1511195683-2055-8-git-send-email-simon.marchi@ericsson.com> In-Reply-To: <1511195683-2055-1-git-send-email-simon.marchi@ericsson.com> References: <1511195683-2055-1-git-send-email-simon.marchi@ericsson.com> MIME-Version: 1.0 Content-Type: text/plain X-ClientProxiedBy: CY4PR03CA0075.namprd03.prod.outlook.com (2603:10b6:910:4d::16) To AMSPR07MB310.eurprd07.prod.outlook.com (2a01:111:e400:802f::20) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 944ea3e6-1d11-4fca-a870-08d53034ab3b X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(2017052603258);SRVR:AMSPR07MB310; X-Microsoft-Exchange-Diagnostics: 1;AMSPR07MB310;3:M1meO2gwsiLbdWejXzWG4jusrXrK8stmKnpWMm3G3yJMY+Tjn5Tq6q7xDW1iqit6NBs9QJxEYRSMOVq3kxVuj9WtsdqtcQfj74hvMXEMc/DrLLRkmdMhJjpyHG1sQzMpVqtZ7YEV40E8KXXexzXS2ERGqjw7aQfN//9pNckx5xYYXcFslc3RIAjOrZr12Eh7qAiS/h2JEH+Z7OhIjjRYNXA5duvpQZZiDcJYT0+PPEPEKyqko5cCghdas+pj4/Hc;25:huL4AWt3VTuJgwwU/HSpJgLSkIgYviXARnz0A9wtbvuXW0vWwZfqaEKu6rRysFKbki9pHH0jFRK2y5e/r/7ovITSMur9gyG3rfOHtBkKrFW3c8XFgt8CH3dgf5HNrF3rLMs5C0m7oBXoNjrNSwOEoGmDbTsxuDFTSQVl69tZT/pJj/LAbI1HuH+f52XpAYXy2lfoNNV5h5ELJcKVYNsuOWtST2JmQizGWlocvaFdAuxpZfNrJBR/kzBrF0xc09NWR4z09M9J0Uxq171W2OOErwx3nfYUrm9jW4mcHhNv1pQ74lNn2TKR1XvEx8ZbNYC9Fsru9WXAt22hSYnqw889fi0aVKsAZFwv2puF04EU/8k=;31:E+X6aTRr+1MM8c1HaE+Kh/Pb8q3OZ5vv6ZA+7iFLTT2QeR747HmjmFlMmJANh20BvLCsbX17XRkBMecZynddepgR9B0ks5WylGeNrJ7d9DYW4885blGAGol/yBcB2odzOM9hTMEIImc/WeBgKv61FKCqJGp4zIsH51VLpMNZo50/OlPU2ci6ZkSecNbaOhP5DGhe9I2rgOu0hMhm0mV5OlHPneFTg+xsE+kep8GY6dc= X-MS-TrafficTypeDiagnostic: AMSPR07MB310: X-Microsoft-Exchange-Diagnostics: 1;AMSPR07MB310;20:/OHIE2FPYt7Pwa2YyaTe5QAf10ykePaD0U0K1JzSjbXyMYpQp0dKU9syZpA+h73mhAvC/hSh2ETt5xgY4mPLobMnNwncHT4NpSrdEjnZMz7wYAoHQCyJURObLqwISi7kxRvKDvXMrEr8ko4zd1qGJ4p5GSpBS/0mjfWzvjQh4xxWXWYBOmLB/PPNgCLehKsy4KYZmWY2XzmSDawUJvDtwUsvvxiJiSkjaKjVthBZKu+MDJcvSSbXxc2rmLvWI7ixCWvTEBwKFvgIrwpPAcWRSLNC+YsDTVsba/kUm1iPsIJuHqmRpuRyMTN4vmA4SBdnmvby9H1fANnRwPyXRvOaIS0AMgl5iyxoCpet/Afrbybyc1apAqwSmooHMm1YhWfrPIDzgX9H0OCy6Hpwujs18cslk4UMi4KyG5277m6N0HWTLazw6z80kdexHPCvDISDg5d6ehoZsKQhq8gjOsPTNc7Con4l3E5Bi4qrTRbtnDEPUF8NSZikpXkoWk7SzhA+;4:HYrWB2hhGzcQ46ve+95er2GUD9MVglPS50sLScRxKuTY0wj9KOSLdwqMk2WijBDy51BHIQz1M30X0cZmD2qGwnXoxTNWy7lBLhZiZrR4r24xuGvKdQ3c2hMlJWdt1R3u9ZaVqARxdWnaZlg4DR0uFtUKIUS49xPChajbBkNfVlqxUUURKWUH6FJxApa8B6UNb55B5BH95ROzzdzEWAw9HNa2yS1vgtf0qk8c0yji/XcfrlBAYkd/b+exO2t7KcSuyAOVOTZ0oQZK37NDo3ylEkF8hQ+kp9qwtGumiJvYrhjailiVvW3H3CVi2Xfh/kvZ X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(100000703101)(100105400095)(10201501046)(3231022)(6041248)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123558100)(20161123560025)(20161123562025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:AMSPR07MB310;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:AMSPR07MB310; X-Forefront-PRVS: 04976078F0 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(979002)(6009001)(346002)(376002)(39860400002)(199003)(189002)(54534003)(3846002)(97736004)(66066001)(5003940100001)(33646002)(16526018)(50986999)(76176999)(6666003)(81156014)(305945005)(7736002)(81166006)(6512007)(5660300001)(316002)(6506006)(6486002)(16586007)(6916009)(2950100002)(101416001)(8676002)(2351001)(2906002)(105586002)(36756003)(47776003)(86362001)(50466002)(48376002)(50226002)(8936002)(106356001)(68736007)(2361001)(53936002)(478600001)(25786009)(6116002)(4326008)(189998001)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1101;SCL:1;SRVR:AMSPR07MB310;H:elxacz23q12.ca.am.ericsson.se;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Received-SPF: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=simon.marchi@ericsson.com; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;AMSPR07MB310;23:R9jQ2ImVFQfO3x9IdJCPmySXPkUy6bPxwg1GiQIEdZ?= =?us-ascii?Q?GhXGvb7tOOMlrGXMJ4fJM2vyTuP4uD/qIZgyOFCl2u8Lf7/bo/CdZ4+NMYWj?= =?us-ascii?Q?35wp8MFTvNVzqRTO+LwhbkZpOmao6Tv1Y3jGNphcvdNsI9Px+Ci8YJtfev2w?= =?us-ascii?Q?+06Uf80gj+e5I8iOUS6EUjCiYhvKFFrQJQUSYdJGo9yGfFWcYOJ0PVi5iN/u?= =?us-ascii?Q?lkweBAUh13VqHD2OldM2Tkf23sfRbGLU4ZiCkzMOtzpVdMeXxubadLwPVC5Z?= =?us-ascii?Q?UDP7z3Ka5rAkj5qaDffNwscClxMf1jlTZj41PzPnNprTE5NWaax5UvzVLJE3?= =?us-ascii?Q?8CXxcNDp9bYqJWaDzB3yiQLEV9OxJTsqMevapHZbXX2mr/t0KwbZwr788udQ?= =?us-ascii?Q?9HYI2YQfqSwOIAE9V5HVaYid9+NfANWZd5QveytN8HtdDKEuGQ+0yU1w8CJD?= =?us-ascii?Q?4nK36MMW6c3pffKoMzC2Q3DULdsFT8qD05Mrbpah9JUhHlhs6CLV7GJy9iI6?= =?us-ascii?Q?xbVcmzwgwwJPE5HQn2J3gi3I9rn7B+K0GexkeX85KaNCWsRUjOARttbSe04i?= =?us-ascii?Q?6bmWkGhR+SQoW/te9zeAhF4xdMDcXB6bDIBOebqFS0I3ljRO4NXu5f9JNJSh?= =?us-ascii?Q?fbAlTUf8wIEMcmGkqYxnivnVFsSTJpYhlP2gx4CkwbQujZUDu5NlSVQkWv+I?= =?us-ascii?Q?QBJPT4RXiz2UljzbgvGZN5QPyv764BF1AgTw1kIBK2PQ7MnX9+/VH5qLM0AW?= =?us-ascii?Q?VTn3J02GI3upP9gf2qIvoC2j4eiJa/IsKHUL75/2iMWg7Ju8UchMaA0WCH1D?= =?us-ascii?Q?HJ8UI2kj0814iD8uGYe9SMwpTz6/mwkPpwMCVVL2oR7+jWDR9Vg7xyBtB1Ld?= =?us-ascii?Q?iDxZO28fGYPZKts8llqNI+7H40P8yUZTZ1dLdNSMPUpo0uQZHLmtxrRi9lKh?= =?us-ascii?Q?xusWUfE7PmHBKWiv2H1CQnQmEkBDI02eTicQyO1NcgaBpMbsfHi60emM66pe?= =?us-ascii?Q?boo3VXYH8/2i2Lqb4HV11ASS5SuuyBK25Kfm377MoHI+HkViAywXJsy2gjl3?= =?us-ascii?Q?pbgqxOMavYaTTG5NGC0pGj9V+djpw5ktR7SoU9rPmXu7AzkXAIn1rLxF5RoA?= =?us-ascii?Q?+NczrZPUSlFOpSf3DVt7yctqvOb2q4pb+eKn5C3cqiOoagILQnMAO4Mtz6UD?= =?us-ascii?Q?PbCvUvbDJO1y2516xWSd/C4Zv5xXtN9oJhiho2sw0un6h88q2ckGO9mJBhnz?= =?us-ascii?Q?WhmxNyQ6K0QjW/hK8=3D?= X-Microsoft-Exchange-Diagnostics: 1;AMSPR07MB310;6:ZN0vIE6yQg+iHoUXLzOSAm4WFP9cZDwLHDEUTXmZQeIwkWUcQ2PyyNW1cpgJ9uVjLrC+Xx2WQHqH5lcLCQpc86FhmPgWJisF71uC2CHAfJ43ntIHKxD5/My0wYjyaCRjnla9ksjfrqAeu/kl1W4wUrwg3FQjxaaC1ioX6OsF/SPzaD21l+n7IJje6JeD8lV763y5SVKJ0oBEUMVdD/AYSVp8k1Q6y8Xo7QWg8mcOZR6wQRf4Dor/iIfvrnFJVoACgas6ZNXOttdmYRuIYo60eBI8IDvIi0aM1RBbYhuI/Lv/dMykE3gRfpEZmgJnhk0n01bfIax+kKC6FOkiBgZAI5jaBpNaXpdjq1RuzzfDDFU=;5:Vk3CxqS2A0qeUBJZB+ic5/Pc7r74CC4JdE9DuS4jkEzIoonIVkSnKiioO0K8nbwnW/j3hbx8qze+o78Uj8jlD/QtxepC1lSL5ZsQwbYjftZYY7G4cKr13JKi9N7RIL8ToKEDgo7MokmlwOHam2c7uDvOnnyEjNUE33Eg93WBSeY=;24:GtIyuPcqbmZOjmObVT0R/AMws77W0FFDG/Gkfet4FfFmD5PLxd4jDQOd43Imm8zPsBz5DmV6TAi7NLQrQ96dEBaKA6BKSMnI1oEW6qtIjPI=;7:Tuo4DGwsNk/glsYHzyEvR63hOHjQPLR3nRf0qsyRouzgc49eRw8Xbo99UIREgad0H5D6sa+GIbuHtfv4uQbYajuirzRP+81Y7Repq3ORml6kR37G3lHZH6eamlE5dMMpSvSOHgkvr/X5tc+nrCXthFjA+amFjmXJnl3yEf0m8fSvh3y486k0eUut1Ujpy/q6Hz6qA4zzTPik48xHp9WstwCA9HDw4KIFpp1tExNrirhNEjel7EYr+8oG4eyehr06 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Nov 2017 16:35:10.2977 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 944ea3e6-1d11-4fca-a870-08d53034ab3b X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 92e84ceb-fbfd-47ab-be52-080c6b87953f X-MS-Exchange-Transport-CrossTenantHeadersStamped: AMSPR07MB310 X-OriginatorOrg: ericsson.com X-IsSubscribed: yes X-SW-Source: 2017-11/txt/msg00400.txt.bz2 From: Simon Marchi Replace with for_each_thread with pid filtering. gdb/gdbserver/ChangeLog: * linux-low.c (linux_detach_lwp_callback): Return void, remove args parameter, don't check for pid. (linux_detach): Use for_each_thread. --- gdb/gdbserver/linux-low.c | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c index 333d87d..a4e19ba 100644 --- a/gdb/gdbserver/linux-low.c +++ b/gdb/gdbserver/linux-low.c @@ -1580,28 +1580,20 @@ linux_detach_one_lwp (struct lwp_info *lwp) delete_lwp (lwp); } -/* Callback for find_inferior. Detaches from non-leader threads of a +/* Callback for for_each_thread. Detaches from non-leader threads of a given process. */ -static int -linux_detach_lwp_callback (thread_info *thread, void *args) +static void +linux_detach_lwp_callback (thread_info *thread) { - struct lwp_info *lwp = get_thread_lwp (thread); - int pid = *(int *) args; - int lwpid = lwpid_of (thread); - - /* Skip other processes. */ - if (thread->id.pid () != pid) - return 0; - /* We don't actually detach from the thread group leader just yet. If the thread group exits, we must reap the zombie clone lwps before we're able to reap the leader. */ - if (thread->id.pid () == lwpid) - return 0; + if (thread->id.pid () == thread->id.lwp ()) + return; + lwp_info *lwp = get_thread_lwp (thread); linux_detach_one_lwp (lwp); - return 0; } static int @@ -1635,7 +1627,7 @@ linux_detach (int pid) /* Detach from the clone lwps first. If the thread group exits just while we're detaching, we must reap the clone lwps before we're able to reap the leader. */ - find_inferior (&all_threads, linux_detach_lwp_callback, &pid); + for_each_thread (pid, linux_detach_lwp_callback); main_lwp = find_lwp_pid (pid_to_ptid (pid)); linux_detach_one_lwp (main_lwp); -- 2.7.4