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

Stop shell read loop if the input stream was closed #36675

Merged
merged 1 commit into from
Dec 2, 2024

Conversation

arkq
Copy link
Contributor

@arkq arkq commented Nov 29, 2024

Problem

In case when standard input is closed the shell read loop uses 100% CPU.

Changes

  • stop shell read loop on EOF

Testing

Tested locally, CI will verify for regressions.

Copy link

Review changes with  SemanticDiff

Copy link

github-actions bot commented Nov 29, 2024

PR #36675: Size comparison from fb24b90 to cb5d8fb

Full report (69 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section fb24b90 cb5d8fb change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1352938 1352938 0 0.0
RAM 104104 104104 0 0.0
bl702 lighting-app bl702+eth FLASH 651536 651536 0 0.0
RAM 25345 25345 0 0.0
bl702+wifi FLASH 829120 829120 0 0.0
RAM 14085 14085 0 0.0
bl706+mfd+rpc+littlefs FLASH 1057314 1057314 0 0.0
RAM 23933 23933 0 0.0
bl702l lighting-app bl702l+mfd+littlefs FLASH 978688 978688 0 0.0
RAM 16572 16572 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 839576 839576 0 0.0
RAM 123656 123656 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 825116 825116 0 0.0
RAM 125536 125536 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 771864 771864 0 0.0
RAM 114004 114004 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 756052 756052 0 0.0
RAM 114220 114220 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 630686 630686 0 0.0
RAM 205808 205808 0 0.0
lock CC3235SF_LAUNCHXL FLASH 669298 669298 0 0.0
RAM 205952 205952 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 681249 681249 0 0.0
RAM 78716 78716 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 701101 701101 0 0.0
RAM 81348 81348 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 701101 701101 0 0.0
RAM 81348 81348 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 658037 658037 0 0.0
RAM 73784 73784 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 617809 617809 0 0.0
RAM 71692 71692 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 637437 637437 0 0.0
RAM 74244 74244 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 637437 637437 0 0.0
RAM 74244 74244 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 637201 637201 0 0.0
RAM 74708 74708 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 656917 656917 0 0.0
RAM 77260 77260 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 656917 656917 0 0.0
RAM 77260 77260 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 613669 613669 0 0.0
RAM 68796 68796 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 633521 633521 0 0.0
RAM 71436 71436 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 633521 633521 0 0.0
RAM 71436 71436 0 0.0
efr32 lock-app BRD4187C FLASH 932116 932116 0 0.0
RAM 160180 160180 0 0.0
BRD4338a FLASH 745920 745912 -8 -0.0
RAM 233312 233312 0 0.0
window-app BRD4187C FLASH 1024480 1024480 0 0.0
RAM 128284 128284 0 0.0
esp32 all-clusters-app c3devkit DRAM 95360 95360 0 0.0
FLASH 1543232 1543232 0 0.0
IRAM 82542 82542 0 0.0
m5stack DRAM 116288 116288 0 0.0
FLASH 1550290 1550290 0 0.0
IRAM 117039 117039 0 0.0
linux air-purifier-app debug unknown 4720 4720 0 0.0
FLASH 2713573 2713573 0 0.0
RAM 129768 129768 0 0.0
all-clusters-app debug unknown 5560 5560 0 0.0
FLASH 6005592 6005592 0 0.0
RAM 523512 523512 0 0.0
all-clusters-minimal-app debug unknown 5456 5456 0 0.0
FLASH 5343400 5343400 0 0.0
RAM 242568 242568 0 0.0
bridge-app debug unknown 5440 5440 0 0.0
FLASH 4682886 4682886 0 0.0
RAM 218496 218496 0 0.0
chip-tool debug unknown 5992 5992 0 0.0
FLASH 12845674 12845674 0 0.0
RAM 582314 582314 0 0.0
chip-tool-ipv6only arm64 unknown 21312 21312 0 0.0
FLASH 10979680 10979680 0 0.0
RAM 633232 633232 0 0.0
fabric-admin debug unknown 5816 5816 0 0.0
FLASH 11249739 11249739 0 0.0
RAM 582690 582690 0 0.0
fabric-bridge-app debug unknown 4696 4696 0 0.0
FLASH 4507142 4507142 0 0.0
RAM 205504 205504 0 0.0
fabric-sync debug unknown 4936 4936 0 0.0
FLASH 5603733 5603781 48 0.0
RAM 472488 472488 0 0.0
lighting-app debug+rpc+ui unknown 6104 6104 0 0.0
FLASH 5619729 5619729 0 0.0
RAM 228760 228760 0 0.0
lock-app debug unknown 5376 5376 0 0.0
FLASH 4732240 4732240 0 0.0
RAM 204744 204744 0 0.0
ota-provider-app debug unknown 4752 4752 0 0.0
FLASH 4357994 4357994 0 0.0
RAM 198416 198416 0 0.0
ota-requestor-app debug unknown 4688 4688 0 0.0
FLASH 4497034 4497034 0 0.0
RAM 203000 203000 0 0.0
shell debug unknown 4248 4248 0 0.0
FLASH 3028413 3028461 48 0.0
RAM 160456 160456 0 0.0
thermostat-no-ble arm64 unknown 9520 9520 0 0.0
FLASH 4102464 4102464 0 0.0
RAM 243040 243040 0 0.0
tv-app debug unknown 5704 5704 0 0.0
FLASH 5956245 5956293 48 0.0
RAM 596000 596000 0 0.0
tv-casting-app debug unknown 5288 5288 0 0.0
FLASH 11052557 11052605 48 0.0
RAM 692120 692120 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 917380 917380 0 0.0
RAM 143292 143292 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 889868 889868 0 0.0
RAM 141479 141479 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 851548 851548 0 0.0
RAM 142200 142200 0 0.0
nxp contact k32w0+release FLASH 585264 585264 0 0.0
RAM 71072 71072 0 0.0
mcxw71+release FLASH 599800 599800 0 0.0
RAM 63168 63168 0 0.0
light k32w0+release FLASH 612204 612204 0 0.0
RAM 70464 70464 0 0.0
k32w1+release FLASH 686344 686344 0 0.0
RAM 48792 48792 0 0.0
lock mcxw71+release FLASH 762680 762688 8 0.0
RAM 70828 70828 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646068 1646068 0 0.0
RAM 212088 212088 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1553836 1553836 0 0.0
RAM 208888 208888 0 0.0
light cy8ckit_062s2_43012 FLASH 1469108 1469108 0 0.0
RAM 200872 200872 0 0.0
lock cy8ckit_062s2_43012 FLASH 1466836 1466836 0 0.0
RAM 225232 225232 0 0.0
qpg lighting-app qpg6105+debug FLASH 663736 663736 0 0.0
RAM 105400 105400 0 0.0
lock-app qpg6105+debug FLASH 621572 621572 0 0.0
RAM 99860 99860 0 0.0
stm32 light STM32WB5MM-DK FLASH 484492 484492 0 0.0
RAM 144864 144864 0 0.0
telink bridge-app tlsr9258a FLASH 682594 682594 0 0.0
RAM 91200 91200 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 623004 623004 0 0.0
RAM 31432 31432 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 764510 764510 0 0.0
RAM 50212 50212 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 710424 710424 0 0.0
RAM 73496 73496 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 627530 627530 0 0.0
RAM 142132 142132 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 813458 813458 0 0.0
RAM 99676 99676 0 0.0
tizen all-clusters-app arm unknown 4980 4980 0 0.0
FLASH 1731832 1731832 0 0.0
RAM 90724 90724 0 0.0
chip-tool-ubsan arm unknown 10792 10792 0 0.0
FLASH 17965582 17965582 0 0.0
RAM 7838600 7838600 0 0.0

@mergify mergify bot merged commit e7b0989 into project-chip:master Dec 2, 2024
67 checks passed
@arkq arkq deleted the shell-eof branch December 2, 2024 16:43
yyzhong-g pushed a commit to yyzhong-g/connectedhomeip that referenced this pull request Dec 12, 2024
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.

5 participants