diff --git a/kernel/fs/portlfs/portlfs.c b/kernel/fs/portlfs/portlfs.c index 7899410..a789c51 100644 --- a/kernel/fs/portlfs/portlfs.c +++ b/kernel/fs/portlfs/portlfs.c @@ -74,7 +74,6 @@ struct VfsObj *littlefs_open(struct VfsMountPoint *vmp, const char *path, uint32 } hal_memset(vobj, 0, sizeof(*vobj)); spinlock_init(&vobj->spinlock); - vobj->refs++; int lfs_flags = 0; lfs_file_t *file = dlmalloc(sizeof(*file)); diff --git a/kernel/vfs/vfs.c b/kernel/vfs/vfs.c index c077bfa..a275c07 100644 --- a/kernel/vfs/vfs.c +++ b/kernel/vfs/vfs.c @@ -107,13 +107,7 @@ VfsObj *vfs_open(char *mountpoint, const char *path, uint32_t flags) { } void vfs_close(VfsObj *vobj) { - if (vobj->refs < 0) { - return; - } - vobj->refs--; - if (vobj->refs == 0) { - vobj->cleanup(vobj); - } + vobj->cleanup(vobj); } void vfs_init(void) { diff --git a/kernel/vfs/vfs.h b/kernel/vfs/vfs.h index 3d8c00b..990e0b9 100644 --- a/kernel/vfs/vfs.h +++ b/kernel/vfs/vfs.h @@ -39,7 +39,6 @@ typedef struct VfsStat { typedef struct VfsObj { SpinLock spinlock; - int32_t refs; void *extra; size_t extrasize; struct VfsMountPoint *vmp; diff --git a/ulib/libulib.a b/ulib/libulib.a index 365d31a..da94968 100644 Binary files a/ulib/libulib.a and b/ulib/libulib.a differ