Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
/npcapPublic

Investigate: can we probe-and-lock AssociatedIrp.SystemBuffer instead of copying it to a new NonPaged buffer? #555

Closed
@dmiller-nmap

Description

@dmiller-nmap

In a few places (funcBIOC_OID, NPF_BufferedWrite, perhaps others), data from the user is used as input to a function that requires that the memory not be paged out until it is done being processed. To avoid page faults (as in#374), we currently allocate a new buffer from NonPagedPool and copy the user data into it. In cases where the IRP is not pended (i.e. we wait for an event to signal that it is done being processed before returning the buffer to the user), we should be able to use the user data buffer directly instead of copying it. We would need to have a MDL describing the buffer pages and to ensure that they are probed and locked so they cannot be paged out.

I believe that in the case of IRP_MJ_DEVICE_CONTROL, all our IoControl codes (in ioctls.h) specify METHOD_BUFFERED, which means that the user data has already been copied into a nonpaged buffer by the I/O manager. We may still need to create a MDL to describe the buffer, especially for NPF_BufferedWrite because we use several sections of the buffer independently.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


      [8]ページ先頭

      ©2009-2025 Movatter.jp