All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andre Przywara <andre.przywara@arm.com>
To: Will Deacon <will@kernel.org>,
	Julien Thierry <julien.thierry.kdev@gmail.com>
Cc: kvm@vger.kernel.org,
	"Alexandru Elisei" <alexandru.elisei@arm.com>,
	"J . Neuschäfer" <j.neuschaefer@gmx.net>
Subject: [PATCH kvmtool] remove wordsize.h inclusion (for musl compatibility)
Date: Thu,  1 Aug 2024 12:10:54 +0100	[thread overview]
Message-ID: <20240801111054.818765-1-andre.przywara@arm.com> (raw)

The wordsize.h header file and the __WORDSIZE definition do not seem
to be universal, the musl libc for instance has the definition in a
different header file. This breaks compilation of kvmtool against musl.

The two leading underscores suggest a compiler-internal symbol anyway, so
let's just remove that particular macro usage entirely, and replace it
with the number we really want: the size of a "long" type.

Reported-by: J. Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
Hi,

can someone test this on a proper/pure musl installation? I tested this
with Ubuntu's musl-gcc wrapper, but this didn't show the problem before,
so I guess there are subtle differences.

Cheers,
Andre

 include/linux/bitops.h | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/include/linux/bitops.h b/include/linux/bitops.h
index ae33922f5..ee8fd5609 100644
--- a/include/linux/bitops.h
+++ b/include/linux/bitops.h
@@ -1,15 +1,13 @@
 #ifndef _KVM_LINUX_BITOPS_H_
 #define _KVM_LINUX_BITOPS_H_
 
-#include <bits/wordsize.h>
-
 #include <linux/kernel.h>
 #include <linux/compiler.h>
 #include <asm/hweight.h>
 
-#define BITS_PER_LONG __WORDSIZE
 #define BITS_PER_BYTE           8
-#define BITS_TO_LONGS(nr)       DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long))
+#define BITS_PER_LONG           (BITS_PER_BYTE * sizeof(long))
+#define BITS_TO_LONGS(nr)       DIV_ROUND_UP(nr, BITS_PER_LONG)
 
 #define BIT_WORD(nr)		((nr) / BITS_PER_LONG)
 
-- 
2.25.1


             reply	other threads:[~2024-08-01 11:11 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-01 11:10 Andre Przywara [this message]
2024-08-02  9:55 ` [PATCH kvmtool] remove wordsize.h inclusion (for musl compatibility) Alexandru Elisei
2024-08-04 23:15 ` J. Neuschäfer
2024-08-05 13:43 ` Will Deacon

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=20240801111054.818765-1-andre.przywara@arm.com \
    --to=andre.przywara@arm.com \
    --cc=alexandru.elisei@arm.com \
    --cc=j.neuschaefer@gmx.net \
    --cc=julien.thierry.kdev@gmail.com \
    --cc=kvm@vger.kernel.org \
    --cc=will@kernel.org \
    /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 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.