From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AH8x225U4CiS0mfnMPEEWQnw79Ypksf+JHbwoIH/8JvIyzCz5/kpWOQ97C0AOSPYJcIg0kjNrRCv ARC-Seal: i=1; a=rsa-sha256; t=1516611174; cv=none; d=google.com; s=arc-20160816; b=s1MQYdfQ0uJFt0UicvyxmJjRmBJGjPk6ciIihpY2m2TbQzV2ZyNBDYw9WJf2jwZja6 fu5QiHJBY4SHDLT1C6sTo1PL27J9GTQOOfRGkGWpHuwfblDU9u3ESHyf+27eCPGgGBEG TlQxDvtTL52+gECbAVPveRESLjxIg4hyGWAgdalMpQuRcYv8yMhEvhPV+HhVfMcBhh7T IDFF7c3FJS4jrHs+2/hd/gok9ohM5TwOX4ds1WAER07JaFSt0YGR7R8uLVGpyq5BheVO fiKTmBQ8U/TH8xCKr2FrRcyBvlkdIaweJVJVCmZsuY8fpw6JSif+Fj5YGXCj0LNFegr8 hVww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:user-agent:references:in-reply-to:message-id:date :subject:cc:to:from:arc-authentication-results; bh=XFwrk+ZP7o2uQK1/1Jf/21qS/l7cnFvIcdEjfB78nMs=; b=PYHaqnMrhzxvK7gcK4OxW/9rt1w9nTs7ZKfxpYs5D2GciifkYfCsb96r27yufGFx9X 1Q6fcTe55l9NsSbY67JpuMfgy+MkXScYUtsU1GrYwxnwe4NknTJSLwU8HPox7dL+/RWS qS0HvbDuLID+b4sXKvXkq69noe7JHNixPFz5XXQOv0IkQQ05ib+0OueH33ETq8x6lBll 0+cBqClOOsq08ijiwwik3oVSutS2iRSYWi1GO7h143lHfg5Zwh2t9RGANupc5X+9GVzU pJYKl9BxzHgjQwCipR97NtQDx1BPqugbuo+VCMQEk5S1dLuUE9/+OpIDJv1vbbM1jRXe qEhg== ARC-Authentication-Results: i=1; mx.google.com; spf=softfail (google.com: domain of transitioning gregkh@linuxfoundation.org does not designate 90.92.71.90 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org Authentication-Results: mx.google.com; spf=softfail (google.com: domain of transitioning gregkh@linuxfoundation.org does not designate 90.92.71.90 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, syzbot+4386709c0c1284dca827@syzkaller.appspotmail.com, Dmitry Vyukov , Oliver Hartkopp , Marc Kleine-Budde Subject: [PATCH 4.14 61/89] can: af_can: can_rcv(): replace WARN_ONCE by pr_warn_once Date: Mon, 22 Jan 2018 09:45:41 +0100 Message-Id: <20180122084000.749845158@linuxfoundation.org> X-Mailer: git-send-email 2.16.0 In-Reply-To: <20180122083954.683903493@linuxfoundation.org> References: <20180122083954.683903493@linuxfoundation.org> User-Agent: quilt/0.65 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-LABELS: =?utf-8?b?IlxcU2VudCI=?= X-GMAIL-THRID: =?utf-8?q?1590282078590199824?= X-GMAIL-MSGID: =?utf-8?q?1590282078590199824?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Marc Kleine-Budde commit 8cb68751c115d176ec851ca56ecfbb411568c9e8 upstream. If an invalid CAN frame is received, from a driver or from a tun interface, a Kernel warning is generated. This patch replaces the WARN_ONCE by a simple pr_warn_once, so that a kernel, bootet with panic_on_warn, does not panic. A printk seems to be more appropriate here. Reported-by: syzbot+4386709c0c1284dca827@syzkaller.appspotmail.com Suggested-by: Dmitry Vyukov Acked-by: Oliver Hartkopp Signed-off-by: Marc Kleine-Budde Signed-off-by: Greg Kroah-Hartman --- net/can/af_can.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) --- a/net/can/af_can.c +++ b/net/can/af_can.c @@ -721,20 +721,16 @@ static int can_rcv(struct sk_buff *skb, { struct canfd_frame *cfd = (struct canfd_frame *)skb->data; - if (WARN_ONCE(dev->type != ARPHRD_CAN || - skb->len != CAN_MTU || - cfd->len > CAN_MAX_DLEN, - "PF_CAN: dropped non conform CAN skbuf: " - "dev type %d, len %d, datalen %d\n", - dev->type, skb->len, cfd->len)) - goto drop; + if (unlikely(dev->type != ARPHRD_CAN || skb->len != CAN_MTU || + cfd->len > CAN_MAX_DLEN)) { + pr_warn_once("PF_CAN: dropped non conform CAN skbuf: dev type %d, len %d, datalen %d\n", + dev->type, skb->len, cfd->len); + kfree_skb(skb); + return NET_RX_DROP; + } can_receive(skb, dev); return NET_RX_SUCCESS; - -drop: - kfree_skb(skb); - return NET_RX_DROP; } static int canfd_rcv(struct sk_buff *skb, struct net_device *dev,