diff --git a/net/9p/client.c b/net/9p/client.c index f0dcf252af7e..73098249f379 100644 --- a/net/9p/client.c +++ b/net/9p/client.c @@ -599,7 +599,7 @@ p9_client_rpc(struct p9_client *c, int8_t type, const char *fmt, ...) smp_rmb(); if (err == -ERESTARTSYS && c->status == Connected && - type == P9_TFLUSH) { + type == P9_TFLUSH && !fatal_signal_pending(current)) { sigpending = 1; clear_thread_flag(TIF_SIGPENDING); goto again;