BeeGFS Support Stammtisch

17 views
Skip to first unread message

Philipp Falk

unread,
Jun 15, 2021, 8:19:57 AM6/15/21
to BeeGFS User Group
Hello Everyone,

just a quick reminder that we have our BeeGFS Support Stammtisch scheduled
for 17:00 CEST today, Tuesday June 15.

The Stammtisch is held bi-weekly to provide an opportunity for our
community users to connect to the BeeGFS support team, provide answers to
questions regarding your BeeGFS deployments and to discuss your specific
BeeGFS configurations in some depth.

No registration is required to attend and we will meet in this Zoom
meeting:

https://zoom.us/j/92833619043

See you later!

Cheers
- Philipp

--
Philipp Falk | System Engineer | m: philip...@thinkparq.com
ThinkParQ GmbH | Trippstadter Strasse 110 | 67663 Kaiserslautern | Germany
CEO: Frank Herold | COB: Dr. Franz-Josef Pfreundt | Registered: Amtsgericht Kaiserslautern HRB 31565 I VAT-ID-No.:DE 292001792

Steffen Grunewald

unread,
Jun 16, 2021, 3:38:41 AM6/16/21
to fhgfs...@googlegroups.com
On Tue, 2021-06-15 at 14:19:53 +0200, Philipp Falk wrote:
> Hello Everyone,
>
> just a quick reminder that we have our BeeGFS Support Stammtisch scheduled
> for 17:00 CEST today, Tuesday June 15.

This was my first Stammtisch attendance but certainly not the last ;-)
thanks for the valuable information that was shared.

Since I reported build errors on arm64 platforms (Debian Stretch and Buster),
here's the relevant part of the build log:

make -j32 -C upgrade/beegfs_mirror_md/build all
make[2]: Entering directory '/build/pkgs/build/upgrade/beegfs_mirror_md/build'
[CXX] ../source/beegfs-mirror-md.cpp.o
In file included from /build/pkgs/build/upgrade/beegfs_mirror_md/source/beegfs-mirror-md.cpp:1:0:
/build/pkgs/build/common/source/common/threading/Atomics.h: In instantiation of 'TemplateType Atomic<TemplateType>::read() const [with TemplateType = bool]':
/build/pkgs/build/upgrade/beegfs_mirror_md/source/beegfs-mirror-md.cpp:627:27: required from here
/build/pkgs/build/common/source/common/threading/Atomics.h:164:37: error: operand type 'bool*' is incompatible with argument 1 of '__sync_fetch_and_add'
return __sync_fetch_and_add((TemplateType*) &this->atomicValue, 0);
~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/pkgs/build/common/source/common/threading/Atomics.h: In instantiation of 'void Atomic<TemplateType>::set(TemplateType) [with TemplateType = bool]':
/build/pkgs/build/common/source/common/threading/Atomics.h:50:13: required from 'Atomic<TemplateType>::Atomic(TemplateType) [with TemplateType = bool]'
/build/pkgs/build/upgrade/beegfs_mirror_md/source/beegfs-mirror-md.cpp:600:30: required from here
/build/pkgs/build/common/source/common/threading/Atomics.h:72:34: warning: value computed is not used [-Wunused-value]
__sync_lock_test_and_set(&this->atomicValue, value); // gcc extension
~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../build/Makefile:267: recipe for target '../source/beegfs-mirror-md.cpp.o' failed
make[2]: *** [../source/beegfs-mirror-md.cpp.o] Error 1
make[2]: Leaving directory '/build/pkgs/build/upgrade/beegfs_mirror_md/build'
debian/rules:19: recipe for target 'override_dh_auto_build' failed

Replacing the two occurrences of "Atomic<bool>" with "Atomic<uint64_t>" in the
cpp file, I eventually succeeded:

--- a/upgrade/beegfs_mirror_md/source/beegfs-mirror-md.cpp 2020-08-18 11:08:10.000000000 +0200
+++ b/upgrade/beegfs_mirror_md/source/beegfs-mirror-md.cpp 2021-06-15 18:05:05.837120982 +0200
@@ -597,7 +597,7 @@
Atomic<uint64_t> dirsFound(migratingFullSystem ? 0 : 1);

{
- Atomic<bool> done(false);
+ Atomic<uint64_t> done(false);
bool listGood = true;

FD candidate(open(dir.getName().c_str(), O_DIRECTORY | O_RDONLY));
@@ -610,7 +610,7 @@
struct ops
{
static void threadMain(bool& listGood, int candidate, Directory& dir,
- Atomic<uint64_t>& dirsFound, bool recursive, Atomic<bool>& done)
+ Atomic<uint64_t>& dirsFound, bool recursive, Atomic<uint64_t>& done)
{
listGood = createDirTree(FD(dup(candidate)), dir, dirsFound, recursive ? -1 : 1);
done = true;

Basically some "special" typing issue with arm64, showing up for both GCC versions used
(6.3.0 for Stretch, 8.3.0 for Buster) on arm64, but not amd64 nor i386 (I don't have
access to any other hardware ATM).

It already worked for 7.2 (August 2020) but apparently got forgotten since...
I would have expected this simple fix to have been merged with the code base - if it was
known at all, that is.

This "loss of knowledge" leaves the question open: What is the canonical way to report
such and other issues, so that findings and resolutions can be shared with the community
more easily, and don't get lost?
Reporting to this list often doesn't produce any response at all. Is there a publicly
accessible issue tracker?

BTW, a Bullseye build attempt fails in the common section when trying to create
source/common/toolkit/NodesTK.cpp.o, with references to error_or and EntryInfo -
I'd like to submit this separately though.


Thank you,
Steffen


--
Steffen Grunewald, Cluster Administrator
Max Planck Institute for Gravitational Physics (Albert Einstein Institute)
Am Mühlenberg 1 * D-14476 Potsdam-Golm * Germany
~~~
Fon: +49-331-567 7274
Mail: steffen.grunewald(at)aei.mpg.de
~~~
Reply all
Reply to author
Forward
0 new messages