| #
8794e371
|
| 04-Nov-2025 |
Konstantin Belousov <kib@FreeBSD.org> |
sys/bio.h: print BIO_EXTERR flag
Noted by: imp Sponsored by: The FreeBSD Foundation
|
| #
6c406b5b
|
| 25-Oct-2025 |
Konstantin Belousov <kib@FreeBSD.org> |
exterror(9): add infra for bufs and bios
The extended error can be stored in either struct bio or struct buf, indicated by BIO_EXTERR bio_flag. At some strategic places, it is copied into the curre
exterror(9): add infra for bufs and bios
The extended error can be stored in either struct bio or struct buf, indicated by BIO_EXTERR bio_flag. At some strategic places, it is copied into the current thread extended error.
This structure is required because io request from the top might pass down through several io threads and the context that can report meaningful extended error does not belong to the thread that initiated the io.
Sizes before the change, on amd64 nodebug: sizeof(struct buf) = 456 sizeof(struct bio) = 376
after: sizeof(struct buf) = 496 sizeof(struct bio) = 408
WIP: more geom providers should handle BIO_EXTERR when passing cloned bios down and then handling completions.
Reviewed by: mckusick Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D53351
show more ...
|
| #
fd630ae9
|
| 24-Nov-2024 |
Alan Cox <alc@FreeBSD.org> |
vm: Retire an unused declaration
The bio_transient_map was long ago replaced by a vmem arena.
Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D47729
|
| #
29363fb4
|
| 23-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl s
sys: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script.
Sponsored by: Netflix
show more ...
|
| #
2ff63af9
|
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .h pattern
Remove /^\s*\*+\s*\$FreeBSD\$.*$\n/
|
| #
965e9195
|
| 24-Apr-2022 |
Warner Losh <imp@FreeBSD.org> |
bio: Add the speedup flags to PRINT_BIO_FLAGS
The BIO_SPEEDUP_WRITE and BIO_SPEEDUP_TRIM bits are part of the flags word, so print them as such.
Sponsored by: Netflix Differential Revision: https:
bio: Add the speedup flags to PRINT_BIO_FLAGS
The BIO_SPEEDUP_WRITE and BIO_SPEEDUP_TRIM bits are part of the flags word, so print them as such.
Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D35035
show more ...
|
| #
077ab5bd
|
| 23-Feb-2022 |
Warner Losh <imp@FreeBSD.org> |
bio: make _bio_cflags match bio_cflags
While none of the in-tree geoms that modify the bio_cflags use the top half of the word, were they to do this in the future, we'd hit false positives for DIAGN
bio: make _bio_cflags match bio_cflags
While none of the in-tree geoms that modify the bio_cflags use the top half of the word, were they to do this in the future, we'd hit false positives for DIAGNOSTIC kernels. Make both uint16_t.
MFC After: 1 week Sponsored by: Netflix
show more ...
|
| #
8587d752
|
| 17-Oct-2021 |
Wuyang Chung <wy-chung@outlook.com> |
Correct the name of the second parameter of biowait to wmesg
This parameter is passed directly to msleep, and the name of the msleep parameter is wmesg. Make them match.
Pull Request: https://githu
Correct the name of the second parameter of biowait to wmesg
This parameter is passed directly to msleep, and the name of the msleep parameter is wmesg. Make them match.
Pull Request: https://github.com/freebsd/freebsd-src/pull/557
show more ...
|
| #
c6213bef
|
| 28-Sep-2021 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Add flag BIO_SWAP to mark IOs that are associated with swap.
Submitted by: jtl Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D24400
|
| #
86c06ff8
|
| 29-Dec-2019 |
Alexander Motin <mav@FreeBSD.org> |
Remove GEOM_SCHED class and gsched tool.
This code was not actively maintained since it was introduced 10 years ago. It lacks support for many later GEOM features, such as direct dispatch, unmapped
Remove GEOM_SCHED class and gsched tool.
This code was not actively maintained since it was introduced 10 years ago. It lacks support for many later GEOM features, such as direct dispatch, unmapped I/O, stripesize/stripeoffset, resize, etc. Plus it is the only remaining use of GEOM nstart/nend request counters, used there to implement live insertion/removal, questionable by itself. Plus, as number of people commented, GEOM is not the best place for I/O scheduler, since it has limited information about layers both above and below it, required for efficient scheduling. Plus with the modern shift to SSDs there is just no more significant need for this kind of scheduling.
Approved by: imp, phk, luigi Relnotes: yes
show more ...
|
| #
b182c792
|
| 17-Dec-2019 |
Warner Losh <imp@FreeBSD.org> |
Add BIO_SPEEDUP
Add BIO_SPEEDUP bio command and g_io_speedup wrapper. It tells the lower layers that the upper layers are dealing with some shortage (dirty pages and/or disk blocks). The lower layer
Add BIO_SPEEDUP
Add BIO_SPEEDUP bio command and g_io_speedup wrapper. It tells the lower layers that the upper layers are dealing with some shortage (dirty pages and/or disk blocks). The lower layers should do what they can to speed up anything that's been delayed.
The first use will be to tell the CAM I/O scheduler that any TRIM shaping should be short-circuited because the system needs blocks. We'll also call it when there's too many resources used by UFS.
Reviewed by: kirk, kib Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D18351
show more ...
|
| #
7e565c55
|
| 30-Jan-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r343320 through r343570.
|
| #
dab83bd1
|
| 25-Jan-2019 |
Kirk McKusick <mckusick@FreeBSD.org> |
Add printing of b_ioflags to DDB `show buffer' command.
Sponsored by: Netflix
|
| #
8794e371
|
| 04-Nov-2025 |
Konstantin Belousov <kib@FreeBSD.org> |
sys/bio.h: print BIO_EXTERR flag
Noted by: imp Sponsored by: The FreeBSD Foundation
|
| #
6c406b5b
|
| 25-Oct-2025 |
Konstantin Belousov <kib@FreeBSD.org> |
exterror(9): add infra for bufs and bios
The extended error can be stored in either struct bio or struct buf, indicated by BIO_EXTERR bio_flag. At some strategic places, it is copied into the curre
exterror(9): add infra for bufs and bios
The extended error can be stored in either struct bio or struct buf, indicated by BIO_EXTERR bio_flag. At some strategic places, it is copied into the current thread extended error.
This structure is required because io request from the top might pass down through several io threads and the context that can report meaningful extended error does not belong to the thread that initiated the io.
Sizes before the change, on amd64 nodebug: sizeof(struct buf) = 456 sizeof(struct bio) = 376
after: sizeof(struct buf) = 496 sizeof(struct bio) = 408
WIP: more geom providers should handle BIO_EXTERR when passing cloned bios down and then handling completions.
Reviewed by: mckusick Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D53351
show more ...
|
| #
fd630ae9
|
| 24-Nov-2024 |
Alan Cox <alc@FreeBSD.org> |
vm: Retire an unused declaration
The bio_transient_map was long ago replaced by a vmem arena.
Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D47729
|
| #
29363fb4
|
| 23-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl s
sys: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script.
Sponsored by: Netflix
show more ...
|
| #
2ff63af9
|
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .h pattern
Remove /^\s*\*+\s*\$FreeBSD\$.*$\n/
|
| #
965e9195
|
| 24-Apr-2022 |
Warner Losh <imp@FreeBSD.org> |
bio: Add the speedup flags to PRINT_BIO_FLAGS
The BIO_SPEEDUP_WRITE and BIO_SPEEDUP_TRIM bits are part of the flags word, so print them as such.
Sponsored by: Netflix Differential Revision: https:
bio: Add the speedup flags to PRINT_BIO_FLAGS
The BIO_SPEEDUP_WRITE and BIO_SPEEDUP_TRIM bits are part of the flags word, so print them as such.
Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D35035
show more ...
|
| #
077ab5bd
|
| 23-Feb-2022 |
Warner Losh <imp@FreeBSD.org> |
bio: make _bio_cflags match bio_cflags
While none of the in-tree geoms that modify the bio_cflags use the top half of the word, were they to do this in the future, we'd hit false positives for DIAGN
bio: make _bio_cflags match bio_cflags
While none of the in-tree geoms that modify the bio_cflags use the top half of the word, were they to do this in the future, we'd hit false positives for DIAGNOSTIC kernels. Make both uint16_t.
MFC After: 1 week Sponsored by: Netflix
show more ...
|
| #
8587d752
|
| 17-Oct-2021 |
Wuyang Chung <wy-chung@outlook.com> |
Correct the name of the second parameter of biowait to wmesg
This parameter is passed directly to msleep, and the name of the msleep parameter is wmesg. Make them match.
Pull Request: https://githu
Correct the name of the second parameter of biowait to wmesg
This parameter is passed directly to msleep, and the name of the msleep parameter is wmesg. Make them match.
Pull Request: https://github.com/freebsd/freebsd-src/pull/557
show more ...
|
| #
c6213bef
|
| 28-Sep-2021 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Add flag BIO_SWAP to mark IOs that are associated with swap.
Submitted by: jtl Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D24400
|
| #
86c06ff8
|
| 29-Dec-2019 |
Alexander Motin <mav@FreeBSD.org> |
Remove GEOM_SCHED class and gsched tool.
This code was not actively maintained since it was introduced 10 years ago. It lacks support for many later GEOM features, such as direct dispatch, unmapped
Remove GEOM_SCHED class and gsched tool.
This code was not actively maintained since it was introduced 10 years ago. It lacks support for many later GEOM features, such as direct dispatch, unmapped I/O, stripesize/stripeoffset, resize, etc. Plus it is the only remaining use of GEOM nstart/nend request counters, used there to implement live insertion/removal, questionable by itself. Plus, as number of people commented, GEOM is not the best place for I/O scheduler, since it has limited information about layers both above and below it, required for efficient scheduling. Plus with the modern shift to SSDs there is just no more significant need for this kind of scheduling.
Approved by: imp, phk, luigi Relnotes: yes
show more ...
|
| #
b182c792
|
| 17-Dec-2019 |
Warner Losh <imp@FreeBSD.org> |
Add BIO_SPEEDUP
Add BIO_SPEEDUP bio command and g_io_speedup wrapper. It tells the lower layers that the upper layers are dealing with some shortage (dirty pages and/or disk blocks). The lower layer
Add BIO_SPEEDUP
Add BIO_SPEEDUP bio command and g_io_speedup wrapper. It tells the lower layers that the upper layers are dealing with some shortage (dirty pages and/or disk blocks). The lower layers should do what they can to speed up anything that's been delayed.
The first use will be to tell the CAM I/O scheduler that any TRIM shaping should be short-circuited because the system needs blocks. We'll also call it when there's too many resources used by UFS.
Reviewed by: kirk, kib Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D18351
show more ...
|
| #
7e565c55
|
| 30-Jan-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r343320 through r343570.
|