On Fri, 21 Aug 2020 15:56:01 -0400 Tony Krowiak <akrowiak@xxxxxxxxxxxxx> wrote: > Let's set a version for the vfio_ap module so that automated regression > tests can determine whether dynamic configuration tests can be run or > not. > > Signed-off-by: Tony Krowiak <akrowiak@xxxxxxxxxxxxx> > --- > drivers/s390/crypto/vfio_ap_drv.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/s390/crypto/vfio_ap_drv.c b/drivers/s390/crypto/vfio_ap_drv.c > index be2520cc010b..f4ceb380dd61 100644 > --- a/drivers/s390/crypto/vfio_ap_drv.c > +++ b/drivers/s390/crypto/vfio_ap_drv.c > @@ -17,10 +17,12 @@ > > #define VFIO_AP_ROOT_NAME "vfio_ap" > #define VFIO_AP_DEV_NAME "matrix" > +#define VFIO_AP_MODULE_VERSION "1.2.0" > > MODULE_AUTHOR("IBM Corporation"); > MODULE_DESCRIPTION("VFIO AP device driver, Copyright IBM Corp. 2018"); > MODULE_LICENSE("GPL v2"); > +MODULE_VERSION(VFIO_AP_MODULE_VERSION); > > static struct ap_driver vfio_ap_drv; > Setting a version manually has some drawbacks: - tools wanting to check for capabilities need to keep track which versions support which features - you need to remember to actually bump the version when adding a new, visible feature (- selective downstream backports may get into a pickle, but that's arguably not your problem) Is there no way for a tool to figure out whether this is supported? E.g., via existence of a sysfs file, or via a known error that will occur. If not, it's maybe better to expose known capabilities via a generic interface.