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] [thread-next>] [day] [month] [year] [list]
Message-ID: <nycvar.YFH.7.76.1808162328040.2839@n3.vanv.qr>
Date:   Thu, 16 Aug 2018 23:49:38 +0200 (CEST)
From:   Jan Engelhardt <jengelh@...i.de>
To:     Arnaldo Carvalho de Melo <acme@...nel.org>
cc:     dwarves@...r.kernel.org, Dodji Seketeli <dodji@...hat.com>,
        Linux Networking Development Mailing List 
        <netdev@...r.kernel.org>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: ANNOUNCE: pahole v1.12 (BTF edition)

On Thursday 2018-08-16 22:09, Arnaldo Carvalho de Melo wrote:

>	After a long time without announces, here is pahole 1.12,
>available at:
>
>	https://fedorapeople.org/~acme/dwarves/dwarves-1.12.tar.bz2
>
>	git://git.kernel.org/pub/scm/devel/pahole/pahole.git	
>
>	Some distros haven't picked 1.11, that comes with several
>goodies, my bad for not having announced it at that time more widely,

Missing announcements can be forgiven. But there are automatic tools 
that scrape the web for updates (usually something tries to scan
the enclosing directory of the last known URL), so uploads are 
essential.
Since 1.11 was never uploaded, it did not find its way..
(One had to grab a tarball gitweb generated from the tag,
but had to know there was a 1.11, too).


Can we have signatures for the release tarballs?
(Only if you think it's worth having.)


>Please report any problems to me, I'll try and get problems fixed.

Here's one (or six):


$ cat x.cpp 
#include <utility>
struct F {
        template<typename T, typename... A> F(T &, T &&, A &&...x) { }
        F clone() const && { int q; return F(q, 3, 4); }
        int xpub() { return xprot(); }
        protected:
        int xprot() { return xpriv(); }
        private:
        int xpriv() { return 0; }
};
int z;
F f(z,2,3,4);
int main()
{
        f.xpub();
        std::move(f).clone();
}


$ g++-7 x.cpp -c -ggdb3 -Wall && pahole x.o
die__process_function: tag not supported 0x2f (template_type_parameter)!
//expected: handle type
die__process_function: tag not supported 0x4107 (GNU_template_parameter_pack)!
//expected: handle type
die__process_function: tag not supported 0x4108 (GNU_formal_parameter_pack)!
//expected: handle type
ftype__recode_dwarf_types: couldn't find 0x321 abstract_origin for 0x397 (formal_parameter)!
//expected: handle type
ftype__recode_dwarf_types: couldn't find 0x326 abstract_origin for 0x39f (formal_parameter)!
ftype__recode_dwarf_types: couldn't find 0x3e0 abstract_origin for 0x447 (formal_parameter)!
struct F {
        class F clone(const class F  *);
	//expected: "struct F clone(const struct F *&&);"

        int xpub(class F *);

protected:

        int xprot(class F *);

private:

        int xpriv(class F *);

//expected: "public:"

        void F<int, int, int>(class F *, int &, , , );
	//expected: "void F<int, int, int>(struct F *, int &, int &&, int &&, int &&);

        void F<int, int>(class F *, int &, , );
	//expected: "void F<int, int, int>(struct F *, int &, int &&, int &&);

        /* size: 1, cachelines: 0, members: 0 */
        /* last cacheline: 1 bytes */
};

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ