From 6d5e22950a957e86e8a58a5945384dd8ea83204d Mon Sep 17 00:00:00 2001 From: Chris Lew Date: Tue, 21 Jul 2020 19:35:05 -0700 Subject: [PATCH] net: qrtr: ns: Change to ratelimited prints Error prints for commands that are broadcasted may spam the kernel logs if a client is misbehaving and stops reading from it's socket. Change these prints to ratelimited in order to prevent performance issues when a client socket is full. Change-Id: I5aa5fa1f693f9865a3d28f28de38f870a42fbc8d Signed-off-by: Chris Lew --- net/qrtr/ns.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/net/qrtr/ns.c b/net/qrtr/ns.c index daa7ba242a7a..a2e8aba60fd5 100644 --- a/net/qrtr/ns.c +++ b/net/qrtr/ns.c @@ -167,7 +167,7 @@ static int service_announce_del(struct sockaddr_qrtr *dest, ret = kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); if (ret < 0 && ret != -ENODEV) - pr_err("failed to announce del service %d\n", ret); + pr_err_ratelimited("failed to announce del service %d\n", ret); return ret; } @@ -198,7 +198,8 @@ static void lookup_notify(struct sockaddr_qrtr *to, struct qrtr_server *srv, ret = kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); if (ret < 0 && ret != -ENODEV) - pr_err("failed to send lookup notification %d\n", ret); + pr_err_ratelimited("failed to send lookup notification %d\n", + ret); } static int announce_servers(struct sockaddr_qrtr *sq) @@ -387,8 +388,9 @@ static int ctrl_cmd_bye(struct sockaddr_qrtr *from) ret = kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); if (ret < 0 && ret != -ENODEV) - pr_err("send bye failed: [0x%x:0x%x] 0x%x ret: %d\n", - srv->service, srv->instance, srv->port, ret); + pr_err_ratelimited("send bye failed: [0x%x:0x%x] 0x%x ret: %d\n", + srv->service, srv->instance, + srv->port, ret); } return 0; @@ -458,8 +460,9 @@ static int ctrl_cmd_del_client(struct sockaddr_qrtr *from, ret = kernel_sendmsg(qrtr_ns.sock, &msg, &iv, 1, sizeof(pkt)); if (ret < 0 && ret != -ENODEV) - pr_err("del client cmd failed: [0x%x:0x%x] 0x%x %d\n", - srv->service, srv->instance, srv->port, ret); + pr_err_ratelimited("del client cmd failed: [0x%x:0x%x] 0x%x %d\n", + srv->service, srv->instance, + srv->port, ret); } return 0;