diff options
author | Mikulas Patocka <mpatocka@redhat.com> | 2009-06-22 10:12:19 +0100 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2009-06-22 10:12:19 +0100 |
commit | fdb9572b73abd008b80931c3b1f157dac3888bb9 (patch) | |
tree | ae84d6ed1c97e77d536d0bcf2e25fa35d5cbfcba | |
parent | 5aa2781d964e9835c441932110484bc454b5c207 (diff) | |
download | talos-op-linux-fdb9572b73abd008b80931c3b1f157dac3888bb9.tar.gz talos-op-linux-fdb9572b73abd008b80931c3b1f157dac3888bb9.zip |
dm: remove EOPNOTSUPP for barriers
If the underlying device doesn't support barriers and dm receives a
barrier, it waits until all requests on that device drain so it no
longer needs to report -EOPNOTSUPP to the caller.
This patch deals with the confusing situation when moving a volume from
one physical device to another triggers an EOPNOTSUPP on a volume that
didn't report it before.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
-rw-r--r-- | drivers/md/dm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 77972090abe5..8498dc4ce1f0 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -555,7 +555,7 @@ static void dec_pending(struct dm_io *io, int error) * a per-device variable for error reporting. * Note that you can't touch the bio after end_io_acct */ - if (!md->barrier_error) + if (!md->barrier_error && io_error != -EOPNOTSUPP) md->barrier_error = io_error; end_io_acct(io); } else { |