[{"id":3678690,"web_url":"http://patchwork.ozlabs.org/comment/3678690/","msgid":"<2bdfa874-468b-4f59-b0c8-a7f51fc9d5d9@linaro.org>","list_archive_url":null,"date":"2026-04-17T12:06:50","subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 17/4/26 11:51, Christian Speich wrote:\n> Currently, erased blocks are filled with 0xFF. However SCR Bit 55\n> (DATA_STAT_AFTER_ERASE) indicates that an erase produces zeros. One of\n> them is wrong.\n> \n> This patch does two things.\n> \n> First it fixes the reporting of DATA_STAT_AFTER_ERASE in SCR to\n> correctly reflect the content of erased blocks. We also increase the\n> Product Revision (REV in CID) to indicate to the guest that\n> DATA_STAT_AFTER_ERASE is now reliable.\n> \n> Secondly, we introduce a erase-blocks-as-zero option, which allows the\n> user to choose if erased blocks should contain 0xFF or 0x00. The default\n> is still 0xFF to remain compatible with current users.\n\nI'll update as:\n\n   Secondly, we introduce a erase-blocks-as-zero option, which allows the\n   user to choose if erased blocks should contain 0xFF or 0x00. While\n   previous QEMU versions keep using the 'erase as 0xFF' pattern, the new\n   default becomes the more efficient 'erase as 0x00'.\n\nDoes it look OK to you?\n\n> Signed-off-by: Christian Speich <c.speich@avm.de>\n> ---\n>   hw/core/machine.c |  5 +++++\n>   hw/sd/sd.c        | 15 +++++++++++++--\n>   2 files changed, 18 insertions(+), 2 deletions(-)\n> \n> diff --git a/hw/core/machine.c b/hw/core/machine.c\n> index 0aa77a57e956693208d77fea6af5853ed4904234..54e4c05c96e3cf35ab2e702ee81fba36457cadd7 100644\n> --- a/hw/core/machine.c\n> +++ b/hw/core/machine.c\n> @@ -38,6 +38,11 @@\n>   #include \"hw/acpi/generic_event_device.h\"\n>   #include \"qemu/audio.h\"\n>   \n> +GlobalProperty hw_compat_11_0[] = {\n> +    { \"sdmmc-common\", \"erase-blocks-as-zero\", \"false\" },\n> +};\n> +const size_t hw_compat_11_0_len = G_N_ELEMENTS(hw_compat_11_0);\n> +\n>   GlobalProperty hw_compat_10_2[] = {\n>       { \"scsi-block\", \"migrate-pr\", \"off\" },\n>       { \"isa-cirrus-vga\", \"global-vmstate\", \"true\" },\n> diff --git a/hw/sd/sd.c b/hw/sd/sd.c\n> index b27fed2e563e5971dd32787498eb8abed9ffe9be..0f997ed8cc80e38645101cb8f47c86f1c30d5a25 100644\n> --- a/hw/sd/sd.c\n> +++ b/hw/sd/sd.c\n\n> @@ -3287,6 +3296,8 @@ static void emmc_realize(DeviceState *dev, Error **errp)\n>   \n>   static const Property sdmmc_common_properties[] = {\n>       DEFINE_PROP_DRIVE(\"drive\", SDState, blk),\n> +    DEFINE_PROP_BOOL(\"erase-blocks-as-zero\", SDState, erase_blocks_as_zero,\n> +                     true),\n>   };\n\nReviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>","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=PGjTFkcp;\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 4fxtsr08D0z1yDF\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 22:07:12 +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 1wDhyQ-0005dM-V5; Fri, 17 Apr 2026 08:07:03 -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 1wDhyK-0005ZP-3A\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 08:06:56 -0400","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 <philmd@linaro.org>) id 1wDhyI-0006k5-9L\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 08:06:55 -0400","by mail-wm1-x331.google.com with SMTP id\n 5b1f17b1804b1-48897fd88ebso6513815e9.2\n for <qemu-devel@nongnu.org>; Fri, 17 Apr 2026 05:06:53 -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-488fb78cddcsm20918655e9.4.2026.04.17.05.06.51\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Fri, 17 Apr 2026 05:06:51 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776427612; x=1777032412; 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=hCdyTlCSQ+qsdrb4C2omNNEWgL5VkAyB7DrklKSduxs=;\n b=PGjTFkcp60suNTfkehUdL0HTnkjxXVyiexr6Gz/nk6f7OBFZ6QR9oPo65mgKuHb8UO\n 6XZM6LtmgjYPOf4j4W1DgnVAFrFVs3WMI2xqixqimOwLIkheJLlb24p/SYCliUr8Cu8U\n sm3VFMe9QYJAUQ9adA0quY7WwkCbhXyuIJ9MUI8WqKANmYY4gghvz1ouKy+LuiwIMXEi\n acNTa2t9C8GwifSdolRYIY17Taqei0m4TINh+gvSn79i9BzlIAlkcXuhyIg4MtRvgnEN\n GbxZGDeseMIdz346WEewC1eTc8NpI2jCW6C+5u3Cr1oIW6Mx++ZagTdwJpkRUsAg6J3+\n e7mg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776427612; x=1777032412;\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=hCdyTlCSQ+qsdrb4C2omNNEWgL5VkAyB7DrklKSduxs=;\n b=fXuqHxVjY9rETRKm/Ws2FrrpJFz650Uwm+3B5R+kTuoYrqyVLzRkQDj1viYw3+G/Zn\n TzNXiiO6HuVMcLN4lw8+zT6pkplw4emRD08vsQNPE/HaVRu7C2zp/+pjecV1rOOCs4Ks\n Cjnk9j2O2lAsclxm0nDL7u5T8t4WRE3tYbl+JEzRGQJL0bI7UO3yeHdNRGmDQXhturnD\n sfgnlT33oCnTuPFNquvR1xg+EkMlMRRqi7ho5nO8LV9zmYAHDJjn+/0SGMKrRNX9BUDt\n viZX6Y7PXWH2p4g52b7jkcdMS09Emro20FSq8FgQYqxl/39X9vj61HGvzy/wiPx3Yshx\n zwUQ==","X-Forwarded-Encrypted":"i=1;\n AFNElJ8F0596pkFJxAmMrsM+MDAOrQwqnzTdZFQ4zi1ylS5uyO/abc7R9ISBS45KRNFPw4M+lIdc9FU07zo2@nongnu.org","X-Gm-Message-State":"AOJu0YzXafVz1JjbILDLcmT5qovryWhu1+JKf1NlTx1P2zSp2uMuf9T2\n U9s4P/vief9R1JO/QltJb976KBXGZC3yWah6rjQkeVqQXlI01/zfqh0QKFCf85FAI20=","X-Gm-Gg":"AeBDievI6xZDnxYrbH8TB4Fe6pWeFL90QWufjXri6/ArwvOjRRbs/2Dqvo6GZWgQYWQ\n 71FE/xrnFJZmdabnEtg5SUTdehAfA4sHxMhg4R1/BbMPT3c3NhO3lo/vyNuPDWzbVjfwTcsPc1I\n ZwiUE+S8tF0UxOnT+CRoRngIDBFG5VCZB1vm1LCP70jLX65Yrpd5ShDrMSn8YPMRfWCJ/r9iedJ\n Xh8BpCB2BAnNHguJntSH7RTJWfc/e0CsvkuJqHZZCQoKMv+50KPXFT0LYB06MC38la2YoHtc2fQ\n H2Co9Xffj915bGtthYQ5LKgMNSD570f3ICg3olB+s2irLe0fCztpp/Y/CJEUEBmQaIDa0iFDBlG\n mUesf1zXD8/ojRQ3+IECqTISXTXA6Piw2hUsyh2y+OwZLctAMAOgX7gCcglXqSQiY3Pe+oyBigs\n 3y1drP7inE5SgSpV8vAVEE6+vLjWcbqEvY6ngCz6jCS7ITM1VH7rb4pV7HWIMz9BEWeUr7sVy9w\n 4/n","X-Received":"by 2002:a05:600c:e40b:b0:487:1fbf:e0bb with SMTP id\n 5b1f17b1804b1-488fb73d78amr29191125e9.6.1776427612389;\n Fri, 17 Apr 2026 05:06:52 -0700 (PDT)","Message-ID":"<2bdfa874-468b-4f59-b0c8-a7f51fc9d5d9@linaro.org>","Date":"Fri, 17 Apr 2026 14:06:50 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","Content-Language":"en-US","To":"Christian Speich <c.speich@avm.de>, qemu-devel@nongnu.org","Cc":"Bin Meng <bmeng.cn@gmail.com>, qemu-block@nongnu.org,\n Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,\n Yanan Wang <wangyanan55@huawei.com>, Zhao Liu <zhao1.liu@intel.com>","References":"<20260417-sdcard-performance-b4-v4-0-119e66be10c2@avm.de>\n <20260417-sdcard-performance-b4-v4-5-119e66be10c2@avm.de>","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","In-Reply-To":"<20260417-sdcard-performance-b4-v4-5-119e66be10c2@avm.de>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::331;\n envelope-from=philmd@linaro.org; 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"}},{"id":3678691,"web_url":"http://patchwork.ozlabs.org/comment/3678691/","msgid":"<b57f0f08-d725-425f-bd5f-7d127f6fa83f@linaro.org>","list_archive_url":null,"date":"2026-04-17T12:09:24","subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 17/4/26 14:06, Philippe Mathieu-Daudé wrote:\n> On 17/4/26 11:51, Christian Speich wrote:\n>> Currently, erased blocks are filled with 0xFF. However SCR Bit 55\n>> (DATA_STAT_AFTER_ERASE) indicates that an erase produces zeros. One of\n>> them is wrong.\n>>\n>> This patch does two things.\n>>\n>> First it fixes the reporting of DATA_STAT_AFTER_ERASE in SCR to\n>> correctly reflect the content of erased blocks. We also increase the\n>> Product Revision (REV in CID) to indicate to the guest that\n>> DATA_STAT_AFTER_ERASE is now reliable.\n>>\n>> Secondly, we introduce a erase-blocks-as-zero option, which allows the\n>> user to choose if erased blocks should contain 0xFF or 0x00. The default\n>> is still 0xFF to remain compatible with current users.\n> \n> I'll update as:\n> \n>    Secondly, we introduce a erase-blocks-as-zero option, which allows the\n>    user to choose if erased blocks should contain 0xFF or 0x00. While\n>    previous QEMU versions keep using the 'erase as 0xFF' pattern, the new\n>    default becomes the more efficient 'erase as 0x00'.\n> \n> Does it look OK to you?\n> \n>> Signed-off-by: Christian Speich <c.speich@avm.de>\n>> ---\n>>   hw/core/machine.c |  5 +++++\n>>   hw/sd/sd.c        | 15 +++++++++++++--\n>>   2 files changed, 18 insertions(+), 2 deletions(-)\n>>\n>> diff --git a/hw/core/machine.c b/hw/core/machine.c\n>> index \n>> 0aa77a57e956693208d77fea6af5853ed4904234..54e4c05c96e3cf35ab2e702ee81fba36457cadd7 100644\n>> --- a/hw/core/machine.c\n>> +++ b/hw/core/machine.c\n>> @@ -38,6 +38,11 @@\n>>   #include \"hw/acpi/generic_event_device.h\"\n>>   #include \"qemu/audio.h\"\n>> +GlobalProperty hw_compat_11_0[] = {\n>> +    { \"sdmmc-common\", \"erase-blocks-as-zero\", \"false\" },\n>> +};\n>> +const size_t hw_compat_11_0_len = G_N_ELEMENTS(hw_compat_11_0);\n>> +\n>>   GlobalProperty hw_compat_10_2[] = {\n>>       { \"scsi-block\", \"migrate-pr\", \"off\" },\n>>       { \"isa-cirrus-vga\", \"global-vmstate\", \"true\" },\n>> diff --git a/hw/sd/sd.c b/hw/sd/sd.c\n>> index \n>> b27fed2e563e5971dd32787498eb8abed9ffe9be..0f997ed8cc80e38645101cb8f47c86f1c30d5a25 100644\n>> --- a/hw/sd/sd.c\n>> +++ b/hw/sd/sd.c\n> \n>> @@ -3287,6 +3296,8 @@ static void emmc_realize(DeviceState *dev, Error \n>> **errp)\n>>   static const Property sdmmc_common_properties[] = {\n>>       DEFINE_PROP_DRIVE(\"drive\", SDState, blk),\n>> +    DEFINE_PROP_BOOL(\"erase-blocks-as-zero\", SDState, \n>> erase_blocks_as_zero,\n>> +                     true),\n\nAlthough to maintain bisectability we should expose the property\nafter the next patch -- the 0x00 implementation --.\n\n>>   };\n> \n> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>\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=WSzkKABh;\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 4fxtxL6Pcwz1yD3\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 22:10:14 +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 1wDi1K-0006wY-5B; Fri, 17 Apr 2026 08:10:07 -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 1wDi0o-0006rd-N3\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 08:09:34 -0400","from mail-wm1-x335.google.com ([2a00:1450:4864:20::335])\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 1wDi0m-0007MW-L3\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 08:09:30 -0400","by mail-wm1-x335.google.com with SMTP id\n 5b1f17b1804b1-488af9fdaa7so4248675e9.1\n for <qemu-devel@nongnu.org>; Fri, 17 Apr 2026 05:09:28 -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-488fb7c2167sm15067905e9.36.2026.04.17.05.09.25\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Fri, 17 Apr 2026 05:09:25 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776427766; x=1777032566; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:references:cc:to:from\n :content-language:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=ETIheo6n0POO6m+3vqnolVCAr2ujTEu5quAYRMbusmU=;\n b=WSzkKABhQrbF2l9QO8lbYBhWWqGJk+Kzs5BTp6FMViJQBqFKNEzmyz97gfxT4mjJqh\n pQsYUwlhAoXF7VHWzt6IOO/tW/ybO9h7jPjuFXD7+8XRzybbh7kKmdtHGMqnrhWWuhxx\n hQSjKYsRXq9pY80XUsdzSK9h+MVvp7FfAh+YjtYitGpt+cu902eDpdiiLVQGQg+c9u5c\n rCX3uR+qQcAAquWl2P+XkD+cQzaH6Nd9K2ETfpGgXGIn1tp5I3MDcj2vv83z3KE15FlA\n AwHSuRI+KOFO9tCIWjdAqMJtjdZGeYM7MFNWCB/v5yKgUQHeIrQI7A43bPIFK3biSwIO\n 4S2Q==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776427766; x=1777032566;\n h=content-transfer-encoding:in-reply-to:references:cc:to:from\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=ETIheo6n0POO6m+3vqnolVCAr2ujTEu5quAYRMbusmU=;\n b=nLDX6CV7LKsaT6cFORvZvMrFNaAD2v2xoQkluK3yf1Mj7J9m8Jo1ZD2A8RyLfkdTAr\n lD3+Yq/yj/yBLOZ9ld7EJAxa5sgoGy8+H7kcNQAZ7KbGAWo1FB+Et+YWHApoW3YsiTu1\n us1LljE3ZbrzX9TQBfkkhfKpg4DgTrpVuCd0hYVHMjlxxo4PpWDyYB0IfP4yq/LBDv44\n vzMtMUwoG9q9v/Y2OEE3MJKj6UxJUppX7QFGjB8BGow+qeUc75T0sZEgu1ZLqvG/ACZp\n 3offwWiGxRInKaE9uZK7O8AZHu/KfDbch5baTAEYViL8Mo9HZSEcb/4jT0ICWB0IvyjP\n GlOA==","X-Forwarded-Encrypted":"i=1;\n AFNElJ9eOvxwHrnR17MQRgl5n+1X6TK2kZs9lccwW5iPq9lluaeZAVku8tu8Me796vWdjGgYvi2oU1fwxerm@nongnu.org","X-Gm-Message-State":"AOJu0YxqRIUOKX1c2QSBBh93a68a6WNyM4xBih6bzJc4RIAO0QB9RIOZ\n C65fwoRdmzJw8vUzWesyz7ycZZOB2hrDTql1wN0X4nkWI0UnB7kXCavNBLXkwI0/oVg=","X-Gm-Gg":"AeBDiesiJt79AJbbEsvtJ423RjPNpbotJ2Zg1A/e7XRLEc+Pojgn4vwASxpqTnL1FyD\n 4m7qm369mOEwRcxL/7h0+i+D3VwgWsxIpUsm+c26I4B/P9aA9j5uO8qZ/GqBvUsJHm7jDbkYgV6\n DOWi5j48kTYNU5FwRBB5PwDUxR7MT1CUpMTsXn58mu0d2E4Zlu+D+MGDUnnsd8vRKRcOnk5P1Iz\n RROaOBIvv8/+V9LFkk/RQ5bVqzoowm5CnnhKNFYl+UW2LWq28J9WOnBUxltnTvB+e52cz8XKg+N\n 185uCMp7AJX6g2uVWRABxsKzdnibomOGvHx536rdeZZzc5uhitUrzASM/eiWrILiZK1dyGF4BSG\n 9iTpLViVxNC8I7YkRFx1irTEdGmQik2owwgHiRC/oWxsb+eGXPIiF+a2eQ8Cdg7OUz7RvEuFnNd\n 9XQbd1Q9gJ/keKZFbBY4ywgGJ19MRJs7ou+HY8DVE1WYtYUqzAqY+bxVUTgqwacdEgOoutcn14l\n RbHHR7bIPjSWag=","X-Received":"by 2002:a05:600c:8207:b0:485:3193:6ddb with SMTP id\n 5b1f17b1804b1-488fb73cf74mr39274645e9.3.1776427766390;\n Fri, 17 Apr 2026 05:09:26 -0700 (PDT)","Message-ID":"<b57f0f08-d725-425f-bd5f-7d127f6fa83f@linaro.org>","Date":"Fri, 17 Apr 2026 14:09:24 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","Content-Language":"en-US","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","To":"Christian Speich <c.speich@avm.de>, qemu-devel@nongnu.org","Cc":"Bin Meng <bmeng.cn@gmail.com>, qemu-block@nongnu.org,\n Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,\n Yanan Wang <wangyanan55@huawei.com>, Zhao Liu <zhao1.liu@intel.com>","References":"<20260417-sdcard-performance-b4-v4-0-119e66be10c2@avm.de>\n <20260417-sdcard-performance-b4-v4-5-119e66be10c2@avm.de>\n <2bdfa874-468b-4f59-b0c8-a7f51fc9d5d9@linaro.org>","In-Reply-To":"<2bdfa874-468b-4f59-b0c8-a7f51fc9d5d9@linaro.org>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::335;\n envelope-from=philmd@linaro.org; helo=mail-wm1-x335.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":3678694,"web_url":"http://patchwork.ozlabs.org/comment/3678694/","msgid":"<73f62ca9-0960-42c2-b0ca-3699eca2e223@linaro.org>","list_archive_url":null,"date":"2026-04-17T12:11:50","subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 17/4/26 14:09, Philippe Mathieu-Daudé wrote:\n> On 17/4/26 14:06, Philippe Mathieu-Daudé wrote:\n>> On 17/4/26 11:51, Christian Speich wrote:\n>>> Currently, erased blocks are filled with 0xFF. However SCR Bit 55\n>>> (DATA_STAT_AFTER_ERASE) indicates that an erase produces zeros. One of\n>>> them is wrong.\n>>>\n>>> This patch does two things.\n>>>\n>>> First it fixes the reporting of DATA_STAT_AFTER_ERASE in SCR to\n>>> correctly reflect the content of erased blocks. We also increase the\n>>> Product Revision (REV in CID) to indicate to the guest that\n>>> DATA_STAT_AFTER_ERASE is now reliable.\n>>>\n>>> Secondly, we introduce a erase-blocks-as-zero option, which allows the\n>>> user to choose if erased blocks should contain 0xFF or 0x00. The default\n>>> is still 0xFF to remain compatible with current users.\n>>\n>> I'll update as:\n>>\n>>    Secondly, we introduce a erase-blocks-as-zero option, which allows the\n>>    user to choose if erased blocks should contain 0xFF or 0x00. While\n>>    previous QEMU versions keep using the 'erase as 0xFF' pattern, the new\n>>    default becomes the more efficient 'erase as 0x00'.\n>>\n>> Does it look OK to you?\n>>\n>>> Signed-off-by: Christian Speich <c.speich@avm.de>\n>>> ---\n>>>   hw/core/machine.c |  5 +++++\n>>>   hw/sd/sd.c        | 15 +++++++++++++--\n>>>   2 files changed, 18 insertions(+), 2 deletions(-)\n>>>\n>>> diff --git a/hw/core/machine.c b/hw/core/machine.c\n>>> index \n>>> 0aa77a57e956693208d77fea6af5853ed4904234..54e4c05c96e3cf35ab2e702ee81fba36457cadd7 100644\n>>> --- a/hw/core/machine.c\n>>> +++ b/hw/core/machine.c\n>>> @@ -38,6 +38,11 @@\n>>>   #include \"hw/acpi/generic_event_device.h\"\n>>>   #include \"qemu/audio.h\"\n>>> +GlobalProperty hw_compat_11_0[] = {\n>>> +    { \"sdmmc-common\", \"erase-blocks-as-zero\", \"false\" },\n>>> +};\n>>> +const size_t hw_compat_11_0_len = G_N_ELEMENTS(hw_compat_11_0);\n>>> +\n>>>   GlobalProperty hw_compat_10_2[] = {\n>>>       { \"scsi-block\", \"migrate-pr\", \"off\" },\n>>>       { \"isa-cirrus-vga\", \"global-vmstate\", \"true\" },\n>>> diff --git a/hw/sd/sd.c b/hw/sd/sd.c\n>>> index \n>>> b27fed2e563e5971dd32787498eb8abed9ffe9be..0f997ed8cc80e38645101cb8f47c86f1c30d5a25 100644\n>>> --- a/hw/sd/sd.c\n>>> +++ b/hw/sd/sd.c\n>>\n>>> @@ -3287,6 +3296,8 @@ static void emmc_realize(DeviceState *dev, \n>>> Error **errp)\n>>>   static const Property sdmmc_common_properties[] = {\n>>>       DEFINE_PROP_DRIVE(\"drive\", SDState, blk),\n>>> +    DEFINE_PROP_BOOL(\"erase-blocks-as-zero\", SDState, \n>>> erase_blocks_as_zero,\n>>> +                     true),\n> \n> Although to maintain bisectability we should expose the property\n> after the next patch -- the 0x00 implementation --.\n\nAh no, this is correct, this patch contains the memset() implementation,\nand the following patch *optimize* :)\n\n> \n>>>   };\n>>\n>> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>\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=lDrF1bFF;\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 4fxv082wymz1yD3\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 22:12:38 +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 1wDi3R-0007c2-0R; Fri, 17 Apr 2026 08:12:13 -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 1wDi3B-0007b5-VH\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 08:11:59 -0400","from mail-wr1-x432.google.com ([2a00:1450:4864:20::432])\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 1wDi39-00082d-Um\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 08:11:57 -0400","by mail-wr1-x432.google.com with SMTP id\n ffacd0b85a97d-43cf8d550bdso598569f8f.0\n for <qemu-devel@nongnu.org>; Fri, 17 Apr 2026 05:11:53 -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 ffacd0b85a97d-43fe4e3a341sm4455481f8f.24.2026.04.17.05.11.51\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Fri, 17 Apr 2026 05:11:51 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776427912; x=1777032712; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:references:cc:to:from\n :content-language:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=DjTzZb6kIivx8dL+r7coKGYIBTGCecSaPSQSzCs2fc0=;\n b=lDrF1bFFVN1eNuihD01u+I1IoDlDuLOPLFsfdNn7kkUvxBvhoWqQZ1plpdRFis4Kbq\n QhVHIcqr8NbxYc6eAVbEUPt6ciFcFqTCLHB8HYRZTpE7QPLPSKi90YmAqeBJUmYTtrxS\n Cmi7KSYItSpriIbGLfzaFBvPlWuqHl4GwpazPKA6XZWsTHeUVBHQovKQgO7Xb34L3pap\n 71Vpd4ih8fiFEN3TMMll3SfNmOfnOFzXP2jcLE+wYhBxUSdBJ4iVbDasYezAkZugBBW0\n yuwQ974lzou932nAiascLn42IMv6fdavTZfL8idhTRJ1pBOj1jLMMxYLKODevc5VW3mb\n mQbA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776427912; x=1777032712;\n h=content-transfer-encoding:in-reply-to:references:cc:to:from\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=DjTzZb6kIivx8dL+r7coKGYIBTGCecSaPSQSzCs2fc0=;\n b=D6eXHPzvuw5n6wpyHuJajaV/oXbE65zL900bNXY1TqzXQF3R9aPC6pEDlA59G15LBN\n bffslv1vQgSGp2K242b5K424saEwviNGdrrUUmTQ0DIs8TxfqIr6g0PTGLh1dB4bn2IC\n R6aLt1oKIOooNVJ0eIfSWWVEqdtqtJoNmtz8dVrSb4l2ZJsVzhoaS3i6wZt9eeskNLEj\n Ib1HZVxeVwDn9BFJ7Qs3Bw8snnMUZDt/mv/izrFuhHN8P/7g9G39jeLXGugG1GKxnStz\n nx0uM4cjQbGxWN9UL4j/p9iYkto0dNbNDhpPYIERsrQBw2XgEY+LOzMvdHJUU0FWobvw\n Rx/A==","X-Forwarded-Encrypted":"i=1;\n AFNElJ90UDNvq5EbPwGkVGVw5G3Se7TzXi09+LW+wkghHXCI+vb726kCRQRYv6fU5xQnJbYyLgdpYB9VIFo/@nongnu.org","X-Gm-Message-State":"AOJu0YwCLnH2bqbLXXuuaq03nS/unMwmTkw7c0BpAaIar2pi26epS49H\n XbLEYORXJ+KYI2CHwAD+Hp7FXHa6mBPYP7mNJ96Njsq25RF/04C0WlG6j7cvkQAkhs0=","X-Gm-Gg":"AeBDietPpTy7z4QvX73NMGEDsV7pnGoAEfqcyG8GvxcEeJgQIaWVaJ+aHnF7avFbIvS\n Wq5PmjhhG2ZDNKnC+lsHpL8PvwUzKSzLpCkY5/qHNV2koI/VUk54fSb5YvpicuDIi1qH4wSP88l\n efQbqMPYEDGsJ5BcCDwXz/wpqgpmRUBAQYEbjEVcrce0wLB7DkpJpjEPvx5oQdNuueKwpHr3e0n\n lGPLSigGSM8J4JU/YYYgV/6/K8crD5/p92zDzenE+1klK2BLLxbUlQ5YU+PKuxeNuqiUtiVVpeC\n ty7hY5bexZDBeLYjPD/SklpTRb89APxCAv7Koyj3Xov5itu/HfhIqgE2CxGgDt9OMs+dJs/CwuX\n ncN04Vr5dZXO4xKMRL/gdgGO1xY8J2OHatZtziGQUBkKQZcQ2g3l+MRpK6rIyhmY5KmjJT/PQnq\n aG5Yyja5IgkjnAqbBwslAagvMXtXi0k/JSHEUNH8QN8ZWEVEnPdgTnVgpObOVYu7FNhDc/WQ7iQ\n eC5","X-Received":"by 2002:a05:6000:2c0c:b0:43f:e22e:e8da with SMTP id\n ffacd0b85a97d-43fe3dc5b0bmr3844339f8f.5.1776427912178;\n Fri, 17 Apr 2026 05:11:52 -0700 (PDT)","Message-ID":"<73f62ca9-0960-42c2-b0ca-3699eca2e223@linaro.org>","Date":"Fri, 17 Apr 2026 14:11:50 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","Content-Language":"en-US","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","To":"Christian Speich <c.speich@avm.de>, qemu-devel@nongnu.org","Cc":"Bin Meng <bmeng.cn@gmail.com>, qemu-block@nongnu.org,\n Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,\n Yanan Wang <wangyanan55@huawei.com>, Zhao Liu <zhao1.liu@intel.com>","References":"<20260417-sdcard-performance-b4-v4-0-119e66be10c2@avm.de>\n <20260417-sdcard-performance-b4-v4-5-119e66be10c2@avm.de>\n <2bdfa874-468b-4f59-b0c8-a7f51fc9d5d9@linaro.org>\n <b57f0f08-d725-425f-bd5f-7d127f6fa83f@linaro.org>","In-Reply-To":"<b57f0f08-d725-425f-bd5f-7d127f6fa83f@linaro.org>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::432;\n envelope-from=philmd@linaro.org; helo=mail-wr1-x432.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"}},{"id":3679229,"web_url":"http://patchwork.ozlabs.org/comment/3679229/","msgid":"<lzsepp6tyxsfivi5zjqk4m3m2otbqwhyqfpkk6b26u4ecm7ab6@x2enoxyynbq6>","list_archive_url":null,"date":"2026-04-20T06:11:00","subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","submitter":{"id":91343,"url":"http://patchwork.ozlabs.org/api/people/91343/","name":"Christian Speich","email":"c.speich@avm.de"},"content":"On Fri, Apr 17, 2026 at 02:06:50PM +0200, Philippe Mathieu-Daudé wrote:\n> On 17/4/26 11:51, Christian Speich wrote:\n> > Currently, erased blocks are filled with 0xFF. However SCR Bit 55\n> > (DATA_STAT_AFTER_ERASE) indicates that an erase produces zeros. One of\n> > them is wrong.\n> > \n> > This patch does two things.\n> > \n> > First it fixes the reporting of DATA_STAT_AFTER_ERASE in SCR to\n> > correctly reflect the content of erased blocks. We also increase the\n> > Product Revision (REV in CID) to indicate to the guest that\n> > DATA_STAT_AFTER_ERASE is now reliable.\n> > \n> > Secondly, we introduce a erase-blocks-as-zero option, which allows the\n> > user to choose if erased blocks should contain 0xFF or 0x00. The default\n> > is still 0xFF to remain compatible with current users.\n> \n> I'll update as:\n> \n>   Secondly, we introduce a erase-blocks-as-zero option, which allows the\n>   user to choose if erased blocks should contain 0xFF or 0x00. While\n>   previous QEMU versions keep using the 'erase as 0xFF' pattern, the new\n>   default becomes the more efficient 'erase as 0x00'.\n> \n> Does it look OK to you?\n\nYes, looks good, thanks.\n\nKind Regards,\nChristian\n\n> \n> > Signed-off-by: Christian Speich <c.speich@avm.de>\n> > ---\n> >   hw/core/machine.c |  5 +++++\n> >   hw/sd/sd.c        | 15 +++++++++++++--\n> >   2 files changed, 18 insertions(+), 2 deletions(-)\n> > \n> > diff --git a/hw/core/machine.c b/hw/core/machine.c\n> > index 0aa77a57e956693208d77fea6af5853ed4904234..54e4c05c96e3cf35ab2e702ee81fba36457cadd7 100644\n> > --- a/hw/core/machine.c\n> > +++ b/hw/core/machine.c\n> > @@ -38,6 +38,11 @@\n> >   #include \"hw/acpi/generic_event_device.h\"\n> >   #include \"qemu/audio.h\"\n> > +GlobalProperty hw_compat_11_0[] = {\n> > +    { \"sdmmc-common\", \"erase-blocks-as-zero\", \"false\" },\n> > +};\n> > +const size_t hw_compat_11_0_len = G_N_ELEMENTS(hw_compat_11_0);\n> > +\n> >   GlobalProperty hw_compat_10_2[] = {\n> >       { \"scsi-block\", \"migrate-pr\", \"off\" },\n> >       { \"isa-cirrus-vga\", \"global-vmstate\", \"true\" },\n> > diff --git a/hw/sd/sd.c b/hw/sd/sd.c\n> > index b27fed2e563e5971dd32787498eb8abed9ffe9be..0f997ed8cc80e38645101cb8f47c86f1c30d5a25 100644\n> > --- a/hw/sd/sd.c\n> > +++ b/hw/sd/sd.c\n> \n> > @@ -3287,6 +3296,8 @@ static void emmc_realize(DeviceState *dev, Error **errp)\n> >   static const Property sdmmc_common_properties[] = {\n> >       DEFINE_PROP_DRIVE(\"drive\", SDState, blk),\n> > +    DEFINE_PROP_BOOL(\"erase-blocks-as-zero\", SDState, erase_blocks_as_zero,\n> > +                     true),\n> >   };\n> \n> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>\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 (1024-bit key;\n unprotected) header.d=avm.de header.i=@avm.de header.a=rsa-sha256\n header.s=mail header.b=JQB7NKQY;\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 4fzZrt4J2Mz1yGs\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 20 Apr 2026 16:12:13 +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 1wEhqu-0000JV-QD; Mon, 20 Apr 2026 02:11:25 -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 <c.speich@avm.de>)\n id 1wEhqj-0000IZ-23; Mon, 20 Apr 2026 02:11:14 -0400","from mail.avm.de ([212.42.244.120])\n by eggs.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <c.speich@avm.de>)\n id 1wEhqe-00013O-Ve; Mon, 20 Apr 2026 02:11:11 -0400","from [172.16.0.1] (helo=mail.avm.de)\n by mail.avm.de with ESMTP (eXpurgate 4.55.2)\n (envelope-from <c.speich@avm.de>)\n id 69e5c375-04a0-7f0000032729-7f000001c46c-1\n for <multiple-recipients>; Mon, 20 Apr 2026 08:11:01 +0200","from mail-notes.avm.de (mail-notes.avm.de [172.16.0.1])\n by mail.avm.de (Postfix) with ESMTP;\n Mon, 20 Apr 2026 08:11:01 +0200 (CEST)","from l-cspeich ([172.17.89.139])\n by mail-notes.avm.de (HCL Domino Release 14.0FP4)\n with ESMTP id 2026042008110178-397 ; Mon, 20 Apr 2026 08:11:01 +0200"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=avm.de; s=mail;\n t=1776665461; bh=4Fal2xIRmMlpUVYVNP3GCV943FUFHigfFD9v3c84+go=;\n h=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n b=JQB7NKQYuKWS5DTmV1SQhXBTzF4dg30KDxZXGqoxqiOVnQDbUCT3/KKdK1U1ZdFQJ\n F1zu/CVCJo1I5SnzG9zhFwDuRiBS6hYkJTXdBcNh1QOLF0smIHaX2OCvO9nqje9X+1\n CpmjPxeMA5y1OTedzGUq7evzbIYsD+i7Y5kPkuGE=","Date":"Mon, 20 Apr 2026 08:11:00 +0200","From":"Christian Speich <c.speich@avm.de>","To":"Philippe =?utf-8?q?Mathieu-Daud=C3=A9?= <philmd@linaro.org>","Cc":"qemu-devel@nongnu.org, Bin Meng <bmeng.cn@gmail.com>,\n qemu-block@nongnu.org,\n Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Yanan Wang\n <wangyanan55@huawei.com>, Zhao Liu <zhao1.liu@intel.com>","Subject":"Re: [PATCH v4 5/7] hw/sd/sdcard: Add erase-blocks-as-zero option.","Message-ID":"<lzsepp6tyxsfivi5zjqk4m3m2otbqwhyqfpkk6b26u4ecm7ab6@x2enoxyynbq6>","References":"<20260417-sdcard-performance-b4-v4-0-119e66be10c2@avm.de>\n <20260417-sdcard-performance-b4-v4-5-119e66be10c2@avm.de>\n <2bdfa874-468b-4f59-b0c8-a7f51fc9d5d9@linaro.org>","MIME-Version":"1.0","In-Reply-To":"<2bdfa874-468b-4f59-b0c8-a7f51fc9d5d9@linaro.org>","X-MIMETrack":"Itemize by SMTP Server on ANIS1/AVM(Release 14.0FP4|March 10,\n 2025) at 20.04.2026 08:11:01,\n Serialize by Router on ANIS1/AVM(Release 14.0FP4|March 10, 2025) at\n 20.04.2026 08:11:01, Serialize complete at 20.04.2026 08:11:01","X-TNEFEvaluated":"1","Content-Transfer-Encoding":"8bit","Content-Type":"text/plain; charset=iso-8859-1","Content-Disposition":"inline","X-purgate-ID":"149429::1776665461-2CFDF98C-25D65AE6/0/0","X-purgate-type":"clean","X-purgate-size":"2658","X-purgate-Ad":"Categorized by eleven eXpurgate (R) https://www.eleven.de","X-purgate":["This mail is considered clean (visit https://www.eleven.de for\n further information)","clean"],"Received-SPF":"pass client-ip=212.42.244.120; envelope-from=c.speich@avm.de;\n helo=mail.avm.de","X-Spam_score_int":"-43","X-Spam_score":"-4.4","X-Spam_bar":"----","X-Spam_report":"(-4.4 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001,\n DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_MED=-2.3, 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"}}]