From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Tom Yan <tom.ty89@gmail.com>
Cc: peter.maydell@linaro.org, alistair.francis@wdc.com,
f4bug@amsat.org, qemu-devel@nongnu.org
Subject: Re: Regarding commit a9bcedd (SD card size has to be power of 2)
Date: Wed, 23 Jun 2021 10:28:55 +0100 [thread overview]
Message-ID: <YNL+19TnvDzK5NNh@redhat.com> (raw)
In-Reply-To: <CAGnHSEnpEpnNHtryR=gMTxcGUd0EGW5h5KQeJvkYHp1Fw844fA@mail.gmail.com>
On Mon, Jun 07, 2021 at 04:29:54PM +0800, Tom Yan wrote:
> Hi philmd (and others),
>
> So I just noticed your commit of requiring the size of an emulated SD
> card to be a power of 2, when I was trying to emulate one for an
> actual one (well, it's a microSD, but still), as it errored out.
>
> You claim that the kernel will consider it to be a firmware bug and
> "correct" the capacity by rounding it up. Could you provide a concrete
> reference to the code that does such a thing? I'm not ruling out that
> some crazy code could have gone upstream because some reviewers might
> not be doing their job right, but if that really happened, it's a
> kernel bug/regression and qemu should not do an equally-crazy thing to
> "fix" it.
I looked back at the original threads for details, but didn't
find any aside from this short message saying it broke Linux:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg720737.html
Philippe, do you have more details on the problem hit, or pointer
to where the power-of-2 restriction is in Linux ?
> No offense but what you claimed really sounds absurd and ridiculous.
> Although I don't have hundreds of SD cards in hand, I owned quite a
> few at least, like most people do, with capacities ranging from ~2G to
> ~128G, and I don't even recall seeing a single one that has the
> capacity being a power of 2. (Just like vendors of HDDs and SSDs, they
> literally never do that AFAICT, for whatever reasons.)
Yes, this does feel pretty odd to me too, based on the real physical
SD cards I've used with Linux non-power-2 sizes.
Also in general QEMU shouldn't be enforcing restrictions based on
guest behaviour, it should follow the hardware specs. If the
hardware spec doesn't mandate power-of-2 sizes, then QEMU shoud
not require that, even if some guest OS has added an artificial
restriction of its own.
> Besides, even if there's a proper reason for the kernel to "fix" the
> capacity, there's no reason for it to round it up either, because
> obviously there will never be actual storage for the "virtual blocks".
> I've never seen such a behavior so far either with the "mmcblk" hosts
> I've used so far.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2021-06-23 9:30 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-07 8:29 Regarding commit a9bcedd (SD card size has to be power of 2) Tom Yan
2021-06-07 16:33 ` Warner Losh
2021-06-23 9:28 ` Daniel P. Berrangé [this message]
2021-06-23 10:59 ` Philippe Mathieu-Daudé
2021-06-23 11:23 ` Michal Suchánek
2021-06-23 11:29 ` Daniel P. Berrangé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YNL+19TnvDzK5NNh@redhat.com \
--to=berrange@redhat.com \
--cc=alistair.francis@wdc.com \
--cc=f4bug@amsat.org \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=tom.ty89@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.