Linux-HyperV List
 help / color / mirror / Atom feed
From: Wei Liu <wei.liu@kernel.org>
To: Adrian Vladu <avladu@cloudbasesolutions.com>,
	ssengar@linux.microsoft.com
Cc: "linux-hyperv@vger.kernel.org" <linux-hyperv@vger.kernel.org>,
	Alessandro Pilotti <apilotti@cloudbasesolutions.com>,
	Mathieu Tortuyaux <mtortuyaux@microsoft.com>,
	Wei Liu <wei.liu@kernel.org>
Subject: Re: kernel: fix hv tools build for arm64 when cross-built
Date: Mon, 9 Dec 2024 00:44:22 +0000	[thread overview]
Message-ID: <Z1Y9ZkAt9GPjQsGi@liuwe-devbox-debian-v2> (raw)
In-Reply-To: <PR3PR09MB54119DB2FD76977C62D8DD6AB04D2@PR3PR09MB5411.eurprd09.prod.outlook.com>

On Wed, Oct 23, 2024 at 02:01:12PM +0000, Adrian Vladu wrote:
> Hello,
> 
> While trying to build the LIS daemons for Flatcar Container Linux for
> ARM64 (https://www.flatcar.org/), as we are doing Gentoo based
> cross-building from X64 boxes, there was an error while building those
> daemons, because the cross-compile scenario was not working, as ` ARCH
> := $(shell uname -m 2>/dev/null)` always returns `x86_64`.
> 
> I have a working patch for the Linux kernel here that was already
> applied in the Flatcar context and it works:
> https://github.com/flatcar/scripts/blob/94b1df1b19449eb5aa967fd48ba4c1f4a6d5f415/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-sources/files/6.10/z0008-tools-hv-fix-cross-compilation-for-ARM64.patch
> 
> Raw patch link here:
> https://raw.githubusercontent.com/flatcar/scripts/94b1df1b19449eb5aa967fd48ba4c1f4a6d5f415/sdk_container/src/third_party/coreos-overlay/sys-kernel/coreos-sources/files/6.10/z0008-tools-hv-fix-cross-compilation-for-ARM64.patch
> 
> Sorry for the delivery method via github link, but I cannot send
> proper patches from my work email address currently, as the email
> server does not support it.
> 
> Please let me know if I need to send the patch via the recommended way
> or if the patch can be used directly.
> 
> Also, maybe there is a better way to address the cross-compilation
> issue, I just wanted to report the bug and also provide a possible
> fix.

Saurabh added the ARCH variable. He's CCed.

BTW I think your patch can be simplified by using
  ARCH ?= $(shell uname -m 2>/dev/null)
instead of the ifeq test in your patch.

I don't think that's correct. ARCH will be set to the correct value by
Kbuild. 

Saurabh and Adrian, can you test the following patch?

Thanks,
Wei.

From e6a1827887617c08172e2d0ee0d60549f5ccad65 Mon Sep 17 00:00:00 2001
From: Wei Liu <wei.liu@kernel.org>
Date: Mon, 9 Dec 2024 00:32:50 +0000
Subject: [PATCH] tools/hv: fix cross-compilation issue in hv tools

The Kbuild system sets ARCH to the correct value.

Signed-off-by: Wei Liu <wei.liu@kernel.org>
---
 tools/hv/Makefile | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/tools/hv/Makefile b/tools/hv/Makefile
index 34ffcec264ab..9008223279df 100644
--- a/tools/hv/Makefile
+++ b/tools/hv/Makefile
@@ -2,7 +2,6 @@
 # Makefile for Hyper-V tools
 include ../scripts/Makefile.include
 
-ARCH := $(shell uname -m 2>/dev/null)
 sbindir ?= /usr/sbin
 libexecdir ?= /usr/libexec
 sharedstatedir ?= /var/lib
@@ -20,7 +19,7 @@ override CFLAGS += -O2 -Wall -g -D_GNU_SOURCE -I$(OUTPUT)include
 override CFLAGS += -Wno-address-of-packed-member
 
 ALL_TARGETS := hv_kvp_daemon hv_vss_daemon
-ifneq ($(ARCH), aarch64)
+ifneq ($(ARCH), arm64)
 ALL_TARGETS += hv_fcopy_uio_daemon
 endif
 ALL_PROGRAMS := $(patsubst %,$(OUTPUT)%,$(ALL_TARGETS))
-- 
2.45.2


  reply	other threads:[~2024-12-09  0:44 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-23 14:01 kernel: fix hv tools build for arm64 when cross-built Adrian Vladu
2024-12-09  0:44 ` Wei Liu [this message]
2024-12-09  8:30   ` Saurabh Singh Sengar
2024-12-09 18:46     ` Wei Liu
2024-12-10  3:39       ` Saurabh Singh Sengar
2024-12-10 18:34         ` Wei Liu
2024-12-10 19:07           ` Wei Liu
2024-12-12  8:32             ` Saurabh Singh Sengar

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=Z1Y9ZkAt9GPjQsGi@liuwe-devbox-debian-v2 \
    --to=wei.liu@kernel.org \
    --cc=apilotti@cloudbasesolutions.com \
    --cc=avladu@cloudbasesolutions.com \
    --cc=linux-hyperv@vger.kernel.org \
    --cc=mtortuyaux@microsoft.com \
    --cc=ssengar@linux.microsoft.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