From 5f755732813c06b70f5d4a5bb764f353e5de3baf Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
Date: Mon, 12 Dec 2022 00:03:03 +0100
Subject: [PATCH] ZEN: INTERACTIVE: Use Kyber as the elevator for MQ devices

Signed-off-by: Kai Krakow <kai@kaishome.de>
---
 block/elevator.c | 6 ++++++
 init/Kconfig     | 1 +
 2 files changed, 7 insertions(+)

diff --git a/block/elevator.c b/block/elevator.c
index cd1a2c9881bc60..200eb60c8e8b52 100644
--- a/block/elevator.c
+++ b/block/elevator.c
@@ -574,7 +574,13 @@ static struct elevator_type *elevator_get_default(struct request_queue *q)
 
 	if (q->nr_hw_queues != 1 &&
 	    !blk_mq_is_shared_tags(q->tag_set->flags))
+#if defined(CONFIG_ZEN_INTERACTIVE) && defined(CONFIG_MQ_IOSCHED_KYBER)
+		return elevator_find_get(q, "kyber");
+#elif defined(CONFIG_ZEN_INTERACTIVE)
+		return elevator_find_get(q, "mq-deadline");
+#else
 		return NULL;
+#endif
 
 #if defined(CONFIG_ZEN_INTERACTIVE) && defined(CONFIG_IOSCHED_BFQ)
 	return elevator_find_get(q, "bfq");
diff --git a/init/Kconfig b/init/Kconfig
index bb2bd73e40d3be..ef3a35cfe48ca4 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -132,6 +132,7 @@ config ZEN_INTERACTIVE
 	  --- Block Layer ----------------------------------------
 
 	    Default scheduler for SQ..: mq-deadline ->   bfq
+	    Default scheduler for MQ..:        none ->   kyber
 
 config BROKEN
 	bool