On 09/12, Daeho Jeong wrote: > > Yeah, that's exactly like what I made a mistake before. > > I should have mentioned that earlier. :) > > Or I think the previous code which used "iter++" might be right. > You might just want to check the fixed number of small discards, DISCARD_ISSUE_RATE, > when issue_cond is "true". > > Anyways, I have another question about this function. > How about just issuing, not checking whether it is idle, the fixed number of small > discards, DISCARD_ISSUE_RATE, when issue_cond is "true". > Actually, the discard commands will be issued as "asynchronous" requests, > which has a low priority in the I/O scheduler, > so the performance degradation of other threads by doing this will not be much severe, > but we can make the performance of the storage device better even if there is no idle. I don't think I/O scheduler can efficiently prioritize discard commands and user requests. The proper way that we can do would be waiting for idle time at this moment. Thanks, > > I am just worried about the storage device I/O performance gets worse > under I/O intensive senario where there is no idle > > Thanks,