* [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations
@ 2026-03-30 14:30 Bastien Nocera
2026-03-30 14:30 ` [PATCH BlueZ 2/2] emulator: Remove compile-time header only glib dep Bastien Nocera
2026-03-31 14:00 ` [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations Luiz Augusto von Dentz
0 siblings, 2 replies; 4+ messages in thread
From: Bastien Nocera @ 2026-03-30 14:30 UTC (permalink / raw)
To: linux-bluetooth
And remove it from src/sdpd-request.c to avoid a redefinition warning
at compile-time.
---
src/sdpd-request.c | 2 --
src/shared/util.h | 6 ++++++
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/sdpd-request.c b/src/sdpd-request.c
index 1fc07e97bfe0..7c632c2aaf62 100644
--- a/src/sdpd-request.c
+++ b/src/sdpd-request.c
@@ -40,8 +40,6 @@ typedef struct {
#define SDP_CONT_STATE_SIZE (sizeof(uint8_t) + sizeof(sdp_cont_state_t))
-#define MIN(x, y) ((x) < (y)) ? (x): (y)
-
typedef struct sdp_cont_info sdp_cont_info_t;
struct sdp_cont_info {
diff --git a/src/shared/util.h b/src/shared/util.h
index c480351d6e9f..99a5aa2daf32 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -22,6 +22,12 @@
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
#define BIT(n) (1 << (n))
+#undef MIN
+#define MIN(a, b) ((a) > (b) ? (a) : (b))
+
+#undef MAX
+#define MAX(a, b) ((a) < (b) ? (a) : (b))
+
#if __BYTE_ORDER == __LITTLE_ENDIAN
#define le16_to_cpu(val) (val)
#define le32_to_cpu(val) (val)
--
2.53.0
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH BlueZ 2/2] emulator: Remove compile-time header only glib dep
2026-03-30 14:30 [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations Bastien Nocera
@ 2026-03-30 14:30 ` Bastien Nocera
2026-03-31 14:00 ` [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations Luiz Augusto von Dentz
1 sibling, 0 replies; 4+ messages in thread
From: Bastien Nocera @ 2026-03-30 14:30 UTC (permalink / raw)
To: linux-bluetooth
btvirt relied on a glib header macro to use MIN/MAX, but didn't link
against it, meaning that it was dependent on other programs in the
project using glib to compile correctly.
Remove the include and use our own implementation instead.
---
emulator/btdev.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/emulator/btdev.c b/emulator/btdev.c
index d3a9c6735ff1..3a295b679f34 100644
--- a/emulator/btdev.c
+++ b/emulator/btdev.c
@@ -25,8 +25,6 @@
#include <fcntl.h>
#include <unistd.h>
-#include <glib.h>
-
#include "bluetooth/bluetooth.h"
#include "bluetooth/hci.h"
--
2.53.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations
2026-03-30 14:30 [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations Bastien Nocera
2026-03-30 14:30 ` [PATCH BlueZ 2/2] emulator: Remove compile-time header only glib dep Bastien Nocera
@ 2026-03-31 14:00 ` Luiz Augusto von Dentz
2026-03-31 21:37 ` Bastien Nocera
1 sibling, 1 reply; 4+ messages in thread
From: Luiz Augusto von Dentz @ 2026-03-31 14:00 UTC (permalink / raw)
To: Bastien Nocera; +Cc: linux-bluetooth
Hi Bastien,
On Mon, Mar 30, 2026 at 10:42 AM Bastien Nocera <hadess@hadess.net> wrote:
>
> And remove it from src/sdpd-request.c to avoid a redefinition warning
> at compile-time.
> ---
> src/sdpd-request.c | 2 --
> src/shared/util.h | 6 ++++++
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/src/sdpd-request.c b/src/sdpd-request.c
> index 1fc07e97bfe0..7c632c2aaf62 100644
> --- a/src/sdpd-request.c
> +++ b/src/sdpd-request.c
> @@ -40,8 +40,6 @@ typedef struct {
>
> #define SDP_CONT_STATE_SIZE (sizeof(uint8_t) + sizeof(sdp_cont_state_t))
>
> -#define MIN(x, y) ((x) < (y)) ? (x): (y)
> -
> typedef struct sdp_cont_info sdp_cont_info_t;
>
> struct sdp_cont_info {
> diff --git a/src/shared/util.h b/src/shared/util.h
> index c480351d6e9f..99a5aa2daf32 100644
> --- a/src/shared/util.h
> +++ b/src/shared/util.h
> @@ -22,6 +22,12 @@
> #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
> #define BIT(n) (1 << (n))
>
> +#undef MIN
> +#define MIN(a, b) ((a) > (b) ? (a) : (b))
> +
> +#undef MAX
> +#define MAX(a, b) ((a) < (b) ? (a) : (b))
This is causing many tests to fail with `make check`. It looks like
the conditions are wrong, so MIN works as MAX and vice versa.
> #if __BYTE_ORDER == __LITTLE_ENDIAN
> #define le16_to_cpu(val) (val)
> #define le32_to_cpu(val) (val)
> --
> 2.53.0
>
>
--
Luiz Augusto von Dentz
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations
2026-03-31 14:00 ` [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations Luiz Augusto von Dentz
@ 2026-03-31 21:37 ` Bastien Nocera
0 siblings, 0 replies; 4+ messages in thread
From: Bastien Nocera @ 2026-03-31 21:37 UTC (permalink / raw)
To: Luiz Augusto von Dentz; +Cc: linux-bluetooth
On Tue, 2026-03-31 at 10:00 -0400, Luiz Augusto von Dentz wrote:
> Hi Bastien,
>
> On Mon, Mar 30, 2026 at 10:42 AM Bastien Nocera <hadess@hadess.net>
> wrote:
> >
> > And remove it from src/sdpd-request.c to avoid a redefinition
> > warning
> > at compile-time.
> > ---
> > src/sdpd-request.c | 2 --
> > src/shared/util.h | 6 ++++++
> > 2 files changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/src/sdpd-request.c b/src/sdpd-request.c
> > index 1fc07e97bfe0..7c632c2aaf62 100644
> > --- a/src/sdpd-request.c
> > +++ b/src/sdpd-request.c
> > @@ -40,8 +40,6 @@ typedef struct {
> >
> > #define SDP_CONT_STATE_SIZE (sizeof(uint8_t) +
> > sizeof(sdp_cont_state_t))
> >
> > -#define MIN(x, y) ((x) < (y)) ? (x): (y)
> > -
> > typedef struct sdp_cont_info sdp_cont_info_t;
> >
> > struct sdp_cont_info {
> > diff --git a/src/shared/util.h b/src/shared/util.h
> > index c480351d6e9f..99a5aa2daf32 100644
> > --- a/src/shared/util.h
> > +++ b/src/shared/util.h
> > @@ -22,6 +22,12 @@
> > #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
> > #define BIT(n) (1 << (n))
> >
> > +#undef MIN
> > +#define MIN(a, b) ((a) > (b) ? (a) : (b))
> > +
> > +#undef MAX
> > +#define MAX(a, b) ((a) < (b) ? (a) : (b))
>
> This is causing many tests to fail with `make check`. It looks like
> the conditions are wrong, so MIN works as MAX and vice versa.
Whoops, fixed.
>
> > #if __BYTE_ORDER == __LITTLE_ENDIAN
> > #define le16_to_cpu(val) (val)
> > #define le32_to_cpu(val) (val)
> > --
> > 2.53.0
> >
> >
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-03-31 21:37 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-30 14:30 [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations Bastien Nocera
2026-03-30 14:30 ` [PATCH BlueZ 2/2] emulator: Remove compile-time header only glib dep Bastien Nocera
2026-03-31 14:00 ` [PATCH BlueZ 1/2] shared/util: Add MIN/MAX implementations Luiz Augusto von Dentz
2026-03-31 21:37 ` Bastien Nocera
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox