#define RES_MODE m9_s2
#define RES_NBYTES m9_l5
#define RES_OFFSET m9_s2
-#define RES_SEEK_POS_HI m9_l3
-#define RES_SEEK_POS_LO m9_l4
+#define RES_SEEK_POS m9_ull2
#define RES_SYMLOOP m9_s3
#define RES_UID m9_s4
#define RES_FLAGS m9_s3
if (r != OK) return(EINVAL);
- fs_m_out.RES_SEEK_POS_LO = pos + bytes_done;
+ fs_m_out.RES_SEEK_POS = pos + bytes_done;
fs_m_out.RES_NBYTES = bytes_done;
return(r);
update_timens(pn, ATIME, NULL);
fs_m_out.RES_NBYTES = written;
- fs_m_out.RES_SEEK_POS_LO = pos;
+ fs_m_out.RES_SEEK_POS = pos;
return(OK);
}
if (r < 0)
return r;
- m_out.RES_SEEK_POS_HI = ex64hi(pos);
- m_out.RES_SEEK_POS_LO = ex64lo(pos);
+ m_out.RES_SEEK_POS = pos;
m_out.RES_NBYTES = off;
return OK;
user_off += off;
}
- m_out.RES_SEEK_POS_HI = 0;
- m_out.RES_SEEK_POS_LO = pos;
+ m_out.RES_SEEK_POS = pos;
m_out.RES_NBYTES = user_off;
return OK;
if ((r = write_file(ino, &pos, &count, &grant)) != OK)
return r;
- m_out.RES_SEEK_POS_HI = ex64hi(pos);
- m_out.RES_SEEK_POS_LO = ex64lo(pos);
+ m_out.RES_SEEK_POS = pos;
m_out.RES_NBYTES = count;
return OK;
}
if (r == OK) {
- fs_m_out.RES_SEEK_POS_HI = 0;
- fs_m_out.RES_SEEK_POS_LO = pos + len;
+ fs_m_out.RES_SEEK_POS = pos + len;
fs_m_out.RES_NBYTES = len;
}
user_off += off;
}
- fs_m_out.RES_SEEK_POS_HI = 0;
- fs_m_out.RES_SEEK_POS_LO = pos;
+ fs_m_out.RES_SEEK_POS = pos;
fs_m_out.RES_NBYTES = user_off;
return OK;
position += (off_t) chunk; /* position within the file */
}
- fs_m_out.RES_SEEK_POS_LO = position; /* It might change later and the VFS
+ fs_m_out.RES_SEEK_POS = position; /* It might change later and the VFS
has to know this value */
/* On write, update file size and access time. */
position += chunk; /* position within the file */
}
- fs_m_out.RES_SEEK_POS_LO = ex64lo(position);
- fs_m_out.RES_SEEK_POS_HI = ex64hi(position);
+ fs_m_out.RES_SEEK_POS = position;
if (rdwt_err != OK) r = rdwt_err; /* check for disk error */
if (rdwt_err == END_OF_FILE) r = OK;
r = EINVAL; /* The user's buffer is too small */
else {
fs_m_out.RES_NBYTES = userbuf_off;
- fs_m_out.RES_SEEK_POS_LO = new_pos;
+ fs_m_out.RES_SEEK_POS = new_pos;
rip->i_update |= ATIME;
rip->i_dirt = IN_DIRTY;
r = OK;
position += chunk; /* position within the file */
}
- fs_m_out.RES_SEEK_POS_LO = position;
+ fs_m_out.RES_SEEK_POS = position;
if (rdwt_err != OK) r = rdwt_err; /* check for disk error */
if (rdwt_err == END_OF_FILE) r = OK;
position += chunk; /* position within the file */
}
- fs_m_out.RES_SEEK_POS_LO = ex64lo(position);
- fs_m_out.RES_SEEK_POS_HI = ex64hi(position);
+ fs_m_out.RES_SEEK_POS = position;
if (rdwt_err != OK) r = rdwt_err; /* check for disk error */
if (rdwt_err == END_OF_FILE) r = OK;
}
fs_m_out.RES_NBYTES = userbuf_off;
- fs_m_out.RES_SEEK_POS_LO = cur_pos;
+ fs_m_out.RES_SEEK_POS = cur_pos;
release_dir_record(dir); /* release the inode */
return(OK);
position += (off_t) chunk; /* position within the file */
}
- fs_m_out.RES_SEEK_POS_LO = position; /* It might change later and the VFS
+ fs_m_out.RES_SEEK_POS = position; /* It might change later and the VFS
has to know this value */
/* On write, update file size and access time. */
position += chunk; /* position within the file */
}
- fs_m_out.RES_SEEK_POS_LO = ex64lo(position);
- fs_m_out.RES_SEEK_POS_HI = ex64hi(position);
+ fs_m_out.RES_SEEK_POS = position;
if (lmfs_rdwt_err() != OK) r = lmfs_rdwt_err(); /* check for disk error */
if (lmfs_rdwt_err() == END_OF_FILE) r = OK;
r = EINVAL; /* The user's buffer is too small */
else {
fs_m_out.RES_NBYTES = userbuf_off;
- fs_m_out.RES_SEEK_POS_LO = new_pos;
+ fs_m_out.RES_SEEK_POS = new_pos;
if(!rip->i_sp->s_rd_only) {
rip->i_update |= ATIME;
IN_MARKDIRTY(rip);
if (rw_flag == READING) rip->i_update |= ATIME;
if (rw_flag == WRITING) rip->i_update |= CTIME | MTIME;
fs_m_out->RES_NBYTES = (size_t) cum_io;
- fs_m_out->RES_SEEK_POS_LO = rip->i_size;
+ fs_m_out->RES_SEEK_POS = rip->i_size;
put_inode(rip);
put_block(rip->i_dev, rip->i_num);
if (r != OK) return(r);
/* Fill in response structure */
- *new_pos = make64(m.RES_SEEK_POS_LO, m.RES_SEEK_POS_HI);
+ *new_pos = m.RES_SEEK_POS;
*cum_iop = m.RES_NBYTES;
return(OK);
cpf_revoke(grant_id);
if (r == OK) {
- if (vmp->m_fs_flags & RES_64BIT) {
- *new_pos = make64(m.RES_SEEK_POS_LO, m.RES_SEEK_POS_HI);
- } else {
- *new_pos = m.RES_SEEK_POS_LO;
- }
+ *new_pos = m.RES_SEEK_POS;
r = m.RES_NBYTES;
}
if (r == OK) {
/* Fill in response structure */
- if (vmp->m_fs_flags & RES_64BIT) {
- *new_posp = make64(m.RES_SEEK_POS_LO, m.RES_SEEK_POS_HI);
- } else {
- *new_posp = m.RES_SEEK_POS_LO;
- }
+ *new_posp = m.RES_SEEK_POS;
*cum_iop = m.RES_NBYTES;
}