Factor out do_pread
noposix ver2