[{"id":3678507,"web_url":"http://patchwork.ozlabs.org/comment/3678507/","msgid":"<3f586dbd-9695-452e-9afb-e4cb49a40b77@linaro.org>","list_archive_url":null,"date":"2026-04-17T06:31:36","subject":"Re: [PATCH v3 04/17] hw/usb/hcd-ehci.c: Replace fprintf(stderr, ...)\n with qemu_log_mask(LOG_GUEST_ERROR)","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 16/4/26 03:49, Jamin Lin wrote:\n> Replace direct fprintf(stderr, ...) calls with qemu_log_mask()\n> using LOG_GUEST_ERROR in the EHCI controller implementation.\n> \n> Direct writes to stderr are discouraged in QEMU as they bypass\n> the logging framework and cannot be filtered or controlled at\n> runtime. Using qemu_log_mask() ensures that guest-visible errors\n> are properly categorized and can be managed via QEMU logging\n> options.\n> \n> All affected messages correspond to guest-triggerable error\n> conditions, so LOG_GUEST_ERROR is used consistently.\n> \n> This change improves integration with QEMU's logging infrastructure\n> and aligns with upstream coding guidelines.\n> \n> Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>\n> ---\n>   hw/usb/hcd-ehci.c | 43 +++++++++++++++++++++++++------------------\n>   1 file changed, 25 insertions(+), 18 deletions(-)\n\n\n> @@ -532,7 +533,7 @@ static void ehci_free_packet(EHCIPacket *p)\n>       }\n>       if (p->async == EHCI_ASYNC_FINISHED &&\n>               p->packet.status == USB_RET_SUCCESS) {\n> -        fprintf(stderr,\n> +        qemu_log_mask(LOG_GUEST_ERROR,\n>                   \"EHCI: Dropping completed packet from halted %s ep %02X\\n\",\n>                   (p->pid == USB_TOKEN_IN) ? \"in\" : \"out\",\n>                   get_field(p->queue->qh.epchar, QH_EPCHAR_EP));\n> @@ -1042,8 +1043,9 @@ static void ehci_opreg_write(void *ptr, hwaddr addr,\n>   \n>           /* not supporting dynamic frame list size at the moment */\n>           if ((val & USBCMD_FLS) && !(s->usbcmd & USBCMD_FLS)) {\n> -            fprintf(stderr, \"attempt to set frame list size -- value %d\\n\",\n> -                    (int)val & USBCMD_FLS);\n> +            qemu_log_mask(LOG_GUEST_ERROR,\n> +                          \"attempt to set frame list size -- value %d\\n\",\n\nPRId64\n\n> +                          (int)val & USBCMD_FLS);\n>               val &= ~USBCMD_FLS;\n>           }\n\n> @@ -1584,7 +1589,8 @@ static int ehci_state_fetchentry(EHCIState *ehci, int async)\n>   \n>       /* section 4.8, only QH in async schedule */\n>       if (async && (NLPTR_TYPE_GET(entry) != NLPTR_TYPE_QH)) {\n> -        fprintf(stderr, \"non queue head request in async schedule\\n\");\n> +        qemu_log_mask(LOG_GUEST_ERROR,\n> +                      \"non queue head request in async schedule\\n\");\n>           return -1;\n>       }\n>   \n> @@ -1606,7 +1612,7 @@ static int ehci_state_fetchentry(EHCIState *ehci, int async)\n>   \n>       default:\n>           /* TODO: handle FSTN type */\n> -        fprintf(stderr, \"FETCHENTRY: entry at %X is of type %u \"\n> +        qemu_log_mask(LOG_GUEST_ERROR, \"FETCHENTRY: entry at %X is of type %u \"\n\n\"0x%x\"\n\n>                   \"which is not supported yet\\n\", entry, NLPTR_TYPE_GET(entry));\n>           return -1;\n>       }\n> @@ -2112,13 +2118,14 @@ static void ehci_advance_state(EHCIState *ehci, int async)\n>               break;\n>   \n>           default:\n> -            fprintf(stderr, \"Bad state!\\n\");\n> +            qemu_log_mask(LOG_GUEST_ERROR, \"Bad state!\\n\");\n\nJust remove for \"bad state\" entries?\n\n>               g_assert_not_reached();\n>           }\n>   \n>           if (again < 0 || itd_count > 16) {\n>               /* TODO: notify guest (raise HSE irq?) */\n> -            fprintf(stderr, \"processing error - resetting ehci HC\\n\");\n> +            qemu_log_mask(LOG_GUEST_ERROR,\n> +                          \"processing error - resetting ehci HC\\n\");\n>               ehci_reset(ehci);\n>               again = 0;\n>           }\n> @@ -2175,7 +2182,7 @@ static void ehci_advance_async_state(EHCIState *ehci)\n>   \n>       default:\n>           /* this should only be due to a developer mistake */\n> -        fprintf(stderr, \"ehci: Bad asynchronous state %d. \"\n> +        qemu_log_mask(LOG_GUEST_ERROR, \"ehci: Bad asynchronous state %d. \"\n>                   \"Resetting to active\\n\", ehci->astate);\n\nDitto.\n\n>           g_assert_not_reached();\n>       }\n> @@ -2225,7 +2232,7 @@ static void ehci_advance_periodic_state(EHCIState *ehci)\n>   \n>       default:\n>           /* this should only be due to a developer mistake */\n> -        fprintf(stderr, \"ehci: Bad periodic state %d. \"\n> +        qemu_log_mask(LOG_GUEST_ERROR, \"ehci: Bad periodic state %d. \"\n>                   \"Resetting to active\\n\", ehci->pstate);\n>           g_assert_not_reached();\n\nDitto.\n\n>       }","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=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=bkl92hkz;\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=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.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 4fxlRG5bBCz1yD3\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 16:32:09 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wDck2-0003sE-99; Fri, 17 Apr 2026 02:31:50 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wDcju-0003qn-W7\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 02:31:45 -0400","from mail-wm1-x336.google.com ([2a00:1450:4864:20::336])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wDcjs-0007e2-IJ\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 02:31:42 -0400","by mail-wm1-x336.google.com with SMTP id\n 5b1f17b1804b1-488ad135063so2805835e9.0\n for <qemu-devel@nongnu.org>; Thu, 16 Apr 2026 23:31:39 -0700 (PDT)","from [192.168.69.228] (88-187-86-199.subs.proxad.net.\n [88.187.86.199]) by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-488fc1393d3sm30152225e9.11.2026.04.16.23.31.37\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Thu, 16 Apr 2026 23:31:37 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776407498; x=1777012298; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:from:references:cc:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=a5d82qrKjL+6McFv5agOhbQV+/m3rW5pVxKwgqg4oGQ=;\n b=bkl92hkziEOo7kzF7pKpAxEV1UR/9IUwqO8hm0wSemcNgnop7uya7NLGN9caVy/8xH\n mOohzyoBwqrJ0CPzMlm+pyYzbyNPiBIe47mVxhlROPq0B02R+XeTNGlF/mnvIbEAtKAo\n WvLqqhDWOTMosrfYbEEYFARHcJF5akebeBOGValG9V3JiSJKA07o6yhGwhL3mnD8G0nA\n 2gRPaTvlHIvic+uQOQug49Syt+fRM1SkM8HJXEx+ICVesvd9PXG/zeis2xfWyM2gaQ6w\n hwlnzEYqCAEMplkRFsUxj4tG/DN2sb+mpRmhOrGSXRmSBIMuP/XYTfqCBaMwPveFdFCX\n k7oQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776407498; x=1777012298;\n h=content-transfer-encoding:in-reply-to:from:references:cc:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=a5d82qrKjL+6McFv5agOhbQV+/m3rW5pVxKwgqg4oGQ=;\n b=GBymc+3PpDBlc86ke7krZqzbCBNBs6jdWaNYz0oQIU7CMEyvScPK/4t8rOGA1Ynq6M\n T8QLD2fIBNrJ/HMwH+FSanQxuUz6eF7QL9PC1dkpM94GVx8lPdM/Bo2mLw3SHShcXNzl\n fJca3d/gN/Adk5WvIOo5QAloOCBUHGoawU/YhnMjbRcjGuozdNhIHVX+hwJxic4b74/a\n EhrgJg+xd2W5JR3VTY1pVYg3Vwml+Kmzf6k4yF0oNuNwFDaNwwsjss15uRrC948vW2hC\n nAY3NfcvcvjajTEMxI7QY1tQJEH8NTPCRVu7Ezou/tR4LIdNrISDNNA/3S0GBLiHTQBo\n NyMw==","X-Forwarded-Encrypted":"i=1;\n AFNElJ8bW4wotDRtzyPD+rJknZ2XqyiroqIvGOsm1W979Q08GZKwcoyNl1G5oaaoLQD69U+AmDxuVBxd0pHN@nongnu.org","X-Gm-Message-State":"AOJu0YyldHpJPvmVgdxFXo0BQPxu3cQ0f66sVd1NpRAoXOiBn06FirfQ\n +H+ncnlSH0XAFkCVivGGmcv7XBHfOslgbv/oABF1VrxipS4VPkOzgfHZalPxWPViIZo=","X-Gm-Gg":"AeBDiev4wEpq+LfDCJrv7QJKTusR6A4ZbwMWsItXqal+RAboHYIQHhXJCRy0Er2Ew0t\n yaI9G6PgJbV8aqz1twltbyEKF/1E7i5dJfKHIb+WWBk9SihQ1lylpy68hHySZe0GtC+v2JVzi4J\n QrCAROh/BXphyA5pFoLaVzRBdYo8O7nGRmvr0MGtpQWpatsotPqgU0C4xcjPJAO9tUM9lqT6owX\n 3XJhFWxNQQfh8UqMK+pvakNh8IU+yY0yyaio/KEBaGG8AsD62TlyYFtRGWrW4ZjzFwIFRNt6Dme\n vAOYc72Bma1OS+yDyd4Ft8+zFgME943SKkHdmDAwoZC6rgrARvgNREi8hRpyRvHSuOHBx8PZkGl\n cMqKenaycGP48Obnf0K8PCtgWv7+jRBE5DAvC7OmustMSpTeyqQOHv0GvPUJ5Eumei+WLMqVYtN\n 4Hg1tbj6SWda9h1IjLmyLEvpyD6AmdNwUqOQJlW+XR/Ey0yvTFUetnCOepaqm0PQWyAUFurhYQj\n wn/","X-Received":"by 2002:a05:600c:3150:b0:485:3b00:f93b with SMTP id\n 5b1f17b1804b1-488fb79df09mr19927055e9.31.1776407498437;\n Thu, 16 Apr 2026 23:31:38 -0700 (PDT)","Message-ID":"<3f586dbd-9695-452e-9afb-e4cb49a40b77@linaro.org>","Date":"Fri, 17 Apr 2026 08:31:36 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v3 04/17] hw/usb/hcd-ehci.c: Replace fprintf(stderr, ...)\n with qemu_log_mask(LOG_GUEST_ERROR)","Content-Language":"en-US","To":"Jamin Lin <jamin_lin@aspeedtech.com>,\n =?utf-8?q?C=C3=A9dric_Le_Goater?= <clg@kaod.org>,\n Peter Maydell <peter.maydell@linaro.org>,\n Steven Lee <steven_lee@aspeedtech.com>, Troy Lee <leetroy@gmail.com>,\n Kane Chen <kane_chen@aspeedtech.com>,\n Andrew Jeffery <andrew@codeconstruct.com.au>, Joel Stanley <joel@jms.id.au>,\n \"open list:ASPEED BMCs\" <qemu-arm@nongnu.org>,\n \"open list:All patches CC here\" <qemu-devel@nongnu.org>","Cc":"Troy Lee <troy_lee@aspeedtech.com>, \"flwu@google.com\" <flwu@google.com>,\n \"nabihestefan@google.com\" <nabihestefan@google.com>","References":"<20260416014928.1279360-1-jamin_lin@aspeedtech.com>\n <20260416014928.1279360-5-jamin_lin@aspeedtech.com>","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","In-Reply-To":"<20260416014928.1279360-5-jamin_lin@aspeedtech.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::336;\n envelope-from=philmd@linaro.org; helo=mail-wm1-x336.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=unavailable 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"}},{"id":3678573,"web_url":"http://patchwork.ozlabs.org/comment/3678573/","msgid":"<TYPPR06MB82068BB67441B62563D00D47FC202@TYPPR06MB8206.apcprd06.prod.outlook.com>","list_archive_url":null,"date":"2026-04-17T08:41:49","subject":"RE: [PATCH v3 04/17] hw/usb/hcd-ehci.c: Replace fprintf(stderr, ...)\n with qemu_log_mask(LOG_GUEST_ERROR)","submitter":{"id":81768,"url":"http://patchwork.ozlabs.org/api/people/81768/","name":"Jamin Lin","email":"jamin_lin@aspeedtech.com"},"content":"Hi Philippe,\n\n> Subject: Re: [PATCH v3 04/17] hw/usb/hcd-ehci.c: Replace fprintf(stderr, ...)\n> with qemu_log_mask(LOG_GUEST_ERROR)\n> \n> On 16/4/26 03:49, Jamin Lin wrote:\n> > Replace direct fprintf(stderr, ...) calls with qemu_log_mask() using\n> > LOG_GUEST_ERROR in the EHCI controller implementation.\n> >\n> > Direct writes to stderr are discouraged in QEMU as they bypass the\n> > logging framework and cannot be filtered or controlled at runtime.\n> > Using qemu_log_mask() ensures that guest-visible errors are properly\n> > categorized and can be managed via QEMU logging options.\n> >\n> > All affected messages correspond to guest-triggerable error\n> > conditions, so LOG_GUEST_ERROR is used consistently.\n> >\n> > This change improves integration with QEMU's logging infrastructure\n> > and aligns with upstream coding guidelines.\n> >\n> > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>\n> > ---\n> >   hw/usb/hcd-ehci.c | 43 +++++++++++++++++++++++++------------------\n> >   1 file changed, 25 insertions(+), 18 deletions(-)\n> \n> \n> > @@ -532,7 +533,7 @@ static void ehci_free_packet(EHCIPacket *p)\n> >       }\n> >       if (p->async == EHCI_ASYNC_FINISHED &&\n> >               p->packet.status == USB_RET_SUCCESS) {\n> > -        fprintf(stderr,\n> > +        qemu_log_mask(LOG_GUEST_ERROR,\n> >                   \"EHCI: Dropping completed packet from halted %s ep\n> %02X\\n\",\n> >                   (p->pid == USB_TOKEN_IN) ? \"in\" : \"out\",\n> >                   get_field(p->queue->qh.epchar, QH_EPCHAR_EP));\n> @@\n> > -1042,8 +1043,9 @@ static void ehci_opreg_write(void *ptr, hwaddr\n> > addr,\n> >\n> >           /* not supporting dynamic frame list size at the moment */\n> >           if ((val & USBCMD_FLS) && !(s->usbcmd & USBCMD_FLS)) {\n> > -            fprintf(stderr, \"attempt to set frame list size -- value %d\\n\",\n> > -                    (int)val & USBCMD_FLS);\n> > +            qemu_log_mask(LOG_GUEST_ERROR,\n> > +                          \"attempt to set frame list size -- value\n> > + %d\\n\",\n> \n> PRId64\n\nWill update\n> \n> > +                          (int)val & USBCMD_FLS);\n> >               val &= ~USBCMD_FLS;\n> >           }\n> \n> > @@ -1584,7 +1589,8 @@ static int ehci_state_fetchentry(EHCIState\n> > *ehci, int async)\n> >\n> >       /* section 4.8, only QH in async schedule */\n> >       if (async && (NLPTR_TYPE_GET(entry) != NLPTR_TYPE_QH)) {\n> > -        fprintf(stderr, \"non queue head request in async schedule\\n\");\n> > +        qemu_log_mask(LOG_GUEST_ERROR,\n> > +                      \"non queue head request in async schedule\\n\");\n> >           return -1;\n> >       }\n> >\n> > @@ -1606,7 +1612,7 @@ static int ehci_state_fetchentry(EHCIState\n> > *ehci, int async)\n> >\n> >       default:\n> >           /* TODO: handle FSTN type */\n> > -        fprintf(stderr, \"FETCHENTRY: entry at %X is of type %u \"\n> > +        qemu_log_mask(LOG_GUEST_ERROR, \"FETCHENTRY: entry at %X\n> is of type %u \"\n> \n> \"0x%x\"\nWill update\n> \n> >                   \"which is not supported yet\\n\", entry,\n> NLPTR_TYPE_GET(entry));\n> >           return -1;\n> >       }\n> > @@ -2112,13 +2118,14 @@ static void ehci_advance_state(EHCIState *ehci,\n> int async)\n> >               break;\n> >\n> >           default:\n> > -            fprintf(stderr, \"Bad state!\\n\");\n> > +            qemu_log_mask(LOG_GUEST_ERROR, \"Bad state!\\n\");\n> \n> Just remove for \"bad state\" entries?\n> \nWill remove it.\n> >               g_assert_not_reached();\n> >           }\n> >\n> >           if (again < 0 || itd_count > 16) {\n> >               /* TODO: notify guest (raise HSE irq?) */\n> > -            fprintf(stderr, \"processing error - resetting ehci HC\\n\");\n> > +            qemu_log_mask(LOG_GUEST_ERROR,\n> > +                          \"processing error - resetting ehci HC\\n\");\n> >               ehci_reset(ehci);\n> >               again = 0;\n> >           }\n> > @@ -2175,7 +2182,7 @@ static void ehci_advance_async_state(EHCIState\n> > *ehci)\n> >\n> >       default:\n> >           /* this should only be due to a developer mistake */\n> > -        fprintf(stderr, \"ehci: Bad asynchronous state %d. \"\n> > +        qemu_log_mask(LOG_GUEST_ERROR, \"ehci: Bad asynchronous\n> state %d. \"\n> >                   \"Resetting to active\\n\", ehci->astate);\n> \n> Ditto.\n> \nWill remove it.\n\n> >           g_assert_not_reached();\n> >       }\n> > @@ -2225,7 +2232,7 @@ static void\n> > ehci_advance_periodic_state(EHCIState *ehci)\n> >\n> >       default:\n> >           /* this should only be due to a developer mistake */\n> > -        fprintf(stderr, \"ehci: Bad periodic state %d. \"\n> > +        qemu_log_mask(LOG_GUEST_ERROR, \"ehci: Bad periodic state\n> %d. \"\n> >                   \"Resetting to active\\n\", ehci->pstate);\n> >           g_assert_not_reached();\n> \n> Ditto.\n> \nWill remove it.\n\nThanks for the review and suggestion\nJamin\n> >       }","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=aspeedtech.com header.i=@aspeedtech.com\n header.a=rsa-sha256 header.s=selector1 header.b=jmh/X5HQ;\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=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=aspeedtech.com;"],"Received":["from lists1p.gnu.org (lists1p.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 4fxpKY3MmNz1yGt\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 18:42:25 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wDem2-0000HG-4n; Fri, 17 Apr 2026 04:42:02 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <jamin_lin@aspeedtech.com>)\n id 1wDem0-0000Gt-9f; Fri, 17 Apr 2026 04:42:00 -0400","from mail-japaneastazlp170120005.outbound.protection.outlook.com\n ([2a01:111:f403:c405::5] helo=TYPPR03CU001.outbound.protection.outlook.com)\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <jamin_lin@aspeedtech.com>)\n id 1wDelx-0000fs-Ms; Fri, 17 Apr 2026 04:42:00 -0400","from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19)\n by TY0PR06MB5150.apcprd06.prod.outlook.com (2603:1096:400:1b1::6)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9818.25; Fri, 17 Apr\n 2026 08:41:49 +0000","from TYPPR06MB8206.apcprd06.prod.outlook.com\n ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com\n ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9818.023; Fri, 17 Apr 2026\n 08:41:49 +0000"],"ARC-Seal":"i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=k5uZq4g6myUUiZ/kYQDsI7eGHc6SkBlK5nn8tp3xUGK6BywzPL7vnxNy3k2flFKjERpKgw1jCTpSswdzFuqhrj15/75JnXEBSYrCYqm5pvVRKyN4QapvpZilzijYadMCLj66vIhzzHjDXc7FngPXudJlCkT8qKf7KvBLx06viXwFdA9ykFzvXQg3lZBSbzjhdHdu+XGlts5N3+gWuHI7GWo8D4bqHE7KQlA6EkVG/HQeymeq7DCohNIcCGoMHplXqKLeSAezodzP1vg1k6INK3LQtz+rMOh3fpifF5+LdptZzq0DtubyPuq2B+8Zkh5gWTbNu1nXM1UUINcdy3nR/w==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=gco+yE/eMUNEAQA4WOi/H2Hhlm9vg0abhXak9qjjSj4=;\n b=EgMTZM1eqk9VopXT94cwjAJlF99cS9lg+9GTAXfcbvR2x1Wihsyl1mDVEujUuLyutVm0b83KWrTj0fOeQ7E6dtXCZvrRx4RUF1MvhJCPEcd3HO8Z/NIjCwaRwzKre10vFdWeLu41vhfRaR/XYpzRE1YqWFz1sGFSFiZUlkdJDUWdDpwAgL4HA+L75Oaov7hT1rjfZcj7W4T8A/afkpQWtJz59Xp3g32F5GEqvYgOjtTgL+1rUMh9zbr6TZ68ab+kVrk2l4qDl1leA1jK1GCTSA2v/VdccV9aKsZ9DICXSVqEH7v0GxC7WAsp3+hMPS2IKeqEcHd4oZgkI0Q6a+OFHA==","ARC-Authentication-Results":"i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=aspeedtech.com; dmarc=pass action=none\n header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com;\n s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=gco+yE/eMUNEAQA4WOi/H2Hhlm9vg0abhXak9qjjSj4=;\n b=jmh/X5HQyCoCLJXwexCwSrgtodN/8gMenknSKxF+JDZtEwOe0JG9uLT/V5pZ5AlWoWRsDjdccuV0wMf82bS53U3LwIhxsapTAId6RP4FDIDxYaqq91KYAFFUdbYPyVJHlANdvMhehxJYuDAFiDfgLkzLPFn/xCJWJ/SpN7qd1xhouiOBrv1NPjvO0rTzeHtev3oe4a7sGyoft9W0984jQW4IJDTvHFqGxkYUXPZ89qQjn7tl0+ZzIcK2Plkv9I6HTm7B4DN6I1MQ4URibOoe3PLlvuCzDdpwnBalrjZmG4i4P0KQ5xEkeEv8AxO3biHEDS7Gnwc21ZIPPBWPGeSU+w==","From":"Jamin Lin <jamin_lin@aspeedtech.com>","To":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>, =?utf-8?q?C?=\n\t=?utf-8?q?=C3=A9dric_Le_Goater?= <clg@kaod.org>,\n Peter Maydell <peter.maydell@linaro.org>,\n Steven Lee <steven_lee@aspeedtech.com>, Troy Lee <leetroy@gmail.com>,\n Kane Chen <kane_chen@aspeedtech.com>,\n Andrew Jeffery <andrew@codeconstruct.com.au>, Joel Stanley <joel@jms.id.au>,\n \"open list:ASPEED BMCs\" <qemu-arm@nongnu.org>,\n \"open list:All patches CC here\" <qemu-devel@nongnu.org>","CC":"Troy Lee <troy_lee@aspeedtech.com>, \"flwu@google.com\" <flwu@google.com>,\n \"nabihestefan@google.com\" <nabihestefan@google.com>","Subject":"RE: [PATCH v3 04/17] hw/usb/hcd-ehci.c: Replace fprintf(stderr, ...)\n with qemu_log_mask(LOG_GUEST_ERROR)","Thread-Topic":"[PATCH v3 04/17] hw/usb/hcd-ehci.c: Replace fprintf(stderr, ...)\n with qemu_log_mask(LOG_GUEST_ERROR)","Thread-Index":"AQHczUNIl3qnO/08SECSdkVJPlcLgLXizScAgAAj9sA=","Date":"Fri, 17 Apr 2026 08:41:49 +0000","Message-ID":"\n <TYPPR06MB82068BB67441B62563D00D47FC202@TYPPR06MB8206.apcprd06.prod.outlook.com>","References":"<20260416014928.1279360-1-jamin_lin@aspeedtech.com>\n <20260416014928.1279360-5-jamin_lin@aspeedtech.com>\n <3f586dbd-9695-452e-9afb-e4cb49a40b77@linaro.org>","In-Reply-To":"<3f586dbd-9695-452e-9afb-e4cb49a40b77@linaro.org>","Accept-Language":"zh-TW, en-US","Content-Language":"zh-TW","X-MS-Has-Attach":"","X-MS-TNEF-Correlator":"","authentication-results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=aspeedtech.com header.i=@aspeedtech.com\n header.a=rsa-sha256 header.s=selector1 header.b=jmh/X5HQ;\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=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=aspeedtech.com;"],"x-ms-publictraffictype":"Email","x-ms-traffictypediagnostic":"TYPPR06MB8206:EE_|TY0PR06MB5150:EE_","x-ms-office365-filtering-correlation-id":"ba9ff1d8-94a7-4688-fa0d-08de9c5d2ab8","x-ms-exchange-senderadcheck":"1","x-ms-exchange-antispam-relay":"0","x-microsoft-antispam":"BCL:0;\n ARA:13230040|1800799024|366016|7416014|376014|38070700021|921020|18002099003|22082099003|56012099003;","x-microsoft-antispam-message-info":"\n khOJTTJ7ITleLtvSWNhTgKa42+ZAKxIsnSlGxBrEZwrqz9so7QZ9AQXGg/ZtcCpJ7tHnZNJF8ehw9HNooxLwJMnQ0obOfaKWYB+iNKyYQsyJXFZvTWnMJtcnFPjjnu6M46rtZFbl5oEE4pfa0EtsGT08+UTsukYv1U/FiswigPemvi4QOfHC68/zQ0aLuAXCx/U6+0m550WvWA5HePzhZYHDU4wxTY5hKjUBx/ezB7vg8e7wPek2ExKqopDRqP0OrSOH5w/vy7pWpqTTVH0UktBIExN2+t/Z9q2bmZ21TuGmANNTSoT7ctjdG7piUvOQzGMExWseIdkwPdpV5vagQNHghdT9SHDxeYpDb5ul9OqTSWPPB3mxRwJmazt/H/SL9pSeL3dvxj6m/s6EA2j8q5/BoKP4PmlpSeNlbhvrclZKu98kvToiABN+jYLvd3u5DUR0iX6vdpDMoagaVS1emdHA8Mt/uT5Ty75WTvmO6NR8BeFAMT0PCQ0IAuV638lJpqIAS+RlE+dLs3BmxsMZQlVCeolj01x/Ud+dlF9zpuGvEosULjEKtVbn7DzRGdhc9RgWkOUfG2+9+VKPFMpOn8i5Fb2V+wqnS7pye+0xSFLEK4HzFzwmq/OfBToTfc7FgnDv8SRu0iYyQVGQo3WDgA4UsUQdJn6IMsojFFVzKVDKhkUAgYfAR+QOcnFylgdMnAM94vT0Zn5mSePOnZc9T1OXDq6Sltc4GyubQZIQJ4slyuv43+4Q4EdZscr5sYtlPdvToNs5w07JGDGYeV56lU5u9aF/HFVivSopR1BOKHCqoPQXjnsYWfQIZFCUM/t7","x-forefront-antispam-report":"CIP:255.255.255.255; CTRY:; LANG:zh-tw; SCL:1;\n SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:;\n CAT:NONE;\n SFS:(13230040)(1800799024)(366016)(7416014)(376014)(38070700021)(921020)(18002099003)(22082099003)(56012099003);\n DIR:OUT; SFP:1102;","x-ms-exchange-antispam-messagedata-chunkcount":"1","x-ms-exchange-antispam-messagedata-0":"=?utf-8?q?cvMosD6ugqzaeov6lkqbJa7Q2iUi?=\n\t=?utf-8?q?wqrrYF4sQfJIZ2cGXeOS3utscbFTwaBLlA+D08/EB1Wo1qbsjnfGGuKHZEpq/jt+1?=\n\t=?utf-8?q?LX05nEwQop5YrwfQf7SrY6Xfs12/Lk/2J7bFgjePbOvv7xX3xpCwAggSl8tfHlwMv?=\n\t=?utf-8?q?auT6cKZftmBKKrxYJeqyTS2Uz7v7LtFac5qb/QxMPqwuIPlAZjkasj3kH3RKn27sV?=\n\t=?utf-8?q?f7T6RL38gGe80sVEXODNqk2CkRvmmakta71gTNNDmdRp0CfFNuTJnLgBs2K+NoHwO?=\n\t=?utf-8?q?E/lO1Md+6OUExH9mYfkNZyF8t/sZCvd9eyvubqa/j3GZt/RHDpWqyfgYYPGssymCL?=\n\t=?utf-8?q?tpNbIyUsAcKKEQDiWriWvu6WH2M3addcA5a11XHn9bmgRDGZpk0PcwQpubemxZG48?=\n\t=?utf-8?q?+7NDvaIoykVXXdpdRYVVouNI7Y+j8BIYm6kEf9sMdKAQsn7vnWEcMz63GRT94fCe8?=\n\t=?utf-8?q?pxuNY0u0mn9irO0bzgEAV3k6g+iyupb8AUHnAtW8VCLCKvVMUObsm0M4ynGmgp8BZ?=\n\t=?utf-8?q?HEPZqqHaQuKOmxwKvWx4QR2IPudGm8/XVppcUJ1KcEkXN9J8YASmjhQSoDn/jbC3N?=\n\t=?utf-8?q?IjTfGnSDnKRAelnf1KcMLx/PXlO3Sb9kddwUOrZ8VXz6xnRsiT2a4lDP1HOHvypwC?=\n\t=?utf-8?q?cA4olI3jqG+OpfPp7GLpsPp48qQ4v2CDYGM2IGjmEIziKxCBY4248UYSre2Xg4oM2?=\n\t=?utf-8?q?O3iFfrNMqeWkCJJghh1umF8adJfmKYPv+u++zmyvnqj8bD2BhGCAy4pTvZVyXC+gN?=\n\t=?utf-8?q?ilYS6r4Nz97WDi+eYEY2eG60MIi9F9g9SNYdAw+GU+5TsamkJDL7vl3QtREPkBZ4c?=\n\t=?utf-8?q?+VWI+GMLsfbOvanAftRyFduE3AgYmefK8XDFkUWxe0NGJ36hp3EBSNj/utbz3wMhc?=\n\t=?utf-8?q?5+1vNIDBUQPdDzDRDmNywOi2zsYKJsik8R0pDZXhGT33pSBZLTUyt3C3IfcLartSk?=\n\t=?utf-8?q?GqD/TRRlDFm2jkCXdxhuZsvxtRfsGmg52m3PxhpDY2empy9M0DoJuC+GAy1X8MlEu?=\n\t=?utf-8?q?ETNr6A7ZV89H+KjGohHe6dVO9OVutrY6CM31/2TXyXCgtfiv8g8yxyOeW6/Not6Yu?=\n\t=?utf-8?q?yHIt4m/RseT0kjFVYXpVpyWq9yBYnPXyzlT4KI0V/MbugdSc35ZCDbKKkh3ir7vDp?=\n\t=?utf-8?q?cfGqFpkuF/nuzK1gjhnR0pdh5rdkl5PzvKDqS1mZi4oxBuj1Erg2IZbLJ3ugp09oI?=\n\t=?utf-8?q?iIz89m7tciKgmMVEbBSsFFiVEmJ3Ehoa3LAZHsdwRZYT15pH7HSGycYhIVSeEyc4z?=\n\t=?utf-8?q?/1cWqDwZblBobIOqnmSdvxtNLtczocPK7HNB9CRemytDGmvQeE2uq6rOanFGV97mD?=\n\t=?utf-8?q?yAnWfM/x9Z/galXA+2YuP4dZuY7abuIYclDnIXGsuFjG9jakkGdUpHiJDJfMCVRIH?=\n\t=?utf-8?q?XzuIZ6d7Z2UREhVEbN6CT1Yaz9zWGWVamN7RMD74bgK9nKJw9yfPiIQ4ZbieYZlyT?=\n\t=?utf-8?q?EK9kkVatbAVn31TMWEplDL/hMlQzTJBSK8LGU1W+Mi7HeO3Ou0Qm4qISjY3JFyBhW?=\n\t=?utf-8?q?9IpISzILeSayR5LRgC01AW/11+N9NZznal+smRpCzdoh88toiT35YgypCgza72GkH?=\n\t=?utf-8?q?l32Gk9xrTqTKN46V0MrB2+mBBOTqJ+KQIPT+C4LwXrotYJxc5bJNAjPAyGrfQoNAW?=\n\t=?utf-8?q?6tJJEBMzJyeeUjdXDejWu4oGzA1B5zBg=3D=3D?=","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","MIME-Version":"1.0","X-Exchange-RoutingPolicyChecked":"\n iyHK7RM+RhTVzMoT6ohk1vZuLw2GFRE94g8hYMhpsWOJzfl4c2rbuPpoqb8R/LMtobdOocKwaJm3GbNvTg/i74uu4UkfAal4LAz/lzEauOTAg131F2LmOvd+u/1H+N15CLdjdKGBSrUbF5qqGGVq6H6Md137afAeg6N6HJ2WMjH1+nYNAf+dnaeI/SBrQS/mz17DRW9e1PV222Lj4x7NqmShhyyUM+VJpvat4n3kpvXQb67BNSygX2xTiHJ9e0lZ9Ku/Jzscsa4agEkRxeHnxtUQ3eTv7wjb3AIx5RtlAVll3kBwiMqXS/fRhKP6KaSqbS4WB2HkDCdevaf0U0eLhw==","X-OriginatorOrg":"aspeedtech.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-AuthSource":"TYPPR06MB8206.apcprd06.prod.outlook.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n ba9ff1d8-94a7-4688-fa0d-08de9c5d2ab8","X-MS-Exchange-CrossTenant-originalarrivaltime":"17 Apr 2026 08:41:49.5471 (UTC)","X-MS-Exchange-CrossTenant-fromentityheader":"Hosted","X-MS-Exchange-CrossTenant-id":"43d4aa98-e35b-4575-8939-080e90d5a249","X-MS-Exchange-CrossTenant-mailboxtype":"HOSTED","X-MS-Exchange-CrossTenant-userprincipalname":"\n aeKEQ3G6tg+/LzN1fBpStTCRi9noHYTj4BXjYHU/awsbM+jJ93DN8yEoPcvNTbY0ERGHMO59Uu/bNjJM9ymeOgS5NDXV/bGsQ2UIr8/gDd4=","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"TY0PR06MB5150","Received-SPF":"pass client-ip=2a01:111:f403:c405::5;\n envelope-from=jamin_lin@aspeedtech.com;\n helo=TYPPR03CU001.outbound.protection.outlook.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 SPF_HELO_PASS=-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"}}]