diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c
index 91981970f542d41d92b98163a68a92548adeba6c..b1d39cabf125a7f90b7029f4355a0a7025af526d 100644
--- a/net/9p/trans_virtio.c
+++ b/net/9p/trans_virtio.c
@@ -329,7 +329,7 @@ static int p9_get_mapped_pages(struct virtio_chan *chan,
 	if (!iov_iter_count(data))
 		return 0;
 
-	if (iov_iter_is_kvec(data)) {
+	if (!iov_iter_is_kvec(data)) {
 		int n;
 		/*
 		 * We allow only p9_max_pages pinned. We wait for the