{"thread":{"id":"58870","subject":"Git port to Debian SH4 may have trouble","startedAt":"2022-11-29T17:04:15Z","lastAt":"2022-11-29T22:33:50Z","messageCount":5,"participants":["Jeffrey Walton","Jeff King"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"468195","messageId":"CAH8yC8niurChnXPrZSeBa7g1z5AF3PqYdf1X0Rm03rDanec6Gw@mail.gmail.com","threadId":"58870","inReplyTo":null,"subject":"Git port to Debian SH4 may have trouble","fromName":"Jeffrey Walton","fromEmail":"noloader@gmail.com","sentAt":"2022-11-29T17:01:01Z","receivedAt":"2022-11-29T17:04:15Z","isPatch":false,"sender":{"key":"noloader@gmail.com","avatar":null},"body":"Hi Everyone,\n\nThis is a crummy bug report... I am  testing on Debian Unstable within\na SH4 Chroot. I'm seeing a hang during a git pull. Eventually I have\nto CTRL+C, which results in \"fatal: fetch-pack: invalid index-pack\noutput.\"\n\n(sh4) debian-chroot:~# git clone -vv https://github.com/weidai11/cryptopp\nCloning into 'cryptopp'...\nPOST git-upload-pack (175 bytes)\nwant e9cbc4698a6b3ed067910862ad1355069f348d2b (HEAD)\nwant e9cbc4698a6b3ed067910862ad1355069f348d2b (refs/heads/master)\n...\nwant 511806c0eba8ba5b5cedd4b4a814e96df92864a6 (refs/tags/CRYPTOPP_8_7_0)\nPOST git-upload-pack (gzip 1602 to 825 bytes)\nremote: Enumerating objects: 28448, done.\nremote: Counting objects: 100% (68/68), done.\nremote: Compressing objects: 100% (50/50), done.\nremote: Total 28448 (delta 29), reused 49 (delta 18), pack-reused 28380\nReceiving objects: 100% (28448/28448), 27.01 MiB | 4.30 MiB/s, done.\nResolving deltas:   0% (0/20757)\n^Cfatal: fetch-pack: invalid index-pack output\n(sh4) debian-chroot:~#\n\n(sh4) debian-chroot:~# git --version\ngit version 2.38.1\n\nJeff\n"},{"id":"468203","messageId":"Y4ZXRx4mf0UMk4H6@coredump.intra.peff.net","threadId":"58870","inReplyTo":"CAH8yC8niurChnXPrZSeBa7g1z5AF3PqYdf1X0Rm03rDanec6Gw@mail.gmail.com","subject":"Re: Git port to Debian SH4 may have trouble","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2022-11-29T19:02:31Z","receivedAt":"2022-11-29T19:02:49Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Tue, Nov 29, 2022 at 12:01:01PM -0500, Jeffrey Walton wrote:\n\n> This is a crummy bug report... I am  testing on Debian Unstable within\n> a SH4 Chroot. I'm seeing a hang during a git pull. Eventually I have\n> to CTRL+C, which results in \"fatal: fetch-pack: invalid index-pack\n> output.\"\n\nThe message is probably a red herring. Once you terminate index-pack,\nthe fetch-pack process reading from it will see EOF before reading the\nexpected \"pack ...\" line, and generate that message.\n\nSo the hang is probably the only interesting part.\n\n> (sh4) debian-chroot:~# git clone -vv https://github.com/weidai11/cryptopp\n> Cloning into 'cryptopp'...\n> POST git-upload-pack (175 bytes)\n> want e9cbc4698a6b3ed067910862ad1355069f348d2b (HEAD)\n> want e9cbc4698a6b3ed067910862ad1355069f348d2b (refs/heads/master)\n> ...\n> want 511806c0eba8ba5b5cedd4b4a814e96df92864a6 (refs/tags/CRYPTOPP_8_7_0)\n> POST git-upload-pack (gzip 1602 to 825 bytes)\n> remote: Enumerating objects: 28448, done.\n> remote: Counting objects: 100% (68/68), done.\n> remote: Compressing objects: 100% (50/50), done.\n> remote: Total 28448 (delta 29), reused 49 (delta 18), pack-reused 28380\n> Receiving objects: 100% (28448/28448), 27.01 MiB | 4.30 MiB/s, done.\n> Resolving deltas:   0% (0/20757)\n> ^Cfatal: fetch-pack: invalid index-pack output\n\nIf we're in the \"resolving deltas\" section, then that means we're\nprobably not hanging on receiving input from the remote side. At this\npoint we should have gotten all of the data and would be CPU-bound\nreassembling deltas and computing their hashes.\n\nJust a hunch, but does:\n\n  git config --global pack.threads 1\n\nhelp? The delta resolution is multi-threaded, but nothing else in the\nclone should be.\n\n-Peff\n"},{"id":"468209","messageId":"CAH8yC8=zv30qNKVGZcT02hfTWgn4x1RCEUioB=jG9yq9X_Qp=g@mail.gmail.com","threadId":"58870","inReplyTo":"Y4ZXRx4mf0UMk4H6@coredump.intra.peff.net","subject":"Re: Git port to Debian SH4 may have trouble","fromName":"Jeffrey Walton","fromEmail":"noloader@gmail.com","sentAt":"2022-11-29T21:49:30Z","receivedAt":"2022-11-29T21:49:47Z","isPatch":false,"sender":{"key":"noloader@gmail.com","avatar":null},"body":"On Tue, Nov 29, 2022 at 2:02 PM Jeff King <peff@peff.net> wrote:\n>\n> On Tue, Nov 29, 2022 at 12:01:01PM -0500, Jeffrey Walton wrote:\n>\n> > This is a crummy bug report... I am  testing on Debian Unstable within\n> > a SH4 Chroot. I'm seeing a hang during a git pull. Eventually I have\n> > to CTRL+C, which results in \"fatal: fetch-pack: invalid index-pack\n> > output.\"\n>\n> The message is probably a red herring. Once you terminate index-pack,\n> the fetch-pack process reading from it will see EOF before reading the\n> expected \"pack ...\" line, and generate that message.\n>\n> So the hang is probably the only interesting part.\n>\n> > (sh4) debian-chroot:~# git clone -vv https://github.com/weidai11/cryptopp\n> > Cloning into 'cryptopp'...\n> > POST git-upload-pack (175 bytes)\n> > want e9cbc4698a6b3ed067910862ad1355069f348d2b (HEAD)\n> > want e9cbc4698a6b3ed067910862ad1355069f348d2b (refs/heads/master)\n> > ...\n> > want 511806c0eba8ba5b5cedd4b4a814e96df92864a6 (refs/tags/CRYPTOPP_8_7_0)\n> > POST git-upload-pack (gzip 1602 to 825 bytes)\n> > remote: Enumerating objects: 28448, done.\n> > remote: Counting objects: 100% (68/68), done.\n> > remote: Compressing objects: 100% (50/50), done.\n> > remote: Total 28448 (delta 29), reused 49 (delta 18), pack-reused 28380\n> > Receiving objects: 100% (28448/28448), 27.01 MiB | 4.30 MiB/s, done.\n> > Resolving deltas:   0% (0/20757)\n> > ^Cfatal: fetch-pack: invalid index-pack output\n>\n> If we're in the \"resolving deltas\" section, then that means we're\n> probably not hanging on receiving input from the remote side. At this\n> point we should have gotten all of the data and would be CPU-bound\n> reassembling deltas and computing their hashes.\n>\n> Just a hunch, but does:\n>\n>   git config --global pack.threads 1\n>\n> help? The delta resolution is multi-threaded, but nothing else in the\n> clone should be.\n\nYes, `git config --global pack.threads 1` allowed things to continue.\nThe check-out was successful.\n\nJeff\n"},{"id":"468210","messageId":"Y4aEPpQsS8QxBYly@coredump.intra.peff.net","threadId":"58870","inReplyTo":"CAH8yC8=zv30qNKVGZcT02hfTWgn4x1RCEUioB=jG9yq9X_Qp=g@mail.gmail.com","subject":"Re: Git port to Debian SH4 may have trouble","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2022-11-29T22:14:22Z","receivedAt":"2022-11-29T22:14:28Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Tue, Nov 29, 2022 at 04:49:30PM -0500, Jeffrey Walton wrote:\n\n> > Just a hunch, but does:\n> >\n> >   git config --global pack.threads 1\n> >\n> > help? The delta resolution is multi-threaded, but nothing else in the\n> > clone should be.\n> \n> Yes, `git config --global pack.threads 1` allowed things to continue.\n> The check-out was successful.\n\nOK, that narrows it down. The question then is why threads don't work.\nIs there something broken with threading or luck primitives on that\nplatform? Or are we doing something sketchy with concurrency that\nhappens to work on Intel but not elsewhere, and we end up in some kind\nof deadlock?\n\nI suspect if we want to know more, you'd need to use gdb to grab a\nbacktrace for each of the threads during the hang to see what they're\ntrying to do.\n\n-Peff\n"},{"id":"468212","messageId":"CAH8yC8kpkcr3mk_XU-vz8QPX45O6K+bbfB8t_mRU37_R7=gDFQ@mail.gmail.com","threadId":"58870","inReplyTo":"Y4aEPpQsS8QxBYly@coredump.intra.peff.net","subject":"Re: Git port to Debian SH4 may have trouble","fromName":"Jeffrey Walton","fromEmail":"noloader@gmail.com","sentAt":"2022-11-29T22:33:34Z","receivedAt":"2022-11-29T22:33:50Z","isPatch":false,"sender":{"key":"noloader@gmail.com","avatar":null},"body":"On Tue, Nov 29, 2022 at 5:14 PM Jeff King <peff@peff.net> wrote:\n>\n> On Tue, Nov 29, 2022 at 04:49:30PM -0500, Jeffrey Walton wrote:\n>\n> > > Just a hunch, but does:\n> > >\n> > >   git config --global pack.threads 1\n> > >\n> > > help? The delta resolution is multi-threaded, but nothing else in the\n> > > clone should be.\n> >\n> > Yes, `git config --global pack.threads 1` allowed things to continue.\n> > The check-out was successful.\n>\n> OK, that narrows it down. The question then is why threads don't work.\n> Is there something broken with threading or luck primitives on that\n> platform? Or are we doing something sketchy with concurrency that\n> happens to work on Intel but not elsewhere, and we end up in some kind\n> of deadlock?\n\nProbably something broken with the port. Or that's what I would put my money on.\n\n> I suspect if we want to know more, you'd need to use gdb to grab a\n> backtrace for each of the threads during the hang to see what they're\n> trying to do.\n\nYeah, so GDB won't install at the moment. I tried earlier today. It\nhas some unsatisfied dependencies. Failure to build from source\n(FTBFS), iirc.\n\nJeff\n"}]}