lkml.org 
[lkml]   [2009]   [Feb]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 6/9] ide: remove BUG() from ide_complete_rq()
    From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
    Subject: [PATCH] ide: remove BUG() from ide_complete_rq()

    It is no longer needed so remove it, also while at it dequeue the request
    only on blk_end_request() success and make ide_complete_rq() return an error
    value.

    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
    ---
    drivers/ide/ide-io.c | 10 ++++++----
    include/linux/ide.h | 2 +-
    2 files changed, 7 insertions(+), 5 deletions(-)

    Index: b/drivers/ide/ide-io.c
    ===================================================================
    --- a/drivers/ide/ide-io.c
    +++ b/drivers/ide/ide-io.c
    @@ -137,15 +137,17 @@ void ide_complete_cmd(ide_drive_t *drive
    kfree(cmd);
    }

    -void ide_complete_rq(ide_drive_t *drive, int error)
    +int ide_complete_rq(ide_drive_t *drive, int error)
    {
    ide_hwif_t *hwif = drive->hwif;
    struct request *rq = hwif->rq;
    + int rc;

    - hwif->rq = NULL;
    + rc = blk_end_request(rq, error, blk_rq_bytes(rq));
    + if (rc == 0)
    + hwif->rq = NULL;

    - if (unlikely(blk_end_request(rq, error, blk_rq_bytes(rq))))
    - BUG();
    + return rc;
    }
    EXPORT_SYMBOL(ide_complete_rq);

    Index: b/include/linux/ide.h
    ===================================================================
    --- a/include/linux/ide.h
    +++ b/include/linux/ide.h
    @@ -1163,7 +1163,7 @@ extern int ide_devset_execute(ide_drive_
    const struct ide_devset *setting, int arg);

    void ide_complete_cmd(ide_drive_t *, struct ide_cmd *, u8, u8);
    -void ide_complete_rq(ide_drive_t *, int);
    +int ide_complete_rq(ide_drive_t *, int);

    void ide_tf_dump(const char *, struct ide_taskfile *);


    \
     
     \ /
      Last update: 2009-02-09 21:05    [W:0.026 / U:65.936 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site