[PATCH RFC 03/11] um: Use a simple time travel handler for line interrupts

Benjamin Beichler benjamin.beichler at uni-rostock.de
Fri Nov 3 09:41:41 PDT 2023


This change permits interrupts on serial lines in time travel mode,
especially in external mode. However, these interrupts are processed
with the simple handler that does not provide any acknowledgment.

Signed-off-by: Benjamin Beichler <benjamin.beichler at uni-rostock.de>
---
 arch/um/drivers/line.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/um/drivers/line.c b/arch/um/drivers/line.c
index b98545f3edb5..3cda0ae41824 100644
--- a/arch/um/drivers/line.c
+++ b/arch/um/drivers/line.c
@@ -260,9 +260,9 @@ int line_setup_irq(int fd, int input, int output, struct line *line, void *data)
 	int err;
 
 	if (input) {
-		err = um_request_irq(UM_IRQ_ALLOC, fd, IRQ_READ,
+		err = um_request_irq_tt(UM_IRQ_ALLOC, fd, IRQ_READ,
 				     line_interrupt, 0,
-				     driver->read_irq_name, data);
+				     driver->read_irq_name, data, simple_timetravel_handler);
 		if (err < 0)
 			return err;
 
@@ -270,9 +270,9 @@ int line_setup_irq(int fd, int input, int output, struct line *line, void *data)
 	}
 
 	if (output) {
-		err = um_request_irq(UM_IRQ_ALLOC, fd, IRQ_WRITE,
+		err = um_request_irq_tt(UM_IRQ_ALLOC, fd, IRQ_WRITE,
 				     line_write_interrupt, 0,
-				     driver->write_irq_name, data);
+				     driver->write_irq_name, data, simple_timetravel_handler);
 		if (err < 0)
 			return err;
 

-- 
2.34.1





More information about the linux-um mailing list