• Vasily Averin's avatar
    i2o: block IO errors on i2o disk · b2c3c20b
    Vasily Averin authored
    I2O subsystem has been broken in mainstream several months ago (after
    2.6.18).  Commit 4aff5e23 from Jens
    Axboe split struct request ->flags into two parts: cmd_type and
    cmd_flags.
    
    In i2o layer this patch has replaced flag REQ_SPECIAL by the according
    cmd_type.  However i2o has used REQ_SPECIAL not as command type but as
    driver-specific flag for the debug purposes.  As result all i2o requests
    have type "special" now, are not processed to the hardware and fail with
    I/O error:
    
       i2o/hda:<3>Buffer I/O error on device i2o/hda, logical block 0
      Buffer I/O error on device i2o/hda, logical block 0
      Buffer I/O error on device i2o/hda, logical block 0
       unable to read partition table
      block-osm: device added (TID: 207): i2o/hda
    
    The following patch removes the extra debug checks without any drawbacks and
    restores the normal driver's work.
    Signed-off-by: default avatarVasily Averin <vvs@sw.ru>
    Acked-by: default avatarMarkus Lidel <Markus.Lidel@shadowconnect.com>
    Cc: Jens Axboe <jens.axboe@oracle.com>
    From: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    b2c3c20b
i2o_block.c 31.4 KB