From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from sonic309-24.consmr.mail.ir2.yahoo.com (sonic309-24.consmr.mail.ir2.yahoo.com [77.238.179.82]) by sourceware.org (Postfix) with ESMTPS id 803373858C3A for ; Thu, 9 May 2024 10:07:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 803373858C3A Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=yahoo.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=yahoo.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 803373858C3A Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=77.238.179.82 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1715249230; cv=none; b=XNBDj7hVD1N2LOD8W/q+pVo53QtUAC1iC5ENoMERh8fG7tRlDyae7x3m0fFjivpDqBzeVMeTDOEDWk13IK4BXpvcwPbUvtTBdD6yiSYS+DhGBY1ixtPBPDCS52+o8H3oJfLGKxU3VvIGWHqkBn3b0P4zJehm2U3ZFTLNZADgZ24= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1715249230; c=relaxed/simple; bh=hk8BlmoOKynNiBtuzIJhM2zGPM1O2qHPBnpZMk5B524=; h=DKIM-Signature:Date:From:To:Message-ID:Subject:MIME-Version; b=lJpbW2Pc9ElcHTFA0HEp3F4oVgLAdTnSefkSiO/niaFjesfmLhFsLVSZ7xnQ/QlnYoa5DvJ0C/reaaHFCN5BDcnTgsOSHx16evoljFQAqMp9GRVp2g3vPDG16gRoOngIXgXzGkpe6hbmweJFq7FGyJNjmEtFT5/mhq1JRhkikjE= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.de; s=s2048; t=1715249227; bh=hk8BlmoOKynNiBtuzIJhM2zGPM1O2qHPBnpZMk5B524=; h=Date:From:To:Cc:In-Reply-To:References:Subject:From:Subject:Reply-To; b=cJj7SEaoxVUB67ZArEyr2T8LzzROVUlYID5qR/oyrkPGKbBqBMMwPlefJ8/RWxJgVu+ov79eXoceUumnrGyw/VipE6x/5qHGihinjWZiD4R5QavYwA8De2+x8kleVpn2eT0y4Ni/Jg28uTimTvhdsvoDyXgtPeLV/N0AJSxlolIO4lyJeNXNivEcIguwkeIq62/vNvLyKwqBLrq2g8C1Kwo7NWFT7AFEPV5bujoHrdnHxrOrwkUhJ8i5XDrce/eLXQxImcA8s48p6ACr4YGZtoxkd63p2j/JWVQInEXUg44ybarU6SFdaFG8cuz8+aqYsMo7hSXYugu5PfTxEdlBPA== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1715249227; bh=6icDScX2mh9nzwcliPdPjMI0F4k6Wc7xcGvRbauDd3z=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=ghPBwpNH/P9M4a8TrsUGtVnZc5DQUL3dnE9JUKdAYeFS0nPckOqeZwQLpVgbEJfceyehAbZ+SeQafGNWgrpuXa+EIYcrAgxYkRRIVWEj0/DFf+rFIPd7CtZWpBQYp4c34i1i4HnLAEGV62iZ0R4MmUjOdt4+uERGqkr3gga29Mvac5rchssqChaTvp/uWtRLQwrJw/EbTyTMZYguEsjK0I8IeSKI0/2sldQcnsvf4UseYEPz/v7ksip6q0qAZ2dC32oxJTdorP3u1kRCN5AhHOksmi1IzNidZXHNz1GQiNvE3zDM5FO039yEjcwFPFIe2rDjbyGbUaJEM5PRZP3qAg== X-YMail-OSG: lHIts2IVM1mf_ocOCGyrcOpdTws24L.zYOuK16_YEyvTzNgI7AL8enu7EozyJAP 8Y24alHlbazAYazfhxbPLTsmuNW1rv60VcQjhcPzG6P076_o0n13fs9n4div8pEc6qrWfyy7a.na 2d_PrAX4zacaut02kh5jNyE2O2HPugaw7c99nNuRnYwFJL7CTB3f19ZBkA93KRGsk97XvLxjZwzo 0DLNQYECJPqnfllJBRxiwTRI3Y8snh5kijp..iq0IZGThlWHfvffqzaRFYtdOD8.8Ijxvimj527P huckLAqzEdz4wcUXp6kvupL7YgGDQkdOXx.Be68qvKoDSHn.NFu7GTHEm.hLacMWc0pbKeOqI5W1 JxNI_HKxeLknzn7pfWBlLP_HwrrbGeMYmLl1MqC3whFkJEkNCCGdcqYbSCIIH994Z4uzCJ6MW1IQ .AfoQURAs0jVlu.8t9CZmJmez4QPuHDym_VTko1q7QTxZyp8A_JBFqbjM2u_AtBLpQZU2JeWY.9e MJi51Mn4eXqxilQRheMQQaXa5gd3q0H1ZnQqRmx3N2wf2qor7m65NdxOx6PnRSZsshlttYFf7gDw VdEVvlZmCC6pmAqxntcYzypEnbJG1wy1gsEbROZvhj3EfJAvlevBxhp86h7UHLEMnY9SAMcZHFIW BeFsdE_MlnrL_K_B1XNEtaM6GmwI5WxTHrVwUVYeBpVjBjFQ_oilCvgG5utN_sjmFOvAjmg4g7bG nCm_gZ1zO3ksNY60ZNW_ep6yg6HFaWBo0JWK8vBonHw2bEUdymGg9YwWf5atsUSYF0OeEIR0gS56 5aOfFjqavnjueZxgDgis0if0AFGa6F2IsbbvgCHUKtSyHzk8765WVLisS83K4o5IhzyEkYDOUDfN g_cmq_q3FG4Awb_GZxB9SQ2uYt7gBF0Yh5MgMN0asO4rjzH.XR.rTX7lhms9fqLhTdEetMuBARFZ x6_6pKzOrTNEk2VPeuvr21PB9_VljAptKdqIZNz1XWtANyEGYLTRTiHQln3TvX1KLL56oAtq9.9S K7g_8_QqrJZYHwPJLJPjDmkWuqe757GG_Xeitm0fUo7nE8229iDZBlLd_VlGMPULTPvzgbKX2hlN r.qEHYzgGpIGXP8eLf0JZKWfNUbXRkO.0JOK96qzNVJ_AlRJWFJsWB9gxAr1MT04KIooVu53MsMM XwoPZea2LQP5.N8abeh4oXSc9rValPzS9p1asnI0UpdF.AytMIlfak96hqWc5NlptlWXKyRdnLJi V3n1wdGFMkjzAEBz5xjCz5LNg52natWjpOJJ9tLPyuvS95vs3E1pcBhlXMRx2YUzld14vaS6Yx5p 3OPT4emjJRLr6tFzosPLDJpj2lszjqcYZKoO1ltO9wb4wzbnt_Ih5eSHzRToNozD45G3QtOVAXHk F6C54E2q.UOH21rh5lMXeZtf.ceSg8CKMqdOCuh8UjpnuAHbixTT8pC9IfxHDZ0zZFPv5JUYjI2F eEzudGAx.yhvZRVeXOLlaqwsl5Kfuo74AvxHe.DcPT6RJ2vgn_0xTMbmvRq22RKjWfvK92MkrW6F CSjvf8hofVOzP2Ja_RYZNTAQBKbw1D7acNxocuQ20r0t4bLr1lGccIBjT6_.VLtrP4TX5d7H6AtL 8bs7yEuOL_QsXkxNkGsfTzz4oT6EdQQ.yiusBk2n5PdHJ6S0Pe1qVArdTsUNIRyd51ReeDJKiSkB AMYFTxqQFLOHzg9NwcKBsH33JeLdWtUYIXHmBcyojFPogpiYYfGnBm.fy8cA3KgsFrwCf1S7znUR IAIi3oIiuh9Z.2R512qwX8l1ZGLMnZNSpKr8hprAOaopZvwb3DMvvwEDUshUrcC9M7xrbQ63.UEd g9NCgQjgrp6TT_gShR.7Gb2lPYHZDK4k0s92yUtSzf6OHLyugbJquwOybMk19gTJf48Ab.AmcKMK tU9Nec83ydwskCarwJr_YC2xLGMYYaThpe_rz_KEY8SR0Pe8vA9TZXHCrU78pznylkqI04rPH5Ox UnzRW9VAzhcmSVq4p6jC3n850254yqhl5mOTvOArJkah0pD_t5RJKCLd9For7J06gqSEOWWL2WFb TYApeLEDNygBQo..6jTev1CdXxWi.Gtx.t3A_e3uBHalxbq8j5MbiyawzGwGkmbknfBEKaB4kdoC feiok5Yfyz3HxBmIJp3TkaDWKz5zTHTiX8Vzuyih5k9pUsUZv1JaqCEeMl79cHKNj0dOVhH1.wQh 2hfzNEJi9LFwgKcGBRd63ctFQZwi4XQ-- X-Sonic-MF: X-Sonic-ID: 55fc7f7e-421c-4fb0-9fec-f9d168e7c2a6 Received: from sonic.gate.mail.ne1.yahoo.com by sonic309.consmr.mail.ir2.yahoo.com with HTTP; Thu, 9 May 2024 10:07:07 +0000 Date: Thu, 9 May 2024 10:07:05 +0000 (UTC) From: Hannes Domani To: Eli Zaretskii , Pedro Alves Cc: "gdb-patches@sourceware.org" Message-ID: <2059403191.787933.1715249225936@mail.yahoo.com> In-Reply-To: References: <20240507234233.371123-1-pedro@palves.net> <20240507234233.371123-32-pedro@palves.net> <86edaca2wi.fsf@gnu.org> Subject: Re: [PATCH 31/34 v1.2] Windows gdb+gdbserver: Check whether DBG_REPLY_LATER is available MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Mailer: WebService/1.1.22321 YMailNorrin X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP 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: Am Mittwoch, 8. Mai 2024 um 23:34:25 MESZ hat Pedro Alves Folgendes geschrieben: > On 2024-05-08 13:45, Eli Zaretskii wrote: > > >> However, I found out that we can find the Windows major/minor/build in > >> the KUSER_SHARED_DATA structure, which defines the layout of a data > >> area that the kernel places at a pre-set address for sharing with > >> user-mode software: > >> > >>=C2=A0 https://www.geoffchappell.com/studies/windows/km/ntoskrnl/struct= s/kuser_shared_data/index.htm > >> > >> The Windows major/minor/build version retrieved using that method > >> bypasses the manifest stuff, it actually gets you the real OS version > >> numbers.=C2=A0 That is what this patch is using. > > > > ...do we really need to do this via a version-check?=C2=A0 Can't we ins= tead > > just call ContinueDebugEvent and if it fails, consider DBG_REPLY_LATER > > unsupported?=C2=A0 (If calling ContinueDebugEvent with that flag on old= er > > versions of Windows causes an exception, we could use try/catch.)=C2=A0= If > > this works, it is a more reliable way to test, IMO and IME.=C2=A0 I thi= nk > > we should prefer that to poking kernel data structures. > > We need to know whether DBG_REPLY_LATER will work before starting the inf= erior. > And we can only call ContinueDebugEvent after starting some inferior, and > after the kernel returns an event for it via WaitForDebugEvent. Looks like just trying to call ContinueDebugEvent is possible after all. #include #include #ifndef DBG_REPLY_LATER #define DBG_REPLY_LATER 0x40010001 #endif int main() { =C2=A0 if (!ContinueDebugEvent(0, 0, DBG_REPLY_LATER)) =C2=A0=C2=A0=C2=A0 printf("error: 0x%lx\n", GetLastError()); =C2=A0 return 0; } On Win10 this gives me error 0x6 (ERROR_INVALID_HANDLE), and on Win7 it gives me error 0x57 (ERROR_INVALID_PARAMETER). Hannes