ufrisk/MemProcFS

Limitations Of Scatter Reads?

Closed this issue · 1 comments

Couple questions about scatter reads:

  1. Does scatter handles use the parent VMM Handle custom specified DTB set by VMMDLL_ConfigSet(vmmHandle, VMMDLL_OPT_PROCESS_DTB | PID, DTB) or do I also have to config set the scatter handle DTB?
  2. What's the read size limit per single scatter read execute? ( I'm curious as I can't read more than 0x930 bytes on a scatter request, and I'm unable to verify if its a bug coming from my code or some limitation from memprocfs, I split the reads into 3 small ones and it works fine but if I make it above 0x930 bytes and execute read it will return success but the buffer is completely 0 )

The issues section is for reporting issues in MemProcFS itself, not for answering general questions.

You're welcome to join the project Discord server for asking general programming questions though.

  1. It will use the DTB set by you.
  2. No limit. Read is partially not possible on a page boundary (after 0x930 bytes) in your case it seems like, use VMMDLL_FLAG_ZEROPAD_ON_FAIL on the scatter read to zeropad the failed bytes instead of failing the read.