reactos/drivers
Hermès Bélusca-Maïto 7e89227a00
[MOUNTMGR] Fix initial sending of device online notification (#7030)
1. MountMgrMountedDeviceArrival():
   Fix the conditions under which the device's online notifications
   are skipped (SkipNotifications == TRUE) and fix the code comments.
   Now, things make much more sense:
   online notifications are skipped when the device is already offline
   or is a legacy (NT <= 4) fault-tolerant volume (see point 2 below),
   or is NOT mounted (doesn't have a drive letter).
   Previously, we were sending an online notification if the device
   was NOT mounted (why?!...) or if it was deemed as "valid" (wrongly
   determined, see point 2 below).

2. QueryDeviceInformation():
   * The usage of the "Valid" parameter didn't make much sense. Indeed,
     when a partition/volume device is reported to the Mount Manager,
     it's already valid. (Also, setting "Valid" to TRUE only in the case
     of an MBR partition while ignoring GPT ones, and resetting it to
     FALSE if IOCTL_STORAGE_GET_DEVICE_NUMBER returned success, pointed
     to something incorrect was going on.)
     Instead, what we are checking here is whether the device is a
     legacy fault-tolerant volume: such volume can only reside on an
     MBR disk, have the expected partition type, and does not really
     reside on a specific storage device (hence the check for
     IOCTL_STORAGE_GET_DEVICE_NUMBER returning failure).

   * Take also the opportunity to SAL2-ify the function.
2024-06-25 22:51:08 +02:00
..
base [KDVM] Fix definition of RtlEqualMemory() (#6988) 2024-06-10 22:29:22 +02:00
battery [BATTC] Make input buffer on IOCTL_BATTERY_QUERY_TAG optional 2024-02-01 10:08:51 +01:00
bluetooth [REACTOS] Silence warnings in 3r-party code 2021-07-23 22:03:48 +02:00
bus [ACPI] Register a device interface class with ACPI fans 2024-05-22 20:23:06 +02:00
crypto [KSECDD] Fix RtlEncryptMemory and improve test 2020-09-25 09:39:51 +02:00
filesystems [CMAKE] Clang*: Add '-Werror=unknown-warning-option' for C/CXX (#6383) 2024-05-31 16:26:11 +02:00
filters [FLTMGR] CreateClientPort(): Fix ObInsertObject() error handling 2021-12-28 02:27:50 +03:00
hid [ACLEDIT][MSIMG32][HIDCLASS] Fix DLL-main function argument type in spec file. 2022-10-06 16:16:40 +02:00
input [INPORT] Fix swapped buttons for the inport bus mouse 2023-08-05 16:40:07 +03:00
ksfilter [AUDIO] Implement support for WAVE_FORMAT_EXTENSIBLE audio format (#6686) 2024-04-11 11:59:14 +02:00
multimedia [BDASUP][KMIXER][MMIXER][STREAM] Replace meaningless YDEBUG (#5818) 2023-10-31 12:04:24 +00:00
network [DD] Keep the network drivers infs 8.3 like on MS Windows (#7007) 2024-06-17 22:41:31 +02:00
parallel [DRIVERS] Use IoForwardIrpSynchronously in drivers 2022-01-05 02:17:56 +03:00
processor [DRIVERS][INF] Update Romanian (ro-RO) translation (#6088) 2023-12-09 20:19:54 +01:00
sac [SACDRV] Add 2 OBJ_KERNEL_HANDLE 2022-05-08 19:42:49 +02:00
serial [DRIVERS] Add some missing OBJ_KERNEL_HANDLE (#4493) 2022-05-07 22:12:19 +03:00
setup [BLUE] Optimize ScrIoControl for speed (#5185) 2023-03-28 08:12:38 +09:00
storage [MOUNTMGR] Fix initial sending of device online notification (#7030) 2024-06-25 22:51:08 +02:00
usb [USBOHCI] Fix broken indentation 2024-03-23 23:08:01 +01:00
wdm [AC97] Use individual Decibel range for Master Volume control (#6950) 2024-06-01 12:31:53 +02:00
wmi [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
CMakeLists.txt