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
~~~