[lkml]   [1999]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: SCSI tape buffer allocation hitting memory allocation

    On Fri, Feb 12, 1999 at 01:18:39PM -0800, Simon Kirby wrote:

    > Looking at the code, it seems to do this when scsi_init_malloc() returns
    > NULL (fails). So, I hit alt-sysreq...Sure enough, there didn't appear to
    > be any large areas free. I remembered that I saw that the floppy driver
    > once spat out that it was resorting to virtual DMA, so I thought that
    > maybe I would be able to convert scsi_init_malloc() to fall back to use
    > vmalloc() if allocation in physical memory fails. I don't know if this

    Erm, if the pages aren't contiguous in physical memory (=vmalloc), you can't
    DMA to them in one go, can you? (Not knowing much about it). Surely the code
    would use vmalloc() by default otherwise. Maybe the floppy driver does
    something funky to handle the vmalloc()'d memory, but on a SCSI device I'd
    imagine the performance overhead would be such that it'd be better to just
    drop the DMA buffer size back.

    > And I was happy...But then I ran the exact same command again and the
    > machine froze hard (even interrupts were dead -- no sysreq). So, is this
    > not possible? Is there another workaround that could be done? Is there
    > just a dumb bug in my patch (attached)?

    I'm guessing your SCSI controller just DMA'd over the top of something
    critical (kernel code, page table, ...).


    %DCL-MEM-BAD, bad memory
    VMS-F-PDGERS, pudding between the ears

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:50    [W:0.019 / U:9.992 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site