diff --git a/drivers/infiniband/sw/rdmavt/vt.c b/drivers/infiniband/sw/rdmavt/vt.c
index 9566a920a244b3e1628f611b7467b3a05ecbbfbc..6caf5272ba1f70b96ab19a7a4df1e51f08dfb41c 100644
--- a/drivers/infiniband/sw/rdmavt/vt.c
+++ b/drivers/infiniband/sw/rdmavt/vt.c
@@ -383,7 +383,7 @@ static inline int check_driver_override(struct rvt_dev_info *rdi,
 	return 1;
 }
 
-static int check_support(struct rvt_dev_info *rdi, int verb)
+static noinline int check_support(struct rvt_dev_info *rdi, int verb)
 {
 	switch (verb) {
 	case MISC: