HomeFreeBSD

Terminate a blist_alloc search when a blst_meta_alloc call fails with

Description

Terminate a blist_alloc search when a blst_meta_alloc call fails with
cursor == 0.

Every call to blst_meta_alloc but the one at the root is made only when the
meta-node is known to include a free block, so that either the allocation
will succeed, the node hint will be updated, or the last block of the meta-
node range is, and remains, free. But the call at the root is made without
checking that there is a free block, so in the case that every block is
allocated, there is no hint update to prevent the current code from looping
forever.

Submitted by: Doug Moore <dougm@rice.edu>
Reported by: pho
Reviewed by: pho
Tested by: pho
X-MFC with: r340402
Differential Revision: https://reviews.freebsd.org/D17999

Details

Provenance
alcAuthored on
Reviewer
pho
Differential Revision
D17999: Avoid testing bighint in blist_alloc
Parents
rS341601: ixl(4) has netdump support via iflib.
Branches
Unknown
Tags
Unknown