Page MenuHomeFreeBSD

Create an API to reset a struct bio (g_reset_bio). This is mandatory for all struct bio you get back from g_{new,alloc}_bio, and optional for all other struct bio.
AbandonedPublic

Authored by imp on Jan 18 2016, 10:15 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 18, 7:13 AM
Unknown Object (File)
Dec 12 2023, 12:37 AM
Unknown Object (File)
Nov 4 2023, 1:55 PM
Unknown Object (File)
Sep 23 2023, 12:54 AM
Unknown Object (File)
Aug 3 2023, 12:22 AM
Unknown Object (File)
Jul 7 2023, 4:23 AM
Unknown Object (File)
Jul 2 2023, 9:58 PM
Unknown Object (File)
May 10 2023, 1:48 PM
Subscribers

Details

Reviewers
markj
Summary

Make it possible to specify which zone to allocate a bio from, as well
as strongly suggesting this down the stack. Combine common code and
expose a general routine to allocate and copy bios.

Use our own zone for the swap_pager. We should always have room
here. Tell the system to always use this for BIOs that are created
down the stack for this I/O.

Just use g_duplicate_bio() instead of a lame version.
It's simpler, and will unblock faster than the sleeping
version.

When updated for direct dispatch, the sleep in the path for
g_io_transient_map_bio wasn't updated to reflect the fact that we
can't sleep in the direct dispatch case. When we're direct
dispatching, and we can't map the I/O, return with ENOMEM so we queue
the I/O instead of sleeping.

Implement maximum batch size for the disksort algorithm (also called
max car size in the literature). This limits the number of requests
that are batched together before starting a new batch. It has little
effect on the average service time, but can have a large effect on the
worst service time.

Submitted by: emax@

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 2180
Build 2189: arc lint + arc unit

Event Timeline

imp retitled this revision from to Create an API to reset a struct bio (g_reset_bio). This is mandatory for all struct bio you get back from g_{new,alloc}_bio, and optional for all other struct bio..
imp updated this object.
imp edited the test plan for this revision. (Show Details)

Do we need to keep this review open?

I thought I'd committed this stuff already...

In D4987#477382, @imp wrote:

I thought I'd committed this stuff already...

Yes, r295707. Could you close it? I don't seem to have the option.

This has been comitte.d