From 1c8d205e0966f1a11b3cf8e62dd83d1fc256878b Mon Sep 17 00:00:00 2001 From: Chris Lew Date: Wed, 4 Oct 2017 15:56:32 -0700 Subject: [PATCH] soc: qcom: tracer_pkt: Fix buffer length check The logic to truncate packets if the size is too long was off by one. Fix the conditional logic for checking lengths. CRs-Fixed: 2121368 Change-Id: I908bd0a1ab78dea439056dbcd12eb158b2789e4a Signed-off-by: Chris Lew --- drivers/soc/qcom/tracer_pkt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/soc/qcom/tracer_pkt.c b/drivers/soc/qcom/tracer_pkt.c index 6d1fa590c055..8875207c6334 100644 --- a/drivers/soc/qcom/tracer_pkt.c +++ b/drivers/soc/qcom/tracer_pkt.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2015, The Linux Foundation. All rights reserved. +/* Copyright (c) 2015, 2018, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -100,7 +100,7 @@ int tracer_pkt_init(void *data, size_t data_len, pkt_hdr->reserved = 0; pkt_hdr->id_valid = 0; pkt_hdr->qdss_tracing = qdss_tracing ? true : false; - if (pkt_priv_len > MAX_CC_WLEN * sizeof(uint32_t)) + if (pkt_priv_len >= MAX_CC_WLEN * sizeof(uint32_t)) pkt_hdr->ccl = MAX_CC_WLEN; else pkt_hdr->ccl = pkt_priv_len/sizeof(uint32_t) +