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

Increase default PPP stack size from 512 bytes to 768 bytes. #4677

Merged
merged 1 commit into from Jul 13, 2017

Conversation

Projects
None yet
6 participants
@RobMeades
Contributor

RobMeades commented Jun 30, 2017

Description

PPP is running close to the edge of its default thread stack size of 512 bytes. When it experiences an FCS error on the incoming data (caused by character loss when the incoming serial rate is too high for it to process in time) it performs some additional work which overruns the thread's stack, hitting the OS "stack underflow" check.

Increasing the PPP stack size to 768 bytes resolves this problem.

Note: this change already discussed at some length with @kjbracey-arm.

Steps to reproduce

Run PPPCellularInterface with the UART serial port running at 460800 or higher and wait for the OS stack check to be hit.

@0xc0170 0xc0170 added the needs: CI label Jun 30, 2017

@bulislaw

This comment has been minimized.

Member

bulislaw commented Jun 30, 2017

Not really related to this PR, but we should have documentation somewhere stating how different features will impact memory usage/requirements.

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jul 3, 2017

@RobMeades Can you please amend your commit to provide more details (what you already did in the description here) - why are we changing from x to y stack value.

Increase PPP stack size from 512 bytes to 768 bytes.
PPP is running close to the edge of its default thread stack size of 512 bytes. When it experiences an FCS error on the incoming data (for example. caused by character loss when the incoming serial rate is too high for it to process in time) it performs some additional work which overruns the thread's stack, hitting the OS "stack underflow" check. Increasing the PPP stack size to 768 bytes resolves this problem.

@RobMeades RobMeades force-pushed the u-blox:ppp_stack_increase branch to 921d1fa Jul 3, 2017

@RobMeades

This comment has been minimized.

Contributor

RobMeades commented Jul 3, 2017

Certainly, done.

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jul 3, 2017

retest uvisor

@theotherjimmy

This comment has been minimized.

Contributor

theotherjimmy commented Jul 10, 2017

/morph test

@mbed-bot

This comment has been minimized.

mbed-bot commented Jul 11, 2017

Result: SUCCESS

Your command has finished executing! Here's what you wrote!

/morph test

Output

mbed Build Number: 771

All builds and test passed!

@0xc0170 0xc0170 added ready for merge and removed needs: CI labels Jul 11, 2017

@0xc0170 0xc0170 merged commit 7d1e87a into ARMmbed:master Jul 13, 2017

4 checks passed

Cam-CI uvisor Build & Test Success
Details
ci/morph-test Job has completed
Details
continuous-integration/jenkins/pr-head This commit looks good
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment