Re: FAILED: patch "[PATCH] dm suspend: return -ERESTARTSYS instead of -EINTR" failed to apply to 4.19-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Mon, 19 Aug 2024, gregkh@xxxxxxxxxxxxxxxxxxx wrote:

> 
> The patch below does not apply to the 4.19-stable tree.
> If someone wants it applied there, or to any other stable or longterm
> tree, then please email the backport, including the original git commit
> id to <stable@xxxxxxxxxxxxxxx>.
> 
> To reproduce the conflict and resubmit, you may use the following commands:
> 
> git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-4.19.y
> git checkout FETCH_HEAD
> git cherry-pick -x 1e1fd567d32fcf7544c6e09e0e5bc6c650da6e23
> # <resolve conflicts, build, test, etc.>
> git commit -s
> git send-email --to '<stable@xxxxxxxxxxxxxxx>' --in-reply-to '2024081927-smoky-refrain-8af1@gregkh' --subject-prefix 'PATCH 4.19.y' HEAD^..
> 
> Possible dependencies:
> 
> 1e1fd567d32f ("dm suspend: return -ERESTARTSYS instead of -EINTR")
> 85067747cf98 ("dm: do not use waitqueue for request-based DM")
> 087615bf3acd ("dm mpath: pass IO start time to path selector")
> 5de719e3d01b ("dm mpath: fix missing call of path selector type->end_io")
> 645efa84f6c7 ("dm: add memory barrier before waitqueue_active")
> 3c94d83cb352 ("blk-mq: change blk_mq_queue_busy() to blk_mq_queue_inflight()")
> c4576aed8d85 ("dm: fix request-based dm's use of dm_wait_for_completion")
> b7934ba4147a ("dm: fix inflight IO check")
> 6f75723190d8 ("dm: remove the pending IO accounting")
> dbd3bbd291a0 ("dm rq: leverage blk_mq_queue_busy() to check for outstanding IO")
> 80a787ba3809 ("dm: dont rewrite dm_disk(md)->part0.in_flight")
> ae8799125d56 ("blk-mq: provide a helper to check if a queue is busy")
> 6a23e05c2fe3 ("dm: remove legacy request-based IO path")
> 
> thanks,
> 
> greg k-h
> 
> ------------------ original commit in Linus's tree ------------------
> 
> >From 1e1fd567d32fcf7544c6e09e0e5bc6c650da6e23 Mon Sep 17 00:00:00 2001
> From: Mikulas Patocka <mpatocka@xxxxxxxxxx>
> Date: Tue, 13 Aug 2024 12:38:51 +0200
> Subject: [PATCH] dm suspend: return -ERESTARTSYS instead of -EINTR
> 
> This commit changes device mapper, so that it returns -ERESTARTSYS
> instead of -EINTR when it is interrupted by a signal (so that the ioctl
> can be restarted).
> 
> The manpage signal(7) says that the ioctl function should be restarted if
> the signal was handled with SA_RESTART.
> 
> Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx
> 
> diff --git a/drivers/md/dm.c b/drivers/md/dm.c
> index 97fab2087df8..87bb90303435 100644
> --- a/drivers/md/dm.c
> +++ b/drivers/md/dm.c
> @@ -2737,7 +2737,7 @@ static int dm_wait_for_bios_completion(struct mapped_device *md, unsigned int ta
>  			break;
>  
>  		if (signal_pending_state(task_state, current)) {
> -			r = -EINTR;
> +			r = -ERESTARTSYS;
>  			break;
>  		}
>  
> @@ -2762,7 +2762,7 @@ static int dm_wait_for_completion(struct mapped_device *md, unsigned int task_st
>  			break;
>  
>  		if (signal_pending_state(task_state, current)) {
> -			r = -EINTR;
> +			r = -ERESTARTSYS;
>  			break;
>  		}
>  
> 

Hi

Here I'm sending the updated patch for 4.19 and 5.4.

Mikulas



commit 1e1fd567d32fcf7544c6e09e0e5bc6c650da6e23
Author: Mikulas Patocka <mpatocka@xxxxxxxxxx>
Date:   Tue Aug 13 12:38:51 2024 +0200

    dm suspend: return -ERESTARTSYS instead of -EINTR
    
    This commit changes device mapper, so that it returns -ERESTARTSYS
    instead of -EINTR when it is interrupted by a signal (so that the ioctl
    can be restarted).
    
    The manpage signal(7) says that the ioctl function should be restarted if
    the signal was handled with SA_RESTART.
    
    Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx>
    Cc: stable@xxxxxxxxxxxxxxx

---
 drivers/md/dm.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-stable/drivers/md/dm.c
===================================================================
--- linux-stable.orig/drivers/md/dm.c
+++ linux-stable/drivers/md/dm.c
@@ -2468,7 +2468,7 @@ static int dm_wait_for_completion(struct
 			break;
 
 		if (signal_pending_state(task_state, current)) {
-			r = -EINTR;
+			r = -ERESTARTSYS;
 			break;
 		}
 





[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux