All of lore.kernel.org
 help / color / mirror / Atom feed
* [LSF/MM/BPF TOPIC] blk_mq rust bindings
@ 2023-03-02 19:37 Andreas Hindborg
  0 siblings, 0 replies; only message in thread
From: Andreas Hindborg @ 2023-03-02 19:37 UTC (permalink / raw)
  To: lsf-pc
  Cc: linux-block, Jens Axboe, Christoph Hellwig, Hannes Reinecke,
	Keith Busch, Damien Le Moal, Andreas Hindborg

Hi,

I would like to suggest a session on the application of Rust in blk-mq drivers.

At LPC I presented work on an NVMe driver for Linux written in Rust. The purpose
of the driver is to help shape Rust abstractions of kernel APIs and to verify
feasibility of safe Rust for high performance drivers. One suggestion from the
audience was to look into null_blk, as this would eliminate hardware related
overhead in benchmark results.

I did an analysis of all the commits in the null_blk driver (currently 256
exluding merge commits). 27% (68) of these commits are bug fixes. Out of these
27%, 41% (28) are fixes for memory safety issues. These are issues that would be
avoided in a Rust based implementation.

I am working on an implementation of a null_blk in Rust. I plan to send a patch
set before LSF to serve as a base of discussion.

Suggested discussion points:
============================

 - Feasibility in terms of performance for Rust based Linux kernel drivers
 - Importance of memory safety in the Linux Kernel and how Rust can help
 - How to maintain Rust bindings for blk-mq

Best regards,
Andreas Hindborg

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-03-02 19:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-02 19:37 [LSF/MM/BPF TOPIC] blk_mq rust bindings Andreas Hindborg

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.