All of lore.kernel.org
 help / color / mirror / Atom feed
* Virtio-blk extended lifetime feature
@ 2023-01-15  7:55 ` Alvaro Karsz
  0 siblings, 0 replies; 9+ messages in thread
From: Alvaro Karsz @ 2023-01-15  7:55 UTC (permalink / raw)
  To: virtualization, linux-block, dm-devel, linux-nvme, linux-scsi
  Cc: Michael S. Tsirkin, Chaitanya Kulkarni, Stefan Hajnoczi,
	Jens Axboe, egranata, Bart Van Assche, Christoph Hellwig

Hi guys,

While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
feature, many developers suggested that this feature should be
extended to include more cell types, since its current implementation
in virtio spec is relevant for MMC and UFS devices only.

The VIRTIO_BLK_F_LIFETIME defines the following fields:

- pre_eol_info:  the percentage of reserved blocks that are consumed.
- device_lifetime_est_typ_a: wear of SLC cells.
- device_lifetime_est_typ_b: wear of MLC cells.

(https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)

Following Michael's suggestion, I'd like to add to the virtio spec
with a new, extended lifetime command.
Since I'm more familiar with embedded type storage devices, I'd like
to ask you guys what fields you think should be included in the
extended command.

Thanks,

Alvaro

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Virtio-blk extended lifetime feature
@ 2023-01-15  7:55 ` Alvaro Karsz
  0 siblings, 0 replies; 9+ messages in thread
From: Alvaro Karsz @ 2023-01-15  7:55 UTC (permalink / raw)
  To: virtualization, linux-block, dm-devel, linux-nvme, linux-scsi
  Cc: Jens Axboe, Chaitanya Kulkarni, Bart Van Assche,
	Michael S. Tsirkin, Christoph Hellwig, Stefan Hajnoczi, egranata

Hi guys,

While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
feature, many developers suggested that this feature should be
extended to include more cell types, since its current implementation
in virtio spec is relevant for MMC and UFS devices only.

The VIRTIO_BLK_F_LIFETIME defines the following fields:

- pre_eol_info:  the percentage of reserved blocks that are consumed.
- device_lifetime_est_typ_a: wear of SLC cells.
- device_lifetime_est_typ_b: wear of MLC cells.

(https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)

Following Michael's suggestion, I'd like to add to the virtio spec
with a new, extended lifetime command.
Since I'm more familiar with embedded type storage devices, I'd like
to ask you guys what fields you think should be included in the
extended command.

Thanks,

Alvaro
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dm-devel] Virtio-blk extended lifetime feature
@ 2023-01-15  7:55 ` Alvaro Karsz
  0 siblings, 0 replies; 9+ messages in thread
From: Alvaro Karsz @ 2023-01-15  7:55 UTC (permalink / raw)
  To: virtualization, linux-block, dm-devel, linux-nvme, linux-scsi
  Cc: Jens Axboe, Chaitanya Kulkarni, Bart Van Assche,
	Michael S. Tsirkin, Christoph Hellwig, Stefan Hajnoczi, egranata

Hi guys,

While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
feature, many developers suggested that this feature should be
extended to include more cell types, since its current implementation
in virtio spec is relevant for MMC and UFS devices only.

The VIRTIO_BLK_F_LIFETIME defines the following fields:

- pre_eol_info:  the percentage of reserved blocks that are consumed.
- device_lifetime_est_typ_a: wear of SLC cells.
- device_lifetime_est_typ_b: wear of MLC cells.

(https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)

Following Michael's suggestion, I'd like to add to the virtio spec
with a new, extended lifetime command.
Since I'm more familiar with embedded type storage devices, I'd like
to ask you guys what fields you think should be included in the
extended command.

Thanks,

Alvaro

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Virtio-blk extended lifetime feature
  2023-01-15  7:55 ` Alvaro Karsz
@ 2023-01-17 22:30   ` Enrico Granata
  -1 siblings, 0 replies; 9+ messages in thread
From: Enrico Granata @ 2023-01-17 22:30 UTC (permalink / raw)
  To: Alvaro Karsz, Jahdiel Alvarez
  Cc: virtualization, linux-block, dm-devel, linux-nvme, linux-scsi,
	Michael S. Tsirkin, Chaitanya Kulkarni, Stefan Hajnoczi,
	Jens Axboe, Bart Van Assche, Christoph Hellwig

Hi,
I am going to add +Jahdiel Alvarez who is also looking into a similar
issue, and also I would like to hear thoughts of people who may have
worked with (embedded or otherwise) storage more recently than I have

One thought that Jahdiel and myself were pondering is whether we need
"type_a" and "type_b" fields at all, or if there should simply be a
"wear estimate" field, which for eMMC, it could be max(typ_a, typ_b)
but it could generalize to any number of cell or other algorithm, as
long as it produces one unique estimate of wear

Thanks,
- Enrico

Thanks,
- Enrico


On Sun, Jan 15, 2023 at 12:56 AM Alvaro Karsz
<alvaro.karsz@solid-run.com> wrote:
>
> Hi guys,
>
> While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
> feature, many developers suggested that this feature should be
> extended to include more cell types, since its current implementation
> in virtio spec is relevant for MMC and UFS devices only.
>
> The VIRTIO_BLK_F_LIFETIME defines the following fields:
>
> - pre_eol_info:  the percentage of reserved blocks that are consumed.
> - device_lifetime_est_typ_a: wear of SLC cells.
> - device_lifetime_est_typ_b: wear of MLC cells.
>
> (https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)
>
> Following Michael's suggestion, I'd like to add to the virtio spec
> with a new, extended lifetime command.
> Since I'm more familiar with embedded type storage devices, I'd like
> to ask you guys what fields you think should be included in the
> extended command.
>
> Thanks,
>
> Alvaro

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [dm-devel] Virtio-blk extended lifetime feature
@ 2023-01-17 22:30   ` Enrico Granata
  0 siblings, 0 replies; 9+ messages in thread
From: Enrico Granata @ 2023-01-17 22:30 UTC (permalink / raw)
  To: Alvaro Karsz, Jahdiel Alvarez
  Cc: Jens Axboe, Christoph Hellwig, Chaitanya Kulkarni,
	Bart Van Assche, linux-scsi, Michael S. Tsirkin, linux-nvme,
	virtualization, linux-block, dm-devel, Stefan Hajnoczi

Hi,
I am going to add +Jahdiel Alvarez who is also looking into a similar
issue, and also I would like to hear thoughts of people who may have
worked with (embedded or otherwise) storage more recently than I have

One thought that Jahdiel and myself were pondering is whether we need
"type_a" and "type_b" fields at all, or if there should simply be a
"wear estimate" field, which for eMMC, it could be max(typ_a, typ_b)
but it could generalize to any number of cell or other algorithm, as
long as it produces one unique estimate of wear

Thanks,
- Enrico

Thanks,
- Enrico


On Sun, Jan 15, 2023 at 12:56 AM Alvaro Karsz
<alvaro.karsz@solid-run.com> wrote:
>
> Hi guys,
>
> While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
> feature, many developers suggested that this feature should be
> extended to include more cell types, since its current implementation
> in virtio spec is relevant for MMC and UFS devices only.
>
> The VIRTIO_BLK_F_LIFETIME defines the following fields:
>
> - pre_eol_info:  the percentage of reserved blocks that are consumed.
> - device_lifetime_est_typ_a: wear of SLC cells.
> - device_lifetime_est_typ_b: wear of MLC cells.
>
> (https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)
>
> Following Michael's suggestion, I'd like to add to the virtio spec
> with a new, extended lifetime command.
> Since I'm more familiar with embedded type storage devices, I'd like
> to ask you guys what fields you think should be included in the
> extended command.
>
> Thanks,
>
> Alvaro

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Virtio-blk extended lifetime feature
  2023-01-17 22:30   ` [dm-devel] " Enrico Granata
@ 2023-01-18 19:46     ` Chaitanya Kulkarni
  -1 siblings, 0 replies; 9+ messages in thread
From: Chaitanya Kulkarni @ 2023-01-18 19:46 UTC (permalink / raw)
  To: Enrico Granata, Alvaro Karsz, Jahdiel Alvarez
  Cc: virtualization, linux-block, dm-devel, linux-nvme, linux-scsi,
	Michael S. Tsirkin, Stefan Hajnoczi, Jens Axboe, Bart Van Assche,
	Christoph Hellwig

On 1/17/23 14:30, Enrico Granata wrote:
> Hi,
> I am going to add +Jahdiel Alvarez who is also looking into a similar
> issue, and also I would like to hear thoughts of people who may have
> worked with (embedded or otherwise) storage more recently than I have
> 
> One thought that Jahdiel and myself were pondering is whether we need
> "type_a" and "type_b" fields at all, or if there should simply be a
> "wear estimate" field, which for eMMC, it could be max(typ_a, typ_b)
> but it could generalize to any number of cell or other algorithm, as
> long as it produces one unique estimate of wear
> 
> Thanks,
> - Enrico
> 
> Thanks,
> - Enrico
> 
> 
> On Sun, Jan 15, 2023 at 12:56 AM Alvaro Karsz
> <alvaro.karsz@solid-run.com> wrote:
>>
>> Hi guys,
>>
>> While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
>> feature, many developers suggested that this feature should be
>> extended to include more cell types, since its current implementation
>> in virtio spec is relevant for MMC and UFS devices only.
>>
>> The VIRTIO_BLK_F_LIFETIME defines the following fields:
>>
>> - pre_eol_info:  the percentage of reserved blocks that are consumed.
>> - device_lifetime_est_typ_a: wear of SLC cells.
>> - device_lifetime_est_typ_b: wear of MLC cells.

For immediate comments :-

It needs to cover all the flash cell types.

Using names like type_a/type_b in the spec and in the implementation
adds unnecessary confusion and requires extra documentation in the
code that needs to be changed.

>>
>> (https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)
>>
>> Following Michael's suggestion, I'd like to add to the virtio spec
>> with a new, extended lifetime command.
>> Since I'm more familiar with embedded type storage devices, I'd like
>> to ask you guys what fields you think should be included in the
>> extended command.
>>
>> Thanks,
>>
>> Alvaro

-ck

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [dm-devel] Virtio-blk extended lifetime feature
@ 2023-01-18 19:46     ` Chaitanya Kulkarni
  0 siblings, 0 replies; 9+ messages in thread
From: Chaitanya Kulkarni @ 2023-01-18 19:46 UTC (permalink / raw)
  To: Enrico Granata, Alvaro Karsz, Jahdiel Alvarez
  Cc: Jens Axboe, Christoph Hellwig, Bart Van Assche, linux-scsi,
	Michael S. Tsirkin, linux-nvme, virtualization, linux-block,
	dm-devel, Stefan Hajnoczi

On 1/17/23 14:30, Enrico Granata wrote:
> Hi,
> I am going to add +Jahdiel Alvarez who is also looking into a similar
> issue, and also I would like to hear thoughts of people who may have
> worked with (embedded or otherwise) storage more recently than I have
> 
> One thought that Jahdiel and myself were pondering is whether we need
> "type_a" and "type_b" fields at all, or if there should simply be a
> "wear estimate" field, which for eMMC, it could be max(typ_a, typ_b)
> but it could generalize to any number of cell or other algorithm, as
> long as it produces one unique estimate of wear
> 
> Thanks,
> - Enrico
> 
> Thanks,
> - Enrico
> 
> 
> On Sun, Jan 15, 2023 at 12:56 AM Alvaro Karsz
> <alvaro.karsz@solid-run.com> wrote:
>>
>> Hi guys,
>>
>> While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
>> feature, many developers suggested that this feature should be
>> extended to include more cell types, since its current implementation
>> in virtio spec is relevant for MMC and UFS devices only.
>>
>> The VIRTIO_BLK_F_LIFETIME defines the following fields:
>>
>> - pre_eol_info:  the percentage of reserved blocks that are consumed.
>> - device_lifetime_est_typ_a: wear of SLC cells.
>> - device_lifetime_est_typ_b: wear of MLC cells.

For immediate comments :-

It needs to cover all the flash cell types.

Using names like type_a/type_b in the spec and in the implementation
adds unnecessary confusion and requires extra documentation in the
code that needs to be changed.

>>
>> (https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)
>>
>> Following Michael's suggestion, I'd like to add to the virtio spec
>> with a new, extended lifetime command.
>> Since I'm more familiar with embedded type storage devices, I'd like
>> to ask you guys what fields you think should be included in the
>> extended command.
>>
>> Thanks,
>>
>> Alvaro

-ck
--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Virtio-blk extended lifetime feature
  2023-01-18 19:46     ` [dm-devel] " Chaitanya Kulkarni
@ 2023-02-17 21:50       ` Enrico Granata
  -1 siblings, 0 replies; 9+ messages in thread
From: Enrico Granata @ 2023-02-17 21:50 UTC (permalink / raw)
  To: Chaitanya Kulkarni
  Cc: Alvaro Karsz, Jahdiel Alvarez, virtualization, linux-block,
	dm-devel, linux-nvme, linux-scsi, Michael S. Tsirkin,
	Stefan Hajnoczi, Jens Axboe, Bart Van Assche, Christoph Hellwig

On Wed, Jan 18, 2023 at 12:46 PM Chaitanya Kulkarni
<chaitanyak@nvidia.com> wrote:
>
> On 1/17/23 14:30, Enrico Granata wrote:
> > Hi,
> > I am going to add +Jahdiel Alvarez who is also looking into a similar
> > issue, and also I would like to hear thoughts of people who may have
> > worked with (embedded or otherwise) storage more recently than I have
> >
> > One thought that Jahdiel and myself were pondering is whether we need
> > "type_a" and "type_b" fields at all, or if there should simply be a
> > "wear estimate" field, which for eMMC, it could be max(typ_a, typ_b)
> > but it could generalize to any number of cell or other algorithm, as
> > long as it produces one unique estimate of wear
> >
> > Thanks,
> > - Enrico
> >
> > Thanks,
> > - Enrico
> >
> >
> > On Sun, Jan 15, 2023 at 12:56 AM Alvaro Karsz
> > <alvaro.karsz@solid-run.com> wrote:
> >>
> >> Hi guys,
> >>
> >> While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
> >> feature, many developers suggested that this feature should be
> >> extended to include more cell types, since its current implementation
> >> in virtio spec is relevant for MMC and UFS devices only.
> >>
> >> The VIRTIO_BLK_F_LIFETIME defines the following fields:
> >>
> >> - pre_eol_info:  the percentage of reserved blocks that are consumed.
> >> - device_lifetime_est_typ_a: wear of SLC cells.
> >> - device_lifetime_est_typ_b: wear of MLC cells.
>
> For immediate comments :-
>
> It needs to cover all the flash cell types.
>
> Using names like type_a/type_b in the spec and in the implementation
> adds unnecessary confusion and requires extra documentation in the
> code that needs to be changed.

What do you think about my proposal to have a single "wear estimate"
field and allow each flash type to calculate it as required by its own
internal logic?
The migration for eMMC and existing drivers would be to expose the
maximum of type_A, type_B wear, but other cell types would be able to
provide whatever logic they need as long as it meaningfully exposes
the "wear"

>
> >>
> >> (https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)
> >>
> >> Following Michael's suggestion, I'd like to add to the virtio spec
> >> with a new, extended lifetime command.
> >> Since I'm more familiar with embedded type storage devices, I'd like
> >> to ask you guys what fields you think should be included in the
> >> extended command.
> >>
> >> Thanks,
> >>
> >> Alvaro
>
> -ck

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [dm-devel] Virtio-blk extended lifetime feature
@ 2023-02-17 21:50       ` Enrico Granata
  0 siblings, 0 replies; 9+ messages in thread
From: Enrico Granata @ 2023-02-17 21:50 UTC (permalink / raw)
  To: Chaitanya Kulkarni
  Cc: Jens Axboe, Christoph Hellwig, Bart Van Assche, linux-scsi,
	Jahdiel Alvarez, Alvaro Karsz, Michael S. Tsirkin, linux-nvme,
	virtualization, linux-block, dm-devel, Stefan Hajnoczi

On Wed, Jan 18, 2023 at 12:46 PM Chaitanya Kulkarni
<chaitanyak@nvidia.com> wrote:
>
> On 1/17/23 14:30, Enrico Granata wrote:
> > Hi,
> > I am going to add +Jahdiel Alvarez who is also looking into a similar
> > issue, and also I would like to hear thoughts of people who may have
> > worked with (embedded or otherwise) storage more recently than I have
> >
> > One thought that Jahdiel and myself were pondering is whether we need
> > "type_a" and "type_b" fields at all, or if there should simply be a
> > "wear estimate" field, which for eMMC, it could be max(typ_a, typ_b)
> > but it could generalize to any number of cell or other algorithm, as
> > long as it produces one unique estimate of wear
> >
> > Thanks,
> > - Enrico
> >
> > Thanks,
> > - Enrico
> >
> >
> > On Sun, Jan 15, 2023 at 12:56 AM Alvaro Karsz
> > <alvaro.karsz@solid-run.com> wrote:
> >>
> >> Hi guys,
> >>
> >> While trying to upstream the implementation of VIRTIO_BLK_F_LIFETIME
> >> feature, many developers suggested that this feature should be
> >> extended to include more cell types, since its current implementation
> >> in virtio spec is relevant for MMC and UFS devices only.
> >>
> >> The VIRTIO_BLK_F_LIFETIME defines the following fields:
> >>
> >> - pre_eol_info:  the percentage of reserved blocks that are consumed.
> >> - device_lifetime_est_typ_a: wear of SLC cells.
> >> - device_lifetime_est_typ_b: wear of MLC cells.
>
> For immediate comments :-
>
> It needs to cover all the flash cell types.
>
> Using names like type_a/type_b in the spec and in the implementation
> adds unnecessary confusion and requires extra documentation in the
> code that needs to be changed.

What do you think about my proposal to have a single "wear estimate"
field and allow each flash type to calculate it as required by its own
internal logic?
The migration for eMMC and existing drivers would be to expose the
maximum of type_A, type_B wear, but other cell types would be able to
provide whatever logic they need as long as it meaningfully exposes
the "wear"

>
> >>
> >> (https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html)
> >>
> >> Following Michael's suggestion, I'd like to add to the virtio spec
> >> with a new, extended lifetime command.
> >> Since I'm more familiar with embedded type storage devices, I'd like
> >> to ask you guys what fields you think should be included in the
> >> extended command.
> >>
> >> Thanks,
> >>
> >> Alvaro
>
> -ck

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-02-20  7:22 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-15  7:55 Virtio-blk extended lifetime feature Alvaro Karsz
2023-01-15  7:55 ` [dm-devel] " Alvaro Karsz
2023-01-15  7:55 ` Alvaro Karsz
2023-01-17 22:30 ` Enrico Granata
2023-01-17 22:30   ` [dm-devel] " Enrico Granata
2023-01-18 19:46   ` Chaitanya Kulkarni
2023-01-18 19:46     ` [dm-devel] " Chaitanya Kulkarni
2023-02-17 21:50     ` Enrico Granata
2023-02-17 21:50       ` [dm-devel] " Enrico Granata

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.