27 Commits

Author SHA1 Message Date
Daniel Agar
d73d20bcce systemlib delete unused systemlib.h 2018-06-12 09:06:30 +02:00
Daniel Agar
ea3acb7121 cmake remove circular linking and reorganize
- px4_add_module now requires MAIN
 - px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Beat Küng
f47d0c8f8c load_mon: reduce FDS_LOW_WARNING_THRESHOLD to 3
This bound can be quite tight, because:
- The system still behaves well, even if all FD's are used (as opposed to
  a stack overflow)
- The amount of used FD's is typically only increased one at a time
  (e.g. adding new logged topics, adding a mavlink stream, ...)
- reducing CONFIG_NFILE_DESCRIPTORS to the minimum frees up a considerable
  amount of RAM on systems that need it
2018-01-12 23:18:59 +01:00
Beat Küng
794c7a5a0f load_mon: fix tasks index & fds_free initialization
Makes sure that if CONFIG_NFILE_DESCRIPTORS == 0, no warning is printed.
2018-01-12 23:18:59 +01:00
Lorenz Meier
eb43b86a4b Load mon: Also monitor file descriptors
It is important that tasks do not run out of them and this addition will provide a warning and log evidence if it goes wrong.
2018-01-12 23:18:59 +01:00
Beat Küng
fa929322ab load_mon: remove usage of CONFIG_RAM_SIZE
The define should not be used, as it might be wrong.
This is the case on fmu-v5, which meant that the used RAM was always 1.
2017-12-07 20:28:17 +00:00
Beat Küng
8d7481f9ac load_mon: use ModuleBase & add documentation 2017-07-14 11:57:11 +02:00
Beat Küng
5c2fa034da load_mon: rename low_stack -> task_stack_info & always publish it
- use uorb queue to not drop any info, only do 2 tasks per cycle
- also print a warning on low stack (which will be added to ulog)

this allows to gather statistics of each task's stack usage over time.
2017-02-04 12:15:59 +01:00
Beat Küng
c02f1946eb load_mon: fix stack check: use up_check_tcbstack_remain()
The previous method did not work anymore since the NuttX upgrade.
2017-02-04 12:15:59 +01:00
David Sidrane
ff0e810b55 Nuttx changed CONFIG_DRAM_SIZE to CONFIG_RAM_SIZE 2016-12-21 08:34:21 +01:00
Lorenz Meier
4c714f0e46 Load mon: Be less verbose on boot 2016-12-12 16:11:21 +01:00
Andreas Antener
64778b9540 Load monitor: added parameter to disable stack check 2016-12-09 21:12:12 +01:00
Andreas Antener
72f52c920c Load monitor: reduce scope of scheduler locking 2016-12-09 21:12:12 +01:00
Andreas Antener
806b8d3a67 Load monitor: free counter 2016-12-09 21:12:12 +01:00
Andreas Antener
a0cf938ced Load monitor: lock scheduler for stack check and added performance counter for stack checking 2016-12-09 21:12:12 +01:00
Andreas Antener
dda0de09dd Load monitor: optimize performance of stack checking 2016-12-09 21:12:12 +01:00
Andreas Antener
62103be7ba Load monitor: report and log processes low on stack 2016-12-09 21:12:12 +01:00
Julian Oes
8ff237c69f Remove size optimization for individual modules
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
Lorenz Meier
1a9688c42f Commander: signal high memory usage 2016-08-15 14:58:33 +02:00
Lorenz Meier
8934aaa912 Load mon: populate memory usage i field for NuttX 2016-08-15 14:53:48 +02:00
Lorenz Meier
c838469db9 Load man: Be more efficient 2016-05-29 16:26:37 +02:00
Daniel Agar
27fc739f7d load_mon use STACK_MAIN 2016-05-13 13:01:42 +02:00
Julian Oes
54b3995175 load_mon: added missing include
USEC2TICK was not found.
2016-05-12 08:16:36 +02:00
Julian Oes
43d76f5e17 load_mon: use work queue instead of a whole task 2016-05-12 08:16:36 +02:00
Julian Oes
888b517d62 load_mon: correct copyright year 2016-05-12 08:16:36 +02:00
Julian Oes
939f04c80d load_mon: small comment fix 2016-05-12 08:16:36 +02:00
Jonathan Challinger
749b598af1 load_mon: initial commit 2016-05-12 08:16:36 +02:00