Main-line Linux kernel tree http://www.kernel.org
Go to file
Ming Lei 863a66cdb4 lib/sbitmap: allocate sb->map via kvzalloc_node
sbitmap has been used in scsi for replacing atomic operations on
sdev->device_busy, so IOPS on some fast scsi storage can be improved.

However, sdev->device_busy can be changed in fast path, so we have to
allocate the sb->map statically. sdev->device_busy has been capped to 1024,
but some drivers may configure the default depth as < 8, then
cause each sbitmap word to hold only one bit. Finally 1024 * 128(
sizeof(sbitmap_word)) bytes is needed for sb->map, given it is order 5
allocation, sometimes it may fail.

Avoid the issue by using kvzalloc_node() for allocating sb->map.

Cc: Ewan D. Milne <emilne@redhat.com>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Link: https://lore.kernel.org/r/20220316012708.354668-1-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-03-21 20:01:34 -06:00
arch block: remove genhd.h 2022-02-02 07:49:59 -07:00
block block: cancel all throttled bios in del_gendisk() 2022-03-18 09:57:56 -06:00
certs
crypto
Documentation blk-crypto: show crypto capabilities in sysfs 2022-02-28 06:40:23 -07:00
drivers sr: simplify the local variable initialization in sr_block_open() 2022-03-15 14:41:59 -06:00
fs ext4: stop using bio_devname 2022-03-07 06:42:33 -07:00
include lib/sbitmap: allocate sb->map via kvzalloc_node 2022-03-21 20:01:34 -06:00
init block: remove genhd.h 2022-02-02 07:49:59 -07:00
ipc
kernel block: check that there is a plug in blk_flush_plug 2022-02-02 07:50:00 -07:00
lib lib/sbitmap: allocate sb->map via kvzalloc_node 2022-03-21 20:01:34 -06:00
LICENSES
mm block: pass a block_device and opf to bio_alloc 2022-02-02 07:49:59 -07:00
net
samples
scripts
security block: remove genhd.h 2022-02-02 07:49:59 -07:00
sound
tools tools/testing/scatterlist: add missing defines 2022-01-30 09:56:58 +02:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MAINTAINERS: add bio.h to the block section 2022-02-02 07:50:00 -07:00
Makefile Linux 5.17-rc2 2022-01-30 15:37:07 +02: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 Restructured Text 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.