[PATCH] server, ntoskrnl: Implement support for IRP_MJ_CREATE requests.

Vitaliy Margolen wine-devel at kievinfo.com
Mon Nov 9 23:56:44 CST 2009


Charles Davis wrote:
> Also, add stub handlers in mountmgr.
> 
> This patch fixes an issue with the previous one where wine would hang if
> ntoskrnl got a STATUS_BUFFER_OVERFLOW back from thes server.
> ---

> +int suspend_thread( struct thread *thread );
> +int resume_thread( struct thread *thread );

> +static void complete_open( struct open_call *open, unsigned int status )
> +{
...
> +    resume_thread( open->call.thread );


> This  static struct object *device_open_file( struct object *obj, unsigned int access,
>                                          unsigned int sharing, unsigned int options )
>  {
...
> +    suspend_thread( current );

Looks like a hack to me. You shouldn't be suspending/resuming threads
directly like this. They should block on open operation.

Vitaliy.



More information about the wine-devel mailing list