From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id j25DAGFz6mId0h8AWB0awg (envelope-from ) for ; Wed, 03 Aug 2022 09:08:49 -0400 Received: by simark.ca (Postfix, from userid 112) id E906D1EA05; Wed, 3 Aug 2022 09:08:48 -0400 (EDT) Authentication-Results: simark.ca; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.a=rsa-sha256 header.s=default header.b=L+fYY/Xp; dkim-atps=neutral X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RDNS_DYNAMIC,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from sourceware.org (ip-8-43-85-97.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 9A57C1E9EB for ; Wed, 3 Aug 2022 09:08:48 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id BFB0A38582B7 for ; Wed, 3 Aug 2022 13:08:47 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BFB0A38582B7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1659532127; bh=Kam2xeKTrUSqm/ZdvhMT3dmhEUJerURBREqbE5PuvaY=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=L+fYY/XpCEPT7fQcQdnHN2M9cwjyzbsUmoRHYMqrqBoWEpklSsCyZP1M8yquAY6/T 6brId6388c/qehGpusyaIkDJyxvLWcy/QKhpoZZsu0EDJvFpx/HJG8SO+82XmGvCt+ xijaGnw2ae5Nn+9ZGEPAtkhAnRrzPsKZaV+Km7xA= Received: from mail-io1-xd2e.google.com (mail-io1-xd2e.google.com [IPv6:2607:f8b0:4864:20::d2e]) by sourceware.org (Postfix) with ESMTPS id E71C03858422 for ; Wed, 3 Aug 2022 13:08:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E71C03858422 Received: by mail-io1-xd2e.google.com with SMTP id i84so240578ioa.6 for ; Wed, 03 Aug 2022 06:08:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-message-state:from:to:cc; bh=Kam2xeKTrUSqm/ZdvhMT3dmhEUJerURBREqbE5PuvaY=; b=3i7y+YnMgGVzBC8xWkfevp+vAUU1SG/u1Z4iF2OTruyxqEOUFVUy705TpY5a8LSr3I D6nRPMWsMQnaNp+YruCVql6/SQFyTQafP7llLSDQHd6hya1rrjagD3PG9Kx/fQK+mwj6 ne4vGbq+l/r/IBpoNcz0oiQjq2YNFNNqwIUGS88e1FN9pwu8cR1KxxElXidHgp5MbnCX QUJi43SkMq/H5I4yffi7JVNvq3kQGAhSbRdKWKVCRdVH/AmpU5ltU0lPSlWFNsIvgmY9 KG8Y/Yvcie55Flc9JmU/+TX37u0in5qQ7LXCFXoHtx+Q05FahiLOjmxFqvAgAIXo/iJT 6Qww== X-Gm-Message-State: AJIora/ZXK6XjbOeIDRU43q+EpBsNwDFpnBHkOFobeJhicY3OhhZIKJv AHJ9jKbCqp7q9xRP9EPGQG2MAmVJWgL8Yw== X-Google-Smtp-Source: AGRyM1usIkZrDVmUQG6s2lQ6yxL4gqEMd0cKI6Zmf83UDa7jilXxyI0OWAm/s3wCu1gLVBva3yNjwQ== X-Received: by 2002:a05:6638:d54:b0:33f:8e41:a3b3 with SMTP id d20-20020a0566380d5400b0033f8e41a3b3mr10571092jak.251.1659532106941; Wed, 03 Aug 2022 06:08:26 -0700 (PDT) Received: from murgatroyd.Home (71-211-185-228.hlrn.qwest.net. [71.211.185.228]) by smtp.gmail.com with ESMTPSA id h14-20020a02b60e000000b0033ebbb649fasm7631057jam.101.2022.08.03.06.08.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 03 Aug 2022 06:08:26 -0700 (PDT) To: gdb-patches@sourceware.org Subject: [PATCH 0/2] Implement target async for Windows Date: Wed, 3 Aug 2022 07:08:20 -0600 Message-Id: <20220803130822.735057-1-tromey@adacore.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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: , From: Tom Tromey via Gdb-patches Reply-To: Tom Tromey Errors-To: gdb-patches-bounces+public-inbox=simark.ca@sourceware.org Sender: "Gdb-patches" I wanted target async to work on Windows for another project. This short series is the result. This series is based on my earlier patch to make strwinerror available to all the Windows native code. That patch was useful while debugging these. The basic problem on Windows is that WaitForDebugEvent can't be mixed with WaitForMulpleObjects -- there's no way to get some kind of "debug handle" to wait on. To handle this, WaitForDebugEvent is now called in a worker thread. However, to do that, certain other Windows calls must be done in that same thread, as various debugging APIs can only be used from the thread that started the inferior. (Not all of these are documented, either.) I've tested this using the internal AdaCore test suite. Tom