@@ -10,6 +10,7 @@ bool uv_os_is_guest(void);
bool uv_os_is_host(void);
bool uv_host_requirement_checks(void);
bool uv_query_test_call(unsigned int nr);
+bool uv_query_test_feature(unsigned int nr);
const struct uv_cb_qui *uv_get_query_data(void);
void uv_init(void);
int uv_setup(void);
@@ -67,6 +67,15 @@ bool uv_query_test_call(unsigned int nr)
return test_bit_inv(nr, uvcb_qui.inst_calls_list);
}
+bool uv_query_test_feature(unsigned int nr)
+{
+ /* Query needs to be called first */
+ assert(uvcb_qui.header.rc);
+ assert(nr < BITS_PER_LONG);
+
+ return test_bit_inv(nr, &uvcb_qui.uv_feature_indications);
+}
+
const struct uv_cb_qui *uv_get_query_data(void)
{
/* Query needs to be called first */
Add uv_query_test_feature(), to test specific bits in the uv_feature_indications bitmask, similar to uv_query_test_call(). Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com> --- lib/s390x/uv.h | 1 + lib/s390x/uv.c | 9 +++++++++ 2 files changed, 10 insertions(+)