Commit Graph

5 Commits

Author SHA1 Message Date
Jamie Liu 89517eca41 Have fuse.DeviceFD hold reference on fuse.filesystem.
This is actually just b/168751672 again; cl/332394146 was incorrectly reverted
by cl/341411151. Document the reference holder to reduce the likelihood that
this happens again.

Also document a few other bugs observed in the process.

PiperOrigin-RevId: 342339144
2020-11-13 14:31:28 -08:00
Jinmou Li c4c302a27e fuse: fix data race in fusefs Release()
fix #3956
2020-09-16 12:22:17 -07:00
Jinmou Li 96fb1e60c3 Fix FUSE connection control lock ordering and race in unit test 2020-09-16 12:22:17 -07:00
Jinmou Li d459bb3372 Add FUSE umount support
This change implements Release for the FUSE filesystem
and expected behaviors of the FUSE devices.
It includes several checks for aborted connection
in the path for making a request and a function
to abort all the ongoing FUSE requests in order.
2020-09-16 12:19:30 -07:00
Jinmou Li f1219ec5f1 Refactor FUSE connection for readability and structure
This change decouples the code that is weakly
tied to the connection struct from connection.go,
rename variables and files with more meaningful choices,
adds detailed comments, explains lock orders,
and adds other minor improvement to make
the existing FUSE code more readable and
more organized.

Purpose is to avoid too much code in one file
and provide better structure for the
future commits.
2020-09-16 12:19:30 -07:00