lkml.org 
[lkml]   [2002]   [May]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH] 2.5.15 IDE 61
    Date
    From
    > Something here smells fishy here - you shouldn't hold a spinlock for a long
    > time (a long time === spinlocking, setting up the drive, possibly scheduling,

    You can't hold it while scheduling or you may deadlock

    > transferring data, getting status, then unlocking). Also, remember,
    > spinlocks are no-ops on uniprocessor systems.

    Its possible it can be done with a semaphore but the whole business is
    pretty tricky. IDE command processing occurs a fair bit at interrupt level
    and you definitely don't want to block interrupts for long periods.

    If the queue abstraction is right then the block layer should do all the
    synchronization work that is required. It may cost a few cycles on the odd
    case you can do overlapped command setup but that versus a nasty locking
    mess its got to be better to lose those few cycles.

    I don't even Martin here, the ide locking is currently utterly vile
    -
    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: 2005-03-22 13:26    [W:0.020 / U:32.600 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site