Previously the first cluster of the file was not updated when
truncating to 0 but was in any case freed.
Now the first cluster of the file is updated during the truncation,
leaving the directory entry in a consistent state.
Closes#2757
This is intended to close any valid FDs that were opened, but 0 is also
a valid FD. This change ensures that a FD of 0 is also closed properly.
Coverity CID 1467408 (original)
Coverity CID 1616151 (followup)
off_by_one: Testing whether handle fd is strictly greater than zero is
suspicious. fd leaks when it is zero.
The patch changes compiler ABI flags option and adds -mno-unaligned-access
there. Usage of this option is also officially recommended way
by the errata document how to work around the issue. For more details
about the errata please see referenced issue number.
Closes#5110.
Fix a race condition in which a file opened with O_TRUNC is made
available to other file functions expecting a file descriptor before
the truncation is performed.
This is only possible if the other thread was using an invalid file
descriptor as the open call has yet to finish.
Closes#5109
- Move the APIC implementation to its on file instead of having it in clock.c;
- Use the MADT for retrieving the Local APIC base address;
- Initialize the APIC during interrupt initialization.
Add a method for initializing the ACPICA table subsystem earlier than
the initilization of the entire ACPICA subsystem. Also add a method to
walk through the subtables of an ACPI table
Coverity Scan spotted the possibility that the
_Objects_Information_table could be over-indexed if the API
value provided was too high. This function is only used during
initialization and the input should be trusted. Adding a debug
_Assert() emphasizes this trust.
Coverity CID 1512508
Closes#5084.
There is certainly no USB 20 TG while there is a known USB 2 OTG tech. The
crash caused by this is well observed from media01.exe from libbsd compiled
for H7 and run on the board.
Coverity CID 1616018
O_SYNC and O_DSYNC have the same value which led Coverity to note that
checking for both values in if's or switches leads to dead code. The
solution is to add a cpp check that they are equal and enough commentary
so if they ever are not the same, there is a hint as to why the cpp
check got tripped.
Closes#5100.
This fixes the ECC info struct naming such that they all use the _Info
suffix. This also adds comments describing which structures are paired
with which event types.
- Implements necessary ACPICA OS Services Layer interfaces;
- Retrieve the RSDP from the FreeBSD Bootloader for amd64 or from multiboot2 for amd64efi;
- Add ACPI initialization routine;
- Use ACPI in bsp_reset.
Now as the default reporter is set to be a quiet reporter, we have stackchk test case for the default quiet reporter, stackchk03 for a custom user-defined reporter and stackchk04 for the detailed reporter function
This patch updates STM32 H7 HAL source files. The files are taken from two
STM projects from their github.com repositories:
(i)
https://github.com/STMicroelectronics/stm32h7xx_hal_driver.git
The project files are still available under BSD-3 license
and the version/commit used is:
fec141ce999da655a48e1a15db83a72d564a1312
which represents Release v1.11.3 exactly.
(ii)
https://github.com/STMicroelectronics/cmsis_device_h7.git
The project files are available under Apache 2.0 license. Fortunately
the project does not contain NOTICE file so no need to do anything special
when used in RTEMS.
The project version/commit imported is:
faccfec37f82f7a1319c21638111b0f7335de7fe
which represents Release v1.10.4 exactly.
GitLab requires explicit exclusions and unfortunately it's one per line while it
does look gross it is clearer to read what's going on.
Also clean up some spacing.