linux-mips
[Top] [All Lists]

Re: using mprotect to write to .text

To: David Daney <david.daney@cavium.com>
Subject: Re: using mprotect to write to .text
From: Joe Buehler <aspam@cox.net>
Date: Tue, 11 Oct 2011 14:35:14 -0400
Authentication-results: cox.net; none
Cc: linux-mips@linux-mips.org
In-reply-to: <4E948593.6030604@cavium.com>
References: <loom.20111010T215444-70@post.gmane.org> <4E9470A1.8020309@cavium.com> <4E947D8A.9090409@cox.net> <4E948593.6030604@cavium.com>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Thunderbird 1.5.0.12 (X11/20090114)
David Daney wrote:

> I cannot parse the meaning out of these last two sentences.  The
> cacheflush() system call both exists and works.  You want to change it?

Let me rewind a bit.  I have a multithreaded binary running on multiple
physical CPUs.  As part of a debugging mechanism, I want to make changes
to .text from a thread dedicated to the purpose.  This requires at the
least icache flushes on all CPUs but also hazard avoidance measures on
all CPUs.  So I understand anyway.

The cacheflush call will do the flush but not the hazard avoidance.  In
order to solve my particular issue I am thinking about adding the hazard
avoidance into cacheflush for my particular application.  It is not a
question of cacheflush being wrong, but of extending it to meet my
needs.  In fact, it seems like a useful change -- it will allow an
application to do exactly what I want to do, and easily so, and would
seem a logical place for the functionality to reside.

Sorry if I seem a bit muddled -- this is extremely low level and not
what I deal with day to day.

Joe Buehler

<Prev in Thread] Current Thread [Next in Thread>