From: Ulf Hansson <ulf.hansson@linaro.org>
To: "Jason A. Donenfeld" <Jason@zx2c4.com>
Cc: linux-wireless@vger.kernel.org, x86@kernel.org,
"Vignesh Raghavendra" <vigneshr@ti.com>,
linux-doc@vger.kernel.org,
"Peter Zijlstra" <peterz@infradead.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Dave Hansen" <dave.hansen@linux.intel.com>,
kernel-janitors@vger.kernel.org, "KP Singh" <kpsingh@kernel.org>,
dri-devel@lists.freedesktop.org, patches@lists.linux.dev,
linux-mm@kvack.org, "Eric Dumazet" <edumazet@google.com>,
netdev@vger.kernel.org, linux-mtd@lists.infradead.org,
kasan-dev@googlegroups.com, "H . Peter Anvin" <hpa@zytor.com>,
"Andreas Noever" <andreas.noever@gmail.com>,
"WANG Xuerui" <kernel@xen0n.name>,
"Will Deacon" <will@kernel.org>, "Christoph Hellwig" <hch@lst.de>,
linux-s390@vger.kernel.org, sparclinux@vger.kernel.org,
"Mauro Carvalho Chehab" <mchehab@kernel.org>,
"Herbert Xu" <herbert@gondor.apana.org.au>,
"Daniel Borkmann" <daniel@iogearbox.net>,
"Jonathan Corbet" <corbet@lwn.net>,
linux-rdma@vger.kernel.org,
"Michael Ellerman" <mpe@ellerman.id.au>,
"Helge Deller" <deller@gmx.de>,
"Huacai Chen" <chenhuacai@kernel.org>,
"Hugh Dickins" <hughd@google.com>,
"Russell King" <linux@armlinux.org.uk>,
"Christophe Leroy" <christophe.leroy@csgroup.eu>,
"Jozsef Kadlecsik" <kadlec@netfilter.org>,
"Jason Gunthorpe" <jgg@ziepe.ca>,
"Dave Airlie" <airlied@redhat.com>,
"Paolo Abeni" <pabeni@redhat.com>,
"James E . J . Bottomley" <jejb@linux.ibm.com>,
"Pablo Neira Ayuso" <pablo@netfilter.org>,
linux-media@vger.kernel.org, "Marco Elver" <elver@google.com>,
"Kees Cook" <keescook@chromium.org>,
"Yury Norov" <yury.norov@gmail.com>,
"Heiko Carstens" <hca@linux.ibm.com>,
linux-um@lists.infradead.org, linux-mips@vger.kernel.org,
linux-block@vger.kernel.org,
"Richard Weinberger" <richard@nod.at>,
"Borislav Petkov" <bp@alien8.de>,
linux-nvme@lists.infradead.org, loongarch@lists.linux.dev,
"Jakub Kicinski" <kuba@kernel.org>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Johannes Berg" <johannes@sipsolutions.net>,
linux-arm-kernel@lists.infradead.org,
"Jens Axboe" <axboe@kernel.dk>,
linux-mmc@vger.kernel.org,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
"Theodore Ts'o" <tytso@mit.edu>,
linux-parisc@vger.kernel.org,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
linux-usb@vger.kernel.org, "Florian Westphal" <fw@strlen.de>,
linux-kernel@vger.kernel.org,
"Christoph Böhmwalder" <christoph.boehmwalder@linbit.com>,
linux-crypto@vger.kernel.org, "Jan Kara" <jack@suse.com>,
"Thomas Graf" <tgraf@suug.ch>,
linux-fsdevel@vger.kernel.org,
"Andrew Morton" <akpm@linux-foundation.org>,
linuxppc-dev@lists.ozlabs.org,
"David S . Miller" <davem@davemloft.net>
Subject: Re: [PATCH v3 0/5] treewide cleanup of random integer usage
Date: Fri, 7 Oct 2022 11:11:54 +0200 [thread overview]
Message-ID: <CAPDyKFoTLHULeGJMgDxGKci+HvHjE6K8G1JLuYmXHCch+=WUKw@mail.gmail.com> (raw)
In-Reply-To: <20221006165346.73159-1-Jason@zx2c4.com>
On Thu, 6 Oct 2022 at 18:54, Jason A. Donenfeld <Jason@zx2c4.com> wrote:
>
> Changes v2->v3:
> - Handle get_random_int() conversions too, which were overlooked before,
> in the same way as the rest.
>
> Hi folks,
>
> This is a five part treewide cleanup of random integer handling. The
> rules for random integers are:
>
> - If you want a secure or an insecure random u64, use get_random_u64().
> - If you want a secure or an insecure random u32, use get_random_u32().
> * The old function prandom_u32() has been deprecated for a while now
> and is just a wrapper around get_random_u32(). Same for
> get_random_int().
> - If you want a secure or an insecure random u16, use get_random_u16().
> - If you want a secure or an insecure random u8, use get_random_u8().
> - If you want secure or insecure random bytes, use get_random_bytes().
> * The old function prandom_bytes() has been deprecated for a while now
> and has long been a wrapper around get_random_bytes().
> - If you want a non-uniform random u32, u16, or u8 bounded by a certain
> open interval maximum, use prandom_u32_max().
> * I say "non-uniform", because it doesn't do any rejection sampling or
> divisions. Hence, it stays within the prandom_* namespace.
>
> These rules ought to be applied uniformly, so that we can clean up the
> deprecated functions, and earn the benefits of using the modern
> functions. In particular, in addition to the boring substitutions, this
> patchset accomplishes a few nice effects:
>
> - By using prandom_u32_max() with an upper-bound that the compiler can
> prove at compile-time is ≤65536 or ≤256, internally get_random_u16()
> or get_random_u8() is used, which wastes fewer batched random bytes,
> and hence has higher throughput.
>
> - By using prandom_u32_max() instead of %, when the upper-bound is not a
> constant, division is still avoided, because prandom_u32_max() uses
> a faster multiplication-based trick instead.
>
> - By using get_random_u16() or get_random_u8() in cases where the return
> value is intended to indeed be a u16 or a u8, we waste fewer batched
> random bytes, and hence have higher throughput.
>
> So, based on those rules and benefits from following them, this patchset
> breaks down into the following five steps, which were done mostly
> manually:
>
> 1) Replace `prandom_u32() % max` and variants thereof with
> prandom_u32_max(max).
>
> 2) Replace `(type)get_random_u32()` and variants thereof with
> get_random_u16() or get_random_u8(). I took the pains to actually
> look and see what every lvalue type was across the entire tree.
>
> 3) Replace remaining deprecated uses of prandom_u32() and
> get_random_int() with get_random_u32().
>
> 4) Replace remaining deprecated uses of prandom_bytes() with
> get_random_bytes().
>
> 5) Remove the deprecated and now-unused prandom_u32() and
> prandom_bytes() inline wrapper functions.
>
> I was thinking of taking this through my random.git tree (on which this
> series is currently based) and submitting it near the end of the merge
> window, or waiting for the very end of the 6.1 cycle when there will be
> the fewest new patches brewing. If somebody with some treewide-cleanup
> experience might share some wisdom about what the best timing usually
> winds up being, I'm all ears.
>
> Please take a look! At "379 insertions(+), 422 deletions(-)", this
> should be a somewhat small patchset to review, despite it having the
> scary "treewide" moniker on it.
>
> Thanks,
> Jason
>
> Cc: Andreas Noever <andreas.noever@gmail.com>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: Christoph Böhmwalder <christoph.boehmwalder@linbit.com>
> Cc: Christoph Hellwig <hch@lst.de>
> Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
> Cc: Daniel Borkmann <daniel@iogearbox.net>
> Cc: Dave Airlie <airlied@redhat.com>
> Cc: Dave Hansen <dave.hansen@linux.intel.com>
> Cc: David S. Miller <davem@davemloft.net>
> Cc: Eric Dumazet <edumazet@google.com>
> Cc: Florian Westphal <fw@strlen.de>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
> Cc: H. Peter Anvin <hpa@zytor.com>
> Cc: Heiko Carstens <hca@linux.ibm.com>
> Cc: Helge Deller <deller@gmx.de>
> Cc: Herbert Xu <herbert@gondor.apana.org.au>
> Cc: Huacai Chen <chenhuacai@kernel.org>
> Cc: Hugh Dickins <hughd@google.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: James E.J. Bottomley <jejb@linux.ibm.com>
> Cc: Jan Kara <jack@suse.com>
> Cc: Jason Gunthorpe <jgg@ziepe.ca>
> Cc: Jens Axboe <axboe@kernel.dk>
> Cc: Johannes Berg <johannes@sipsolutions.net>
> Cc: Jonathan Corbet <corbet@lwn.net>
> Cc: Jozsef Kadlecsik <kadlec@netfilter.org>
> Cc: KP Singh <kpsingh@kernel.org>
> Cc: Kees Cook <keescook@chromium.org>
> Cc: Marco Elver <elver@google.com>
> Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Cc: Pablo Neira Ayuso <pablo@netfilter.org>
> Cc: Paolo Abeni <pabeni@redhat.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Richard Weinberger <richard@nod.at>
> Cc: Russell King <linux@armlinux.org.uk>
> Cc: Theodore Ts'o <tytso@mit.edu>
> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Thomas Graf <tgraf@suug.ch>
> Cc: Ulf Hansson <ulf.hansson@linaro.org>
> Cc: Vignesh Raghavendra <vigneshr@ti.com>
> Cc: WANG Xuerui <kernel@xen0n.name>
> Cc: Will Deacon <will@kernel.org>
> Cc: Yury Norov <yury.norov@gmail.com>
> Cc: dri-devel@lists.freedesktop.org
> Cc: kasan-dev@googlegroups.com
> Cc: kernel-janitors@vger.kernel.org
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-block@vger.kernel.org
> Cc: linux-crypto@vger.kernel.org
> Cc: linux-doc@vger.kernel.org
> Cc: linux-fsdevel@vger.kernel.org
> Cc: linux-media@vger.kernel.org
> Cc: linux-mips@vger.kernel.org
> Cc: linux-mm@kvack.org
> Cc: linux-mmc@vger.kernel.org
> Cc: linux-mtd@lists.infradead.org
> Cc: linux-nvme@lists.infradead.org
> Cc: linux-parisc@vger.kernel.org
> Cc: linux-rdma@vger.kernel.org
> Cc: linux-s390@vger.kernel.org
> Cc: linux-um@lists.infradead.org
> Cc: linux-usb@vger.kernel.org
> Cc: linux-wireless@vger.kernel.org
> Cc: linuxppc-dev@lists.ozlabs.org
> Cc: loongarch@lists.linux.dev
> Cc: netdev@vger.kernel.org
> Cc: sparclinux@vger.kernel.org
> Cc: x86@kernel.org
>
> Jason A. Donenfeld (5):
> treewide: use prandom_u32_max() when possible
> treewide: use get_random_{u8,u16}() when possible
> treewide: use get_random_u32() when possible
> treewide: use get_random_bytes when possible
> prandom: remove unused functions
>
> Documentation/networking/filter.rst | 2 +-
> arch/arm/kernel/process.c | 2 +-
> arch/arm/kernel/signal.c | 2 +-
> arch/arm64/kernel/process.c | 2 +-
> arch/arm64/kernel/syscall.c | 2 +-
> arch/loongarch/kernel/process.c | 2 +-
> arch/loongarch/kernel/vdso.c | 2 +-
> arch/mips/kernel/process.c | 2 +-
> arch/mips/kernel/vdso.c | 2 +-
> arch/parisc/kernel/process.c | 2 +-
> arch/parisc/kernel/sys_parisc.c | 4 +-
> arch/parisc/kernel/vdso.c | 2 +-
> arch/powerpc/crypto/crc-vpmsum_test.c | 2 +-
> arch/powerpc/kernel/process.c | 2 +-
> arch/s390/kernel/process.c | 4 +-
> arch/s390/kernel/vdso.c | 2 +-
> arch/s390/mm/mmap.c | 2 +-
> arch/sparc/vdso/vma.c | 2 +-
> arch/um/kernel/process.c | 2 +-
> arch/x86/entry/vdso/vma.c | 2 +-
> arch/x86/kernel/cpu/amd.c | 2 +-
> arch/x86/kernel/module.c | 2 +-
> arch/x86/kernel/process.c | 2 +-
> arch/x86/mm/pat/cpa-test.c | 4 +-
> block/blk-crypto-fallback.c | 2 +-
> crypto/async_tx/raid6test.c | 2 +-
> crypto/testmgr.c | 94 +++++++++----------
> drivers/block/drbd/drbd_receiver.c | 4 +-
> drivers/char/random.c | 11 +--
> drivers/dma/dmatest.c | 2 +-
> .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 2 +-
> drivers/gpu/drm/i915/i915_gem_gtt.c | 6 +-
> .../gpu/drm/i915/selftests/i915_selftest.c | 2 +-
> drivers/gpu/drm/selftests/test-drm_buddy.c | 2 +-
> drivers/gpu/drm/selftests/test-drm_mm.c | 2 +-
> drivers/infiniband/core/cma.c | 2 +-
> drivers/infiniband/hw/cxgb4/cm.c | 4 +-
> drivers/infiniband/hw/cxgb4/id_table.c | 4 +-
> drivers/infiniband/hw/hfi1/tid_rdma.c | 2 +-
> drivers/infiniband/hw/hns/hns_roce_ah.c | 5 +-
> drivers/infiniband/hw/mlx4/mad.c | 2 +-
> drivers/infiniband/ulp/ipoib/ipoib_cm.c | 2 +-
> drivers/infiniband/ulp/rtrs/rtrs-clt.c | 3 +-
> drivers/md/bcache/request.c | 2 +-
> drivers/md/raid5-cache.c | 2 +-
> drivers/media/common/v4l2-tpg/v4l2-tpg-core.c | 2 +-
> .../media/test-drivers/vivid/vivid-radio-rx.c | 4 +-
> .../test-drivers/vivid/vivid-touch-cap.c | 6 +-
> drivers/misc/habanalabs/gaudi2/gaudi2.c | 2 +-
> drivers/mmc/core/core.c | 4 +-
> drivers/mmc/host/dw_mmc.c | 2 +-
> drivers/mtd/nand/raw/nandsim.c | 8 +-
> drivers/mtd/tests/mtd_nandecctest.c | 12 +--
> drivers/mtd/tests/speedtest.c | 2 +-
> drivers/mtd/tests/stresstest.c | 19 +---
> drivers/mtd/ubi/debug.c | 2 +-
> drivers/mtd/ubi/debug.h | 6 +-
> drivers/net/bonding/bond_main.c | 2 +-
> drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
> drivers/net/ethernet/broadcom/cnic.c | 5 +-
> .../chelsio/inline_crypto/chtls/chtls_cm.c | 4 +-
> .../chelsio/inline_crypto/chtls/chtls_io.c | 4 +-
> drivers/net/ethernet/rocker/rocker_main.c | 8 +-
> drivers/net/hamradio/baycom_epp.c | 2 +-
> drivers/net/hamradio/hdlcdrv.c | 2 +-
> drivers/net/hamradio/yam.c | 2 +-
> drivers/net/phy/at803x.c | 2 +-
> drivers/net/wireguard/selftest/allowedips.c | 16 ++--
> .../broadcom/brcm80211/brcmfmac/p2p.c | 2 +-
> .../broadcom/brcm80211/brcmfmac/pno.c | 2 +-
> .../net/wireless/intel/iwlwifi/mvm/mac-ctxt.c | 2 +-
> .../net/wireless/marvell/mwifiex/cfg80211.c | 4 +-
> .../wireless/microchip/wilc1000/cfg80211.c | 2 +-
> .../net/wireless/quantenna/qtnfmac/cfg80211.c | 2 +-
> drivers/net/wireless/st/cw1200/wsm.c | 2 +-
> drivers/net/wireless/ti/wlcore/main.c | 2 +-
> drivers/nvme/common/auth.c | 2 +-
> drivers/scsi/cxgbi/cxgb4i/cxgb4i.c | 4 +-
> drivers/scsi/fcoe/fcoe_ctlr.c | 4 +-
> drivers/scsi/lpfc/lpfc_hbadisc.c | 6 +-
> drivers/scsi/qedi/qedi_main.c | 2 +-
> drivers/target/iscsi/cxgbit/cxgbit_cm.c | 2 +-
> drivers/thunderbolt/xdomain.c | 2 +-
> drivers/video/fbdev/uvesafb.c | 2 +-
> fs/ceph/inode.c | 2 +-
> fs/ceph/mdsmap.c | 2 +-
> fs/exfat/inode.c | 2 +-
> fs/ext2/ialloc.c | 3 +-
> fs/ext4/ialloc.c | 7 +-
> fs/ext4/ioctl.c | 4 +-
> fs/ext4/mmp.c | 2 +-
> fs/ext4/super.c | 7 +-
> fs/f2fs/gc.c | 2 +-
> fs/f2fs/namei.c | 2 +-
> fs/f2fs/segment.c | 8 +-
> fs/fat/inode.c | 2 +-
> fs/nfsd/nfs4state.c | 4 +-
> fs/ntfs3/fslog.c | 6 +-
> fs/ubifs/debug.c | 10 +-
> fs/ubifs/journal.c | 2 +-
> fs/ubifs/lpt_commit.c | 14 +--
> fs/ubifs/tnc_commit.c | 2 +-
> fs/xfs/libxfs/xfs_alloc.c | 2 +-
> fs/xfs/libxfs/xfs_ialloc.c | 4 +-
> fs/xfs/xfs_error.c | 2 +-
> fs/xfs/xfs_icache.c | 2 +-
> fs/xfs/xfs_log.c | 2 +-
> include/linux/nodemask.h | 2 +-
> include/linux/prandom.h | 12 ---
> include/linux/random.h | 5 -
> include/net/netfilter/nf_queue.h | 2 +-
> include/net/red.h | 2 +-
> include/net/sock.h | 2 +-
> kernel/bpf/bloom_filter.c | 2 +-
> kernel/bpf/core.c | 6 +-
> kernel/bpf/hashtab.c | 2 +-
> kernel/bpf/verifier.c | 2 +-
> kernel/kcsan/selftest.c | 4 +-
> kernel/locking/test-ww_mutex.c | 4 +-
> kernel/time/clocksource.c | 2 +-
> lib/cmdline_kunit.c | 4 +-
> lib/fault-inject.c | 2 +-
> lib/find_bit_benchmark.c | 4 +-
> lib/kobject.c | 2 +-
> lib/random32.c | 4 +-
> lib/reed_solomon/test_rslib.c | 12 +--
> lib/sbitmap.c | 4 +-
> lib/test-string_helpers.c | 2 +-
> lib/test_fprobe.c | 2 +-
> lib/test_hexdump.c | 10 +-
> lib/test_kasan.c | 6 +-
> lib/test_kprobes.c | 2 +-
> lib/test_list_sort.c | 2 +-
> lib/test_min_heap.c | 6 +-
> lib/test_objagg.c | 2 +-
> lib/test_rhashtable.c | 6 +-
> lib/test_vmalloc.c | 19 +---
> lib/uuid.c | 2 +-
> mm/migrate.c | 2 +-
> mm/shmem.c | 2 +-
> mm/slab.c | 2 +-
> mm/slub.c | 2 +-
> net/802/garp.c | 2 +-
> net/802/mrp.c | 2 +-
> net/ceph/mon_client.c | 2 +-
> net/ceph/osd_client.c | 2 +-
> net/core/neighbour.c | 2 +-
> net/core/pktgen.c | 47 +++++-----
> net/core/stream.c | 2 +-
> net/dccp/ipv4.c | 4 +-
> net/ipv4/datagram.c | 2 +-
> net/ipv4/igmp.c | 6 +-
> net/ipv4/inet_connection_sock.c | 2 +-
> net/ipv4/inet_hashtables.c | 2 +-
> net/ipv4/ip_output.c | 2 +-
> net/ipv4/route.c | 4 +-
> net/ipv4/tcp_cdg.c | 2 +-
> net/ipv4/tcp_ipv4.c | 4 +-
> net/ipv4/udp.c | 2 +-
> net/ipv6/addrconf.c | 8 +-
> net/ipv6/ip6_flowlabel.c | 2 +-
> net/ipv6/mcast.c | 10 +-
> net/ipv6/output_core.c | 2 +-
> net/mac80211/rc80211_minstrel_ht.c | 2 +-
> net/mac80211/scan.c | 2 +-
> net/netfilter/ipvs/ip_vs_conn.c | 2 +-
> net/netfilter/ipvs/ip_vs_twos.c | 4 +-
> net/netfilter/nf_nat_core.c | 4 +-
> net/netfilter/xt_statistic.c | 2 +-
> net/openvswitch/actions.c | 2 +-
> net/packet/af_packet.c | 2 +-
> net/rds/bind.c | 2 +-
> net/sched/act_gact.c | 2 +-
> net/sched/act_sample.c | 2 +-
> net/sched/sch_cake.c | 8 +-
> net/sched/sch_netem.c | 22 ++---
> net/sched/sch_pie.c | 2 +-
> net/sched/sch_sfb.c | 2 +-
> net/sctp/socket.c | 4 +-
> net/sunrpc/auth_gss/gss_krb5_wrap.c | 4 +-
> net/sunrpc/cache.c | 2 +-
> net/sunrpc/xprt.c | 2 +-
> net/sunrpc/xprtsock.c | 2 +-
> net/tipc/socket.c | 2 +-
> net/unix/af_unix.c | 2 +-
> net/xfrm/xfrm_state.c | 2 +-
> 186 files changed, 379 insertions(+), 422 deletions(-)
>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org> # For MMC
Kind regards
Uffe
prev parent reply other threads:[~2022-10-07 9:12 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-06 16:53 [PATCH v3 0/5] treewide cleanup of random integer usage Jason A. Donenfeld
2022-10-06 16:53 ` [PATCH v3 1/5] treewide: use prandom_u32_max() when possible Jason A. Donenfeld
2022-10-06 16:53 ` [PATCH v3 2/5] treewide: use get_random_{u8,u16}() " Jason A. Donenfeld
2022-10-06 16:53 ` [PATCH v3 3/5] treewide: use get_random_u32() " Jason A. Donenfeld
2022-10-06 17:21 ` Christophe Leroy
2022-10-06 17:24 ` Jason A. Donenfeld
2022-10-06 17:31 ` Christophe Leroy
2022-10-06 17:42 ` Christophe Leroy
2022-10-06 23:36 ` Jason A. Donenfeld
2022-10-07 4:57 ` Christophe Leroy
2022-10-07 14:07 ` Jason A. Donenfeld
2022-10-07 17:12 ` Kees Cook
2022-10-07 17:56 ` Jason A. Donenfeld
2022-10-08 21:53 ` David Laight
2022-10-09 2:57 ` Jason A. Donenfeld
2022-10-07 9:14 ` David Laight
2022-10-07 9:26 ` Mika Westerberg
2022-10-06 16:53 ` [PATCH v3 4/5] treewide: use get_random_bytes " Jason A. Donenfeld
2022-10-06 17:22 ` Christophe Leroy
2022-10-07 3:09 ` Bagas Sanjaya
2022-10-07 3:23 ` Jason A. Donenfeld
2022-10-06 16:53 ` [PATCH v3 5/5] prandom: remove unused functions Jason A. Donenfeld
2022-10-07 9:11 ` Ulf Hansson [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAPDyKFoTLHULeGJMgDxGKci+HvHjE6K8G1JLuYmXHCch+=WUKw@mail.gmail.com' \
--to=ulf.hansson@linaro.org \
--cc=Jason@zx2c4.com \
--cc=airlied@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=andreas.noever@gmail.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=axboe@kernel.dk \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=chenhuacai@kernel.org \
--cc=christoph.boehmwalder@linbit.com \
--cc=christophe.leroy@csgroup.eu \
--cc=corbet@lwn.net \
--cc=daniel@iogearbox.net \
--cc=dave.hansen@linux.intel.com \
--cc=davem@davemloft.net \
--cc=deller@gmx.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=edumazet@google.com \
--cc=elver@google.com \
--cc=fw@strlen.de \
--cc=gregkh@linuxfoundation.org \
--cc=hca@linux.ibm.com \
--cc=hch@lst.de \
--cc=herbert@gondor.apana.org.au \
--cc=hpa@zytor.com \
--cc=hughd@google.com \
--cc=jack@suse.com \
--cc=jejb@linux.ibm.com \
--cc=jgg@ziepe.ca \
--cc=johannes@sipsolutions.net \
--cc=kadlec@netfilter.org \
--cc=kasan-dev@googlegroups.com \
--cc=keescook@chromium.org \
--cc=kernel-janitors@vger.kernel.org \
--cc=kernel@xen0n.name \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-mmc@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-um@lists.infradead.org \
--cc=linux-usb@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=loongarch@lists.linux.dev \
--cc=mchehab@kernel.org \
--cc=mpe@ellerman.id.au \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pablo@netfilter.org \
--cc=patches@lists.linux.dev \
--cc=peterz@infradead.org \
--cc=richard@nod.at \
--cc=sparclinux@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=tgraf@suug.ch \
--cc=tsbogend@alpha.franken.de \
--cc=tytso@mit.edu \
--cc=vigneshr@ti.com \
--cc=will@kernel.org \
--cc=x86@kernel.org \
--cc=yury.norov@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).