nuttx icon indicating copy to clipboard operation
nuttx copied to clipboard

sched: replace sync pause with async pause for nxsched_suspend

Open hujun260 opened this issue 1 year ago • 1 comments

Summary

In the kernel, we are planning to remove all occurrences of up_cpu_pause as one of the steps to simplify the implementation of critical sections. The goal is to enable spin_lock_irqsave to encapsulate critical sections, thereby facilitating the replacement of critical sections(big lock) with smaller spin_lock_irqsave(small lock)

Impact

nxsched_suspend

Testing

Configuring NuttX and compile: $ ./tools/configure.sh -l qemu-armv8a:nsh_smp $ make Running with qemu $ qemu-system-aarch64 -cpu cortex-a53 -smp 4 -nographic -machine virt,virtualization=on,gic-version=3 -net none -chardev stdio,id=con,mux=on -serial chardev:con -mon chardev=con,mode=readline -kernel ./nuttx

hujun260 avatar Sep 29 '24 13:09 hujun260

[Experimental Bot, please feedback here]

The provided PR information is incomplete to determine if it meets the NuttX requirements.

Here's why:

  • Incomplete Summary:
    • It mentions removing up_cpu_pause and simplifying critical sections.
    • Missing: What functional part is changing? How does the change work exactly?
  • Unclear Impact:
    • Only mentions nxsched_suspend without explaining the impact.
    • Missing: Details about all other impact areas (build, hardware, documentation, security, compatibility, etc.).
  • Missing Testing Information:
    • No details about build host(s) or target(s) used for testing.
    • Missing: Testing logs before and after the change.

To meet the NuttX requirements, the PR needs to provide:

  • A complete summary: Clearly explain the functional change, the method used, and any related issues.
  • Detailed impact analysis: Address all impact areas with specific explanations.
  • Thorough testing information: List the build hosts, target platforms, and include relevant testing logs from before and after the change.

nuttxpr avatar Sep 29 '24 13:09 nuttxpr