Chimera text-spinner suddenly hangs (at about '|' or '/') with presence of internal time machine dri

Discussion in 'Chimera Bug Reports' started by timcharper, May 3, 2013.

  1. timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    May 3, 2013 at 3:22 PM #1
    timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    This problem suddenly started happening, and I'm not sure why. The computer goes completely unresponsive. I did not upgrade Mac OS X nor modify any other configuration between several successful boots and then now.

    If I take the time-machine drive out, the computer boots just fine.

    I've taken the time-machine drive out, hooked it up to my laptop via USB, have verified the disk, checked partition tables, etc. It reads fine, no signs of drive failure.

    If I boot with both drives in, even with a USB stick, then the same failure occurs.

    My hunch is there is a bug in Chimera in which the software encounters some unexpected state, doesn't know how to handle it, and freezes.

    I'm happy to provide any logs or try any custom Chimera builds to help diagnose the problem, I just don't know where to start.

    In a few days, I'm going to try re-partitioning the drive to see if it changes things, but hopefully I can use the reproducible state to help diagnose a Chimera issue.

    Thanks!
     
  2. MacMan

    MacMan Administrator Staff Member

    Joined:
    Feb 2, 2010
    Messages:
    7,903
    Mac:
    MacBook Pro, Mac Pro
    Classic Mac:
    Power Mac, PowerBook
    Mobile Phone:
    iOS
    May 3, 2013 at 3:48 PM #2
    MacMan

    MacMan Administrator Staff Member

    Joined:
    Feb 2, 2010
    Messages:
    7,903
    Mac:
    MacBook Pro, Mac Pro
    Classic Mac:
    Power Mac, PowerBook
    Mobile Phone:
    iOS
    Closed, can't reproduce on desktop hacks.
     
  3. timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    May 4, 2013 at 11:26 PM #3
    timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    MacMan, I get that you're busy. You frequently get confused / mistaken bug reports. And who knows, maybe this is one of them. But, you wouldn't be able to reproduce it, because without the presence of my otherwise perfectly readable time machine drive (when hooked up to other machines via external dock), Chimera boots just fine.

    When the drive is present, it fails on the text spinner... I believe the one powered by the below code:

    Code (Text):

    /Users/timcharper/src/projects/cham/Release/i386/boot2/graphics.c

        1167 | //==========================================================================
        1168 | // Display and clear the activity indicator.
        1169 |
        1170 | static char indicator[] = {'-', '\\', '|', '/', '-', '\\', '|', '/', '\0'};
        1171 |
        1172 | // To prevent a ridiculously fast-spinning indicator,
        1173 | // ensure a minimum of 1/9 sec between animation frames.
        1174 | #define MIN_TICKS 2
        1175 |
        1176 | void
        1177 | spinActivityIndicator(int sectors)
        1178 | {
        1179 |     static unsigned long lastTickTime = 0, currentTickTime;
        1180 |    
        1181 |  if (previewTotalSectors && previewSaveunder)
     
    My hunch is that it is the code that scans for available drives and populates the boot menu which is freezing up. It sees my TimeMachine drive, and something about it just causes it to freak out and crash.

    I can `dd` my TimeMachine header if that would help... not sure if it has an MBR record written or not.

    Whether I boot from a USB Hackintosh Mountain Lion installer, or my primary drive (which works when the TimeMachine drive is not connected), it still freezes. I've had the TimeMachine drive connected internally via SATA and backing up for over a year. This problem suddenly cropped up. Something about the state of the drive is causing Chimera to crash. I've upgraded to the latest Chimera release, and it still crashes when the drive is connected.

    I have another identically 2TB drive, same brand and model, also used for TimeMachine, but for a different computer. If I connect THAT one internally (in place of the offending TimeMachine drive), the bootloader DOES NOT crash. In my mind, this narrows the issue down to some sequence of bytes contained on the offending drive that is causing Chimera to crash, and not a failing SATA cable, controller, etc. The offending TimeMachine drive reads perfectly well, scans perfectly well, does not show any sign of disk failure.

    Even still, should disk failure be able to cause the bootloader to freeze?

    I am tempted to wipe the drive clean, reformat, and repartition it. I'm confident that by so doing I will be back in working order. But I will also miss an opportunity to help locate and fix a bug.

    If you really don't care, then I'll just do that. It's fine with me, I'd just like to contribute to the project.

    Speaking of which... what is the magic invocation to build Chimera? If I run `make`, I get the following:

    Code (Text):

        timcharper@timcharper:~/src/projects/cham/Release $ make
          [MKDIR] /Users/timcharper/src/projects/cham/Release/sym
          [MKDIR] /Users/timcharper/src/projects/cham/Release/obj
          [MAKE] config
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
        ================= make config for i386 =================
        /bin/sh: line 0: cd: i386: No such file or directory
     
    (I'd like to build Chimera and add some additionally debug statements to see whereabouts the code is halting.)

    I've recorded a video showing the problem, and showing how it crashes with the presence of the TimeMachine drive, without the drive... it's like 2GB and is uploading to Youtube. I'll post it when it finishes.
     
  4. timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    May 4, 2013 at 11:34 PM #4
    timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    By the way... the activity indicator code reminds me of the good-old-days... hooking into interrupt 08h to run stuff in the background... high quality stuff :) I used to mess around with this when I wrote a mod player and other fun pranks that would show messages on dos terminals at random intervals.

    [I see now that spinActivityIndicator method is being called with every loop iteration in disk.c... and it's reading the tick interval from BIOS, not hooking into 08h... anyways, just the whole 1/18th second thing reminded me... this is all totally unrelated to the issue at hand, of course]
     
  5. timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    May 5, 2013 at 1:41 AM #5
    timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
  6. codymac

    codymac

    Joined:
    Jul 19, 2010
    Messages:
    4
    Mobo:
    2700
    CPU:
    i7 2700K
    Graphics:
    9800 GT
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    May 8, 2013 at 7:02 AM #6
    codymac

    codymac

    Joined:
    Jul 19, 2010
    Messages:
    4
    Mobo:
    2700
    CPU:
    i7 2700K
    Graphics:
    9800 GT
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    That has fixed the issue on two of my machines, both running 10.6.8, on completely different hardware (X58 & Z68, see sig). In both cases, I've reformatted and repartitioned the drive to correct it.

    It has just happened again on the machine I'm typing this on (which has led me here). I've just cloned a 10.6.8 install to an SSD and run Multibeast against the SSD in this machine (Z68).

    eta: A temporary fix is to add the key/string Scan Single Drive=Yes to the boot.plist.
     
  7. timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    May 13, 2013 at 4:50 AM #7
    timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    Codymac, thanks for the tip, I'll give that a try. All of my operating systems boot from the same drive.

    I dd'd the first 8k of my disk and piped it through hexdump, via

    Code (Text):

        sudo su -
        diskutil list
        # find disk number
        dd if=/dev/disk3 count=16 | hexdump
     
    Here's the output. Not sure if it's somewhere around here that is causing chimera to freeze. I'm going to reformat the drive and start backing up all over.

    Code (Text):

        0000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        *
        00001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fe
        00001c0 ff ff ee fe ff ff 01 00 00 00 af 88 e0 e8 00 00
        00001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        *
        00001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 aa
        0000200 45 46 49 20 50 41 52 54 00 00 01 00 5c 00 00 00
        0000210 af ac 44 d3 00 00 00 00 01 00 00 00 00 00 00 00
        0000220 af 88 e0 e8 00 00 00 00 22 00 00 00 00 00 00 00
        0000230 8e 88 e0 e8 00 00 00 00 08 07 99 09 d9 e0 99 46
        0000240 8f 53 83 70 72 f4 5a 9b 02 00 00 00 00 00 00 00
        0000250 80 00 00 00 80 00 00 00 54 60 ae cf 00 00 00 00
        0000260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        *
        0000400 28 73 2a c1 1f f8 d2 11 ba 4b 00 a0 c9 3e c9 3b
        0000410 8e 45 fc b8 95 9d 67 47 af 19 28 46 72 d8 21 7e
        0000420 28 00 00 00 00 00 00 00 27 40 06 00 00 00 00 00
        0000430 00 00 00 00 00 00 00 00 45 00 46 00 49 00 20 00
        0000440 53 00 79 00 73 00 74 00 65 00 6d 00 20 00 50 00
        0000450 61 00 72 00 74 00 69 00 74 00 69 00 6f 00 6e 00
        0000460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        *
        0000480 00 53 46 48 00 00 aa 11 aa 11 00 30 65 43 ec ac
        0000490 68 91 be a1 7b ad c9 46 b6 b1 fa 81 13 d5 0a c5
        00004a0 28 40 06 00 00 00 00 00 87 88 dc e8 00 00 00 00
        00004b0 00 00 00 00 00 00 00 00 4d 00 65 00 64 00 69 00
        00004c0 61 00 43 00 65 00 6e 00 74 00 65 00 72 00 20 00
        00004d0 54 00 69 00 6d 00 65 00 4d 00 61 00 63 00 68 00
        00004e0 69 00 6e 00 65 00 00 00 00 00 00 00 00 00 00 00
        00004f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        *
        0002000
     
    If others run in to this problem, try doing the same... and post it here, maybe it will be helpful data.

    I'd try and recompile Chimera with extra debug output to narrow this down, but can't build it for the life of me. Make fails with the output (as follows).


    Code (Text):

    timcharper@timcharper:~/src/projects/cham/Release $ make
        [MAKE] config
    ================= make config for i386 =================
    /bin/sh: line 0: cd: i386: No such file or directory
    ================= make config for i386 =================
    /bin/sh: line 0: cd: i386: No such file or directory
    ================= make config for i386 =================
    /bin/sh: line 0: cd: i386: No such file or directory
    ================= make config for i386 =================
    /bin/sh: line 0: cd: i386: No such file or directory
    ================= make config for i386 =================
    /bin/sh: line 0: cd: i386: No such file or directory
    ================= make config for i386 =================
    /bin/sh: line 0: cd: i386: No such file or directory
    ================= make config for i386 =================
    /bin/sh: line 0: cd: i386: No such file or directory
    ================= make config for i386 =================
    ... snip 500+ lines...
    make[9]: *** [rebuild_config] Error 2
    make[8]: *** [rebuild_config] Error 2
    make[7]: *** [rebuild_config] Error 2
    make[6]: *** [rebuild_config] Error 2
    make[5]: *** [rebuild_config] Error 2
    make[4]: *** [rebuild_config] Error 2
    make[3]: *** [rebuild_config] Error 2
    make[2]: *** [rebuild_config] Error 2
    make[1]: *** [rebuild_config] Error 2
     
    (update: As expected, repartitioning the drive resolved the boot issues. Back to booting just fine with both drives installed)
     
  8. timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    May 13, 2013 at 4:53 AM #8
    timcharper

    timcharper

    Joined:
    Apr 20, 2011
    Messages:
    35
    Mobo:
    Gigabyte GA-Z170X-UD3
    CPU:
    Intel Core i5 6600K
    Graphics:
    Nvidia GTX 1060
    I've repartitioned the drive, here's a diff of the first 8k:

    Code (Text):

    root@timcharper:~ $ diff -u <(hexdump before) <(hexdump after)
    --- /dev/fd/63  2013-05-12 21:52:17.000000000 -0600
    +++ /dev/fd/62  2013-05-12 21:52:17.000000000 -0600
    @@ -6,15 +6,15 @@
     *
     00001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 aa
     0000200 45 46 49 20 50 41 52 54 00 00 01 00 5c 00 00 00
    -0000210 af ac 44 d3 00 00 00 00 01 00 00 00 00 00 00 00
    +0000210 a5 7f 75 45 00 00 00 00 01 00 00 00 00 00 00 00
     0000220 af 88 e0 e8 00 00 00 00 22 00 00 00 00 00 00 00
    -0000230 8e 88 e0 e8 00 00 00 00 08 07 99 09 d9 e0 99 46
    -0000240 8f 53 83 70 72 f4 5a 9b 02 00 00 00 00 00 00 00
    -0000250 80 00 00 00 80 00 00 00 54 60 ae cf 00 00 00 00
    +0000230 8e 88 e0 e8 00 00 00 00 1c ae 82 2e 6f 20 eb 40
    +0000240 8d c3 08 c0 17 43 31 a3 02 00 00 00 00 00 00 00
    +0000250 80 00 00 00 80 00 00 00 20 1f b9 ed 00 00 00 00
     0000260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     *
     0000400 28 73 2a c1 1f f8 d2 11 ba 4b 00 a0 c9 3e c9 3b
    -0000410 8e 45 fc b8 95 9d 67 47 af 19 28 46 72 d8 21 7e
    +0000410 3f e1 20 9e 52 bb 8b 48 af 76 ce b7 f3 bf 8e 1f
     0000420 28 00 00 00 00 00 00 00 27 40 06 00 00 00 00 00
     0000430 00 00 00 00 00 00 00 00 45 00 46 00 49 00 20 00
     0000440 53 00 79 00 73 00 74 00 65 00 6d 00 20 00 50 00
    @@ -22,12 +22,11 @@
     0000460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     *
     0000480 00 53 46 48 00 00 aa 11 aa 11 00 30 65 43 ec ac
    -0000490 68 91 be a1 7b ad c9 46 b6 b1 fa 81 13 d5 0a c5
    +0000490 74 7f 2a 27 93 4e 41 42 9b eb 4b b5 31 9d cb 81
     00004a0 28 40 06 00 00 00 00 00 87 88 dc e8 00 00 00 00
    -00004b0 00 00 00 00 00 00 00 00 4d 00 65 00 64 00 69 00
    -00004c0 61 00 43 00 65 00 6e 00 74 00 65 00 72 00 20 00
    -00004d0 54 00 69 00 6d 00 65 00 4d 00 61 00 63 00 68 00
    -00004e0 69 00 6e 00 65 00 00 00 00 00 00 00 00 00 00 00
    -00004f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    +00004b0 00 00 00 00 00 00 00 00 4d 00 43 00 20 00 54 00
    +00004c0 69 00 6d 00 65 00 4d 00 61 00 63 00 68 00 69 00
    +00004d0 6e 00 65 00 00 00 00 00 00 00 00 00 00 00 00 00
    +00004e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
     *
     0002000
     
     
  9. codymac

    codymac

    Joined:
    Jul 19, 2010
    Messages:
    4
    Mobo:
    2700
    CPU:
    i7 2700K
    Graphics:
    9800 GT
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    May 14, 2013 at 5:35 AM #9
    codymac

    codymac

    Joined:
    Jul 19, 2010
    Messages:
    4
    Mobo:
    2700
    CPU:
    i7 2700K
    Graphics:
    9800 GT
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Unfortunately mine are on multiple drives so scanning a single drive makes things a bit of a pain here.

    In hindsight, I'm fairly certain my X58 system is running PC EFI and I did install Chameleon on my Z68 system and confirmed that it behaved the same.

    I'm betting that your Time Machine drive is larger than 1tb. Mine have been.
     
  10. Neofin

    Neofin

    Joined:
    Feb 27, 2011
    Messages:
    11
    Mobo:
    GA-Z68X-UD3H-B3 Ver 1.0 F12
    CPU:
    i7-2600K
    Graphics:
    Saphire 5770 - twin monitor
    Mobile Phone:
    iOS
    May 19, 2013 at 5:20 PM #10
    Neofin

    Neofin

    Joined:
    Feb 27, 2011
    Messages:
    11
    Mobo:
    GA-Z68X-UD3H-B3 Ver 1.0 F12
    CPU:
    i7-2600K
    Graphics:
    Saphire 5770 - twin monitor
    Mobile Phone:
    iOS
    Thanks so much for pointing this bug out. It helped me to get an external PCIe Sata card working. I too was getting the "freeze" at the 'l' or '/' at Chimera start. I hadn't realised that it was the Time machine disk that I had attached to the card until reading this post.
    A reformat of the Time machine disk fixed this.
    The problem for me seems to be that the time machine disk had been until this point generated via an eSATA docking station (don't know if that is necessary to invoke the bug). It certainly resulted in the freeze. The minute I disconnected this drive (1tb Western Digital Caviar) the problem disappeared.
    I am now using the same disk as a Time machine disk but regenerating it via the internal PCIe SATA card. I will repost here if this causes problems.
     

Share This Page