kvmalloc

c · standard library
sinkDerived from model facts
RoleSink
WeaknessCWE-789 · CWE-770
WatchesArgument[0]
Kindalloc-size
Confidencemedium
Corroboration2

Sink boundary: An allocation size is modeled because an attacker-influenced value can change memory consumption.

Argument map · what each slot does

The pack does not provide a callable signature for this record; the watched access path is shown directly.

ArgAccess pathPurposeWatched
Argument[0]Argument[0]The access path Atropos marks for this model.▲ sink
The weakness
CWE-789
Memory Allocation with Excessive Size

An untrusted size controls allocation without an adequate upper bound.

CWE-770
Allocation Without Limits or Throttling

Resources are allocated without intended limits on size or quantity.

What goes wrong
Attacker's-eye view · alloc-size

A crafted size requests an unexpectedly large allocation, exhausting memory or triggering downstream bounds failures.

// modeled boundary: Argument[0] kvmalloc(attacker_influenced_value);
To decide if this call is a bug, check
1Find the origin of the size.
2Check for an upper bound before allocation.
3Check arithmetic for overflow or wraparound.
These checks require the surrounding codebase. The model names the boundary; it does not decide reachability or prove that a guard dominates every path.
Is this a bug in your code?Atropos stops here — by design

Atropos identifies Argument[0] as a alloc-size sink. It cannot see whether untrusted data reaches this call in your repository.

Lachesis is the codebase-level step: it traces reachability and guards for this symbol.

Check this symbol in Lachesis
The family · alloc-size

Across languages

No cross-language match.

What neutralizes it

No sanitizer of this kind is modeled.

Model facts · verbatim from the pack
RoleKindAccess pathModel IDConfidence
sinkalloc-sizeArgument[0]c.kernel.kvmalloc.a0medium · corrob. 2