On 2017/6/29 下午11:15, Avi Kivity wrote: > > > On 12/08/2016 06:44 PM, Coly Li wrote: >> On 2016/12/8 上午12:59, Shaohua Li wrote: >>> On Wed, Dec 07, 2016 at 07:50:33PM +0800, Coly Li wrote: >> [snip] >>> Thanks for doing this, Coly! For raid0, this totally makes sense. The >>> raid0 >>> zones make things a little complicated though. I just had a brief >>> look of your >>> proposed patch, which looks really complicated. I'd suggest something >>> like >>> this: >>> 1. split the bio according to zone boundary. >>> 2. handle the splitted bio. since the bio is within zone range, >>> calculating >>> the start and end sector for each rdev should be easy. >>> >> Hi Shaohua, >> >> Thanks for your suggestion! I try to modify the code by your suggestion, >> it is even more hard to make the code that way ... >> >> Because even split bios for each zone, all the corner cases still exist >> and should be taken care in every zoon. The code will be more >> complicated. >> > > Hi Coly, > > Did you manage to complete this patch? We are seeing its effect, not > only with mkfs, but also with fstrim(8). Hi Avi, Shaohua makes another much better patch, which is merged into mainline kernel in v4.12-rc2. The commit is '29efc390b946 ("md/md0: optimize raid0 discard handling")'. Hope this is informative. Coly