Project

General

Profile

Actions

Bug #930

closed

softdep panic while low on memory during "make buildworld"

Added by nthery almost 17 years ago. Updated almost 17 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

Hello,

I got a "softdep_deallocate_dependencies: dangling deps" panic during
"make buildworld" on a 64mb (virtual) machine. I'm running HEAD
modified to allocate proc structs off an objcache instead of a zone.
The panic is not reproducible with a stock HEAD build, so presumably
the objcache has a bigger footprint but that's another story.

softdep_deallocate_dependencies() is called from brelse():1088:

1085      if (bp->b_flags & (B_DELWRI | B_LOCKED)) {
1086 bp->b_flags &= ~B_RELBUF;
1087 } else if (vm_page_count_severe()) {
1088 buf_deallocate(bp);
1089 if (bp->b_flags & (B_DELWRI | B_LOCKED))
1090 bp->b_flags &= ~B_RELBUF;
1091 else
1092 bp->b_flags |= B_RELBUF;
1093 }

The call to buf_deallocate() was added in vfs_bio.c 1.96.

It looks like softdep_deallocate_dependencies() systematically panics.
Maybe it should take less drastic action?

Cheers,
Nicolas

Actions

Also available in: Atom PDF