Hi Martin,
The code path leading to floppy_release with NULL filp was through
sys_mount or sys_umount. In the sys_umount case the device has already
been synced twice before reaching floppy_release, and in the sys_mount
case the mount has failed, so there shouldn't need to be a sync.
For the case of non-NULL filp, fsync_dev is a potentially time-consuming
call, as it has to go through all the buffers (twice, if I remember),
plus inodes and supers. So I don't think we want to do it unless
there's some evidence that the device was written to.
Regards,
Bill