It seems that this implementation do not guarantee multi-thread safety?
Since in struct FileSystem, the disk field is wrapped by RefCell which would panic if two thread call borrow_mut() (considering multi-core scenario).
By the way, if fatfs do not guarantee multi-thread safety, I think it at least should not panic, but keep related data dirty.