Re: [PATCH 4/4] perf tools: Retry mapping buffers readonly on EACCES

From: Robert Richter
Date: Fri Jun 14 2013 - 03:29:28 EST


On 14.06.13 11:08:40, Namhyung Kim wrote:
> > - if (perf_evlist__mmap(evlist, opts->mmap_pages, false) < 0) {
> > +try_again2:
> > + if (perf_evlist__mmap(evlist, opts->mmap_pages, opts->mmap_ro) < 0) {
> > + if (!opts->mmap_ro && errno == EACCES) {
> > + opts->mmap_ro = true;
> > + goto try_again2;
> > + }
> > ui__error("Failed to mmap with %d (%s)\n",
> > errno, strerror(errno));
> > goto out_err;
>
>
> You will need this also:
>
>
> @@ -161,7 +161,8 @@ static int perf_record__mmap_read(struct perf_record *rec,
> }
>
> md->prev = old;
> - perf_mmap__write_tail(md, old);
> + if (!rec->opts.mmap_ro)
> + perf_mmap__write_tail(md, old);
>
> out:
> return rc;

Yes, indeed. Will add your change

-Robert
--
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/