disk IO directly from PCI memory to block device sectors

From: marty
Date: Fri Sep 26 2008 - 03:29:18 EST


We have a large ram area on a PCI board (think of a custom framebuffer
type application). We're using 2.6.20.

We have the PCI ram mapped into kernel space, and knew the physical addresses.

We have a raw partition on the block device which we reserve for this.

We want to be able to stick the contents of selected portion of PCI ram onto a block device (disk). Past incarnations modified the disk driver, and developed a special API so the custom driver constructed scatter/gather lists and fed it to the driver (bypassing the elevator algorithm, to execute
as the "next request".

What I'm looking is for a more generic/driver independent way of sticking
contents of PCI ram onto a disk.

Is offset + length of each bio_vec < pagesize?

What's the best way to do this (much of my data is already in physically
contiguous memory [and mapped into virtual memory)).

Any good examples to look at?

marty



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/