Re: Encountered error while encoding BTF due to Unsupported DW_TAG_unspecified_type(0x3b)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Em Wed, Oct 05, 2022 at 09:23:32AM +0200, Martin Liška escreveu:
> On 10/4/22 23:44, Arnaldo Carvalho de Melo wrote:
> > I assume "binutils master" means:
> > 
> > git://sourceware.org/git/binutils-gdb.git master?
> 
> Yes.

Taking notes:

Using what is in opensuse:tumbleweed it works:

15e20ce2324a:~/git/linux # ls -la ../build/v6.0.0+/vmlinux
-rwxr-xr-x. 1 root root 674990096 Oct  5 14:30 ../build/v6.0.0+/vmlinux
15e20ce2324a:~/git/linux # pahole ../build/v6.0.0+/vmlinux > /dev/null
15e20ce2324a:~/git/linux # time pahole ../build/v6.0.0+/vmlinux > /dev/null

real	0m5.155s
user	0m4.518s
sys	0m0.608s
15e20ce2324a:~/git/linux # time pahole -F dwarf ../build/v6.0.0+/vmlinux > /dev/null

real	0m5.184s
user	0m4.504s
sys	0m0.662s
15e20ce2324a:~/git/linux # time pahole -F btf ../build/v6.0.0+/vmlinux > /dev/null

real	0m0.077s
user	0m0.057s
sys	0m0.020s
15e20ce2324a:~/git/linux # btfdiff ../build/v6.0.0+/vmlinux
15e20ce2324a:~/git/linux # pahole -F btf -C spinlock_t ../build/v6.0.0+/vmlinux > /dev/null
15e20ce2324a:~/git/linux # pahole -F btf -C spinlock_t ../build/v6.0.0+/vmlinux
typedef struct spinlock spinlock_t;
15e20ce2324a:~/git/linux # pahole -EF btf -C spinlock_t ../build/v6.0.0+/vmlinux
typedef struct spinlock spinlock_t;
15e20ce2324a:~/git/linux # pahole -F btf -C spinlock ../build/v6.0.0+/vmlinux
struct spinlock {
	union {
		struct raw_spinlock rlock;               /*     0     4 */
	};                                               /*     0     4 */

	/* size: 4, cachelines: 1, members: 1 */
	/* last cacheline: 4 bytes */
};
15e20ce2324a:~/git/linux # pahole -EF btf -C spinlock ../build/v6.0.0+/vmlinux
struct spinlock {
	union {
		struct raw_spinlock {
			/* typedef arch_spinlock_t */ struct qspinlock {
				union {
					/* typedef atomic_t */ struct {
						int            counter;                  /*     0     4 */
					} val; /*     0     4 */
					struct {
						/* typedef u8 -> __u8 */ unsigned char  locked; /*     0     1 */
						/* typedef u8 -> __u8 */ unsigned char  pending; /*     1     1 */
					};                                               /*     0     2 */
					struct {
						/* typedef u16 -> __u16 */ short unsigned int locked_pending; /*     0     2 */
						/* typedef u16 -> __u16 */ short unsigned int tail; /*     2     2 */
					};                                               /*     0     4 */
				};                                                       /*     0     4 */
			} raw_lock; /*     0     4 */
		} rlock; /*     0     4 */
	};                                                                               /*     0     4 */

	/* size: 4, cachelines: 1, members: 1 */
	/* last cacheline: 4 bytes */
};
15e20ce2324a:~/git/linux # pahole --version
v1.22
15e20ce2324a:~/git/linux #
15e20ce2324a:~/git/linux # rpm -q binutils
binutils-2.38-6.2.x86_64
15e20ce2324a:~/git/linux #

Now to update binutils.

- Arnaldo



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux