lkml.org 
[lkml]   [2006]   [Mar]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: adding swap workarounds oom - was: Re: Out of Memory: Killed process 16498 (java).
On Wed, Mar 01 2006, Andy Chittenden wrote:
> Jens
>
> > I guess that definitely doesn't work, then :-)
> > Let me doctor up a quick debug patch for ide-dma, then.
> >
> How's that patch coming along?

Something like this.

diff --git a/drivers/ide/ide-dma.c b/drivers/ide/ide-dma.c
index 0523da7..9ee8c5c 100644
--- a/drivers/ide/ide-dma.c
+++ b/drivers/ide/ide-dma.c
@@ -221,6 +221,20 @@ int ide_build_sglist(ide_drive_t *drive,

EXPORT_SYMBOL_GPL(ide_build_sglist);

+static void dump_dma_table(ide_drive_t *drive)
+{
+ ide_hwif_t *hwif = HWIF(drive);
+ request_queue_t *q = drive->queue;
+ int i;
+
+ printk("ide dma table, %d entries, bounce pfn %lu\n", hwif->sg_nents, q->bounce_pfn);
+ for (i = 0; i < hwif->sg_nents; i++) {
+ struct scatterlist *sg = &hwif->sg_table[i];
+
+ printk("sg%d: dma=%llx, len=%u/%u, pfn=%lu\n", i, (unsigned long long) sg->dma_address, sg->length, sg->offset, page_to_pfn(sg->page));
+ }
+}
+
/**
* ide_build_dmatable - build IDE DMA table
*
@@ -311,6 +325,7 @@ use_pio_instead:
hwif->sg_table,
hwif->sg_nents,
hwif->sg_dma_direction);
+ dump_dma_table(drive);
return 0; /* revert to PIO for this request */
}

--
Jens Axboe

-
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/

\
 
 \ /
  Last update: 2006-03-01 10:57    [W:0.044 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site