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-next>] [day] [month] [year] [list]
Date:	Thu, 5 Mar 2015 12:32:56 -0300
From:	Arnaldo Carvalho de Melo <acme@...nel.org>
To:	Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>
Cc:	David Ahern <dsahern@...il.com>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: perf probe: can't find unnamed union members


Hi Masami,

[root@zoo ~]# perf probe -x ~/bin/perf -L lock__delete <lock__delete@...me/git/linux/tools/perf/util/annotate.c:0>
      0  static void lock__delete(struct ins_operands *ops)
      1  {
      2         struct ins *ins = ops->locked.ins;
         
      4         if (ins && ins->ops->free)
      5                 ins->ops->free(ops->locked.ops);
                else
      7                 ins__delete(ops->locked.ops);
         
      9         zfree(&ops->locked.ops);
     10         zfree(&ops->target.raw);
     11         zfree(&ops->target.name);
     12  }

And:

[root@zoo ~]# pahole ~/bin/perf -C ins_operands
struct ins_operands {
	char *                     raw;                  /*     0     8 */
	struct {
		char *             raw;                  /*     8     8 */
		char *             name;                 /*    16     8 */
		u64                addr;                 /*    24     8 */
		u64                offset;               /*    32     8 */
	} target;                                        /*     8    32 */
	union {
		struct {
			char *     raw;                  /*    40     8 */
			char *     name;                 /*    48     8 */
			u64        addr;                 /*    56     8 */
		} source;                                /*          24 */
		struct {
			struct ins * ins;                /*    40     8 */
			struct ins_operands * ops;       /*    48     8 */
		} locked;                                /*          16 */
	};                                               /*    40    24 */
	/* --- cacheline 1 boundary (64 bytes) --- */

	/* size: 64, cachelines: 1, members: 3 */
};
[root@zoo ~]#

But:

[root@zoo ~]# perf probe -x ~/bin/perf lock__delete ops 'locked_ops=ops->locked.ops'
ops(type:ins_operands) has no member locked.
  Error: Failed to add events.
[root@zoo ~]# 

Yes, it has :-)

- Arnaldo
--
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