From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: Re: [drm:r100_ring_test] *ERROR* radeon: ring test failed Date: Tue, 27 Oct 2009 13:00:19 -0400 Message-ID: <20091027170019.GA5961@phenom.dumpdata.com> References: <4AB431AD.1030205@goop.org> <20091011153900.GW1434@reaktio.net> <20091012200248.GA16486@phenom.dumpdata.com> <20091014211415.GQ1434@reaktio.net> <20091015200409.GD11348@phenom.dumpdata.com> <20091016090159.GI1434@reaktio.net> <20091020165805.GA12035@phenom.dumpdata.com> <20091021115434.GF1434@reaktio.net> <20091021183130.GA11691@phenom.dumpdata.com> <20091027154651.GI1434@reaktio.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="45Z9DzgjV8m4Oswq" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <20091027154651.GI1434@reaktio.net> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Pasi =?iso-8859-1?Q?K=E4rkk=E4inen?= Cc: Jeremy Fitzhardinge , Xen-devel List-Id: xen-devel@lists.xenproject.org --45Z9DzgjV8m4Oswq Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Oct 27, 2009 at 05:46:51PM +0200, Pasi K=E4rkk=E4inen wrote: > On Wed, Oct 21, 2009 at 02:31:30PM -0400, Konrad Rzeszutek Wilk wrote: > > > I updated the pv_ops dom0 git tree to the latest 2.6.31.4 tree as o= f > > > today, and also applied your ttm.patch. > > >=20 > > > Modesetting works now, and there are no drm/radeon errors. > >=20 > > Thank you for testing it. > >=20 >=20 > Btw are you going to post this for inclusion in drm/ttm trees? I am not really comfortable with it. It has the same drawbacks as the fix for the drm_scatter, where we blindly assume phys_to_bus(virt_to_phys(X)) will give us the same value as what dma_alloc_coherent provides. We should save that bus address somewhere... Saving it somewhere (perhaps in some of the structs the drm_ttm allocates= ) could do it. But we should probably differentiate between memory that is being allocated for DMA transfers vs other things so that we don't over-exercise the dma_alloc_coherent. Thought maybe the memory returned via drm_tt calls are only used for DMA transfers. We can figure this out. Pasi, I don't have a modesetting working machine= , but you do. Can you compile your pv_ops with the fix I provided earlier, along with enabling CONFIG_DMA_API_DEBUG=3Dy. Once mode-setting is turned on and your machine is humming along (maybe even run glxgears), compile the attached module and load it. You should get a kernel dump off all devices that are using the DMA buffers. Can you e-mail me that ba= ck please? --45Z9DzgjV8m4Oswq Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=Makefile # Comment/uncomment the following line to disable/enable debugging #DEBUG = y # Add your debugging flag (or not) to CFLAGS ifeq ($(DEBUG),y) DEBFLAGS = -O -g # "-O" is needed to expand inlines else DEBFLAGS = -O2 endif EXTRA_CFLAGS += $(DEBFLAGS) -I$(LDDINCDIR) ifneq ($(KERNELRELEASE),) # call from kernel build system obj-m := dump_dma.o else #KERNELDIR ?= /lib/modules/$(shell uname -r)/build KERNELDIR ?= /home/konrad/git/nex-VI-PVOPS/linux-build PWD := $(shell pwd) default: $(MAKE) -C $(KERNELDIR) M=$(PWD) LDDINCDIR=$(PWD)/../include modules endif clean: rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions depend .depend dep: $(CC) $(CFLAGS) -M *.c > .depend ifeq (.depend,$(wildcard .depend)) include .depend endif --45Z9DzgjV8m4Oswq Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="dump_dma.c" /* * Copyright 2009 Virtual Iron. * by Konrad Rzeszutek * * This code exposes the buffer-cache to userland via sysfs. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License v2.0 as published by * the Free Software Foundation * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define DUMP_DMA_VERSION "0.1" MODULE_AUTHOR("Konrad Rzeszutek "); MODULE_DESCRIPTION("dumps DMA stats"); MODULE_LICENSE("GPL"); MODULE_VERSION(DUMP_DMA_VERSION); static int __init dma_dump_init(void) { dump_stack(); debug_dma_dump_mappings(NULL); return -ENODEV; } static void __exit dma_dump_exit(void) { } module_init(dma_dump_init); module_exit(dma_dump_exit); --45Z9DzgjV8m4Oswq Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --45Z9DzgjV8m4Oswq--