From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 97430 invoked by alias); 2 Mar 2017 16:15:47 -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 97412 invoked by uid 89); 2 Mar 2017 16:15:45 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.2 spammy=VMIN, mcmullin, VTIME, McMullin 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; Thu, 02 Mar 2017 16:15:44 +0000 Received: from ESESSHC016.ericsson.se (Unknown_Domain [153.88.183.66]) by (Symantec Mail Security) with SMTP id 29.A9.06656.D2548B85; Thu, 2 Mar 2017 17:15:42 +0100 (CET) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (153.88.183.145) by oa.msg.ericsson.com (153.88.183.66) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 2 Mar 2017 17:14:52 +0100 Authentication-Results: sourceware.org; dkim=none (message not signed) header.d=none;sourceware.org; dmarc=none action=none header.from=ericsson.com; Received: from [142.133.50.177] (192.75.88.130) by DB5PR07MB1720.eurprd07.prod.outlook.com (2603:10a6:0:12::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.2; Thu, 2 Mar 2017 16:14:49 +0000 Subject: Re: [PATCH] PR remote/21188: Fix remote serial timeout To: Gareth McMullin , References: From: Simon Marchi Message-ID: <630aafbb-8684-5aea-0fa1-f0f538b4eb02@ericsson.com> Date: Thu, 02 Mar 2017 16:15:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BN6PR15CA0024.namprd15.prod.outlook.com (2603:10b6:404:e5::34) To DB5PR07MB1720.eurprd07.prod.outlook.com (2603:10a6:0:12::25) X-MS-Office365-Filtering-Correlation-Id: 1cd0d30f-7da8-4b05-65e4-08d4618740f4 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:DB5PR07MB1720; X-Microsoft-Exchange-Diagnostics: 1;DB5PR07MB1720;3:MVw0ZUKm0G4wDOqDnFr9291oSrV55qKMJPit+NXS2MnsgIjoSirVWckO0Kei0KN2FDRMDzXcY8BgAuSOzDXatkbWHqBdQw4UfiFUwucm3yQhdRaibtaaR+x0Fp1XG0V1KAgX4mbwyxtOu8hDqBDcI2aOyzPTDfEVxi+Q4r2EISwHXKI00/ifrY4R8NyGbfVV+8Td2QzPAddq4KwwuX0s9AfJ9JePJqzZ6HMWHLS9fxv5TgwOk0nMVj63HLJx7gB9VQGeo+8pOBNyMAcaSjyr9w==;25:9atBLTPeowSSiMUkkK+lzfF90+JmmIxspn/2U1AChCJYLMEN8AKE1mSje5iK/TK7f8FLThrAvYHIPwicPF65BjSORr8uFS4dB4JfZGQtkowuqcYoXxUOMVHB2MawtKZ+BO1nW77r1pu6WnfzibQlM/fTpsmCHbraH+J1RiLbp756nj8CoKT3I4bSfH3JnTGlMfrjhvW4DGo2ITrpgcNOcGbJZMs7AGPa4xQqDYaGUKExdX7cRUPsMMNb+CT5D/tDPXY7KHIp0UtYt9cEqDBdj1Vjat52pT6aFtLOpcnmgWtxm3hDXDhqO/FYdPw5SahiP8S1wKx+KCPxeTXvT8g/zn/65qLJaYegZiokDs+09GxZMFeSk6Seh0HjA7SDe1XlgPqm9pfzzNc7rWNsfXPwlLK8+/lq/ZGFusc8sqINRLF5FaIDbW9Q8veyqCEbw1IYbqYjRj/lXqEe4fRcyQDOpw== X-Microsoft-Exchange-Diagnostics: 1;DB5PR07MB1720;31:IJOROchL+VKhcyNLjpwEUy6c8VDtl4sgQ7s2Vyk++wNPAob6N496sF6vkni4M8G2WyjZumkEhexuHA60RVObPVgF8YXj2hprcnY2Wfxhtm+9C8zQg8NVMOQyhUnA0evCq++d1yUzMUPx3IgZhSF39qDJT3+6ctJjogqCdFiXTPlnb+F9FT6UjfuUkOZRWZgsMhcnETkMGJCXJqs98Ff0oBYqSZCjPnbCAs4N2Cquus8QCfVIdG83j2kjzbLc7UFP6wpLbneoWWuiOYbYBxpndyPUFfQmLdRzZg3BG1Ap3TU=;20:Pl9S74jS7MUJ1I9R0QyJRe9kkcoxSg1aGP+h+OUZgxuupHisMUHBbqN0DxYhBICNdVfhGJLtKJQJ9kscuDs5ULDXxU/+mNmaRIfZcvpDwlB3p3X1JAccyAq1mwrWpZsTHDUlbpLPeAgKEeL/oDhy5kD9ZDvwlKBcCOlZM0rCDhrzQSyVO0JKxBIOI7XtwecAHWTw8Ru4uTGWrUUjUZp9YF0dAsGXd7PHh/PDwR8PDc3RCncUyZ5An26u/PVYZHKrvWNZB2nOVzmJg/hceOW++pYHxs2oOXK5B4MtwDVzE6u/gZt7D7tQdkUZiaW4dG8iLNQjn503IAtbozHZyZ6Nhvv/T9i7AhStC1JymVt4NQztWTs+pEQ/wN0NuipQZs02gGSmQFCBJmN8+6szrM3yadhbe8VUqvmTXjP2+qBlY2Dt/UvopM5zgqbunm6+8xaQ0L2L2oQsh9ErTLOQQKdz1M7PNhveN5G65XwElTa0RbSjlI4ZFNRr34D0bRQigRoe X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6041248)(20161123560025)(20161123564025)(20161123562025)(20161123555025)(20161123558025)(6072148);SRVR:DB5PR07MB1720;BCL:0;PCL:0;RULEID:;SRVR:DB5PR07MB1720; X-Microsoft-Exchange-Diagnostics: 1;DB5PR07MB1720;4:m3rC4HHSeDvr6v+kabfk3yp77FIN3A26h3Nj1G7FDV2RiSbkU4ysavZmMN8rjBgtfzV6SOW+7vGUJ2ttNKEuJvJapfm+cc4M2K5J1wXiDuWdt6Ee3AnME6fb4YIh0ZUygPPzmYHuJbpTTpOlHUACbUBQyKbKLELxXQTBJQBbLYEJeBRf1/JDA2GOaXDoGiyERV6jyq/oUBRYj5gMckuyAwxiza8vtfgf3+PmmVNQRPpjL2rab7Xk3sEyClqjuoTXFxyQNIc2SShMFfH6Yg2s61s0SvOczW8R4pXHec11c+M9p9ws3pYaizi5G4tJLvZf17auxli7txtnoTH1i0tttQJdyxDCj6hEJwqhSVJ/05I2e6xSxvvKClPCqK0kNtWGo7wm/EABOfU80VEN97iQKkTx/UwR+vLTaumGNMqbAmvedaRuFokVNE6VI/7IIO1MP18wJMEYnhKxk/jEHzn3c2tWgPZ/P3kyb6l7RQVPWwLjbpOazP9gm3S75jDQ7E6T7d3pkqeJqE2GqTz6OeKJfmAlEC2HZWStXlEYY0lvjLo7eEcBWTZvM5mZRWTsnzgtfbwtmcP0P+DSCFowha+7S6F3+f3AKbJLPJTP1HVLdMs= X-Forefront-PRVS: 023495660C X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(6049001)(7916002)(39450400003)(24454002)(377424004)(377454003)(4001350100001)(64126003)(47776003)(92566002)(2906002)(229853002)(8676002)(189998001)(7736002)(31696002)(86362001)(66066001)(83506001)(6666003)(5660300001)(36756003)(305945005)(2950100002)(5890100001)(31686004)(230700001)(6116002)(53936002)(3846002)(50466002)(33646002)(6246003)(42186005)(53546006)(38730400002)(6486002)(76176999)(54356999)(23746002)(50986999)(81166006)(2101003);DIR:OUT;SFP:1101;SCL:1;SRVR:DB5PR07MB1720;H:[142.133.50.177];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;DB5PR07MB1720;23:0KoiDSSVkPisFmZnxiTz5iNTT5hw5cn3Os8Te?= =?Windows-1252?Q?eMQ1D3l9zJMovKoRKhM5rA5FqotIAqH5Te6sCyvAxND96UqE9oomFsC2?= =?Windows-1252?Q?MX2qWYENYSa1Xz6NRV88BS1XrlpxUgXlIeNauS/GbM5vXP2KtK3baFKb?= =?Windows-1252?Q?mNO9Nc1PnGVYAvDiIpJNz+EJdHW5R3BtFKMaAyh43jlRj/HrXyQmeAz5?= =?Windows-1252?Q?IcED7zn4HDkCk4c0yzA+X7XO6Oa+5s0HbD7ko/LBowrx6POecEFh1aAP?= =?Windows-1252?Q?Zf/FwbbPSzUuH3C7h/KujTtB3/kIjkGV2DNd9OzFrOgfxqT9DIzQaPPK?= =?Windows-1252?Q?AIjWA6v0UhEBXWrQIvgxjBUnybSUGLuc8T2ZeO07MHEEysR6Cg7Af2GE?= =?Windows-1252?Q?Lpna1gM4UPC2qVmV8bUrHC1cRWDxI6oAGfmic6sIVttjZoqQ8ERF+9GR?= =?Windows-1252?Q?cshK+lFCPPqCyvmfLS9Yy8ASUCQS26q1KnWFNOPqrFo8ikeuob/9+bL0?= =?Windows-1252?Q?Kr4m5RGjzT5Tb6r70vYNMupC217bPRfBLkC6SCTpvF7L4JkxxQQRep/F?= =?Windows-1252?Q?oAlfHdrMGlGEYuF994ruoW+vSfRxWSfzSmglpusQxGa4+NxlP9WEXfhv?= =?Windows-1252?Q?hXVU8shS8Ctw3b/TPpMN1j3uCjIYnQq7UF6Ef8RqqfnuqQ0+K2RjhC+O?= =?Windows-1252?Q?k0F/iaWM6D4CwhxblsbPc3y+hAyBvru5J2nphmjnkMx744D5PoAR+q27?= =?Windows-1252?Q?LQZ+s46vvEhaPJNqkir5jFat31O3P4y3TnULcInt2AQvIebPe569sjDO?= =?Windows-1252?Q?pacX4+ijqGlNAFDF48xPNSC/BqgNQ0UW1Kw2hbIT9Rl8/Y7QsnmfcJVC?= =?Windows-1252?Q?gn29I3azQ39p58vY8RoEh957hAvZOdu46rRFukYc9vInPuqf2kChzSe1?= =?Windows-1252?Q?KOHjd7M6gjLLTVOkzqVxi8aedDm53sURpj8EjIX0bHLYXIb0jC7s6FR4?= =?Windows-1252?Q?jnDsdpy+IYuGo1K0jmmkP1Eu0YMQWygf+zvFbiY+NChYKm+HfMCkYqx0?= =?Windows-1252?Q?Srvy7Z0O0oE5BTg/ALPVFOjBf2/n0rSve1UOdnIJ3alfCeCxl8cIzqGM?= =?Windows-1252?Q?rp2VJ3ATcaMpExDYSZ+VHGIf9weby5UOjW+xdQyfXR2TBKXgxsUCmg0o?= =?Windows-1252?Q?kK9jGb/+zOjesyxjh/nM/FhRmgp2B8=3D?= X-Microsoft-Exchange-Diagnostics: 1;DB5PR07MB1720;6:v6Q6iKyCOkqjPdDAlmliI0DofSuCJ26p4o4I34Z5HkF6cBXLi6AnLZpedfZvX40imAIFimasFwYBRRRF4DTpCS7q2pJzH35g1pXVlCDAyJjlOszRsvQmW8MHPFWia64LtNgInbT/D40NnHTVou/Vbb4GxzOlSzfRePe3IvOU9+xEvnWTx4hBzByhKZ+xPGeG1h3xARIkATONHGgLuWyNGyP6XwxsfQ/OR8ICcoBw0L+obQ8pvvD7dyrxpDOBtlTCpYdFKDFx4vlR9d+2eirmYCV9dZ1gs9Iz4z4qkr43zn3Q7BQ+5RA4q0krJkyFmRHabcaEFFzx7mcTtFajpwBcw7ad7sgo84HKQQQdV2MaqD9HRuZkLJDPS0eBuFHXmaZlbPe1WCf65UtoElj0cV0xpQ==;5:rHqO/LE9NXB3TuYxszEbz/gtQqL/pD76bwxtpuqPCFhiyS68GjjnJ5gPjlIlcBPuzUky/bkaOxfQc5i3vAW5Hqoal43KjL/Jjdl9kKtrio5su3wd5NAXEz9DQxK2Orpt+oTm0R1v5lDeQ2gXlhEmxg==;24:XwpGCkYNG5s77fzGx3RfGZFZef8pD+2uI5+z2l01kbXNagseZ+GaY3GFXlDUa2pQl9geILUD/t3d9YVrIPhQDHVAu0THLI0LlvlBBRKEo/Y= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB5PR07MB1720;7:exFq+DHOWfVcURCe27VN/JhNGZxGgVY1oN3riK+e8b8FBaslgXy729Yjk4f7OrVUsz+4jC7xzoAbPIlfB6abj17SMi1/XjGwqJNJHP81okRpTiNKP0wTgOHeAiNi2BXMSjFptLjBnQSVOkQuVYUFbciNKoqqDi350gG8aoSP5EVm7pfgQWsbrLxL2HXnQRegS70sMAzIm7yWJh/2L5OqSWPKuEZbb5xlWqP4G8W1e9rxj80jqnjt8Zl0BQ+XD49x5MaQmagTewggkD6v3Y5HYe7MRyXNcAkIwFQnXF5OFaEUxewQ7GNfzcycQBkoXPZM48KbaWhz04XAEjr9McaeAA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Mar 2017 16:14:49.9632 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR07MB1720 X-OriginatorOrg: ericsson.com X-IsSubscribed: yes X-SW-Source: 2017-03/txt/msg00020.txt.bz2 On 17-02-20 05:52 PM, Gareth McMullin wrote: > The timeout mechanism in ser-unix.c was changed in commit 048094acc. > > In do_hardwire_readchar(), the required timeout is broken into 1 > second intervals and wait_for() is called. Before, wait_for() set > VTIME and VMIN so the read would block, but now it uses select() to > block for the specified timeout. If wait_for() returns > SERIAL_TIMEOUT, do_hardwire_readchar() returns immediately, so the > timeout is always only 1s. > > The attached patch will repeatedly call wait_for() until the full > timeout has elapsed. > > Gareth > I think I understand the problem you describe by inspecting the code. However, I have some difficulty understanding the current and proposed code, so I can't say if the patch looks correct. It just looks more complicated than necessary. For example, what's the point of the timeout_remaining field in struct serial? It seems to ever only be used in this function. If we can remove it, it will be one less thing to consider. We can probably have just the timeout variable that we decrement until it's done. Simon