lkml.org 
[lkml]   [2020]   [Feb]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v3] uml: make CONFIG_STATIC_LINK actually static
From
Date


On 24/01/2020 22:14, Brendan Higgins wrote:
> Currently, CONFIG_STATIC_LINK can be enabled with options which cannot
> be statically linked, namely UML_NET_VECTOR, UML_NET_VDE, and
> UML_NET_PCAP; this is because glibc tries to load NSS which does not
> support being statically linked. So make CONFIG_STATIC_LINK depend on
> !UML_NET_VECTOR && !UML_NET_VDE && !UML_NET_PCAP.
>
> Link: https://lore.kernel.org/lkml/f658f317-be54-ed75-8296-c373c2dcc697@cambridgegreys.com/#t
> Signed-off-by: Brendan Higgins <brendanhiggins@google.com>
> ---
> arch/um/Kconfig | 8 +++++++-
> arch/um/drivers/Kconfig | 3 +++
> 2 files changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/arch/um/Kconfig b/arch/um/Kconfig
> index 0917f8443c285..28d62151fb2ed 100644
> --- a/arch/um/Kconfig
> +++ b/arch/um/Kconfig
> @@ -62,9 +62,12 @@ config NR_CPUS
>
> source "arch/$(HEADER_ARCH)/um/Kconfig"
>
> +config FORBID_STATIC_LINK
> + bool
> +
> config STATIC_LINK
> bool "Force a static link"
> - default n
> + depends on !FORBID_STATIC_LINK
> help
> This option gives you the ability to force a static link of UML.
> Normally, UML is linked as a shared binary. This is inconvenient for
> @@ -73,6 +76,9 @@ config STATIC_LINK
> Additionally, this option enables using higher memory spaces (up to
> 2.75G) for UML.
>
> + NOTE: This option is incompatible with some networking features which
> + depend on features that require being dynamically loaded (like NSS).
> +
> config LD_SCRIPT_STATIC
> bool
> default y
> diff --git a/arch/um/drivers/Kconfig b/arch/um/drivers/Kconfig
> index 72d4170557820..9160ead56e33c 100644
> --- a/arch/um/drivers/Kconfig
> +++ b/arch/um/drivers/Kconfig
> @@ -234,6 +234,7 @@ config UML_NET_DAEMON
> config UML_NET_VECTOR
> bool "Vector I/O high performance network devices"
> depends on UML_NET
> + select FORBID_STATIC_LINK
> help
> This User-Mode Linux network driver uses multi-message send
> and receive functions. The host running the UML guest must have
> @@ -245,6 +246,7 @@ config UML_NET_VECTOR
> config UML_NET_VDE
> bool "VDE transport (obsolete)"
> depends on UML_NET
> + select FORBID_STATIC_LINK
> help
> This User-Mode Linux network transport allows one or more running
> UMLs on a single host to communicate with each other and also
> @@ -292,6 +294,7 @@ config UML_NET_MCAST
> config UML_NET_PCAP
> bool "pcap transport (obsolete)"
> depends on UML_NET
> + select FORBID_STATIC_LINK
> help
> The pcap transport makes a pcap packet stream on the host look
> like an ethernet device inside UML. This is useful for making
>

Acked-By: Anton Ivanov <anton.ivanov@cambridgegreys.com>

--
Anton R. Ivanov
Cambridgegreys Limited. Registered in England. Company Number 10273661
https://www.cambridgegreys.com/

\
 
 \ /
  Last update: 2020-02-10 15:56    [W:0.062 / U:0.344 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site