[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT PATCH 0/6] Unikraft Block API
Hi Roxana,thanks a lot for this patch series. As far as I tested it, it works well. It is really good that your API follows the `libuknetdev` principles and design. I have just a few minor comments that I added inline to the particular patches. The architectural design is perfect. The comments are mainly about naming and used datatypes. Thanks a lot for your work! Thanks, Simon On 29.05.19 10:32, Roxana Nicolescu wrote: Introduces the Unikraft Block API, that acts as a generalized interface between block drivers and filesystems implementations (or low-level block applications). Using the function definitions in blkdev_core.h, the driver should include blkdev_driver, implement the functions in uk_blkdev_ops and fill some fields from uk_blkdev. The user-facing part of the API is in blkdev.h. The layer above can use these functions to configure block devices, as well as send and receive sector-wide requests. The read/write/flush operations abstraction is defined in blkreq.h. Requests can be asynchronous or synchronous and the user must set a proper callback for each async operation. The API has multi-queue support and event dispatching support as well, which is configurable with or without bottom-half threads. Roxana Nicolescu (6): lib/ukblkdev: Blkdev Library skeleton. lib/ukblkdev: Blkdev registration lib/ukblkdev: Blkdev initialization lib/ukblkdev: Request interface lib/ukblkdev: Synchronous operations lib/ukblkdev: Stop and release an Unikraft block device lib/Config.uk | 1 + lib/Makefile.uk | 1 + lib/ukblkdev/Config.uk | 37 +++ lib/ukblkdev/Makefile.uk | 6 + lib/ukblkdev/blkdev.c | 554 ++++++++++++++++++++++++++++++++ lib/ukblkdev/exportsyms.uk | 28 ++ lib/ukblkdev/include/uk/blkdev.h | 506 +++++++++++++++++++++++++++++ lib/ukblkdev/include/uk/blkdev_core.h | 309 ++++++++++++++++++ lib/ukblkdev/include/uk/blkdev_driver.h | 116 +++++++ lib/ukblkdev/include/uk/blkreq.h | 110 +++++++ 10 files changed, 1668 insertions(+) create mode 100644 lib/ukblkdev/Config.uk create mode 100644 lib/ukblkdev/Makefile.uk create mode 100644 lib/ukblkdev/blkdev.c create mode 100644 lib/ukblkdev/exportsyms.uk create mode 100644 lib/ukblkdev/include/uk/blkdev.h create mode 100644 lib/ukblkdev/include/uk/blkdev_core.h create mode 100644 lib/ukblkdev/include/uk/blkdev_driver.h create mode 100644 lib/ukblkdev/include/uk/blkreq.h _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |