Skip to content

Bluetooth: Mesh: Provisioning state doesn't always get properly re-initialized when doing reset #14928

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

Closed
jhedberg opened this issue Mar 27, 2019 · 0 comments
Assignees
Labels
area: Bluetooth bug The issue is a bug, or the PR is fixing a bug priority: medium Medium impact/importance bug
Milestone

Comments

@jhedberg
Copy link
Member

If both PB-ADV and PB-GATT are supported and the node is reset after provisioning, there are several parts of the provisioning state that do not get correctly re-initialized and result in the following fault:

***** USAGE FAULT *****
  Illegal use of the EPSR
***** Hardware exception *****
Current thread ID = 0x20001f10
Faulting instruction address = 0x0
Fatal fault in thread 0x20001f10! Aborting.
@jhedberg jhedberg added bug The issue is a bug, or the PR is fixing a bug area: Bluetooth labels Mar 27, 2019
@jhedberg jhedberg added this to the v1.14.0 milestone Mar 27, 2019
@jhedberg jhedberg self-assigned this Mar 27, 2019
@jhedberg jhedberg added the priority: medium Medium impact/importance bug label Mar 27, 2019
jhedberg pushed a commit to jhedberg/zephyr that referenced this issue Mar 28, 2019
If both PB-ADV and PB-GATT are supported, we need to properly
re-initialize variables such as link.rx.prev_id and (particularly
importantly) link.rx.buf. If we don't do this it may lead to the
following fault when trying to reprovision again:

***** USAGE FAULT *****
  Illegal use of the EPSR
***** Hardware exception *****
Current thread ID = 0x20001f10
Faulting instruction address = 0x0
Fatal fault in thread 0x20001f10! Aborting.

Fixes zephyrproject-rtos#14928

Signed-off-by: Johan Hedberg <[email protected]>
jhedberg pushed a commit that referenced this issue Mar 28, 2019
If both PB-ADV and PB-GATT are supported, we need to properly
re-initialize variables such as link.rx.prev_id and (particularly
importantly) link.rx.buf. If we don't do this it may lead to the
following fault when trying to reprovision again:

***** USAGE FAULT *****
  Illegal use of the EPSR
***** Hardware exception *****
Current thread ID = 0x20001f10
Faulting instruction address = 0x0
Fatal fault in thread 0x20001f10! Aborting.

Fixes #14928

Signed-off-by: Johan Hedberg <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: Bluetooth bug The issue is a bug, or the PR is fixing a bug priority: medium Medium impact/importance bug
Projects
None yet
Development

No branches or pull requests

1 participant