Subject: Re: port-amd64/37351: amd64 crash dumps do not work for PA > 4 GB
To: None <port-amd64-maintainer@netbsd.org, gnats-admin@netbsd.org,>
From: Martin Husemann <martin@duskware.de>
List: netbsd-bugs
Date: 11/15/2007 09:10:03
The following reply was made to PR port-amd64/37351; it has been noted by GNATS.

From: Martin Husemann <martin@duskware.de>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-amd64/37351: amd64 crash dumps do not work for PA > 4 GB
Date: Thu, 15 Nov 2007 10:08:15 +0100

 I added some annotation and found it bounces the workload just fine:
 
 dumping PA 0000000100000000
 bounced 4096 bytes to VA 0xffff80004db32000 PA 88710000
 dma map: seg 0 len 4096 addr 0x88710000
 
 but then it dies in sys/dev/pci/pciide_common.c:pciide_dma_dmamap_setup
 when dma'ing the dma segment table to the device:
 
         dma_maps->dma_table[dma_maps->dmamap_xfer->dm_nsegs -1].byte_count |=
             htole32(IDEDMA_BYTE_COUNT_EOT);
                 
  /* makes it here */
 
         bus_dmamap_sync(sc->sc_dmat, dma_maps->dmamap_table, 0,
             dma_maps->dmamap_table->dm_mapsize,
             BUS_DMASYNC_PREWRITE);                                              
         
  /* does not make it here */ 
 
 This is kinda suprise for me - any ideas?
 
 Martin