fixup_mmaps_after_fork failure with cygwin-3.0.0
Ken Brown
kbrown@cornell.edu
Mon Feb 18 14:32:00 GMT 2019
On 2/18/2019 5:10 AM, Corinna Vinschen wrote:
> On Feb 17 17:39, Corinna Vinschen wrote:
>> On Feb 17 16:34, Ken Brown wrote:
>>> On 2/17/2019 10:07 AM, Corinna Vinschen wrote:
>>>> On Feb 17 14:56, Ken Brown wrote:
>>>>> On 2/17/2019 4:13 AM, Corinna Vinschen wrote:
>>>>>>> If I may place a bet, please try to replace
>>>>>>> PROCESS_QUERY_LIMITED_INFORMATION with PROCESS_QUERY_INFORMATION
>>>>>
>>>>> That didn't change anything. Just to make sure I understood correctly, here's
>>>>> what I tried:
>>>>>
>>>>> --- a/winsup/cygwin/sigproc.cc
>>>>> +++ b/winsup/cygwin/sigproc.cc
>>>>> @@ -814,7 +814,7 @@ child_info::child_info (unsigned in_cb, child_info_types chtype,
>>>>> allow the child to copy cygheap etc. from the parent to itself. If
>>>>> we're forking, we also need handle duplicate access. */
>>>>> parent = NULL;
>>>>> - DWORD perms = PROCESS_QUERY_LIMITED_INFORMATION | PROCESS_VM_READ
>>>>> + DWORD perms = PROCESS_QUERY_INFORMATION | PROCESS_VM_READ
>>>>> | SYNCHRONIZE;
>>>>> if (type == _CH_FORK)
>>>>> {
>>>>>
>>>>>> On second thought, an even better candidate may be PROCESS_VM_OPERATION.
>>>>>
>>>>> That's even worse. With that change, simply invoking 'make' leads to
>>>>> the same error.
>>>>
>>>> PROCESS_VM_OPERATION has to be specified additionally, not replacing
>>>> PROCESS_QUERY_{LIMITED_}INFORMATION. Sorry if that wasn't clear.
>>>
>>> Success: Simply adding PROCESS_VM_OPERATION to the existing permissions fixes
>>> the problem.
>>
>> Thanks for tracking this down, I upload a fixed 3.0.1 pretty soon.
>
> Please try the today's developer snapshot from
> https://cygwin.com/snapshots/
Works fine so far. I've rebuilt emacs on both 64-bit and 32-bit with no problems.
Ken
BKCBØ[H\ÜÎËØÞYÝÚ[ÛÛKÜØ[\Ë[BTNËØÞYÝÚ[ÛÛKÙ\KÃBØÝ[Y[][ÛËØÞYÝÚ[ÛÛKÙØÜË[B[ÝXØÜXH[ÎËØÞYÝÚ[ÛÛKÛ[ÈÝ[ÝXØÜXK\Ú[\CBB
More information about the Cygwin
mailing list