should this be `(int64_t)(fp->fd_top + off + fp->fd_len - 1)`? same question for the line above, and elsewhere.