Karol Lewandowski [Thu, 10 Oct 2019 11:31:58 +0000 (13:31 +0200)]
Drop sys-assert
It's been deprecated for long time.
Change-Id: I0f5623cbf2ef32c9630d853ead61a6e92bfa27b2
Karol Lewandowski [Thu, 10 Oct 2019 11:30:03 +0000 (13:30 +0200)]
upgrade script: change confusing comments
Change-Id: I50c6ef0195a63f39ebbf40cbe68cccca4bad7f83
Karol Lewandowski [Thu, 10 Oct 2019 11:03:58 +0000 (13:03 +0200)]
Drop log_dump scripts
Change-Id: I9adf5d9cca48a3313338c881ee3227beb32880a3
Karol Lewandowski [Thu, 26 Sep 2019 12:36:31 +0000 (14:36 +0200)]
Release 5.5.23
This release drops log_dump, which is moved to separate repository.
Change-Id: I305f4a758721c1b5566aa61693d2ad65ad281a5a
Mateusz Moscicki [Wed, 9 Oct 2019 08:26:06 +0000 (10:26 +0200)]
Fix coverity issue - ensure that the buffer is null terminated
Change-Id: Ia5eb44790320f48f6751aa247d1d600cb01a9f10
Mateusz Moscicki [Thu, 3 Oct 2019 15:46:29 +0000 (17:46 +0200)]
Initialize variables to NULL
Change-Id: I8d9abdea13e0a11ac3c0b55386a137f095767803
Karol Lewandowski [Tue, 8 Oct 2019 11:58:56 +0000 (11:58 +0000)]
Merge "Make remaining macros behave like standard statements" into tizen
Karol Lewandowski [Mon, 30 Sep 2019 13:25:33 +0000 (13:25 +0000)]
Merge "Move log_dump to platform/core/system/log_dump" into tizen
Karol Lewandowski [Mon, 30 Sep 2019 13:25:28 +0000 (13:25 +0000)]
Merge "Separate log_dump from crash-worker" into tizen
Karol Lewandowski [Mon, 30 Sep 2019 13:25:20 +0000 (13:25 +0000)]
Merge "Run all existing tests from tests/system/ directory" into tizen
Karol Lewandowski [Sat, 28 Sep 2019 16:28:01 +0000 (18:28 +0200)]
Make remaining macros behave like standard statements
Change-Id: Id09a320422eeac2ddd459b47b023df8d4d975971
Karol Lewandowski [Thu, 26 Sep 2019 19:42:09 +0000 (21:42 +0200)]
Fix compilation on 64-bit architectures
64-bit architetures have lib in lib64, fix this by using
cmake-provided information about target system directories.
Change-Id: I794c89ad06b7bd80acd50acd3e64a36ffe86ea5d
Mateusz Moscicki [Tue, 10 Sep 2019 12:22:49 +0000 (14:22 +0200)]
Move log_dump to platform/core/system/log_dump
Change-Id: I7349a275c370cef32cb6da143acb1b5255de68f3
Mateusz Moscicki [Mon, 19 Aug 2019 11:33:15 +0000 (13:33 +0200)]
Separate log_dump from crash-worker
crash-worker can be installed without log_dump
Change-Id: Ifa045dede15148e4c5215b1a54fd0e3280d75f52
Mateusz Moscicki [Tue, 10 Sep 2019 10:16:38 +0000 (12:16 +0200)]
Run all existing tests from tests/system/ directory
This allows to put there tests by other crash-manager related packages
Change-Id: I3dea8cdb77cf20c8bed68ff9b8891d87c0bd5da2
Karol Lewandowski [Thu, 26 Sep 2019 12:29:23 +0000 (14:29 +0200)]
Release 5.5.22
This version brings one major enhancement - livedump API, available
for platform service developers.
pkgconfig name: crash-service
include: libcrash-service.h
API: livedump_pid()
Change-Id: I25d22fc9f43e647dd48ea4f02cebb2dbb5ac49ec
Mateusz Moscicki [Thu, 25 Jul 2019 09:02:43 +0000 (11:02 +0200)]
Add crash manager API
Privileged processes can send a D-Bus method call to create report of
any living process. Signature is (iss):
- INT (in) PID
- STRING (in) dump reason
- STRING (out) report path
There is a library libcrashservice that sends the D-Bus method call.
A function signature is:
int livedump_pid(pid_t pid,
const char *dump_reason,
char *report_path);
Change-Id: Id8528bdbaac517d4b5fc649821368e0ff020862f
Mateusz Moscicki [Tue, 20 Aug 2019 11:39:42 +0000 (13:39 +0200)]
Move code to the shared library
Change-Id: I05f3bc5902bd7b13b4f50dac32622e7f3cbaedab
Mateusz Moscicki [Thu, 25 Jul 2019 06:50:37 +0000 (08:50 +0200)]
Add --output option
This option allows to specify the custom output directory for reports
Change-Id: I7a49d958f268f73f346b7f5b692cf3ce56808f37
Mateusz Moscicki [Wed, 18 Sep 2019 13:02:39 +0000 (15:02 +0200)]
Release 5.5.21
Changes:
- livedumper: fix coverity issuses
- livedumper: check open() result
Change-Id: Iee7fce1be940cc8163162a31202121180f111afc
Mateusz Moscicki [Wed, 18 Sep 2019 09:34:49 +0000 (11:34 +0200)]
Fix Coverity issues
Change-Id: I84d25d996c2134e141bb366ca3adc77743ba98ba
Mateusz Moscicki [Tue, 13 Aug 2019 11:25:39 +0000 (13:25 +0200)]
Check if open() was successful
Change-Id: I801699a864f2df60bfae0734fce20a925c104553
Karol Lewandowski [Wed, 21 Aug 2019 16:52:14 +0000 (18:52 +0200)]
Release 5.5.20
This release brings few small improvements:
- refactor crash-manager main invocation code
- dump_scripts: move_dump.sh: set PATH exactly as security team requires
- crash-manager: print textual error code where possible
- assorted fixes
Change-Id: I319c10c4e96249b246fea8698b590147d2636da5
Karol Lewandowski [Thu, 29 Aug 2019 20:57:02 +0000 (22:57 +0200)]
config: Use same type to store all bools
Change-Id: Ife768dd5b71355759db7d678d7c3fd6a5399e811
Karol Lewandowski [Fri, 30 Aug 2019 06:38:50 +0000 (08:38 +0200)]
config: Fix invalid default setting for MaxRetentionSec
Change-Id: I809d86fdd0242c2c280b4db4eef009cadfd4652b
Karol Lewandowski [Thu, 29 Aug 2019 20:56:42 +0000 (22:56 +0200)]
config: Add missing free() for extra_script
Change-Id: Ie17d4dd90e08f02192139acbd8edf5c5682a4f59
Mateusz Moscicki [Thu, 25 Jul 2019 09:00:26 +0000 (11:00 +0200)]
Move code to a separate function
Change-Id: I81bd9ac6467214ce9251213dee193fd6f53c71c2
Karol Lewandowski [Wed, 21 Aug 2019 13:29:01 +0000 (15:29 +0200)]
crash-manager: print textual error code where possible
Change-Id: Ia2536417d55d9b8275424983ce24ec6cdadc7d5a
Karol Lewandowski [Mon, 12 Aug 2019 11:54:37 +0000 (13:54 +0200)]
crash-manager: Janitorial: rename crash_crash_path to crash_dump_path for readability
Change-Id: Id62ade3ac22c27360bad000b37e3e9bc53e5b254
Karol Lewandowski [Wed, 21 Aug 2019 13:29:31 +0000 (15:29 +0200)]
crash-manager: Rewrite make_dump_path() for readability
Change-Id: I523ca95903f16118e87ca724cc035b82c879d459
Karol Lewandowski [Wed, 21 Aug 2019 13:45:32 +0000 (15:45 +0200)]
dump_scripts: move_dump.sh: set PATH exactly as security team requires
Change-Id: I8750d45b43ebb090e9cf31b8c1814eb1550fdce7
Karol Lewandowski [Fri, 9 Aug 2019 11:36:49 +0000 (13:36 +0200)]
Release 5.5.19
This release brings:
- lowering priority of crash-worker sysctl file to allow
easy overwriting of sysctls by local files
- few fixes for reliability
- minor system tests refactoring
Change-Id: If12efeb3c59c68ed642c32d83e789592520a18af
Karol Lewandowski [Thu, 8 Aug 2019 08:49:27 +0000 (10:49 +0200)]
shared: Simplify get_exe_path
Change-Id: I26839430a4836454f96c1f273a1500899dc6b607
Karol Lewandowski [Thu, 8 Aug 2019 08:13:04 +0000 (10:13 +0200)]
crash-manager: fix potential cinfo->cmdline double free
Change-Id: I1ea39c92f076834defe4dfc0e7f4a6d0f798f066
Karol Lewandowski [Thu, 1 Aug 2019 14:38:12 +0000 (16:38 +0200)]
Lower the number (and priority) of crash-worker sysctl config file
Install sysctl file with 70 prefix instead of 99. This will allow
overriding variables by creating eg. 99-local.conf file with appropriate
vars.
Change-Id: I88e25839a59a66896ab540d0836776b2d64225e5
Karol Lewandowski [Thu, 25 Jul 2019 11:13:09 +0000 (13:13 +0200)]
system tests: Simplify exit helper functions
Change-Id: Iecafa3632ac0c81454c2692037de34b486dfa2e2
Karol Lewandowski [Tue, 23 Jul 2019 15:25:00 +0000 (17:25 +0200)]
Release 5.5.18
This release introduces following features:
- Addition of signal that caused crash and thread name to
dbus signal (in sys.signal and sys.tid.comm fields, respectively)
Additionally, report path is appended properly to the signal
(bugfix)
- Livecoredump reports are saved in livedump/ subdirectory
from this release
- Executable name is passed to minicoredumper allowing per-app
recipes to be specified
- All executables are rebuild as PIE as needed for ASLR to work
Change-Id: I91b2222c603d1d75b5e3df501f3d57eed5d7ff4e
Mateusz Moscicki [Thu, 18 Jul 2019 15:58:38 +0000 (17:58 +0200)]
Pass the executable name to the minicoredumper
Change-Id: Iccd4abead0a87873d05e05333630bd859d34ef46
Mateusz Moscicki [Tue, 16 Jul 2019 06:16:04 +0000 (08:16 +0200)]
Save livedumper reports in the livedump/ subdirectory
This change makes possible to distinguish the report created by
the application crash from that created on the request.
Change-Id: Iaafb82522cad40e12366ee06eb6313027937b5b2
Karol Lewandowski [Fri, 19 Jul 2019 13:23:42 +0000 (15:23 +0200)]
crash-manager: dbus: Add /proc/tid/comm info to signal
Change-Id: Ibfbc159204b54a9c4a2eaacc491c56a950e246b5
Karol Lewandowski [Fri, 19 Jul 2019 13:22:54 +0000 (15:22 +0200)]
shared: Generalize function to read any /proc/pid entry
Change-Id: Ide42d323a2ce6f3901d7a5c26baa9ff5153a512f
Karol Lewandowski [Fri, 19 Jul 2019 13:20:15 +0000 (15:20 +0200)]
defs: Make comm size public
It will be used by multiple clients.
Change-Id: Ifa86c14a0b1cf3b0c1cf7693c1f3c836c95a0d2d
Karol Lewandowski [Thu, 18 Jul 2019 11:32:48 +0000 (13:32 +0200)]
crash-manager: dbus: Add information about signal that caused crash
Signal number is going to be available under "sys.signal" key in
broadcasted signal.
Change-Id: I1c1e57e9229ca0d896ce095782d3c510ab5fe96e
Karol Lewandowski [Wed, 17 Jul 2019 11:29:15 +0000 (13:29 +0200)]
tests: Add crash-manager dbus notify system test
Change-Id: I3e3c4669df4dd36edecd02c2fb245f455b76b4c5
Karol Lewandowski [Wed, 17 Jul 2019 11:28:04 +0000 (13:28 +0200)]
crash-manager: notify: Add missing report path to D-Bus signal
Change-Id: I39d992d49b48f00f11103b47eec2027e655fe6c7
Karol Lewandowski [Wed, 17 Jul 2019 11:27:08 +0000 (13:27 +0200)]
defs.h: Fix crash-notify path
Change-Id: I4e7cc3e516239d6642dc7214bc35472d8918cc3e
Karol Lewandowski [Tue, 16 Jul 2019 11:46:29 +0000 (13:46 +0200)]
Build all programs as PIE - needed for ASLR to work
Change-Id: If965bb4ef9008bf280d211feeebe1a5a95de7252
Mateusz Moscicki [Mon, 15 Jul 2019 13:15:19 +0000 (15:15 +0200)]
Release 5.5.17
- Fix format specifier in livedumper
- crash-manager executes livedumper with -m option
Change-Id: I1031fce26edd993612d1d0190fb31775488ff29e
Mateusz Moscicki [Mon, 15 Jul 2019 13:11:54 +0000 (15:11 +0200)]
crash-manager executes livedumper with -m option
Change-Id: If36b60500d18fe43065a4b9322446e9309e18564
Mateusz Moscicki [Mon, 15 Jul 2019 12:46:50 +0000 (14:46 +0200)]
Skip test if livedumper doesn't exist
Change-Id: Ibe22df39b4c8e572c29efec0f338cae0bef1bc9f
Mateusz Moscicki [Mon, 15 Jul 2019 09:09:11 +0000 (11:09 +0200)]
Fix format specifier
Change-Id: I5378d23401594aae9adf42ce595d6fad43c847ce
Mateusz Moscicki [Tue, 9 Jul 2019 13:54:55 +0000 (15:54 +0200)]
Release 5.5.16
- Fix Coverity issues
Change-Id: Ic94d6570135a93575b793447c1fc5ea365c6a5f3
Michal Bloch [Mon, 8 Jul 2019 14:49:34 +0000 (16:49 +0200)]
Fix a bunch of minor issues found by Coverity.
Change-Id: I6dc3f56f1d590a6a49800d28ba78d3185555a837
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
Mateusz Mościcki [Fri, 5 Jul 2019 14:15:34 +0000 (14:15 +0000)]
Merge changes I0a2bc0e4,I9056c6e6 into tizen
* changes:
Release 5.5.15
Add ability to dump minicore
Mateusz Moscicki [Fri, 5 Jul 2019 14:07:35 +0000 (16:07 +0200)]
Release 5.5.15
- livedumper is able to create mini coredumps (-m option)
Change-Id: I0a2bc0e42757e3fe9378cca8b671448804abdcca
Mateusz Moscicki [Wed, 26 Jun 2019 08:49:48 +0000 (10:49 +0200)]
Add ability to dump minicore
Change-Id: I9056c6e630e11a9990933832906302e45905dea2
INSUN PYO [Wed, 26 Jun 2019 00:23:41 +0000 (09:23 +0900)]
Change the config value of the "RemainAfterExit=" ("true" -> "yes")
Change-Id: I8456f7ebfbbf1679092ff2a9e92745574e482766
Karol Lewandowski [Tue, 18 Jun 2019 14:01:39 +0000 (16:01 +0200)]
Release 5.5.14
This release brings:
- ExtraScript= crash-worker's option, allowing to call arbitrary
script which can add files to report
- assorted fixes
Change-Id: I2828135b2bef5118453c4e3356dfc4f96bc59755
Karol Lewandowski [Tue, 18 Jun 2019 14:01:08 +0000 (16:01 +0200)]
system-tests: packaging: Sort files
Change-Id: Ic61351ecef500221afe2876582a2ae034f905761
Karol Lewandowski [Tue, 18 Jun 2019 10:57:48 +0000 (12:57 +0200)]
crash-manager: Add ExtraScript to config
ExtraScript will be called for report types >= FULL. This will allow
attaching arbitrary data to crash report. Script is called with report's
temporary directory as first and only argument, ie.
exec("$ExtraScript", "/path/to/report/temp/dir", PID)
Change-Id: Icc38b92daae7a39b13063b2c45bffc1b863e72d6
Karol Lewandowski [Tue, 18 Jun 2019 13:45:10 +0000 (15:45 +0200)]
system-tests: Fix incorrect variable usage
Change-Id: Ifafc9ff3c62f760b96188c4a51471a219e66cee0
Mateusz Moscicki [Wed, 22 May 2019 10:37:09 +0000 (12:37 +0200)]
Remove logging to error output
Change-Id: I7abce9958153729ed7ae91d582970211ad0e004f
Mateusz Moscicki [Tue, 28 May 2019 12:16:31 +0000 (14:16 +0200)]
Fix SVACE warnings
Change-Id: I8c1c88cb34637b9c6a341d59134e9bb1c9f1cfea
Michal Bloch [Thu, 23 May 2019 16:57:24 +0000 (18:57 +0200)]
Release 5.5.13
Quickfix for a compilation issue on aarch64.
Change-Id: I390dfaffba12ebe5692cf5d821abb56168d24a0c
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
Karol Lewandowski [Wed, 22 May 2019 13:54:17 +0000 (15:54 +0200)]
Release 5.5.12
This release brings following improvements:
- livedumper - the utility to create coredumps from live processes
and its integration
- dump_systemstate is able to add additional extra output from both
specified files and programs
- dbus dependencies are moved from crash-manger core program to separate
helper programs to improve reliability
Change-Id: Ic78880739209e4d4d320c09ba77ba9acc3533490
Karol Lewandowski [Wed, 22 May 2019 09:27:17 +0000 (11:27 +0200)]
Move hardcoded paths back to .spec file
Change-Id: I50a83ba1a19088608200f1ef9ce83649cc53af68
Mateusz Moscicki [Fri, 17 May 2019 07:13:33 +0000 (09:13 +0200)]
Fix system tests
* Skip critical process system test for emulator
* Add a delay after a process terminating. In some cases crash-worker
finished job, but the report appeared after a while
* Define variables for exit codes
* Unify variable name for the system tests path
Change-Id: I6b380ba3252d2b654ecfd8e9ecde575d959c0602
Mateusz Moscicki [Tue, 16 Apr 2019 10:05:26 +0000 (12:05 +0200)]
Add livedumper and integrate it with the crash-manager
Livedumper is an application that can save coredump of a running process.
crash-manager got three new switches:
-l - run livedumper instead of minicoredumper and don't send notify
-k - kill process after saving the report
-r - print report path to stdout
Change-Id: If4fe21b250ae5e939d7b63ea5c4bf75bec6123a4
Mateusz Moscicki [Wed, 8 May 2019 10:27:18 +0000 (12:27 +0200)]
Use getopt to parse command line arguments
Change-Id: If8fcb875d19f4547348b72341e342251cb8b7fb2
Karol Lewandowski [Fri, 17 May 2019 09:53:46 +0000 (11:53 +0200)]
Redirect command's output to not pollute standard output
This alters default redirections of following commands:
- zip - all descriptors redirected to /dev/null
- minicoredumper, dump_systemstate - standard output redirected to stderr
Change-Id: I723ddb78baca6d58decbc1b1219f7cd5b8d5c9ae
Karol Lewandowski [Wed, 15 May 2019 12:02:27 +0000 (14:02 +0200)]
spawn: Allow executing list of handlers
This functionality is needed for non-trivial child initialization.
Change-Id: Iac1d5221fc44dc2d65c2acc260e8b9e2b1a01a17
Karol Lewandowski [Wed, 15 May 2019 12:01:44 +0000 (14:01 +0200)]
Silence zip command output
zip, as any other process, should not pollute our standard output
unless explicitly asked to do so.
Change-Id: Ied5d31e453c528fffd9662aa5b324e0b7a743dbc
Karol Lewandowski [Fri, 26 Apr 2019 13:48:32 +0000 (15:48 +0200)]
system tests: add `dump_systemstate -e' test
Change-Id: I4fa93d87bffaf2178b213eda2861a2522ce531ad
Michal Bloch [Wed, 3 Apr 2019 09:46:47 +0000 (11:46 +0200)]
dump_systemstate reads extra tasks from config
Change-Id: I0cf2f0411218e0ce6d0b7c0e940ea5e84f48fdf2
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
Karol Lewandowski [Thu, 25 Apr 2019 11:31:43 +0000 (13:31 +0200)]
Split dbus-notify-send from crash-manager
Change-Id: I12b9a6b513fba53335eee71bf10c5c2b83ca3349
Karol Lewandowski [Thu, 25 Apr 2019 08:39:09 +0000 (10:39 +0200)]
Split crash-popup-launch from crash manager
Crash manager should not have any dbus depenency to increase its reliability.
Change-Id: I576d3730f47e6562dea71b9399c08cddf3280521
Karol Lewandowski [Thu, 25 Apr 2019 10:03:05 +0000 (12:03 +0200)]
spawn: Introduce helper to open /dev/null on all standard fds
This will be used in crash-manager to invoke processes in
"non-blocking" way.
Change-Id: Ic70eda38c7cba8628e635ba206f1fe81edb944eb
Karol Lewandowski [Thu, 25 Apr 2019 11:24:56 +0000 (13:24 +0200)]
Release 5.5.11
This release brings following changes:
- log_dump honours CrashRootPath from config
- dump_systemstate also dumps installed package list
Change-Id: I433dcbbca07df388c981113c89a054f5f1a40ec9
Michal Bloch [Thu, 18 Apr 2019 13:30:21 +0000 (15:30 +0200)]
Fix missing includes
Required for `bool`, `off_t` and `pid_t`.
Change-Id: I245b9aa5f5fd3e7b01b2d44d502762b57f9065f7
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
Karol Lewandowski [Thu, 18 Apr 2019 13:24:59 +0000 (13:24 +0000)]
Merge "shared utils: add a string suffix checker" into tizen
Karol Lewandowski [Thu, 18 Apr 2019 13:19:49 +0000 (13:19 +0000)]
Merge changes I738e241a,Idade13c1,Ic4b2732b into tizen
* changes:
log_dump: Honour CrashRootPath from config
log_dump: Create temp dir if nonexistent
Move crash-manager config handling to shared/
Karol Lewandowski [Wed, 17 Apr 2019 14:06:55 +0000 (16:06 +0200)]
log_dump: Honour CrashRootPath from config
Change-Id: I738e241a1fbb12447f32fcc7f963a8185eec0f12
Karol Lewandowski [Wed, 17 Apr 2019 12:59:36 +0000 (14:59 +0200)]
log_dump: Create temp dir if nonexistent
Other directories are created already (log, debug).
Change-Id: Idade13c1bf10df09ef36dd71a449c216eb27a6dc
Karol Lewandowski [Fri, 12 Apr 2019 10:25:31 +0000 (12:25 +0200)]
Move crash-manager config handling to shared/
Certain configuration variables are needed by (at least) log_dump.
Change-Id: Ic4b2732b261c1d03215cf0ac14db5264c9b517fb
Michal Bloch [Wed, 17 Apr 2019 10:26:23 +0000 (12:26 +0200)]
shared utils: add a string suffix checker
Change-Id: I8c7a5e78c7d407a983c967a6b105c31e3beff3a7
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
Mateusz Moscicki [Tue, 16 Apr 2019 14:32:31 +0000 (16:32 +0200)]
Fix get application name from path
Change-Id: Icaa926c23ebc52af502ccb94e35090008281be95
Karol Lewandowski [Tue, 26 Mar 2019 14:00:42 +0000 (15:00 +0100)]
Introduce defs.h with all cmake variables
Change-Id: Ic3fb4f3d6074b896f7601d07a7a93cb96f9e8727
Sunmin Lee [Mon, 25 Feb 2019 01:55:42 +0000 (10:55 +0900)]
dump_systemstate: dump installed package list
Some package information is required to debug crash.
Add it as an option of dump_systemstate.
Change-Id: I140e2d00b35157c7f463426483dea074d739b73e
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
[ Backported from different repository ]
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Karol Lewandowski [Fri, 1 Mar 2019 15:27:00 +0000 (16:27 +0100)]
Release 5.5.10
Fix compilation on 64-bit architectures.
Change-Id: Ib8110ed71300d4b0dde5b7fe0775c94cd720dfa5
Karol Lewandowski [Fri, 1 Mar 2019 15:13:58 +0000 (16:13 +0100)]
util: Fix spawn API to work properly on 64-bit architectures
Introducing spawn_param_u has the purpose of avoiding
casting arch-dependent pointers to various data types.
Change-Id: I81c4c292ac9f0d9506f3ad3cac1676e9c99cc090
Karol Lewandowski [Fri, 1 Mar 2019 12:57:31 +0000 (13:57 +0100)]
Release 5.5.9
This release brings:
- rewrite of subprocess execution API and associated updates
- rewrite of log_dump for correctness and readability
- addition of log_dump and basic crash report system tests
Change-Id: If157537a971537ab4c7f2d3f67605a277db96964
Karol Lewandowski [Fri, 21 Sep 2018 07:48:21 +0000 (09:48 +0200)]
Rewrite and re-enable log_dump
This is major change which brings following changes:
- port log_dump to spawn() API
- fix: allow creating multiple log_dump reports at once
(by using separate/unique temporary directory)
NOTE: There is no guarantee that dump scripts are able to handle parallell
invocation!
- fix: always broadcast the signal about finished dump - even in case of
error (client should not wait indifinitely for status)
- move logic of moving crash-dump reports to separate script
Change-Id: I78585b9c3c6bfb9e12950985b389c0edf0eac7f0
Karol Lewandowski [Wed, 7 Nov 2018 11:04:34 +0000 (12:04 +0100)]
Replace system_command_* and run_command_* APIs with simpler spawn()
This commit introduces following utility functions to handle
external process execution:
- spawn() - forks parent and executes specified command via execve(),
establishes pipe between child and parent to monitor child lifetime.
Ability to customize child environment is provided by the means of
callbacks - spawn_{setstdout{,err},chdir,umask} are provided to set
fds, chdir, and umask respectively.
- wait_for_pid() - waitpid() for child, returning its exit code
- spawn_wait() - combines both of above and adds ability to optionally
specify timeout after which child is killed. Returns childs exit
code (as wait_for_pid()), or -1 when timed out.
Change-Id: I55d1e4ae8f547be3883c43132a0e083b91f730e3
Karol Lewandowski [Tue, 19 Feb 2019 16:15:56 +0000 (17:15 +0100)]
Disable log_dump
Disable log_dump for the period of spawn API introduction to
avoid rewriting this utility twice.
Change-Id: I7f5589d9e3eadb4343314d5509c6dc8cf4e62177
Karol Lewandowski [Wed, 27 Feb 2019 15:05:39 +0000 (16:05 +0100)]
system tests: report_basic: do not assume empty crash dump directory
Other programs can create crash report at the same time
this system test is run, so we can not assume our crash
report will be only one in the dump dir.
Change-Id: I8688312b11cbaee4cad56205ae0486b4f99e4a5f
Mateusz Moscicki [Wed, 27 Feb 2019 12:13:48 +0000 (13:13 +0100)]
Simplify CMakeFile.txt
Change-Id: I1d07b518a88c057c726f5a110a53620e3941741e
Karol Lewandowski [Wed, 27 Feb 2019 10:52:23 +0000 (11:52 +0100)]
system tests: ensure core pattern is always restored
Change-Id: Id8cd30af058da8cbc23844ec7314d8a488644807
Karol Lewandowski [Tue, 26 Feb 2019 15:34:22 +0000 (16:34 +0100)]
system tests: ensure needed variables are always available
Change-Id: Ia4700100cfc849976dd7fa6c84b92b66f393d7d9
Karol Lewandowski [Tue, 26 Feb 2019 13:18:38 +0000 (14:18 +0100)]
system tests: add basic crash report sanity test
Change-Id: I2fbe5f35a7a1cb7d93a3bf895ffd4cec1f6d0c6f
Karol Lewandowski [Tue, 26 Feb 2019 15:19:03 +0000 (16:19 +0100)]
system tests: log_dump: fix multiple issues
Fixes:
- invalid crash report existence tests
- lack of bash dependency in one test
- non-unique test file used
Change-Id: Iee9c7c9592054008c5e3bfd23e90e0c09f6e849b