-
Notifications
You must be signed in to change notification settings - Fork 1.5k
{Bp-Sched} backport various sched improvements #14044
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
Conversation
Register: smp
Register: nsh
Register: sh
Register: getprime
Register: ostest
Espressif HAL for 3rd Party Platforms: b4c723a119344b4b71d69819019d55637fb570fd
common/xtensa_cpupause.c: In function 'xtensa_pause_handler':
common/xtensa_cpupause.c:240:3: warning: implicit declaration of function 'xtensa_savestate'; did you mean 'xtensa_setps'? [-Wimplicit-function-declaration]
240 | xtensa_savestate(tcb->xcp.regs);
| ^~~~~~~~~~~~~~~~
| xtensa_setps
common/xtensa_cpupause.c:243:3: warning: implicit declaration of function 'xtensa_restorestate'; did you mean 'xtensa_context_restore'? [-Wimplicit-function-declaration]
243 | xtensa_restorestate(tcb->xcp.regs);
| ^~~~~~~~~~~~~~~~~~~
| xtensa_context_restore
Signed-off-by: hujun5 <hujun5@xiaomi.com>
for the citimon stats:
thread 0: thread 1:
enter_critical (t0)
up_switch_context
note suspend thread0 (t1)
thread running
IRQ happen, in ISR:
post thread0
up_switch_context
note resume thread0 (t2)
ISR continue f1
ISR continue f2
...
ISR continue fn
leave_critical (t3)
You will see, the thread 0, critical_section time is:
(t1 - t0) + (t3 - t2)
BUT, this result contains f1 f2 .. fn time spent, it is wrong
to tell user thead0 hold the critical lots of time but actually
not belong to it.
Resolve:
change the nxsched_suspend/resume_scheduler to real hanppends
Signed-off-by: ligd <liguiding1@xiaomi.com>
this is caused by: 35c8c80 Signed-off-by: ligd <liguiding1@xiaomi.com>
…th other functionalities removed. reason: by doing this we can reduce context switch time, When we exit from an interrupt handler, we directly use tcb->xcp.regs before text data bss dec hex filename 178368 876 130604 309848 4ba58 nuttx after text data bss dec hex filename 178120 876 130212 309208 4b7d8 nuttx szie change -248 Signed-off-by: hujun5 <hujun5@xiaomi.com>
CXX: libcxxmini/libxx_new.cxx "/home/guoshichao/work_profile/vela_os/vela_qemu_1/nuttx/include/arch/armv7-m/irq.h", line 594: error apache#3422: use of the "register" storage class specifier is not allowed register uint32_t sp; ^ "/home/guoshichao/work_profile/vela_os/vela_qemu_1/nuttx/include/arch/armv7-m/irq.h", line 594: error apache#3422: use of the "register" storage class specifier is not allowed register uint32_t sp; ^ "/home/guoshichao/work_profile/vela_os/vela_qemu_1/nuttx/include/arch/armv7-m/irq.h", line 594: error apache#3422: use of the "register" storage class specifier is not allowed register uint32_t sp; ^ make[1]: *** [Makefile:69: libxx_delete_sized.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: *** [Makefile:69: libxx_deletea_sized.o] Error 1 make[1]: *** [Makefile:69: libxx_new.o] Error 1 "/home/guoshichao/work_profile/vela_os/vela_qemu_1/nuttx/include/arch/armv7-m/irq.h", line 594: error apache#3422: use of the "register" storage class specifier is not allowed register uint32_t sp; ^ "/home/guoshichao/work_profile/vela_os/vela_qemu_1/nuttx/include/arch/armv7-m/irq.h", line 594: error apache#3422: use of the "register" storage class specifier is not allowed register uint32_t sp; ^ Signed-off-by: guoshichao <guoshichao@xiaomi.com>
|
[Experimental Bot, please feedback here] It's impossible to determine if the PRs meet the NuttX requirements without their content. Providing just the PR URLs isn't enough. To assess if these PRs meet the requirements, I need to see the actual changes and descriptions within each PR. Here's why:
To get a proper evaluation, please provide the following for each PR:
With this information, I can help you determine if the PRs meet the NuttX requirements. |
Summary
PR included
#13717
#13651
#13662
#13623
#13737
Impact
RELEASE
Testing
CI