Author: eugen
Date: Thu Dec  7 05:55:18 2017
New Revision: 326655
URL: https://svnweb.freebsd.org/changeset/base/326655

Log:
  Fix use-after-free that sometimes results in a garbage returned
  instead of right error code after requests to SINGLE/CONCAT volumes, f.e:
  
  # dd if=/dev/raid/r0 bs=512 of=/dev/null
  dd: /dev/raid/r0: Unknown error: -559038242
  
  Reviewed by:  avg (mentor), mav (mentor)
  MFC after:    3 days

Modified:
  head/sys/geom/raid/tr_concat.c

Modified: head/sys/geom/raid/tr_concat.c
==============================================================================
--- head/sys/geom/raid/tr_concat.c      Thu Dec  7 04:55:31 2017        
(r326654)
+++ head/sys/geom/raid/tr_concat.c      Thu Dec  7 05:55:18 2017        
(r326655)
@@ -341,7 +341,7 @@ g_raid_tr_iodone_concat(struct g_raid_tr_object *tr,
        pbp->bio_inbed++;
        if (pbp->bio_children == pbp->bio_inbed) {
                pbp->bio_completed = pbp->bio_length;
-               g_raid_iodone(pbp, bp->bio_error);
+               g_raid_iodone(pbp, pbp->bio_error);
        }
 }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to