Re: [PATCH] perf record: Delete file if a failure occurs writing theperf data file

From: Ingo Molnar
Date: Mon Nov 11 2013 - 04:38:00 EST



* David Ahern <dsahern@xxxxxxxxx> wrote:

> If perf fails to write data to the data file (e.g., ENOSPC error) it fails
> with the message:
> failed to write perf data, error: No space left on device
>
> and stops â killing the workload too. The file is an unknown state.
> Trying to read it (e.g., perf report) fails with a SIGBUS error.

Ouch - guys please first investiage that SIGBUS, we should not behave
unexpectedly on _any_ (read: random) perf.data file contents. The SIGBUS
likely suggests that the parsing isn't robust enough.

> Fix by deleting the file on a failure.

That only works around the issue - if the same data file is produced by
some other method (or maliciously) then perf report will still SIGBUS ...

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/