Project

General

Profile

Actions

Bug #4551

closed

mountd: Busy do_logging_queue() eats memory

Added by Marcel Telka almost 10 years ago. Updated almost 10 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
nfs - NFS server and client
Start date:
2014-01-30
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:
External Bug:

Description

The do_logging_queue() function iterates over the logging_data queue and process it. Once an entry is processed it is placed into the lq_clean queue. This queue is cleaned at the end of the function run here:

325    while (lq_clean) {
326        lq = lq_clean;
327        lq_clean = lq->ld_next;
328
329        free_logging_data(lq);
330        cleared++;
331    }

When new entries are added to the logging_data queue with the same (or faster) rate as the do_logging_queue() is able to process, we will never free the processed entries, because we will loop processing the incoming entries.

Actions

Also available in: Atom PDF