diff --git a/README.md b/README.md index 2233e99..f532ada 100644 --- a/README.md +++ b/README.md @@ -10,10 +10,10 @@ - + - + @@ -27,27 +27,27 @@ It was introduced by the SYSTOR '21 paper ["BDUS: Implementing Block Devices in
Documentation
- All documentation is hosted at Read the Docs. - To get started, take a look at the Quick Start Guide. - You might also be looking for the API reference. + All documentation is hosted at Read the Docs. + To get started, take a look at the Quick Start Guide. + You might also be looking for the API reference.
Installation
- Download BDUS' latest release and run sudo make install. - For more details, see Installation. + Download BDUS' latest release and run sudo make install. + For more details, see Installation.
Licensing
BDUS is distributed under the terms of the MIT license, with the exception of its kernel module which is distributed under the terms of the GPLv2 license. - For more details, see Licensing. + For more details, see Licensing.
Contributing
To report bugs, suggest improvements, or propose new features, please use GitHub's issue tracking system. - For information on how to contribute changes, see Contributing. + For information on how to contribute changes, see Contributing.
Citing
diff --git a/docs/user-manual/versions.rst b/docs/user-manual/versions.rst index b8b38ba..639a418 100644 --- a/docs/user-manual/versions.rst +++ b/docs/user-manual/versions.rst @@ -55,6 +55,16 @@ Version history The following is a list of all releases up to BDUS |version|, in reverse chronological order. +0.1.1 (2021-07-09) +~~~~~~~~~~~~~~~~~~ + +The following is a list of notable changes relative to version 0.1.0. +See also the :diff:`git diff `. + +- *kbdus*: Expose the major and minor numbers of devices through fields :member:`kbdus_device_config.major` and :member:`kbdus_device_config.minor`. + +- *libbdus*: Expose the major and minor numbers of devices through fields :member:`bdus_ctx.major` and :member:`bdus_ctx.minor`. + 0.1.0 (2021-05-08) ~~~~~~~~~~~~~~~~~~ diff --git a/kbdus/include/kbdus.h b/kbdus/include/kbdus.h index 1e88172..41dbe52 100644 --- a/kbdus/include/kbdus.h +++ b/kbdus/include/kbdus.h @@ -11,7 +11,7 @@ * The three components of the version of the `kbdus.h` header file that was * included. */ -#define KBDUS_HEADER_VERSION_PATCH 0 +#define KBDUS_HEADER_VERSION_PATCH 1 /* -------------------------------------------------------------------------- */ diff --git a/libbdus/include/bdus.h b/libbdus/include/bdus.h index 3fe71f5..92389e5 100644 --- a/libbdus/include/bdus.h +++ b/libbdus/include/bdus.h @@ -15,7 +15,7 @@ * returned by `bdus_get_libbdus_version()`, which is only determined at run * time. */ -#define BDUS_HEADER_VERSION_PATCH 0 +#define BDUS_HEADER_VERSION_PATCH 1 #if !defined(BDUS_REQUIRE_VERSION_MAJOR) \ && !defined(BDUS_REQUIRE_VERSION_MINOR) \ @@ -50,9 +50,9 @@ BDUS_REQUIRE_VERSION_MINOR, and BDUS_REQUIRE_VERSION_PATCH or none at all #elif BDUS_REQUIRE_VERSION_MAJOR != 0 || BDUS_REQUIRE_VERSION_MINOR != 1 \ - || BDUS_REQUIRE_VERSION_PATCH > 0 + || BDUS_REQUIRE_VERSION_PATCH > 1 -#error bdus.h has version 0.1.0 but incompatible version was required +#error bdus.h has version 0.1.1 but incompatible version was required #error @@ -104,11 +104,16 @@ struct bdus_ctx */ void *private_data; +#if BDUS_REQUIRE_VERSION_MAJOR == 0 && BDUS_REQUIRE_VERSION_MINOR == 1 \ + && BDUS_REQUIRE_VERSION_PATCH == 1 + /** \brief The device's major number. */ const uint32_t major; /** \brief The device's minor number. */ const uint32_t minor; + +#endif }; /** @@ -825,7 +830,12 @@ static inline bool bdus_run( const struct bdus_ops *ops, const struct bdus_attrs *attrs, void *private_data) { +#if BDUS_REQUIRE_VERSION_MAJOR == 0 && BDUS_REQUIRE_VERSION_MINOR == 1 \ + && BDUS_REQUIRE_VERSION_PATCH == 1 return bdus_run_0_1_1_(ops, attrs, private_data); +#else + return bdus_run_0_1_0_(ops, attrs, private_data); +#endif } bool bdus_rerun_0_1_0_( @@ -883,7 +893,12 @@ static inline bool bdus_rerun( uint64_t dev_id, const struct bdus_ops *ops, const struct bdus_attrs *attrs, void *private_data) { +#if BDUS_REQUIRE_VERSION_MAJOR == 0 && BDUS_REQUIRE_VERSION_MINOR == 1 \ + && BDUS_REQUIRE_VERSION_PATCH == 1 return bdus_rerun_0_1_1_(dev_id, ops, attrs, private_data); +#else + return bdus_rerun_0_1_0_(dev_id, ops, attrs, private_data); +#endif } /* -------------------------------------------------------------------------- */