Skip to content

Commit

Permalink
7.2.1
Browse files Browse the repository at this point in the history
  • Loading branch information
quantum-leaps committed Jan 15, 2023
1 parent a5f0a9e commit a90d07e
Show file tree
Hide file tree
Showing 11 changed files with 220 additions and 224 deletions.
14 changes: 7 additions & 7 deletions doxygen/gen/metrics.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
45 5 241 3 74 QMPool_get@119-192@..\src\qf\qf_mem.c
19 3 117 3 28 QMPool_put@195-222@..\src\qf\qf_mem.c
8 1 35 2 13 QActive_psInit@73-85@..\src\qf\qf_ps.c
43 6 232 3 75 QActive_publish_@90-164@..\src\qf\qf_ps.c
42 6 231 3 75 QActive_publish_@90-164@..\src\qf\qf_ps.c
18 5 111 2 24 QActive_subscribe@169-192@..\src\qf\qf_ps.c
18 5 111 2 27 QActive_unsubscribe@197-223@..\src\qf\qf_ps.c
19 5 130 1 24 QActive_unsubscribeAll@228-251@..\src\qf\qf_ps.c
Expand Down Expand Up @@ -107,9 +107,9 @@
19 5 105 1 26 QXK_contextSw@440-465@..\src\qxk\qxk.c
13 2 104 1 23 QXK_threadExit_@472-494@..\src\qxk\qxk.c
10 2 64 2 13 QXMutex_init@74-86@..\src\qxk\qxk_mutex.c
81 11 724 2 138 QXMutex_lock@89-226@..\src\qxk\qxk_mutex.c
59 9 502 1 97 QXMutex_tryLock@229-325@..\src\qxk\qxk_mutex.c
78 12 670 1 135 QXMutex_unlock@328-462@..\src\qxk\qxk_mutex.c
79 11 701 2 136 QXMutex_lock@89-224@..\src\qxk\qxk_mutex.c
57 9 483 1 95 QXMutex_tryLock@227-321@..\src\qxk\qxk_mutex.c
74 12 622 1 129 QXMutex_unlock@324-452@..\src\qxk\qxk_mutex.c
9 1 51 3 11 QXSemaphore_init@73-83@..\src\qxk\qxk_sema.c
57 7 389 2 84 QXSemaphore_wait@86-169@..\src\qxk\qxk_sema.c
28 3 139 1 39 QXSemaphore_tryWait@172-210@..\src\qxk\qxk_sema.c
Expand Down Expand Up @@ -153,15 +153,15 @@ NLOC Avg.NLOC AvgCCN Avg.token function_cnt file
69 20.7 2.3 107.0 3 ..\src\qf\qf_defer.c
138 18.4 3.3 111.4 7 ..\src\qf\qf_dyn.c
103 32.0 4.3 197.0 3 ..\src\qf\qf_mem.c
115 21.2 4.4 123.8 5 ..\src\qf\qf_ps.c
114 21.0 4.4 123.6 5 ..\src\qf\qf_ps.c
96 17.6 4.6 113.0 5 ..\src\qf\qf_qact.c
152 36.2 4.8 200.8 4 ..\src\qf\qf_qeq.c
18 16.0 2.0 79.0 1 ..\src\qf\qf_qmact.c
218 26.2 4.1 155.6 8 ..\src\qf\qf_time.c
191 22.9 5.0 129.1 8 ..\src\qk\qk.c
81 18.5 5.0 109.2 4 ..\src\qv\qv.c
260 22.9 5.0 138.5 11 ..\src\qxk\qxk.c
235 57.0 8.5 490.0 4 ..\src\qxk\qxk_mutex.c
227 55.0 8.5 467.5 4 ..\src\qxk\qxk_mutex.c
143 34.0 4.5 213.5 4 ..\src\qxk\qxk_sema.c
325 24.4 3.8 156.0 13 ..\src\qxk\qxk_xthr.c

Expand All @@ -170,5 +170,5 @@ No thresholds exceeded (cyclomatic_complexity > 20 or length > 500 or nloc > 100
==========================================================================================
Total nloc Avg.NLOC AvgCCN Avg.token Fun Cnt Warning cnt Fun Rt nloc Rt
------------------------------------------------------------------------------------------
4058 24.5 4.3 151.2 125 0 0.00 0.00
4049 24.4 4.3 150.5 125 0 0.00 0.00
@endcode
11 changes: 9 additions & 2 deletions doxygen/history.dox
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,19 @@
@remark
This document is part of the @webref{products/qp#CERT,QP Certification Pack}, which has been specifically designed to aid companies in **safety certification** of their software based on the QP real-time embedded frameworks.

@section qpc_7_2_1 Version 7.2.1, 2023-01-11
@section qpc_7_2_1 Version 7.2.1, 2023-01-15
__QP/C Source Code:__
- Changed the design of the ::QXMutex class to include ::QActive by composition rather than inheritance.

__Ports:__
- Fixed problems in QK ports for ARM Cortex-M: in case a regular IRQ is used for returning to the thread context. The port didn't handle correctly #QK_USE_IRQ_NUM above 32.
- Fixed problems in QXK ports for ARM Cortex-M: in case a regular IRQ is used for returning to the thread context. The port didn't handle correctly #QK_USE_IRQ_NUM above 32.

__Bug Fixes:__
- [bug#328 Assertion qxk:720 in QP/​C/​C++ 7.2.0](https://sourceforge.net/p/qpc/bugs/328)

@attention
This bug in QXK affects releases QP/C 7.1.0 through 7.2.0
This bug in QXK affects releases QP/C @ref qpc_7_1_0 "7.1.0" through @ref qpc_7_2_0 "7.2.0"


@section qpc_7_2_0 Version 7.2.0, 2023-01-06
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1662,7 +1662,7 @@
<PlainCh>0</PlainCh>
<Ropi>0</Ropi>
<Rwpi>0</Rwpi>
<wLevel>3</wLevel>
<wLevel>2</wLevel>
<uThumb>0</uThumb>
<uSurpInc>1</uSurpInc>
<uC99>1</uC99>
Expand All @@ -1676,9 +1676,8 @@
<v6WtE>0</v6WtE>
<v6Rtti>0</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
<Define>Q_SPY QF_ON_CONTEXT_SW QXK_USE_IRQ_HANDLER=CRYPTO_IRQHandler QXK_USE_IRQ_NUM=25
</Define>
<MiscControls>-Wno-padded</MiscControls>
<Define>Q_SPY QF_ON_CONTEXT_SW QXK_USE_IRQ_HANDLER=FPUEH_IRQHandler QXK_USE_IRQ_NUM=33</Define>
<Undefine></Undefine>
<IncludePath>..\..;..\..\..\..\..\include;..\..\..\..\..\ports\arm-cm\qxk\armclang;..\..\..\..\..\3rd_party\CMSIS\Include;..\..\..\..\..\3rd_party\efm32pg1b</IncludePath>
</VariousControls>
Expand Down
4 changes: 3 additions & 1 deletion examples/arm-cm/dpp_efm32-slstk3401a/qxk/iar/dpp-qxk.ewp
Original file line number Diff line number Diff line change
Expand Up @@ -2178,7 +2178,7 @@
</option>
<option>
<name>OGLastSavedByProductVersion</name>
<state>8.50.6.28950</state>
<state>9.10.2.39304</state>
</option>
<option>
<name>OGChipSelectEditMenu</name>
Expand Down Expand Up @@ -2324,6 +2324,8 @@
<name>CCDefines</name>
<state>Q_SPY</state>
<state>EFM32PG1B200F256GM48</state>
<state>QXK_USE_IRQ_HANDLER=FPUEH_IRQHandler</state>
<state>QXK_USE_IRQ_NUM=33</state>
</option>
<option>
<name>CCPreprocFile</name>
Expand Down
4 changes: 2 additions & 2 deletions include/qep.h
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,8 @@
*/
#define QP_VERSION_STR "7.2.1"

/*! Encrypted current QP release (7.2.1) and date (2023-01-11) */
#define QP_RELEASE 0x76D7D63EU
/*! Encrypted current QP release (7.2.1) and date (2023-01-15) */
#define QP_RELEASE 0x76D739FEU

/*==========================================================================*/
/*$declare${glob-types} vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv*/
Expand Down
8 changes: 4 additions & 4 deletions include/qs.h
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ enum QSpyPre {
QS_MTX_UNLOCK_ATTEMPT,/*!< a mutex unlock was attempted */

/* [81] */
QS_PRE_MAX, /*!< the number of predefined signals */
QS_PRE_MAX /*!< the number of predefined signals */
};

/*${QS::QSpyGroups} ........................................................*/
Expand Down Expand Up @@ -319,7 +319,7 @@ enum QSpyIdOffsets {
QS_AO_ID = 0, /*!< offset for AO priorities */
QS_EP_ID = 64, /*!< offset for event-pool IDs */
QS_EQ_ID = 80, /*!< offset for event-queue IDs */
QS_AP_ID = 96, /*!< offset for Application-specific IDs */
QS_AP_ID = 96 /*!< offset for Application-specific IDs */
};

/*${QS::QSpyIdGroups} ......................................................*/
Expand All @@ -331,7 +331,7 @@ enum QSpyIdGroups {
QS_AO_IDS = (0x80 + (enum_t)QS_AO_ID), /*!< AO IDs (priorities) */
QS_EP_IDS = (0x80 + (enum_t)QS_EP_ID), /*!< event-pool IDs */
QS_EQ_IDS = (0x80 + (enum_t)QS_EQ_ID), /*!< event-queue IDs */
QS_AP_IDS = (0x80 + (enum_t)QS_AP_ID), /*!< Application-specific IDs */
QS_AP_IDS = (0x80 + (enum_t)QS_AP_ID) /*!< Application-specific IDs */
};

/*${QS::QSpyFunPtr} ........................................................*/
Expand Down Expand Up @@ -409,7 +409,7 @@ enum QS_preType {
QS_OBJ_T, /*!< object pointer format */
QS_FUN_T, /*!< function pointer format */
QS_I64_T, /*!< signed 64-bit integer format */
QS_U64_T, /*!< unsigned 64-bit integer format */
QS_U64_T /*!< unsigned 64-bit integer format */
};

/*${QS::QS-tx::priv_} ......................................................*/
Expand Down
9 changes: 5 additions & 4 deletions include/qxk.h
Original file line number Diff line number Diff line change
Expand Up @@ -669,7 +669,6 @@ bool QXSemaphore_signal(QXSemaphore * const me);
/*${QXK::QXMutex} ..........................................................*/
/*! @brief Blocking Mutex the QXK preemptive kernel
* @class QXMutex
* @extends QActive
*
* @details
* ::QXMutex is a blocking mutual exclusion mechanism that can also apply
Expand Down Expand Up @@ -704,11 +703,13 @@ bool QXSemaphore_signal(QXSemaphore * const me);
* @include qxk_mutex.c
*/
typedef struct {
/* protected: */
QActive super;

/* private: */

/*! active object used as a placeholder AO for this mutex
* in QActive_registry_[]
*/
QActive ao;

/*! set of extended-threads waiting on this mutex */
QPSet waitSet;
} QXMutex;
Expand Down
Loading

0 comments on commit a90d07e

Please sign in to comment.