git: xdisk - Fix improper EIO

Matthew Dillon dillon at
Mon Mar 9 00:41:00 PDT 2015

commit 5dafdfbab36647ae8d1630acfbb14873721b4f2a
Author: Matthew Dillon <dillon at>
Date:   Mon Mar 9 00:36:18 2015 -0700

    xdisk - Fix improper EIO
    * Fix an issue when xa_strategy() is called when no spans are valid,
      but before open_tag could be terminated.  This improperly caused the
      BIO to fail.
      If the BIO is not flagged to allow failures, place the BIO on sc->bioq
      when this situation occurs instead of causing it to fail.  The BIO will
      be requeued when a new span becomes valid.
    * With this change a hammer2 mount on a xdisk appears to survive multiple
      communications failures without error (i.e. killing the hammer2 service
      demon either box, then restarting it).
    * Fix a locking panic.

Summary of changes:
 sys/dev/disk/xdisk/xdisk.c | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

DragonFly BSD source repository

More information about the Commits mailing list