9p: eliminate depricated conv functions

Remove depricated conv functions which have been replaced with new 
protocol routines.

This patch also reworks the one instance of the file-system code which
directly calls conversion routines (to accomplish unpacking dirreads).

Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
This commit is contained in:
Eric Van Hensbergen
2008-10-16 08:29:30 -05:00
parent 51a87c552d
commit 02da398b95
6 changed files with 37 additions and 1160 deletions

View File

@@ -45,7 +45,7 @@
*
*/
static inline int dt_type(struct p9_stat *mistat)
static inline int dt_type(struct p9_wstat *mistat)
{
unsigned long perm = mistat->mode;
int rettype = DT_REG;
@@ -69,7 +69,7 @@ static inline int dt_type(struct p9_stat *mistat)
static int v9fs_dir_readdir(struct file *filp, void *dirent, filldir_t filldir)
{
int over;
struct p9_stat st;
struct p9_wstat st;
int err;
struct p9_fid *fid;
int buflen;
@@ -92,20 +92,24 @@ static int v9fs_dir_readdir(struct file *filp, void *dirent, filldir_t filldir)
n = err;
while (i < n) {
err = p9_deserialize_stat(statbuf + i, buflen-i, &st,
err = p9stat_read(statbuf + i, buflen-i, &st,
fid->clnt->dotu);
if (!err) {
if (err) {
P9_DPRINTK(P9_DEBUG_VFS, "returned %d\n", err);
err = -EIO;
p9stat_free(&st);
goto free_and_exit;
}
i += err;
fid->rdir_fpos += err;
i += st.size+2;
fid->rdir_fpos += st.size+2;
over = filldir(dirent, st.name.str, st.name.len,
over = filldir(dirent, st.name, strlen(st.name),
filp->f_pos, v9fs_qid2ino(&st.qid), dt_type(&st));
filp->f_pos += st.size;
filp->f_pos += st.size+2;
p9stat_free(&st);
if (over) {
err = 0;