[PATCH 1/5] ntoskrnl.exe: Implement KeAreApcsDisabled using critical region functions.

Dmitry Timoshkov dmitry at baikal.ru
Wed Apr 24 09:32:02 CDT 2019


Derek Lesho <dereklesho52 at gmail.com> wrote:

>  void WINAPI KeEnterCriticalRegion(void)
>  {
> -    FIXME(": stub\n");
> +    TRACE(": semi-stub\n");
> +    KeGetCurrentThread()->critical_region_count++;
>  }
...
>  void WINAPI KeLeaveCriticalRegion(void)
>  {
> -    FIXME(": stub\n");
> +    TRACE(": semi-stub\n");
> +    KeGetCurrentThread()->critical_region_count--;
>  }
...
> +BOOLEAN WINAPI KeAreApcsDisabled(void)
> +{
> +    return !!KeGetCurrentThread()->critical_region_count;
> +}

Shouldn't these APIs use interlocked operations?

-- 
Dmitry.



More information about the wine-devel mailing list