Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-18416

RaceCondition, sometimes the network icon in systray does not appear in late 0.4.9-dev and releases/0.4.9

    XMLWordPrintable

Details

    Description

      I knew this problem since initial 0.4.9 release, but it took me many years to properly bisect it, due to its sporadic nature: it sometimes happens and sometimes does not happen with the very same iso. Therefore I want to share my findings in JIRA for tracking.

      Symptom
      Sometimes in 3rd stage bootup the network icon does not appear in the system tray, but the network is working properly, e.g. you can ping google.com successfully

      Regression test
      reactos-bootcd-0.4.10-dev-418-gff63ef3-x86-gcc-lin-dbg.iso ok, GOTICON: 1x
      reactos-bootcd-0.4.10-dev-307-g82351bc-x86-gcc-lin-dbg.iso ok, GOTICON: 10x
      reactos-bootcd-0.4.10-dev-280-gfafcd50-x86-gcc-lin-dbg.iso ok, GOTICON: 11x
      reactos-bootcd-0.4.10-dev-279-g75dc031-x86-gcc-lin-dbg.iso ok, GOTICON: 10x <- FIX
      reactos-bootcd-0.4.10-dev-278-g1345cb7-x86-gcc-lin-dbg.iso affected, GOTICON: 1x, no icon on 1st try
      reactos-bootcd-0.4.10-dev-265-g5b2dda9-x86-gcc-lin-dbg.iso affected, GOTICON: 5x, no icon on 6th try
      reactos-bootcd-0.4.10-dev-261-g6238495-x86-gcc-lin-dbg.iso affected, no icon on 10th try, GOTICON: 9x
      reactos-bootcd-0.4.10-dev-260-gd4b4da5-x86-gcc-lin-dbg.iso affected, no icon on 1st try
      reactos-bootcd-0.4.10-dev-259-g3189ec9-x86-gcc-lin-dbg.iso affected, no icon on 2nd try, GOTICON: 1x
      reactos-bootcd-0.4.10-dev-253-g1b1e1baa-x86-gcc-lin-dbg.iso affected, no icon on 1st try
      reactos-bootcd-0.4.10-dev-202-g698cbc6-x86-gcc-lin-dbg.iso affected, no icon on 1st try
      reactos-bootcd-0.4.10-dev-100-ge0f5ded-x86-gcc-lin-dbg.iso affected, no icon on 1st try
      reactos-bootcd-0.4.10-dev-16-g8c5cf73-x86-gcc-lin-dbg.iso affected, no icon on 1st try
      reactos-bootcd-0.4.9-dev-784-g2a7d167-x86-gcc-lin-dbg.iso affected, no icon on 1st try
      reactos-bootcd-0.4.9-dev-762-g94ead99-x86-gcc-lin-dbg.iso affected, no icon on 1st try <- THE UNHIDER
      reactos-bootcd-0.4.9-dev-761-g2ea6de8-x86-gcc-lin-dbg.iso ok, GOTICON: 10x
      reactos-bootcd-0.4.9-dev-750-ga55d7c6-x86-gcc-lin-dbg.iso ok, GOTICON: 10x
      reactos-bootcd-0.4.9-dev-719-gb3fb855-x86-gcc-lin-dbg.iso ok, GOTICON: 10x
      reactos-bootcd-0.4.9-dev-632-gda6a46c-x86-gcc-lin-dbg.iso ok, GOTICON: 10x

      english+german, both are affected
      GCC4.7.2win + GCC4.7.2lin, both are affected

      I never could make that problem happen ever again in any build after 0.4.10-dev-279-g75dc031. It may be therefore that this commit is really the proper fix, but it can't be ported back entirely without picking a lot of additional stuff from 0.4.10dev and 0.4.11dev. Which I do not intend.

      Interestingly the problem did not show up until the most likely innocent unhider
      0.4.9-dev-762-g94ead99. That commit is known very well for dramatically changing the timing in ros, and therefore most likely unhides the race-condition, which actually was introduced much earlier.

      I compared also good and bad path logs of the very same isos, we can not spot any additional error-log in the case, when it misbehaves. Still for completeness:
      0.4.10-dev-278-g1345cb7_BadPath.png
      0.4.10-dev-278-g1345cb7_BadPath.log
      0.4.10-dev-278-g1345cb7_GoodPath.log

      For the record, I can never trigger this in
      0.4.10-release-145-gb5cfb62
      0.4.8-release-160-gd83fc71
      0.4.7-release-179-gc935822
      on my system.
      I am still very much convinced that it was introduced by SVN r73486 (2016-12-27). I guess the copy-hack races against some network-service wanting to access its data.

      Attachments

        Issue Links

          Activity

            People

              reactosfanboy reactosfanboy
              reactosfanboy reactosfanboy
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: