Re: Git clone failures on armv7, was Re: Git core dump checking out main on armv7 [independent armv7 replication, not on RPi2B]

Mark Millard <[email protected]>
Newsgroups gmane.os.freebsd.devel.arm
Message-ID <[email protected]>
I have replicated one of the failure types on a Orange Pi+ 2ed
armv7 (2 GiBytes of RAM). My odd variant of top observed:

354824Ki MaxObs(Act+Wir+Lndry)
354824Ki MaxObs(Act+Wir+Lndry+SwapUsed)

It failed on the first try (after modernizing
the FreeBSD and package installations involved,
given the old/unknown status of things before
the update):

# git clone --depth=1 -o freebsd ssh://[email protected]/src.git /tmp/DOES-NOT_EXIST
Cloning into '/tmp/DOES-NOT_EXIST'...
remote: Enumerating objects: 104642, done.
remote: Counting objects: 100% (104642/104642), done.
remote: Compressing objects: 100% (88919/88919), done.
remote: Total 104642 (delta 22161), reused 43509 (delta 11808), pack-reused 0 (from 0)
Receiving objects: 100% (104642/104642), 344.48 MiB | 1.08 MiB/s, done.
fatal: pack is corrupted (SHA1 mismatch)
fatal: fetch-pack: invalid index-pack output

Context:

# swapinfo
Device          1K-blocks     Used    Avail Capacity
/dev/gpt/BPIM3swp2   3773440        0  3773440     0%

# uname -apKU
FreeBSD OPiP2E-RPi2v1p1 15.0-CURRENT FreeBSD 15.0-CURRENT main-n270963-609cdb12b962 GENERIC arm armv7 1500019 1500019

That is from package base installation.

[How does one well identify a specific pkgbase set's
synchronization point for identifying what is observed
to have a problem?]


# ifconfig
awg0: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
        options=8000b<RXCSUM,TXCSUM,VLAN_MTU,LINKSTATE>
        ether 02:81:57:76:75:e7
        inet . . . netmask 0xffffff00 broadcast 192.168.1.255
        media: Ethernet autoselect (1000baseT <full-duplex>)
        status: active
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
 . .


Note: armv7 Package building by ampere2 has been broken for
       some time so there are not recent updates to the
       official packages: The builds noted date back to late
       April.

# pkg info pkg
pkg-1.21.2
Name           : pkg
Version        : 1.21.2
Installed on   : Thu Jun 27 08:07:53 2024 PDT
Origin         : ports-mgmt/pkg
Architecture   : FreeBSD:15:armv7
Prefix         : /usr/local
Categories     : ports-mgmt
Licenses       : BSD2CLAUSE
Maintainer     : [email protected]
WWW            : https://github.com/freebsd/pkg
Comment        : Package manager
Options        :
DOCS           : on
Shared Libs provided:
libpkg.so.4
Annotations    :
FreeBSD_version: 1500018
build_timestamp: 2024-04-26T09:30:15+0000
built_by       : poudriere-git-3.4.1-30-g79e3edcd
port_checkout_unclean: no
port_git_hash  : 3d57467ec90
ports_top_checkout_unclean: no
ports_top_git_hash: 1c7a816cd0a
repo_type      : binary
repository     : FreeBSD
Flat size      : 40.7MiB
Description    :
Package management tool

# pkg info git
git-2.44.0
Name           : git
Version        : 2.44.0
Installed on   : Thu Jun 27 08:18:30 2024 PDT
Origin         : devel/git
Architecture   : FreeBSD:15:armv7
Prefix         : /usr/local
Categories     : devel
Licenses       : GPLv2
Maintainer     : [email protected]
WWW            : https://git-scm.com/
Comment        : Distributed source code management tool  Options        :
CONTRIB        : on
CURL           : on
GITWEB         : on
HTMLDOCS       : off
ICONV          : on
NLS            : on
PCRE2          : on
PERL           : on
SEND_EMAIL     : on
SUBTREE        : on
Shared Libs required:
libpcre2-8.so.0
libintl.so.8
libexpat.so.1
libcurl.so.4
Annotations    :
FreeBSD_version: 1500018
build_timestamp: 2024-04-30T03:01:54+0000
built_by       : poudriere-git-3.4.1-30-g79e3edcd
cpe            : cpe:2.3:a:git-scm:git:2.44.0:::::freebsd15:armv7
flavor         : default
port_checkout_unclean: no
port_git_hash  : a99af2ec54e
ports_top_checkout_unclean: no
ports_top_git_hash: 5a022ef6a46
repo_type      : binary
repository     : FreeBSD
Flat size      : 33.6MiB
Description    :
Git is a free and open source distributed version control system designed to
handle everything from small to very large projects with speed and efficiency.


[How does one well identify a specific pkg set's synchronization point for
identifying what is observed to have a problem?]




While it is not a great context for well-made comparisons, I used an older
personal kernel build (main-n268827-75464941dc17-dirty which has 1500015)
to boot and tried the experiment. This is a non-debug kernel, unlike the
above. This also did not have swap enabled.

# git clone --depth=1 -o freebsd ssh://[email protected]/src.git /tmp/DOES-NOT-EXIST
Cloning into '/tmp/DOES-NOT-EXIST'...
remote: Enumerating objects: 104642, done.
remote: Counting objects: 100% (104642/104642), done.
remote: Compressing objects: 100% (88919/88919), done.
remote: Total 104642 (delta 22161), reused 43522 (delta 11808), pack-reused 0 (from 0)
Receiving objects: 100% (104642/104642), 344.49 MiB | 1.12 MiB/s, done.
Resolving deltas: 100% (22161/22161), done.
fatal: missing blob object '837133bfd4602deb2cca4a4b4d81f4b75f47aa2a'
fatal: remote did not send all necessary objects

So it also replicated another example type of failure, not that such tells
us much.



===
Mark Millard
marklmi at yahoo.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.