Is there some reason to think that if safe_pread() returned an error (instead of us just not having the fd) that we don't need to report that error?