Updated: October 28, 2024 |
Specify if the vdev is a safety variant, and if so the safety variant version
#include <qvm/vdev-core.h>
enum { VDEV_SAFETY_NO = 0x55555555, VDEV_SAFETY_YES = 0xaaaaaaaa, VDEV_SAFETY_SELECTED = VDEV_SAFETY_NO };
VDEV_SAFETY_SELECTED is set to this value when this is not the safety variant of the vdev.
VDEV_SAFETY_SELECTED is set to this value when this is the safety variant of the vdev.
Set to VDEV_SAFETY_YES if either of the preprocessor macros WANT_SAFETY or VARIANT_safety are defined; otherwise set to VDEV_SAFETY_NO.
If you are building a vdev for a system that will be safety-certified, you can either explicitly define WANT_SAFETY or, if you are using the QNX SDP build system, you can rely on the VARIANT_safety macro definition it provides.
VARIANT_safety is a construction of the QNX SDP build system. Typically, for a non-safety system, you have in the build directory structure on your development host a subdirectory where the object files and binaries get built; this directory is called, for example, aarch64/le for an ARM platform.
If you are building a system that requires safety variants, then you should use a subdirectory with the -safety suffix in its name (e.g., aarch64/le-safety) so that your build will define VARIANT_safety for the build.