[Devel] [PATCH vz9] ploop: rework logging when punch hole or zero range is unsupported
Konstantin Khorenko
khorenko at virtuozzo.com
Fri Jun 30 21:30:40 MSK 2023
On 30.06.2023 19:30, Konstantin Khorenko wrote:
> Sasha, please, ask someone to review?
Please, disregard.
>
> --
> Best regards,
>
> Konstantin Khorenko,
> Virtuozzo Linux Kernel Team
>
> On 23.05.2023 20:08, Alexander Atanasov wrote:
>> We added a fallback to zero range if punch hole is not supported
>> but when zero range is not supported either the log gets flooded.
>>
>> Rework logging and restrict unsupported log messages to just one.
>>
>> https://jira.vzint.dev/browse/PSBM-147401
>> Signed-off-by: Alexander Atanasov <alexander.atanasov at virtuozzo.com>
>> ---
>> drivers/md/dm-ploop-map.c | 16 +++++++++-------
>> 1 file changed, 9 insertions(+), 7 deletions(-)
>>
>> diff --git a/drivers/md/dm-ploop-map.c b/drivers/md/dm-ploop-map.c
>> index 640cf8428d9b..589d49429cf9 100644
>> --- a/drivers/md/dm-ploop-map.c
>> +++ b/drivers/md/dm-ploop-map.c
>> @@ -1050,17 +1050,19 @@ static int ploop_allocate_cluster(struct ploop *ploop, u32 *dst_clu)
>> if (pos < top->file_preallocated_area_start) {
>> /* Clu at @pos may contain dirty data */
>> off = min_t(loff_t, old_size, end);
>> - if (!ploop->falloc_new_clu) {
>> + if (!ploop->falloc_new_clu)
>> ret = ploop_punch_hole(file, pos, off - pos);
>> - if (unlikely(ret == -EOPNOTSUPP)) {
>> - ploop->falloc_new_clu = 1;
>> - PL_WARN("punch hole unsupported - disabling");
>> - }
>> - } else
>> + else
>> ret = ploop_zero_range(file, pos, off - pos);
>> if (ret) {
>> - if (printk_ratelimit())
>> + if (ret != -EOPNOTSUPP)
>> PL_ERR("punch/zero area: %d", ret);
>> + else if (ploop->falloc_new_clu)
>> + PL_ERR_ONCE("zero range unsupported");
>> + else if (!ploop->falloc_new_clu) {
>> + ploop->falloc_new_clu = 1;
>> + PL_WARN("punch hole unsupported - disabling");
>> + }
>> return ret;
>> }
>> }
> _______________________________________________
> Devel mailing list
> Devel at openvz.org
> https://lists.openvz.org/mailman/listinfo/devel
More information about the Devel
mailing list