From patchwork Mon Feb 12 11:54:58 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Max Kellermann X-Patchwork-Id: 199696 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:50ea:b0:106:860b:bbdd with SMTP id r10csp2381109dyd; Mon, 12 Feb 2024 04:03:39 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCVn504kSzsKtjMCzfT8ejqKaOhOP+VbJx+cldYQ36w2gL4iTrDphZBCVujGugHnvJIbT4jvrP4ypEdSYd5pn7RPTblNUw== X-Google-Smtp-Source: AGHT+IE65vAUYo2vFwhN2ywRemuacuG1CJa5Y1FHOj4ex2XRSjS9o3/AmipMsfsg/k6+w6pIaZNQ X-Received: by 2002:a50:ee03:0:b0:560:fd6c:e52d with SMTP id g3-20020a50ee03000000b00560fd6ce52dmr4372756eds.11.1707739419233; Mon, 12 Feb 2024 04:03:39 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707739419; cv=pass; d=google.com; s=arc-20160816; b=A3dg7fenfLxyVv0bzgTSZBKCsQgAGVISS0Tb5VQpwFrvliPdUZ/s3u7MR/DF0OpVyf rxsvO5bzxdAPUa3buQYqSI2B0oAbU0BugXkTTzZm5Ks8Lc9qYKHfqcKdmBxjrBgeHib7 nLyyr7fq7Jwmi8HSPM/XRxyn/YDoj+3Rjar59nI+hgCv70MDwxsyipES1j6Oe9AE+A3y B0aoJKf1flWu/hK7BA3K9U8zJVLRo9qA9RTzGf0ofHsL4xkkNTd3oHRssRvOjX3WPR2m +oHknrQ5FJoZzjYSDCOFothtuQOP6EXb3k+iZePFpAY5G6M3Fyip1Fm53iiYlRvdqyxy HLZA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=PqBKyioLpQMwRvtX600aSZdz3rsEJrSU++0tqKocH9w=; fh=QI5ueUbPoMB+LGiOqdFV3vMijaIuA0iuDahcC+mMx3E=; b=S1FVLGVyhkGUvlL0iwDTMcaprM0mXYQXP8IgLdsrxBE6nYycDNnUFpNNkjT6+jQj3c /i1o3DS1JiE98p1KElNVsRqhBqnkvG2V+h7cBdo7s90XTl2QHAanf51T0zg+4jflVtN7 wIjaPxLBIJt09jiJeldiLcI1X/XOMcLI73qxdLr+V/HT8ldfYbZyv5U7bAWw9fYRPJOU pD1rEVjVN56Ir5MnnMZnWZmu36FqABlggMXqK8F1Z6Mdn53MPcluouHIhVJUQxAbBZgO hsL9eJtkSPN/xtCh/wuJ1B1MPRYUc8SUJg84cEo8ILZFmVSliDrztq9AgzYKQ6gsRafl 3RqQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@ionos.com header.s=google header.b="d0QhNL/m"; arc=pass (i=1 spf=pass spfdomain=ionos.com dkim=pass dkdomain=ionos.com dmarc=pass fromdomain=ionos.com); spf=pass (google.com: domain of linux-kernel+bounces-61494-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-61494-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=ionos.com X-Forwarded-Encrypted: i=2; AJvYcCU76Y1e+RRUDda6dFiHPQamf4xb2fx4OELXIgDTlK5Q377PQELB/EEMi52guDuV4Vv0GS+gtTtAfqudNKvGbLQQNfJ2XA== Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [2604:1380:4601:e00::3]) by mx.google.com with ESMTPS id 17-20020a508e51000000b00560e82e36b4si2781434edx.551.2024.02.12.04.03.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Feb 2024 04:03:39 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-61494-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) client-ip=2604:1380:4601:e00::3; Authentication-Results: mx.google.com; dkim=pass header.i=@ionos.com header.s=google header.b="d0QhNL/m"; arc=pass (i=1 spf=pass spfdomain=ionos.com dkim=pass dkdomain=ionos.com dmarc=pass fromdomain=ionos.com); spf=pass (google.com: domain of linux-kernel+bounces-61494-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-kernel+bounces-61494-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=ionos.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 9B5C81F21708 for ; Mon, 12 Feb 2024 12:03:38 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 14A073D0A4; Mon, 12 Feb 2024 11:56:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b="d0QhNL/m" Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B461B3D3BA for ; Mon, 12 Feb 2024 11:55:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707738951; cv=none; b=G8TIRxWoQUWGpvvqWSm3TkNtlEXB5+WA+zjgc+U9k/11bNXTfyGkbX7I7vgHQh4cSiRvgmt7g4llOoNvWiJ/LFrsUlCjbRYZobLmOERS4PuRtllnY2rbT9Ih50YmEU91Jn8WXsL4f2CDZ3gSB2Y3fPayVxeDjV8p3yp2YYjoXL0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707738951; c=relaxed/simple; bh=oqTjgZO+W1UzsOe79uc/PF43jC2mJyk1Zod+Zl8WRFM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=BvK5FRWjuEjMf9A/OLCKcLOyagCF7w+vCrEeUlSnGz13/2wNd7ibDO54A2a2j1pvF51tyyP+N6PzGJvsGReJnYiZKCgiVHqyk8pRjG9s//99R2IFghq+s8b8JIv2jN2H3Y3BI2l5t3eGGf9yA300pIz9UWa9FioNwyhKXp/xris= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ionos.com; spf=pass smtp.mailfrom=ionos.com; dkim=pass (2048-bit key) header.d=ionos.com header.i=@ionos.com header.b=d0QhNL/m; arc=none smtp.client-ip=209.85.218.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ionos.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ionos.com Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-a3122b70439so389521966b.3 for ; Mon, 12 Feb 2024 03:55:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ionos.com; s=google; t=1707738946; x=1708343746; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PqBKyioLpQMwRvtX600aSZdz3rsEJrSU++0tqKocH9w=; b=d0QhNL/mBW/YvGuuSYFBdqx83fMDvQ74MY0YKFgcdDSgGBNfWico0s2dWd9jPU7xvz KBQDkX3MEOppxO1KF5SxueiYx/tFlBBnQA8RcUdubaHKKsMOXrWOw9/rILhcxxWaVdxu RD5uSKF9oz0d16mo3Af3aX9DknhaJS6n2OMBmoDAyfsaWNo6E/bWjPCpxx9+GGB/S8YW fiobHmZCK/8D4VnQfOZ/9L+PEK3Ufb1fSUgx4yZzxfehOtsFBQMsW0t4q+bv1kV6BY5I TKRS4re8Z3I0dLaZvkdM/qIQJM8ZuobGIDBpGIcxPRZicSpue1fV9BtQ03MDOU8HyrKd Sy5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707738946; x=1708343746; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PqBKyioLpQMwRvtX600aSZdz3rsEJrSU++0tqKocH9w=; b=AOtN507W+1LchAPSZ+56M6MDU2a5VeOCDR2Hwwrlws9DmHiJXeCCkMIZnnpcFUqvnd FHGYnIyPpcQ3wT8GlzF5Zjx234xf1/4luE1WP/HIh4z1QdAew2W+xw5gYv2ahXo5pqJ/ mZIegfgcVV46sysLQEIWe6CehuJvODV+FL5uoVByM+UhQYbat6xsNBsJ5DhWTdHJQrUb JTtqKMoSPUf1XjapGFnzg/soZFz1lBZ0eTKrf5PUOXVcTYZs8DM9OURCbzwlymgeP7Vi 1k6kzZpGRnUcPBJ6SUH0UqSDxvaAbjxVNysHH3S0Ra/khASJtGv3b0lh1qgMK1fWgLD3 ZuFg== X-Gm-Message-State: AOJu0Ywl8wDQfHRbEsSWKjkrCK/3NgufblyAVpT1AQW378K6n85i0Hiq 6qRtU/EexaAVUj7IUcrPXktSoEJ2k8YbjvKBG5Emf3Khd9E1v3a9PpxkyrwXfQxPq1O8jgOTKdb x X-Received: by 2002:a17:906:3489:b0:a3c:e69:a62b with SMTP id g9-20020a170906348900b00a3c0e69a62bmr4723747ejb.26.1707738945874; Mon, 12 Feb 2024 03:55:45 -0800 (PST) Received: from raven.blarg.de (p200300dc6f267100023064fffe740809.dip0.t-ipconnect.de. [2003:dc:6f26:7100:230:64ff:fe74:809]) by smtp.gmail.com with ESMTPSA id m1-20020a17090607c100b00a36c3e2e52dsm139203ejc.61.2024.02.12.03.55.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Feb 2024 03:55:45 -0800 (PST) From: Max Kellermann To: linux-kernel@vger.kernel.org Cc: Max Kellermann Subject: [PATCH v5 33/35] linux/kernel.h: move upper/lower_*_bits macros to wordpart.h Date: Mon, 12 Feb 2024 12:54:58 +0100 Message-Id: <20240212115500.2078463-34-max.kellermann@ionos.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240212115500.2078463-1-max.kellermann@ionos.com> References: <20240212115500.2078463-1-max.kellermann@ionos.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1790694569296121682 X-GMAIL-MSGID: 1790694569296121682 Reducing dependencies on the header linux/kernel.h. Signed-off-by: Max Kellermann --- arch/arm64/include/asm/syscall.h | 2 +- arch/arm64/kvm/handle_exit.c | 2 +- drivers/bus/uniphier-system-bus.c | 2 +- drivers/irqchip/irq-gic-v3-its.c | 1 + drivers/spi/spi-pci1xxxx.c | 1 + fs/hfs/hfs_fs.h | 2 +- fs/hfsplus/hfsplus_fs.h | 2 +- include/drm/drm_fixed.h | 2 +- include/linux/dma-fence.h | 2 +- include/linux/goldfish.h | 2 +- include/linux/kernel.h | 29 +---------------------------- include/linux/qed/common_hsi.h | 1 + include/linux/wordpart.h | 28 ++++++++++++++++++++++++++++ include/rdma/uverbs_ioctl.h | 3 ++- include/soc/fsl/bman.h | 2 ++ include/soc/fsl/qman.h | 1 + 16 files changed, 45 insertions(+), 37 deletions(-) diff --git a/arch/arm64/include/asm/syscall.h b/arch/arm64/include/asm/syscall.h index 107ada608694..e5f462cc1a54 100644 --- a/arch/arm64/include/asm/syscall.h +++ b/arch/arm64/include/asm/syscall.h @@ -8,7 +8,7 @@ #include #include #include -#include // for lower_32_bits() +#include // for lower_32_bits() typedef long (*syscall_fn_t)(const struct pt_regs *regs); diff --git a/arch/arm64/kvm/handle_exit.c b/arch/arm64/kvm/handle_exit.c index a82b4b31bb36..91bd5b701acf 100644 --- a/arch/arm64/kvm/handle_exit.c +++ b/arch/arm64/kvm/handle_exit.c @@ -10,7 +10,7 @@ #include #include -#include // for upper_32_bits(), lower_32_bits() +#include // for lower_32_bits(), upper_32_bits() #include #include diff --git a/drivers/bus/uniphier-system-bus.c b/drivers/bus/uniphier-system-bus.c index 8cffdb089a6b..8949a7a5c170 100644 --- a/drivers/bus/uniphier-system-bus.c +++ b/drivers/bus/uniphier-system-bus.c @@ -6,7 +6,7 @@ #include #include // for upper_32_bits(), lower_32_bits() #include -#include // for upper_32_bits() +#include // for upper_32_bits() #include #include #include diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c index 1be09abac7cc..2b33edb78c26 100644 --- a/drivers/irqchip/irq-gic-v3-its.c +++ b/drivers/irqchip/irq-gic-v3-its.c @@ -30,6 +30,7 @@ #include #include #include +#include // for lower_32_bits(), upper_32_bits() #include #include diff --git a/drivers/spi/spi-pci1xxxx.c b/drivers/spi/spi-pci1xxxx.c index ab99aac85eb9..1ff89d726927 100644 --- a/drivers/spi/spi-pci1xxxx.c +++ b/drivers/spi/spi-pci1xxxx.c @@ -9,6 +9,7 @@ #include #include #include +#include // for upper_32_bits(), lower_32_bits() #include #include #include diff --git a/fs/hfs/hfs_fs.h b/fs/hfs/hfs_fs.h index 71ebbed52f5f..99e54ff4df83 100644 --- a/fs/hfs/hfs_fs.h +++ b/fs/hfs/hfs_fs.h @@ -17,7 +17,7 @@ #include #include -#include // for lower_32_bits() +#include // for lower_32_bits() #include #include #include diff --git a/fs/hfsplus/hfsplus_fs.h b/fs/hfsplus/hfsplus_fs.h index 157dad01495f..79cac82d050e 100644 --- a/fs/hfsplus/hfsplus_fs.h +++ b/fs/hfsplus/hfsplus_fs.h @@ -21,7 +21,7 @@ #include #include #include -#include // for lower_32_bits() +#include // for lower_32_bits() #include "hfsplus_raw.h" #define DBG_BNODE_REFS 0x00000001 diff --git a/include/drm/drm_fixed.h b/include/drm/drm_fixed.h index 0c9f917a4d4b..ff9a91fa40b6 100644 --- a/include/drm/drm_fixed.h +++ b/include/drm/drm_fixed.h @@ -25,7 +25,7 @@ #ifndef DRM_FIXED_H #define DRM_FIXED_H -#include +#include // for lower_32_bits() #include typedef union dfixed { diff --git a/include/linux/dma-fence.h b/include/linux/dma-fence.h index 3081ff146d41..308d77098e21 100644 --- a/include/linux/dma-fence.h +++ b/include/linux/dma-fence.h @@ -16,7 +16,7 @@ #include #include #include -#include // for lower_32_bits() +#include // for lower_32_bits() #include #include #include diff --git a/include/linux/goldfish.h b/include/linux/goldfish.h index bcc17f95b906..8b2b3046f779 100644 --- a/include/linux/goldfish.h +++ b/include/linux/goldfish.h @@ -2,7 +2,7 @@ #ifndef __LINUX_GOLDFISH_H #define __LINUX_GOLDFISH_H -#include +#include // for lower_32_bits(), upper_32_bits() #include #include diff --git a/include/linux/kernel.h b/include/linux/kernel.h index ac332f4deed9..6f436367dd16 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -32,6 +32,7 @@ #include #include #include +#include #include #include @@ -47,34 +48,6 @@ } \ ) -/** - * upper_32_bits - return bits 32-63 of a number - * @n: the number we're accessing - * - * A basic shift-right of a 64- or 32-bit quantity. Use this to suppress - * the "right shift count >= width of type" warning when that quantity is - * 32-bits. - */ -#define upper_32_bits(n) ((u32)(((n) >> 16) >> 16)) - -/** - * lower_32_bits - return bits 0-31 of a number - * @n: the number we're accessing - */ -#define lower_32_bits(n) ((u32)((n) & 0xffffffff)) - -/** - * upper_16_bits - return bits 16-31 of a number - * @n: the number we're accessing - */ -#define upper_16_bits(n) ((u16)((n) >> 16)) - -/** - * lower_16_bits - return bits 0-15 of a number - * @n: the number we're accessing - */ -#define lower_16_bits(n) ((u16)((n) & 0xffff)) - void do_exit(long error_code) __noreturn; extern int get_option(char **str, int *pint); diff --git a/include/linux/qed/common_hsi.h b/include/linux/qed/common_hsi.h index 827624840ee2..11482394d7f3 100644 --- a/include/linux/qed/common_hsi.h +++ b/include/linux/qed/common_hsi.h @@ -11,6 +11,7 @@ #include #include #include +#include // for upper_32_bits() /* dma_addr_t manip */ #define PTR_LO(x) ((u32)(((uintptr_t)(x)) & 0xffffffff)) diff --git a/include/linux/wordpart.h b/include/linux/wordpart.h index c9e6bd773ebd..a73f0c84a03a 100644 --- a/include/linux/wordpart.h +++ b/include/linux/wordpart.h @@ -10,4 +10,32 @@ */ #define REPEAT_BYTE(x) ((~0ul / 0xff) * (x)) +/** + * upper_32_bits - return bits 32-63 of a number + * @n: the number we're accessing + * + * A basic shift-right of a 64- or 32-bit quantity. Use this to suppress + * the "right shift count >= width of type" warning when that quantity is + * 32-bits. + */ +#define upper_32_bits(n) ((u32)(((n) >> 16) >> 16)) + +/** + * lower_32_bits - return bits 0-31 of a number + * @n: the number we're accessing + */ +#define lower_32_bits(n) ((u32)((n) & 0xffffffff)) + +/** + * upper_16_bits - return bits 16-31 of a number + * @n: the number we're accessing + */ +#define upper_16_bits(n) ((u16)((n) >> 16)) + +/** + * lower_16_bits - return bits 0-15 of a number + * @n: the number we're accessing + */ +#define lower_16_bits(n) ((u16)((n) & 0xffff)) + #endif // _LINUX_WORDPART_H diff --git a/include/rdma/uverbs_ioctl.h b/include/rdma/uverbs_ioctl.h index 049f381b16c0..6d7776438ef6 100644 --- a/include/rdma/uverbs_ioctl.h +++ b/include/rdma/uverbs_ioctl.h @@ -7,8 +7,9 @@ #define _UVERBS_IOCTL_ #include -#include // for u64_to_user_ptr(), upper_32_bits(), lower_32_bits() +#include // for u64_to_user_ptr() #include +#include #include #include #include diff --git a/include/soc/fsl/bman.h b/include/soc/fsl/bman.h index 173e4049d963..b01d8c0ac204 100644 --- a/include/soc/fsl/bman.h +++ b/include/soc/fsl/bman.h @@ -31,6 +31,8 @@ #ifndef __FSL_BMAN_H #define __FSL_BMAN_H +#include // for upper_32_bits() + /* wrapper for 48-bit buffers */ struct bm_buffer { union { diff --git a/include/soc/fsl/qman.h b/include/soc/fsl/qman.h index 0d3d6beb7fdb..c5230a844114 100644 --- a/include/soc/fsl/qman.h +++ b/include/soc/fsl/qman.h @@ -33,6 +33,7 @@ #include #include +#include // for upper_32_bits() /* Hardware constants */ #define QM_CHANNEL_SWPORTAL0 0