X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:reply-to:to:subject:message-id :mime-version:content-type:content-transfer-encoding; q=dns; s= default; b=jEhlwW0ysCqby6eiaM+RKUiluoTo0Mw/S9s0C9ogn+Os6JQ7P5NzK CL/slTvD4KYzhNim06GME5pl65hrG0N6J2XCEV/0K8KyWotRHqMcVoQuZL3eBcFr jlFI7W14FjyZqQ/gGxREHw6a6a3P5yiDpZ4x8h5gFnjfubbsv+ROU4= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:reply-to:to:subject:message-id :mime-version:content-type:content-transfer-encoding; s=default; bh=RP3VC1x33nJoOOl0AmXHEo54v6M=; b=X3GUO814TL8Ss6pUKFiCyZnptvt6 rZ8LMFd+DlWzJOIAtAFOEDcrIMu/C9W2D3bZfNVLQOSYL7XefDztuLwMqAn+mJ/L fYL6xNHB+H8k/0qZfFZ70WEuHSQjHpZhNLhtl4yE1x4oYopnfO8ucYcHaW5B5IrS +TqrxeD9hYYPE28= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.1 spammy=Howard, howard, H*UA:Win32, killing X-HELO: zmcc-2-mx.zmailcloud.com Date: Thu, 25 Jul 2019 10:32:09 -0700 From: Quanah Gibson-Mount Reply-To: Quanah Gibson-Mount To: cygwin AT cygwin DOT com Subject: Bug report: Killing a native process may not actually kill it Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-IsSubscribed: yes As found and reported to the MSYS team back in 2006 by Howard Chu, if a native process is spawned, control-C, the kill command, etc, may not actually kill the process. Details are here: as well as here: Given that there is now 64-bit windows, the issue would be a bit more complex to resolve, as an updated patch would need to query first to see if the target process is 32-bit or 64-bit, and then a 64-bit version of the patch needs to be created. The inability to properly kill such a spawned process can lead to things like the dreaded "Device or resource busy" error, since the process that is using the related file has actually never terminated. It's fairly trivial to reproduce this in the OpenLDAP test suite, particularly test001, which spawns a slapd process, kills it, then spawns another slapd process, which will fail because the original slapd never actually got killed. Regards, Quanah -- Quanah Gibson-Mount Product Architect Symas Corporation Packaged, certified, and supported LDAP solutions powered by OpenLDAP: -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple