lkml.org 
[lkml]   [1997]   [May]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: dynamic partitions
    Date
    From
    Jan Kratochvil wrote:
    > P.S.: When we're at another large memory copying, will someone the write page
    > flipping support so that during CD burn the data will no longer be copied
    > 6 times? Count with me:
    >
    > [disk DMA->kernel buffer]
    > 1. buffer -> userland mkisofs
    > 2. mkisofs -> kernel pipe buffer
    > 3. kernel pipe buffer -> userland buffering tool
    > [>10MB buffer to deal with starvations during compiles]
    > 4. userland buffering tool -> kernel pipe buffer
    > 5. kernel pipe buffer -> userland cdrecord buffer
    > 6. userland cdrecord buffer -> scsi layer buffer
    > [scsi layer->scsi controller DMA]

    To get this to work better, you could:
    1) Use a ring buffer in shared memory instead of pipes for the
    "userland buffering tool".
    2) Use the new raw devices for the disk image of the CDROM when they
    become available from Dave Miller.
    3) Modify the Generic SCSI driver so it can point to a data buffer
    (or a chain of them) in user-land for read/writes instead of
    mixing up commands and data in one non-aligned io block. Not
    sure what the consequences are here if you give the generic
    SCSI driver a memory area that doesn't belong to you ie it
    'seg faults' in the DMA.

    Then you get:

    1. DMA raw partition -> ring buffer in shared memory.
    2. DMA ring buffer in shared memory -> SCSI card with CD writer.

    This is assuming that data gets copied verbatim from the disk
    to the CDROM.

    Of course, the ideal would be to DMA directly from the disk
    to the CD across the PCI bus. Hey they might be on the same
    SCSI controller, then the data never has to leave the
    controller... :-).

    --
    Erik Corry erik@arbat.com http://inet.uni-c.dk/~ehcorry/

    \
     
     \ /
      Last update: 2005-03-22 13:39    [W:2.349 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site