rem: err = ENOMEM;
add: err = FS_ENOMEM;
context: rootfs_symlink(void *_ns, void *_dir, const char *name, const char *path){    nspace      *ns;    vnode       *dir;    int         err;    char        *buf;    vnode       *vn;    ns = (nspace *) _ns;    dir = (vnode *) _dir;    buf = (char *) malloc(strlen(path)+1);    if (!buf) {        err = ENOMEM;        goto error1;    }    strcpy(buf, path);    LOCK(ns->lock);    err = do_create(ns, dir, name, MY_S_IFLNK, &vn);    if (err)        goto error2;    vn->symlink = buf;    UNLOCK(ns->lock);    return 0;error2:    UNLOCK(ns->lock);error1:    return err;}