Re: [LSF/MM/BPF BoF]: A host FTL for zoned block devices using UBLK

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 6, 2023 at 3:35 PM Matias Bjørling <Matias.Bjorling@xxxxxxx> wrote:
>
> > Maybe it is one beginning for generic open-source userspace SSD FTL, which
> > could be useful for people curious in SSD internal. I have google several times
> > for such toolkit to see if it can be ported to UBLK easily. SSD simulator isn't
> > great, which isn't disk and can't handle real data & workloads. With such
> > project, SSD simulator could be less useful, IMO.
> >
>
> Another possible avenue could be the FTL module that's part of SPDK. It might be worth checking out as well. It has been battletested for a couple of years and is used in production (https://www.youtube.com/watch?v=qeNBSjGq0dA).
>
> The module itself could be extracted from SPDK into its own, or SPDK's ublk extension could be used to instantiate it. In any case, I think it could provide a solid foundation for a host-side FTL implementation.

Thanks for bringing SPDK's CSAL up, I think it's a great example of a
well implemented host-ftl.

It does require a fast caching device with persistence guarantees
(like optane) though, not entirely unlike dm-zoned.
It also lives in the spdk universe, which makes it a bit harder to
work with than a standalone ftl.

While a cache in front of the backing storage gives the ftl some time
to organize writes in a device-friendly manner
before flushing, it adds cost (write amplification or having to add a
fast persistent cache device)

I've seen that SPDK already has the required plumbing for UBLK:
https://spdk.io/doc/ublk.html
I don't know if IO can be routed to CSAL yet.

That said, it would be great to support the CSAL use case in a common ftl.
Not all workloads require a cache, so I think that caching should be optimal.
Raiding and supporting multiple tenants from a combined pool of
storage is super-nice.

Cheers,
Hans




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux