[PATCH V7 17/24] coresight: etb10: implementing AUX space API
Rabin Vincent
rabin at rab.in
Sat Dec 19 09:23:14 PST 2015
On Fri, Dec 18, 2015 at 01:59:13PM -0700, Mathieu Poirier wrote:
> +static void etb_update_buffer(struct coresight_device *csdev,
> + struct perf_output_handle *handle,
> + void *sink_config)
> +{
> + int i, cur;
> + u32 *buf_ptr;
...
> + for (i = 0; i < to_read; i += 4) {
> + buf_ptr = buf->data_pages[cur] + offset;
> + read_data = readl_relaxed(drvdata->base +
> + ETB_RAM_READ_DATA_REG);
> + *buf_ptr++ = read_data >> 0;
> + *buf_ptr++ = read_data >> 8;
> + *buf_ptr++ = read_data >> 16;
> + *buf_ptr++ = read_data >> 24;
buf_ptr should either be changed to a u8* or just the first write should
be present. Otherwise this overwrites lots of memory.
> +
> + offset += 4;
> + if (offset >= PAGE_SIZE) {
More information about the linux-arm-kernel
mailing list