rem: err = EXDEV;
add: err = FS_EXDEV;
context: sys_rename(bool kernel, int ofd, const char *oldpath,    int nfd, const char *newpath){    int             err;    char            newname[FILE_NAME_LENGTH], oldname[FILE_NAME_LENGTH];    vnode           *odvn, *ndvn;    op_rename       *op;    err = get_dir_fd(kernel, ofd, oldpath, oldname, &odvn);    if (err)        goto error1;    err = get_dir_fd(kernel, nfd, newpath, newname, &ndvn);    if (err)        goto error2;        if (odvn->ns != ndvn->ns) {        err = EXDEV;        goto error2;    }    op = odvn->ns->fs->ops.rename;    if (!op) {        err = EINVAL;        goto error3;    }    err = (*op)(odvn->ns->data, odvn->data, oldname, ndvn->data, newname);    if (err)        goto error3;    dec_vnode(odvn, FALSE);    dec_vnode(ndvn, FALSE);    return 0;error3:    dec_vnode(ndvn, FALSE);error2:    dec_vnode(odvn, FALSE);error1:    return err;}