Go to file
Christoph Hellwig 2a842acab1 block: introduce new block status code type
Currently we use nornal Linux errno values in the block layer, and while
we accept any error a few have overloaded magic meanings.  This patch
instead introduces a new  blk_status_t value that holds block layer specific
status codes and explicitly explains their meaning.  Helpers to convert from
and to the previous special meanings are provided for now, but I suspect
we want to get rid of them in the long run - those drivers that have a
errno input (e.g. networking) usually get errnos that don't know about
the special block layer overloads, and similarly returning them to userspace
will usually return somethings that strictly speaking isn't correct
for file system operations, but that's left as an exercise for later.

For now the set of errors is a very limited set that closely corresponds
to the previous overloaded errno values, but there is some low hanging
fruite to improve it.

blk_status_t (ab)uses the sparse __bitwise annotations to allow for sparse
typechecking, so that we can easily catch places passing the wrong values.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-06-09 09:27:32 -06:00
arch block: introduce new block status code type 2017-06-09 09:27:32 -06:00
block block: introduce new block status code type 2017-06-09 09:27:32 -06:00
certs
crypto
Documentation This pull request contains fixes to make the WiFi work again for the ARM64 2017-05-26 09:05:35 -07:00
drivers block: introduce new block status code type 2017-06-09 09:27:32 -06:00
firmware
fs block_dev: propagate bio_iov_iter_get_pages error in __blkdev_direct_IO 2017-06-09 09:27:32 -06:00
include block: introduce new block status code type 2017-06-09 09:27:32 -06:00
init
ipc
kernel Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2017-05-24 08:28:59 -07:00
lib
mm
net A bunch of make W=1 and static checker fixups, a RECONNECT_SEQ 2017-05-26 09:35:22 -07:00
samples
scripts
security
sound sound fixes for 4.12-rc3 2017-05-26 09:03:09 -07:00
tools
usr
virt
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile
README

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

This file was moved to Documentation/admin-guide/README.rst

Please notice that there are several guides for kernel developers and users.
These guides can be rendered in a number of formats, like HTML and PDF.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.
See Documentation/00-INDEX for a list of what is contained in each file.

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.