-
Notifications
You must be signed in to change notification settings - Fork 97
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add MsgMeasurementPoint [AP-653] (#1388)
# Description @swift-nav/devinfra Create a new message to output profiling information from measurement points. Current version of some product will output measurement point profiling information in the LinuxCPUState message making use of the `cmdline` field to serialise various bits of information. Some other bits of information are placed in to the other fields in LinuxCpuState but since the fields are already defined the names are misleading. This PR introduces a dedicated message which contains the same information as is currently sent but broken out in to fields with the correct types. This removes the need to serialise/deserialise this information once products are updated to use this message instead. # API compatibility Does this change introduce a API compatibility risk? No ## API compatibility plan If the above is "Yes", please detail the compatibility (or migration) plan: No # JIRA Reference https://swift-nav.atlassian.net/browse/AP-653
- Loading branch information
Showing
59 changed files
with
4,273 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
/* | ||
* Copyright (C) 2015-2021 Swift Navigation Inc. | ||
* Contact: https://support.swiftnav.com | ||
* | ||
* This source is subject to the license found in the file 'LICENSE' which must | ||
* be be distributed together with this source. All other rights reserved. | ||
* | ||
* THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, | ||
* EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED | ||
* WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. | ||
*/ | ||
|
||
/***************************************************************************** | ||
* Automatically generated from yaml/swiftnav/sbp/profiling.yaml | ||
* with generate.py. Please do not hand edit! | ||
*****************************************************************************/ | ||
|
||
/** \defgroup profiling Profiling | ||
* | ||
* Standardized profiling messages from Swift Navigation devices. | ||
* \{ */ | ||
|
||
#ifndef LIBSBP_LEGACY_PROFILING_MESSAGES_H | ||
#define LIBSBP_LEGACY_PROFILING_MESSAGES_H | ||
|
||
#include <libsbp/common.h> | ||
|
||
SBP_MESSAGE( | ||
"The legacy libsbp API has been deprecated. This file and all symbols " | ||
"contained will " | ||
"be removed in version 6. You should immediately switch over to the modern " | ||
"libsbp API.") | ||
|
||
#include <libsbp/profiling_macros.h> | ||
|
||
SBP_PACK_START | ||
|
||
/** Profiling Measurement Point | ||
* | ||
* Tracks execution time of certain code paths in specially built products. | ||
* This message should only be expected and processed on the direction of | ||
* Swift's engineering teams. | ||
*/ | ||
|
||
typedef struct SBP_ATTR_PACKED SBP_DEPRECATED { | ||
u32 total_time; /**< Total time spent in measurement point | ||
(microseconds) */ | ||
u16 num_executions; /**< Number of times measurement point has executed */ | ||
u32 min; /**< Minimum execution time (microseconds) */ | ||
u32 max; /**< Maximum execution time (microseconds) */ | ||
u64 return_addr; /**< Return address */ | ||
u64 id; /**< Unique ID */ | ||
u64 slice_time; /**< CPU slice time (milliseconds) */ | ||
u16 line; /**< Line number */ | ||
char func[0]; /**< Function name */ | ||
} msg_measurement_point_t; | ||
|
||
/** \} */ | ||
|
||
SBP_PACK_END | ||
|
||
#endif /* LIBSBP_LEGACY_PROFILING_MESSAGES_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
/* | ||
* Copyright (C) 2015-2021 Swift Navigation Inc. | ||
* Contact: https://support.swiftnav.com | ||
* | ||
* This source is subject to the license found in the file 'LICENSE' which must | ||
* be be distributed together with this source. All other rights reserved. | ||
* | ||
* THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, | ||
* EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED | ||
* WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. | ||
*/ | ||
|
||
/***************************************************************************** | ||
* Automatically generated from yaml/swiftnav/sbp/profiling.yaml | ||
* with generate.py. Please do not hand edit! | ||
*****************************************************************************/ | ||
|
||
#ifndef LIBSBP_V4_PROFILING_MESSAGES_H | ||
#define LIBSBP_V4_PROFILING_MESSAGES_H | ||
#include <libsbp/profiling/MSG_MEASUREMENT_POINT.h> | ||
|
||
#endif /* LIBSBP_V4_PROFILING_MESSAGES_H */ |
Oops, something went wrong.