summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShashank Mittal <mittals@codeaurora.org>2016-06-15 13:44:34 -0700
committerKyle Yan <kyan@codeaurora.org>2016-06-23 13:59:20 -0700
commit9d8b4c94fd7619b107782d8b33892bc2f4dd14be (patch)
treec939426033b445659da6a1a20823a33f4dea130a
parent68f9e10a741e8ce4f2ee70abf9a064f1a026f259 (diff)
coresight-tmc: fix read_count for tmc_open
'read_count' is used to reference count simultaneous TMC read requests. This count should reset to zero in case tmc_read_preapare fails. Change-Id: Iaded781ee76ec3b079ac9cd9d551bdfb42834fd9 Signed-off-by: Shashank Mittal <mittals@codeaurora.org>
-rw-r--r--drivers/hwtracing/coresight/coresight-tmc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/hwtracing/coresight/coresight-tmc.c b/drivers/hwtracing/coresight/coresight-tmc.c
index ca1c1b98f877..199234e1bba4 100644
--- a/drivers/hwtracing/coresight/coresight-tmc.c
+++ b/drivers/hwtracing/coresight/coresight-tmc.c
@@ -1148,8 +1148,10 @@ static int tmc_open(struct inode *inode, struct file *file)
goto out;
ret = tmc_read_prepare(drvdata);
- if (ret)
+ if (ret) {
+ drvdata->read_count--;
return ret;
+ }
out:
nonseekable_open(inode, file);