From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) by sourceware.org (Postfix) with ESMTPS id 1296738B67BC for ; Mon, 13 Nov 2023 15:05:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1296738B67BC Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=palves.net Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 1296738B67BC Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699887928; cv=none; b=tLAmcxpo+rHsiomds7QbSB8TZlSFGyygbrzF/vijKU47LJt6J2Is9/O2cNZarxz6xDES1R55glQRXSNAHDbyApOxeh5ZV+w9pyDCOiL5fuFu9WBJo/vHP2a2asUA6Y7KNdXDzmhJOHJzrkn7eiqz1ulW6p8jUS7LZbIW+5GmbQI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699887928; c=relaxed/simple; bh=FuYZuebrUp0UMQR1w8tS2RlZGznsQiQq+7XbEnvuH70=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=ukwZhuqRxEfcsCwUHCxOovq3NWoIC+a2WBcgOVOdix/AuEDMzMEc9hyMRDVzbcX8pYleyv3tqIaTDfxzqOGnB5dmJeTGOZXJ2NAs6vHxA4fuV6INBpM9mo9HFh1Uq+S4pqBQHN0QThCaz4p5eRRVbeuLKgKezsnK1bOUmKmUsTI= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-4079ed65471so37565055e9.1 for ; Mon, 13 Nov 2023 07:05:27 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699887926; x=1700492726; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WRssb5jjHb3yb6pFqquuSJuADX6ssV54FZMdGNSxxJk=; b=mJhFqI/IIH4bYtwZiZDjiS+6EE/rjZ+Fh5r7H6qoH2z0lfpk5pb5+MxGwQdNCxdj2e h+I5zR6VIgsqtlP9Kueps39EA/LX7yamyOERu7Fj7w1lA0NT5omgwzsX3C5yzSvPFcJv aUzVPDLRc9NkTRsJSv6H5MGHa3veG3MUyOUd0f3ZONZoA6xOytseCkAqkpGDSC4DZl+O v+ECARUm0GU4InJZti/35DyaZAYxstCJwGhXbXZhtcA5xB9Q7TYha3guc0a2TCulf3kz I+6OO+DRNAkvTWfbrQdWSi6hFjibkjXSjjuifTCvMR7jH2hpVxUeXM6N9jkqo1Ua3hHU 82sg== X-Gm-Message-State: AOJu0Yz7NW/TXzcZKydOv1QwwIJgWPqWk5qbEau5ACKmfBmGuk55db6R VeUzKF+s//k77EL3vYBnjNHKkiUeFfs= X-Google-Smtp-Source: AGHT+IE5Z0JT1C5L3C+NQXjdWnA5YbNQnDzXcAx1hZktUT9U7g4zRnHurk9E6tpT9Cw0m0Lsq50Lmg== X-Received: by 2002:a05:600c:5487:b0:405:dbe2:df10 with SMTP id iv7-20020a05600c548700b00405dbe2df10mr5052103wmb.35.1699887925537; Mon, 13 Nov 2023 07:05:25 -0800 (PST) Received: from localhost ([2001:8a0:f91e:1a00:8060:1e54:fb28:9635]) by smtp.gmail.com with UTF8SMTPSA id e10-20020a05600c4e4a00b004063ea92492sm8469130wmq.22.2023.11.13.07.05.24 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 13 Nov 2023 07:05:25 -0800 (PST) From: Pedro Alves To: gdb-patches@sourceware.org Subject: [FYI/pushed v4 12/25] gdbserver/linux-low.cc: Ignore event_ptid if TARGET_WAITKIND_IGNORE Date: Mon, 13 Nov 2023 15:04:14 +0000 Message-Id: <20231113150427.477431-13-pedro@palves.net> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20231113150427.477431-1-pedro@palves.net> References: <20231113150427.477431-1-pedro@palves.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-10.0 required=5.0 tests=BAYES_00,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,GIT_PATCH_0,HEADER_FROM_DIFFERENT_DOMAINS,KAM_DMARC_STATUS,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: gdbserver's linux_process_target::wait loops if: - called in sync mode, and, - wait_1 returns TARGET_WAITKIND_IGNORE, _and_, - wait_1 also returns null_ptid. The null_ptid check fails however when this path is taken: ptid_t linux_process_target::filter_exit_event (lwp_info *event_child, target_waitstatus *ourstatus) { ... if (!is_leader (thread)) { if (report_exit_events_for (thread)) ourstatus->set_thread_exited (0); else ourstatus->set_ignore (); <<<<<<< delete_lwp (event_child); } return ptid; } This makes linux_process_target::wait return TARGET_WAITKIND_IGNORE in sync mode, which is unexpected by the core and fails an assertion. This commit fixes it by just making linux_process_target::wait loop if it got a TARGET_WAITKIND_IGNORE, irrespective of event_ptid. Change-Id: I39776908a6c75cbd68aa04139ffcf7be334868cf --- gdbserver/linux-low.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/gdbserver/linux-low.cc b/gdbserver/linux-low.cc index 7a4f8758ae9..ca2b7aa1e1b 100644 --- a/gdbserver/linux-low.cc +++ b/gdbserver/linux-low.cc @@ -3643,7 +3643,6 @@ linux_process_target::wait (ptid_t ptid, event_ptid = wait_1 (ptid, ourstatus, target_options); } while ((target_options & TARGET_WNOHANG) == 0 - && event_ptid == null_ptid && ourstatus->kind () == TARGET_WAITKIND_IGNORE); /* If at least one stop was reported, there may be more. A single -- 2.34.1