FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Debian > Debian Kernel

 
 
LinkBack Thread Tools
 
Old 07-03-2008, 09:45 AM
 
Default Bug#445987: Found a patch

weinholt@csbnet.se (Göran Weinholt) writes:

> Code: 83 78 78 00 75 0c 48 8b 05 59 fa 39 f8 48 c1 e0 0c c3 48 8b
> RIP [<ffffffff881ae3a2>] :scsi_mod:scsi_calculate_bounce_limit+0x15/0x49
> RSP <ffff880004d2dc30>
> CR2: 0000000000000078

I suspect this is where the above function goes wrong:

/*
* Platforms with virtual-DMA translation
* hardware have no practical limit.
*/
if (!PCI_DMA_BUS_IS_PHYS)
return BLK_BOUNCE_ANY;

PCI_DMA_BUS_IS_PHYS is defined in fedora-2.6.18-36186.patch:

+#define PCI_DMA_BUS_IS_PHYS (0)
[...]
+#define PCI_DMA_BUS_IS_PHYS (1)
[...]
+#define PCI_DMA_BUS_IS_PHYS (dma_ops->is_phys)

My guess is that the last definition is the one being used. If dma_ops
is NULL, then &dma_ops->is_phys should be exactly 0x78 (which is also
the bad address) if I counted right (struct dma_mapping_ops in
asm-x86_64/dma-mapping.h).

So dma_ops is currently NULL inside domU. Maybe nommu_dma_ops should
be used?

Googling for "xen domu no_iommu_init", this shows up:

http://www.redhat.com/archives/fedora-cvs-commits/2007-January/msg01476.html

Looks like that patch shows where the problem is. no_iommu_init() is
not being called in pci_iommu_alloc() in fedora-2.6.18-36186.patch.

Please fix this problem in etch.

Regards,

--
Göran Weinholt <weinholt@csbnet.se>



--
To UNSUBSCRIBE, email to debian-kernel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
 

Thread Tools




All times are GMT. The time now is 08:58 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright ©2007 - 2008, www.linux-archive.org