nuttxpr commented on PR #15280:
URL: https://github.com/apache/nuttx/pull/15280#issuecomment-2553084427

   [**\[Experimental Bot, please feedback 
here\]**](https://github.com/search?q=repo%3Aapache%2Fnuttx+13552&type=issues)
   
   
   
   No, this PR description does not meet the NuttX requirements. While it 
provides links to related PRs, it lacks crucial details. Here's why and how to 
fix it:
   
   **Missing Information in Summary:**
   
   * **Why is this change necessary?**  What problem does the "big lock" cause? 
Why is a "small lock" better?  Performance improvement? Deadlock avoidance?  Be 
specific.
   * **What functional part of the code is being changed?**  Mention specific 
modules, files, or functions affected by the lock replacement.  "The scheduler" 
or "interrupt handling" are too broad.
   * **How does the change exactly work?** What is the "big lock"? What is the 
"small lock"? How was the code refactored to use the smaller lock?  Don't 
assume reviewers understand the context from just PR numbers.
   
   **Missing Information in Impact:**
   
   * **Marking "RELEASE" is not sufficient.**  Address *all* impact points 
individually.  Even if the answer is "NO," explicitly state it for each item.  
If there *is* an impact (and a change this significant likely has several), 
describe it.  For example:
       * **Impact on user:** YES. Applications using certain APIs related to 
the locked resources might see performance changes.
       * **Impact on build:** Potentially YES if configurations need to be 
adjusted for the new locking mechanism.
       * **Impact on hardware:**  Possibly YES if the lock interacts with 
specific hardware features.
       * **Impact on documentation:** YES.  The documentation needs to be 
updated to reflect the new locking mechanism and any changes to API behavior.
       * **Impact on security:**  Possibly YES.  Changing locking mechanisms 
can introduce subtle security vulnerabilities if not done carefully.  Justify 
why there is or isn't a security impact.
       * **Impact on compatibility:** Possibly YES. Explain potential 
compatibility issues with older NuttX versions or applications.
   
   **Missing Information in Testing:**
   
   * **"CI" is insufficient.**  While CI is essential,  you need to provide 
*specific* testing information from your local setup:
       * **Build Host(s):** List your development environment details.  e.g., 
"Linux (Ubuntu 22.04), x86_64, GCC 11.2.0"
       * **Target(s):**  Be specific. "sim:qemu-x86_64", 
"stm32f4discovery:default", etc.
   * **Testing logs:**  You *must* provide logs demonstrating the issue 
*before* the change and the improved behavior *after* the change.  These logs 
should be relevant to the problem being solved.  Show how the change addresses 
the original issue.  Performance benchmarks are particularly helpful for lock 
changes.
   
   
   **Example of an Improved Summary:**
   
   The current "big lock" used for serial driver access 
(`drivers/serial/serial.c`) causes performance bottlenecks and potential 
deadlocks when multiple threads attempt concurrent access. This change replaces 
the single, global lock with a finer-grained locking mechanism using per-port 
mutexes. This allows concurrent access to different serial ports, improving 
throughput and responsiveness, especially in multi-threaded applications.  This 
addresses issues highlighted in [NuttX Issue #XXXX](link-to-issue).  The 
related PRs (#15247, #15248, #15250, #15255, #15256, #15257) implement the 
changes across the serial driver and related subsystems.
   
   
   By providing this level of detail, you make it significantly easier for 
reviewers to understand, evaluate, and ultimately merge your changes.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to