Web lists-archives.com

Re: fixup_mmaps_after_fork failure with cygwin-3.0.0




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