lkml.org 
[lkml]   [2022]   [Apr]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.17 1112/1126] um: Fix uml_mconsole stop/go
    Date
    From: Anton Ivanov <anton.ivanov@cambridgegreys.com>

    commit 1a3a6a2a035bb6c3a7ef4c788d8fd69a7b2d6284 upstream.

    Moving to an EPOLL based IRQ controller broke uml_mconsole stop/go
    commands. This fixes it and restores stop/go functionality.

    Fixes: ff6a17989c08 ("Epoll based IRQ controller")
    Signed-off-by: Anton Ivanov <anton.ivanov@cambridgegreys.com>
    Signed-off-by: Richard Weinberger <richard@nod.at>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    arch/um/drivers/mconsole_kern.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    --- a/arch/um/drivers/mconsole_kern.c
    +++ b/arch/um/drivers/mconsole_kern.c
    @@ -224,7 +224,7 @@ void mconsole_go(struct mc_request *req)

    void mconsole_stop(struct mc_request *req)
    {
    - deactivate_fd(req->originating_fd, MCONSOLE_IRQ);
    + block_signals();
    os_set_fd_block(req->originating_fd, 1);
    mconsole_reply(req, "stopped", 0, 0);
    for (;;) {
    @@ -247,6 +247,7 @@ void mconsole_stop(struct mc_request *re
    }
    os_set_fd_block(req->originating_fd, 0);
    mconsole_reply(req, "", 0, 0);
    + unblock_signals();
    }

    static DEFINE_SPINLOCK(mc_devices_lock);

    \
     
     \ /
      Last update: 2022-04-05 13:49    [W:3.552 / U:0.288 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site