[Devel] [RFC PATCH vz9 v6 47/62] dm-ploop: disable metadata writeback delay
Alexander Atanasov
alexander.atanasov at virtuozzo.com
Tue Jan 14 10:30:36 MSK 2025
On 14.01.25 9:00, Pavel Tikhomirov wrote:
> Should not we bring back the ploop_cluster_is_in_top_delta hunk too? As
> this patch looks like a revert to "[RFC PATCH vz9 v6 23/62] dm-ploop:
> make new allocations immediately visible in BAT".
Yes, it is kind of backing off the changes.
ploop_cluster_is_in_top_delta was completely removed, can not bring it
back at this point. But at the places it was removed a simplified check
is performed.
Here we have successful or failed bat update, a new allocation.
Either publish the update or revert allocataion in the bitmap.
So ploop_cluster_is_in_top_delta must always fail here.
May be Andrey can elaborate on this.
> On 12/6/24 05:56, Alexander Atanasov wrote:
>> diff --git a/drivers/md/dm-ploop-map.c b/drivers/md/dm-ploop-map.c
>> index c88359677ea4..6e4d6f862135 100644
>> --- a/drivers/md/dm-ploop-map.c
>> +++ b/drivers/md/dm-ploop-map.c
>> @@ -817,9 +817,10 @@ static void
>> ploop_advance_local_after_bat_wb(struct ploop *ploop,
>> /* holes bit map requires bat_lock */
>> spin_lock_irqsave(&ploop->bat_lock, flags);
>> spin_lock(&md->md_lock);
>> +#ifdef PLOOP_DELAYWB
>> if (piwb->type == PIWB_TYPE_ALLOC)
>> goto skip_apply;
>> -
>> +#endif
>> for (; i < last; i++) {
>> if (piwb->type == PIWB_TYPE_DISCARD) {
>> ploop_piwb_discard_completed(ploop, success, i + off,
>> dst_clu[i]);
>> @@ -836,7 +837,9 @@ static void
>> ploop_advance_local_after_bat_wb(struct ploop *ploop,
>> ploop_hole_set_bit(i + off, ploop);
>> }
>> }
>> +#ifdef PLOOP_DELAYWB
>> skip_apply:
>> +#endif
>> WARN_ON_ONCE(!test_bit(MD_WRITEBACK, &md->status));
>> clear_bit(MD_WRITEBACK, &md->status);
>
--
Regards,
Alexander Atanasov
More information about the Devel
mailing list