All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] kernel: add new infrastructure for platform_has() support
@ 2022-04-26 13:40 ` Juergen Gross via Virtualization
  0 siblings, 0 replies; 33+ messages in thread
From: Juergen Gross @ 2022-04-26 13:40 UTC (permalink / raw)
  To: linux-kernel, linux-arch, x86, linux-s390, linux-hyperv, virtualization
  Cc: Juergen Gross, Arnd Bergmann, Heiko Carstens, Vasily Gorbik,
	Alexander Gordeev, Christian Borntraeger, Sven Schnelle,
	Thomas Gleixner, Ingo Molnar, Borislav Petkov, Dave Hansen,
	H. Peter Anvin, K. Y. Srinivasan, Haiyang Zhang,
	Stephen Hemminger, Wei Liu, Dexuan Cui, Andy Lutomirski,
	Peter Zijlstra, Michael S. Tsirkin, Jason Wang,
	Christoph Hellwig, Oleksandr Tyshchenko

In another patch series [1] the need has come up to have support for
a generic feature flag infrastructure.

This patch series is introducing that infrastructure and adds the first
use case.

I have decided to use a similar interface as the already known x86
cpu_has() function. As the new infrastructure is meant to be usable for
general and arch-specific feature flags, the flags are being spread
between a general bitmap and an arch specific one.

The bitmaps start all being zero, single features can be set or reset
at any time by using the related platform_[re]set_feature() functions.

The platform_has() function is using a simple test_bit() call for now,
further optimization might be added when needed.

[1]: https://lore.kernel.org/lkml/1650646263-22047-1-git-send-email-olekstysh@gmail.com/T/#t

Juergen Gross (2):
  kernel: add platform_has() infrastructure
  virtio: replace arch_has_restricted_virtio_memory_access()

 MAINTAINERS                            |  8 +++++++
 arch/s390/Kconfig                      |  1 -
 arch/s390/mm/init.c                    | 13 +++--------
 arch/x86/Kconfig                       |  1 -
 arch/x86/kernel/cpu/mshyperv.c         |  5 ++++-
 arch/x86/mm/mem_encrypt.c              |  6 ------
 arch/x86/mm/mem_encrypt_identity.c     |  5 +++++
 drivers/virtio/Kconfig                 |  6 ------
 drivers/virtio/virtio.c                |  5 ++---
 include/asm-generic/Kbuild             |  1 +
 include/asm-generic/platform-feature.h |  8 +++++++
 include/linux/platform-feature.h       | 30 ++++++++++++++++++++++++++
 include/linux/virtio_config.h          |  9 --------
 kernel/Makefile                        |  2 +-
 kernel/platform-feature.c              |  7 ++++++
 15 files changed, 69 insertions(+), 38 deletions(-)
 create mode 100644 include/asm-generic/platform-feature.h
 create mode 100644 include/linux/platform-feature.h
 create mode 100644 kernel/platform-feature.c

-- 
2.34.1


^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2022-04-27 14:14 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-26 13:40 [PATCH 0/2] kernel: add new infrastructure for platform_has() support Juergen Gross
2022-04-26 13:40 ` Juergen Gross via Virtualization
2022-04-26 13:40 ` [PATCH 1/2] kernel: add platform_has() infrastructure Juergen Gross
2022-04-26 13:40   ` Juergen Gross via Virtualization
2022-04-26 17:31   ` Borislav Petkov
2022-04-26 17:31     ` Borislav Petkov
2022-04-26 19:53     ` Heiko Carstens
2022-04-26 20:09       ` Borislav Petkov
2022-04-26 20:09         ` Borislav Petkov
2022-04-27  6:20     ` Juergen Gross
2022-04-27  6:20       ` Juergen Gross via Virtualization
2022-04-26 13:40 ` [PATCH 2/2] virtio: replace arch_has_restricted_virtio_memory_access() Juergen Gross
2022-04-26 13:40   ` Juergen Gross via Virtualization
2022-04-26 17:35   ` Borislav Petkov
2022-04-26 17:35     ` Borislav Petkov
2022-04-26 19:51     ` Heiko Carstens
2022-04-27  6:40       ` Juergen Gross
2022-04-27  6:40         ` Juergen Gross via Virtualization
2022-04-27 12:26         ` Borislav Petkov
2022-04-27 12:26           ` Borislav Petkov
2022-04-27 12:45           ` Juergen Gross
2022-04-27 12:45             ` Juergen Gross via Virtualization
2022-04-27  6:37     ` Juergen Gross
2022-04-27  6:37       ` Juergen Gross via Virtualization
2022-04-27 12:28       ` Borislav Petkov
2022-04-27 12:28         ` Borislav Petkov
2022-04-27 12:37         ` Juergen Gross
2022-04-27 12:37           ` Juergen Gross via Virtualization
2022-04-27 14:09           ` Tom Lendacky
2022-04-27 14:09             ` Tom Lendacky via Virtualization
2022-04-27 14:14             ` Juergen Gross
2022-04-27 14:14               ` Juergen Gross via Virtualization
2022-04-27  7:48 ` [PATCH 0/2] kernel: add new infrastructure for platform_has() support Oleksandr

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.