Take 2 for the biodone() panics: acd_geom_start() implements request limiting by breaking up a large request in the passed bio into a sequence of smaller ones. As each request is created, acd_strategy is invoked to start the IO. However, I think this IO can complete while still issuing the child requests, leading to the parent being retired early. (ie, when a child operation completes, it checks if its the last operation to complete, and, if so, retires the parent: see g_std_done.) The attached patch makes my qemu box much more reliable (I could crash a qemu hosted system 100% with a "tar fc" of the 6.0-BETA bootonly ISO without the patch, and it's gone through many iterations fine with it) Any opinions/testing results welcome.
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:44 UTC