Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 943641 - net-fs/openafs-1.8.13 has implicit function declarations in configure logs
Summary: net-fs/openafs-1.8.13 has implicit function declarations in configure logs
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks: implicit-in-configure
  Show dependency tree
 
Reported: 2024-11-16 16:17 UTC by Agostino Sarubbo
Modified: 2025-01-06 07:24 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log.xz (build.log.xz,67.12 KB, application/x-xz)
2024-11-16 16:17 UTC, Agostino Sarubbo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2024-11-16 16:17:45 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: net-fs/openafs-1.8.13 has implicit function declarations in configure logs.
Discovered on: amd64 (internal ref: ci)

Info about the issue:
https://wiki.gentoo.org/wiki/Project:Tinderbox/Common_Issues_Helper#QA0072
Comment 1 Agostino Sarubbo gentoo-dev 2024-11-16 16:17:46 UTC
CC'ing also the author of the commit (0f31b49a7cacc5f9e71b5721c46879eb7c6d46bf)
Comment 2 Agostino Sarubbo gentoo-dev 2024-11-16 16:17:47 UTC
Created attachment 908810 [details]
build.log.xz

build log and emerge --info (compressed because it exceeds attachment limit, use 'xzless' to read it)
Comment 3 Agostino Sarubbo gentoo-dev 2024-11-16 16:17:48 UTC
Found the following implicit function declarations in configure logs:

config.log:4378 - __vfs_write
config.log:4653 - PageFsMisc
config.log:4791 - current_kernel_time
config.log:4957 - do_sync_read
config.log:5107 - find_task_by_pid
config.log:5229 - generic_file_aio_read
config.log:5536 - inode_setattr
config.log:5677 - kernel_setsockopt
config.log:5864 - page_follow_link
config.log:6025 - __pagevec_lru_add_file
config.log:6157 - path_lookup
config.log:6786 - default_file_splice_read
config.log:7013 - lru_cache_add_file
config.log:7276 - wrap_directory_iterator
config.log:7442 - inode_set_atime
config.log:7446 - inode_set_mtime
config.log:8646 - inode_setattr
config.log:10958 - get_sb_nodev
config.log:11140 - refrigerator
config.log:22351 - bswap16
config.log:22686 - bswap32
Comment 4 Cheyenne Wills 2024-11-17 05:04:04 UTC
They are artifacts of autoconf testing for various Linux kernel functions at different kernel versions.
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-11-17 05:04:57 UTC
(In reply to Cheyenne Wills from comment #4)
> They are artifacts of autoconf testing for various Linux kernel functions at
> different kernel versions.

Please mark them as FPs using QA_CONFIG_IMPL_DECL_SKIP in the ebuild with appropriate comments.
Comment 6 Cheyenne Wills 2024-11-17 16:02:40 UTC
Just be aware that this will be a very long and changing list.  The configure tests are looking for various functions that may or may not exist not only in Linux but all the other platforms that openafs supports.  

It will take me a while to dig through all the autoconf tests to come up with the list that will handle this properly.
Comment 7 Cheyenne Wills 2024-12-12 20:20:59 UTC
I have a solution for this.  It will probably be a gentoo specific change (I'm not sure if upstream will take the change).

What the core issue is, is that the upstream build process captures the output from the compile, does a check then sends the output to the log.  The implicit function declarations are expected -- since it is what upstream is explicitly testing for.  

My solution is to simply filter the output from the compile to remove the line that contains the warning for the function that is being tested for (e.g. if the test is for foo and foo shows up as an implicit declaration, we can ignore it.  However if the test is for foo and bar shows up as an implicit declaration, then that should be flagged.

There is a new release for openafs (1.8.13.1) that contains support for linux 6.12.  I will include my fix when I submit a new ebuild.
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-12-16 19:48:09 UTC
(In reply to Cheyenne Wills from comment #7)

We can set QA_CONFIG_IMPL_DECL_SKIP (an array of functions to be ignored, or you can do a wildcard) in the ebuild with a comment explaining the situation.
Comment 9 Cheyenne Wills 2024-12-16 20:07:54 UTC
(In reply to Sam James from comment #8)
> (In reply to Cheyenne Wills from comment #7)
> 
> We can set QA_CONFIG_IMPL_DECL_SKIP (an array of functions to be ignored, or
> you can do a wildcard) in the ebuild with a comment explaining the situation.

Ah.. didn't know about using a wildcard.  

That might be the easier route.

Upstream does pay close attention to the output of configure, and within the overall build upstream uses -Wall -Werror for checking the builds.
Comment 10 Larry the Git Cow gentoo-dev 2025-01-06 07:24:33 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41d41b94b6a03626eecca6eddcca7eafa2b88fef

commit 41d41b94b6a03626eecca6eddcca7eafa2b88fef
Author:     Cheyenne Wills <cwills@witznd.net>
AuthorDate: 2025-01-06 01:42:42 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2025-01-06 07:23:18 +0000

    net-fs/openafs: add 1.8.13.1
    
    Update net-fs/openafs to 1.8.13.1 which has support for Linux 6.12
    Add package.mask for net-fs/openafs for musl.
    Add package.use.mask for afs for musl.
    Update ebuild to add QA_CONFIG_IMPL_DECL_SKIP.
    
    Signed-off-by: Cheyenne Wills <cwills@witznd.net>
    Closes: https://bugs.gentoo.org/947559
    Closes: https://bugs.gentoo.org/832428
    Closes: https://bugs.gentoo.org/943641
    Signed-off-by: Sam James <sam@gentoo.org>

 net-fs/openafs/Manifest                 |   2 +
 net-fs/openafs/openafs-1.8.13.1.ebuild  | 346 ++++++++++++++++++++++++++++++++
 profiles/features/musl/package.mask     |   6 +
 profiles/features/musl/package.use.mask |   7 +
 4 files changed, 361 insertions(+)