On Fri, 27 Jul 2018 13:13:40 +0200 Halil Pasic <pasic@xxxxxxxxxxxxx> wrote: > >> @@ -65,6 +66,21 @@ static int vfio_ap_matrix_dev_create(void) > >> { > >> int ret; > >> > >> + mutex_init(&matrix_dev.lock); > >> + INIT_LIST_HEAD(&matrix_dev.mdev_list); > >> + > >> + /* Test if PQAP(QCI) instruction is available */ > >> + if (test_facility(12)) { > >> + ret = ap_qci(&matrix_dev.info); > >> + if (ret && (ret != -EOPNOTSUPP)) { > > > > So, is facility 12 a pre-req for PQAP(QCI)? Can the code work if > > matrix_dev.info is not populated? > > Yes and yes. It's basically only used in vfio_ap_matrix_init() and it > has fallbacks. Ok. So facility 12 is required but not sufficient for PQAP(QCI) to be available? (Just asking as I cannot check the doc; if it works with fallbacks I'm fine.)