NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

re: kern/54817: kernel stall in radeon_gem_object_create



The following reply was made to PR kern/54817; it has been noted by GNATS.

From: matthew green <mrg%eterna.com.au@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: kern-bug-people%netbsd.org@localhost, gnats-admin%netbsd.org@localhost,
    netbsd-bugs%netbsd.org@localhost
Subject: re: kern/54817: kernel stall in radeon_gem_object_create
Date: Thu, 02 Jan 2020 20:02:49 +1100

 Izumi Tsutsui writes:
 > Dec 25 02:26:49 mirage /netbsd: [ 4974.8588428] kern error: [drm:(../../=
 ../../external/bsd/drm2/dist/drm/radeon/radeon_gem.c:84)radeon_gem_object_=
 create] *ER
 > ROR* Failed to allocate GEM object (4792320, 2, 4096, -12)
 [ ... ] =
 
 > The machine has Radeon HD5450 and it fails to start Xorg,
 > so I put the following line in /etc/X11/xorg.conf (see PR/54782):
 >  https://gnats.netbsd.org/54782
 > >>  Option "AccelMethod" "uxa"
 
 hmm.  i am using a 5450 without any xorg.conf and it works
 mostly fine for me.  i wonder what is up with this part.
 
 oh perhaps it is an i386 vs amd64 specific issue.  can you
 file a differenet PR for this part?
 
 > >Fix:
 > No idea.  Something uses malloc(9) with M_NOWAIT as PR/54796 in audio(9)=
 ?
 
 i've been tracking a problem like this down for a few months.
 it comes and goes for me, and usually i have to restart X to
 recover (there is another one that usually requires a reboot
 to get accel back, i haven't managed to get much info about
 at all yet.)
 
 for most cases i've seen with my instrumentation, the
 ultimate cause is bus_dma eg, my diag patch shows this:
 
 kern error: ttm_bus_dma_populate:82 bus_dmamap_load_pglist failed: -12
 
 is matched with this:
 
         ret =3D -bus_dmamap_load_pglist(ttm_dma->ttm.bdev->dmat,
             ttm_dma->dma_address, &ttm_dma->ttm.pglist,
             (ttm_dma->ttm.num_pages << PAGE_SHIFT), BUS_DMA_WAITOK);
 	if (ret) printk(KERN_ERR "%s:%d bus_dmamap_load_pglist failed: %d\n", __f=
 unc__, __LINE__, ret);
 
 as you can see, BUS_DMA_WAITOK is used already.
 
 this isn't the only case i've seen, though.  i'm not sure
 what is going on, and the other reboot-requiring problem
 has been happening more frequently since i got as far as
 locating the above.
 
 
 .mrg.
 


Home | Main Index | Thread Index | Old Index