1
0
Fork 0
mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-01-23 16:53:58 -05:00
No description
Find a file
Jiri Slaby (SUSE) ff1cc97b1f block/blk-iocost (gcc13): keep large values in a new enum
Since gcc13, each member of an enum has the same type as the enum [1]. And
that is inherited from its members. Provided:
  VTIME_PER_SEC_SHIFT     = 37,
  VTIME_PER_SEC           = 1LLU << VTIME_PER_SEC_SHIFT,
  ...
  AUTOP_CYCLE_NSEC        = 10LLU * NSEC_PER_SEC,
the named type is unsigned long.

This generates warnings with gcc-13:
  block/blk-iocost.c: In function 'ioc_weight_prfill':
  block/blk-iocost.c:3037:37: error: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int'

  block/blk-iocost.c: In function 'ioc_weight_show':
  block/blk-iocost.c:3047:34: error: format '%u' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int'

So split the anonymous enum with large values to a separate enum, so
that they don't affect other members.

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36113

Cc: Martin Liska <mliska@suse.cz>
Cc: Tejun Heo <tj@kernel.org>
Cc: Josef Bacik <josef@toxicpanda.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: cgroups@vger.kernel.org
Cc: linux-block@vger.kernel.org
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Link: https://lore.kernel.org/r/20221213120826.17446-1-jirislaby@kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-12-14 09:56:10 -07:00
arch MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
block block/blk-iocost (gcc13): keep large values in a new enum 2022-12-14 09:56:10 -07:00
certs
crypto iov_iter work; most of that is about getting rid of 2022-12-12 18:29:54 -08:00
Documentation MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
drivers MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
fs MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
include MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
init modules changes for v6.2-rc1 2022-12-13 14:05:39 -08:00
io_uring for-6.2/block-2022-12-08 2022-12-13 10:43:59 -08:00
ipc Non-MM patches for 6.2-rc1. 2022-12-12 17:28:58 -08:00
kernel MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
lib MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
LICENSES
mm MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
net Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
rust
samples Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
scripts Networking changes for 6.2. 2022-12-13 15:47:48 -08:00
security integrity-v6.2 2022-12-13 14:22:50 -08:00
sound sound updates for 6.2-rc1 2022-12-13 11:27:26 -08:00
tools MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
usr
virt
.clang-format printk changes for 6.2 2022-12-12 09:01:36 -08:00
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap Non-MM patches for 6.2-rc1. 2022-12-12 17:28:58 -08:00
.rustfmt.toml
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MM patches for 6.2-rc1. 2022-12-13 19:29:45 -08:00
Makefile This was a not-too-busy cycle for documentation; highlights include: 2022-12-12 17:18:50 -08: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.