HorusGod
5c01ce9f00
add timeouts to remaining infinite waits in pnp.c and fsctl.c
...
The previous commit missed three infinite KeWaitForSingleObject calls:
- pnp.c: Ext2PnpRemove and Ext2PnpSurpriseRemove wait forever for the
lower driver to complete the PnP IRP after device removal
- fsctl.c: Ext2IsMediaWriteProtected waits forever for the
write-protect check IRP to complete
All three now use 30-second timeouts with IRP cancellation on timeout,
matching the pattern used in block.c.
2026-03-05 00:59:24 +02:00
HorusGod
d0f12d766a
fix system hang on USB/removable device removal
...
When a USB drive with an ext4 filesystem is removed while the driver has
outstanding I/O, the system hangs indefinitely because
KeWaitForSingleObject calls block forever waiting for completions that
will never arrive from the removed device.
This commit fixes the issue with three changes:
- block.c: add 30-second timeouts to all KeWaitForSingleObject calls and
cancel pending IRPs on timeout instead of waiting forever
- pnp.c: set VCB_DEVICE_REMOVED flag early in both PnpRemove and
PnpSurpriseRemove so concurrent I/O threads can fail fast
- read.c, write.c: check VCB_DEVICE_REMOVED flag before issuing new I/O
and return STATUS_NO_SUCH_DEVICE immediately
2026-03-04 15:25:59 +02:00
Bo Branten
a2531ee9f8
removed a few lines of code that could never be reached because of the logic
2026-02-15 18:19:26 +01:00
Bo Branten
a6a4b7c1ed
include a subset of mountmgr.h to make it easier to compile the application separately without installing the Windows Driver Kit
2026-02-11 15:28:07 +01:00
Bo Branten
1d66b0b55d
removed a number of if statements that is not needed if the wait argument to CcCopyRead and CcCopyWrite is set to TRUE
2026-02-09 16:54:34 +01:00
Bo Branten
2ad48351d5
corrected the wait argument to CcCopyRead
2026-02-08 15:07:34 +01:00
Bo Branten
6347c88d18
removed a function argument that was never used
2026-02-03 00:44:28 +01:00
Bo Branten
29bd0f4793
initialize an uninitialized variable
2026-01-30 18:38:13 +01:00
Bo Branten
45ab9ba4b5
added a project setting that make the application look better on high resolution monitors
2026-01-29 00:34:19 +01:00
Bo Branten
992564c916
removed a struct member that was never used
2026-01-28 01:40:47 +01:00
Bo Branten
c17289baa8
this correction is hopefully correct
2026-01-28 01:39:21 +01:00
Bo Branten
235762654c
removed two functions that could not be called because of logic
2026-01-25 17:28:08 +01:00
Bo Branten
45946be9a4
removed two functions that was never used
2026-01-23 23:04:04 +01:00
Bo Branten
ce51f1f326
allow mounting casefolded fs since the driver can handle it
2026-01-21 23:05:25 +01:00
Bo Brantén
5d238f0602
Merge pull request #89 from DymOK93/fix-fsrtl-advanced-fcb-header
...
Don't clear Flag and Flag2 members in FSRTL_ADVANCED_FCB_HEADER
2026-01-21 22:43:49 +01:00
Dmitry Bolshakov
82731d1fe7
Don't clear Flag and Flag2 members in FSRTL_ADVANCED_FCB_HEADER
2026-01-21 23:00:27 +03:00
Bo Branten
3158b917a2
removed an unused variable
2025-12-24 02:11:07 +01:00
Bo Branten
7acc925637
correction to compile with later WDK and run on Windows 10
2025-04-29 21:24:44 +02:00
Bo Branten
8e4404ad0b
updated link in README file
2025-04-08 14:19:06 +02:00
Bo Branten
b20bf2bf49
updated the version resource to honor the original author
2025-01-24 01:49:15 +01:00
Bo Branten
67ea487e6a
updated version information in rc files
2025-01-05 18:07:56 +01:00
Bo Branten
f1175496b1
removed unmaintained Chinese resources
2025-01-05 17:51:08 +01:00
Bo Branten
fecf58a39c
updated install script
2025-01-04 17:27:57 +01:00
Bo Branten
abdf93d707
corrected the project files for building the applications for ARM/ARM64
2025-01-03 15:28:45 +01:00
Bo Branten
9c62978169
support to build applications for ARM/ARM64
2024-12-30 15:56:34 +01:00
Bo Brantén
7aba016faf
Merge pull request #61 from Vince1171/cleanup/code_consistency
...
code consistency: align usage of specifiers
2024-11-10 20:01:52 +01:00
Bo Brantén
9575244aad
Merge pull request #62 from Vince1171/reactos-upstream/complete-request-on-locked-volume
...
Ext2Read(): Complete request on VCB_VOLUME_LOCKED case
2024-11-10 02:16:32 +01:00
Bo Brantén
d0197ed0fe
Merge pull request #60 from Vince1171/cleanup/remove-jbd
...
remove unused/empty source files
2024-11-10 01:49:54 +01:00
Vincent Franchomme
0a3a85eee4
Add missing return type to cond_resched and need_resched
2024-11-09 15:10:00 +01:00
Vincent Franchomme
556212dea5
Ext2Read(): Complete request on VCB_VOLUME_LOCKED case ( reactos/reactos#4770 )
2024-11-09 15:04:40 +01:00
Vincent Franchomme
eb1bd67be2
Align declarations and definitions specifiers
2024-11-09 14:52:58 +01:00
Vincent Franchomme
694907c63c
Align inline usage stop using __inline
2024-11-09 12:58:50 +01:00
Vincent Franchomme
d4e1666282
Align order of specifiers: "static int inline" to "static inline int"
2024-11-09 12:58:39 +01:00
Vincent Franchomme
0cff6abbd4
remove empty header files
2024-11-08 23:20:26 +01:00
Bo Brantén
7f909d2d41
Merge pull request #59 from Vince1171/reactos-upstream/replace-assignment-comparison
...
fix equality check by replacing assignment with comparison
2024-11-02 22:06:14 +01:00
Vincent Franchomme
68d4225304
fix equality check by replacing assignment with comparison
...
fixes from ReactOS
2024-11-02 13:21:59 +01:00
Vincent Franchomme
6a6b206ed3
remove unused jbd
2024-11-02 12:44:55 +01:00
Bo Branten
b0239ca20a
removed old implementation of get_dtype
2024-09-24 18:44:51 +02:00
Bo Branten
d559017175
corrected the support for dir_nlink
2024-09-21 21:29:35 +02:00
Bo Branten
6d1ac271e5
corrected the setting of a checksum when adding directory entries
2024-09-14 19:10:00 +02:00
Bo Branten
66759e0f1b
updated the readme file
2024-09-07 19:20:50 +02:00
Bo Branten
68e7bd8949
Revert "updated EXT4_FEATURE_RO_COMPAT_SUPP"
...
This reverts commit 9a9a08c234 .
This was an incorrect addition. EXT4_FEATURE_RO_COMPAT_SUPP should
not be updated with features not implemented by the driver.
2024-09-07 18:58:01 +02:00
Bo Branten
7323b87213
moved update of mount time in the superblock
2024-09-05 01:53:51 +02:00
Bo Branten
c07cffe71c
implemented support for new inode field i_crtime
2024-09-04 18:01:24 +02:00
Bo Branten
834d118c0d
set mount time and write time in the superblock
2024-09-04 00:48:48 +02:00
Bo Branten
f5e57d52cb
corrected the settings of some time fields
2024-09-04 00:38:08 +02:00
Bo Branten
e8d280f7f2
set crtime and crtime_extra at file create and supersede
2024-09-03 17:29:50 +02:00
Bo Branten
1062de3fa4
added a comment on year 2038 and nano seconds file times
2024-09-03 00:57:48 +02:00
Bo Branten
0eb2f4ed1c
removed two unused functions
2024-09-02 22:58:19 +02:00
Bo Branten
ebb9a542f7
implemented support for year 2038 and nano second file times
2024-09-02 22:52:19 +02:00