Lines Matching refs:MountFS
37 pub struct MountFS { struct
41 mountpoints: SpinLock<BTreeMap<InodeId, Arc<MountFS>>>, argument
45 self_ref: Weak<MountFS>, argument
55 mount_fs: Arc<MountFS>,
60 impl MountFS { impl
65 return Arc::new_cyclic(|self_ref| MountFS { in new()
80 let mount_fs: Arc<MountFS> = Arc::new(self); in wrap()
82 let weak: Weak<MountFS> = Arc::downgrade(&mount_fs); in wrap()
85 let ptr: *mut MountFS = mount_fs.as_ref() as *const Self as *mut Self; in wrap()
113 pub fn umount(&self) -> Result<Arc<MountFS>, SystemError> { in umount() argument
206 fn do_umount(&self) -> Result<Arc<MountFS>, SystemError> { in do_umount() argument
407 fn mount(&self, fs: Arc<dyn FileSystem>) -> Result<Arc<MountFS>, SystemError> { in mount() argument
420 .downcast_arc::<MountFS>() in mount()
423 let new_mount_fs = MountFS::new(to_mount_fs, Some(self.self_ref.upgrade().unwrap())); in mount()
435 fn mount_from(&self, from: Arc<dyn IndexNode>) -> Result<Arc<MountFS>, SystemError> { in mount_from() argument
455 fn umount(&self) -> Result<Arc<MountFS>, SystemError> { in umount() argument
513 impl FileSystem for MountFS { implementation
605 pub struct MountList(RwLock<BTreeMap<MountPath, Arc<MountFS>>>);
657 pub fn insert<T: AsRef<str>>(&self, path: T, fs: Arc<MountFS>) { in insert() argument
679 ) -> Option<(String, String, Arc<MountFS>)> { in get_mount_point() argument
707 pub fn remove<T: Into<MountPath>>(&self, path: T) -> Option<Arc<MountFS>> { in remove() argument