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

inet: Do not copy pbuf when it already meets the PacketBuffer memory #23376

Merged
merged 3 commits into from
Nov 3, 2022

Conversation

wqx6
Copy link
Contributor

@wqx6 wqx6 commented Oct 28, 2022

In #20923, the LwIP pbuf will always be copied to a new created PacketBuffer.
We should adopt the LwIP pbuf to the Packet Buffer if it already meets the PacketBuffer memory model.

@github-actions
Copy link

github-actions bot commented Oct 28, 2022

PR #23376: Size comparison from 753cb9c to 84c267d

Increases (21 builds for bl602, bl702, cc13x2_26x2, efr32, esp32, psoc6, telink)
platform target config section 753cb9c 84c267d change % change
bl602 lighting-app bl602 (read/write) 1390518 1390798 280 0.0
.text 1069814 1070028 214 0.0
bl602+rpc (read/write) 1435982 1436254 272 0.0
.text 1101418 1101628 210 0.0
bl702 lighting-app bl702 (read/write) 1189323 1189595 272 0.0
.debug_frame 484428 484436 8 0.0
.debug_info 37964828 37965937 1109 0.0
.debug_line 5257208 5258103 895 0.0
.debug_loc 3366388 3366772 384 0.0
.debug_ranges 358064 358112 48 0.0
.debug_str 3451542 3451554 12 0.0
.rodata 116616 116680 64 0.1
.strtab 565954 565994 40 0.0
.symtab 171968 171984 16 0.0
.text 957780 958000 220 0.0
bl702+rpc (read/write) 1285251 1285539 288 0.0
.debug_frame 509800 509808 8 0.0
.debug_info 41877797 41878904 1107 0.0
.debug_line 5632788 5633683 895 0.0
.debug_loc 3559215 3559599 384 0.0
.debug_ranges 380864 380912 48 0.0
.debug_str 3847670 3847682 12 0.0
.rodata 130024 130088 64 0.0
.strtab 625127 625167 40 0.0
.symtab 189776 189792 16 0.0
.text 1031488 1031704 216 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677863 678115 252 0.0
.rodata 89887 89947 60 0.1
.text 587664 587856 192 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 642119 642355 236 0.0
.rodata 79023 79083 60 0.1
.text 562776 562952 176 0.0
lock-ftd LP_CC2652R7 (read only) 676379 676599 220 0.0
.rodata 77411 77471 60 0.1
.text 598488 598648 160 0.0
lock-mtd LP_CC2652R7 (read only) 660167 660387 220 0.0
.rodata 103263 103323 60 0.1
.text 556424 556584 160 0.0
pump-app LP_CC2652R7 (read only) 688635 688855 220 0.0
.rodata 90859 90919 60 0.1
.text 597292 597452 160 0.0
pump-controller-app LP_CC2652R7 (read only) 672911 673131 220 0.0
.rodata 86407 86467 60 0.1
.text 586024 586184 160 0.0
shell LP_CC2652R7 (read only) 668890 669134 244 0.0
.rodata 86594 86654 60 0.1
.text 581980 582164 184 0.0
efr32 lighting-app BRD4161A+rs911x (read/write) 1034672 1034912 240 0.0
.text 845812 846052 240 0.0
lock-app BRD4161A+wf200 (read/write) 1160424 1160632 208 0.0
.text 1000032 1000236 204 0.0
esp32 all-clusters-app c3devkit (read only) 1223970 1224220 250 0.0
(read/write) 1788470 1788534 64 0.0
.flash.rodata 258024 258088 64 0.0
.flash.text 1223970 1224220 250 0.0
m5stack (read only) 1234039 1234243 204 0.0
(read/write) 564396 564452 56 0.0
.flash.rodata 315096 315152 56 0.0
.flash.text 1228655 1228859 204 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read/write) 1745940 1746196 256 0.0
.debug_info 26899492 26901141 1649 0.0
.debug_line 3673871 3674515 644 0.0
.debug_loc 3588816 3589721 905 0.0
.debug_ranges 337960 338088 128 0.0
.debug_str 3435299 3435311 12 0.0
.strtab 570460 570500 40 0.0
.symtab 421744 421776 32 0.0
.text 1546160 1546416 256 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1688548 1688804 256 0.0
.debug_info 26636120 26637771 1651 0.0
.debug_line 3694663 3695307 644 0.0
.debug_loc 3576453 3577358 905 0.0
.debug_ranges 336576 336704 128 0.0
.debug_str 3424320 3424332 12 0.0
.strtab 534549 534589 40 0.0
.symtab 408176 408208 32 0.0
.text 1489504 1489760 256 0.0
light cy8ckit_062s2_43012 (read/write) 1607004 1607260 256 0.0
.debug_info 22097474 22099125 1651 0.0
.debug_line 3264197 3264841 644 0.0
.debug_loc 3274179 3275084 905 0.0
.debug_ranges 301872 302000 128 0.0
.debug_str 3229759 3229771 12 0.0
.strtab 470874 470914 40 0.0
.symtab 376560 376592 32 0.0
.text 1416144 1416400 256 0.0
lock cy8ckit_062s2_43012 (read/write) 1640780 1641036 256 0.0
.debug_info 22330843 22332492 1649 0.0
.debug_line 3261187 3261831 644 0.0
.debug_loc 3301773 3302678 905 0.0
.debug_ranges 303816 303944 128 0.0
.debug_str 3249234 3249246 12 0.0
.strtab 473277 473317 40 0.0
.symtab 378240 378272 32 0.0
.text 1444928 1445184 256 0.0
telink light-switch-app tlsr9518adk80d text 554266 554268 2 0.0
lighting-app tlsr9518adk80d text 566414 566416 2 0.0
Decreases (7 builds for cc13x2_26x2, telink)
platform target config section 753cb9c 84c267d change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 173696 173444 -252 -0.1
lock-ftd LP_CC2652R7 (read/write) 172316 172096 -220 -0.1
lock-mtd LP_CC2652R7 (read/write) 184216 183996 -220 -0.1
pump-app LP_CC2652R7 (read/write) 160796 160576 -220 -0.1
pump-controller-app LP_CC2652R7 (read/write) 176616 176396 -220 -0.1
shell LP_CC2652R7 (read/write) 184988 184744 -244 -0.1
telink ota-requestor-app tlsr9518adk80d text 565286 565284 -2 -0.0
Full report (47 builds for bl602, bl702, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, psoc6, qpg, telink)
platform target config section 753cb9c 84c267d change % change
bl602 lighting-app bl602 (read/write) 1390518 1390798 280 0.0
.bss 90745 90745 0 0.0
.data 9936 9936 0 0.0
.text 1069814 1070028 214 0.0
bl602+rpc (read/write) 1435982 1436254 272 0.0
.bss 98177 98177 0 0.0
.data 10320 10320 0 0.0
.text 1101418 1101628 210 0.0
bl702 lighting-app bl702 (read only) 3262 3262 0 0.0
(read/write) 1189323 1189595 272 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 67134 67134 0 0.0
.bss_psram 29696 29696 0 0.0
.comment 48 48 0 0.0
.data 4280 4280 0 0.0
.debug_abbrev 1509373 1509373 0 0.0
.debug_aranges 132040 132040 0 0.0
.debug_frame 484428 484436 8 0.0
.debug_info 37964828 37965937 1109 0.0
.debug_line 5257208 5258103 895 0.0
.debug_loc 3366388 3366772 384 0.0
.debug_ranges 358064 358112 48 0.0
.debug_str 3451542 3451554 12 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 144 144 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 116616 116680 64 0.1
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 565954 565994 40 0.0
.symtab 171968 171984 16 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
957780 958000 220 0.0
bl702+rpc (read only) 3262 3262 0 0.0
(read/write) 1285251 1285539 288 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 75166 75166 0 0.0
.bss_psram 29936 29936 0 0.0
.comment 48 48 0 0.0
.data 4816 4816 0 0.0
.debug_abbrev 1646772 1646772 0 0.0
.debug_aranges 139544 139544 0 0.0
.debug_frame 509800 509808 8 0.0
.debug_info 41877797 41878904 1107 0.0
.debug_line 5632788 5633683 895 0.0
.debug_loc 3559215 3559599 384 0.0
.debug_ranges 380864 380912 48 0.0
.debug_str 3847670 3847682 12 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 160 160 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 130024 130088 64 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 625127 625167 40 0.0
.symtab 189776 189792 16 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
1031488 1031704 216 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677863 678115 252 0.0
(read/write) 173696 173444 -252 -0.1
.bss 81252 81252 0 0.0
.data 3380 3380 0 0.0
.rodata 89887 89947 60 0.1
.text 587664 587856 192 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 642119 642355 236 0.0
(read/write) 158020 158020 0 0.0
.bss 80524 80524 0 0.0
.data 3380 3380 0 0.0
.rodata 79023 79083 60 0.1
.text 562776 562952 176 0.0
lock-ftd LP_CC2652R7 (read only) 676379 676599 220 0.0
(read/write) 172316 172096 -220 -0.1
.bss 78476 78476 0 0.0
.data 3304 3304 0 0.0
.rodata 77411 77471 60 0.1
.text 598488 598648 160 0.0
lock-mtd LP_CC2652R7 (read only) 660167 660387 220 0.0
(read/write) 184216 183996 -220 -0.1
.bss 74164 74164 0 0.0
.data 3304 3304 0 0.0
.rodata 103263 103323 60 0.1
.text 556424 556584 160 0.0
pump-app LP_CC2652R7 (read only) 688635 688855 220 0.0
(read/write) 160796 160576 -220 -0.1
.bss 78444 78444 0 0.0
.data 3296 3296 0 0.0
.rodata 90859 90919 60 0.1
.text 597292 597452 160 0.0
pump-controller-app LP_CC2652R7 (read only) 672911 673131 220 0.0
(read/write) 176616 176396 -220 -0.1
.bss 78540 78540 0 0.0
.data 3292 3292 0 0.0
.rodata 86407 86467 60 0.1
.text 586024 586184 160 0.0
shell LP_CC2652R7 (read only) 668890 669134 244 0.0
(read/write) 184988 184744 -244 -0.1
.bss 83572 83572 0 0.0
.data 3376 3376 0 0.0
.rodata 86594 86654 60 0.1
.text 581980 582164 184 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 588542 588542 0 0.0
.app_xip_area 465128 465128 0 0.0
.bss 65832 65832 0 0.0
.data 760 760 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592590 592590 0 0.0
.app_xip_area 463880 463880 0 0.0
.bss 71120 71120 0 0.0
.data 768 768 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 544482 544482 0 0.0
.app_xip_area 426148 426148 0 0.0
.bss 60800 60800 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rpc (read/write) 974732 974732 0 0.0
.bss 152276 152276 0 0.0
.data 2248 2248 0 0.0
.text 820188 820188 0 0.0
BRD4161A+rs911x (read/write) 1034672 1034912 240 0.0
.bss 186744 186744 0 0.0
.data 2092 2092 0 0.0
.text 845812 846052 240 0.0
BRD4187C (read/write) 1146720 1146720 0 0.0
.bss 138664 138664 0 0.0
.data 2596 2596 0 0.0
.text 980864 980864 0 0.0
lock-app BRD4161A+wf200 (read/write) 1160424 1160632 208 0.0
.bss 158272 158272 0 0.0
.data 2100 2100 0 0.0
.text 1000032 1000236 204 0.0
window-app BRD4187C (read/write) 1139940 1139940 0 0.0
.bss 140080 140080 0 0.0
.data 2620 2620 0 0.0
.text 972644 972644 0 0.0
esp32 all-clusters-app c3devkit (read only) 1223970 1224220 250 0.0
(read/write) 1788470 1788534 64 0.0
.dram0.bss 76960 76960 0 0.0
.dram0.data 13840 13840 0 0.0
.flash.rodata 258024 258088 64 0.0
.flash.text 1223970 1224220 250 0.0
.iram0.text 65204 65204 0 0.0
m5stack (read only) 1234039 1234243 204 0.0
(read/write) 564396 564452 56 0.0
.dram0.bss 82336 82336 0 0.0
.dram0.data 34296 34296 0 0.0
.flash.rodata 315096 315152 56 0.0
.flash.text 1228655 1228859 204 0.0
.iram0.text 123939 123939 0 0.0
k32w contact k32w0+release (read/write) 661676 661676 0 0.0
.bss 77040 77040 0 0.0
.data 2104 2104 0 0.0
.text 563420 563420 0 0.0
light k32w0+release (read/write) 672008 672008 0 0.0
.bss 74840 74840 0 0.0
.data 2060 2060 0 0.0
.text 592380 592380 0 0.0
lock k32w0+release (read/write) 633484 633484 0 0.0
.bss 75600 75600 0 0.0
.data 2080 2080 0 0.0
.text 553076 553076 0 0.0
linux all-clusters-app debug (read only) 3086657 3086657 0 0.0
(read/write) 158360 158360 0 0.0
.bss 62464 62464 0 0.0
.data 2272 2272 0 0.0
.data.rel.ro 87016 87016 0 0.0
.dynamic 608 608 0 0.0
.got 4776 4776 0 0.0
.init 27 27 0 0.0
.init_array 1200 1200 0 0.0
.rodata 281419 281419 0 0.0
.text 2620850 2620850 0 0.0
all-clusters-minimal-app debug (read only) 2912449 2912449 0 0.0
(read/write) 149792 149792 0 0.0
.bss 61664 61664 0 0.0
.data 2240 2240 0 0.0
.data.rel.ro 79384 79384 0 0.0
.dynamic 608 608 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 1176 1176 0 0.0
.rodata 280907 280907 0 0.0
.text 2450098 2450098 0 0.0
bridge-app debug+rpc (read only) 2412801 2412801 0 0.0
(read/write) 129560 129560 0 0.0
.bss 51008 51008 0 0.0
.data 3792 3792 0 0.0
.data.rel.ro 68680 68680 0 0.0
.dynamic 608 608 0 0.0
.got 4600 4600 0 0.0
.init 27 27 0 0.0
.init_array 848 848 0 0.0
.rodata 211232 211232 0 0.0
.text 2034018 2034018 0 0.0
chip-tool debug (read only) 11081345 11081345 0 0.0
(read/write) 658440 658440 0 0.0
.bss 25944 25944 0 0.0
.data 2754 2754 0 0.0
.data.rel.ro 623080 623080 0 0.0
.dynamic 608 608 0 0.0
.got 5216 5216 0 0.0
.init 27 27 0 0.0
.init_array 776 776 0 0.0
.rodata 592221 592221 0 0.0
.text 8965204 8965204 0 0.0
chip-tool-ipv6only arm64 (read only) 10436396 10436396 0 0.0
(read/write) 706465 706465 0 0.0
.bss 33953 33953 0 0.0
.data 2768 2768 0 0.0
.data.rel.ro 650720 650720 0 0.0
.dynamic 560 560 0 0.0
.got 13928 13928 0 0.0
.init 24 24 0 0.0
.init_array 208 208 0 0.0
.rodata 518220 518220 0 0.0
.text 8262340 8262340 0 0.0
lighting-app debug+rpc (read only) 2640233 2640233 0 0.0
(read/write) 132248 132248 0 0.0
.bss 49984 49984 0 0.0
.data 2288 2288 0 0.0
.data.rel.ro 73800 73800 0 0.0
.dynamic 608 608 0 0.0
.got 4600 4600 0 0.0
.init 27 27 0 0.0
.init_array 944 944 0 0.0
.rodata 228096 228096 0 0.0
.text 2236162 2236162 0 0.0
lock-app debug (read only) 2602241 2602241 0 0.0
(read/write) 127296 127296 0 0.0
.bss 48416 48416 0 0.0
.data 1904 1904 0 0.0
.data.rel.ro 70728 70728 0 0.0
.dynamic 608 608 0 0.0
.got 4672 4672 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 244328 244328 0 0.0
.text 2186306 2186306 0 0.0
ota-provider-app debug (read only) 2398777 2398777 0 0.0
(read/write) 120824 120824 0 0.0
.bss 47936 47936 0 0.0
.data 2128 2128 0 0.0
.data.rel.ro 64648 64648 0 0.0
.dynamic 608 608 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 784 784 0 0.0
.rodata 216904 216904 0 0.0
.text 2013330 2013330 0 0.0
ota-requestor-app debug (read only) 2563961 2563961 0 0.0
(read/write) 129136 129136 0 0.0
.bss 50464 50464 0 0.0
.data 2496 2496 0 0.0
.data.rel.ro 69992 69992 0 0.0
.dynamic 608 608 0 0.0
.got 4688 4688 0 0.0
.init 27 27 0 0.0
.init_array 872 872 0 0.0
.rodata 223952 223952 0 0.0
.text 2162370 2162370 0 0.0
shell debug (read only) 2626433 2626433 0 0.0
(read/write) 143016 143016 0 0.0
.bss 57864 57864 0 0.0
.data 1264 1264 0 0.0
.data.rel.ro 78064 78064 0 0.0
.dynamic 608 608 0 0.0
.got 4136 4136 0 0.0
.init 27 27 0 0.0
.init_array 1048 1048 0 0.0
.rodata 240178 240178 0 0.0
.text 2226610 2226610 0 0.0
thermostat-no-ble arm64 (read only) 2392844 2392844 0 0.0
(read/write) 143665 143665 0 0.0
.bss 55377 55377 0 0.0
.data 1816 1816 0 0.0
.data.rel.ro 77280 77280 0 0.0
.dynamic 560 560 0 0.0
.got 5184 5184 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 144548 144548 0 0.0
.text 2005296 2005296 0 0.0
tv-app debug (read only) 3236713 3236713 0 0.0
(read/write) 261752 261752 0 0.0
.bss 170552 170552 0 0.0
.data 4256 4256 0 0.0
.data.rel.ro 80272 80272 0 0.0
.dynamic 608 608 0 0.0
.got 4976 4976 0 0.0
.init 27 27 0 0.0
.init_array 1080 1080 0 0.0
.rodata 268184 268184 0 0.0
.text 2775186 2775186 0 0.0
tv-casting-app debug (read only) 5585641 5585641 0 0.0
(read/write) 161896 161896 0 0.0
.bss 52120 52120 0 0.0
.data 1936 1936 0 0.0
.data.rel.ro 101224 101224 0 0.0
.dynamic 608 608 0 0.0
.got 4896 4896 0 0.0
.init 27 27 0 0.0
.init_array 1064 1064 0 0.0
.rodata 355961 355961 0 0.0
.text 4954226 4954226 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2452768 2452768 0 0.0
.bss 215028 215028 0 0.0
.data 5872 5872 0 0.0
.text 1415412 1415412 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 841952 841952 0 0.0
(read/write) 1745940 1746196 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188728 188728 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1231262 1231262 0 0.0
.debug_aranges 110712 110712 0 0.0
.debug_frame 371204 371204 0 0.0
.debug_info 26899492 26901141 1649 0.0
.debug_line 3673871 3674515 644 0.0
.debug_loc 3588816 3589721 905 0.0
.debug_ranges 337960 338088 128 0.0
.debug_str 3435299 3435311 12 0.0
.heap 841952 841952 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 570460 570500 40 0.0
.symtab 421744 421776 32 0.0
.text 0 0 0 0.0
1546160 1546416 256 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 842688 842688 0 0.0
(read/write) 1688548 1688804 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187992 187992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1223105 1223105 0 0.0
.debug_aranges 110184 110184 0 0.0
.debug_frame 374284 374284 0 0.0
.debug_info 26636120 26637771 1651 0.0
.debug_line 3694663 3695307 644 0.0
.debug_loc 3576453 3577358 905 0.0
.debug_ranges 336576 336704 128 0.0
.debug_str 3424320 3424332 12 0.0
.heap 842688 842688 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 534549 534589 40 0.0
.symtab 408176 408208 32 0.0
.text 1489504 1489760 256 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 850872 850872 0 0.0
(read/write) 1607004 1607260 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 180016 180016 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2456 2456 0 0.0
.debug_abbrev 1057613 1057613 0 0.0
.debug_aranges 102384 102384 0 0.0
.debug_frame 344600 344600 0 0.0
.debug_info 22097474 22099125 1651 0.0
.debug_line 3264197 3264841 644 0.0
.debug_loc 3274179 3275084 905 0.0
.debug_ranges 301872 302000 128 0.0
.debug_str 3229759 3229771 12 0.0
.heap 850872 850872 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 470874 470914 40 0.0
.symtab 376560 376592 32 0.0
.text 1416144 1416400 256 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 845880 845880 0 0.0
(read/write) 1640780 1641036 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184992 184992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2472 2472 0 0.0
.debug_abbrev 1059619 1059619 0 0.0
.debug_aranges 102784 102784 0 0.0
.debug_frame 346472 346472 0 0.0
.debug_info 22330843 22332492 1649 0.0
.debug_line 3261187 3261831 644 0.0
.debug_loc 3301773 3302678 905 0.0
.debug_ranges 303816 303944 128 0.0
.debug_str 3249234 3249246 12 0.0
.heap 845880 845880 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 473277 473317 40 0.0
.symtab 378240 378272 32 0.0
.text 1444928 1445184 256 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1149312 1149312 0 0.0
.bss 110580 110580 0 0.0
.data 832 832 0 0.0
.text 596412 596412 0 0.0
lock-app qpg6105+debug (read/write) 1114248 1114248 0 0.0
.bss 106372 106372 0 0.0
.data 836 836 0 0.0
.text 561344 561344 0 0.0
telink light-switch-app tlsr9518adk80d (read/write) 790820 790820 0 0.0
bss 72480 72480 0 0.0
noinit 43520 43520 0 0.0
text 554266 554268 2 0.0
lighting-app tlsr9518adk80d (read/write) 806068 806068 0 0.0
bss 73240 73240 0 0.0
noinit 43520 43520 0 0.0
text 566414 566416 2 0.0
ota-requestor-app tlsr9518adk80d (read/write) 804952 804952 0 0.0
bss 74052 74052 0 0.0
noinit 43520 43520 0 0.0
text 565286 565284 -2 -0.0

src/inet/UDPEndPointImplLwIP.cpp Outdated Show resolved Hide resolved
@bzbarsky-apple
Copy link
Contributor

That said, is there a reason this wasn't done via the approach described in #20923 (comment) ? That seem like it would avoid the copy even for the non-contiguous buffer case....

@wqx6 wqx6 force-pushed the inet/struct_data_contiguous branch from 84c267d to c97997f Compare October 31, 2022 02:43
@wqx6
Copy link
Contributor Author

wqx6 commented Oct 31, 2022

That said, is there a reason this wasn't done via the approach described in #20923 (comment) ? That seem like it would avoid the copy even for the non-contiguous buffer case....

I am not sure whether we should use adopt the non-contiguous buffer to the PacketBuffer model in Matter. Many APIs of the PacketBuffer is designed based on the contiguous model.

@github-actions
Copy link

github-actions bot commented Oct 31, 2022

PR #23376: Size comparison from 81a64dc to c97997f

Increases (20 builds for bl602, bl702, cc13x2_26x2, efr32, esp32, psoc6, telink)
platform target config section 81a64dc c97997f change % change
bl602 lighting-app bl602 (read/write) 1390518 1390798 280 0.0
.text 1069810 1070026 216 0.0
bl602+rpc (read/write) 1435974 1436254 280 0.0
.text 1101416 1101630 214 0.0
bl702 lighting-app bl702 (read/write) 1189323 1189595 272 0.0
.debug_frame 484428 484436 8 0.0
.debug_info 37964828 37965937 1109 0.0
.debug_line 5257208 5258103 895 0.0
.debug_loc 3366388 3366772 384 0.0
.debug_ranges 358064 358112 48 0.0
.debug_str 3451542 3451554 12 0.0
.rodata 116616 116680 64 0.1
.strtab 565954 565994 40 0.0
.symtab 171968 171984 16 0.0
.text 957780 958000 220 0.0
bl702+rpc (read/write) 1285251 1285539 288 0.0
.debug_frame 509800 509808 8 0.0
.debug_info 41877795 41878903 1108 0.0
.debug_line 5632788 5633683 895 0.0
.debug_loc 3559215 3559599 384 0.0
.debug_ranges 380864 380912 48 0.0
.debug_str 3847670 3847682 12 0.0
.rodata 130024 130088 64 0.0
.strtab 625127 625167 40 0.0
.symtab 189776 189792 16 0.0
.text 1031484 1031702 218 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677871 678107 236 0.0
.rodata 89887 89947 60 0.1
.text 587672 587848 176 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 642119 642363 244 0.0
.rodata 79023 79083 60 0.1
.text 562776 562960 184 0.0
lock-ftd LP_CC2652R7 (read only) 676379 676599 220 0.0
.rodata 77411 77471 60 0.1
.text 598488 598648 160 0.0
lock-mtd LP_CC2652R7 (read only) 660167 660387 220 0.0
.rodata 103263 103323 60 0.1
.text 556424 556584 160 0.0
pump-app LP_CC2652R7 (read only) 688635 688855 220 0.0
.rodata 90859 90919 60 0.1
.text 597292 597452 160 0.0
pump-controller-app LP_CC2652R7 (read only) 672911 673131 220 0.0
.rodata 86407 86467 60 0.1
.text 586024 586184 160 0.0
shell LP_CC2652R7 (read only) 668890 669134 244 0.0
.rodata 86594 86654 60 0.1
.text 581980 582164 184 0.0
efr32 lighting-app BRD4161A+rs911x (read/write) 1034672 1034912 240 0.0
.text 845812 846052 240 0.0
lock-app BRD4161A+wf200 (read/write) 1160424 1160632 208 0.0
.text 1000032 1000236 204 0.0
esp32 all-clusters-app c3devkit (read only) 1223970 1224212 242 0.0
(read/write) 1788478 1788534 56 0.0
.flash.rodata 258032 258088 56 0.0
.flash.text 1223970 1224212 242 0.0
m5stack (read only) 1234039 1234243 204 0.0
(read/write) 564396 564460 64 0.0
.flash.rodata 315096 315160 64 0.0
.flash.text 1228655 1228859 204 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read/write) 1745940 1746196 256 0.0
.debug_info 26899490 26901141 1651 0.0
.debug_line 3673871 3674515 644 0.0
.debug_loc 3588816 3589721 905 0.0
.debug_ranges 337960 338088 128 0.0
.debug_str 3435299 3435311 12 0.0
.strtab 570460 570500 40 0.0
.symtab 421744 421776 32 0.0
.text 1546160 1546416 256 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1688548 1688804 256 0.0
.debug_info 26636121 26637771 1650 0.0
.debug_line 3694663 3695307 644 0.0
.debug_loc 3576453 3577358 905 0.0
.debug_ranges 336576 336704 128 0.0
.debug_str 3424320 3424332 12 0.0
.strtab 534549 534589 40 0.0
.symtab 408176 408208 32 0.0
.text 1489504 1489760 256 0.0
light cy8ckit_062s2_43012 (read/write) 1607004 1607260 256 0.0
.debug_info 22097474 22099125 1651 0.0
.debug_line 3264197 3264841 644 0.0
.debug_loc 3274179 3275084 905 0.0
.debug_ranges 301872 302000 128 0.0
.debug_str 3229759 3229771 12 0.0
.strtab 470874 470914 40 0.0
.symtab 376560 376592 32 0.0
.text 1416144 1416400 256 0.0
lock cy8ckit_062s2_43012 (read/write) 1640780 1641036 256 0.0
.debug_info 22330841 22332493 1652 0.0
.debug_line 3261187 3261831 644 0.0
.debug_loc 3301773 3302678 905 0.0
.debug_ranges 303816 303944 128 0.0
.debug_str 3249234 3249246 12 0.0
.strtab 473277 473317 40 0.0
.symtab 378240 378272 32 0.0
.text 1444928 1445184 256 0.0
telink lighting-app tlsr9518adk80d (read/write) 806060 806068 8 0.0
text 566412 566414 2 0.0
Decreases (8 builds for cc13x2_26x2, qpg, telink)
platform target config section 81a64dc c97997f change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 173688 173452 -236 -0.1
lock-ftd LP_CC2652R7 (read/write) 172316 172096 -220 -0.1
lock-mtd LP_CC2652R7 (read/write) 184216 183996 -220 -0.1
pump-app LP_CC2652R7 (read/write) 160796 160576 -220 -0.1
pump-controller-app LP_CC2652R7 (read/write) 176616 176396 -220 -0.1
shell LP_CC2652R7 (read/write) 184988 184744 -244 -0.1
qpg lock-app qpg6105+debug (read/write) 1114760 1114752 -8 -0.0
.text 561856 561848 -8 -0.0
telink light-switch-app tlsr9518adk80d text 554266 554264 -2 -0.0
Full report (49 builds for bl602, bl702, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section 81a64dc c97997f change % change
bl602 lighting-app bl602 (read/write) 1390518 1390798 280 0.0
.bss 90745 90745 0 0.0
.data 9936 9936 0 0.0
.text 1069810 1070026 216 0.0
bl602+rpc (read/write) 1435974 1436254 280 0.0
.bss 98177 98177 0 0.0
.data 10320 10320 0 0.0
.text 1101416 1101630 214 0.0
bl702 lighting-app bl702 (read only) 3262 3262 0 0.0
(read/write) 1189323 1189595 272 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 67134 67134 0 0.0
.bss_psram 29696 29696 0 0.0
.comment 48 48 0 0.0
.data 4280 4280 0 0.0
.debug_abbrev 1509373 1509373 0 0.0
.debug_aranges 132040 132040 0 0.0
.debug_frame 484428 484436 8 0.0
.debug_info 37964828 37965937 1109 0.0
.debug_line 5257208 5258103 895 0.0
.debug_loc 3366388 3366772 384 0.0
.debug_ranges 358064 358112 48 0.0
.debug_str 3451542 3451554 12 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 144 144 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 116616 116680 64 0.1
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 565954 565994 40 0.0
.symtab 171968 171984 16 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
957780 958000 220 0.0
bl702+rpc (read only) 3262 3262 0 0.0
(read/write) 1285251 1285539 288 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 75166 75166 0 0.0
.bss_psram 29936 29936 0 0.0
.comment 48 48 0 0.0
.data 4816 4816 0 0.0
.debug_abbrev 1646772 1646772 0 0.0
.debug_aranges 139544 139544 0 0.0
.debug_frame 509800 509808 8 0.0
.debug_info 41877795 41878903 1108 0.0
.debug_line 5632788 5633683 895 0.0
.debug_loc 3559215 3559599 384 0.0
.debug_ranges 380864 380912 48 0.0
.debug_str 3847670 3847682 12 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 160 160 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 130024 130088 64 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 625127 625167 40 0.0
.symtab 189776 189792 16 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
1031484 1031702 218 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677871 678107 236 0.0
(read/write) 173688 173452 -236 -0.1
.bss 81252 81252 0 0.0
.data 3380 3380 0 0.0
.rodata 89887 89947 60 0.1
.text 587672 587848 176 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 642119 642363 244 0.0
(read/write) 158020 158020 0 0.0
.bss 80524 80524 0 0.0
.data 3380 3380 0 0.0
.rodata 79023 79083 60 0.1
.text 562776 562960 184 0.0
lock-ftd LP_CC2652R7 (read only) 676379 676599 220 0.0
(read/write) 172316 172096 -220 -0.1
.bss 78476 78476 0 0.0
.data 3304 3304 0 0.0
.rodata 77411 77471 60 0.1
.text 598488 598648 160 0.0
lock-mtd LP_CC2652R7 (read only) 660167 660387 220 0.0
(read/write) 184216 183996 -220 -0.1
.bss 74164 74164 0 0.0
.data 3304 3304 0 0.0
.rodata 103263 103323 60 0.1
.text 556424 556584 160 0.0
pump-app LP_CC2652R7 (read only) 688635 688855 220 0.0
(read/write) 160796 160576 -220 -0.1
.bss 78444 78444 0 0.0
.data 3296 3296 0 0.0
.rodata 90859 90919 60 0.1
.text 597292 597452 160 0.0
pump-controller-app LP_CC2652R7 (read only) 672911 673131 220 0.0
(read/write) 176616 176396 -220 -0.1
.bss 78540 78540 0 0.0
.data 3292 3292 0 0.0
.rodata 86407 86467 60 0.1
.text 586024 586184 160 0.0
shell LP_CC2652R7 (read only) 668890 669134 244 0.0
(read/write) 184988 184744 -244 -0.1
.bss 83572 83572 0 0.0
.data 3376 3376 0 0.0
.rodata 86594 86654 60 0.1
.text 581980 582164 184 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 588542 588542 0 0.0
.app_xip_area 465128 465128 0 0.0
.bss 65832 65832 0 0.0
.data 760 760 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592590 592590 0 0.0
.app_xip_area 463880 463880 0 0.0
.bss 71120 71120 0 0.0
.data 768 768 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 544482 544482 0 0.0
.app_xip_area 426148 426148 0 0.0
.bss 60800 60800 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rpc (read/write) 974732 974732 0 0.0
.bss 152276 152276 0 0.0
.data 2248 2248 0 0.0
.text 820188 820188 0 0.0
BRD4161A+rs911x (read/write) 1034672 1034912 240 0.0
.bss 186744 186744 0 0.0
.data 2092 2092 0 0.0
.text 845812 846052 240 0.0
BRD4187C (read/write) 1146720 1146720 0 0.0
.bss 138664 138664 0 0.0
.data 2596 2596 0 0.0
.text 980864 980864 0 0.0
lock-app BRD4161A+wf200 (read/write) 1160424 1160632 208 0.0
.bss 158272 158272 0 0.0
.data 2100 2100 0 0.0
.text 1000032 1000236 204 0.0
window-app BRD4187C (read/write) 1139940 1139940 0 0.0
.bss 140080 140080 0 0.0
.data 2620 2620 0 0.0
.text 972644 972644 0 0.0
esp32 all-clusters-app c3devkit (read only) 1223970 1224212 242 0.0
(read/write) 1788478 1788534 56 0.0
.dram0.bss 76960 76960 0 0.0
.dram0.data 13840 13840 0 0.0
.flash.rodata 258032 258088 56 0.0
.flash.text 1223970 1224212 242 0.0
.iram0.text 65204 65204 0 0.0
m5stack (read only) 1234039 1234243 204 0.0
(read/write) 564396 564460 64 0.0
.dram0.bss 82336 82336 0 0.0
.dram0.data 34296 34296 0 0.0
.flash.rodata 315096 315160 64 0.0
.flash.text 1228655 1228859 204 0.0
.iram0.text 123939 123939 0 0.0
k32w contact k32w0+release (read/write) 661676 661676 0 0.0
.bss 77040 77040 0 0.0
.data 2104 2104 0 0.0
.text 563420 563420 0 0.0
light k32w0+release (read/write) 671992 671992 0 0.0
.bss 74840 74840 0 0.0
.data 2060 2060 0 0.0
.text 592364 592364 0 0.0
lock k32w0+release (read/write) 633484 633484 0 0.0
.bss 75600 75600 0 0.0
.data 2080 2080 0 0.0
.text 553076 553076 0 0.0
linux all-clusters-app debug (read only) 3086657 3086657 0 0.0
(read/write) 158360 158360 0 0.0
.bss 62464 62464 0 0.0
.data 2272 2272 0 0.0
.data.rel.ro 87016 87016 0 0.0
.dynamic 608 608 0 0.0
.got 4776 4776 0 0.0
.init 27 27 0 0.0
.init_array 1200 1200 0 0.0
.rodata 281419 281419 0 0.0
.text 2620850 2620850 0 0.0
all-clusters-minimal-app debug (read only) 2912449 2912449 0 0.0
(read/write) 149792 149792 0 0.0
.bss 61664 61664 0 0.0
.data 2240 2240 0 0.0
.data.rel.ro 79384 79384 0 0.0
.dynamic 608 608 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 1176 1176 0 0.0
.rodata 280907 280907 0 0.0
.text 2450098 2450098 0 0.0
bridge-app debug+rpc (read only) 2412801 2412801 0 0.0
(read/write) 129560 129560 0 0.0
.bss 51008 51008 0 0.0
.data 3792 3792 0 0.0
.data.rel.ro 68680 68680 0 0.0
.dynamic 608 608 0 0.0
.got 4600 4600 0 0.0
.init 27 27 0 0.0
.init_array 848 848 0 0.0
.rodata 211232 211232 0 0.0
.text 2034018 2034018 0 0.0
chip-tool debug (read only) 11081345 11081345 0 0.0
(read/write) 658440 658440 0 0.0
.bss 25944 25944 0 0.0
.data 2754 2754 0 0.0
.data.rel.ro 623080 623080 0 0.0
.dynamic 608 608 0 0.0
.got 5216 5216 0 0.0
.init 27 27 0 0.0
.init_array 776 776 0 0.0
.rodata 592221 592221 0 0.0
.text 8965204 8965204 0 0.0
chip-tool-ipv6only arm64 (read only) 10436396 10436396 0 0.0
(read/write) 706465 706465 0 0.0
.bss 33953 33953 0 0.0
.data 2768 2768 0 0.0
.data.rel.ro 650720 650720 0 0.0
.dynamic 560 560 0 0.0
.got 13928 13928 0 0.0
.init 24 24 0 0.0
.init_array 208 208 0 0.0
.rodata 518220 518220 0 0.0
.text 8262340 8262340 0 0.0
lighting-app debug+rpc (read only) 2640233 2640233 0 0.0
(read/write) 132248 132248 0 0.0
.bss 49984 49984 0 0.0
.data 2288 2288 0 0.0
.data.rel.ro 73800 73800 0 0.0
.dynamic 608 608 0 0.0
.got 4600 4600 0 0.0
.init 27 27 0 0.0
.init_array 944 944 0 0.0
.rodata 228096 228096 0 0.0
.text 2236162 2236162 0 0.0
lock-app debug (read only) 2602241 2602241 0 0.0
(read/write) 127296 127296 0 0.0
.bss 48416 48416 0 0.0
.data 1904 1904 0 0.0
.data.rel.ro 70728 70728 0 0.0
.dynamic 608 608 0 0.0
.got 4672 4672 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 244328 244328 0 0.0
.text 2186306 2186306 0 0.0
ota-provider-app debug (read only) 2398777 2398777 0 0.0
(read/write) 120824 120824 0 0.0
.bss 47936 47936 0 0.0
.data 2128 2128 0 0.0
.data.rel.ro 64648 64648 0 0.0
.dynamic 608 608 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 784 784 0 0.0
.rodata 216904 216904 0 0.0
.text 2013330 2013330 0 0.0
ota-requestor-app debug (read only) 2563961 2563961 0 0.0
(read/write) 129136 129136 0 0.0
.bss 50464 50464 0 0.0
.data 2496 2496 0 0.0
.data.rel.ro 69992 69992 0 0.0
.dynamic 608 608 0 0.0
.got 4688 4688 0 0.0
.init 27 27 0 0.0
.init_array 872 872 0 0.0
.rodata 223952 223952 0 0.0
.text 2162370 2162370 0 0.0
shell debug (read only) 2626433 2626433 0 0.0
(read/write) 143016 143016 0 0.0
.bss 57864 57864 0 0.0
.data 1264 1264 0 0.0
.data.rel.ro 78064 78064 0 0.0
.dynamic 608 608 0 0.0
.got 4136 4136 0 0.0
.init 27 27 0 0.0
.init_array 1048 1048 0 0.0
.rodata 240178 240178 0 0.0
.text 2226610 2226610 0 0.0
thermostat-no-ble arm64 (read only) 2392844 2392844 0 0.0
(read/write) 143665 143665 0 0.0
.bss 55377 55377 0 0.0
.data 1816 1816 0 0.0
.data.rel.ro 77280 77280 0 0.0
.dynamic 560 560 0 0.0
.got 5184 5184 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 144548 144548 0 0.0
.text 2005296 2005296 0 0.0
tv-app debug (read only) 3236713 3236713 0 0.0
(read/write) 261752 261752 0 0.0
.bss 170552 170552 0 0.0
.data 4256 4256 0 0.0
.data.rel.ro 80272 80272 0 0.0
.dynamic 608 608 0 0.0
.got 4976 4976 0 0.0
.init 27 27 0 0.0
.init_array 1080 1080 0 0.0
.rodata 268184 268184 0 0.0
.text 2775186 2775186 0 0.0
tv-casting-app debug (read only) 5585641 5585641 0 0.0
(read/write) 161896 161896 0 0.0
.bss 52120 52120 0 0.0
.data 1936 1936 0 0.0
.data.rel.ro 101224 101224 0 0.0
.dynamic 608 608 0 0.0
.got 4896 4896 0 0.0
.init 27 27 0 0.0
.init_array 1064 1064 0 0.0
.rodata 355961 355961 0 0.0
.text 4954226 4954226 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2452768 2452768 0 0.0
.bss 215028 215028 0 0.0
.data 5872 5872 0 0.0
.text 1415412 1415412 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1188191 1188191 0 0.0
bss 145301 145301 0 0.0
rodata 144836 144836 0 0.0
text 816996 816996 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1167475 1167475 0 0.0
bss 144528 144528 0 0.0
rodata 136576 136576 0 0.0
text 805334 805334 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 841952 841952 0 0.0
(read/write) 1745940 1746196 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188728 188728 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1231262 1231262 0 0.0
.debug_aranges 110712 110712 0 0.0
.debug_frame 371204 371204 0 0.0
.debug_info 26899490 26901141 1651 0.0
.debug_line 3673871 3674515 644 0.0
.debug_loc 3588816 3589721 905 0.0
.debug_ranges 337960 338088 128 0.0
.debug_str 3435299 3435311 12 0.0
.heap 841952 841952 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 570460 570500 40 0.0
.symtab 421744 421776 32 0.0
.text 1546160 1546416 256 0.0
.zero.table 8 8 0 0.0
text 0 0 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 842688 842688 0 0.0
(read/write) 1688548 1688804 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187992 187992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1223105 1223105 0 0.0
.debug_aranges 110184 110184 0 0.0
.debug_frame 374284 374284 0 0.0
.debug_info 26636121 26637771 1650 0.0
.debug_line 3694663 3695307 644 0.0
.debug_loc 3576453 3577358 905 0.0
.debug_ranges 336576 336704 128 0.0
.debug_str 3424320 3424332 12 0.0
.heap 842688 842688 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 534549 534589 40 0.0
.symtab 408176 408208 32 0.0
.text 1489504 1489760 256 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 850872 850872 0 0.0
(read/write) 1607004 1607260 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 180016 180016 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2456 2456 0 0.0
.debug_abbrev 1057613 1057613 0 0.0
.debug_aranges 102384 102384 0 0.0
.debug_frame 344600 344600 0 0.0
.debug_info 22097474 22099125 1651 0.0
.debug_line 3264197 3264841 644 0.0
.debug_loc 3274179 3275084 905 0.0
.debug_ranges 301872 302000 128 0.0
.debug_str 3229759 3229771 12 0.0
.heap 850872 850872 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 470874 470914 40 0.0
.symtab 376560 376592 32 0.0
.text 1416144 1416400 256 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 845880 845880 0 0.0
(read/write) 1640780 1641036 256 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184992 184992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2472 2472 0 0.0
.debug_abbrev 1059619 1059619 0 0.0
.debug_aranges 102784 102784 0 0.0
.debug_frame 346472 346472 0 0.0
.debug_info 22330841 22332493 1652 0.0
.debug_line 3261187 3261831 644 0.0
.debug_loc 3301773 3302678 905 0.0
.debug_ranges 303816 303944 128 0.0
.debug_str 3249234 3249246 12 0.0
.heap 845880 845880 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 473277 473317 40 0.0
.symtab 378240 378272 32 0.0
.text 1444928 1445184 256 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1149968 1149968 0 0.0
.bss 110612 110612 0 0.0
.data 848 848 0 0.0
.text 597068 597068 0 0.0
lock-app qpg6105+debug (read/write) 1114760 1114752 -8 -0.0
.bss 106388 106388 0 0.0
.data 836 836 0 0.0
.text 561856 561848 -8 -0.0
telink light-switch-app tlsr9518adk80d (read/write) 790820 790820 0 0.0
bss 72480 72480 0 0.0
noinit 43520 43520 0 0.0
text 554266 554264 -2 -0.0
lighting-app tlsr9518adk80d (read/write) 806060 806068 8 0.0
bss 73240 73240 0 0.0
noinit 43520 43520 0 0.0
text 566412 566414 2 0.0
ota-requestor-app tlsr9518adk80d (read/write) 804952 804952 0 0.0
bss 74052 74052 0 0.0
noinit 43520 43520 0 0.0
text 565286 565286 0 0.0

@bzbarsky-apple
Copy link
Contributor

Many APIs of the PacketBuffer is designed based on the contiguous model.

Apart from the ones dealing with reserved space, which ones? @wqx6

@wqx6
Copy link
Contributor Author

wqx6 commented Nov 1, 2022

Apart from the ones dealing with reserved space, which ones? @wqx6

For example, when we call EnsureReservedSize, the payload will move forward aReservedSize - kCurrentReservedSize bytes. And then the return-value of ReservedSize should increase to aReservedSize for contiguous pbuf. But for the non-contiguous pbuf, how should we change the return-value of ReservedSize?

@bzbarsky-apple
Copy link
Contributor

bzbarsky-apple commented Nov 2, 2022

For example, when we call EnsureReservedSize

It should fail for the non-contiguous case.

But for the non-contiguous pbuf, how should we change the return-value of ReservedSize?

It should keep returning 0.

@andy31415 andy31415 merged commit 3dfa931 into project-chip:master Nov 3, 2022
adbridge pushed a commit to ARM-software/connectedhomeip that referenced this pull request Nov 18, 2022
…roject-chip#23376)

* inet: Do not copy pbuf when it already meets the PacketBuffer memory model on LwIP platforms

* Restyled by clang-format

* Review changes

Co-authored-by: Restyled.io <[email protected]>
adbridge pushed a commit to ARM-software/connectedhomeip that referenced this pull request Nov 18, 2022
…roject-chip#23376)

* inet: Do not copy pbuf when it already meets the PacketBuffer memory model on LwIP platforms

* Restyled by clang-format

* Review changes

Co-authored-by: Restyled.io <[email protected]>
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.

4 participants