reactos/drivers
Pierre Schweitzer 7c01587680
[FASTFAT] Completely rewrite support for dirty volumes.
Until now, our support for dirty volumes was totally broken
to a point where, on FAT32 volume, the dirty couldn't even
be written nor read from the disk.

This commit totally rewrites its handling, for both FAT16 and FAT32
so that it's now fully functionnal. Furthermore, it also gets
totally compatible with our vfatlib, and thus, autochk.
Now, on mount, FastFAT will check if the volume is dirty or not, and
autochk will be able to ask for a repair if dirty. vfatlib will
repair the volume and remove the dirty bit. So that, on next
reboot, the volume will be mounted clean.

As a reminder, the dirty bit is set immediately after mounting
the volume, so that, if you crash or have a powercut, autochk
will always attempt to repair your volume (with more or less,
that's FAT!).

If you want to experience without breaking your FAT volume,
just boot, open a cmd prompt and type: fsutil dirty set c:
and reboot!

CORE-13758
CORE-13760
CORE-13759
2018-05-18 23:05:05 +02:00
..
base [NULL] Additions for the Null driver. 2018-04-22 22:23:54 +02:00
battery Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
bluetooth [CMAKE/CLANG-CL] Silence some clang-cl warnings in consistency with our gcc build. 2017-12-07 21:53:45 +01:00
bus [ACPI] Fix the format of the (default hardcoded) "unique" instance ID. 2018-04-22 16:52:42 +02:00
crypto [REACTOS] Fix x64 build 2017-10-22 16:49:04 +02:00
filesystems [FASTFAT] Completely rewrite support for dirty volumes. 2018-05-18 23:05:05 +02:00
filters [FLTMGR] Properly allocate CCB in CreatePortCCB() 2018-01-06 13:54:21 +01:00
hid [DRIVERS] Use KeClearEvent instead of KeResetEvent where the previous state is not needed. 2017-12-30 11:44:25 +01:00
input [I8042PRT] Enable keyboard clock explicitly (fixes Lenovo ACPI bug). CORE-14256 (#434) 2018-03-21 22:07:30 +01:00
ksfilter [SWENUM] Add version information. CORE-14112 2017-12-17 02:22:28 +01:00
multimedia Delete "ghost" old(*) files that have been mysteriously added back during the SVN-to-Git transition. 2017-10-04 10:28:36 +02:00
network [NDIS] Fix parameter order when calling ResetHandler. CORE-14624 2018-05-14 18:17:52 +02:00
parallel Add .keep guard files in order to restore lost but empty directories we had with SVN. 2017-10-04 10:28:36 +02:00
processor Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
sac [SAC] Fix wrong sized variable in SAC driver 2017-12-20 06:56:09 +01:00
serial [SERIAL] Fix Serial{Get,Clear}PerfStats() to become proper PKSYNCHRONIZE_ROUTINE routines and get rid of the related casts. Brought to you by Thomas Faber. CORE-11799 (#94) 2017-10-31 15:44:39 +01:00
setup Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
storage Removed unreachable line (#517) 2018-04-24 21:35:23 +01:00
usb Fixed typo 2018-05-17 16:15:25 +01:00
wdm [DRIVERS] Use KeClearEvent instead of KeResetEvent where the previous state is not needed. 2017-12-30 11:44:25 +01:00
wmi Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
CMakeLists.txt Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00