Cover Letter Detail
Show a cover letter.
GET /api/covers/2196008/?format=api
{ "id": 2196008, "url": "http://patchwork.ozlabs.org/api/covers/2196008/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260212162730.440855-1-adamhet@scaleway.com/", "project": { "id": 14, "url": "http://patchwork.ozlabs.org/api/projects/14/?format=api", "name": "QEMU Development", "link_name": "qemu-devel", "list_id": "qemu-devel.nongnu.org", "list_email": "qemu-devel@nongnu.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260212162730.440855-1-adamhet@scaleway.com>", "list_archive_url": null, "date": "2026-02-12T16:27:23", "name": "[0/2] block/curl: fix S3 presigned URL support", "submitter": { "id": 90623, "url": "http://patchwork.ozlabs.org/api/people/90623/?format=api", "name": "Antoine Damhet", "email": "adamhet@scaleway.com" }, "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260212162730.440855-1-adamhet@scaleway.com/mbox/", "series": [ { "id": 491995, "url": "http://patchwork.ozlabs.org/api/series/491995/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=491995", "date": "2026-02-12T16:27:23", "name": "block/curl: fix S3 presigned URL support", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/491995/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/2196008/comments/", "headers": { "Return-Path": "<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=scaleway.com header.i=@scaleway.com header.a=rsa-sha256\n header.s=google header.b=ft1vsDiF;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)" ], "Received": [ "from lists.gnu.org (lists.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fBgj70Dbxz1xr1\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 13 Feb 2026 03:28:43 +1100 (AEDT)", "from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1vqZYG-0001SF-QG; Thu, 12 Feb 2026 11:28:26 -0500", "from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <adamhet@scaleway.com>)\n id 1vqZY7-0001P6-Cs\n for qemu-devel@nongnu.org; Thu, 12 Feb 2026 11:28:17 -0500", "from mail-wm1-x331.google.com ([2a00:1450:4864:20::331])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <adamhet@scaleway.com>)\n id 1vqZY3-0007jA-99\n for qemu-devel@nongnu.org; Thu, 12 Feb 2026 11:28:14 -0500", "by mail-wm1-x331.google.com with SMTP id\n 5b1f17b1804b1-4833115090dso80575e9.3\n for <qemu-devel@nongnu.org>; Thu, 12 Feb 2026 08:28:07 -0800 (PST)", "from localhost (710304585.box.freepro.com. [130.180.219.188])\n by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-4835a66c544sm59616405e9.6.2026.02.12.08.28.05\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 12 Feb 2026 08:28:06 -0800 (PST)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=scaleway.com; s=google; t=1770913686; x=1771518486; darn=nongnu.org;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:from:to:cc:subject:date:message-id:reply-to;\n bh=Z8aOSQznK0wRSj7jtceoYwT//BOFye86Z3vfSaQ7H8M=;\n b=ft1vsDiFcYHmPym8MCkCN8ZrSdixBGFkV8TRINfB4Q7WkXCBox90V2ipnCMx1t4anh\n NnXN9SpSLTIZ7rc0sZcOKwiNhT9xXEzFuegl09k/8uCkWbmTlEARoQCxcA0N9ARXVWAX\n vU99qRHmhmEJG3ZzyNG8IMz73h7tKhYyLBL3IDg2pQDPqic9j8GV1bdYsBMMAi9dE1BR\n YO0LnIyGYbnCXYZf4+BsAIP6dcTdpJo3bCqOAYq5c3DT9WCyaRrZx0Dy6JkiwVAMgwN0\n nEbFomHMfZPlpC7b4ilG3I5ooeypPMfSzMEHTkRoRz9oihkRvZRLegzroo/ICZmwwg9j\n eH7A==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1770913686; x=1771518486;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=Z8aOSQznK0wRSj7jtceoYwT//BOFye86Z3vfSaQ7H8M=;\n b=U63vp+5H+crAuIwins9QdCWbKk8DWh0W/bKd2H3zd65myrsrRhHP7jG4Nz6po88I59\n O32FAuvM/OAnmxd9P+vAZblqRZj946qwZ9kU2mx7jKmZ547TNhrgByxOl5gNgfWnLnGi\n Z8YsUXUcxvmUsx/VnWZatmqU29ayLpyPYObNYIhSdBtE6h4AgKNPKhVAxC/OiXB6roKi\n xZpHJothSU3BEWGJgvope1VvfgoTkW4wj8RSGR/rlWT6xuSYFG1ddAq5Dg0yH0N/h8k5\n 4z9GT5Q4+qke3cTkUWCBbIGCpWv6rtFu78aDelGLyTeE3GKsELOy6r8I8HgF2DuILRSH\n DRSQ==", "X-Gm-Message-State": "AOJu0YzzwigQJjhNccT1YqYZOrlk/+UAvTYsbKjX5zs1TmfPJl1XDxxK\n KRotGFpAJJ4DxFpeg9UZO/atmqbE7VwnduA3WKnp2s+QpCdEBv0eYP4ZbjqyAtU+osPWddJ9gfp\n SWVKz", "X-Gm-Gg": "AZuq6aI7YSAEfFZkdRA4X0HzKw2LhptwUs9kn2mZsESREu0gBgVdmUBUOZ18kZAbQqQ\n FOnLdLZ2R4agYBZoV9bvOZmtob3LNOMzvHzgmrZam67ll4EagZJdXzB/AWwuSDeJsHGwu8Cczb+\n YkY9cK1ntnRIFNfVKbe6tLjnOEXPaxf6M3+fWJOOLjqinCff9cC6x4CXbTG4yF444GfNEryxYmD\n g2o/wcrnUrYHsHLeQBKyWEQc8WMHMqyEqaZdp4Cj7YkM8eU+zJUd9FUZ6YvaruqXLWcwnX/3zWi\n SueO9WtlHMwMFEb4H9fwPO1nT6hH4yUiBI+kxmCdKoJYeH0S3p/UVH8QnmMBazj12fzTSYrSe50\n txI8TMQck4+cq338CDA+1b84t2KG1jtdpq6lL1zKjdbXJYZXa3MTeW5fPn5aAql3JQwgJqFGx7j\n fR7KL4NwNUz1rLU40qvUubUKsZjPZTuI379kA+PRSz7oP9+3qg", "X-Received": "by 2002:a05:600c:3b12:b0:477:9814:6882 with SMTP id\n 5b1f17b1804b1-483670fac0fmr43839005e9.5.1770913686453;\n Thu, 12 Feb 2026 08:28:06 -0800 (PST)", "From": "Antoine Damhet <adamhet@scaleway.com>", "To": "qemu-devel@nongnu.org", "Cc": "Antoine Damhet <adamhet@scaleway.com>, qemu-block@nongnu.org,\n Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>", "Subject": "[PATCH 0/2] block/curl: fix S3 presigned URL support", "Date": "Thu, 12 Feb 2026 17:27:23 +0100", "Message-ID": "<20260212162730.440855-1-adamhet@scaleway.com>", "X-Mailer": "git-send-email 2.53.0", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Received-SPF": "pass client-ip=2a00:1450:4864:20::331;\n envelope-from=adamhet@scaleway.com; helo=mail-wm1-x331.google.com", "X-Spam_score_int": "-20", "X-Spam_score": "-2.1", "X-Spam_bar": "--", "X-Spam_report": "(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=ham autolearn_force=no", "X-Spam_action": "no action", "X-BeenThere": "qemu-devel@nongnu.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "qemu development <qemu-devel.nongnu.org>", "List-Unsubscribe": "<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>", "List-Archive": "<https://lists.nongnu.org/archive/html/qemu-devel>", "List-Post": "<mailto:qemu-devel@nongnu.org>", "List-Help": "<mailto:qemu-devel-request@nongnu.org?subject=help>", "List-Subscribe": "<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>", "Errors-To": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org", "Sender": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org" }, "content": "Hi,\n\nThis series adds the support for S3 presigned URLs that only allow HTTP\nGET requests. While working on this I also stumbled upon a deadlock with\nconcurrent I/O and slipped the fix here. Over the years there was\nalready an attempt to support these kind of URLs[1] and at least one\nreport of a user in need of the feature[2].\n\nUnfortunately S3 only allows a presigned URL to live up to 7 days so we\ncan't really put an example with a stable URL on the commit message but\nhere is a presigned URL for the archlinux cloud image[3] that will\nexpire in ~7 days.\n\nCheers,\nAntoine\n\n[1]: https://lore.kernel.org/qemu-devel/110120539.4133.de5ac8a5-69d1-4f59-9540-4a679771a547.open-xchange@ox.pcextreme.nl/\n[2]: https://lore.kernel.org/qemu-devel/7b37cc65-1314-29f4-006f-70836bdfb4b4@linaro.org/\n[3]: https://test-presigned.s3.fr-par.scw.cloud/Arch-Linux-x86_64-cloudimg.qcow2?AWSAccessKeyId=SCWDHE3XBQGZFV282QKG&Expires=1771517864&Signature=9Jy5hOW%2FeHlpqQNQtKxg5AjVv9E%3D\n\nAntoine Damhet (2):\n block/curl: fix concurrent completion handling\n block/curl: add support for S3 presigned URLs\n\n block/curl.c | 115 ++++++++++++++++----------\n block/trace-events | 1 +\n docs/system/device-url-syntax.rst.inc | 6 ++\n qapi/block-core.json | 14 +++-\n 4 files changed, 92 insertions(+), 44 deletions(-)" }