dogbait Posted December 15, 2008 Share Posted December 15, 2008 After 24 to 48 hours I get a kernel panic with the machine requiring a hard reset. This occurs on both my MSI Wind and my Gigabyte based system. The last event I see in the console is nearly always: zalloc did gc I've googled this problem, but it seems like no one's heard of zalloc, let alone this issue. Link to comment Share on other sites More sharing options...
raggedjagged Posted December 16, 2008 Share Posted December 16, 2008 Wow, I just got hit by this error too, I googled for kernel zalloc did gc and this thread turned up on google (the only one). I'm using 10.5.6, just updated to it, and I'm using iATKOS 5i, with some modifications to audio kexts.. Here's the exact error: 12/17/08 12:57:33 AM kernel zalloc did gc Link to comment Share on other sites More sharing options...
dogbait Posted December 17, 2008 Author Share Posted December 17, 2008 I have a GA-EP35-DS3 but after 10.5.6, removing VMware Fusion and the GenericCPUPowerManagement.kext things seem to be stable. Will post back once I'm sure of the cause. Link to comment Share on other sites More sharing options...
dogbait Posted December 21, 2008 Author Share Posted December 21, 2008 I have a GA-EP35-DS3 but after 10.5.6, removing VMware Fusion and the GenericCPUPowerManagement.kext things seem to be stable. Will post back once I'm sure of the cause. Replying to my own post Got this problem resolved after disabling PME and wake-on-ring in the BIOS. Link to comment Share on other sites More sharing options...
Superhai Posted December 22, 2008 Share Posted December 22, 2008 zalloc is kernel zone memory allocation. gc means garbage collection. if it fails to allocate memory it tries a garbage collection to free memory, if it still fails the kernel will panic. something is allocating more meory than the kernel can get. most likely a memory leak in the kernel or kernel extension. Link to comment Share on other sites More sharing options...
dogbait Posted December 22, 2008 Author Share Posted December 22, 2008 Thanks for the clear explanation Superhai. I wonder why changing the power settings in the BIOS have stopped the problem. I'd be curious to determine the cause of the problem since whatever's responsible for the kernel panic isn't being loaded or invoked since I changed the BIOS setting. Link to comment Share on other sites More sharing options...
KirbySaysHi Posted December 29, 2008 Share Posted December 29, 2008 I am also getting this error on a gigabyte p35-ds3r, and only after upgrading to 10.5.6. I'll try the bios setting mentioned above... Link to comment Share on other sites More sharing options...
KirbySaysHi Posted January 11, 2009 Share Posted January 11, 2009 Yeah, changing the bios did not help, I'm still getting kernel panics related to zalloc... and also NVDAResman. So I'm assuming it has something to do with my graphics card. Before this update, I used Natit, and now I'm using efi strings. So perhaps something is wrong there. Also, the same thing is happening with my Dell D630 laptop. I've turned off sleep mode and putting the monitor to sleep, and each time I end up with a kernel panic dealing with zalloc. Link to comment Share on other sites More sharing options...
why_care Posted January 18, 2009 Share Posted January 18, 2009 Same kernel panic here 10.5.6 vanilla, modified DSDT, EFI strings for ATI 3870, modified/added JMicronATA, AppleHDA, ACPIPS2Nub, ApplePS2Controller, R1000, AppleAHCIPort, SMBIOSEFI, VoodooPower kexts Gigabyte GA-G33M-DS2R, E8200, 2Gb RAM. BIOS settings have no effect. Any ideas how to backtrace? Link to comment Share on other sites More sharing options...
KirbySaysHi Posted January 19, 2009 Share Posted January 19, 2009 Any ideas how to backtrace? I've removed my gfx efi strings, and am trying my old Natit again. So far so good, but it takes time for it to crash. The next thing I'm going to do, if this doesn't work, is to remove the dsdt.aml file from the root of my installation. That should remove the dsdt patch... From there, I may have to replace some kexts and such, but I'm not sure. I'll try it little by little. If anyone has any suggestions on how to remove the dsdt patch, they are appreciated! Link to comment Share on other sites More sharing options...
why_care Posted January 19, 2009 Share Posted January 19, 2009 I suspect your suspicion is correct it's got something to do with the video. I'm on EFI v9, looks like it may have a bug. I'll try to replace EFI strings with Natit and see what happens. Link to comment Share on other sites More sharing options...
KirbySaysHi Posted January 24, 2009 Share Posted January 24, 2009 I tried using my original Natit with whichever gfx kexts were there, and my computer still crashes with zalloc. At this point, I'm thinking it has something to do with dsdt. My laptop has also been zalloc'ing, and the only thing that's simliar is that I did a dsdt patch using DSDT Patcher on both. I'm using chameleon / pc efi9. Can I just remove the dsdt.aml file to stop that from injecting? Link to comment Share on other sites More sharing options...
Tony Conte Posted January 24, 2009 Share Posted January 24, 2009 I suspect your suspicion is correct it's got something to do with the video. I'm on EFI v9, looks like it may have a bug. I'll try to replace EFI strings with Natit and see what happens. I suspect the same thing. Because I had once one like it when I was using hackintosh. Link to comment Share on other sites More sharing options...
iHack13 Posted January 28, 2009 Share Posted January 28, 2009 I also get the same error. One of these is the bad guy but which? 17 16 0x1b195000 0x10000 0xf000 com.apple.iokit.IOPCIFamily (2.5) 18 10 0x1b1ab000 0x4000 0x3000 com.apple.iokit.IOACPIFamily (1.2.0) 19 3 0x1b1fa000 0x3e000 0x3d000 com.apple.driver.AppleACPIPlatform (1.2.4) <18 17> 20 0 0x1b242000 0x2000 0x1000 com.psystar.driver.OpenHaltRestart (1.0.3) 21 0 0x1b26d000 0x2000 0x1000 net.osrom.kext.IntelCPUPMDisabler (1.0.0) 22 0 0x1b29b000 0x5000 0x4000 com.apple.BootCache (30.3) 23 5 0x1b362000 0x39000 0x38000 com.apple.iokit.IOHIDFamily (1.5.3) 24 0 0x1b3a7000 0x3000 0x2000 com.apple.driver.pcilib (3.0.0) 25 0 0x1b3b0000 0x2000 0x1000 com.apple.dsmos (1.0.0d1) 26 0 0x1b3b5000 0x3000 0x2000 net.osrom.kext.SMBIOSEnabler (1.0.0) 27 0 0x1b3f0000 0x3000 0x2000 com.apple.security.TMSafetyNet (3) 28 0 0x1c40a000 0x8000 0x7000 com.apple.nke.applicationfirewall (1.0.77) 29 0 0x1c44a000 0x18000 0x17000 com.apple.security.seatbelt (107.10) 30 0 0x20e4f000 0x3000 0x2000 com.apple.driver.AppleAPIC (1.4) 31 0 0x20e6a000 0x8000 0x7000 com.apple.driver.AppleSMBIOS (1.0.14) 32 0 0x20fe8000 0x4000 0x3000 com.apple.driver.AppleACPIButtons (1.2.4) <23 19 18> 33 0 0x2108d000 0x3000 0x2000 com.apple.driver.AppleACPIPCI (1.2.4) <19 18 17> 34 0 0x210d4000 0x5000 0x4000 com.apple.driver.AppleRTC (1.2.3) <18> 35 1 0x2113c000 0x3000 0x2000 com.apple.iokit.IOSMBusFamily (1.1) 36 0 0x211da000 0x5000 0x4000 com.apple.driver.AppleACPIEC (1.2.4) <35 19 18> 37 5 0x21295000 0x29000 0x28000 com.apple.iokit.IOUSBFamily (3.2.7) 38 0 0x212ef000 0xe000 0xd000 com.apple.driver.AppleUSBUHCI (3.2.5) <37 17> 39 0 0x21396000 0x12000 0x11000 com.apple.driver.AppleUSBEHCI (3.2.5) <37 17> 40 2 0x2159d000 0x3f000 0x3e000 com.apple.iokit.IOFireWireFamily (3.4.6) 41 0 0x21612000 0x22000 0x21000 com.apple.driver.AppleFWOHCI (3.7.2) <40 17> 43 3 0x2174a000 0xd000 0xc000 com.apple.iokit.IOATAFamily (2.0.0) 44 0 0x21768000 0x9000 0x8000 com.apple.driver.AppleIntelPIIXATA (2.0.0) <43 17> 45 0 0x21780000 0x2000 0x1000 com.apple.driver.AppleACPIPS2Nub (1.0.0d1) <18> 46 0 0x217d5000 0x2000 0x1000 com.apple.iokit.IOUSBUserClient (3.2.4) <37> 47 9 0x2183b000 0x18000 0x17000 com.apple.iokit.IOStorageFamily (1.5.5) 50 2 0x21a55000 0x5000 0x4000 com.apple.driver.ApplePS2Controller (2.0.0) 51 0 0x21ac1000 0xc000 0xb000 com.apple.driver.AppleUSBHub (3.2.7) <37> 52 4 0x21b7a000 0x19000 0x18000 com.apple.iokit.IOSCSIArchitectureModelFamily (2.0.5) 53 0 0x21aeb000 0x4000 0x3000 com.apple.iokit.IOATAPIProtocolTransport (1.5.2) <52 43> 54 0 0x21d92000 0x3000 0x2000 com.apple.driver.ApplePS2Keyboard (1.1.0) <50 23> 55 0 0x21d4d000 0x6000 0x5000 com.apple.iokit.SCSITaskUserClient (2.0.5) <52 47> 56 3 0x21e63000 0x8000 0x7000 com.apple.iokit.IOCDStorageFamily (1.5) <47> 57 2 0x21ea3000 0x6000 0x5000 com.apple.iokit.IODVDStorageFamily (1.5) <56 47> 58 1 0x21ecc000 0x16000 0x15000 com.apple.iokit.IOSCSIBlockCommandsDevice (2.0.5) <52 47> 59 1 0x21ef0000 0x5000 0x4000 com.apple.iokit.IOBDStorageFamily (1.5) <57 56 47> 60 0 0x21f1d000 0x16000 0x15000 com.apple.iokit.IOSCSIMultimediaCommandsDevice (2.0.5) <59 58 57 56 52 47> 61 0 0x21fb0000 0xe000 0xd000 com.apple.iokit.IOATABlockStorage (2.0.5) <47 43> 62 0 0x2201e000 0x5000 0x4000 com.apple.driver.XsanFilter (2.7.91) <47> 63 4 0x1b2a0000 0x1d000 0x1c000 com.apple.iokit.IOGraphicsFamily (1.7.1) <17> 64 2 0x1b2bd000 0xe000 0xd000 com.apple.iokit.IONDRVSupport (1.7.1) <63 17> 65 2 0x2d930000 0x25d000 0x25c000 com.apple.NVDAResman (5.3.8) <64 63 17> 66 0 0x2db8d000 0x1cb000 0x1ca000 com.apple.nvidia.nv40hal (5.3.8) <65> 67 0 0x1b2cf000 0x4000 0x3000 com.apple.driver.ApplePS2Trackpad (1.1.0) <50 23> 68 0 0x1b155000 0x3000 0x2000 com.apple.driver.AppleLPC (1.2.11) <17> 69 2 0x1b2d3000 0x9000 0x8000 com.apple.driver.AppleSMC (2.2.0d4) <18> 70 1 0x1b2dc000 0xe000 0xd000 com.apple.driver.IOPlatformPluginFamily (3.3.1d0) 71 0 0x1b2ea000 0xf000 0xe000 com.apple.driver.ACPI_SMC_PlatformPlugin (3.3.1d0) <70 69 18 17> 72 1 0x1b2f9000 0x3000 0x2000 com.apple.kext.OSvKernDSPLib (1.1) 73 2 0x1c412000 0x17000 0x16000 com.apple.iokit.IOAudioFamily (1.6.5fc3) <72> 74 0 0x1b2fc000 0x4000 0x3000 com.apple.driver.AudioIPCDriver (1.0.5) <73> 75 4 0x211e5000 0x16000 0x15000 com.apple.iokit.IONetworkingFamily (1.6.1) 76 0 0x1b300000 0x9000 0x8000 com.apple.iokit.IOFireWireIP (1.7.6) <75 40> 77 2 0x1b309000 0x5000 0x4000 com.apple.iokit.IOHDAudioFamily (1.0.0d1) 78 0 0x1b39b000 0x6000 0x5000 com.apple.driver.AppleAzaliaController (1.0.0d1) <77 17> 79 1 0x211fb000 0x1f000 0x1e000 com.apple.iokit.IO80211Family (214.1) <75> 80 0 0x213c1000 0x91000 0x90000 com.apple.driver.AirPort.Atheros (316.48.0) <79 75 17> 81 0 0x219bc000 0x40000 0x3f000 com.apple.iokit.AppleYukon2 (3.1.10b2) <75 17> 83 0 0x20e53000 0xf000 0xe000 com.orderedbytes.driver.ControllerMateFamily (4.3.7) <23> 87 0 0x21d95000 0x98000 0x97000 com.apple.GeForce (5.3.6) <65 64 63 17> 88 0 0x1b3b8000 0x3000 0x2000 com.apple.Dont_Steal_Mac_OS_X (6.0.3) <69> 90 0 0x21090000 0xb000 0xa000 com.superhai.driver.GenericCPUPowerManagement (1.1.4) <18> 92 0 0x2122a000 0xc000 0xb000 com.apple.driver.AppleAzaliaAudio (1.0.0d1) <77 73> 93 0 0x21452000 0x10000 0xf000 com.apple.driver.DiskImages (195.2.2) <47> 94 0 0x21251000 0x4000 0x3000 com.apple.driver.AppleUpstreamUserClient (2.7.2) <63 18 17> 95 0 0x2df1b000 0x64000 0x63000 com.vmware.kext.vmx86 (1.1.3) 96 0 0x21b11000 0xa000 0x9000 com.vmware.kext.vmci (1.1.3) 97 0 0x2180d000 0x6000 0x5000 com.vmware.kext.vmioplug (1.1.3) <37 23> 98 0 0x21bd5000 0x8000 0x7000 com.vmware.kext.vmnet (1.1.3) 99 0 0x21f35000 0xb000 0xa000 com.apple.filesystems.autofs (2.0.1) Link to comment Share on other sites More sharing options...
KirbySaysHi Posted January 31, 2009 Share Posted January 31, 2009 I HIGHLY doubt this is because of graphics. I have a Dell D630 laptop with the intel x3100, and it also panics in this same manner, just like my desktop. The only things in common between these two machines: dsdt patch, pc_efi9 / chameleon, and 10.5.6. Since I installed chameleon/v9 just before upgrading to 10.5.6, I cannot confirm if this is coming from 10.5.6 or EFI. Right now, I'm considering nuking my machine and starting over. Crashing seemingly at random is completely unacceptable, especially on a system that before was literally rock solid (I'm talking weeks of uptime). Link to comment Share on other sites More sharing options...
why_care Posted February 1, 2009 Share Posted February 1, 2009 If it's not video then... power management maybe? Any of you guys using VoodooPower or GenericCPUPowerManagement? I was on VoodooPower, now switched to the original AppleIntelCPUPowerManagement. My E8200 is running 10 degrees hotter as reported by the on-die sensor in the result and some other interesting stuff popped up but i'm still gonna run it to see if that damn zalloc error went away. Link to comment Share on other sites More sharing options...
why_care Posted February 3, 2009 Share Posted February 3, 2009 Progress report: uptime 57 hours including about 24 hours in sleep. No zalloc error so far. Maybe it is power management after all. Link to comment Share on other sites More sharing options...
dogbait Posted February 5, 2009 Author Share Posted February 5, 2009 After a few weeks trial and error I narrowed it down to the onboard Realtek RTL8111 controller. I was using the RealtekR1000 driver which is supposed to fix the Bonjour issue with the default Apple driver for this network controller. Removing the driver and rebooting made the system more stable but since Bonjour is practically a necessity in OS X I disabled the network controller in the BIOS and installed a 3Com 3C905 PCI network card. The system's been running for a week 24/7 without problems. Just ordered a Netgear GA311 network card as well (I want gigabit which the 3Com doesn't support). Will report on whether that works reliably. But to sum up for those who skip to the end - disable the onboard NIC and use Apple's USB one or a supported PCI one. Link to comment Share on other sites More sharing options...
KirbySaysHi Posted February 6, 2009 Share Posted February 6, 2009 Wouldn't the kernel panic say something about ethernet, or IOKit or PCI or SOMETHING, other than WindowServer, if it were the ethernet controller? And how does this explain my D630, which has a Broadcom Ethernet? I guess I'll try the PowerManagement... but on a laptop, that's kind of necessary for battery life. Link to comment Share on other sites More sharing options...
why_care Posted February 8, 2009 Share Posted February 8, 2009 I'm almost certain it's power management. Here we have 3 options: it can be a bug in EFI v9, in patched DSDT or PowerManagement kexts. I'll try to run VoodooPower first without DSDT patch and then on older Chameleon which supports external patched DSDT. I'll report back on my results Link to comment Share on other sites More sharing options...
Jack Layne Posted February 8, 2009 Share Posted February 8, 2009 The problem is GenericCPUPowerManagement.kext, i have try for 2 week, with some test, and my computer crash after 12h, but now my computer are 4 days and 10:27 hour of continuation. I have GA-EP35-DS3R You must delete GenericCPUPowerManagement.kext from Extensions Folder. Link to comment Share on other sites More sharing options...
Brisc0 Posted February 12, 2009 Share Posted February 12, 2009 The problem is GenericCPUPowerManagement.kext, i have try for 2 week, with some test, and my computer crash after 12h, but now my computer are 4 days and 10:27 hour of continuation. I have GA-EP35-DS3RYou must delete GenericCPUPowerManagement.kext from Extensions Folder. This did not resolve the issue on my MSI Wind PC. I deleted the file last night after reading this post and experienced a panic due to "zalloc did gc" this morning. Link to comment Share on other sites More sharing options...
holyfield Posted February 13, 2009 Share Posted February 13, 2009 Same error here too.. kernel[0]: zalloc did gc Haven't figured out what it causes. I have Windows also installed on another hard disk.. After this crash Windows starts always to check disks. Might be some disks access related issue? I think Darwin source might be helpful here.. I found Darwin source here: kern/zalloc.c I attached this file here also: zalloc.c.zip Its part of zalloc_canblock method. if (retry == 2) { zone_gc(); printf("zalloc did gc\n"); } About method zone_gc /* Zone garbage collection * * zone_gc will walk through all the free elements in all the * zones that are marked collectable looking for reclaimable * pages. zone_gc is called by consider_zone_gc when the system * begins to run out of memory. */ void zone_gc(void) So, its happens when the system begins to run out of memory.. I will continue investigation... Link to comment Share on other sites More sharing options...
holyfield Posted February 15, 2009 Share Posted February 15, 2009 I found something related: Subject: Re: Q: Darwin panicing too soon? From: Jim Magee <email@hidden> Date: Wed, 6 Aug 2003 10:12:35 -0400 On Wednesday, August 6, 2003, at 7:04 AM, Jonas Maebe wrote: On woensdag, aug 6, 2003, at 12:50 Europe/Brussels, Stiphane Sudre wrote: } else if (retval != KERN_RESOURCE_SHORTAGE) { /* would like to cause a zone_gc() */ (1) panic("zalloc"); } ---- Q: Instead of panicing at (1), couldn't it just be possible to return NULL? KERN_RESOURCE_SHORTAGE is described as: /* A system resource could not be allocated to fulfill * this request. This failure may not be permanent. */ The issue is that once you "Kernel Panic"ed, it's 'permanent' till the next reboot. Note that it panics if retval is *different* from KERN_RESOURCE_SHORTAGE". So in case of KERN_RESOURCE_SHORTAGE, whatever comes below will be executed. Correct. The issue is that most kernel code expects zalloc() to wait until memory is available. They only expect a NULL return in the cases that they specified that they are unwilling to block for memory allocation. However, one of the "different from KERN_RESOURCE_SHORTAGE" errors actually occurs as a result of the kernel's virtual address space being exhausted (rather than just being short of free page frames at the moment). It is extremely unlikely that this "exhausted virtual memory space" situation will rectify itself by having the current thread wait. So we panic. This is somewhat analogous to malloc(). It will normally wait for memory to become available (including waiting for the kernel to select and page out other application pages, etc...). But if the virtual address space of your application is completely exhausted, there's not much that can be done. The good news is that the Darwin 10.7 (Panther) PowerPC[1] kernel supports a significantly larger kernel virtual address space. So the odds of hitting that panic go WAY down (most existing machines can't handle enough physical memory to trigger it). There are also additional hand and soft resource limits added to keep applications from inducing run-away kernel allocations. --Jim [1]. The i386 kernel still maps the kernel as part of each task, so it's kernel virtual space is still much smaller (and the application's available virtual space is also smaller). The PowerPC kernel has separate 4GB address spaces for the kernel vs. each application. Link to comment Share on other sites More sharing options...
KirbySaysHi Posted February 16, 2009 Share Posted February 16, 2009 So, we know that it's related to garbage collection, and that it tries to garbage collect things marked as collectable, but then panics because of some unknown reason. I'm guessing that there's a memory leak somewhere... or that things aren't getting marked as collectable, and thus never get gc'ed. But I don't know anything about how any of this works... I think people are making progress here! I am excited! I have 6gb of ram. My laptop has 2gb. This is weird. Link to comment Share on other sites More sharing options...
Recommended Posts