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: <d289061d-7dc8-41d7-a166-4b3b8dce886d@redhat.com>
Date: Tue, 17 Sep 2024 13:39:35 +0200
From: David Hildenbrand <david@...hat.com>
To: "Dr. David Alan Gilbert" <linux@...blig.org>
Cc: linux-kernel@...r.kernel.org, kees@...nel.org
Subject: Re: Dead code by symbols

On 16.09.24 14:33, Dr. David Alan Gilbert wrote:
> Hi David,
>    A while ago we were chatting about me spotting dead structs, and
> you wondered if it might be possible to spot dead functions that
> were exported from an object but never used - and I've been trying
> it for the last few days.
> 
>    I'm pretty early on, but it's already got some fun things:

Cool, stuff! :)

> 
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6a36d828bdef0e02b1e6c12e2160f5b83be6aab5
>    Core code not used for ~20 years
> 
> https://lore.kernel.org/lkml/1690847.1726346402@warthog.procyon.org.uk/
>    A bug! A recently added function that lost the place it was wired up
>    so was currently unused.

That is really nice!

> 
> https://lore.kernel.org/lkml/ZuXOWjvVYa64c1-5@gallifrey/
>    A few small dead files.
> 
> Now, it does take some more guesswork, for example an unused function
> which was added a couple of years back, might be something that's
> there for consistency, 

I know people will find reasons to do something like that, but we really 
*shouldn't* be maintaining / dragging along dead code that nobody might 
ever use.

> might have been forgotten to be wired up,

Forgotten as in "BUG" or as in "ran out of steam" ?

> or might just be something that's going to be used but the
> authors haven't got to it yet, e.g.
>     https://lore.kernel.org/lkml/ZuRGRKU9bjgC52mD@gallifrey/

Yes, that' a valid case.

> 
> My patience varies from Ooh core code, to meh old driver to very meh
> for old undead staging code.

:)

> 
>    I've got some nasty awk which kind of works some of the time;
> but it does require a lot of handholding; often things like inlining
> isn't spotted so gives a false positive, and I'm only looking at
> the objects from a single architecture, so again have to grep
> for the symbol name to make sure it's not used by a different
> architecture build.
> 
>    And heck, I wish git log -G was faster.

:)

> 
> Anyway, thanks for the suggestion!

Glad you're able to spot some nice (+fun, otherwise you wouldn't be 
doing it ;) ) things!

-- 
Cheers,

David / dhildenb


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ