RE: [RFC PATCH] mmc: core: Disable REQ_FUA if the eMMC supports an internal cache
From: Avri Altman
Date: Fri Mar 03 2023 - 04:39:58 EST
> On 02.03.23 3:43 PM, Ulf Hansson wrote:
> > REQ_FUA is in general supported for eMMC cards, which translates into
> > so called "reliable writes". To support these write operations, the
> > CMD23 (MMC_CAP_CMD23), needs to be supported by the mmc host too,
> > which is common but not always the case.
> >
> > For some eMMC devices, it has been reported that reliable writes are
> > quite costly, leading to performance degradations.
> >
> > In a way to improve the situation, let's avoid announcing REQ_FUA
> > support if the eMMC supports an internal cache, as that allows us to
> > rely solely on flush-requests (REQ_OP_FLUSH) instead, which seems to be a
> lot cheaper.
> > Note that, those mmc hosts that lacks CMD23 support are already using
> > this type of configuration, whatever that could mean.
> >
> > Reported-by: Wenchao Chen<wenchao.chen666@xxxxxxxxx>
> > Signed-off-by: Ulf Hansson<ulf.hansson@xxxxxxxxxx>
> Acked-by: Bean Huo <beanhuo@xxxxxxxxxx>
Acked-by: Avri Altman <avri.altman@xxxxxxx>
Another option might be, allowing to report "broken_fua",
should the platform owner chooses to, much like scsi does per sdev.
Thanks,
Avri