From nobody Mon Apr 29 13:45:30 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.67 as permitted sender) client-ip=209.85.128.67; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f67.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail(p=none dis=none) header.from=amsat.org ARC-Seal: i=1; a=rsa-sha256; t=1600450882; cv=none; d=zohomail.com; s=zohoarc; b=OnqmC+aud6yazvO/gThZe3a7uR3PSEbg4Eq79fbQz62bAaTxfkFtrIQeD7UvUgvK/StDkx8LeL1PJNzzFMlAEuVtRzdBaP4InuKeQMBIZ1YElleaCHN4PKDY9T7XATAPjM3wEgdKZJn12h1ZNUTqlMOXmo9qVf9CTuaOIxmNNjI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1600450882; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mHMBZwFybrG3Wb5VMsP3egLDE4ZsHJicDRun+ytDKB4=; b=FH3UIosu5Cqb/DzXOFfm0Ulyv4fLTHCqHs2b7xXArddVEE4BStMTUSo1H23DnPQIA5s6sgw/BLAXRa/tIBjcjVd7C4xlT6CdKeQePxzToOl8HTNjpALtMdjtXC72p+BNZRy85cZxaL6f69PBwWaRzaCjNsR7422o4UHeU+mfUz8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail-wm1-f67.google.com (mail-wm1-f67.google.com [209.85.128.67]) by mx.zohomail.com with SMTPS id 1600450882320412.26470758889957; Fri, 18 Sep 2020 10:41:22 -0700 (PDT) Received: by mail-wm1-f67.google.com with SMTP id z9so6373986wmk.1 for ; Fri, 18 Sep 2020 10:41:21 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (65.red-83-57-170.dynamicip.rima-tde.net. [83.57.170.65]) by smtp.gmail.com with ESMTPSA id a81sm6356179wmf.32.2020.09.18.10.41.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Sep 2020 10:41:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mHMBZwFybrG3Wb5VMsP3egLDE4ZsHJicDRun+ytDKB4=; b=iDjqhXrQBlXTZoroY32efXfJq2RtOCHrjqnSmbeDF/n0kpABMlZfcq+VaLeYzJgCrr W3YwbCVHvvj4kmI8qUxc9UZWNwbMf9TXN9rmX5nNGDAjXxako0LMrrKGrSSZyl/mqMYS kJ1P1NPL7k72jTlK5YRmMl8xgncf8Qnbl7zVjw82Z7HoSxYBpu55WMl8R18pQ1Sc0QiO ATFT9dulauKeQGFWCKaNZD9DGBow4vpjLKwthnggrKtJRDPsvYiYp4PNjJbWmYr72989 lELbLgt2BaxG3XdDB29Ab31tBmyxxjHnnF7hbEUe9LiL9WelEwu6243XHMn5JCeUjP+1 a4fQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=mHMBZwFybrG3Wb5VMsP3egLDE4ZsHJicDRun+ytDKB4=; b=p+EuJtloEyZ/b045ATzGKDXDOMTuT52qHBPHlc1a9kxr2siXBr0GgZC7r93Q2ukjj8 vBW0aog5p+UP2JL7v3BwfyG+JB2LHAlF+2nyzbgP+c2/Wox0Pp3T1Z+NCTUKbRN68jPg yUL/4D2g5i86evgmodm6ZH265nmFgPSjrvsMaseGgTSZc8mG+/EtjQHLeDXeSwDQezIe fJTPLW7jB+SF4uGmb6srfHBzXC6qyZrz06OkqOShxWkJ2WWXGmwhwQMETThNcFK+ogny 2y4U8k4zC3q3mbOXO+Fvp7b6Xn4Mu0Xb7oBFM68PGx/E+mq09Dyq7yzxLRdJPKyR+iEo LR4w== X-Gm-Message-State: AOAM532z5qWpSTLpxJozRes01l2oQzR3BZlJje8A+/4O4P3zo7YZ9Djc /6IzgebEhwof/8SbPwO2Eqv5UuDbZm0= X-Google-Smtp-Source: ABdhPJwHDsIzpBjkWdnd7DvWVfxyk62dE3wOvgXi/8eskd5mdSlb9HoSpi5Sq0rl3Rp41AHWjOzBeg== X-Received: by 2002:a05:600c:2182:: with SMTP id e2mr17103210wme.102.1600450880358; Fri, 18 Sep 2020 10:41:20 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-block@nongnu.org Subject: [RFC PATCH 1/6] hw/sd/sdcard: Add trace event for ERASE command (CMD38) Date: Fri, 18 Sep 2020 19:41:12 +0200 Message-Id: <20200918174117.180057-2-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200918174117.180057-1-f4bug@amsat.org> References: <20200918174117.180057-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Trace addresses provided to the ERASE command. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sd.c | 2 +- hw/sd/trace-events | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 00128822224..2606b969e34 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -749,7 +749,7 @@ static void sd_erase(SDState *sd) uint64_t erase_start =3D sd->erase_start; uint64_t erase_end =3D sd->erase_end; =20 - trace_sdcard_erase(); + trace_sdcard_erase(sd->erase_start, sd->erase_end); if (!sd->erase_start || !sd->erase_end) { sd->card_status |=3D ERASE_SEQ_ERROR; return; diff --git a/hw/sd/trace-events b/hw/sd/trace-events index a87d7355fb8..96c7ea5e52f 100644 --- a/hw/sd/trace-events +++ b/hw/sd/trace-events @@ -46,7 +46,7 @@ sdcard_reset(void) "" sdcard_set_blocklen(uint16_t length) "0x%03x" sdcard_inserted(bool readonly) "read_only: %u" sdcard_ejected(void) "" -sdcard_erase(void) "" +sdcard_erase(uint32_t first, uint32_t last) "addr first 0x%" PRIx32" last = 0x%" PRIx32 sdcard_lock(void) "" sdcard_unlock(void) "" sdcard_read_block(uint64_t addr, uint32_t len) "addr 0x%" PRIx64 " size 0x= %x" --=20 2.26.2 From nobody Mon Apr 29 13:45:30 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.66 as permitted sender) client-ip=209.85.221.66; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f66.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.66 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1600450883; cv=none; d=zohomail.com; s=zohoarc; b=SaSZhzq4RSqq3EXn6akqnEbZRT5m8F6h1WvCfCKKDh7UQg5GqBEhh6IUd3AXYr47ocQo5QLPAdBpp4WGMDnXgH0tMnrDK2r3uTHBtgI/KBj5KJCtGcL0mMgQkvZgJdxkz5MFwLM03mMAzI9fUDRdUJXFQnyygvZ2gexeWMWEd7w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1600450883; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=BM7THxJfGf+b7XY8piPM2aMZEPnFkfmBjlshGc2heOo=; b=hALBHew5j/lybGz1bG6k7bbFkRaT1cNCSMFmhhziJqOtS/C/zjypDsE7I79ji0M5HuyMuq6KPJpW3r7ZxQ6mY8sIaizEsBdhhuEU+N0fqSmn3mCxaIVHQqUfZCY7cq8Kf9Zhp2kWSONiR9cQJ0LBy3J8FTM+5OLtgV6yoNf21GU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.66 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f66.google.com (mail-wr1-f66.google.com [209.85.221.66]) by mx.zohomail.com with SMTPS id 1600450883394431.9194401667871; Fri, 18 Sep 2020 10:41:23 -0700 (PDT) Received: by mail-wr1-f66.google.com with SMTP id w5so6438633wrp.8 for ; Fri, 18 Sep 2020 10:41:22 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (65.red-83-57-170.dynamicip.rima-tde.net. [83.57.170.65]) by smtp.gmail.com with ESMTPSA id a81sm6356179wmf.32.2020.09.18.10.41.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Sep 2020 10:41:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=BM7THxJfGf+b7XY8piPM2aMZEPnFkfmBjlshGc2heOo=; b=Kp8nqvXCh2AozmISeyeO6RDwlKAzJSL4/UIlyk4KnMmav9o4SkaNSVkr13F7XiSFOT Jrbhvq8ydOxDF2UgXw4fKkgVy1fQlgTYA8UIl7OhUxICJhHtC9I3xeU1CVjR22DEjAPs LVHvRmFovAJw0EHBHDTizsxz2Iu04wkd5G/jHvG/70dzTebvNlfiDMzGDlQO25TZZEVm TRTRpDVVoKXFjXM1lzeQU0OxkY33oyd9UTuHkkP3vrqK8DUm1+WnX+CDb7/jhaQtFbDd QQwbYMU6QSX7IhGBGBlqRIZvNGlY374yJJ/ZtE1lyq9IGpRiIwCk9K1HckLVKdI/YRXI LPDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=BM7THxJfGf+b7XY8piPM2aMZEPnFkfmBjlshGc2heOo=; b=tFmyKrioWWliOalt+xpPr19nkVwKkDWCU0f7Kgg6qTHpE6WrwBJtpL8B5ytwifWubM WKOy4so6+FJ6979tuynL3XzhheVNnAv1LhvzjGYjmala7HVNCZ4URmEhaYmMDCklbz5K vqPykjqtUJ2mhiqHlA7WMCJLatL+deR3O4CG5fSWQI+G27H8W9Z0YwIDP6YsRLTobut2 UY9U8LO5x3w1zqRXyy4myv6B6rZSg3LeLfrO098bRhSk7po0YWMkcYT0hTf2uBdKZIe9 PcniN3ND+1uladdFh/nyHkncfM7eJAENnBZNwXiczvH/NXTfTChH60CbampdqypuCjVR Dn4g== X-Gm-Message-State: AOAM532u63B2Gkd4/Byl3SN5ELvwccVC7ezpgY86JNxpfSbd31SczhdG J81aGruclZUWyqas536NRQkf9iOPEqk= X-Google-Smtp-Source: ABdhPJwFXUqbCrZ1defHjZOJmBn1tgb4uX6EPPvWCEpo2HGADi8/i2q75eKBcz3ouS3xDJeiroJ/BA== X-Received: by 2002:adf:df05:: with SMTP id y5mr42456744wrl.39.1600450881480; Fri, 18 Sep 2020 10:41:21 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-block@nongnu.org Subject: [RFC PATCH 2/6] hw/sd/sdcard: Introduce the INVALID_ADDRESS definition Date: Fri, 18 Sep 2020 19:41:13 +0200 Message-Id: <20200918174117.180057-3-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200918174117.180057-1-f4bug@amsat.org> References: <20200918174117.180057-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) '0' is used as a value to indicate an invalid (or unset) address. Use a definition instead of a magic value. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sd.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 2606b969e34..30ae435d669 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -53,6 +53,8 @@ =20 #define SDSC_MAX_CAPACITY (2 * GiB) =20 +#define INVALID_ADDRESS 0 + typedef enum { sd_r0 =3D 0, /* no response */ sd_r1, /* normal response command */ @@ -575,8 +577,8 @@ static void sd_reset(DeviceState *dev) sd->wpgrps_size =3D sect; sd->wp_groups =3D bitmap_new(sd->wpgrps_size); memset(sd->function_group, 0, sizeof(sd->function_group)); - sd->erase_start =3D 0; - sd->erase_end =3D 0; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; sd->size =3D size; sd->blk_len =3D 0x200; sd->pwd_len =3D 0; @@ -750,7 +752,8 @@ static void sd_erase(SDState *sd) uint64_t erase_end =3D sd->erase_end; =20 trace_sdcard_erase(sd->erase_start, sd->erase_end); - if (!sd->erase_start || !sd->erase_end) { + if (sd->erase_start =3D=3D INVALID_ADDRESS + || sd->erase_end =3D=3D INVALID_ADDRESS) { sd->card_status |=3D ERASE_SEQ_ERROR; return; } @@ -763,8 +766,8 @@ static void sd_erase(SDState *sd) =20 erase_start =3D sd_addr_to_wpnum(erase_start); erase_end =3D sd_addr_to_wpnum(erase_end); - sd->erase_start =3D 0; - sd->erase_end =3D 0; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; sd->csd[14] |=3D 0x40; =20 for (i =3D erase_start; i <=3D erase_end; i++) { --=20 2.26.2 From nobody Mon Apr 29 13:45:30 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) client-ip=209.85.221.67; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f67.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1600450884; cv=none; d=zohomail.com; s=zohoarc; b=PV2sApapGS2rfOv++xkqXJTg/EHK/QTJto9LG+D9H0QCcaMY5K1ZT+gLBdog38jo6jzN2dPBRz68vjdHhAfZ+f1G8Vt9aGd4msHOC7iqNhVRmLTuOyS84pe3BeYJcFddf+AXB3LSWIpKsFu0NJffs7nHshCzV/6Gu3bFzOplCPY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1600450884; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+lnXOruvwPuxAjkIojj7o4yQ5aFq/OmvzZbaJBwTWHI=; b=Svz8OpCJVyPr0D4wt0ZeZYhodPMKuBH4EWr11pKa4Ah4Hnw8FjHSPW46H/Cz0q7Igky5vRht4WnuonLBHFBiH1HpW4ihXwOoJSIb8iSBTC7eaQqqxACP+Xcz8TNlbIldMVNk9LGMTgd+XZ661cIG0e8o73XctoRzS7wpfZ5oUeU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f67.google.com (mail-wr1-f67.google.com [209.85.221.67]) by mx.zohomail.com with SMTPS id 1600450884797564.5348932694972; Fri, 18 Sep 2020 10:41:24 -0700 (PDT) Received: by mail-wr1-f67.google.com with SMTP id k15so6437757wrn.10 for ; Fri, 18 Sep 2020 10:41:24 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (65.red-83-57-170.dynamicip.rima-tde.net. [83.57.170.65]) by smtp.gmail.com with ESMTPSA id a81sm6356179wmf.32.2020.09.18.10.41.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Sep 2020 10:41:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=+lnXOruvwPuxAjkIojj7o4yQ5aFq/OmvzZbaJBwTWHI=; b=Or9i/vPQpsO73usv3qG+KDnRuo2OOMhVmIb/ORV5OOIw4CEUU2qA6gQrsFnGACFAUs MCoXGhi9qC2bCU/1prPvbxdIir2pbkXDJi8rUqNsA/0Xw+YKOyddmToYHLF4PLQ9qWCo YiX2wpTJ48K2Ls54ztB67sy8lP7kGrU6SDqykStK2/KA+Ffa8/4J3rIcRlHHcmbFCkOB lACBJNRv92pOB5i0N1lg6uf4Vt2hKOzh3vHMHUIAp13jD0gkGPt3EB0B1qXoRsbLQMyF B4hIe4IghQMBoxDh3hXNueItLdw6Fb+yxFsZ2H3TUGWx7dysxHf25OaNc9xazzyQ0W/9 ehow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=+lnXOruvwPuxAjkIojj7o4yQ5aFq/OmvzZbaJBwTWHI=; b=mk2JcUwFTP6KF8wZk8bNuQ/mcbVDExJJ0TNhB3OA2sxHTvaW6yh3az6lO5AMXu3VmQ dElRm1BoNdKUSxzoYRWrGYMvzGAVJu6Rkci408SJuxHxZPMUjONVLfzrY17dGMnKzIKE HBIXsI+uQDK+Nw6AtGSgJ3tbDLOROdnjI4b4KXGasFIJMaOlt5UiGjxTZFldnGeoX+EY pUOkuSBp5948mC2qETjdCS41ZqmeKLb5rI3hCPtN0rOFfLJOD2yu3WVBi2gI0SC1G7SR GZuMX2gNj4k/P8wA1kPlUoqEZpapsLDUrFTph5s6aSGDsiSuE5N/8glWduD0jsaj1vqr vj6w== X-Gm-Message-State: AOAM5321sxWD+U0zNPrSMpRUuPMzWLjI7vLQcjWziTW5fuWeOTmoTFpY Nb4hTeRWrfZmUs+1Rs5fVJo= X-Google-Smtp-Source: ABdhPJyNuXppnabVqj7d9ZQ2+QlTwjxtPPlqmLeVjmVCa2hTDlWfTJW5plEXiufffA9L+CxmYIHu7A== X-Received: by 2002:adf:f701:: with SMTP id r1mr39481606wrp.341.1600450882691; Fri, 18 Sep 2020 10:41:22 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-block@nongnu.org, "Dr . David Alan Gilbert" , Markus Armbruster Subject: [RFC PATCH 3/6] hw/sd/sdcard: Do not use legal address '0' for INVALID_ADDRESS Date: Fri, 18 Sep 2020 19:41:14 +0200 Message-Id: <20200918174117.180057-4-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200918174117.180057-1-f4bug@amsat.org> References: <20200918174117.180057-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) As it is legal to WRITE/ERASE the address/block 0, change the value of this definition to an illegal address: UINT32_MAX. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- Cc: Dr. David Alan Gilbert Cc: Markus Armbruster Same problem I had with the pflash device last year... This break migration :( What is the best way to do this? --- hw/sd/sd.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 30ae435d669..4c05152f189 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -53,7 +53,7 @@ =20 #define SDSC_MAX_CAPACITY (2 * GiB) =20 -#define INVALID_ADDRESS 0 +#define INVALID_ADDRESS UINT32_MAX =20 typedef enum { sd_r0 =3D 0, /* no response */ @@ -666,8 +666,8 @@ static int sd_vmstate_pre_load(void *opaque) =20 static const VMStateDescription sd_vmstate =3D { .name =3D "sd-card", - .version_id =3D 1, - .minimum_version_id =3D 1, + .version_id =3D 2, + .minimum_version_id =3D 2, .pre_load =3D sd_vmstate_pre_load, .fields =3D (VMStateField[]) { VMSTATE_UINT32(mode, SDState), --=20 2.26.2 From nobody Mon Apr 29 13:45:30 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.128.68 as permitted sender) client-ip=209.85.128.68; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wm1-f68.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.68 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1600450885; cv=none; d=zohomail.com; s=zohoarc; b=TZxFo5cRr3dzADMmOqNx5NocJ5+WjnkrfmDXC+oo2iXO6tlCNx1tELrI1cFYc/zDHDPJfFeuj61xL2y/vNyKmQyrFQKtiEGWeSIPze2S6ZuZfOD1Xp0lSy2x1Jkfd+A7V4TmyK+z/LsR/j+h50N86vjsXMw2cFV1mtsr1Jyb0zQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1600450885; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=9qL0PD5p90+XPqlO1VLzLa4jpbVXhICHWwCAyjStqAk=; b=BgUR987C91wwepk/UzQLLNQaomWSJQPxVd+9696ABVx+LFUKKKVxcb5DDvfS64aGdJ+3bxn72ZDpHoDmI4SCpumfuAl1PcNRLD2LF3uCpblXldppjMKCohwKU4SE/ZL2EphAtLGiUGRJcbvafmK566+hYymq2L7kMer+X0I7Iyc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.128.68 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wm1-f68.google.com (mail-wm1-f68.google.com [209.85.128.68]) by mx.zohomail.com with SMTPS id 1600450885942279.55168461343635; Fri, 18 Sep 2020 10:41:25 -0700 (PDT) Received: by mail-wm1-f68.google.com with SMTP id e11so7173156wme.0 for ; Fri, 18 Sep 2020 10:41:25 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (65.red-83-57-170.dynamicip.rima-tde.net. [83.57.170.65]) by smtp.gmail.com with ESMTPSA id a81sm6356179wmf.32.2020.09.18.10.41.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Sep 2020 10:41:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=9qL0PD5p90+XPqlO1VLzLa4jpbVXhICHWwCAyjStqAk=; b=kc8vt670RThIdeLyqUfZB8/x40+sNMqw/aWLn9hZe9RgTgt8uquese1vzigY6nk2rn cYtHls0KTtwC9eQCBFkxYrB6TqqNDSQaMYOQPUYfVbw113+SMPiQi8CxBFu0002BYsmS hSzSMSgEtsQn2S7NxBnOK6baIajMlAscgVdVeb9+hybNmgcGwGsnPI4zmFoH4Trs3FxQ lLNHK4/av0wiZNRYpR46sv/h3R0B5EPX05DPuc5JxHfykItIobn1YAeuzlTEnAHATh0s SDFJJoxrqVmp7QKj+B+KSOPFMcYBNru+qN7WMzYMtF0aaaHORgWAKG3BJX6zploNCZNg UnGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=9qL0PD5p90+XPqlO1VLzLa4jpbVXhICHWwCAyjStqAk=; b=m+Fr8z0m0uUNizj9na5PfbubDbiuZ+9RpoJZsNGISXCEHNLtbcKKIiQ8pPEPu73ZUK k9RGx6gt/tYPrKZvc0FULsb0710MRK38PQnuivIiWSeUta8ERE1uMQFY9Zy3R86+zdLQ MSHOevjs9c+qsDJJWRhOyU/OaKWGxq/YXP4aHJJFB2f9SsWUvxriR9vCz7RPlsQJ1tzJ 7xCS7pBewX6Y8jlj/nhMGhMhiHTlo85aZsUUwcSh074Jj25SaVkn9sEaMYf6xoVvKYB+ ZMqKBPx/rF9Sdj4dhxTKYL/blPY9/OH7iPT2M1TvsbNPL583dpbQXPxQlu0LpmBFC6Hh GUwQ== X-Gm-Message-State: AOAM530+jlHJ/zvS5AestlfCaF65ZPY9G6ILKcw266+GVxqwD39v3jkN 7pn0Kn7i6MQNsJbPmI2ctxIfO/+cDhk= X-Google-Smtp-Source: ABdhPJxhSHxBRUHQMt9KdRkjOhKY6YC4yv2/MaFbOc1nmsMQh+gPeo0sncyIECuXISgziq6IjriccQ== X-Received: by 2002:a05:600c:2cc1:: with SMTP id l1mr16314746wmc.78.1600450883801; Fri, 18 Sep 2020 10:41:23 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-block@nongnu.org Subject: [RFC PATCH 4/6] hw/sd/sdcard: Reset both start/end addresses on error Date: Fri, 18 Sep 2020 19:41:15 +0200 Message-Id: <20200918174117.180057-5-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200918174117.180057-1-f4bug@amsat.org> References: <20200918174117.180057-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) From the Spec "4.3.5 Erase": The host should adhere to the following command sequence: ERASE_WR_BLK_START, ERASE_WR_BLK_END and ERASE (CMD38). If an erase (CMD38) or address setting (CMD32, 33) command is received out of sequence, the card shall set the ERASE_SEQ_ERROR bit in the status register and reset the whole sequence. Reset both addresses if the ERASE command occured out of sequence (one of the start/end address is not set). Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 4c05152f189..ee7b64023aa 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -755,6 +755,8 @@ static void sd_erase(SDState *sd) if (sd->erase_start =3D=3D INVALID_ADDRESS || sd->erase_end =3D=3D INVALID_ADDRESS) { sd->card_status |=3D ERASE_SEQ_ERROR; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; return; } =20 --=20 2.26.2 From nobody Mon Apr 29 13:45:30 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) client-ip=209.85.221.67; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f67.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1600450888; cv=none; d=zohomail.com; s=zohoarc; b=CRP4b2vA9I/C+CZtDawthpp/P/TKg0H3fB8QOobV0rKr+MrOCO+AfUcSyDDASzxS6q1qz4bLOgjzF89XFi//YCdnYQrbKaQ2BEACGBgMxRz7iGirgyFqRYft0x+V9HxURAQNI3XBEHrQY8uMi3BtnJRRuLIjrMX6qB+euwoZ7Lo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1600450888; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=UJjk8ZR/erxbnrLQ53sw18LTpiI4+fnfSdMDknbc4K0=; b=bMdSoQy86mfBiUl/yglW9uQSuEfmmT1SXF8vuS6PtnAIiaTJ4Z2xUf/FpvEv6YCOuGgAc4qehcXN8RA7YpbgpV+JR8TG4ICZ5AvtFUYrIIPU20NwCKOMC7o7c5XIJgnHwPzrs4tsWTAzYn/Io4WFdV0u7vzhotE69juu18wEMdA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.67 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f67.google.com (mail-wr1-f67.google.com [209.85.221.67]) by mx.zohomail.com with SMTPS id 1600450888992213.09413062479075; Fri, 18 Sep 2020 10:41:28 -0700 (PDT) Received: by mail-wr1-f67.google.com with SMTP id m6so6469836wrn.0 for ; Fri, 18 Sep 2020 10:41:26 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (65.red-83-57-170.dynamicip.rima-tde.net. [83.57.170.65]) by smtp.gmail.com with ESMTPSA id a81sm6356179wmf.32.2020.09.18.10.41.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Sep 2020 10:41:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=UJjk8ZR/erxbnrLQ53sw18LTpiI4+fnfSdMDknbc4K0=; b=ZhZGCoBsfn+UONcYcwvkGlZcMK6BlUdKqbm+mhCYd58+/Eh4d9YE4vY92e8ZuFUA9p PiVzVankmaErjjOayyHAsMXkeNXysviLJKTv8r3Ge9wxeHJfToT+LqV1yNxlWlWa8I2N 53zr5EhFIURU4kyDSn6hDMLLENamBoZBJzgdsq+JGm1BZBhcCcRKrlBVu9kJxlpYV+kp JK6Gd7hzv/+ZAniAekN4lr78Blr1y4vkYCIDZqG5pDHHhQUwpMnB2sqTI7tLeAc9Yg+H D25ug9cmDG7wlP+NUIqRvJ+wzjqUui5gdJW7uozVEprFL0/06YRSmb9/YwaC0YGjRjBE /2Qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=UJjk8ZR/erxbnrLQ53sw18LTpiI4+fnfSdMDknbc4K0=; b=G9up5HvOvPjmp7WemUGGSYSOls4uz+d4uFUWmMLhG4ddspRZIPVthyuTtppk0+MBcw o8mLEtXoqGHyPeM9lTuTxwZVYRMKb0utDND/hLkIenr3fJKrg1SUJYLaotwpmQCSFU49 hB/nswOEHnsL/Z7/NMt5d3kkplb2FyvP3OE9E7wPv+Spv28k6YsO6yktlZ5mRBAyEXCk u9dwGrPiT81PHA4TipCLp4Y1OtpGsQcgB0XShrwgD0gjJG80YhGIcLVnSknTISj6RlQK G6qQkeqOgipF1Y2BVDE1CGkMv3vuHCkKyoe3GEqvsMiwhz2p2vvuAgQTX0HAW0oja1PK 9P7A== X-Gm-Message-State: AOAM533MDMQNB4WrtRpdZ9wj2rP+TocXMayvIdtTCLUuYOjxLmFOF3Uh /bjqMfZWnHEwNvw31n5dWyk= X-Google-Smtp-Source: ABdhPJznczTLAPC3R3Zkc7v6W/nZf8C8+osE5w7JYxVujdOV4cbj4HewTfP2XU27rIGGvsfaITRueQ== X-Received: by 2002:adf:a18c:: with SMTP id u12mr40631017wru.90.1600450885109; Fri, 18 Sep 2020 10:41:25 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-block@nongnu.org Subject: [RFC PATCH 5/6] hw/sd/sdcard: Do not attempt to erase out of range addresses Date: Fri, 18 Sep 2020 19:41:16 +0200 Message-Id: <20200918174117.180057-6-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200918174117.180057-1-f4bug@amsat.org> References: <20200918174117.180057-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) While the Spec v3 is not very clear, v6 states: If the host provides an out of range address as an argument to CMD32 or CMD33, the card shall indicate OUT_OF_RANGE error in R1 (ERX) for CMD38. If an address is out of range, do not attempt to erase it: return R1 with the error bit set. Buglink: https://bugs.launchpad.net/bugs/1895310 Reported-by: Alexander Bulekov Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sd.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index ee7b64023aa..4454d168e2f 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -766,6 +766,13 @@ static void sd_erase(SDState *sd) erase_end *=3D 512; } =20 + if (sd->erase_start > sd->size || sd->erase_end > sd->size) { + sd->card_status |=3D OUT_OF_RANGE; + sd->erase_start =3D INVALID_ADDRESS; + sd->erase_end =3D INVALID_ADDRESS; + return; + } + erase_start =3D sd_addr_to_wpnum(erase_start); erase_end =3D sd_addr_to_wpnum(erase_end); sd->erase_start =3D INVALID_ADDRESS; --=20 2.26.2 From nobody Mon Apr 29 13:45:30 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.68 as permitted sender) client-ip=209.85.221.68; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f68.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.68 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1600450889; cv=none; d=zohomail.com; s=zohoarc; b=N9QS84RXs3Jt7gWT0SaiSGRBzUavmnQw7cWhoniX5RqOxXDXYuFGnD2F5e6unkBf7B4sYor22ixR/nsAYIGKIkH77PpNu+JBrSbgdzm4GcH3WOUxbFuEVSQKYE5Ojo6dAa3jUyJ6zazEiqwwBmCCkr40rCzYJ5giFCXSncC1nQk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1600450889; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Sender:Subject:To; bh=9kcH0QEir+isSyR2eHUJqmP++6hsLCDL3S99R+ttmDk=; b=lw/t8WpyuX5uuiSMKCID88B/FBcF/CEwo8w1KZ+1W8P0bt0YMaO6NnIRLvGbpD6TTGcNewEDds3yfUoE2Ts6b+WTvnmfIDR8Bi96DM3cteJmaoW0BhoN8Ma5vvZj42CZue9RwB5TfNRmulUlVi+zKqtmOwDhT/yMetT20x1TjgE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.68 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f68.google.com (mail-wr1-f68.google.com [209.85.221.68]) by mx.zohomail.com with SMTPS id 1600450889067796.1824469622999; Fri, 18 Sep 2020 10:41:29 -0700 (PDT) Received: by mail-wr1-f68.google.com with SMTP id k15so6437918wrn.10 for ; Fri, 18 Sep 2020 10:41:27 -0700 (PDT) Return-Path: Return-Path: Received: from x1w.redhat.com (65.red-83-57-170.dynamicip.rima-tde.net. [83.57.170.65]) by smtp.gmail.com with ESMTPSA id a81sm6356179wmf.32.2020.09.18.10.41.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Sep 2020 10:41:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=9kcH0QEir+isSyR2eHUJqmP++6hsLCDL3S99R+ttmDk=; b=J5DP95l9Z6YtITaZsBXMvA5zs9c6XNvkGG9iYEiiO0+mGUcnYjU11RkaSVFCRrwanu aTIVZ69APuXvTddh+zKnmbmqS58NLRD4Jg02xJNDbOYLjHUU03jg7JgKQroTNrY4PRAj +1n5Iaaqdl2WSTFpmL330WBcUwABfObP2D2K+WbVeh8Gq8vhv1DalRYvNBph6b7VrYGA 2x4n12sStSAa18cyCbwnYmL625Sk0uDPHgH9Hs+xHSCl3W+8lgFnKi9QmvdCJ5ulPNRg soY8qdzX4q75f2pMgY4W4DDKeW2FuefX2ScgQKbX+MXpipU4ukn5/1TnSZFPY7AixTuf k7SA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=9kcH0QEir+isSyR2eHUJqmP++6hsLCDL3S99R+ttmDk=; b=o51KYlTz9WUklNxvJW7vlnsjWtltlM2ix5rL4fYzKMcTIX+/QWpnFUKeW2DO189stx oi1m2YZ4UVaFjDXQXj9DNCRaZkCEvkdr5atV4MHapIaIb09kcP5nAZKjVGXFRljwEzVI lkmT3SsKgeVvZuZ6rVD3SCPWfvfTkQYCMTfV4CMoINSgs8DPAVyM1+N1hV8A4Vz5i4zM QA68zXx74dN7ZyI4EcgXC9pndFMfTVZinBYJfCKyodV3dghEn+wgRU9YgE1+ZEQnkpwN znztVIUvWdHnu146fONPqs96Hyu3/2VZ1Vaj+44pe5V1RXMiUPvukUInUAm9+TDsRfC7 x5nQ== X-Gm-Message-State: AOAM530O/f7nGj8gZdRJ7mzRyZ0GVu8kq0+b9JcNw0eIFczh9hAGL5wb UwzN/8AhFrCxy1Q7mWl/oOE= X-Google-Smtp-Source: ABdhPJyMeIFAEVZTdOzB0Pw8v/FaiviAtUokePHmYKA14Cy0LXKynCoXlxQ0mOM+17jsj/hxbXpcqg== X-Received: by 2002:adf:f04c:: with SMTP id t12mr39660598wro.121.1600450886130; Fri, 18 Sep 2020 10:41:26 -0700 (PDT) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Alexander Bulekov , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , qemu-block@nongnu.org Subject: [RFC PATCH 6/6] hw/sd/sdcard: Assert if accessing an illegal group Date: Fri, 18 Sep 2020 19:41:17 +0200 Message-Id: <20200918174117.180057-7-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200918174117.180057-1-f4bug@amsat.org> References: <20200918174117.180057-1-f4bug@amsat.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) We can not have more group than 'wpgrps_size'. Assert if we are accessing a group above this limit. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- hw/sd/sd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/sd/sd.c b/hw/sd/sd.c index 4454d168e2f..c3febed2434 100644 --- a/hw/sd/sd.c +++ b/hw/sd/sd.c @@ -780,6 +780,7 @@ static void sd_erase(SDState *sd) sd->csd[14] |=3D 0x40; =20 for (i =3D erase_start; i <=3D erase_end; i++) { + assert(i < sd->wpgrps_size); if (test_bit(i, sd->wp_groups)) { sd->card_status |=3D WP_ERASE_SKIP; } @@ -794,6 +795,7 @@ static uint32_t sd_wpbits(SDState *sd, uint64_t addr) wpnum =3D sd_addr_to_wpnum(addr); =20 for (i =3D 0; i < 32; i++, wpnum++, addr +=3D WPGROUP_SIZE) { + assert(wpnum < sd->wpgrps_size); if (addr < sd->size && test_bit(wpnum, sd->wp_groups)) { ret |=3D (1 << i); } --=20 2.26.2