Messages in this thread | | | From | Jesse Barnes <> | Subject | Re: Fix agp_backend usage in drm_agp_init (was: 2.6.11-mm3 - DRM/i915 broken) | Date | Fri, 18 Mar 2005 19:40:53 -0800 |
| |
On Friday, March 18, 2005 6:45 pm, Brice Goglin wrote: > agpioc_acquire_wrap is called, it increments the agp_in_use. Then (before > agpioc_release_wrap happens), drm_agp_init is called (I don't know how). > drm_agp_init uses agp_backend_acquire which fails because agp_in_use is > non-null (hold by agpioc_acquire_wrap). > > The multi-bridge AGP patch actually changed drm_agp_init by adding > agp_backend_acquire/release around agp_copy_info. > It is why drm_agp_init fails now while it worked before. > > I don't think we need to "acquire" it during agp_copy_info. > Why don't we just get a pointer to the bridge instead ? > (is there any chance this bridge gets deleted during drm_agp_init ?) > That's what the attached patch implements on top of 2.6.12-rc1. > > I chose to add a new agp_backend_find() function, but we might also > directly call agp_find_bridge() from drm_agp_init(). I don't know what's > the best. > > I'm not familiar enough with DRM/AGP code to understand everything here. > I might be missing something...
What does your patch look like? Markus might like to try it out as he narrowed his problem down to something AGP related recently too: http://bugme.osdl.org/show_bug.cgi?id=4337
Thanks, Jesse - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |