From: "Darrick J. Wong" <djwong@kernel.org>
To: Bernd Schubert <bernd@bsbernd.com>
Cc: bschubert@ddn.com, joannelkoong@gmail.com,
linux-fsdevel@vger.kernel.org, miklos@szeredi.hu, neal@gompa.dev
Subject: Re: [GIT PULL] libfuse: run fuse servers as a contained service
Date: Wed, 4 Mar 2026 13:08:22 -0800 [thread overview]
Message-ID: <20260304210822.GR13829@frogsfrogsfrogs> (raw)
In-Reply-To: <ee584989-d81d-4dea-b953-6acf44d76d13@bsbernd.com>
On Wed, Mar 04, 2026 at 08:29:35PM +0100, Bernd Schubert wrote:
>
>
> On 3/4/26 19:06, Darrick J. Wong wrote:
> > On Wed, Mar 04, 2026 at 09:06:52AM -0800, Darrick J. Wong wrote:
> >> On Wed, Mar 04, 2026 at 02:36:03PM +0100, Bernd Schubert wrote:
> >>>
> >>>
> >>> On 3/4/26 01:11, Darrick J. Wong wrote:
> >>>> Hi Bernd,
> >>>>
> >>>> Please pull this branch with changes for libfuse.
> >>>>
> >>>> As usual, I did a test-merge with the main upstream branch as of a few
> >>>> minutes ago, and didn't see any conflicts. Please let me know if you
> >>>> encounter any problems.
> >>>
> >>> Hi Darrick,
> >>>
> >>> quite some problems actually ;)
> >>>
> >>> https://github.com/libfuse/libfuse/pull/1444
> >>>
> >>> Basically everything fails. Build test with
> >>
> >> Doh :(
> >>
> >>> ../../../home/runner/work/libfuse/libfuse/lib/fuse_service.c:24:10:
> >>> fatal error: 'systemd/sd-daemon.h' file not found
> >>> 24 | #include <systemd/sd-daemon.h>
> >>>
> >>>
> >>> Two issues here:
> >>> a) meson is not testing for sd-daemon.h?
> >>
> >> Hrm. meson.build *should* have this clause to detect systemd:
> >>
> >> # Check for systemd support
> >> systemd_system_unit_dir = get_option('systemdsystemunitdir')
> >> if systemd_system_unit_dir == ''
> >> systemd = dependency('systemd', required: false)
> >> if systemd.found()
> >> systemd_system_unit_dir = systemd.get_variable(pkgconfig: 'systemd_system_unit_dir')
> >> endif
> >> endif
> >>
> >> if systemd_system_unit_dir == ''
> >> warning('could not determine systemdsystemunitdir, systemd stuff will not be installed')
> >> else
> >> private_cfg.set_quoted('SYSTEMD_SYSTEM_UNIT_DIR', systemd_system_unit_dir)
> >> private_cfg.set('HAVE_SYSTEMD', true)
> >> endif
> >>
> >> # Check for libc SCM_RIGHTS support (aka Linux)
> >> code = '''
> >> #include <sys/socket.h>
> >> int main(void) {
> >> int moo = SCM_RIGHTS;
> >> return moo;
> >> }'''
> >> if cc.links(code, name: 'libc SCM_RIGHTS support')
> >> private_cfg.set('HAVE_SCM_RIGHTS', true)
> >> endif
> >>
> >> if private_cfg.get('HAVE_SCM_RIGHTS', false) and private_cfg.get('HAVE_SYSTEMD', false)
> >> private_cfg.set('HAVE_SERVICEMOUNT', true)
> >> endif
> >>
> >>
> >> But apparently it built fuse_service.c anyway? I'll have to look deeper
> >> into what github ci did, since the pkgconfig fil... oh crikey.
> >>
> >> systemd-dev contains the systemd.pc file, so the systemd.get_variable
> >> call succeeds and returns a path, thereby enabling the build. However,
> >> the header files are in libsystemd-dev, and neither package depends on
> >> the other.
> >>
> >> So I clearly need to test for the presence of sd-daemon.h in that first
> >> clause that determines if HAVE_SYSTEMD gets set.
>
> Or link test for systemd
<nod> Hilariously we only need a single #define out of that header file:
SD_LISTEN_FDS_START
> >>
> >>> a.1) If not available needs to disable that service? Because I don't
> >>> think BSD has support for systemd.
> >>
> >> <nod>
> >>
> >>> b) .github/workflow/*.yml files need to be adjusted to add in the new
> >>> dependency.
> >>
> >> Oh, ok. The 'apt install' lines should probably add in systemd-dev.
> >>
> >>> Please also have a look at checkpatch (which is a plain linux copy) and
> >>> the spelling test failures.
> >>
> >> Ok, will do.
> >
> > ...and the immediate problem that I run into is that all the logs are
> > hidden behind a login wall so I cannot read them. :(
> >
> > (It leaked enough about the spelling errors that I can fix those, and
> > I can run checkpatch locally, but I don't know what else went wrong with
> > the bsd build or the abi check.)
> >
>
>
> BSD errors are actually a bit tricky, because it runs them in a VM, one has
> to look at "raw logs". I think ABI checks are failling as the normal build
> test because of the meson issue.
> BSD is this
>
> 2026-03-04T13:17:20.5979965Z [14/82] cc -Ilib/libfuse3.so.3.19.0.p -Ilib -I../lib -Iinclude -I../include -I. -I.. -fdiagnostics-color=always -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_REENTRANT -DHAVE_LIBFUSE_PRIVATE_CONFIG_H -Wno-sign-compare -D_FILE_OFFSET_BITS=64 -Wstrict-prototypes -Wmissing-declarations -Wwrite-strings -fno-strict-aliasing -fPIC -pthread -DFUSE_USE_VERSION=317 '-DFUSERMOUNT_DIR="/usr/local/bin"' -MD -MQ lib/libfuse3.so.3.19.0.p/fuse_service_stub.c.o -MF lib/libfuse3.so.3.19.0.p/fuse_service_stub.c.o.d -o lib/libfuse3.so.3.19.0.p/fuse_service_stub.c.o -c ../lib/fuse_service_stub.c
> 2026-03-04T13:17:20.6004021Z FAILED: [code=1] lib/libfuse3.so.3.19.0.p/fuse_service_stub.c.o
> 2026-03-04T13:17:20.6008119Z cc -Ilib/libfuse3.so.3.19.0.p -Ilib -I../lib -Iinclude -I../include -I. -I.. -fdiagnostics-color=always -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_REENTRANT -DHAVE_LIBFUSE_PRIVATE_CONFIG_H -Wno-sign-compare -D_FILE_OFFSET_BITS=64 -Wstrict-prototypes -Wmissing-declarations -Wwrite-strings -fno-strict-aliasing -fPIC -pthread -DFUSE_USE_VERSION=317 '-DFUSERMOUNT_DIR="/usr/local/bin"' -MD -MQ lib/libfuse3.so.3.19.0.p/fuse_service_stub.c.o -MF lib/libfuse3.so.3.19.0.p/fuse_service_stub.c.o.d -o lib/libfuse3.so.3.19.0.p/fuse_service_stub.c.o -c ../lib/fuse_service_stub.c
> 2026-03-04T13:17:20.6012011Z In file included from ../lib/fuse_service_stub.c:21:
> 2026-03-04T13:17:20.6013206Z ../include/fuse_service_priv.h:12:2: error: unknown type name '__be32'
> 2026-03-04T13:17:20.6013899Z 12 | __be32 pos;
> 2026-03-04T13:17:20.6014268Z | ^
> 2026-03-04T13:17:20.6014789Z ../include/fuse_service_priv.h:13:2: error: unknown type name '__be32'
> 2026-03-04T13:17:20.6015421Z 13 | __be32 len;
> 2026-03-04T13:17:20.6015779Z | ^
> 2026-03-04T13:17:20.6016510Z ../include/fuse_service_priv.h:17:2: error: unknown type name '__be32'
> 2026-03-04T13:17:20.6017130Z 17 | __be32 magic;
> 2026-03-04T13:17:20.6017506Z | ^
> 2026-03-04T13:17:20.6018004Z ../include/fuse_service_priv.h:18:2: error: unknown type name '__be32'
> 2026-03-04T13:17:20.6018615Z 18 | __be32 argc;
> 2026-03-04T13:17:20.6018988Z | ^
Hrmm, well at least on BSD I see that it's building the service stub,
which means that it didn't actually try to build any of the real systemd
service stuff at all. I think this is due to fuse_service_stub.c
including fuse_service_priv.h unnecessarily.
--D
>
>
> Cheers,
> Bernd
>
next prev parent reply other threads:[~2026-03-04 21:08 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-04 0:11 [GIT PULL] libfuse: run fuse servers as a contained service Darrick J. Wong
2026-03-04 13:36 ` Bernd Schubert
2026-03-04 17:06 ` Darrick J. Wong
2026-03-04 18:06 ` Darrick J. Wong
2026-03-04 19:29 ` Bernd Schubert
2026-03-04 21:08 ` Darrick J. Wong [this message]
2026-03-04 23:23 ` Darrick J. Wong
2026-03-09 2:27 ` Darrick J. Wong
2026-03-09 17:34 ` Bernd Schubert
2026-03-09 18:35 ` Darrick J. Wong
-- strict thread matches above, loose matches on Subject: below --
2026-04-09 22:24 Darrick J. Wong
2026-04-10 12:24 ` Bernd Schubert
2026-04-10 15:56 ` Darrick J. Wong
2026-04-10 18:30 ` Bernd Schubert
2026-04-10 22:12 ` Darrick J. Wong
2026-04-11 2:48 ` Darrick J. Wong
2026-04-14 22:00 ` Bernd Schubert
2026-04-15 0:01 ` Darrick J. Wong
2026-04-17 23:26 ` Darrick J. Wong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260304210822.GR13829@frogsfrogsfrogs \
--to=djwong@kernel.org \
--cc=bernd@bsbernd.com \
--cc=bschubert@ddn.com \
--cc=joannelkoong@gmail.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=miklos@szeredi.hu \
--cc=neal@gompa.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.