[PATCH 28/30] patman: Provide an option to run in single-threaded mode
Simon Glass
sjg at chromium.org
Tue Apr 29 15:22:25 CEST 2025
Patman normally sends multiple concurrent requests to the patchwork
server, as this is faster. Provide an option to disable this.
Signed-off-by: Simon Glass <sjg at chromium.org>
---
tools/patman/cmdline.py | 2 ++
tools/patman/control.py | 4 ++--
tools/patman/patchwork.py | 5 +++--
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/tools/patman/cmdline.py b/tools/patman/cmdline.py
index a7327a20665..cf32716b8e0 100644
--- a/tools/patman/cmdline.py
+++ b/tools/patman/cmdline.py
@@ -130,6 +130,8 @@ def parse_args():
help='Name of branch to create with collected responses')
status.add_argument('-f', '--force', action='store_true',
help='Force overwriting an existing branch')
+ status.add_argument('-T', '--single-thread', action='store_true',
+ help='Disable multithreading when reading patchwork')
# Parse options twice: first to get the project and second to handle
# defaults properly (which depends on project)
diff --git a/tools/patman/control.py b/tools/patman/control.py
index cb8552ed550..cfea35ea648 100644
--- a/tools/patman/control.py
+++ b/tools/patman/control.py
@@ -44,7 +44,7 @@ def do_send(args):
def patchwork_status(branch, count, start, end, dest_branch, force,
- show_comments, url):
+ show_comments, url, single_thread=False):
"""Check the status of patches in patchwork
This finds the series in patchwork using the Series-link tag, checks for new
@@ -96,7 +96,7 @@ def patchwork_status(branch, count, start, end, dest_branch, force,
# Allow the series to override the URL
if 'patchwork_url' in series:
url = series.patchwork_url
- pwork = patchwork.Patchwork(url)
+ pwork = patchwork.Patchwork(url, single_thread=single_thread)
# Import this here to avoid failing on other commands if the dependencies
# are not present
diff --git a/tools/patman/patchwork.py b/tools/patman/patchwork.py
index 2b7734bbfe4..47d7be28fdf 100644
--- a/tools/patman/patchwork.py
+++ b/tools/patman/patchwork.py
@@ -139,7 +139,7 @@ class Review:
class Patchwork:
"""Class to handle communication with patchwork
"""
- def __init__(self, url, show_progress=True):
+ def __init__(self, url, show_progress=True, single_thread=False):
"""Set up a new patchwork handler
Args:
@@ -151,7 +151,8 @@ class Patchwork:
self.proj_id = None
self.link_name = None
self._show_progress = show_progress
- self.semaphore = asyncio.Semaphore(MAX_CONCURRENT)
+ self.semaphore = asyncio.Semaphore(
+ 1 if single_thread else MAX_CONCURRENT)
self.request_count = 0
async def _request(self, client, subpath):
--
2.43.0
More information about the U-Boot
mailing list