From: <pavan_savoy@ti.com>
To: <greg@kroah.com>, <linux-kernel@vger.kernel.org>
Cc: pavan_savoy@sify.com, Vijay Badawadagi <bvijay@ti.com>,
Pavan Savoy <pavan_savoy@ti.com>
Subject: [PATCH 4/4] drivers:misc: ti-st: fail-safe on wrong pkt type
Date: Wed, 20 Jul 2011 09:30:25 -0500 [thread overview]
Message-ID: <1311172225-17678-10-git-send-email-pavan_savoy@ti.com> (raw)
In-Reply-To: <1311172225-17678-9-git-send-email-pavan_savoy@ti.com>
From: Vijay Badawadagi <bvijay@ti.com>
Texas Instrument's shared transport driver interpret incoming data from the
UART based on the various protocol drivers registered to the driver such as
btwilink driver or FM or GPS driver which provide logical channel IDs.
In case of bad-behavior from chip such as HCI Event response for a GPS command
or a HCI Event (h/w error event) for a FM response & In case of bad-behavior
from UART driver such as dropping data bytes a fail-safe is required to avoid
kernel panic.
Signed-off-by: Pavan Savoy <pavan_savoy@ti.com>
Signed-off-by: Vijay Badawadagi <bvijay@ti.com>
---
drivers/misc/ti-st/st_core.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/drivers/misc/ti-st/st_core.c b/drivers/misc/ti-st/st_core.c
index c8e335d..1f973ce 100644
--- a/drivers/misc/ti-st/st_core.c
+++ b/drivers/misc/ti-st/st_core.c
@@ -338,6 +338,12 @@ void st_int_recv(void *disc_data,
/* Unknow packet? */
default:
type = *ptr;
+ if (st_gdata->list[type] == NULL) {
+ pr_err("chip/interface misbehavior dropping"
+ " frame starting with 0x%02x", type);
+ goto done;
+
+ }
st_gdata->rx_skb = alloc_skb(
st_gdata->list[type]->max_frame_size,
GFP_ATOMIC);
@@ -354,6 +360,7 @@ void st_int_recv(void *disc_data,
ptr++;
count--;
}
+done:
spin_unlock_irqrestore(&st_gdata->lock, flags);
pr_debug("done %s", __func__);
return;
--
1.7.4.1
prev parent reply other threads:[~2011-07-20 14:30 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-20 14:30 [PATCH 0/4] drivers:misc: ti-st: platform specifics pavan_savoy
2011-07-20 14:30 ` [PATCH 1/4] drivers:misc: ti-st: avoid a misleading dbg msg pavan_savoy
2011-07-20 14:30 ` [PATCH 2/4] drivers:misc:ti-st: platform hooks for chip states pavan_savoy
2011-07-20 14:30 ` [PATCH 3/4] drivers:misc: ti-st: reinit completion on ver read pavan_savoy
2011-07-20 14:30 ` [PATCH 4/4] drivers:misc: ti-st: fail-safe on wrong pkt type pavan_savoy
2011-07-20 14:30 ` [PATCH 0/4] drivers:misc: ti-st: platform specifics pavan_savoy
2011-07-20 14:30 ` [PATCH 1/4] drivers:misc: ti-st: avoid a misleading dbg msg pavan_savoy
2011-07-20 14:30 ` [PATCH 2/4] drivers:misc:ti-st: platform hooks for chip states pavan_savoy
2011-07-20 14:30 ` [PATCH 3/4] drivers:misc: ti-st: reinit completion on ver read pavan_savoy
2011-07-20 14:30 ` pavan_savoy [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1311172225-17678-10-git-send-email-pavan_savoy@ti.com \
--to=pavan_savoy@ti.com \
--cc=bvijay@ti.com \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=pavan_savoy@sify.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®