[lkml]   [2008]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH] block: fix residual byte count handling
    On Mon, 03 Mar 2008 13:09:13 +0900
    Tejun Heo <> wrote:

    > FUJITA Tomonori wrote:
    > >> - I think bugs caused by using raw_data_len instead of data_len are more
    > >> subtle than the other way around. Using data_len instead of
    > >> raw_data_len usually affects the application layer while using
    > >> raw_data_len instead of data_len affects the DMA engine and transport layer.
    > >
    > > If we add extra_len, we can get what raw_data_len and data_len
    > > provide.
    > >
    > > I can't see what changing the meaning of rq->data_len (and
    > > investigating all the block drivers) gives us.
    > No matter which way you go, you change the meaning of rq->data_len and
    > you MUST inspect rq->data_len usage whichever way you go.

    The patch doens't change that rq->data_len means the true data
    length. But yeah, it breaks rq->data_len == sum(sg). So it might break
    some drivers.

    > Apply your patch and try to do sg IO on IDE cdrom w/ various
    > transfer lengths.

    I've just tried the patch with both ata and libata and it seems to

    For anyone hitting this problem, please try the following patch:


     \ /
      Last update: 2008-03-03 09:31    [W:0.023 / U:26.612 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site