From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1228 invoked by alias); 21 Nov 2016 15:03:28 -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 1210 invoked by uid 89); 21 Nov 2016 15:03:27 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.5 required=5.0 tests=BAYES_05,MIME_BASE64_BLANKS,RCVD_IN_DNSWL_NONE,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=chairperson, H*RU:HELO, Hx-spam-relays-external:HELO, H*r:10.253.24 X-HELO: mga02.intel.com Received: from mga02.intel.com (HELO mga02.intel.com) (134.134.136.20) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 21 Nov 2016 15:03:16 +0000 Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga101.jf.intel.com with ESMTP; 21 Nov 2016 07:03:11 -0800 X-ExtLoop1: 1 Received: from heckel-mobl3.ger.corp.intel.com (HELO [172.28.205.41]) ([172.28.205.41]) by FMSMGA003.fm.intel.com with ESMTP; 21 Nov 2016 07:03:10 -0800 Subject: Re: [PATCH V4 5/6] Resolve dynamic target types of pointers. To: Yao Qi References: <1473230295-809-1-git-send-email-bernhard.heckel@intel.com> <1473230295-809-6-git-send-email-bernhard.heckel@intel.com> <86k2dc8hri.fsf@gmail.com> <57FFA0CC.1040800@intel.com> <86bmyj8dwf.fsf@gmail.com> <5804B509.7050103@intel.com> <5804C179.6090401@intel.com> <5821799A.6000708@intel.com> <582C4E11.2010904@intel.com> Cc: Joel Brobecker , "gdb-patches@sourceware.org" From: Bernhard Heckel Message-ID: <58330CAE.80407@intel.com> Date: Mon, 21 Nov 2016 15:03:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <582C4E11.2010904@intel.com> Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 X-IsSubscribed: yes X-SW-Source: 2016-11/txt/msg00602.txt.bz2 T24gMTYvMTEvMjAxNiAxMzoxNiwgQmVybmhhcmQgSGVja2VsIHdyb3RlOgo+ IE9uIDA4LzExLzIwMTYgMTI6MjYsIFlhbyBRaSB3cm90ZToKPj4gT24gVHVl LCBOb3YgOCwgMjAxNiBhdCA3OjA3IEFNLCBCZXJuaGFyZCBIZWNrZWwKPj4g PGJlcm5oYXJkLmhlY2tlbEBpbnRlbC5jb20+IHdyb3RlOgo+Pj4gQ3JlYXRl ZCBhIHRpY2tldAo+Pj4gaHR0cHM6Ly9nY2MuZ251Lm9yZy9idWd6aWxsYS9z aG93X2J1Zy5jZ2k/aWQ9NzgwNTkKPj4+Cj4+PiBDYW4gd2UgYWdyZWUgdG8g bW92ZSBmb3J3YXJkIHdpdGggYSAia25vd24gZmFpbCIgZm9yIEdmb3J0cmFu Pwo+Pj4KPj4gQ2FuIHdlIHdhaXQgdW50aWwgUFIgNzgwNTkgaXMgY29uZmly bWVkIGJ5IGdmb3J0cmFuIHBlb3BsZT8KPj4KPgo+IERXQVJGNCBnaXZlcyBh biBpbXBsZW1lbnRhdGlvbiBwcm9wb3NhbCBvZiBhcnJheSBwb2ludGVycyBh bmQgaXQgaXMgCj4gbGlrZSBHZm9ydHJhbiBpcwo+IGltcGxlbWVudGluZyBp dC4KPiAtPiAgU2VlIEQuMiBBZ2dyZWdhdGUgRXhhbXBsZXMKPiAgICAtPiAh IERlc2NyaXB0aW9uIGZvciB0eXBlIG9mICdhcCcKPgo+IFNvLCBHZm9ydHJh biBpcyBvayBoZXJlLgoKT2sgdG8gY2hlY2tpbj8KSW50ZWwgRGV1dHNjaGxh bmQgR21iSApSZWdpc3RlcmVkIEFkZHJlc3M6IEFtIENhbXBlb24gMTAtMTIs IDg1NTc5IE5ldWJpYmVyZywgR2VybWFueQpUZWw6ICs0OSA4OSA5OSA4ODUz LTAsIHd3dy5pbnRlbC5kZQpNYW5hZ2luZyBEaXJlY3RvcnM6IENocmlzdGlu IEVpc2Vuc2NobWlkLCBDaHJpc3RpYW4gTGFtcHJlY2h0ZXIKQ2hhaXJwZXJz b24gb2YgdGhlIFN1cGVydmlzb3J5IEJvYXJkOiBOaWNvbGUgTGF1ClJlZ2lz dGVyZWQgT2ZmaWNlOiBNdW5pY2gKQ29tbWVyY2lhbCBSZWdpc3RlcjogQW10 c2dlcmljaHQgTXVlbmNoZW4gSFJCIDE4NjkyOAo= >From gdb-patches-return-135063-listarch-gdb-patches=sources.redhat.com@sourceware.org Mon Nov 21 15:35:14 2016 Return-Path: Delivered-To: listarch-gdb-patches@sources.redhat.com Received: (qmail 61888 invoked by alias); 21 Nov 2016 15: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 Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 61867 invoked by uid 89); 21 Nov 2016 15:35:13 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2 spammy=HX-Envelope-From:sk:antoine, H*MI:sk:2016112 X-HELO: sesbmg22.ericsson.net Received: from sesbmg22.ericsson.net (HELO sesbmg22.ericsson.net) (193.180.251.48) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 21 Nov 2016 15:35:03 +0000 Received: from ESESSHC003.ericsson.se (Unknown_Domain [153.88.183.27]) by (Symantec Mail Security) with SMTP id E0.F6.06466.32413385; Mon, 21 Nov 2016 16:35:00 +0100 (CET) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (153.88.183.145) by oa.msg.ericsson.com (153.88.183.27) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 21 Nov 2016 16:34:58 +0100 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=antoine.tremblay@ericsson.com; Received: from elxa4wqvvz1 (192.75.88.130) by AM5PR0701MB1876.eurprd07.prod.outlook.com (10.167.216.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.734.2; Mon, 21 Nov 2016 15:34:56 +0000 References: <1467295765-3457-1-git-send-email-yao.qi@linaro.org> <20161121120822.GA28605@E107787-LIN> User-agent: mu4e 0.9.17; emacs 24.5.50.1 From: Antoine Tremblay To: Yao Qi CC: Antoine Tremblay , Pedro Alves , Subject: Re: [PATCH 0/9 V3] Use reinsert breakpoint for vCont;s Message-ID: In-Reply-To: <20161121120822.GA28605@E107787-LIN> Date: Mon, 21 Nov 2016 15:35:00 -0000 MIME-Version: 1.0 Content-Type: text/plain X-ClientProxiedBy: BLUPR07CA077.namprd07.prod.outlook.com (10.160.24.32) To AM5PR0701MB1876.eurprd07.prod.outlook.com (10.167.216.25) X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1876;2:O1hkIZzih1C+aHPyZGH1ITPtXgC2xvjKB9rOT7qV5JEf2F3/9twczAvsLdYNn2A/A0Il+7qRki00Oj6Cp7IFjwZIZEy1Z+zDGNQr/H719I1icfmeIbVtAkr/C+Qvozw8Q2t9K+nHIH0WpcKZMNJa9KUqpCx6MzO5D1Sz4fJsNo4=;3:NAxG4ljtZeoN8URacBxvkSvy1ZVw+VIsN+0si1iALwWZEHhSFTuiIERuckvFfpZngIB8N8aexwj3QTOefIaPoPD77RAVj1Jx4Ukdo4oPwU8zHryzHIIvbz8RTMpYlSL9bebeRmMGdmdpV1+Bja+3nt2gjF8YukxVJYbiWuZqCIw= X-MS-Office365-Filtering-Correlation-Id: e5d095cf-0b8e-4bcd-38f5-08d41223f30c X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:AM5PR0701MB1876; X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1876;25:RfvrOX1YXv2mdwDw7Fr4583JGhUrrWBzzMMMP+BqwDip+DgvlAuuPVV8QJorpttPt5b7GDxvibj/OTbBdSO5mS+lMb4fqIyW3YPSU0zoiUDWPjc1QpWhVLSaA3LXoBPXgpl4b9EEQeFdolkYbP1xCstPrAn3fdWrThgfe4toL+o4Kw3iAod8SYkkfwmw53HjZ6CziZGbFeEMh07HNjL6E+2yEROX8wni5L+sLleItINp9I61dYEbNNN4G439cb11SXGXfdTltdbkIfueZH04yZC1p3hPObXOODfbHmj0/U4TkyJzFMVi2wkzK8P57l6fHYHbMBMB/RiC3cFZrL6JETys5r/21HGsA03+nmJAG5ZXJO0Y4GiSrTWbtWUvUMwobiHdnGKGGJxax3gyXu1E7QPYosYbrPU9vxB0dXxPAo/ALpui7qmLVZo+tGxSt5L4/ESZ7A7paBcS+edf3p+LwVSU5qZwE4oXIRlhfIuZGYLYM+EiKlAPFPBNzBTrhG08xvRc09b9CvaAo9dOAnDsvg7ZrYXeKXTQ1Yrf7/avxTzcnqnz8fjIvCly8uzNWH+4jpeP3B0oq0Ds3zuTJjfoNLFB6aKOsI9dE7/59WCm16wVvaDjEoF0+RXuR2D7YvTHlgXmDaica22+VvDR4AB6qz0WuRZthm2P3qnySA7aQWC3XW0hP3EHR8sDdR4tgoD3vj+X9265mFlfRByTlLVhk8f8t0OVpbqh4fJwKsp1mvdYPYehB/n7RRh+7dxXMshf X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1876;31:DjR5k8kdKdjSTdaVcx/exRRKpeg/mT+97fN8VGB1VmpokENsZmdkV2OTUULQt9/qkXB+3qfrTwnngYIPuNTBcjB5PvSyLAOeoOilfr6ACq1x/5F00ETbQeEP20S1QGECK3kEXuLyIb3MaexNzedT4nX5+gKntmFXanQwql1r3SLIu+cBgeaZILS7vNtuP6M/ib+09CjMJ2QbNAFnblKqfiwb0qLKy2nvzIPEtKhasoU4AQwZACl49c+juXG/eHRfrSQnje4UphlfYLjBONcl9Q==;20:g7DLqbhm5QZG29nBD+cSwJn+BumU28JmT8K8d0rkhalIjzVXTU1BO1PtE+FUQDIoVmjGaGSFLS9TM1FVMzrV4rIHn3gBSCS5wMCVxK3XWOwXpZi3n43HYd3fG5ZOAn8wa0ZdhUp7uaDUDXPV71/B2VVopEyLE6QtKMfdIK8ClCEOyVWOvomMpe8OX9GiWG6gFDnoennh4umi6G6w+DIJqEM4St54CopqM71tMANvyH13gB1qaegkcs93s733kyFdxEGx0SCT1xGslKorQ7xNH72k69rNVzRoMYzp806nULnplJMht3xUvHUR0CiK6ag/YvQYH8AQOGZtukmw50ylcCj8J2N0kMFadPW6hmfDPpVjSsraN7BYL4aCevwsifxUynkr27UQV2awk/kViZ030tMLpDQUZnrXyBv9ZfCwTv8FqDVMKcoZItc35BJCa+HeZqWBJbbLviUNSBYotPgfILh4/eoFRJD0dGZX06lmjLAMJ4IiIViwhXXgNGafks/P X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6060326)(6040307)(6045199)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6061324)(6041248);SRVR:AM5PR0701MB1876;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0701MB1876; X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1876;4:+P1eHwge7Aan0vATJgZChHZLaAfLzvjoly/6TJuT+fzOc9O1ngzwX+jRuiPRlS+Nqe8DH/pT6u2wj83KVPcP3f3cf2JB9U7X2XYNIoENjoBNsZr+KKv97BcNtrea0aE4jpVA2VDsjsiP2PR+UpFbDptBckTlz/JN8ahwOkBqxuoyaw2LawHUTaUoa4OB1vemh5VJMYZPs2IaqGajCIe+xtjJsngSWOHE2wxcX2KFI8TUoKgztBCaNyzfWGqvYHLZFmuTXqI4l6hDaCAg8tLomtx3jqABApKD9ELmxUVh+mUKC0kALwFtkis8jdsYHsvjxMtMCTJqiQ09y/SFkdSPYygO+NYRJvtcEIMw2Ll1xDkX8XBPaOiQkLZc8CopmhCJ77sxbB5oV1kbev+GUj3wn/N6W/9OtKpLOwDR4vTbWZj+r0MzN6tXYi/7ZObqQwoB+Uvn+y+SdgfXrykyk+EE87+vkO5XCiQ8Je3+TGGXxfY= X-Forefront-PRVS: 01334458E5 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(7916002)(189002)(24454002)(199003)(97736004)(4326007)(33646002)(81166006)(81156014)(4001350100001)(2906002)(66066001)(47776003)(77096005)(229853002)(8676002)(68736007)(110136003)(5003940100001)(86362001)(54356999)(76176999)(50986999)(5660300001)(106356001)(305945005)(105586002)(2950100002)(7846002)(7736002)(6666003)(3846002)(6116002)(42186005)(36756003)(50466002)(6916009)(189998001)(48376002)(38730400001)(1411001)(92566002)(101416001)(83506001);DIR:OUT;SFP:1101;SCL:1;SRVR:AM5PR0701MB1876;H:elxa4wqvvz1;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; Received-SPF: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;AM5PR0701MB1876;23:3Oxe4gSgq2IHVmkmO8C/RaqILd5vMqhDOpGcaMF?= =?us-ascii?Q?WzmhTFBSGqiXA/MZbFxpa1czSITZRG3to180BarR7KFEkxXEWIzp2PZ/UbOi?= =?us-ascii?Q?N5kPDPi3HUTD5GCWJUNgCmjQyTvV7Gwwb9yl6mLk7VD7v+qfN/0I5IOgvNjv?= =?us-ascii?Q?nDJeidyoPPkKEXQyxlQwQAt73VR6t8f5EgT1Mlfcln6ZGHs9UcmGY4K+6HQ3?= =?us-ascii?Q?7Ve4CsKZXgWZlMcjfpwqk+giyhYauw06riQGeH8a/h71HXOm0FnIQn3tB3PT?= =?us-ascii?Q?btrZ0mfPy2LeFgkFOlGmMZbgJpbWpwl9R/mNUz0i+Gpkse7LyHqqZGlZa9sI?= =?us-ascii?Q?A5TlKe/dT67yCoYvjJlDkTsnT1qWdACYrB7qwsxC0HEhc09if70ZyA2MCnHb?= =?us-ascii?Q?w5YOKvhNj1WIVqbPT4G3b9cQO+NFFS63aX1xE0/a1b4wm2FDj/3ieDo3MB8b?= =?us-ascii?Q?IsWTbZLGAtBw4cjYV5Ct3PmIZ46TYIgbdYJ64OuppJXiZx5OiW7RmFTVw3jm?= =?us-ascii?Q?5gqqCwx1ctUjDYl+P9+CfGjt9tZgN5wV6MUBV6ear2jky07KCyJvv831v0Ds?= =?us-ascii?Q?pPE5CuWGNXf6rmL6jYRZiYhyNz1JesZa8OTcDr9xcn9KtGZoIx5yhemnr5oI?= =?us-ascii?Q?b6uAZlxnZqHAvMONzsQ8IJtst00inXG0Q2SSAPL8LKgjhqXGgFK00x7OJ8mF?= =?us-ascii?Q?S86tmxJ/xht0S2Gmu62eUzthigNBZrKr2a+2xPk+rVfH3pveRHmMF9tI4ue5?= =?us-ascii?Q?nF8ldL3jlYltuGkLR+8TEy4M8b9VLSScKJeGaluBPTB+rVXfwF9tSZTm7wX5?= =?us-ascii?Q?o+nOOu5Vag0C070MkZwX96JAku+QWea1B4VY82oyHibaTZ6c+XLs8RY0VwEi?= =?us-ascii?Q?TFe5HkXvxTOPffNHwoHKMuVRSX7ZUm7kYu9b+TvBLk4lG8BYgTjg/U+8SSjn?= =?us-ascii?Q?gjTD1zUdmQGdifxMdRN29IITdjVf+P2i2UgJOpxE8JUFch1gIGS1Plj78pPI?= =?us-ascii?Q?6y+BpVilvWvP5cC07mMoMgwSJfu1PK2CIIvrg8MT93R5SC/JEKUxtliAeh1l?= =?us-ascii?Q?RekxEr6wu8h1nL9+e+ug7S3DFtHi9CfBz59m4YhrAl3qBLCtYDwLcbkVuQCh?= =?us-ascii?Q?nnMvyXZsWco9BhyuW6FQAX7NXSljf0kTfq8C9m4m/KJ/VuTRxyw53PA=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1876;6:xg8q9Hx8Eez/3YBpxADQWF1PE/br74w4+3hkivCTtGsNQOQmLt4BOnWRImGxrepwzDd45lha/TdAU1N4GfASjq3PwIyB70CNTsfiFZk1W4BHBLfXpp2OH8IZOejEq4YGmY6E/Mq2O90nVarukZhQhl4pQNPJ8TLAjiQ/ycqyFZ7IrrznNLmFmtB29D3emngo1lA1CsKwnw+x25z4NswGBWVPN+1AnLr/dQHpIJcDVsIVbz8BCmzUJOTRRWOK/wiAx1epQnJuUmDI+d34mESbAovgnZC15Fn/ZUiPrlrjv+7zi6DxPldq/5Zc5pPkZ6u0gwsaNEQJagb2VX/SCGLAIs9HrO6siL5pE/4Z4mHgqB4=;5:ylCoKc6iDtS5fbfdID8hlIcFGoQwc0yJIMyX3TX7Gu+BBvtaYdhuv+LM+CUrBCSnLPGTsPkPozpYaBqN0nbrqFAkB9Eid+2CYFlzcMdQ6i+9g66IgLKCiW4WXPnOgCJV2LC56+i8rEKOJpKrLkZgSWbGtl+B6yBmNXxSlJR20LU=;24:h85VlYmWysuhMdQo6A1qXd7UVog/C+RuUsIJ6U4C3OYHbrF2wg8mf8fu1F/kPY1s+DQeJ9V15PIYZ9er8baS+/5t3yCv5dLMKQMKdVwhdUc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1876;7:Rg9iWFX4LmEJo2V4qzncgfFwYQHgpqyBfJxnv4BKXc6gpP34y9YXkIqvy6I9jgwPbh0WGSahVNaXdcP0SlBbNpS2sHGKug33UxKp/ihgwIlC0qZiAOGeRrDpM9Vz3FRi5/kDL0LuUoieLd7FkdM8zwliRqpQb9a6gyDr53FWKfPR6+dpVwDjuyz8DKSgS+Oxs1+uQc3JUNd0qqU7dJSj2FQpdpXShjxPw+W5YTwvyStZPwrO4UC2vfKRRaMRumF5jibMnXxJJdP1ddLLJsqJ+Sw7OozuLK53xDF/jGYy14cfvJa+MvyaOwOs2W+uEiGExDAFQMou6F69kXx2g76Jr78FLRVko4Bbg+7fqCjrXXI= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Nov 2016 15:34:56.9276 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0701MB1876 X-OriginatorOrg: ericsson.com X-IsSubscribed: yes X-SW-Source: 2016-11/txt/msg00603.txt.bz2 Content-length: 2906 Yao Qi writes: > On Mon, Nov 14, 2016 at 02:10:32PM -0500, Antoine Tremblay wrote: >> >> > I do something slightly differently in V3. In my >> > "V2 Use reinsert breakpoint for vCont;s", I install reinsert breakpoints >> > for needed lwps in two places, linux_resume and proceed_all_lwps, which >> > isn't ideal. >> > >> > After the chat with Pedro, we don't need to stop all threads when inserting >> > reinsert breakpoint, so we can move the breakpoint installation further >> > down to linux_resume_one_thread and proceed_one_lwp. >> >> I'm following up on random SIGILL/SIGSEGV when using software single stepping/ >> range stepping with GDBServer on ARM. >> >> And I can't see why we don't need to stop all threads when inserting >> reinsert breakpoint. >> >> Since linux_resume will call: >> >> find_inferior (&all_threads, linux_resume_one_thread, >> &leave_all_stopped); >> >> This will start one thread after the other. So for example if thread 3 >> has a single step breakpoint to install this will start thread 1, then >> thread 2 and just modify the program's memory to install reinsert >> breakpoints on thread 3 with thread 1 and 2 running. >> >> Thus leading to thread 1 or 2 executing invalid memory, thus the SIGILL >> random problems... > > Single-step breakpoint is thread specific, so we don't need to stop > other threads when inserting one for a specific thread. Given the > example above, we insert single-step breakpoint for thread 3 on address > A, if thread 1 goes through address A, but doesn't hit the breakpoint, > IOW, thread 1 still sees the original instruction, that is nothing wrong, > right? We don't expect thread 1 hits that breakpoint for thread 3 anyway. > If thread 1 hits the breakpoint (IOW, thread 1 sees the breakpoint > instruction), GDBserver just handles that SIGTRAP, and it > has already know that there is a breakpoint on address A. > Yes that would be fine if the instruction write was atomic... > Thread 1 either sees the original instruction on address A or the > breakpoint instruction. Unless ptrace read/write 32-bit is not > atomic, IOW, partial ptrace write result is visible to other > threads, I don't see why we get SIGILL here. I think this is the problem, ptrace read/write doesn't seem to be atomic, and thread 1 sees some half written memory. (Given that we get SIGILL/SIGSEGV issues) Did you have any reference suggesting it was atomic ? While testing it seems to be atomic for 32bit writes but in thumb mode with a 16 byte write, it is not. Given the SIGILL/SIGSEG I get maybe that one is 2 writes of 1 byte ? I'll have to dig in the ptrace code I guess. The SIGILL/SIGSEGV do go away if GDBServer stops the threads... > > Note that we stop all threads when we remove single-step breakpoints > because we want no thread sees single-step breakpoint in memory from > their point of view afterwards. Yes that's fine.