diff --git a/storage/innobase/trx/trx0i_s.c b/storage/innobase/trx/trx0i_s.c
index 570098d84eafb52c48d5c460d31226505b89318b..1edf0d22d4aac06866b91dea15ed63b6359db74d 100644
--- a/storage/innobase/trx/trx0i_s.c
+++ b/storage/innobase/trx/trx0i_s.c
@@ -438,6 +438,8 @@ fill_trx_row(
 						which to copy volatile
 						strings */
 {
+	ut_ad(mutex_own(&kernel_mutex));
+
 	row->trx_id = trx_get_id(trx);
 	row->trx_started = (ib_time_t) trx->start_time;
 	row->trx_state = trx_get_que_state_str(trx);