No description
  • C 97%
  • Assembly 1%
  • Shell 0.6%
  • Rust 0.5%
  • Python 0.4%
  • Other 0.3%
Find a file
Christoph Hellwig 77fd359b6d block: remove the same_page output argument to bvec_try_merge_page
bvec_try_merge_page currently returns if the added page fragment is
within the same page as the last page in the last current bio_vec.

This information is used by __bio_iov_iter_get_pages so that we always
have a single folio pin per page even when the page is split over
multiple __bio_iov_iter_get_pages calls.

Threading this through the entire lowlevel add page to bio logic is
annoying and inefficient and leads to less code sharing than otherwise
possible.  Instead add code to __bio_iov_iter_get_pages that checks if
the bio_vecs did not change and thus a merge into the last segment must
have happened, and if there is an offset into the page for the currently
added fragment, because if yes we must have already had a previous
fragment of the same page in the last bio_vec.  While this is still a bit
ugly, it keeps the logic in the one place that needs it and allows for
more code sharing.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20250512042354.514329-1-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2025-05-13 12:09:32 -06:00
arch block: remove bounce buffering support 2025-05-05 13:22:39 -06:00
block block: remove the same_page output argument to bvec_try_merge_page 2025-05-13 12:09:32 -06:00
certs sign-file,extract-cert: use pkcs11 provider for OPENSSL MAJOR >= 3 2024-09-20 19:52:48 +03:00
crypto crypto: ahash - Disable request chaining 2025-04-12 09:33:09 +08:00
Documentation block: introduce a write_stream_granularity queue limit 2025-05-06 07:46:43 -06:00
drivers md: clean up accounting for issued sync IO 2025-05-10 16:14:22 +08:00
fs fs: aio: initialize .ki_write_stream of read-write request 2025-05-07 08:00:11 -06:00
include blk-throttle: Introduce flag "BIO_TG_BPS_THROTTLED" 2025-05-13 12:08:27 -06:00
init Kconfig: switch CONFIG_SYSFS_SYCALL default to n 2025-04-15 10:28:35 +02:00
io_uring io_uring: enable per-io write streams 2025-05-06 07:46:43 -06:00
ipc treewide: const qualify ctl_tables where applicable 2025-01-28 13:48:37 +01:00
kernel PM: hibernate: split and simplify hib_submit_io 2025-05-07 07:31:07 -06:00
lib hardening fixes for v6.15-rc3 2025-04-18 13:20:20 -07:00
LICENSES
mm mm: remove NR_BOUNCE zone stat 2025-05-05 13:22:39 -06:00
net Including fixes from Bluetooth, CAN and Netfilter. 2025-04-17 11:45:30 -07:00
rust rust: helpers: Add dma_alloc_attrs() and dma_free_attrs() 2025-04-15 23:06:03 +02:00
samples samples/livepatch: add module descriptions 2025-04-11 17:32:38 -07:00
scripts Rust fixes for v6.15 2025-04-19 10:02:43 -07:00
security hardening: Disable GCC randstruct for COMPILE_TEST 2025-04-15 13:50:17 -07:00
sound ASoC: Fixes for v6.15 2025-04-11 15:51:19 +02:00
tools selftests: ublk: kublk: fix include path 2025-05-05 16:54:52 -06:00
usr kbuild: hdrcheck: fix cross build with clang 2025-03-05 04:06:45 +09:00
virt ARM: 2025-04-08 13:47:55 -07:00
.clang-format clang-format: Update the ForEachMacros list for v6.15-rc1 2025-04-13 11:03:59 +02:00
.clippy.toml rust: give Clippy the minimum supported Rust version 2025-01-10 00:17:25 +01:00
.cocciconfig
.editorconfig
.get_maintainer.ignore MAINTAINERS: Retire Ralf Baechle 2024-11-12 15:48:59 +01:00
.gitattributes
.gitignore kbuild: Create intermediate vmlinux build with relocations preserved 2025-03-17 00:29:50 +09:00
.mailmap sound fixes for 6.15-rc3 2025-04-17 10:14:51 -07:00
.rustfmt.toml
COPYING
CREDITS MAINTAINERS: update SLAB ALLOCATOR maintainers 2025-04-17 20:10:06 -07:00
Kbuild drm: ensure drm headers are self-contained and pass kernel-doc 2025-02-12 10:44:43 +02:00
Kconfig io_uring: Rename KConfig to Kconfig 2025-02-19 14:53:27 -07:00
MAINTAINERS Documentation: Document the new zoned loop block device driver 2025-05-01 17:03:56 -06:00
Makefile gcc-15: disable '-Wunterminated-string-initialization' entirely for now 2025-04-20 15:30:53 -07:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the reStructuredText markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.