On 8/30/19 1:26 AM, Song Liu wrote:
On Aug 29, 2019, at 8:00 AM, Guoqing Jiang <guoqing.jiang@xxxxxxxxxxxxxxx> wrote:
Hi Song,
On 8/29/19 7:42 AM, Song Liu wrote:
I read the code again, and now I am not sure whether we are fixing the issue.
This WARN_ONCE() does not run for head_sh, which should have STRIPE_ACTIVE.
It only runs on other stripes in the batch, which should not have STRIPE_ACTIVE.
From the original commit which introduced batch write, it has the description
which I think is align with your above sentence.
"With below patch, we will automatically batch adjacent full stripe write
together. Such stripes will be added to the batch list. Only the first stripe
of the list will be put to handle_list and so run handle_stripe().".
Could you point me related code which achieve the above purpose? Thanks.
Do you mean which code makes sure the batched stripe will not be handled?
This is done via properly maintain STRIPE_HANDLE bit.
Thanks, I will dig a little bit about it.
Btw: do you have a solid repro of the WARNING message?
Unfortunately, no.
Thanks,
Guoqing