Re: NutExitCritical() behaviour on ARM Cortex-M

Philipp Burch <[email protected]> Thu, 5 Dec 2019 19:54:43 +0100
Newsgroups gmane.comp.hardware.microcontrollers.ethernut
Message-ID <[email protected]>
SGkgVXdlLCBoaSBEdcWhYW4hCgpPbiAwNS4xMi4xOSAxMDo0NiwgYm9uQGVsZWt0cm9uLmlrcC5w
aHlzaWsudHUtZGFybXN0YWR0LmRlIHdyb3RlOgo+IFBoaWxpcHAgQnVyY2ggd3JpdGVzOgo+PiBI
aSBldmVyeW9uZSwKPiAuLi4gCj4+IEFtIEkganVzdCBtaXNzaW5nIHNvbWV0aGluZyBpbiB0aGUg
Y3VycmVudCBpbXBsZW1lbnRhdGlvbj8KPj4KPiBIaSBQaGlsaXBwLAo+IAo+IHByb2JhYmx5IHlv
dSBkbyBub3QgbWlzcyBzb21ldGhpbmcuIFRoZXJlIGhhcyBiZWVuIHNvbWUgZGlzY3Vzc2lvbgo+
IGFib3V0IHRoYXQgc3ViamVjdCBmcm9tIHRpbWUgdG8gdGltZS4gVGhlcmUgd2FzIG5vIGNvbmNs
dXNpdmUKPiBzb2x1dGlvbi4KCkl0IGlzIG1vc3RseSB0aGF0IHBsYWNpbmcgb2YgUFJJTUFTSyBp
bnRvIHIwIGZyb20gKmJvdGgqIG1hY3JvcyB0aGF0IEkKZG9uJ3QgdW5kZXJzdGFuZC4gV2hhdCBp
cyB0aGUgcG9pbnQgb2YgcGxhY2luZyBzb21lIHJlYWQgZGF0YSBpbiBhCnJlZ2lzdGVyIHRoYXQg
aXMgbm90IHVzZWQgYWZ0ZXJ3YXJkcz8KCj4gCj4gSG93IGRvIG90aGVyIE9TZXMgKFJUT1MsIG1i
ZWQsIGV0YykgaGFuZGxlIHRoYXQgc2l0dWF0aW9uPwo+IAo+IFdoYXQgaXMgdGhlIHVzZSBjYXNl
LgoKRnJvbSBteSB1bmRlcnN0YW5kaW5nLCB0aGUgaWRlYSBvZiBhIGNyaXRpY2FsIHNlY3Rpb24g
aXMgdGhhdCBpdCBjYW4gYmUKbmVzdGVkIHNhZmVseSwgZXNwZWNpYWxseSB3aGVuIHVzZWQgaW5z
aWRlIGdlbmVyaWMgY29kZSAoYmUgaXQgZm9yCmRpc2FibGluZyBhIHNpbmdsZSBpbnRlcnJ1cHQg
b3IgYWxsIGludGVycnVwdHMpLiBUaGlzIGlzIGFsc28gd2hhdCB0aGUKY29tbWVudCBpbiBzeXMv
YXRvbS5oIHNheXM6CgogKiBOdXRFeGl0Q3JpdGljYWwoKQogKiBGaW5hbGl6ZSBhIGNyaXRpY2Fs
IHNlY3Rpb24uIE11c3QgYmUgdXNlZCBvbmx5IGF0IHRoZSBlbmQgb2YgYQpjcml0aWNhbCBzZWN0
aW9uCiAqIHRvIHJlc3RvcmUgdGhlIGdsb2JhbCBpbnRlcnJ1cHQgZmxhZyB0byB0aGUgc3RhdGUg
c2F2ZWQgYnkKTnV0RW50ZXJDcml0aWNhbCgpCgpNeSB1c2UgY2FzZSBsZWFkaW5nIG1lIHRvIGRp
Z2dpbmcgaW50byB0aGlzIHdhcyB0aGF0IEkgaGF2ZSBzb21lIGNvZGUKdGhhdCBhY2Nlc3NlcyBo
YXJkd2FyZSByZXNvdXJjZXMgd2hpY2ggc2hvdWxkIGJlIHVzYWJsZSBib3RoIGZyb20KaW50ZXJy
dXB0IGNvbnRleHQgYXMgd2VsbCBhcyBmcm9tIHRocmVhZCBjb250ZXh0LiBUaGUgY3VycmVudApp
bXBsZW1lbnRhdGlvbiBzaG91bGQgbm90IGNhdXNlIGEgcHJvYmxlbSBpbiBteSBjYXNlLCBidXQg
SSBnb3QgY29uZnVzZWQKYnkgdGhlIGNvZGUgYW5kIHRoZSBjb21tZW50LgoKPiAKPiBTb21lIGRp
c2N1c3Npb24gYWxzbyByZXZvbHZlZCBhcm91bmQgc3RhY2tpbmcgY3JpdGljYWwgc2VjdGlvbi4g
SSB3YXMKPiBub3QgY29udmluY2VkIHRoYXQgc3VjaCBzdGFja2luZyBpcyByZWFsbHkgbmVlZGVk
LgoKSSBhZ3JlZSB0aGF0IG5lc3RpbmcgY3JpdGljYWwgc2VjdGlvbnMgKG9yIGNhbGxpbmcgZnVu
Y3Rpb25zIGZyb20gYQpjcml0aWNhbCBzZWN0aW9uIGluIGdlbmVyYWwpIG1heSBub3QgYmUgYSB2
ZXJ5IGdvb2QgaWRlYSBpbiB0aGUgZmlyc3QKcGxhY2UuIEJ1dCBzb21ldGltZXMgaXQgbWF5IGxl
YWQgdG8gc29tZXdoYXQgY2xlYW5lciBjb2RlICh3aGVuIGJ1aWxkaW5nCmFuIEFQSSB0byBhY2Nl
c3Mgc2hhcmVkIHJlc291cmNlcyB3aGlsZSBvZmZlcmluZyBkaWZmZXJlbnQgbGV2ZWxzIG9mCmFi
c3RyYWN0aW9uIGZvciBleGFtcGxlKS4gQ29tYmluZWQgd2l0aCB0aGUgY29tbWVudCB0aGF0IGFj
dHVhbGx5IHNheXMKc29tZXRoaW5nIGVsc2UgdGhhbiB3aGF0IHRoZSBjb2RlIGRvZXMsIHRoaXMg
Y291bGQgaW5kZWVkIGxlYWQgdG8gc3VidGxlCmFuZCBoYXJkLXRvLWRlYnVnIGJ1Z3MgaW4gdGhl
IGNvZGUuCgpJIGFsc28gYWdyZWUgdGhhdCBjaGFuZ2luZyB0aGUgYmVoYXZpb3VyIG9mIHN1Y2gg
YSBsb3ctbGV2ZWwgZnVuY3Rpb24KbWF5IGNhdXNlIGNvbGxhdGVyYWwgZGFtYWdlLiBTbyBpdCBp
cyBjZXJ0YWlubHkgc2Vuc2libGUgdG8gYWRkIGEgbmV3CkFQSSBpbnN0ZWFkIG9mIHVwZGF0aW5n
IHRoZSBwcmVzZW50IG9uZTsgYnV0IHRoZSBjb21tZW50IHNob3VsZCBiZSBmaXhlZAp0byBhdm9p
ZCBiZWluZyBtaXNsZWFkaW5nLgoKQSBuZXcgaW50ZXJmYWNlIGNvdWxkIGJlIG5hbWVkIHNvbWV0
aGluZyBsaWtlCk51dEVudGVyQ3JpdGljYWxTZWN0aW9uTmVzdGFibGUoKS4gSW4gbXkgb3Bpbmlv
biwgaXQgc2hvdWxkIHJldHVybiBhbgp1bnNpZ25lZCBpbnQgY29udGFpbmluZyB0aGUgcHJldmlv
dXMgc3RhdGUgb2YgdGhlIGludGVycnVwdCBlbmFibGUuIFRoaXMKY291bGQgdGhlbiBwYXNzZWQg
dG8gTnV0RXhpdENyaXRpY2FsU2VjdGlvbk5lc3RhYmxlKCkgdG8gcmVzdG9yZSB0aGUKc3RhdGUu
IEEgdHlwaWNhbCB1c2UgY2FzZSB3b3VsZCB0aGVuIGxvb2sgbGlrZSB0aGlzOgoKdW5zaWduZWQg
aW50IGllc3RhdGUgPSBOdXRFbnRlckNyaXRpY2FsU2VjdGlvbk5lc3RhYmxlKCk7Ci8qIFBlcmZv
cm0gc2hhcmVkIHJlc291cmNlIGFjY2Vzcy4gKi8KTnV0RXhpdENyaXRpY2FsU2VjdGlvbk5lc3Rh
YmxlKGllc3RhdGUpOwoKRFNCKCkgYW5kIElTQigpIGNvdWxkIGFsc28gYmUgaW50ZWdyYXRlZCBm
b3IgQVJNIGNvZGUuIFdoYXQgZG8geW91IHRoaW5rPwoKVGhlIEZyZWVSVE9TIHdheSB3aXRoIHRo
ZSBnbG9iYWwgbmVzdGluZyBjb3VudGVyIHdvdWxkIGJlIGFub3RoZXIgb3B0aW9uCndpdGhvdXQg
dGhlIG5lZWQgdG8gc3VwcGx5IGEgbG9jYWwgdmFyaWFibGUuIEJ1dCBwZXJzb25hbGx5LCBJJ2Qg
cHJlZmVyCnRoZSBleHBsaWNpdCB2ZXJzaW9uIG92ZXIgaW50ZWdyYXRlZCBnbG9iYWwgc3RhdGUu
Li4KCj4gSSB0aGluayB0aGUgZmlyc3QgaW5zdHJ1Y3Rpb24gb25seSByZWFkcyBjdXJyZW50IHBy
aW9yaXR5IG1hc2sgdG8gdGhlIGZ1bmN0aW9uIHJldHVybiBjb2RlIHJlZ2lzdGVyLgo+IFRoZW4g
YWxsIGludHMgYXJlIGdsb2JhbGx5IGRpc2FibGVkLgoKQ29ycmVjdCBtZSBpZiBJJ20gd3Jvbmcs
IGJ1dCB3aXRoIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uLCBpc24ndCB0aGUKdmFsdWUgc3Rv
cmVkIGluIHIwIGxvc3QgYW55d2F5PyByMCBtYXkgYmUgdGhlIGZ1bmN0aW9uIHJldHVybiB2YWx1
ZQpyZWdpc3RlciwgYnV0IHRoZSBjb2RlIGlzIGltcGxlbWVudGVkIGFzIGEgbWFjcm8sIHNvIHRo
ZSB1c2luZyBDIGNvZGUKY2FuJ3QgcmVhbGx5IGFjY2VzcyB0aGUgc3RvcmVkIHZhbHVlLiBPciBj
YW4gaXQ/IEknbSBub3QgdG9vIGZhbWlsaWFyCndpdGggaW5saW5lIGFzc2VtYmx5Li4uCgpCZXN0
IHJlZ2FyZHMsClBoaWxpcHAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX18KaHR0cDovL2xpc3RzLmVnbml0ZS5kZS9tYWlsbWFuL2xpc3RpbmZvL2VuLW51dC1k
aXNjdXNzaW9uCg==