summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* imfs: Fix index underrun when extending empty file4.11Christian Mauderer2022-04-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the following sequence causes a endless loop when extending an IMFS file: - Create a file with zero length and close it. - Make sure nearly no allocatable memory is left. - Open the file and write enough data into it that more than the remaining memory will be used. In that case when extending the IMFS file, the file currently need zero blocks. If allocating enough new blocks fails, the already allocated new blocks will be freed again. The comparison of block>=old_blocks that has been used prior to this patch compared two unsigned numbers. If old_blocks was zero, the comparison of these two numbers always evaluated to true. This patch frees the last block in a separate step to avoid this problem. Note: This patch is a backport of 43119193ef0f3fef6bc01a391ccda8a97cfc149c from RTEMS master. It only contains the bugfix. Adding a test case has been skipped because that part of the patch didn't apply without problems and is not really relevant for fixing the bug. Fixes #2353
* bsps/sparc: Fix global construction/destructionThanassis Tsiodras2021-08-121-2/+4
| | | | | | | | | | | | | | | | | | | | | The KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) cannot be simplified to KEEP (*(SORT(.ctors*))) since .ctors < .ctors.* in lexicographical order. See spglobalcon02 test case. Close #3319.
* leon,gr1553b: improve init checkDaniel Hellstrom2020-10-011-3/+8
| | | | | | | | Check in init3 not needed since same data is already checked in init2 stage. Adds an extra check that the APB register space is available before accessing it. Closes #2331
* libmisc/shell: Updating joel script handling fixes from RTEMS 5Chris Johns2020-04-141-67/+116
| | | | Updates #3877
* libmisc/shell: Fix the handling of joel scripts in telnetChris Johns2020-02-193-99/+330
| | | | | | | | | | | | - Fix the passing of std[in/out] to child threads - Fix deleting of managed memory in the key destructor - Only set the key in the main loop thread - Only allocate a shell env outside of the main loop - Fix memory leak if the task start fails - Remove error level from shell env, it cannot be returned this way. Add exit_code but the API is broken so it cannot be returned. Closes #3877
* libcsupport/newlib: Call newlib's __sinit to force reent initialisationChris Johns2020-02-192-1/+12
| | | | | | - Newlib overtites any FILE pointers set in stdin, stdout or stderr. Closes #3870
* shell: Correct argument order of `mfill`Jonathan Brandmeyer2019-03-141-1/+1
| | | | | | Close #3722. (cherry picked from commit 2e8a66d13f04015c0024a084578f720ceb15ea00)
* score: Fix ISR enable in _Thread_Dispatch_enable()Sebastian Huber2018-08-201-2/+1
| | | | | | | This bug had probably no effect since the interrupt enable is idempotent on all CPU ports. Close #3497.
* rfs: Remove erroneous call of rtems_disk_release()Sebastian Huber2018-08-101-1/+0
| | | | | | | The function rtems_rfs_buffer_sync() erroneously calls rtems_disk_release(). This screws up the reference counting of the disk. Close #3494.
* sptests/sp36: Remove obsolete test programSebastian Huber2018-06-195-232/+0
| | | | | | It tests the (never really working) strict order mutex option. Update #3406.
* cpukit/mttpd: Add a callback to generate a per file HTTP etag.Chris Johns2018-03-082-6/+26
| | | | Closes #3324
* libtest/dl01: Add dlerror tests.4.11.3Chris Johns2018-02-081-0/+31
| | | | Update #2747
* Update dlerror usagePatrick Gauvin2018-02-083-7/+19
| | | | | | Handles possible NULL return value Updates #2747
* libdl: Fix dlerror return typePatrick Gauvin2018-02-082-2/+2
| | | | | | POSIX specifies char *, not const char * Updates #2747
* libdl: dlerror return NULL when no errorPatrick Gauvin2018-02-081-0/+2
| | | | Updates #2747
* libdl: Clear error between dlerror invocationsPatrick Gauvin2018-02-083-0/+19
| | | | Updates #2747
* testsuites/libtest: Set EXENT to .exe so executable are correctly named.Chris Johns2018-02-081-3/+2
| | | | | | The configure order effects how it works. Close #3297
* dosfs: Allow creating a file with similar name.Christian Mauderer2017-12-072-3/+32
| | | | | | | | If there is already a file with a long file name it isn't possible to create a second file which has a name that ends on the first files name (for example ets.beam and sets.beam). This patch fixes that. Close #3258.
* dosfs: Fix files with same name as volume name.Christian Mauderer2017-12-052-2/+46
| | | | | | | Take care that a file in the root directory with the same name as the volume name can be found. Close #3257.
* posix: Fix aio_cancel()Sebastian Huber2017-10-041-1/+1
| | | | Close #3164.
* i2c: Fix EEPROM driver program timeout handlingSebastian Huber2017-10-021-4/+13
| | | | | | | | The RTEMS_MILLISECONDS_TO_TICKS() macro doesn't round up. Do not use it to calculate the program timeout in ticks. Check program done condition after the timeout check to account for pre-emptions. Close #3162.
* i2c: Send MSB of address first for EEPROMsSebastian Huber2017-10-021-12/+21
| | | | Close #3161.
* dosfs: Fix fat_file_update()Sebastian Huber2017-09-061-5/+3
| | | | | | Do not update the non-existant meta-data of the root directory. Close #2944.
* dosfs: Fix find name next entry preparationSebastian Huber2017-09-061-25/+50
| | | | Close #2964.
* dosfs: Fix msdos_dir_read()Sebastian Huber2017-09-061-27/+28
| | | | | | Set a proper name buffer length for each converter invocation. Close #2987.
* testsuite/dl: Add C++ by default for DL tests which use C++.Chris Johns2017-08-235-32/+21
| | | | | | | - Add AM C++ support to the testsuite configure.ac script. - Fix the dependences in the DL tests. Closes #3024.
* libmisc/shell: Make some internal shell functions public.Chris Johns2017-08-233-19/+35
| | | | | | | | | | - Add 'rtems_shell_init_environment()' so a user can create the shell environment without needing to run a shell. - Move 'rtems_shell_lookup_topic', 'rtems_shell_can_see_cmd', and 'rtems_shell_execute_cmd' from the internal interface to the public interface. Closes #3104.
* confdefs: Fix POSIX keys configurationSebastian Huber2017-08-221-1/+2
| | | | | | | Remove the OBJECTS_UNLIMITED_OBJECTS flag for the memory size configuration. Close #3105.
* arm: Validate IT[7:0] bit field of PSRSebastian Huber2017-08-101-1/+29
| | | | Close #3093.
* arm: Fix CPU context validation for Cortex-R4Sebastian Huber2017-08-102-10/+4
| | | | | | Do not touch the FPSCR[QC] bit since this is DNM/RAZ on Cortex-R4. Close #3092.
* arm: Fix ARMv7-M interrupt processing4.11.2Sebastian Huber2017-07-072-30/+48
| | | | | | | | | | | | Right after a "msr basepri_max, %[basepri]" instruction an interrupt service may still take place (observed at least on Cortex-M7). However, pendable service calls that are activated during this interrupt service may be delayed until interrupts are enable again. The _ARMV7M_Pendable_service_call() did not check that a thread dispatch is allowed. Move this test from _ARMV7M_Interrupt_service_leave() to _ARMV7M_Pendable_service_call(). Close #3060.
* bsps/arm: Fix bit field offset in GIC supportSebastian Huber2017-05-111-1/+1
| | | | Close #3002.
* libdl: Back port C++ exception throw and catch from 4.12.Chris Johns2017-04-0462-275/+4754
| | | | Closes #2956.
* dosfs: Fix file name searchSebastian Huber2017-03-212-18/+17
| | | | | | | Do not use our long file name entry count to optimize the file name search. The Unicode comparison must be taken into account. Close #2939.
* dosfs: Fix race condition msdos_dir_read()Sebastian Huber2017-03-211-5/+5
| | | | | | Obtain file system instance lock before member access. Close #2937.
* dosfs: Rename fat_entries to lfn_entriesSebastian Huber2017-03-211-20/+20
| | | | | The name "fat_entries" for long file name directory entries is quite misleading.
* dosfs: Fix long file name paddingSebastian Huber2017-03-211-3/+3
| | | | Close #2934.
* dosfs: msdos_filename_utf8_to_short_name_for_saveSebastian Huber2017-03-211-15/+10
| | | | Simplify.
* dosfs: Fix msdos_add_file()Sebastian Huber2017-03-211-245/+155
| | | | | | Make sure that long file names work accross cluster boundaries. Close #2929.
* dosfs: Simplify msdos_add_file()Sebastian Huber2017-03-211-4/+2
| | | | Update #2929.
* dosfs: Add and use msdos_lfn_checksum()Sebastian Huber2017-03-213-22/+25
| | | | Update #2929.
* dosfs: Simplify fat_file_open()Sebastian Huber2017-03-211-3/+1
| | | | Update #2929.
* dosfs: Simplify msdos_creat_node()Sebastian Huber2017-03-211-21/+14
| | | | Update #2929.
* dosfs: Fix fat_file_write()Sebastian Huber2017-03-2110-36/+183
| | | | | | | | Remove forced overwrite which leads to file data corruption. The logic to determine a forced overwrite was fundamentally broken. For simplity, disable this feature. Close #2622.
* dosfs: Fix msdos_utf8_normalize_and_fold()Sebastian Huber2017-03-212-5/+22
| | | | | | | | It is all right in case the result uses the full destination buffer. Without this fix the handling of a maximum 8.3 short file name is broken. Close #2928.
* libio: Fix deadlock in location managementSebastian Huber2017-03-218-15/+19
| | | | | | | | Perform a context-dependent deferred location release to avoid a deadlock on the file system instance locks, for example during a chdir(). Close #2936.
* Config (.cfg) files are only valid if deeper than 5.Chris Johns2017-03-211-1/+1
| | | | Closes #2827.
* termios: Fix infinite loop in receive pathSebastian Huber2017-02-281-5/+9
| | | | | | | In canonical mode, the raw input buffer or the canonical buffer may overflow without an end of line. Avoid an infinite loop in this case. Update #2915.
* termios: Protect raw input buffer with device lockSebastian Huber2017-02-281-16/+36
| | | | | | | Use the device lock to protect the raw input buffer management, e.g. tail, head and buffer content updates. Update #2914.
* termios: Simplify rtems_termios_read_tty()Sebastian Huber2017-02-281-9/+4
| | | | | | Remove dead code. Update #2914.