Dmitry Borisov
06cbc2acd2
[BOOTVID] More improvements for PC-98 ( #2936 )
...
- Fix failure handling
- Reduce memory mapping that's not needed
2020-07-29 19:10:39 +03:00
Dmitry Borisov
e318801c1c
[BOOTVID] Fix screen buffer copying code for PC-98 ( #2936 )
2020-07-29 19:10:39 +03:00
Dmitry Borisov
c87be643f8
[BOOTVID] Improve text scrolling performance for PC-98 ( #2936 )
2020-07-29 19:10:39 +03:00
Dmitry Borisov
5d40981efa
[BOOTVID] Fix BitBlt behavior ( #2936 )
2020-07-29 19:10:38 +03:00
Dmitry Borisov
da9384b918
[BOOTVID] Annotate some functions to avoid confusing ( #2936 )
...
Also fix some magic constants.
2020-07-29 19:10:38 +03:00
Dmitry Borisov
4d54b8ce69
[BOOTVID] Fix drawing strings on top of the bitmap ( #2936 )
...
Also fix VGA pixel drawing.
CORE-15896
2020-07-29 19:10:38 +03:00
Stanislav Motylkov
06d5ed7ece
[FASTFAT] Support 64 KiB cluster sizes
...
FAT16 filesystem was not recognized on some 4GB USB flash drives.
This change makes them just work.
References:
- https://chat.reactos.org/reactos/pl/h83pm5ngkffk7qiyrmqnaaopxh
- https://support.microsoft.com/en-us/help/140365/default-cluster-size-for-ntfs-fat-and-exfat
CORE-16511
2020-07-22 19:50:24 +03:00
Trevor Thompson
b338fb7beb
[CLASS2]: Set DiskSize member of deviceExtension->DiskGeometry in ScsiClassReadDriveCapacity(). Consolidate code and comment for setting media capacity in bytes. CORE-17166
2020-07-21 01:21:16 +03:00
Serge Gautherie
89971a3757
[CDFS][FLOPPY_NEW] Simplify unsupported NT6.2+ workarounds ( #2956 )
2020-07-18 15:31:48 +02:00
Victor Perevertkin
c40b0866b1
[UDFS] Zero-initialize IO_STATUS_BLOCK data in UDFCommonCreate
...
Some places have been changed to return FILE_DOES_NOT_EXIST, everything
else just returns 0. FastFAT driver from MS does the same (tm),
so I'm not going to have a big research here.
CORE-16623
Co-authored-by: Suraj K Suresh <kssuraj15@gmail.com>
2020-06-29 02:37:12 +03:00
Serge Gautherie
8983adf967
[FASTFAT_NEW] Sync to upstream 16022c5 ( #2938 )
2020-06-26 20:03:01 +03:00
Victor Perevertkin
1e512e29dc
[USBSTOR] Correctly terminate a REG_MULTI_SZ string
...
returned by the IRP_MN_QUERY_ID handler
2020-06-24 21:15:58 +03:00
Thomas Faber
67592f9750
[NPFS] Fix querying FileAllInformation.
2020-06-24 09:04:05 +02:00
Thomas Faber
29b49c36ff
[KBDCLASS][MOUCLASS] Properly stub power IRP handling. CORE-12148 CORE-17136
2020-06-21 10:39:49 +02:00
Thomas Faber
23ccd13639
[I8042PRT] Get rid of IrpStub. CORE-12148 CORE-17136
...
We neither want to handle IRPs we don't understand, nor do we want to
assert in case of unexpected IOCTLs.
2020-06-21 10:39:34 +02:00
Serge Gautherie
ab2b7a6bc6
[FASTFAT_NEW] Simplify unsupported NT6.2+ workarounds
2020-06-21 09:27:44 +03:00
Serge Gautherie
1ceed5ad5a
[FASTFAT_NEW] Remove obsolete compiler workarounds
...
following upgrade to GCC 8.4 and MSVC 2015.
2020-06-21 09:27:44 +03:00
Serge Gautherie
9611e88624
[FASTFAT_NEW] Fix GCC 8.4 build
...
'.../strucsup.c:...:...: error: 'Ex*NPagedLookasideList' is static but used in inline function 'Fat*' which is not static [-Werror]'
2020-06-21 09:27:44 +03:00
Serge Gautherie
f26fa55891
[FASTFAT_NEW] fatdata.h: Properly mark ReactOS own code
...
Addendum to 3013e15
.
2020-06-21 09:27:44 +03:00
Hervé Poussineau
2b9941e7cb
[PCI] Fix PDO removal
...
We must not do anything on PDO removal, especially not deleting it.
We are allowed to delete it, only once we successfully completed a IRP_MN_QUERY_DEVICE_RELATIONS without with PDO.
2020-06-20 08:16:24 +02:00
Thomas Faber
cab7e9ade8
[ACPICA] Update to version 20200528. CORE-17094
2020-06-14 09:19:02 +02:00
Victor Perevertkin
2540c3b1e8
[USBSTOR] Fix unused variable introduced in 94e61c3
2020-06-13 03:20:08 +03:00
Victor Perevertkin
493f2ace11
[USBSTOR] Fix wrong function name in a9b97ae
2020-06-13 03:07:00 +03:00
Victor Perevertkin
94e61c3080
[USBSTOR] Move PDO's Inquiry data and FDO's SCSI context
...
to their Device Extensions.
This way the driver can better handle low memory situations
2020-06-12 16:55:27 +03:00
Victor Perevertkin
a9b97aeded
[USBSTOR] General refactoring.
...
Remove unused structures and unused fields in device extensions.
Replaced magic numbers with constants
2020-06-12 16:55:27 +03:00
Amine Khaldi
139a3d6661
[CMAKE] Implement PCH builds with target_precompile_headers. CORE-16905
2020-06-06 21:58:41 +03:00
Serge Gautherie
11345aedd8
[FORMATTING] [CMAKE] Remove space in 'if (' ( #2847 )
2020-05-26 20:24:02 +02:00
Stanislav Motylkov
7c8d5635aa
[PROCESSR][INF] Fix "Intel Intel" duplication typos
...
Addendum to 3509318
.
2020-05-25 02:36:17 +03:00
Serge Gautherie
924f19f6dc
[REACTOS] Remove executable bits on source files ( #2822 )
2020-05-20 23:09:44 +02:00
Stanislav Motylkov
fa1ec0a2ed
[BOOTVID][HALXBOX] Implement boot video driver for Xbox ( #2774 )
...
Also make HalpBiosDisplayReset() function always return FALSE,
because we don't have a BIOS on Xbox.
CORE-16216 CORE-16219
2020-05-17 19:18:32 +03:00
Hervé Poussineau
e246b9947e
[ISAPNP] Mark read data port as started, even if no ISAPNP card is present
...
CORE-17056
2020-05-16 23:20:38 +02:00
Mark Jansen
da777baa3d
[ISAPNP] Initialize uninitialized variable
...
Return value was a suggestion from Thomas,
it still boots for me (tm)
2020-05-16 14:03:04 +02:00
Dmitry Borisov
e901489574
[BOOTVID] Add boot video driver for NEC PC-98 series ( #2787 )
2020-05-15 22:28:34 +03:00
Joachim Henze
6c0ff7bd84
[UNIATA] Workaround regression CORE-16078, booting broke on specific Intel Z170
...
JIRA-user "Illen" reported booting from his Z170 controller worked up to
0.4.12-dev-936-g89aaf0e
and would refuse booting - beginning with uniata commit
0.4.12-dev-937-g
b546130731
For sure this workaround is just a temporary and no proper solution,
but was confirmed to be working by "Illen".
We have no clear understanding of the real bug yet.
Can be replaced by something better at any time.
It was already committed into 0.4.12, 0.4.13, 0.4.14.
We never had an affected release therefore.
Since no one took care of this bug ever,
the workaround will now be committed to master as well.
cherry picked from commit 0.4.13-RC-9-g
11178f38e4
2020-05-12 21:13:21 +02:00
Stanislav Motylkov
cd91271796
[NTOSKRNL][HAL][BOOTVID] Some more code refactoring
...
- Add boot video color constants
- Refactor palette initialization
- Move some common stuff in right place
- Get rid of some magic constants and hardcoded values
- Get rid of TopDelta variable (calculated at compile time)
- Update SAL annotations
Addendum to 5f2ca473
. CORE-16216 CORE-16219
2020-05-12 15:56:37 +03:00
Hervé Poussineau
fc0a0b9f84
[ISAPNP] Mark Read Data Port as not having a unique ID
...
This fixes a bugcheck in ntoskrnl.exe when computer has multiple ISA buses.
CORE-17034
2020-05-09 16:54:46 +02:00
Serge Gautherie
8ae1702a16
[PCIIDEX] Increase command port length to 8 from 7. CORE-9922 ( #2711 )
...
Co-Authored-By: Vadim Galyant <vgal@rambler.ru>
2020-05-07 10:16:18 +03:00
Sylvain Deverre
140ec9d037
[KDGDB] Fix GCC8 build
2020-05-01 16:37:13 +02:00
Thomas Faber
baa3380649
[ACPICA] Update to version 20190430. CORE-16998
2020-05-01 12:18:48 +02:00
Thomas Faber
71a4462ad5
[USBCCGP] Ignore IRP_MN_REMOVE_DEVICE return status and don't wait for it to complete.
2020-05-01 12:05:12 +02:00
Thomas Faber
823101274a
[USBCCGP] Don't handle IRP_MN_QUERY_DEVICE_TEXT requests other than device description.
2020-05-01 12:05:11 +02:00
Thomas Faber
0d15b2a3cb
[USBCCGP] Correctly stub PDO power IRP handling.
2020-05-01 12:05:11 +02:00
Thomas Faber
6c3a10c55a
[USBCCGP] Always forward device relations IRPs.
2020-05-01 12:05:06 +02:00
Victor Perevertkin
019f21ee1d
[MEDIA][CMAKE] Create add_driver_inf cmake function
...
*.inf files for drivers can now be placed along with the driver code
2020-04-26 20:28:04 +03:00
Hervé Poussineau
aaa416d36a
[BLUE] Add an IOCTL to directly choose which font to use (instead of codepage)
2020-04-26 14:54:09 +02:00
Timo Kreuzer
b82bf8ce16
[NTOS:IO] Fix parsing of resource lists
...
Also add a hack to avoid failing on now occurring resource conflict detection and try to fix at least one resource in ACPI hal.
CORE-10146
CORE-12892
2020-04-24 13:58:09 +03:00
Sylvain Deverre
ca2aab6964
[NETKVM] Fix GCC build
2020-04-23 20:11:10 +02:00
James Tabor
eecfb2362d
[NETKVM] Fix Build
2020-04-23 09:33:32 -05:00
Nguyen Trung Khanh
4c37757e81
[NETKVM] Import NetKVM network adapter driver by Red Hat
...
CORE-15841
2020-04-23 16:33:09 +03:00
Victor Perevertkin
3c4a68ec46
[BTRFS] Fix amd64 build
...
CORE-16679
2020-04-23 07:49:35 +03:00
Victor Perevertkin
3ba423996c
[BTRFS] Fix build
...
CORE-16679
2020-04-23 07:29:04 +03:00
Victor Perevertkin
194ea909fd
[BTRFS][UBTRFS][SHELLBTRFS] Upgrade to 1.7.2
...
CORE-16679
2020-04-23 07:07:36 +03:00
Dmitry Borisov
4501bbac8f
[KDCOM][NTOS:INBV][FREELDR] Decrease default baud rate for PC-98 target ( #2601 )
...
According to PC-9801 Bible p. 50, divisor for PIT will become unsupported in some cases after having removed the fractional part. Replace 19200 value with 9600 which is supported by both 10 MHz and 8 MHz machines.
2020-04-21 23:22:42 +03:00
Sylvain Deverre
309e9c13e1
[KDGDB] Allow kdgdb to continue when hit by a first-chance exception.
...
When gdb receives a fault, it converts it to "signal", and send "C"
command to server to transfer the signal it couldn't handle.
On ReactOS (and Windows ?) side, we tell KD API that we continue with an
error code, so the exception handler can be called.
This is useful when playing with gflags, especially +soe, with KDGDB.
2020-04-19 15:01:41 +02:00
Victor Perevertkin
7e069ccdb2
[CMAKE] Replace custom functions to built-in ones
...
add_target_compile_definitions -> target_compile_definitions
add_target_compile_flags -> target_compile_options
add_target_include_directories -> target_include_directories
2020-04-16 15:59:38 +03:00
Doug Lyons
cb10698316
[KSECDD] Improve GetSecurityUserInfo stub ( #2438 )
...
- Fix UNIMPLEMENTED_DBGBREAK seen using FileMon
- Add SAL2 Annotations and remove unneeded comments
- Return NULL pointer
CORE-15186
2020-04-16 01:32:47 +03:00
Thomas Faber
152265729b
[ACPI] Properly return a single alternative in Bus_PDO_QueryResourceRequirements. CORE-12892 CORE-14688
...
In ACPI resource descriptors, alternatives are marked with
StartDependent tags. Only the last set is terminated with EndDependent.
Therefore, since we only return the first alternative list for now,
ignore the first StartDependent tag and terminate enumeration at the second.
In the future we will need to build the full set of alternative lists here,
which will also make the unit test succeed fully.
This should fix random resource conflicts and make COM ports usable.
2020-04-11 23:43:05 +02:00
Thomas Faber
28be285da5
[ACPI] Avoid unnecessary casts.
2020-04-11 23:43:05 +02:00
Thomas Faber
9bcd835074
[ACPI_APITEST] Add a unit test for Bus_PDO_QueryResourceRequirements. CORE-12892
...
This will allow us to verify fixes made to function, which is quite broken.
2020-04-11 23:42:59 +02:00
Eric Kohl
7bef5b882a
[USBSTOR] Add missing compatible device id 5
2020-04-10 13:41:01 +02:00
Vadim Galyant
ef2323a146
[HALX86][PCIX] Statically link HALx86 and PCIX to the arbiter library. ( #2471 )
2020-04-09 19:41:16 +02:00
Hermès Bélusca-Maïto
85f3eeabc4
[BOOTVID] Addendum to 5f2ca473
: Forgot to include the precompiled header.
2020-04-09 17:45:40 +02:00
Hermès Bélusca-Maïto
7e0927a39f
[FLTMGR][NDK] Fix typos.
2020-04-09 16:05:26 +02:00
Dmitry Borisov
5f2ca473dc
[BOOTVID] Code refactoring. ( #2510 )
...
- Abstract the VGA and LCD code.
- Create a common file for all platforms.
2020-04-09 15:56:16 +02:00
Dmitry Borisov
df23bb779e
[BOOTVID] Move the VGA code into the PC directory. ( #2510 )
2020-04-09 15:33:58 +02:00
Dmitry Borisov
1610367fe2
[BOOTVID][NTOSKRNL][HALX86] Move hardcoded coordinates of bootvid into one place. ( #2504 )
...
Co-Authored-By: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2020-04-09 15:17:48 +02:00
Victor Perevertkin
167fa2c26a
[TCPIP] Remove duplicate declarations from ticonsts.h
2020-04-07 05:32:40 +03:00
Victor Perevertkin
740a859e92
[TCPIP] Implement IOCTL_ICMP_ECHO_REQUEST in tcpip.sys
...
Also clean up ICMP handling code in sdk/lib/drivers/ip
CORE-10760
2020-04-07 05:32:40 +03:00
Victor Perevertkin
792b64ea46
[TCPIP][FORMATTING] Format TiDispatch function. No functional changes
2020-04-07 05:32:40 +03:00
Thomas Faber
040546d8ff
[ACPICA] Update to version 20200326. CORE-16783
2020-04-05 14:44:53 +02:00
Benjamin Aerni
66cf7b6028
[PORTCLS] Stub missing IoControlCode switches ( #1756 )
...
Stub missing switches: IOCTL_KS_HANDSHAKE and IOCTL_KS_METHOD.
2020-03-30 12:58:25 +02:00
Jérôme Gardou
de369ce26b
[KDGDB] Various fixes and improvements
2020-03-30 07:53:34 +00:00
Hervé Poussineau
f5658fd3b4
[STORAHCI] Replace some __inline by FORCEINLINE
...
Functions were declared as __inline, then used, and then defined.
This leads to some linking errors with some compilers.
2020-03-26 16:39:16 +01:00
Hervé Poussineau
796c1ac993
[TCPIP] Add some static specifiers, to prevent exporting FORCEINLINE function outside compilation unit
2020-03-26 16:39:16 +01:00
Hervé Poussineau
7cda1ed2f5
[ISAPNP] Report DMA channels
2020-03-26 16:36:23 +01:00
Hervé Poussineau
eb66324d7c
[ISAPNP] Fix reporting of devices with hexadecimal productId
2020-03-26 16:36:22 +01:00
Hervé Poussineau
67141abef1
[ISAPNP] Create requirements and resource lists when detecting a device
2020-03-22 14:29:38 +01:00
Hervé Poussineau
0ca5567894
[ISAPNP] Read all tags when detecting devices, and keep interesting ones
...
Currently, we only keep device identification, IO ports and IRQs.
2020-03-22 14:29:38 +01:00
Hervé Poussineau
61c1079a18
[ISAPNP] Create resource list ahead of IRP_MN_QUERY_RESOURCES
2020-03-22 14:29:38 +01:00
Hervé Poussineau
debec8c96e
[ISAPNP] Create resource requirements ahead of IRP_MN_QUERY_RESOURCE_REQUIREMENTS
2020-03-22 14:29:38 +01:00
Hervé Poussineau
1dcc6f8b94
[ISAPNP] Fix capabilities for devices
2020-03-22 14:29:38 +01:00
Hervé Poussineau
42724f47f8
[ISAPNP] Return a compatibleIDs only if defined
2020-03-22 14:29:38 +01:00
Hervé Poussineau
b905c40d2e
[ISAPNP] Fix some indentation
2020-03-22 14:29:38 +01:00
Eric Kohl
bac4e185fb
[USBHUB] Set the Removable flag for all ports of a USB hub
2020-03-21 13:23:21 +01:00
Hervé Poussineau
7b1e28e724
[ISAPNP] Fix some warnings
2020-03-21 08:29:15 +01:00
Hervé Poussineau
2abd853b37
[ISAPNP] Implement some more IRP_MJ_PNP/IRP_MN_* requests
...
We either succeed them, or we pass them down to the ISAPNP FDO.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
8b53ed1d9b
[ISAPNP] Implement IRP_MN_QUERY_PNP_DEVICE_STATE for ReadDataPort
2020-03-20 22:40:11 +01:00
Hervé Poussineau
5b9929a076
[ISAPNP] Detect devices only once ReadDataPort is started
...
Also let kernel choose the read data port address, by using the resources given in IRP_MN_START_DEVICE.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
5a404e6c50
[ISAPNP] Implement IRP_MN_QUERY_RESOURCES/IRP_MN_QUERY_RESOURCE_REQUIREMENTS for ReadDataPort
2020-03-20 22:40:11 +01:00
Hervé Poussineau
2fe644dc86
[ISAPNP] Report removal relations on ReadDataPort
2020-03-20 22:40:11 +01:00
Hervé Poussineau
c4813f73f5
[ISAPNP] Report a ReadDataPort PDO
...
This PDO will later request resources required for ISAPNP bus.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
e0607fcebf
[ISAPNP] Create PDO identifiers ahead of IRP_MN_QUERY_ID
2020-03-20 22:40:11 +01:00
Hervé Poussineau
89aff07a67
[ISAPNP] Extract function to create DOs
2020-03-20 22:40:11 +01:00
Hervé Poussineau
d0c7bd98c7
[ISAPNP] Fix some return codes
2020-03-20 22:40:11 +01:00
Hervé Poussineau
947b49aac3
[ISAPNP] Reformat files. No code change.
2020-03-20 22:40:11 +01:00
Hervé Poussineau
7a98d28d7f
[ISAPNP] Rewrite device reporting method
...
IoCreateDevice() was called too early, when a spinlock was acquired.
Create ISAPNP_LOGICAL_DEVICE structure when a device is detected, and call IoCreateDevice() later, when required.
2020-03-14 23:39:01 +01:00
Hervé Poussineau
58e8be6258
[ISAPNP] Fix reading of serial number
2020-03-14 23:39:00 +01:00
Joachim Henze
23f6b36174
[USBHUB] Demote a DbgBreakPoint CORE-16394
...
The DbgBreakPoint() was reported to be continuable without
obvious side-effects by Doug Lyons.
Thank you for your tests Doug.
To prevent what end-users may otherwise perceive as a
freeze-regression caused by enabling the new driver in
0.4.13-dev-1048-g
6392c5a78c
2020-03-10 22:48:02 +01:00
Dmitry Borisov
222e79232c
[CPORTLIB][NTOS:INBV][KDCOM][FREELDR] Add ComPort library for NEC PC-98 series ( #2407 )
...
There are 2 known serial ports:
COM1 - based on Intel 8251A
COM2 - National Semiconductor 16550
2020-03-06 19:50:31 +01:00
Thomas Faber
67b3b73d82
[USBHUB] Partially implement USBH_ProcessHubStateChange. CORE-16704
2020-03-02 20:47:01 +01:00
Thomas Faber
76a075867e
[USBHUB] Fix recipient in USBH_SyncClearPortStatus. CORE-16704
2020-03-02 20:46:56 +01:00
Thomas Faber
80296be1eb
[CMAKE] When disabling C4101, explicitly remove the error flag.
...
Fixes VC2010 build.
Addendum to 11ecf5c969
.
2020-02-24 22:29:33 +01:00
Serge Gautherie
b326312d52
[KS] KsQueryInformationFile(): Fallback to IRP if FastIO failed
...
Or, if it succeeded, return the actual NTSTATUS, not an unrelated BOOLEAN.
Addendum to commit 4725a4fd9c
(r42117).
CORE-16618
2020-02-17 19:08:57 +03:00
Serge Gautherie
7405dc36b6
[KS] KsQueryInformationFile(): Merge IoStatus and StatusBlock
...
Addendum to commit 9061b8ee40
(r42334).
2020-02-17 19:08:57 +03:00
Thomas Faber
696cdc635b
[ACPICA] Update to version 20200214. CORE-16696
2020-02-15 20:45:53 +01:00
Thomas Faber
81e6846e06
[ACPICA] Update to version 20200110 (Copyright update only). CORE-16696
2020-02-15 20:45:48 +01:00
Hervé Poussineau
4788676671
[ISAPNP] Implement IRP_MN_QUERY_CAPABILITIES + IRP_MN_QUERY_ID
2020-02-10 21:33:36 +01:00
Hervé Poussineau
c96ba5a713
[ISAPNP] Also read serial numbers of devices
2020-02-10 21:33:36 +01:00
Hervé Poussineau
bec0ceb82f
[ISAPNP] Store VendorId/ProdId in the usual form
2020-02-10 21:33:36 +01:00
Hervé Poussineau
8eb3173896
[ISAPNP] When skipping a wrong tag in configuration, skip the length of this tag
2020-02-10 21:33:36 +01:00
Thomas Faber
e4e86c32e7
[PORTCLS] Handle failure return from QueryPowerChangeState. CORE-16611
2020-02-08 13:07:34 +01:00
Thomas Faber
5a43c52bbb
[PORTCLS] Return STATUS_PENDING after calling IoMarkIrpPending. CORE-16611
2020-02-08 13:07:34 +01:00
Thomas Faber
606c912aa4
[PORTCLS] Don't unnecessarily wait for lower drivers to complete power IRPs. CORE-16611
...
Also use PoCallDriver to forward power IRPs.
2020-02-08 13:07:34 +01:00
Hervé Poussineau
40b2f65f0c
[ISAPNP] Correctly calculate checksum
...
See appendix B.2 of "Plug and Play ISA Specification 1.0a"
2020-02-07 23:48:53 +01:00
Thomas Faber
f32e1acd3c
[USBHUB] Only break into the debugger in the case that is actually unimplemented. CORE-16394
2020-02-01 13:17:30 +01:00
Thomas Faber
9215413a68
[FLTMGR] Safely query object name in FltpGetObjectName. CID 1420811
2020-01-18 13:19:22 +01:00
Serge Gautherie
82d2f13cea
[FLOPPY_NEW] WindowsSync to 8fb512a ( #2238 )
...
* [FLOPPY_NEW] Make 6 '#ifdef' explicit about '__REACTOS__'
* [FLOPPY_NEW] RtlStringCbPrintf?() need bytes, not chars
Import
8fb512ac67
2020-01-14 18:50:19 +01:00
Thomas Faber
bd7121862a
[NTFS] Fix use after free in failure case of NtfsMountVolume.
...
NtfsGetVolumeData frees FileRecLookasideList in case of failure, so don't
free it again.
Dereferencing NewDeviceObject invalidates Vcb.
2020-01-11 14:10:55 +01:00
Suraj K Suresh
88f7be101a
[UDFS] Fix uninitialized var use in UDFCommonCreate, return the right error code
...
CORE-16174
2020-01-11 02:45:45 +02:00
Serge Gautherie
e2b536bcb1
[KS] KsQueryInformationFile(): Fix 'FastIoQueryBasicInfo' copypasta ( #2236 )
...
Addendum to commit 4725a4fd
(r42117).
2020-01-07 15:13:40 +01:00
Oleg Dubinskiy
611d925d32
[USB] Update the names of new USB drivers
2020-01-06 21:16:08 +02:00
Oleg Dubinskiy
83c07f4e4c
[SDK][USB] Delete old USB drivers and libusb
2020-01-06 21:16:08 +02:00
Hermès Bélusca-Maïto
afb14bff33
[BLUE] Add IOCTL buffers validation. Addendum to commit bfd8a848
.
...
Also convert all sizes and positions of CONSOLE_DRAW to USHORT since
this is the standard type for all console buffer positions & sizes
(minimum value 0, maximum value 0xFFFF == 65535).
2020-01-03 17:17:03 +01:00
Thomas Faber
0d745e0698
[DISK_NEW] Return correct info size in failure case of DiskIoctlGetPartitionInfoEx.
2020-01-02 16:36:15 +01:00
Thomas Faber
2fa7b1dcc1
[CDROM] Return the correct data length for IOCTL_DISK_GET_LENGTH_INFO. CORE-16607
2020-01-02 14:08:46 +01:00
Victor Perevertkin
e92ab76d0d
[REACTOS] Exclude some modules from clang-format
2019-12-28 01:23:49 +02:00
Hermès Bélusca-Maïto
1928e170f2
[BLUE] Fix a visual regression introduced in bfd8a848
: Don't touch INBV when resetting internal screen state during driver loading.
2019-12-24 16:13:10 +01:00
Hermès Bélusca-Maïto
aca7ff54b0
[BOOTVID] Correctly fix scrolling and printing when the scroll region contains the whole screen.
...
Addendum fixes to ca370b49
(r52239) and a965ca6b
(r52409).
- Fix the comments to explain what is really happening.
- Fix the boundary calculations in VidDisplayString() so that we can
correctly display a character in the very last column before going
to the next line, and fix similarly the vertical boundary calculation.
- Port the fixes to the ARM code.
2019-12-23 21:06:59 +01:00
Hermès Bélusca-Maïto
93e9877225
[BOOTVID] Factor out the common code that is used before setting pixels.
2019-12-23 21:06:58 +01:00
Hermès Bélusca-Maïto
4f76cffb59
[BOOTVID] Code style fixes; Replace some 'do-while' loops by 'for' loops when it makes the code simpler.
...
+ Fix a potential bug in BitBlt() "4bpp blitting" in case Top == Bottom (i.e. Height == 0).
2019-12-23 21:06:57 +01:00
Hermès Bélusca-Maïto
1d2b0fbcd1
[BOOTVID] Replace hardcoded screen and font size numbers by #define-d values.
2019-12-23 21:06:57 +01:00
Victor Perevertkin
23147330dd
[USBOHCI] Use KeQueryTickCount for timeouts instead of KeQuerySystemTime
2019-12-16 03:21:28 +03:00
Victor Perevertkin
1d9e03b708
[KS] Use KeQueryTickCount for timeouts instead of KeQuerySystemTime
...
This avoids overflow when system time is changed between calls (for example, via NTP)
2019-12-16 02:28:41 +03:00
Hermès Bélusca-Maïto
bfd8a84865
[BLUE] Improve initialization and interfacing with INBV.
...
CORE-15901
This fixes display reset transition when an external module acquired
INBV ownership and then released it, similarly to what was done in
commit 0ad65796
for VIDEOPRT.
For this a backup screenbuffer is used to store the contents of the
screen just before an INBV screen acquire transition, and these contents
are restored when it is detected that INBV ownership has been released.
Also, the active text font associated with the active console code-page
is restored, as well as the cursor state and shape.
In addition, any user of BLUE.SYS is now required to explicitly issue
a new IOCTL_CONSOLE_RESET_SCREEN to either enable or disable the screen.
This allows avoiding nasty unwanted screen mode switches when a handle
to the \Device\BlueScreen device is opened but no screen mode switch was
actually wanted - This "fixes" this annoyance on ReactOS and Windows,
when these are running witha VGA-compatible video driver and one wants
to look at properties of the \Device\BlueScreen device using
Sysinternals' WinObj.
Following this, we don't need to check anymore for explicit INBV
ownership by issuing calls to InbvCheckDisplayOwnership(), but instead
we check whether the screen has beeen manually enabled using the
aforementioned IOCTL. This partly supersedes commit 8b553a4b
, and allows
fixing the second bug, namely that if we start ReactOS without the
/NOGUIBOOT option (and thus, INBV is active during boot), USETUP would
not show up anything because BLUE.SYS wouldn't display anything on screen.
See CORE-15901.
[USETUP][CONSRV] Call IOCTL_CONSOLE_RESET_SCREEN to tell BlueScreen device to enable the screen.
2019-12-15 03:37:52 +01:00
Hermès Bélusca-Maïto
67c9e81cb0
[BLUE] Use ExFreePoolWithTag().
2019-12-15 03:36:24 +01:00
Hermès Bélusca-Maïto
45b655ec3a
[BLUE] Improve includes.
2019-12-15 03:36:21 +01:00
Hermès Bélusca-Maïto
d684f90632
[BLUE] Code formatting, add SAL2 annotations, and update file source headers.
2019-12-15 03:36:17 +01:00
Thomas Faber
be617cf987
[ACPICA] Update to version 20191213. CORE-16559
2019-12-14 09:48:11 +01:00
Eric Kohl
c1f22c88ca
[STORAGE] Storage driver cleanup part 5 (last part)
...
Move the fdc and flpydrv drivers into the floppy directory.
2019-11-30 13:33:32 +01:00
Eric Kohl
2a2040a9fe
[STORAGE] Storage driver cleanup part 4
...
Move the floppy driver into the floppy/floppy directory.
2019-11-30 13:13:59 +01:00
Eric Kohl
9393c6a48b
[STORAGE] Storage driver cleanup part 3
...
Move the storahci driver into the port directory.
2019-11-30 12:58:59 +01:00
Eric Kohl
d736908967
[STORAGE] Storage driver cleanup part 2
...
Move the scsiport driver into the port directory.
2019-11-30 12:19:03 +01:00
Eric Kohl
6b687478d1
[STORAGE] Storage driver cleanup part 1
...
Move the classpnp driver into the class directory because it is a class driver, just like the class2 driver.
2019-11-30 11:54:33 +01:00
Hermès Bélusca-Maïto
75f188c200
[PCIX][BLUE] Don't hardcode values in KeDelayExecutionThread() call. Remove deprecated code.
2019-11-25 00:41:48 +01:00
Mark Jansen
d4a0549eb6
[MOUNTMGR] Fix out of bounds write
...
CORE-16530
2019-11-23 16:24:56 +01:00
Pierre Schweitzer
0917815efa
[CDROM] Forcibly declare our CD devices to the MountMgr
2019-11-19 19:05:23 +01:00
Hermès Bélusca-Maïto
ea6d427d10
[I8042PRT] Remove dead commented-out code; Allow sending ROS-specific commands to the kernel debugger since KD64 also support them.
...
[NTOS:MM] Remove an extra ')' in a DbgPrint() string.
2019-11-17 23:21:55 +01:00
Thomas Faber
d170b6ab3e
[ACPICA] Update to version 20191018. CORE-16434
...
This includes a cherry-pick of
3e0d03893c
to fix build.
2019-11-16 16:12:16 +01:00
Pierre Schweitzer
cc5c307b8e
[BTRFS] Fix MSVC build
2019-11-13 00:03:22 +01:00
Pierre Schweitzer
62e630de4c
[BTRFS] Upgrade to 1.5
...
CORE-16494
2019-11-12 19:35:43 +01:00
Pierre Schweitzer
887200703c
[CLASS2] Drop the drive letter hack
2019-11-11 18:18:32 +01:00
Hermès Bélusca-Maïto
3b2f158593
[NTOS][CLASS2][FFS][WIN32SS] Fix some pool tags so that they correctly appear in pool dump lists.
...
Reminder: in the code they are defined using reverse byte order
(Windows/ReactOS are little-endian OSes).
2019-11-01 19:12:27 +01:00
Pierre Schweitzer
6889cff5b5
[FLOPPY] Make floppy drives letters being handled by the MountMgr
...
This involves many changes/fixes in the floppy driver:
- Stop creating ourselves our DOS device, it's up to the MountMgr or to the kernel;
- Report each new floppy drive to the MountMgr (this is a hack for now);
- As a consequence, stop storing the symlink name into the DRIVE_INFO structure;
- Store the device name instead;
- On IOCTL_MOUNTDEV_QUERY_DEVICE_NAME, don't return DOS device, but device name;
- On IOCTL_MOUNTDEV_QUERY_DEVICE_NAME, properly return if buffer is way too small;
- Hackplement IOCTL_MOUNTDEV_QUERY_UNIQUE_ID so that it returns device name.
2019-10-27 11:35:23 +01:00
Robert Naumann
5f99f5c1a7
[REISERFS] Fix a copy paste Error. CID 1363527
2019-10-23 17:23:05 +02:00
Robert Naumann
b8032d98a9
[UDFS] Fix a copy paste error. CID1321910
2019-10-23 17:23:05 +02:00
Pierre Schweitzer
457612702b
[MOUNTMGR] Fix invalid WorkerReferences check in QueueWorkItem()
...
This fixes shutting down ReactOS under certain circumstances, where
the references were incremented, but no worker thread started.
Also, took the opportunity to clarify the WorkerReferences comparisons
where relevant.
CORE-16446
2019-10-22 21:53:48 +02:00
Pierre Schweitzer
b68104dd87
[DISK] Forcibly declare our partitions to the MountMgr
...
Because our disk.sys doesn't do anything related to PnP
(compared to disk_new.sys), forcibly declare our partitions
to the MountMgr so that it can references them and assign
them a DOS drive letter on demand later on.
2019-10-21 16:50:36 +02:00
Pierre Schweitzer
410c606999
[CLASS2] Hackplement support for IOCTL_MOUNTDEV_QUERY_UNIQUE_ID
...
This is required so that MountMgr can handle devices that are still
using class2 instead of classpnp.
Given we have no unique ID to return, we'll return device path, which
is far from perfect but which is enough for now to have everything
working.
2019-10-21 16:45:28 +02:00
Pierre Schweitzer
16fcf694ef
[MOUNTMGR] Fix setting up reparse index file name
...
This fixes memory smashing while attempting to volume
reparse index (we were previously trying to copy the
name on itself, in the middle of itself...).
This code won't go farther on FAT, it requires NTFS.
Now, with this, ReactOS can properly boot with MountMgr
handling DOS devices without any crash or code disabled.
Cf: what was written in 7608ac9
.
Modifications in class2, disk, and ntoskrnl are still to
be committed to enable all this.
2019-10-21 12:58:30 +02:00
Pierre Schweitzer
bced3eaa25
[MOUNTMGR] That was not meant to be committed
...
Even though it shows there might be a bug in the
code handling remote databases in the MountMgr ;-)
Addendum to 7608ac9
2019-10-21 11:03:43 +02:00
Pierre Schweitzer
7608ac9f71
[MOUNTMGR] Misc. fixes for WorkerThread()
...
- Properly quit the active loop when we're out of work items;
- Fix timeout duration (setting it to 1s);
- Fix handling the "Unloading" variable in case of a shutdown
so that waiting loop is properly stopped;
- Documented why we're waiting on VolumesSafeForWriteAccess.
This fixes shutting down ReactOS with work items queued.
This is needed here because no one ever sets that event (properly)
created by SMSS though. A. Ionescu was explaining in 2018 that it's
autochk responsibility, but it doesn't seem to be the case in W2K3.
To be investigated.
This fix with all the previous ones and more uncommitted stuff (yet ;-))
allows reaching the first steps towards a NT5 storage stack:
https://twitter.com/HeisSpiter/status/1186199631740506112
2019-10-21 10:58:14 +02:00
Pierre Schweitzer
a058e680b6
[MOUNTMGR] Don't kill Mm when a device has several symlinks
...
On preflight to compute output size, device name & unique ID were
counted only once per device.
Then, on copy, these two were copied on every MOUNTMGR_MOUNT_POINT
structure. This is counter efficient (data duplication) but also,
it was overruning the output buffer, since the preflight was not
expecting these extra copies.
2019-10-19 18:04:30 +02:00
Pierre Schweitzer
a53992180d
[MOUNTMGR] Fix enumerating drive letter for creating new mountpoint
...
This is purely a copypasta error fix, which was causing MountMgrNextDriveLetterWorker
to fail as no drive letters were enumerated previously.
With that set of patches, MountMgr now properly assigns drive letters to
new devices!
2019-10-19 16:59:58 +02:00
Pierre Schweitzer
e359a3c888
[MOUNTMGR] Fix interpretation of QueryDeviceInformation GptDriveLetter
...
Being TRUE doesn't mean the device is GPT and has a drive letter. It just
means that it's not a GPT device with GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER
attribute. In short, if TRUE, it means that the device can receive a drive
letter mount point.
This fixes MountMgrNextDriveLetterWorker bailing out for any attempt to
assign a drive letter to a device.
2019-10-19 16:59:58 +02:00
Pierre Schweitzer
961693f060
[MOUNTMGR] Fix IsFtVolume so that it returns TRUE only for FT volumes
2019-10-19 16:59:58 +02:00
Pierre Schweitzer
225a1e92bd
[MOUNTMGR] Query proper device when creating mount point
...
We must query the target device, and not the symbolic link
we attempt to create. The later will always fail as it doesn't
exist yet.
This fixes MountMgrCreatePointWorker not working.
2019-10-19 16:59:57 +02:00
Pierre Schweitzer
7b650d2c3e
[MOUNTMGR] Remove cancel routine before completing pending IRP
2019-10-19 16:59:57 +02:00
Pierre Schweitzer
2da92ac67b
[MOUNTMGR] QueryPointsFromMemory: take into account the multiple MOUNTMGR_MOUNT_POINT
...
This fixes returning too small structure on an IOCTL_MOUNTMGR_QUERY_POINTS call.
The multiple MOUNTMGR_MOUNT_POINT structures were ignored and thus the data of the
first one were erased by the multiple structures.
MountMgr now returns consistent output on this IOCTL call.
2019-10-17 22:42:47 +02:00
Serge Gautherie
f5f52417cb
[MOUNTMGR] QueryPointsFromSymbolicLinkName(): Fix a copypasta
...
Addendum to r55156.
CORE-16371
2019-10-16 21:07:47 +02:00
Serge Gautherie
09beb7502e
[MOUNTMGR] Properly look for device and break when found
...
Also use same pattern in MountMgrCreatePointWorker().
Addendum to a7f97cc70f
.
2019-10-06 10:58:30 +02:00
Serge Gautherie
9f8e5d1ce0
[MOUNTMGR] QueryPointsFromMemory(): Do not leak DeviceName.Buffer
...
Follow-up to 7601011f4e
.
2019-10-06 10:52:05 +02:00
Pierre Schweitzer
a7f97cc70f
[MOUNTMGR] Properly look for symlink and break when found
...
This fixes a bug where MountMgr was returning first found entry
on query even when not matching the requested device.
2019-10-05 21:30:55 +02:00
Serge Gautherie
ed9f0dca14
[USBPORT] USBPORT_InvalidateEndpointHandler(): Properly enumerate endpoints
2019-09-29 13:39:12 +03:00
Thomas Faber
6ec38aa942
[HDAUDBUS] Build a device instance ID from Codec & node number. CORE-13702
2019-09-27 21:29:41 +02:00
Thomas Faber
4c6cc29bb8
[HDAUDBUS] Fix timeouts for hardware register operations. CORE-15874
...
Most needed to be multiplied by 10 to match Haiku's behavior.
In one case, the broken timeout was offset by a higher number of loop
iterations, which is now restored.
This should fix failures on real hardware that result in the
"unable to exit reset" print, and avoid a possible subsequent Pnp
manager crash.
Compare with the following (both snooze and KeStallExecutionProcessor use microseconds):
ff38df48cf/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp (L466)
ff38df48cf/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp (L357)
ff38df48cf/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp (L978)
2019-09-26 10:27:31 +02:00
Serge Gautherie
085528c31a
[MOUNTMGR] HasDriveLetter(): Simplify code by using a for() loop
2019-09-22 10:25:09 +02:00
Pierre Schweitzer
20b4f0a231
[FLOPPY] Implement IOCTL_MOUNTDEV_QUERY_DEVICE_NAME
2019-09-14 10:48:19 +02:00
Pierre Schweitzer
bf6215c601
[MOUNTMGR] Properly enumerate pending IRPs on cleanup
...
CORE-16370
2019-09-14 09:41:47 +02:00
Pierre Schweitzer
0a5f86d44a
[MOUNTMGR] Fix MountState usage in MountMgrTargetDeviceNotification
...
CORE-13882
2019-09-13 20:08:39 +02:00
Pierre Schweitzer
5c678a76a6
[MOUNTMGR] Fix broken check
...
Only mark volume mounted if it's not waiting for unloading
CORE-13882
2019-09-13 20:08:39 +02:00
Timo Kreuzer
a71a6531ef
[UNIATA] Fix uniata on x64
2019-09-08 10:39:01 +02:00
Thomas Faber
5d4f13f625
[ACPICA] Update to version 20190816. CORE-16368
2019-09-08 07:46:53 +02:00
Pierre Schweitzer
7ff3658f10
[BTRFS] Reenable the MountMgr thread
...
Now that IOCTL_MOUNTMGR_QUERY_POINTS and IOCTL_MOUNTMGR_CHANGE_NOTIFY have
been fixed, the thread no longer eats 100% CPU nor prevent ReactOS shutdown
2019-09-07 23:28:58 +02:00
Pierre Schweitzer
d904ee19c5
[MOUNTMGR] Properly return EpicNumber in MountMgrChangeNotify
2019-09-07 23:07:54 +02:00
Serge Gautherie
400eb23a64
[BTRFS] Revert "Allow driver to start at first stage when no hive is present."
...
Not needed anymore.
This reverts commit 80e11516b1
.
2019-09-07 19:58:03 +02:00
Serge Gautherie
e08dc30569
[BTRFS] Revert "Leak the root stream file object on mount."
...
Not needed anymore.
This reverts commit c13ccc92f6
.
2019-09-07 19:58:03 +02:00
Pierre Schweitzer
6e3c0d360b
[BTRFS] bool must be 1-sized
...
CORE-16366
2019-09-06 08:56:26 +02:00
Serge Gautherie
b45f27cf2e
[MOUNTMGR] Remove a leftover UNREFERENCED_PARAMETER()
...
Addendum to 77657c22c9
.
2019-09-06 08:34:14 +02:00
Pierre Schweitzer
ff19ce934b
[MOUNTMGR] Don't overrun output buffer in QueryPointsFromMemory
2019-09-06 08:30:18 +02:00
Pierre Schweitzer
26a31b160a
[MOUNTMGR] Fix QueryPointsFromSymbolicLinkName and make it working
...
Select the current stack location for output buffer
And set output size so that buffer gets properly copied to caller
2019-09-06 08:28:36 +02:00
Pierre Schweitzer
d592e00dfa
[MOUNTMGR] Fix QueryPointsFromMemory and make it working
...
Select the current stack location for output buffer
And set output size so that buffer gets properly copied to caller
2019-09-05 08:36:19 +02:00
Pierre Schweitzer
70d29ec423
[MOUNTMGR] Properly validate input buffer size
...
This avoids IOCTL_MOUNTMGR_QUERY_POINTS always failing
2019-09-05 08:36:19 +02:00
Pierre Schweitzer
77657c22c9
[MOUNTMGR] Fix global symbolic link creations
...
They were wrongly pointing to the original target once rewritten
instead of pointing to the proper target: the device.
This notably fixes opening the MountMgr device from user
mode (to perform IOCTL calls, for instance), and might
also fix various bugs dealing with global namespaces.
This might have some various effects in ReactOS~.
2019-09-05 08:36:19 +02:00
Pierre Schweitzer
dcd463ba98
[BTRFS] Fix fileinfo.c build
2019-09-02 22:17:17 +02:00
Pierre Schweitzer
021e25f249
[BTRFS] Fix create.c build
2019-09-02 22:02:45 +02:00
Pierre Schweitzer
fe0a6c9be4
[BTRFS] Fix dirctl.c build
2019-09-02 21:48:54 +02:00
Pierre Schweitzer
318da0c18c
[BTRFS] Upgrade to 1.4
...
CORE-16354
2019-09-02 08:19:48 +02:00
Stanislav Motylkov
053bf17e8b
[BOOTVID] Refactor font data from i386 and arm bootdata.c ( #1891 )
2019-09-01 23:01:40 +02:00
Victor Perevertkin
88cf5b0a3c
[USB] Enable *_new usb stack
2019-08-20 01:34:58 +03:00
Victor Perevertkin
fc14c095f5
[USBPORT] Fix endless loop, occasionally happened on real hardware
2019-08-20 01:30:52 +03:00