Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752669AbdF0Qrb (ORCPT ); Tue, 27 Jun 2017 12:47:31 -0400 Received: from mail-by2nam03on0085.outbound.protection.outlook.com ([104.47.42.85]:61264 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751513AbdF0QrZ (ORCPT ); Tue, 27 Jun 2017 12:47:25 -0400 Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=pitt.edu; Subject: Re: [PATCH] selftests: breakpoints: convert breakpoint_test_arm64 test to TAP13 To: Shuah Khan , panand@redhat.com, will.deacon@arm.com, labath@google.com Cc: linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org References: <20170627160447.11345-1-shuahkh@osg.samsung.com> From: Paul Elder Message-ID: <068b2645-1fff-7070-54c9-9e57ad3588d8@pitt.edu> Date: Wed, 28 Jun 2017 01:47:04 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 MIME-Version: 1.0 In-Reply-To: <20170627160447.11345-1-shuahkh@osg.samsung.com> Content-Type: text/plain; charset=windows-1252 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [153.220.149.133] X-ClientProxiedBy: OS2PR01CA0068.jpnprd01.prod.outlook.com (10.165.51.156) To SN2PR04MB2174.namprd04.prod.outlook.com (10.166.211.19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a8db710e-3c91-4932-83b9-08d4bd7c2f5a X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095);SRVR:SN2PR04MB2174; X-Microsoft-Exchange-Diagnostics: 1;SN2PR04MB2174;3:jPh3hwQ6tLmXBUpHfk7EwPJsgw3hc10EtPc1F7ejAZcQYqDvisZkkeOEAGezzB+dGRZJN6Za2IcVWKN1zKmZHDBGKEcTokCf1w88fKQ7oaxGxeQxUBBWdnXSrbtOJKeoWZ9E4c/UO7NKGgvMB3sKQ36wR2ZJldikHuaYo1bX3yO5/M/ZjVBQv6yzkFK7QyFB8M+uIgZJyN1hGuAQiCIJzoqNdLNmb4kKUI4nefvsLCNc8Z1MYy6UvZwN2veBSyGk4Of4D9q+qcesfh5nRrK/+aiWD87A9eD6Ad6ixcyuVq9OlPCqzsCdRqYQhSmp4DZoVJDWik4i3DbeeQyjeNaordjjv2e8zs5wUObzGXJK47IOFsSN/1kk6IHM9P5IxoCpKzofRXbt7mLqhZfQE8oU6/0gjk+FKdI3IXCOuXnyni6GGvd1Lpy56A4iuAxIjP+IaRGa69XGWGHNr+JQm1ST2+DTTvh8mf8dYaUQuT9h4ViZZiUjAOhIZNvyDdWdr3RMmXCdnPogQsXIEDEadg7jhDVSJLkkqDH4gL2M1FHuJ5jKwT0B77+BtmDnxdLvNrtkj4nISCoB60PyBR0F4xyJGADijD5eEiv57Fask7tfGZEAG+osWZjqeYGbfl2LzgVCuIZozuVFMvB3ZSeWR+5tWww14AWiSBaBqhNO4vm/5URvNPbHJitm2wVHaFWwIU5v X-MS-TrafficTypeDiagnostic: SN2PR04MB2174: X-Microsoft-Exchange-Diagnostics: 1;SN2PR04MB2174;25:O9k9NpP+9ATLYCpmJemPGM939As5SOttvdZ+S/RpVPkyBdoXyfXMoOSXV6vdW3AoAcw5/XxArKQD2TgFleQditUFO6ZP2tRfuYfjSorte1dXB3qhOaxWYvN8Qly+2iOIt4bKXmZhfhsxNZGDpu6oZVvMtLKECdhB70ug+w3wxcmla6xfHDHm+DkUFKonhS7wDLmrvS4sLPJCt6fImSp+/oam1f5atKM6oiNnWHN751sZGdk9FWiPyYfG7PD2/XUw7YOT1g5KJZAQZ2nL34tnPPiJkGgZSGUwUdE0aj6aIvPXqumxvJXcLfMGsLa97FbsdVa6ZmbaV7ufn4qPbnLbbVFhbP5PSv0Rm+Vh4SvWiJ5+hgWM/l3FKdV/nJlMlm9pvlJc/sNu75yUTvvKPbQqu7WotVwk7DOApwwg2rJim2M9KJytoVj2Ts5e8Xsen6lzdl8YDzPjUtyuwlw92EqfV22a3dBVNaEkE1xDtsyZnB+yqrKwMoz+/kSZ3Ip01ckD5dkqkhKQhYmxKgnYQc+JhqJFbY47J2KTnpE2q31Mf1yi+nH5OX/krAcKO7DpbSQxyygDsVipGcpdGE963fl+A6iCobXp34tlVSnxlDrTHO/FX8IXvuLWzs8xNS0jFP7UwhQzX5Dcoa+EA1hHohQQq1hUojMjZJJmYXMUzV+rXCJ1ugkdw2YyN09t4cWTW6C0lLth9BLypBCzWid2ZwmSSfck/WXQM+GgNHidwZbPR3MOCc7zs+C/hRVRS7uXATV9aMaDx6b8sZ41hxOcCGExrkT51T1LNSQlsJbLZxIBQn9OWJmZZ9gH7Ul3KeCIOcL39W+0l3Nk2baHYbjHjYm45Qp+lI155THB6Om/rGrUDq28jrakg5xuXOqHLWLOalSwnaadqZmw+TLxWA7a5ajgifaZBTvyfcSrQ4gGpBlt2GE= X-Microsoft-Exchange-Diagnostics: 1;SN2PR04MB2174;31:/9xb0R70XcPut70pSxBK4fzWdSaxecoeDQw+tgth7A4BQ/+5okBaCmqR46RHC6JakEz7pTWHI0m7N12QSsYJZbCiRul6L5eofsHnHNlpR48WFydg68f1owg+1xLH2FVIRUrHIkQ+Xm2Wv8T4x2cUQ8Xlz3MGs0KGf90arMTGiR66rOtbCHvOmvpp6W+yomfDM7e8B3BJp+VW9WfDuNJfsOYVpiYgWmJGr6coylV1ltRblGs7fCgNuE2IyIeGubCWRuen+9Xu+LcxByGoLBhnavEPexDwmog/BvlQEH4X/rdaoX0NIHYBlVxZf0FtNFU2vH7pPjyucDdoLXdoqytjDOgIc+UVuwaHNEMFTFKsJAYa0Q/ZgFZyjazNPazVvncNvstrP2G8HP5EtvYd3pp0l1I8gJu8MNyZaFUTFDe1S49bk4z7sLH7C/CbZH3nQpDbto2jZuDHsaNGSTzv2PLKuUJgHOjl4i7ldEdAuMENh0CpCStOv1d7CSrHS81RBulpTS9JlxtzSC9bpUxRyaVIcbRUZ/mC01r+v1inS3NFPKN82k0onvZHdHo0XVSATeLbdvJ1zwzrMT6TWzjIftgbBL+LdvtTwIdZKWclb1bF6A/GE4DJu0vtOvT0SJeBVVwRmkVbIkND/ayQBIeXnfrAIlmFjVm4kxKiHh6fyOI7stt1WxmPqgJ6Z7KSMJSdquYJ8knhzMtCAkj1uNusLiQwsA== X-Microsoft-Exchange-Diagnostics: 1;SN2PR04MB2174;20:gdsG+kjQPyoBszL2zYh6GG7zUJAozosldNzp3I5PbRH6y8slz699izON2mHxMiAyBwAycUEMSAJ8EmrE8HR29IqE4erjaihJbrheGUSZ7uJLq9JxA09OG4r8dW6OHYiu7uMyNU3DKZdbUbaSKfCAoRdHetm3KmfYiqjCt54Tj8hT/+Nm+zw4zr2tgtKzkkIMI2Bj8O2FxsbaYs8paKLDlq8E5V4Oq8ol6fTXSKhc/Sw54eRoYIclB2mGrwHK6bvRuIy7xTmLCPGE05lNsIjT7bDzSaOq/A9VQ1ROCSNH+FhS5vcfJHP46/Gt1KHUvjReyApjJCxkiyrItVDLD7Jq8dEe57klSrHIjeqD5NIqLXoolah8oTXVUC5DrymzA1cbzYGOWPRSVNCZjueXcOEHrHT+y7+PB8WgmX2thiY9GNgrQv5wmWsRwhz8vch1/tFdNLOHRYQz/C3cpBq7q3panRmHJGJGjpARLXRRl5fKwWrlsrrUzGHBFOzfqV4kjn5f X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(236129657087228)(7411616537696)(209349559609743); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(10201501046)(93006095)(93001095)(3002001)(6041248)(201703131423075)(201702281529075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123558100)(20161123560025)(20161123555025)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:SN2PR04MB2174;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:SN2PR04MB2174; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SN2PR04MB2174;4:0YqDDW3YMQr4SiF/nCw4+TLfD7OA8MVHND2Aa6?= =?Windows-1252?Q?qjp4+/+OrmVcCDTl66gEyw/vJvbhLKlp9Em72s+gKuvFeswhKNUSUJ7o?= =?Windows-1252?Q?4FzDP6hAsNRhAAFTiTxY2KgqA7tln3dISgjEBbytq9PgQZw/j2DonWw4?= =?Windows-1252?Q?7VR9lhicf9HnzYNbQBYayqLA4oNTw7K6xhHKHMsrcLNVwRja8TMbSkoF?= =?Windows-1252?Q?ftBJfrgRaPZOGPSGR7fW5tsgOjmnwoHWXQ9TJG1oHUEXS/OkAZrBZuhu?= =?Windows-1252?Q?BHLzy8Ymk6hef8uQJdzWEU+yIC/wADLnOwUpNFsN+dKsMIgmJncDYEP+?= =?Windows-1252?Q?t7xEJd5TYPoR3LFQ3fsKPrJk2QQd93kqvQBCmGiddgNh7stTriP3aKnl?= =?Windows-1252?Q?fs0uuIOGbCJzxvdUlPs4vyWCWmLlkHjO4PM7k8D3sbhQSHHeqci1sUES?= =?Windows-1252?Q?7zfuWQ1BWSvClNHOXTQQMcPj+wsj9ZruL51ZOkgV6y1+eWqByzEE9OJk?= =?Windows-1252?Q?2xU6xubopJ8Gue6fNgHlSQ3oKQ4r+XCnXADZ0tfFBDiox2ea9lQceEtl?= =?Windows-1252?Q?9oMwbyjqJbKv8k4zCRuZ1AuRa+54d2lohFxnhthAys2Mx2eRurNrerZT?= =?Windows-1252?Q?gZ7g2pv/EWzqmw270wVu4prQ+cmCTm/+RTOgY7FZEt/tZCyAgxLUofvB?= =?Windows-1252?Q?/1WQ00lR+G618NmOVIfzcN4S7yXC0tDZugHTogvkev9dGEpAdJwJBTw6?= =?Windows-1252?Q?g7lGuq8zju64eOVuJlu7xE5eMI/hUo6H1UtkX5ikYOY6fWFNpPQnL7Ew?= =?Windows-1252?Q?K9XPbhASEoJAIjsUAFLwbVGLL8Xt3kEZt2NNe1kA3W+UI9x6xzfT4XJK?= =?Windows-1252?Q?VeuDi4Joxxj6GtQYz0M3gtxo4/GBulN+PKmfosc7Bg9iYsui4CUX776q?= =?Windows-1252?Q?cFYDv3dZrNo5m5BGzoXg4lg8JWCyyDiENVaeaP4D816Ak+7uTgJSuWI+?= =?Windows-1252?Q?c1+e7W+V4UJ7ZiStsDUG4fe+12zpKybhIa9qoimp70lsbMUewRQSLalr?= =?Windows-1252?Q?a3e2kv7B+FQyvFqMEw7H7FBRY1NsSLMVsDwE49SA4ns/tuuXtDOVs+yZ?= =?Windows-1252?Q?UGhe2ETz+a0hQS8zmPiBlEL7t3t32agagJMa3kmNrpFPbxmTPsjNQiNL?= =?Windows-1252?Q?pZIyJ3//ud1hSfl0hWvkDHEgUWId9L5jtpoHtmddg21drtvC/JWU28z8?= =?Windows-1252?Q?VeHqCnHpfSOoEQ9VnEOpplDeFnBA7Zq2RldHKm7CNlh70tZqzQRYgZEJ?= =?Windows-1252?Q?YbtH20W3TJsbkqVlwRsupPVbqpF/8Yg3yakKgqVf4kNZ4h+4DohIiVMS?= =?Windows-1252?Q?TSTn+6ORfvCSBhhAXc/cCD1lmntsALHQ=3D=3D?= X-Forefront-PRVS: 0351D213B3 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(39850400002)(39400400002)(39450400003)(39840400002)(39410400002)(39860400002)(377454003)(24454002)(25786009)(65826007)(229853002)(117156002)(88552002)(23746002)(47776003)(305945005)(86362001)(575784001)(65956001)(31696002)(66066001)(38730400002)(2906002)(77096006)(6486002)(4326008)(5660300001)(53936002)(33646002)(6246003)(81166006)(76176999)(189998001)(54356999)(3846002)(50986999)(8676002)(110136004)(6666003)(75432002)(6116002)(31686004)(2950100002)(478600001)(50466002)(53546010)(230700001)(42186005)(4001350100001)(7736002)(83506001)(36756003)(15760500002);DIR:OUT;SFP:1101;SCL:1;SRVR:SN2PR04MB2174;H:[192.168.2.3];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SN2PR04MB2174;23:PKi+U78aTWi0vLy1BJWi74R/pxRVQjDX4qtGV?= =?Windows-1252?Q?EgjiYtS8m6lhFzoKlpzqQvJ+2bAe12P3Gh7h2Hyhwb0EK+4o1UpWGZev?= =?Windows-1252?Q?SIwq6b8aLl3BPYQqSZ9G8cDj8jfut+QrdCPQRx0zK0tkwq9i4c4ej2T+?= =?Windows-1252?Q?02V1isEw4S645oi38prB0vmge3lj1IUlb8vI3o3ozcgpnSHz3JwU9s6T?= =?Windows-1252?Q?us6Qg10UbM2AVG+iE5FZJi7nTE7RYlg2NLvgGALCNjshNHtBpZUzgPA4?= =?Windows-1252?Q?FP0b66Vpfv8JwL9dfGOWqOZa1FeGmOer3KcrX2wA00kVfBlvZSWQ6KUy?= =?Windows-1252?Q?7QDiu6UXhPo5qkO8fmTFE+TNK4QshLuVGC3CYWO4R9tuYI9vDUJTr+eL?= =?Windows-1252?Q?ag9Jfdy3al0u0t6ApNYbUWCX1d41eN/jvcBbLlBlywJpbVrk4auwoWmy?= =?Windows-1252?Q?XDZ/tzVjmk2Uoc7kDvEgTH1zgdunn3q8bpsgXEieElYih947gWPtkCyH?= =?Windows-1252?Q?3EJHcR/kuWbwGb+xDG+2fspleEoB8OXcJnKrYkmr1vARXWeQ0yF4Dnnf?= =?Windows-1252?Q?nQjSTyavl2DbWak2IbOw8wl2goPBTNKQSNC7S2XofLo9KWnf9S/8kugK?= =?Windows-1252?Q?gqlmfsKtSyZA2v//WeODwYA8QcPCoiUp3vbGmF3I3hU9nlho5br+oaPd?= =?Windows-1252?Q?X5uCKsarufsctrDkqOnpyYJLAPOvlHy+a/4HZa6BRCx0SgmbQX43QG1J?= =?Windows-1252?Q?udYk21NsZmDMtNVYpbnTSySqSokwc0BXNDUg3gg1edufVpVDAGgehgYY?= =?Windows-1252?Q?BaKW/8ZGL4PjPhnh7UALn+I+J18jXrvfl4bUupjNA1fwTDRwN+Fsoo4D?= =?Windows-1252?Q?A5fPOS2D+8fz2qwGScsb7lytifJB9wMbmc9cv19Xugtg75PckGAtCJbW?= =?Windows-1252?Q?2w+WNYgvV5dsHzmmrrYbRxATewBAGo5gxNMRG4dzNisfupy5rplUwcBp?= =?Windows-1252?Q?/QqXHs8YepCw99lc6GbXaIPVhOsM9TpbXtn9d2jW900n2+sDLw5v8/zx?= =?Windows-1252?Q?OdP/qgMWTKkaQi5kTDVun6rRBTA5/dt9Y1ReLmaPudkptAmOf0xjTyWw?= =?Windows-1252?Q?8GXLP+t0LL1LzlEEm364lygi1WYBcoS7HbVhIPDzwlrAxmA4GuYJNbAa?= =?Windows-1252?Q?GoYKPXVmfsdNYfuEQHFe+gdd9nELZfPM5nBlQ0OXkimSi88ZDtqOWjFc?= =?Windows-1252?Q?lDOjOfuykY8LVofhNRHEK+6fC6OwKuj4f+lJg3dC8yvHqdL5QUzs0Lfl?= =?Windows-1252?Q?VM/Ly9RGHkDL52XSqvWtPHiHjCWFZBkdHnSN5KhKu0cRBfp2+7SA/s+4?= =?Windows-1252?Q?i8nQ7Yqf+MLUsaLxr4aCovAUc043kRqD/WigYcFqC7qGkAgVFSGbTp2J?= =?Windows-1252?Q?IH9tN6YiCtoxLl05r5AOMVL/SC6R2v9qh5bIhHWoahKTWm8RbRmLf819?= =?Windows-1252?Q?N8trE+P0MHGXZIjyfn6a9Mi50mn?= X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SN2PR04MB2174;6:T0+HlMkeagK8IfzplNQ0MNTLJ6XAw4tC5o+8B8?= =?Windows-1252?Q?G7dBcsvKBsD9DuoGaJPJDUs6Oueo/2J/1AXuevcof71+Wjl+HrzQIb2L?= =?Windows-1252?Q?j2eyRAiaaOG70SALygOnCxRc79te8eXXLXaP8XnKjcyWeEEV5YTI+P15?= =?Windows-1252?Q?tQz0by5BpdZgjt7dJspcRbavt/AwBOx04LdN8lLo5mvCoT2PCOMKxWMf?= =?Windows-1252?Q?5gAELTHPUfZhBIP0BsbWZbkShPeVnhd4pUcHcWYkKz/SQufAL6rhU8Yf?= =?Windows-1252?Q?tv2JUT8FKQtl9o1D2U2F0O53SQknb1mjD6CYGCSAR1ZYXGSGc5J0vPO/?= =?Windows-1252?Q?H03JV8OeFMfBF47Kn9dyJwuCFYW2K0hgOqRGbvfzXa94v2+l4wI4EADL?= =?Windows-1252?Q?NQb19xLypScbhVVs2ec+vLdHzgcLHPImRS61YBfj+RHlwqmmBGoCKTLO?= =?Windows-1252?Q?Gs1lLJmAaC4PFpJCjR3pX8QArYk5FjfXkQvG8OUbR9LIJ+LfVNFOSGD6?= =?Windows-1252?Q?6gPwgjVA0E0cku890VKAF+FgMnRVzSt3ZIKoa3PowLBPbL9QgV1ih5LK?= =?Windows-1252?Q?xgVj5vL5ktMA4ijxJGXPtSQWca4isJAuQqTXLkM5jZqfJDP2U63OtC2s?= =?Windows-1252?Q?n+7p4f8D2vYoqOd8k5v74W1lXZL3x1Emu4ITMZabwRHhR4Aai0suofDX?= =?Windows-1252?Q?3MfFW0nlrxg9uYDGrOQGgdW3Ow2pqQHg47UG0bGF/VggPhiZQjSyEATZ?= =?Windows-1252?Q?RdE0SWMGnEmbzHIKEsRUtARdtcOsFteu19kPcoacJoMzmg6L7HTGRj9W?= =?Windows-1252?Q?gKkASFWcRrcPXxY5N8mcC8OXPULhh0tcOCRjNkP4M82XrIzH+P9J6ec0?= =?Windows-1252?Q?QLxkgk8OCAXxU+EZqnTWE40xouvqJEpVgvS3VR5lnVk7mCc1mnwjuJ/i?= =?Windows-1252?Q?Dh4MKBSQTjsDZcmA9yGPeUY0Mwm8ipoFtXwgcGHMY63lTJM/sMno8kuF?= =?Windows-1252?Q?7MaP1eaQ0OF0L1+4Ki5QSLto1Fh9XMNOd2ydNPFU8q9A2q6R7K/A/Eda?= =?Windows-1252?Q?1n2VdOrz3BT3Y=3D?= X-Microsoft-Exchange-Diagnostics: 1;SN2PR04MB2174;5:zcnyREfctBMKaqzHQNhvJcdcHdk4GkXOKoWd4GXLS+gB9svo6BkWCvSnJxwzDarsj6bJNV/pH4nGvqliW1AzjQO4QzDawyqu8DabDpjh1GrcCjPo1WTOV/HGEkTqIpxpRn8anxYYXg6QbiQifxNuw1msWoTU+wgHxMWnnUg1JkG7Ofmij4DTUXez3Kdc2ntUFlW15+G3SV4b5NGkhHV6PiKFo4mzPJ2RPesbnlxf5wvzvJ9FBfARtI9+ZS9rN63cMjinrJMUaRfV7Vs9utv0i6ToPhYvGGpNmiZ0CoBl+R47RvF6dUKZCXlHFLjQcdwsSVmPwOqpe+QCrTPu4tv5oJk/tQQ9PhZMXddDiJIEGqs9B+G5R8RAeLda2nJktLfGYlo8/nwGw3IEkpEi6kSHvzJVq4djARtFBTM2yPbocu1HljWj2h0SGFLnC6Fed0AvhA9nmzNBuqO425+7XXhEJXFV0ivLBeSZGadXjBLKiio/hK1E102Woo8nCTCdcsL9;24:nAi4guIxKrpmJs34c83iYKkhmrUpu75JKRYU8kyEK5b5M+16TKZ93wGxjp6Yj4gcYgntaDKp0Cp9Ikxx8cxqpuzf7fZBZE3TllAQXqRjYp8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;SN2PR04MB2174;7:dwSDZ09Kc0q7mu//i7LOX86sTbAgZ/xRhFCnx3jniRKpiYJJn4J/dzO6khw3i/45/czjgD7rPNsCaAfJ/wFgZBQ2sc498Bvs/kQxWCoWtFSHrUG/UBJMxoHCbhNG2yNioxM/pt3ZE9IMbGetOcWJZ137RDBQpjFltkp93e51rIqEhNhDK+1bcW4XG7l4d52QthYoUVKlraAi2Md3bxpiBnnb2PRshxE8kvg1BoAEArjBwgZ8GwLwdUVB8VOKSlW+D8BAizvy+sSxOcCUe5bTefIf93oMy91aPQvCGLXiQvKsXVL1n/VKrFcx6931eV1RhxYM4uclda67qLy6iYGAT0cZzLIWJkbuE1VSRNfSystthB/eS+oFszCsfTIW4z8IydTPUuh88eckxbib4KnbVQ0avWVXzN2OFPCGDo9CxEDGKAMatTTeFbWErRPhtG1YJXimM67RtVDmoYDBsQfM6sybIC2ZPBnWxRuDDj892n5n3/uf0hlkYtH0xIkkAQR+BHO918Z5SjVLgGrOl+Kvm4rtESMCcnc90EajzcfEpDT7ADeRvozBD0Drfo/WuPQ7PieA8MInIYrVMpsgx9MMgzInE+474beaPcjViHZSrakD6T6nTlO/Jj4T/tPx8CN6rzFChePLYc1UA+Y4jrVIQfBgAHaKLKOfhCS/R6BJtSQx/pi6HYFQ5zqn4k4/kgXy9CdH//zyBqKZKSM+gOFjRB+kn3+GNDHTAlBgz58BDWDx9/7KeGJKZooxb1G1DXxlDjjzyetnuH9epGsIrSHlDnMQT13Cc/6zbhHUKje8bCI= X-OriginatorOrg: pitt.edu X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2017 16:47:22.1794 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN2PR04MB2174 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 7773 Lines: 250 On 06/28/2017 01:04 AM, Shuah Khan wrote: > Convert breakpoint_test_arm64 output to TAP13 format. > > Signed-off-by: Shuah Khan > --- > .../selftests/breakpoints/breakpoint_test_arm64.c | 114 ++++++++++++++------- > 1 file changed, 79 insertions(+), 35 deletions(-) > > diff --git a/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c b/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c > index fa6d57af5217..d13bd0dea13e 100644 > --- a/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c > +++ b/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c > @@ -41,20 +41,27 @@ static volatile uint8_t var[96] __attribute__((__aligned__(32))); > static void child(int size, int wr) > { > volatile uint8_t *addr = &var[32 + wr]; > + char msg_buf[512]; > > if (ptrace(PTRACE_TRACEME, 0, NULL, NULL) != 0) { > - perror("ptrace(PTRACE_TRACEME) failed"); > - _exit(1); > + snprintf(msg_buf, sizeof(msg_buf), > + "ptrace(PTRACE_TRACEME) failed: %s\n", > + strerror(errno)); > + ksft_exit_fail_msg(msg_buf); > } > > if (raise(SIGSTOP) != 0) { > - perror("raise(SIGSTOP) failed"); > - _exit(1); > + snprintf(msg_buf, sizeof(msg_buf), > + "raise(SIGSTOP) failed: %s\n", > + strerror(errno)); > + ksft_exit_fail_msg(msg_buf); > } > > if ((uintptr_t) addr % size) { > - perror("Wrong address write for the given size\n"); > - _exit(1); > + snprintf(msg_buf, sizeof(msg_buf), > + "Wrong address write for the given size: %s\n", > + strerror(errno)); > + ksft_exit_fail_msg(msg_buf); > } > switch (size) { > case 1: > @@ -90,6 +97,7 @@ static bool set_watchpoint(pid_t pid, int size, int wp) > const unsigned int control = byte_mask << 5 | type << 3 | enable; > struct user_hwdebug_state dreg_state; > struct iovec iov; > + char msg_buf[512]; > > memset(&dreg_state, 0, sizeof(dreg_state)); > dreg_state.dbg_regs[0].addr = (uintptr_t)(addr - offset); > @@ -101,10 +109,15 @@ static bool set_watchpoint(pid_t pid, int size, int wp) > return true; > > if (errno == EIO) { > - ksft_exit_skip("ptrace(PTRACE_SETREGSET, NT_ARM_HW_WATCH) " > - "not supported on this hardware\n"); > + snprintf(msg_buf, sizeof(msg_buf), > + "ptrace(PTRACE_SETREGSET, NT_ARM_HW_WATCH) not supported on this hardware: %s\n", > + strerror(errno)); > + ksft_exit_skip(msg_buf); > } > - perror("ptrace(PTRACE_SETREGSET, NT_ARM_HW_WATCH) failed"); > + snprintf(msg_buf, sizeof(msg_buf), > + "ptrace(PTRACE_SETREGSET, NT_ARM_HW_WATCH) failed: %s\n", > + strerror(errno)); > + ksft_test_result_fail(msg_buf); > return false; > } > > @@ -114,9 +127,14 @@ static bool run_test(int wr_size, int wp_size, int wr, int wp) > siginfo_t siginfo; > pid_t pid = fork(); > pid_t wpid; > + char buf[512]; > + char buf2[512]; > > if (pid < 0) { > - perror("fork() failed"); > + snprintf(buf, sizeof(buf), > + "fork() failed: %s\n", > + strerror(errno)); > + ksft_test_result_fail(buf); > return false; > } > if (pid == 0) > @@ -124,15 +142,22 @@ static bool run_test(int wr_size, int wp_size, int wr, int wp) > > wpid = waitpid(pid, &status, __WALL); > if (wpid != pid) { > - perror("waitpid() failed"); > + snprintf(buf, sizeof(buf), > + "waitpid() failed: %s\n", > + strerror(errno)); > + ksft_test_result_fail(buf); > return false; > } > if (!WIFSTOPPED(status)) { > printf("child did not stop\n"); > + snprintf(buf, sizeof(buf), > + "child did not stop: %s\n", > + strerror(errno)); > + ksft_test_result_fail(buf); > return false; > } > if (WSTOPSIG(status) != SIGSTOP) { > - printf("child did not stop with SIGSTOP\n"); > + ksft_test_result_fail("child did not stop with SIGSTOP\n"); > return false; > } > > @@ -140,42 +165,58 @@ static bool run_test(int wr_size, int wp_size, int wr, int wp) > return false; > > if (ptrace(PTRACE_CONT, pid, NULL, NULL) < 0) { > - perror("ptrace(PTRACE_SINGLESTEP) failed"); > + snprintf(buf, sizeof(buf), > + "ptrace(PTRACE_SINGLESTEP) failed: %s\n", > + strerror(errno)); > + ksft_test_result_fail(buf); > return false; > } > > alarm(3); > wpid = waitpid(pid, &status, __WALL); > if (wpid != pid) { > - perror("waitpid() failed"); > + snprintf(buf2, sizeof(buf2), > + "waitpid() failed: %s\n", > + strerror(errno)); > + ksft_test_result_fail(buf2); > return false; > } > alarm(0); > if (WIFEXITED(status)) { > - printf("child did not single-step\t"); > + ksft_test_result_fail("child did not single-step\t"); > return false; > } > if (!WIFSTOPPED(status)) { > - printf("child did not stop\n"); > + ksft_test_result_fail("child did not stop\n"); > return false; > } > if (WSTOPSIG(status) != SIGTRAP) { > - printf("child did not stop with SIGTRAP\n"); > + ksft_test_result_fail("child did not stop with SIGTRAP\n"); > return false; > } > if (ptrace(PTRACE_GETSIGINFO, pid, NULL, &siginfo) != 0) { > perror("ptrace(PTRACE_GETSIGINFO)"); > + snprintf(buf2, sizeof(buf2), > + "ptrace(PTRACE_GETSIGINFO): %s\n", > + strerror(errno)); > + ksft_test_result_fail(buf2); > return false; > } > if (siginfo.si_code != TRAP_HWBKPT) { > - printf("Unexpected si_code %d\n", siginfo.si_code); > + snprintf(buf2, sizeof(buf2), > + "Unexpected si_code %d\n", > + siginfo.si_code); > + ksft_test_result_fail(buf2); > return false; > } > > kill(pid, SIGKILL); > wpid = waitpid(pid, &status, 0); > if (wpid != pid) { > - perror("waitpid() failed"); > + snprintf(buf2, sizeof(buf2), > + "waitpid() failed: %s\n", > + strerror(errno)); > + ksft_test_result_fail(buf2); > return false; > } > return true; > @@ -192,6 +233,9 @@ int main(int argc, char **argv) > struct sigaction act; > int wr, wp, size; > bool result; > + char msg_buf[512]; > + > + ksft_print_header(); > > act.sa_handler = sigalrm; > sigemptyset(&act.sa_mask); > @@ -200,14 +244,15 @@ int main(int argc, char **argv) > for (size = 1; size <= 32; size = size*2) { > for (wr = 0; wr <= 32; wr = wr + size) { > for (wp = wr - size; wp <= wr + size; wp = wp + size) { > - printf("Test size = %d write offset = %d watchpoint offset = %d\t", size, wr, wp); > + snprintf(msg_buf, sizeof(msg_buf), > + "Test size = %d write offset = %d watchpoint offset = %d\t", > + size, wr, wp); > result = run_test(size, MIN(size, 8), wr, wp); > - if ((result && wr == wp) || (!result && wr != wp)) { > - printf("[OK]\n"); > - ksft_inc_pass_cnt(); > - } else { > - printf("[FAILED]\n"); > - ksft_inc_fail_cnt(); > + if ((result && wr == wp) || > + (!result && wr != wp)) > + ksft_test_result_pass(msg_buf); > + else { > + ksft_test_result_fail(msg_buf); > succeeded = false; > } > } > @@ -215,19 +260,18 @@ int main(int argc, char **argv) > } > > for (size = 1; size <= 32; size = size*2) { > - printf("Test size = %d write offset = %d watchpoint offset = -8\t", size, -size); > - > - if (run_test(size, 8, -size, -8)) { > - printf("[OK]\n"); > - ksft_inc_pass_cnt(); > - } else { > - printf("[FAILED]\n"); > - ksft_inc_fail_cnt(); > + snprintf(msg_buf, sizeof(msg_buf), > + "Test size = %d write offset = %d watchpoint offset = -8\t", > + size, -size); > + > + if (run_test(size, 8, -size, -8)) > + ksft_test_result_pass(msg_buf); > + else { > + ksft_test_result_fail(msg_buf); > succeeded = false; > } > } > > - ksft_print_cnts(); > if (succeeded) > ksft_exit_pass(); > else > I would like to remind you that all ksft_* output functions append a newline character already, so no need to add them. Otherwise I think this patch is good. Thank you, Paul