lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20140411145754.GA22707@krava.brq.redhat.com>
Date:	Fri, 11 Apr 2014 16:57:54 +0200
From:	Jiri Olsa <jolsa@...hat.com>
To:	Don Zickus <dzickus@...hat.com>
Cc:	Namhyung Kim <namhyung@...nel.org>, acme@...stprotocols.net,
	LKML <linux-kernel@...r.kernel.org>, jmario@...hat.com,
	fowles@...each.com, peterz@...radead.org, eranian@...gle.com,
	andi.kleen@...el.com
Subject: Re: [PATCH 05/15 V3] perf, c2c: Rework setup code to prepare for
 features

On Tue, Apr 08, 2014 at 09:36:58PM -0400, Don Zickus wrote:
> On Wed, Apr 09, 2014 at 10:12:32AM +0900, Namhyung Kim wrote:
> > On Tue, 8 Apr 2014 10:11:07 -0400, Don Zickus wrote:
> > > On Tue, Apr 08, 2014 at 04:41:29PM +0900, Namhyung Kim wrote:
> > >> On Sat, 29 Mar 2014 18:10:18 +0100, Jiri Olsa wrote:
> > >> > On Mon, Mar 24, 2014 at 03:36:56PM -0400, Don Zickus wrote:
> > >> >
> > >> > SNIP
> > >> >
> > >> >>  
> > >> >>  static int perf_c2c__process_load_store(struct perf_c2c *c2c,
> > >> >> +					struct addr_location *al,
> > >> >>  					struct perf_sample *sample,
> > >> >> -					struct addr_location *al)
> > >> >> +					struct perf_evsel *evsel)
> > >> >>  {
> > >> >> -	if (c2c->raw_records)
> > >> >> -		perf_sample__fprintf(sample, ' ', "raw input", al, stdout);
> > >> >> +	struct mem_info *mi;
> > >> >> +
> > >> >> +	mi = sample__resolve_mem(sample, al);
> > >> >> +	if (!mi)
> > >> >> +		return -ENOMEM;
> > >> >
> > >> > perhaps not directly related to this patchset, but I needed
> > >> > attached patch to get resolved data in .bss (static), which
> > >> > for some reason happened to be located in executable segment
> > >> 
> > >> Wasn't it a read-only/const data?
> > >
> > > I believe it had the 'x' bit set.  Or the kernel was not passing any
> > > protection bits, so it defaulted to MAP_FUNCTION?
> > 
> > The perf treats a mapping as a data mapping (MAP_VARIABLE) by default if
> > the 'x' bit is not set.  As Jiri said its a static data, I guessed it's
> > a const data (set to 0?) and moved into .rodata section and then to the
> > text segment.

it was not initialized static data, .. not sure why it ended up
in text segment, because I dont see it anymore :-)

> 
> Unfortunately, his patch will be needed eventually, if not for his reason,
> I had a java JAR file example that was pulling data addresses out of a
> shared memory region with the protection bits set to 'rwx' (in the
> /proc/<pid>/maps area).  I was losing lots of samples until I came up with
> a more complicated hack.

also, I think nothing prevents user from mapping memory as 'rwx'
and load/store data there.. we should be able to handle this case

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ