Project

General

Profile

Actions

Bug #702

open

Watcher processes are too heavy for full-kernel check

Added by Pavel Shved over 13 years ago. Updated over 13 years ago.

Status:
Open
Priority:
Normal
Assignee:
Category:
Infrastructure
Start date:
01/21/2011
Due date:
% Done:

0%

Estimated time:
Detected in build:
17c3c64
Platform:
Published in build:

Description

When you run LDV tools in parallel mode (for example, with LDV_MAX_RCVS=2 setting), LDV spawns watcher processes when it should queue a task and proceedes. (In the non-parallel mode it waits for them to finish after spawning) As a result, when you check a lot of drivers (for example, when you check the whole kernel) the system gets polluted with a lot of not-so-small (8-10 Mb each!) processes that just wait for a semaphore, making the usual kernel check mode implausible.

This should be fixed.

Actions #1

Updated by Pavel Shved over 13 years ago

  • Status changed from New to Open
  • Priority changed from Urgent to Normal

I made a quickfix in 96373f03. Now whether a task is blocking or non-blocking is decided separately for each kind. I.e. if you allow several RCVs to run (LDV_MAX_RCVS=2), but sill allow only one DSCV simultaneously (LDV_MAX_DSCVS=1), then only RCVs will be called asynchronously. Contrary to the huge amount of DSCV tasks for a kernel check, there's 1-4 RCVs only for each DSCV, so the negative effect on the RAM won't be huge.

This quickfix has been checked in in the revision 96373f03. You may now safely use LDV_MAX_RCVS=2.

Actions

Also available in: Atom PDF