ASoC: SOF: ipc3-dtrace: Return from dtrace_read if there is no new data available
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Fri, 10 Jun 2022 08:01:19 +0000 (11:01 +0300)
committerMark Brown <broonie@kernel.org>
Fri, 10 Jun 2022 12:31:47 +0000 (13:31 +0100)
If no new trace data is available then return immediately, there is no
need to continue with the execution of the trace_read() function.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Link: https://lore.kernel.org/r/20220610080119.30880-4-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/ipc3-dtrace.c

index 1f4d7a9..f59931d 100644 (file)
@@ -353,6 +353,10 @@ static ssize_t dfsentry_dtrace_read(struct file *file, char __user *buffer,
                return -EIO;
        }
 
+       /* no new trace data */
+       if (!avail)
+               return 0;
+
        /* make sure count is <= avail */
        if (count > avail)
                count = avail;