[Acked/cmt] [PATCH][Trusty/Utopic/Vivid/Wily/Xenial] (upstream) nbd: ratelimit error msgs after socket close

Andy Whitcroft apw at canonical.com
Tue Feb 9 17:42:18 UTC 2016


On Mon, Feb 08, 2016 at 05:08:02PM -0500, Dan Streetman wrote:
> BugLink: http://bugs.launchpad.net/bugs/1505564
> 
> Make the "Attempted send on closed socket" error messages generated in
> nbd_request_handler() ratelimited.
> 
> When the nbd socket is shutdown, the nbd_request_handler() function emits
> an error message for every request remaining in its queue.  If the queue
> is large, this will spam a large amount of messages to the log.  There's
> no need for a separate error message for each request, so this patch
> ratelimits it.
> 
> In the specific case this was found, the system was virtual and the error
> messages were logged to the serial port, which overwhelmed it.
> 
> Fixes: 4d48a542b427 ("nbd: fix I/O hang on disconnected nbds")
> Signed-off-by: Dan Streetman <dan.streetman at canonical.com>
> Signed-off-by: Markus Pargmann <mpa at pengutronix.de>
> (cherry-picked from da6ccaaa in git://git.pengutronix.de/git/mpa/linux-nbd.git)

Looks to be applied upstream ndb tree.  This above line should be fixed
to match the standard form:

(cherry-picked from commit <full sha> git://...)

>  drivers/block/nbd.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
> index deef152..b05226d 100644
> --- a/drivers/block/nbd.c
> +++ b/drivers/block/nbd.c
> @@ -618,8 +618,8 @@ static void nbd_request_handler(struct request_queue *q)
>  			req, req->cmd_type);
>  
>  		if (unlikely(!nbd->sock)) {
> -			dev_err(disk_to_dev(nbd->disk),
> -				"Attempted send on closed socket\n");
> +			dev_err_ratelimited(disk_to_dev(nbd->disk),
> +					    "Attempted send on closed socket\n");
>  			req->errors++;
>  			nbd_end_request(nbd, req);
>  			spin_lock_irq(q->queue_lock);
> -- 

Acked-by: Andy Whitcroft <apw at canonical.com>




More information about the kernel-team mailing list