struct xe_device *xe = gt_to_xe(gt);
        int ret;
 
+       if (!xe_eu_stall_supported_on_platform(xe))
+               return 0;
+
        gt->eu_stall = kzalloc(sizeof(*gt->eu_stall), GFP_KERNEL);
        if (!gt->eu_stall) {
                ret = -ENOMEM;
 
 #define __XE_EU_STALL_H__
 
 #include "xe_gt_types.h"
+#include "xe_sriov.h"
 
 size_t xe_eu_stall_get_per_xecore_buf_size(void);
 size_t xe_eu_stall_data_record_size(struct xe_device *xe);
 
 static inline bool xe_eu_stall_supported_on_platform(struct xe_device *xe)
 {
-       return xe->info.platform == XE_PVC || GRAPHICS_VER(xe) >= 20;
+       return !IS_SRIOV_VF(xe) && (xe->info.platform == XE_PVC || GRAPHICS_VER(xe) >= 20);
 }
 #endif