Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP RPC that uses IPC #432

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

WIP RPC that uses IPC #432

wants to merge 4 commits into from

Conversation

Patater
Copy link
Contributor

@Patater Patater commented Jun 8, 2017

WIP for RPC (no gateway yet)

@AlessandroA @niklas-arm

To avoid undefined behavior, replace the signed "times" counter with an unsigned one. We don't need to track negative times anyway.

./core/vmpu/src/mpu_armv8m/vmpu_armv8m_unpriv_access.c: In function 'vmpu_unpriv_access':
./core/vmpu/src/mpu_armv8m/vmpu_armv8m_unpriv_access.c:126:1: error: assuming signed overflow does not occur when changing X +- C1 cmp C2 to X cmp C2 -+ C1 [-Werror=strict-overflow]
 }
  ^
  ./core/vmpu/src/mpu_armv8m/vmpu_armv8m_unpriv_access.c:94:10: error: assuming signed overflow does not occur when changing X +- C1 cmp C2 to X cmp C2 -+ C1 [-Werror=strict-overflow]
   uint32_t vmpu_unpriv_access(uint32_t addr, uint32_t size, uint32_t data)
To ensure our sanity checks stay sane, it's good to make sure we aren't
invoking undefined overflow behavior. Make the compiler warn us when it
attempts to take advantage of undefined overflow in optimizing.
@p03189
Copy link

p03189 commented Aug 23, 2017

In api/src/rpc2.c (commit: rpc2: Add RPC2),
line 105

if (timeout_ms == 0) {

Shouldn't the condition be "timeout_ms != 0" ?

@Patater
Copy link
Contributor Author

Patater commented Aug 23, 2017

@p03189 No. The current API interprets a timeout of 0 as "let me know if it is done yet, without any blocking". Any other timeout value will be interpreted as "block forever until it is done".

@p03189
Copy link

p03189 commented Aug 23, 2017

Oh, thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants