From: Dan Carpenter Date: Tue, 28 Feb 2012 06:57:59 +0000 (+0300) Subject: Bluetooth: change min_t() cast in hci_reassembly() X-Git-Tag: v3.4-rc1~177^2~112^2~30 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=89bb46d02046b59c1de3d2e92680f3a1062750d0;p=profile%2Fivi%2Fkernel-x86-ivi.git Bluetooth: change min_t() cast in hci_reassembly() "count" is type int so the cast to __u16 truncates the high bits away and triggers a Smatch static checker warning. It looks like a high value of count could cause a forever loop, but I didn't follow it through to see if count is capped somewhere. Signed-off-by: Dan Carpenter Acked-by: Marcel Holtmann Signed-off-by: Johan Hedberg --- diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index e6cbb8a..db484a8 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c @@ -1966,7 +1966,7 @@ static int hci_reassembly(struct hci_dev *hdev, int type, void *data, while (count) { scb = (void *) skb->cb; - len = min_t(__u16, scb->expect, count); + len = min_t(uint, scb->expect, count); memcpy(skb_put(skb, len), data, len);