From patchwork Wed Sep 27 14:53:28 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Szabolcs Nagy X-Patchwork-Id: 23175 Received: (qmail 110461 invoked by alias); 27 Sep 2017 14:53:40 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 110431 invoked by uid 89); 27 Sep 2017 14:53:39 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.7 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:1744 X-HELO: EUR01-DB5-obe.outbound.protection.outlook.com Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Szabolcs.Nagy@arm.com; Message-ID: <59CBBB68.60205@arm.com> Date: Wed, 27 Sep 2017 15:53:28 +0100 From: Szabolcs Nagy User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0 MIME-Version: 1.0 To: Florian Weimer , GNU C Library CC: nd@arm.com Subject: Re: [PATCH] fix posix/tst-spawn test References: <59CB9FFA.20307@arm.com> <491b35ff-a58c-fc94-2759-e944dceb8f3d@redhat.com> <59CBB879.5060707@arm.com> <75f5317e-bb54-2137-e1e8-3bc50edd6ff6@redhat.com> In-Reply-To: <75f5317e-bb54-2137-e1e8-3bc50edd6ff6@redhat.com> X-ClientProxiedBy: VI1PR0701CA0041.eurprd07.prod.outlook.com (2603:10a6:800:90::27) To HE1PR0802MB2491.eurprd08.prod.outlook.com (2603:10a6:3:d9::23) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7edb08fb-8d6f-41af-b443-08d505b786ae X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254152)(48565401081)(2017052603199)(49563074)(201703131423075)(201703031133081)(201702281549075); SRVR:HE1PR0802MB2491; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2491; 3:cnRyV0yiLosGOzHmp0rfLOcuu5qlD0HEM66jnOyX3FHgc621WpZ7iDvLIc1ACLIgl7WEh49o92mEk9ufBzGsyArW/VsFDFHndZPWgbxhZZxuwtlnySqxePypRAo79lYQ6ktnTm3dge8hsQNIebjR7Kj5frQEYOXBsBEYv0IpRIDx9hlYmeAFeSt4jfwlilzKRclOd8IguOE4ZJNVW51lDzT5/j09VH5kIw5mHQ+j47fj6ujyOulMESk+Z6z9cJL7; 25:j7UBYvEHoDHJi7XPAdbQurxFhAl/JB/in6mXSMWou6wcZuOAGSVgG/xap+USmqbRxnA7ac3s3gLQ0ellkcbBi/dd+1k5C8QIlRouDAukGLCAQHGmE51483zNsjsqxiRUH8SlaXNccn4gkuFgIfKBcyvd9wZ0Z8JhsKpyIQMXwaBq/le1XTWXKVh670dwR6HXDJ3UXIRlUkVR7J5hD5x6W/PMeqmS7LGCyTspWacJ9ZgyrNDKzK5eTIDd3alWO2c/TOf+ib+xrOlFzd7CR69/3hOueUQ34OijwWwWyoZqbpt3vL3gE2/snoeSKoRdpmjfwbHrFgmpDeC2JklWmUGF6g==; 31:+2YG4RJkUQGEul7Hnt2eweI9qqMiU3vGlOcTHhptF/k7ZG1s3GC0agILhj1kw/pv6MoaxoGDHNXvnLaP2qO3fVUXbAJW4pX6q80GK2q0QacX/yNnjT/jyAMrAzfucUHovquPpcYfMrrac0i7gP5WIcjraTWmG7XGPCnuzNtxUoeBBJATXB0MJIvwXOEM2aP6qZj/Jl9iJl810p6P6oZs72mjFeb7NQh34nbDZtvJjZU= X-MS-TrafficTypeDiagnostic: HE1PR0802MB2491: NoDisclaimer: True X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2491; 20:ia/1+U6jqwvmvSz4HpD1c5EDXvgi/2wgXv9n0doKAXFUCMQKpUN9NPTQwERmhQFoS0sfrA4BkYB1IBAlhO5dULqZm74EEyQIUF91PyJ6cHXKtSMvYJN2Bg/dXN60bU3jnK8Oy+sroCMG35xqiXcrY6vV7g1SIFQ9Wi5xT8to044=; 4:gd+rs7Vj4QseYFcTN3KfDXzqex74oAZgiOIEO33mw16uv+U0lZa4sdn5acfx8Ossb/oeMTh6aA+NPzdbTTliyBb2gSHvAj5hweM5POitH64hy+T8Ysn4XQhl+Dee1WUAFZh2bu8SOUEb9obTxWOQr0Vsxh4UkaehdFFIxBq3sb8w/qrpEkCna2Dfre/SqItyMjg6mYDvkOEUsxpIdO7QQZDaY3sqJrSn03bMxlzyonliS7P/9uPXvD+lBu5tvE/qtXX/VoFmY4+w8LTta0UhFj9S1p7AL5rIb6yMy/CX6Ug= X-Exchange-Antispam-Report-Test: UriScan:(180628864354917); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(102415395)(6040450)(2401047)(5005006)(8121501046)(3002001)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123558100)(20161123555025)(20161123562025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:HE1PR0802MB2491; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:HE1PR0802MB2491; X-Forefront-PRVS: 04433051BF X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(6049001)(346002)(376002)(24454002)(189002)(377424004)(377454003)(199003)(2950100002)(101416001)(65806001)(305945005)(53936002)(2906002)(25786009)(72206003)(84326002)(6246003)(5890100001)(6666003)(5660300001)(4326008)(16576012)(110136005)(106356001)(16526017)(81166006)(68736007)(58126008)(8936002)(105586002)(189998001)(4610100001)(83506001)(97736004)(81156014)(66066001)(64126003)(86362001)(2476003)(53546010)(6116002)(316002)(3846002)(7736002)(8676002)(93886005)(65956001)(21490400003)(16586007)(5000100001)(33656002)(478600001)(65816999)(36756003)(6486002)(76176999)(50986999)(270700001)(77096006)(229853002)(568964002)(54356999); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2491; H:[10.2.206.69]; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2491; 23:J/1JA/bytmAEKNlji3cmRAldQq1t6FaFwgqgZEl?= =?us-ascii?Q?mFaXeTAZB5796KOktBF9VtXm/HrHhnWOyxPncXw9675qclk7qfUe05uzc6j6?= =?us-ascii?Q?3UMLUuHxSpAdUfSopVWVdt4A9QklQGYJosiXb4wXXj+z9cUG0ZmW2AZE+VUx?= =?us-ascii?Q?o7FpKS4RxRIL+/txOW26MPJp92dEAbuxXBiuJv0pCQbT6/1jX+UW7dugBznv?= =?us-ascii?Q?6QXwJdtG5YiL1Cvoc1DvkjEUz0KYeTBtiRt6m/qmcs8C7sNkyQDvdjpzkH56?= =?us-ascii?Q?5PSdBUOOIe+efJDMuOMnIEhakKBSQKVJ+J+JbkETk/ddqgI9W9nzdP6zOWqs?= =?us-ascii?Q?tMWGYFUaHdR53IhxH4XI1fOupo7+Srd9DwCS1AxzjngXeJZcGz2B3gmZJPmb?= =?us-ascii?Q?jM7wbLxqb6SiEHP+rwDy24a9T1+PrqEG+0jWxDqtaLtoDk9qcPWo3+BpTrxm?= =?us-ascii?Q?GFG2o408fscrQuGjIAxH9Dh7uPM2om6EebfEOdMjali29DLuo1WTbxNxhXMw?= =?us-ascii?Q?pxDJjYlYQKlfr2bInSSlNvib9Q3J6qjDQpb4XoIS3xGZGKglNlPvJ9mlHV8S?= =?us-ascii?Q?XlvPFS2wITaQEBNH+UDMcawYoxi743qDvlrB5t34yTVqzJZjie5LKBZAmSaH?= =?us-ascii?Q?hgkV+Ak0JloQLIrtY6SnrYB9wf+ANxYAlQEs65uhDR/1JcPe1PL2M3fDTn5R?= =?us-ascii?Q?KDYGDtyr4K7Gmt3hetVcqIAT8f6tE8SnFzDjz3BaDCdmCaxdGdBgXCbnPqIy?= =?us-ascii?Q?r94NekzBX1lFhju48nbLN2mEzN0RLFX8Slf2yNb2GuLyNMpcfDG3OCch2EZY?= =?us-ascii?Q?h5Loz4kFgUiLIi3fqcDCsxArhvh1EpB9gL1pNfax5ekE7jxoIb2gJtXh1WLE?= =?us-ascii?Q?sHjPVkdweCIIlpie0n86DIdLQuf3FpYPQ+ZbH5l5Q0SUJGjJspG/5PNSe1ia?= =?us-ascii?Q?Oi1BnG3fPNJYMeqcdpjARpdwAQsNkVe/lhrdflZ+CTHhafgdEr3ah58E0w/F?= =?us-ascii?Q?U/p0pGG0JzTMdOPEOoASPoRye/Y0NYazkPhwupMD+F0o3LIl9EklHJ0503f5?= =?us-ascii?Q?6MPlmc8+PURcmuuPlRaRgi4/gHlvhPDmBVJXdYXWxJIrhX9wgN/QBW9umMpc?= =?us-ascii?Q?ooeoulZ9RJnyERONXlHSrX/hqEA/5i7o4l6XQrt+0ho/RfFcni7aviApfz3z?= =?us-ascii?Q?QnJhDVcytyrUqQIP67b1jCzsaq+Tkl5b0U9EvRq40rPPsqhcKIz2aTexEil3?= =?us-ascii?Q?ZwTIOPXG9kcidW2mYQNWPcKZQLcEiFRPiifJVkTyx5G0TM12lJazZV15Q+R0?= =?us-ascii?Q?4K8auHWSt4NEaM3kRUJrsq/UD0EKv3ezuqlwz26da3qk2hafmwOQ/roMGMlI?= =?us-ascii?Q?u1F4v4Cn7NvWhreVfkXJ29zBs/0raAT5pxlgToL6EcbwtZ7dSfWfBU7sIPUO?= =?us-ascii?Q?kyACLywKzNGSUCfzPKERDVlMU7fZ9QWpJb9H8JOjtekbe+op42/3e+yEpJh0?= =?us-ascii?Q?oFaDiMp+XvWSvGw=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2491; 6:25C5Do27vE2a0bhG8KAdtm6VBByao9U2HqElW9jcTFWj9CPZI1/kgK/BqNK3Bkg7WtEAe+71KEP16zysK7/VSCYSnY3xbecKkTbJcc5OzFDB/iiU5KeELhBsYqyhWiGDxpb05tR21n+USW+BnhPhiyScxUcKr17V3D2GeTBaZ2hdA4+Fw6ZRUn6NUV1WHMOWKsRL/HflTSfJE3iG1sW3qXT0cn0Uxdsl+mSPWtlvYoXpSBm/WLH0ahKkMsS9SeYs9v4izDpKrql//LHB6TIBUqsEfH+/kFtNN1wActReEutaXt3yywOQUgzzj9jqngduz4yQCw0bmeQHAz4S1PCfkw==; 5:5lEcyfheB8k9jSmMNdQgF75KsyCEcRuYfJoLH+Y7Dow1/uzF1Hc6ditgjXDgTIjVCDYHkZaHvIqhyo1k7dzCKfvF+xYd03GKZgg+JYRLe/4rCupR9be0+DwcjWmnGK2TIHJbW/ePaKhNmc2PmJ5ozw==; 24:iGXJp5dVRrBF98PxS08Aig76GRL6ozOV/8mtNdYPfuvQUsqMKUj0wqS2ke+zepcTYk+CX40LKJhu+GWefrXGLR7yGnRXb/P3+Z53m8OYrNE=; 7:4Qz6PlpUonj17tgP68oQrJgNAvvM3OV6d23wqOJhRotSm699uv74aVjENRFcqT+Ja+n1vdw8xx2HRniLajbTUlJJo7wzgekHoTWl2DFFmlaGh0jHOQAxaXRgL9X6mR1KcLcZB4vV93m75g8gzEOM2ZHkggFHtWbu0Tgmdh7LxgnlVMNfk4sSLFvPqQs5cVyiFmwxsMCp1SWo8Pq4vLFzI1IAi4Lz4XmkZkwCFyf6yVg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2017 14:53:33.5168 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2491 On 27/09/17 15:45, Florian Weimer wrote: > On 09/27/2017 04:40 PM, Szabolcs Nagy wrote: >> The test spawns two children but only waited for one. >> The fix avoids printing to stderr. >> >> 2017-09-27 Szabolcs Nagy >> >> * posix/tst-spawn.c (do_test): Wait for both children. > > Sorry, one more thing: I think you should not interleave the spawns and waits. I think you can do a -1 wait > after the PID wait, and the test will still pass. This should be closer to the original test. > why does that matter? (attached the updated patch) diff --git a/posix/tst-spawn.c b/posix/tst-spawn.c index 08d92bd7a7..4e5e76351c 100644 --- a/posix/tst-spawn.c +++ b/posix/tst-spawn.c @@ -23,9 +23,10 @@ #include #include #include -#include #include #include +#include +#include /* Nonzero if the program gets called via `exec'. */ @@ -249,13 +250,16 @@ do_test (int argc, char *argv[]) error (EXIT_FAILURE, errno, "posix_spawn_file_actions_destroy"); free (name3_copy); - /* Wait for the child. */ - if (waitpid (pid, &status, 0) != pid) - error (EXIT_FAILURE, errno, "wrong child"); + /* Wait for the children. */ + TEST_VERIFY (xwaitpid (pid, &status, 0) == pid); + TEST_VERIFY (WIFEXITED (status)); + TEST_VERIFY (!WIFSIGNALED (status)); + TEST_VERIFY (WEXITSTATUS (status) == 0); - if (WTERMSIG (status) != 0) - error (EXIT_FAILURE, 0, "Child terminated incorrectly"); - status = WEXITSTATUS (status); + xwaitpid (-1, &status, 0); + TEST_VERIFY (WIFEXITED (status)); + TEST_VERIFY (!WIFSIGNALED (status)); + TEST_VERIFY (WEXITSTATUS (status) == 0); - return status; + return 0; }