2023-05-13 16:31:12

by Pauli Virtanen

[permalink] [raw]
Subject: [PATCH BlueZ v3 1/2] test-runner: revert udevd and audio support

Tests running inside the VM don't need access to sound cards running on
the host.

This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
---
tools/test-runner.c | 108 ++------------------------------------------
1 file changed, 3 insertions(+), 105 deletions(-)

diff --git a/tools/test-runner.c b/tools/test-runner.c
index 6660ea8de..cd65c4cf0 100644
--- a/tools/test-runner.c
+++ b/tools/test-runner.c
@@ -54,7 +54,6 @@ static bool start_monitor = false;
static int num_devs = 0;
static const char *qemu_binary = NULL;
static const char *kernel_image = NULL;
-static bool audio_support;

static const char *qemu_table[] = {
"qemu-system-x86_64",
@@ -252,16 +251,14 @@ static void start_qemu(void)
"acpi=off pci=noacpi noapic quiet ro init=%s "
"TESTHOME=%s TESTDBUS=%u TESTDAEMON=%u "
"TESTDBUSSESSION=%u XDG_RUNTIME_DIR=/run/user/0 "
- "TESTAUDIO=%u "
"TESTMONITOR=%u TESTEMULATOR=%u TESTDEVS=%d "
"TESTAUTO=%u TESTARGS=\'%s\'",
initcmd, cwd, start_dbus, start_daemon,
- start_dbus_session, audio_support,
+ start_dbus_session,
start_monitor, start_emulator, num_devs,
run_auto, testargs);

argv = alloca(sizeof(qemu_argv) +
- (audio_support ? 4 : 0) +
(sizeof(char *) * (4 + (num_devs * 4))));
memcpy(argv, qemu_argv, sizeof(qemu_argv));

@@ -274,24 +271,6 @@ static void start_qemu(void)
}
argv[0] = (char *) qemu_binary;

- if (audio_support) {
- char *xdg_runtime_dir, *audiodev;
-
- xdg_runtime_dir = getenv("XDG_RUNTIME_DIR");
- if (!xdg_runtime_dir) {
- fprintf(stderr, "XDG_RUNTIME_DIR not set\n");
- exit(1);
- }
- audiodev = alloca(40 + strlen(xdg_runtime_dir));
- sprintf(audiodev, "id=audio,driver=pa,server=%s/pulse/native",
- xdg_runtime_dir);
-
- argv[pos++] = "-audiodev";
- argv[pos++] = audiodev;
- argv[pos++] = "-device";
- argv[pos++] = "AC97,audiodev=audio";
- }
-
argv[pos++] = "-kernel";
argv[pos++] = (char *) kernel_image;
argv[pos++] = "-append";
@@ -744,70 +723,13 @@ static pid_t start_btvirt(const char *home)
return pid;
}

-static void trigger_udev(void)
-{
- char *argv[3], *envp[1];
- pid_t pid;
-
- argv[0] = "/bin/udevadm";
- argv[1] = "trigger";
- argv[2] = NULL;
-
- envp[0] = NULL;
-
- printf("Triggering udev events\n");
-
- pid = fork();
- if (pid < 0) {
- perror("Failed to fork new process");
- return;
- }
-
- if (pid == 0) {
- execve(argv[0], argv, envp);
- exit(EXIT_SUCCESS);
- }
-
- printf("udev trigger process %d created\n", pid);
-}
-
-static pid_t start_udevd(void)
-{
- char *argv[2], *envp[1];
- pid_t pid;
-
- argv[0] = "/lib/systemd/systemd-udevd";
- argv[1] = NULL;
-
- envp[0] = NULL;
-
- printf("Starting udevd daemon\n");
-
- pid = fork();
- if (pid < 0) {
- perror("Failed to fork new process");
- return -1;
- }
-
- if (pid == 0) {
- execve(argv[0], argv, envp);
- exit(EXIT_SUCCESS);
- }
-
- printf("udevd daemon process %d created\n", pid);
-
- trigger_udev();
-
- return pid;
-}
-
static void run_command(char *cmdname, char *home)
{
char *argv[9], *envp[3];
int pos = 0, idx = 0;
int serial_fd;
pid_t pid, dbus_pid, daemon_pid, monitor_pid, emulator_pid,
- dbus_session_pid, udevd_pid;
+ dbus_session_pid;

if (!home) {
perror("Invalid parameter: TESTHOME");
@@ -828,11 +750,6 @@ static void run_command(char *cmdname, char *home)
} else
serial_fd = -1;

- if (audio_support)
- udevd_pid = start_udevd();
- else
- udevd_pid = -1;
-
if (start_dbus) {
create_dbus_system_conf();
dbus_pid = start_dbus_daemon(false);
@@ -961,11 +878,6 @@ start_next:
monitor_pid = -1;
}

- if (corpse == udevd_pid) {
- printf("udevd terminated\n");
- udevd_pid = -1;
- }
-
if (corpse == pid)
break;
}
@@ -990,9 +902,6 @@ start_next:
if (monitor_pid > 0)
kill(monitor_pid, SIGTERM);

- if (udevd_pid > 0)
- kill(udevd_pid, SIGTERM);
-
if (serial_fd >= 0)
close(serial_fd);
}
@@ -1073,12 +982,6 @@ static void run_tests(void)
start_emulator = true;
}

- ptr = strstr(cmdline, "TESTAUDIO=1");
- if (ptr) {
- printf("Audio support requested\n");
- audio_support = true;
- }
-
ptr = strstr(cmdline, "TESTHOME=");
if (ptr) {
home = ptr + 4;
@@ -1105,7 +1008,6 @@ static void usage(void)
"\t-u, --unix [path] Provide serial device\n"
"\t-q, --qemu <path> QEMU binary\n"
"\t-k, --kernel <image> Kernel image (bzImage)\n"
- "\t-A, --audio Add audio support\n"
"\t-h, --help Show help options\n");
}

@@ -1120,7 +1022,6 @@ static const struct option main_options[] = {
{ "monitor", no_argument, NULL, 'm' },
{ "qemu", required_argument, NULL, 'q' },
{ "kernel", required_argument, NULL, 'k' },
- { "audio", no_argument, NULL, 'A' },
{ "version", no_argument, NULL, 'v' },
{ "help", no_argument, NULL, 'h' },
{ }
@@ -1140,7 +1041,7 @@ int main(int argc, char *argv[])
for (;;) {
int opt;

- opt = getopt_long(argc, argv, "aubdslmq:k:Avh", main_options,
+ opt = getopt_long(argc, argv, "aubdslmq:k:vh", main_options,
NULL);
if (opt < 0)
break;
@@ -1174,9 +1075,6 @@ int main(int argc, char *argv[])
case 'k':
kernel_image = optarg;
break;
- case 'A':
- audio_support = true;
- break;
case 'v':
printf("%s\n", VERSION);
return EXIT_SUCCESS;
--
2.40.1



2023-05-13 16:31:12

by Pauli Virtanen

[permalink] [raw]
Subject: [PATCH BlueZ v3 2/2] tools/test-runner: add option to start Pipewire inside the VM

Add option for launching Pipewire inside the VM to serve Bluetooth
endpoints, which can be used in tests.

Make the option to optionally take path to the audio daemon, so e.g.
Pulseaudio support can be added later.
---
tools/test-runner.c | 149 ++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 145 insertions(+), 4 deletions(-)

diff --git a/tools/test-runner.c b/tools/test-runner.c
index cd65c4cf0..8b18f848a 100644
--- a/tools/test-runner.c
+++ b/tools/test-runner.c
@@ -54,6 +54,7 @@ static bool start_monitor = false;
static int num_devs = 0;
static const char *qemu_binary = NULL;
static const char *kernel_image = NULL;
+static char *audio_server;

static const char *qemu_table[] = {
"qemu-system-x86_64",
@@ -252,11 +253,11 @@ static void start_qemu(void)
"TESTHOME=%s TESTDBUS=%u TESTDAEMON=%u "
"TESTDBUSSESSION=%u XDG_RUNTIME_DIR=/run/user/0 "
"TESTMONITOR=%u TESTEMULATOR=%u TESTDEVS=%d "
- "TESTAUTO=%u TESTARGS=\'%s\'",
+ "TESTAUTO=%u TESTAUDIO='%s' TESTARGS=\'%s\'",
initcmd, cwd, start_dbus, start_daemon,
start_dbus_session,
start_monitor, start_emulator, num_devs,
- run_auto, testargs);
+ run_auto, audio_server, testargs);

argv = alloca(sizeof(qemu_argv) +
(sizeof(char *) * (4 + (num_devs * 4))));
@@ -723,13 +724,120 @@ static pid_t start_btvirt(const char *home)
return pid;
}

+static int create_pipewire_conf(void)
+{
+ static const char *const dirs[] = {
+ "/run/conf",
+ "/run/conf/wireplumber",
+ "/run/conf/wireplumber/bluetooth.lua.d",
+ "/run/conf/wireplumber/main.lua.d",
+ NULL
+ };
+ int i;
+ FILE *f;
+
+ for (i = 0; dirs[i]; ++i)
+ mkdir(dirs[i], 0755);
+
+ /* Enable only Bluetooth part, disable whatever requires user DBus */
+ f = fopen("/run/conf/wireplumber/main.lua.d/51-custom.lua", "w");
+ if (!f)
+ goto fail;
+
+ fprintf(f, "alsa_monitor.enabled = false\n"
+ "v4l2_monitor.enabled = false\n"
+ "libcamera_monitor.enabled = false\n"
+ "default_access.properties[\"enable-flatpak-portal\"]"
+ " = false\n");
+ fclose(f);
+
+ f = fopen("/run/conf/wireplumber/bluetooth.lua.d/51-custom.lua", "w");
+ if (!f)
+ goto fail;
+
+ fprintf(f, "bluez_monitor.properties[\"with-logind\"] = false\n"
+ "bluez_midi_monitor.enabled = false\n");
+ fclose(f);
+
+ return 0;
+
+fail:
+ perror("Failed to create Pipewire config");
+ return -1;
+}
+
+static int start_audio_server(pid_t pids[2])
+{
+ char *daemons[2] = {NULL, NULL};
+ char wp_exe[PATH_MAX];
+ char *ptr;
+ char *envp[5];
+ int i;
+
+ for (i = 0; i < 2; ++i)
+ pids[i] = -1;
+
+ daemons[0] = audio_server;
+
+ ptr = strrchr(audio_server, '/');
+ if (ptr && !strcmp(ptr, "/pipewire")) {
+ if (create_pipewire_conf())
+ return -1;
+
+ snprintf(wp_exe, sizeof(wp_exe), "%.*s/wireplumber",
+ (int)(ptr - audio_server), audio_server);
+ daemons[1] = wp_exe;
+
+ setenv("PIPEWIRE_RUNTIME_DIR", "/run", 1);
+ }
+
+ envp[0] = "DBUS_SYSTEM_BUS_ADDRESS=unix:"
+ "path=/run/dbus/system_bus_socket";
+ envp[1] = "XDG_CONFIG_HOME=/run/conf";
+ envp[2] = "XDG_STATE_HOME=/run";
+ envp[3] = "XDG_RUNTIME_DIR=/run";
+ envp[4] = NULL;
+
+ for (i = 0; i < 2; ++i) {
+ const char *daemon = daemons[i];
+ char *argv[2];
+ pid_t pid;
+
+ if (!daemon)
+ continue;
+
+ printf("Starting audio server %s\n", daemon);
+
+ argv[0] = (char *) daemon;
+ argv[1] = NULL;
+
+ pid = fork();
+ if (pid < 0) {
+ perror("Failed to fork new process");
+ return -1;
+ }
+
+ if (pid == 0) {
+ execve(argv[0], argv, envp);
+ exit(EXIT_SUCCESS);
+ }
+
+ pids[i] = pid;
+
+ printf("Audio server process %d created\n", pid);
+ }
+
+ return 0;
+}
+
static void run_command(char *cmdname, char *home)
{
char *argv[9], *envp[3];
int pos = 0, idx = 0;
int serial_fd;
pid_t pid, dbus_pid, daemon_pid, monitor_pid, emulator_pid,
- dbus_session_pid;
+ dbus_session_pid, audio_pid[2];
+ int i;

if (!home) {
perror("Invalid parameter: TESTHOME");
@@ -777,6 +885,11 @@ static void run_command(char *cmdname, char *home)
else
emulator_pid = -1;

+ if (audio_server)
+ start_audio_server(audio_pid);
+ else
+ audio_pid[0] = audio_pid[1] = -1;
+
start_next:
if (run_auto) {
if (chdir(home + 5) < 0) {
@@ -878,6 +991,13 @@ start_next:
monitor_pid = -1;
}

+ for (i = 0; i < 2; ++i) {
+ if (corpse == audio_pid[i]) {
+ printf("Audio server %d terminated\n", i);
+ audio_pid[i] = -1;
+ }
+ }
+
if (corpse == pid)
break;
}
@@ -887,6 +1007,11 @@ start_next:
goto start_next;
}

+ for (i = 0; i < 2; ++i) {
+ if (audio_pid[i] > 0)
+ kill(audio_pid[i], SIGTERM);
+ }
+
if (daemon_pid > 0)
kill(daemon_pid, SIGTERM);

@@ -982,6 +1107,17 @@ static void run_tests(void)
start_emulator = true;
}

+ ptr = strstr(cmdline, "TESTAUDIO='");
+ if (ptr) {
+ const char *start = ptr + 11;
+ const char *end = strchr(start, '\'');
+
+ if (end) {
+ audio_server = strndup(start, end - start);
+ printf("Audio server %s requested\n", audio_server);
+ }
+ }
+
ptr = strstr(cmdline, "TESTHOME=");
if (ptr) {
home = ptr + 4;
@@ -1005,6 +1141,7 @@ static void usage(void)
"\t-d, --daemon Start bluetoothd\n"
"\t-m, --monitor Start btmon\n"
"\t-l, --emulator Start btvirt\n"
+ "\t-A, --audio[=path] Start audio server\n"
"\t-u, --unix [path] Provide serial device\n"
"\t-q, --qemu <path> QEMU binary\n"
"\t-k, --kernel <image> Kernel image (bzImage)\n"
@@ -1022,6 +1159,7 @@ static const struct option main_options[] = {
{ "monitor", no_argument, NULL, 'm' },
{ "qemu", required_argument, NULL, 'q' },
{ "kernel", required_argument, NULL, 'k' },
+ { "audio", optional_argument, NULL, 'A' },
{ "version", no_argument, NULL, 'v' },
{ "help", no_argument, NULL, 'h' },
{ }
@@ -1041,7 +1179,7 @@ int main(int argc, char *argv[])
for (;;) {
int opt;

- opt = getopt_long(argc, argv, "aubdslmq:k:vh", main_options,
+ opt = getopt_long(argc, argv, "aubdslmq:k:A::vh", main_options,
NULL);
if (opt < 0)
break;
@@ -1075,6 +1213,9 @@ int main(int argc, char *argv[])
case 'k':
kernel_image = optarg;
break;
+ case 'A':
+ audio_server = optarg ? optarg : "/usr/bin/pipewire";
+ break;
case 'v':
printf("%s\n", VERSION);
return EXIT_SUCCESS;
--
2.40.1


2023-05-13 17:41:42

by bluez.test.bot

[permalink] [raw]
Subject: RE: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273

---Test result---

Test Summary:
CheckPatch FAIL 1.14 seconds
GitLint PASS 0.52 seconds
BuildEll PASS 26.21 seconds
BluezMake PASS 745.32 seconds
MakeCheck PASS 11.04 seconds
MakeDistcheck PASS 151.18 seconds
CheckValgrind PASS 243.86 seconds
CheckSmatch PASS 326.99 seconds
bluezmakeextell PASS 98.83 seconds
IncrementalBuild PASS 1262.88 seconds
ScanBuild WARNING 964.73 seconds

Details
##############################
Test: CheckPatch - FAIL
Desc: Run checkpatch.pl script
Output:
[BlueZ,v3,1/2] test-runner: revert udevd and audio support
WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
#49:
This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88

WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
#50:
This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f

/github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
mechanically convert to the typical style using --fix or --fix-inplace.

/github/workspace/src/src/13240258.patch has style problems, please review.

NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO

NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.


##############################
Test: ScanBuild - WARNING
Desc: Run Scan Build
Output:
tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
printf("Running command %s\n", cmdname ? cmdname : argv[0]);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.



---
Regards,
Linux Bluetooth

2023-05-15 20:11:07

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Pauli,

On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
>
> This is automated email and please do not reply to this email!
>
> Dear submitter,
>
> Thank you for submitting the patches to the linux bluetooth mailing list.
> This is a CI test results with your patch series:
> PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
>
> ---Test result---
>
> Test Summary:
> CheckPatch FAIL 1.14 seconds
> GitLint PASS 0.52 seconds
> BuildEll PASS 26.21 seconds
> BluezMake PASS 745.32 seconds
> MakeCheck PASS 11.04 seconds
> MakeDistcheck PASS 151.18 seconds
> CheckValgrind PASS 243.86 seconds
> CheckSmatch PASS 326.99 seconds
> bluezmakeextell PASS 98.83 seconds
> IncrementalBuild PASS 1262.88 seconds
> ScanBuild WARNING 964.73 seconds
>
> Details
> ##############################
> Test: CheckPatch - FAIL
> Desc: Run checkpatch.pl script
> Output:
> [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> #49:
> This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
>
> WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> #50:
> This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
>
> /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
>
> NOTE: For some of the reported defects, checkpatch may be able to
> mechanically convert to the typical style using --fix or --fix-inplace.
>
> /github/workspace/src/src/13240258.patch has style problems, please review.
>
> NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
>
> NOTE: If any of the errors are false positives, please report
> them to the maintainer, see CHECKPATCH in MAINTAINERS.
>
>
> ##############################
> Test: ScanBuild - WARNING
> Desc: Run Scan Build
> Output:
> tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 1 warning generated.
>
>
>
> ---
> Regards,
> Linux Bluetooth

I tried running on fedora but it looks like something is missing in my setup:

[E][00003.767959] spa.dbus | [ dbus.c: 329
impl_connection_get()] Failed to connect to session bus: Unable to
autolaun1
[E][00003.769967] mod.portal | [ module-portal.c: 326
pipewire__module_init()] Failed to connect to session bus:
Input/output error


--
Luiz Augusto von Dentz

2023-05-15 20:53:13

by Pauli Virtanen

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Luiz,

ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> Hi Pauli,
>
> On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> >
> > This is automated email and please do not reply to this email!
> >
> > Dear submitter,
> >
> > Thank you for submitting the patches to the linux bluetooth mailing list.
> > This is a CI test results with your patch series:
> > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> >
> > ---Test result---
> >
> > Test Summary:
> > CheckPatch FAIL 1.14 seconds
> > GitLint PASS 0.52 seconds
> > BuildEll PASS 26.21 seconds
> > BluezMake PASS 745.32 seconds
> > MakeCheck PASS 11.04 seconds
> > MakeDistcheck PASS 151.18 seconds
> > CheckValgrind PASS 243.86 seconds
> > CheckSmatch PASS 326.99 seconds
> > bluezmakeextell PASS 98.83 seconds
> > IncrementalBuild PASS 1262.88 seconds
> > ScanBuild WARNING 964.73 seconds
> >
> > Details
> > ##############################
> > Test: CheckPatch - FAIL
> > Desc: Run checkpatch.pl script
> > Output:
> > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > #49:
> > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> >
> > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > #50:
> > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> >
> > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> >
> > NOTE: For some of the reported defects, checkpatch may be able to
> > mechanically convert to the typical style using --fix or --fix-inplace.
> >
> > /github/workspace/src/src/13240258.patch has style problems, please review.
> >
> > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> >
> > NOTE: If any of the errors are false positives, please report
> > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> >
> >
> > ##############################
> > Test: ScanBuild - WARNING
> > Desc: Run Scan Build
> > Output:
> > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > 1 warning generated.
> >
> >
> >
> > ---
> > Regards,
> > Linux Bluetooth
>
> I tried running on fedora but it looks like something is missing in my setup:
>
> [E][00003.767959] spa.dbus | [ dbus.c: 329
> impl_connection_get()] Failed to connect to session bus: Unable to
> autolaun1
> [E][00003.769967] mod.portal | [ module-portal.c: 326
> pipewire__module_init()] Failed to connect to session bus:
> Input/output error

I have those two "errors" too, they should be harmless as the xdg-
desktop-portal module is optional. With `test-runner -d -l -A` you
should get the Bluetooth endpoints to appear.

Removing the mod.portal from the configuration can't be done with drop-
in config files currently, and I didn't want to include a full config
file here as it has some tens of lines of mandatory boilerplate.

--
Pauli Virtanen

2023-05-17 19:42:55

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Pauli,

On Mon, May 15, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
>
> Hi Luiz,
>
> ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> > Hi Pauli,
> >
> > On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> > >
> > > This is automated email and please do not reply to this email!
> > >
> > > Dear submitter,
> > >
> > > Thank you for submitting the patches to the linux bluetooth mailing list.
> > > This is a CI test results with your patch series:
> > > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> > >
> > > ---Test result---
> > >
> > > Test Summary:
> > > CheckPatch FAIL 1.14 seconds
> > > GitLint PASS 0.52 seconds
> > > BuildEll PASS 26.21 seconds
> > > BluezMake PASS 745.32 seconds
> > > MakeCheck PASS 11.04 seconds
> > > MakeDistcheck PASS 151.18 seconds
> > > CheckValgrind PASS 243.86 seconds
> > > CheckSmatch PASS 326.99 seconds
> > > bluezmakeextell PASS 98.83 seconds
> > > IncrementalBuild PASS 1262.88 seconds
> > > ScanBuild WARNING 964.73 seconds
> > >
> > > Details
> > > ##############################
> > > Test: CheckPatch - FAIL
> > > Desc: Run checkpatch.pl script
> > > Output:
> > > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > > #49:
> > > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> > >
> > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > > #50:
> > > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> > >
> > > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> > >
> > > NOTE: For some of the reported defects, checkpatch may be able to
> > > mechanically convert to the typical style using --fix or --fix-inplace.
> > >
> > > /github/workspace/src/src/13240258.patch has style problems, please review.
> > >
> > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> > >
> > > NOTE: If any of the errors are false positives, please report
> > > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> > >
> > >
> > > ##############################
> > > Test: ScanBuild - WARNING
> > > Desc: Run Scan Build
> > > Output:
> > > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > 1 warning generated.
> > >
> > >
> > >
> > > ---
> > > Regards,
> > > Linux Bluetooth
> >
> > I tried running on fedora but it looks like something is missing in my setup:
> >
> > [E][00003.767959] spa.dbus | [ dbus.c: 329
> > impl_connection_get()] Failed to connect to session bus: Unable to
> > autolaun1
> > [E][00003.769967] mod.portal | [ module-portal.c: 326
> > pipewire__module_init()] Failed to connect to session bus:
> > Input/output error
>
> I have those two "errors" too, they should be harmless as the xdg-
> desktop-portal module is optional. With `test-runner -d -l -A` you
> should get the Bluetooth endpoints to appear.
>
> Removing the mod.portal from the configuration can't be done with drop-
> in config files currently, and I didn't want to include a full config
> file here as it has some tens of lines of mandatory boilerplate.

Ok, looks like it configuring the endpoints:

https://gist.github.com/Vudentz/0d8851e719affd9f2dc1f4081ce32fb7

That said I probably need to compile pipewire from source in order to
have the LE Audio endpoints registered, btw do you have any
instructions on how to build it, do I need to build wireplumber as
well?

>
> --
> Pauli Virtanen



--
Luiz Augusto von Dentz

2023-05-17 19:57:28

by patchwork-bot+bluetooth

[permalink] [raw]
Subject: Re: [PATCH BlueZ v3 1/2] test-runner: revert udevd and audio support

Hello:

This series was applied to bluetooth/bluez.git (master)
by Luiz Augusto von Dentz <[email protected]>:

On Sat, 13 May 2023 16:08:36 +0000 you wrote:
> Tests running inside the VM don't need access to sound cards running on
> the host.
>
> This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> ---
> tools/test-runner.c | 108 ++------------------------------------------
> 1 file changed, 3 insertions(+), 105 deletions(-)

Here is the summary with links:
- [BlueZ,v3,1/2] test-runner: revert udevd and audio support
https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=a0a10f8c9d78
- [BlueZ,v3,2/2] tools/test-runner: add option to start Pipewire inside the VM
https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=86b8d4192dbd

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



2023-05-17 20:32:12

by Pauli Virtanen

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Luiz,

ke, 2023-05-17 kello 12:34 -0700, Luiz Augusto von Dentz kirjoitti:
> Hi Pauli,
>
> On Mon, May 15, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> >
> > Hi Luiz,
> >
> > ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> > > Hi Pauli,
> > >
> > > On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> > > >
> > > > This is automated email and please do not reply to this email!
> > > >
> > > > Dear submitter,
> > > >
> > > > Thank you for submitting the patches to the linux bluetooth mailing list.
> > > > This is a CI test results with your patch series:
> > > > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> > > >
> > > > ---Test result---
> > > >
> > > > Test Summary:
> > > > CheckPatch FAIL 1.14 seconds
> > > > GitLint PASS 0.52 seconds
> > > > BuildEll PASS 26.21 seconds
> > > > BluezMake PASS 745.32 seconds
> > > > MakeCheck PASS 11.04 seconds
> > > > MakeDistcheck PASS 151.18 seconds
> > > > CheckValgrind PASS 243.86 seconds
> > > > CheckSmatch PASS 326.99 seconds
> > > > bluezmakeextell PASS 98.83 seconds
> > > > IncrementalBuild PASS 1262.88 seconds
> > > > ScanBuild WARNING 964.73 seconds
> > > >
> > > > Details
> > > > ##############################
> > > > Test: CheckPatch - FAIL
> > > > Desc: Run checkpatch.pl script
> > > > Output:
> > > > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > > > #49:
> > > > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> > > >
> > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > > > #50:
> > > > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> > > >
> > > > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> > > >
> > > > NOTE: For some of the reported defects, checkpatch may be able to
> > > > mechanically convert to the typical style using --fix or --fix-inplace.
> > > >
> > > > /github/workspace/src/src/13240258.patch has style problems, please review.
> > > >
> > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> > > >
> > > > NOTE: If any of the errors are false positives, please report
> > > > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> > > >
> > > >
> > > > ##############################
> > > > Test: ScanBuild - WARNING
> > > > Desc: Run Scan Build
> > > > Output:
> > > > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > > > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > > 1 warning generated.
> > > >
> > > >
> > > >
> > > > ---
> > > > Regards,
> > > > Linux Bluetooth
> > >
> > > I tried running on fedora but it looks like something is missing in my setup:
> > >
> > > [E][00003.767959] spa.dbus | [ dbus.c: 329
> > > impl_connection_get()] Failed to connect to session bus: Unable to
> > > autolaun1
> > > [E][00003.769967] mod.portal | [ module-portal.c: 326
> > > pipewire__module_init()] Failed to connect to session bus:
> > > Input/output error
> >
> > I have those two "errors" too, they should be harmless as the xdg-
> > desktop-portal module is optional. With `test-runner -d -l -A` you
> > should get the Bluetooth endpoints to appear.
> >
> > Removing the mod.portal from the configuration can't be done with drop-
> > in config files currently, and I didn't want to include a full config
> > file here as it has some tens of lines of mandatory boilerplate.
>
> Ok, looks like it configuring the endpoints:
>
> https://gist.github.com/Vudentz/0d8851e719affd9f2dc1f4081ce32fb7
>
> That said I probably need to compile pipewire from source in order to
> have the LE Audio endpoints registered, btw do you have any
> instructions on how to build it, do I need to build wireplumber as
> well?

Should be along these lines to install under $PWD/install and enable
BAP parts:

git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
cd pipewire
LDFLAGS="-Wl,-rpath=$PWD/install/lib64" \
meson setup builddir --prefix=$PWD/install \
-Dsystemd-user-service=disabled \
-Dudevrulesdir=$PWD/install/lib/udev/rules.d \
-Dbluez5-codec-lc3=enabled
meson install -C builddir

Meson will clone and install Wireplumber too. Turning experimental on
in src/main.conf and it should give

$ ./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage sleep 5
...
bluetoothd[29]: profiles/audio/media.c:endpoint_init_pac() PAC :1.1:/MediaEndpointLE/BAPSource/lc3 registered
bluetoothd[29]: Endpoint registered: sender=:1.1 path=/MediaEndpointLE/BAPSource/lc3
bluetoothd[29]: profiles/audio/media.c:client_ready_cb() Media application registered: :1.1:/MediaEndpointLE
...

--
Pauli Virtanen

2023-05-17 21:06:05

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Pauli,

On Wed, May 17, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
>
> Hi Luiz,
>
> ke, 2023-05-17 kello 12:34 -0700, Luiz Augusto von Dentz kirjoitti:
> > Hi Pauli,
> >
> > On Mon, May 15, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > >
> > > Hi Luiz,
> > >
> > > ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > Hi Pauli,
> > > >
> > > > On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> > > > >
> > > > > This is automated email and please do not reply to this email!
> > > > >
> > > > > Dear submitter,
> > > > >
> > > > > Thank you for submitting the patches to the linux bluetooth mailing list.
> > > > > This is a CI test results with your patch series:
> > > > > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> > > > >
> > > > > ---Test result---
> > > > >
> > > > > Test Summary:
> > > > > CheckPatch FAIL 1.14 seconds
> > > > > GitLint PASS 0.52 seconds
> > > > > BuildEll PASS 26.21 seconds
> > > > > BluezMake PASS 745.32 seconds
> > > > > MakeCheck PASS 11.04 seconds
> > > > > MakeDistcheck PASS 151.18 seconds
> > > > > CheckValgrind PASS 243.86 seconds
> > > > > CheckSmatch PASS 326.99 seconds
> > > > > bluezmakeextell PASS 98.83 seconds
> > > > > IncrementalBuild PASS 1262.88 seconds
> > > > > ScanBuild WARNING 964.73 seconds
> > > > >
> > > > > Details
> > > > > ##############################
> > > > > Test: CheckPatch - FAIL
> > > > > Desc: Run checkpatch.pl script
> > > > > Output:
> > > > > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > > > > #49:
> > > > > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> > > > >
> > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > > > > #50:
> > > > > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> > > > >
> > > > > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> > > > >
> > > > > NOTE: For some of the reported defects, checkpatch may be able to
> > > > > mechanically convert to the typical style using --fix or --fix-inplace.
> > > > >
> > > > > /github/workspace/src/src/13240258.patch has style problems, please review.
> > > > >
> > > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> > > > >
> > > > > NOTE: If any of the errors are false positives, please report
> > > > > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> > > > >
> > > > >
> > > > > ##############################
> > > > > Test: ScanBuild - WARNING
> > > > > Desc: Run Scan Build
> > > > > Output:
> > > > > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > > > > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > > > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > > > 1 warning generated.
> > > > >
> > > > >
> > > > >
> > > > > ---
> > > > > Regards,
> > > > > Linux Bluetooth
> > > >
> > > > I tried running on fedora but it looks like something is missing in my setup:
> > > >
> > > > [E][00003.767959] spa.dbus | [ dbus.c: 329
> > > > impl_connection_get()] Failed to connect to session bus: Unable to
> > > > autolaun1
> > > > [E][00003.769967] mod.portal | [ module-portal.c: 326
> > > > pipewire__module_init()] Failed to connect to session bus:
> > > > Input/output error
> > >
> > > I have those two "errors" too, they should be harmless as the xdg-
> > > desktop-portal module is optional. With `test-runner -d -l -A` you
> > > should get the Bluetooth endpoints to appear.
> > >
> > > Removing the mod.portal from the configuration can't be done with drop-
> > > in config files currently, and I didn't want to include a full config
> > > file here as it has some tens of lines of mandatory boilerplate.
> >
> > Ok, looks like it configuring the endpoints:
> >
> > https://gist.github.com/Vudentz/0d8851e719affd9f2dc1f4081ce32fb7
> >
> > That said I probably need to compile pipewire from source in order to
> > have the LE Audio endpoints registered, btw do you have any
> > instructions on how to build it, do I need to build wireplumber as
> > well?
>
> Should be along these lines to install under $PWD/install and enable
> BAP parts:
>
> git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
> cd pipewire
> LDFLAGS="-Wl,-rpath=$PWD/install/lib64" \
> meson setup builddir --prefix=$PWD/install \
> -Dsystemd-user-service=disabled \
> -Dudevrulesdir=$PWD/install/lib/udev/rules.d \
> -Dbluez5-codec-lc3=enabled
> meson install -C builddir
>
> Meson will clone and install Wireplumber too. Turning experimental on
> in src/main.conf and it should give
>
> $ ./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage sleep 5
> ...
> bluetoothd[29]: profiles/audio/media.c:endpoint_init_pac() PAC :1.1:/MediaEndpointLE/BAPSource/lc3 registered
> bluetoothd[29]: Endpoint registered: sender=:1.1 path=/MediaEndpointLE/BAPSource/lc3
> bluetoothd[29]: profiles/audio/media.c:client_ready_cb() Media application registered: :1.1:/MediaEndpointLE
> ...

Thanks, something is not quite right for me since I don't see any
objects on MediaEndpointLE:

https://gist.github.com/Vudentz/242e4e2bfb8907acfdfdf18b458eec1d

Ive used the following command line though to use a real controller:

sudo tools/test-runner -u -d
-A/home/vudentz/git/pipewire/install/bin/pipewire -k
~/git/linux/arch/x86/boot/bzImage -- /bin/bash

Starting with -l instead of -u didn't seem to fix the problem either,
starting bluetoothctl -e does work though:

bluetoothd[35]: profiles/audio/media.c:endpoint_init_pac() PAC
:1.2:/local/endpoint/ep2 registered
bluetoothd[35]: Endpoint registered: sender=:1.2 path=/local/endpoint/ep2

> --
> Pauli Virtanen



--
Luiz Augusto von Dentz

2023-05-17 21:22:10

by Pauli Virtanen

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Luiz,

ke, 2023-05-17 kello 13:53 -0700, Luiz Augusto von Dentz kirjoitti:
> Hi Pauli,
>
> On Wed, May 17, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> >
> > Hi Luiz,
> >
> > ke, 2023-05-17 kello 12:34 -0700, Luiz Augusto von Dentz kirjoitti:
> > > Hi Pauli,
> > >
> > > On Mon, May 15, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > > >
> > > > Hi Luiz,
> > > >
> > > > ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > > Hi Pauli,
> > > > >
> > > > > On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> > > > > >
> > > > > > This is automated email and please do not reply to this email!
> > > > > >
> > > > > > Dear submitter,
> > > > > >
> > > > > > Thank you for submitting the patches to the linux bluetooth mailing list.
> > > > > > This is a CI test results with your patch series:
> > > > > > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> > > > > >
> > > > > > ---Test result---
> > > > > >
> > > > > > Test Summary:
> > > > > > CheckPatch FAIL 1.14 seconds
> > > > > > GitLint PASS 0.52 seconds
> > > > > > BuildEll PASS 26.21 seconds
> > > > > > BluezMake PASS 745.32 seconds
> > > > > > MakeCheck PASS 11.04 seconds
> > > > > > MakeDistcheck PASS 151.18 seconds
> > > > > > CheckValgrind PASS 243.86 seconds
> > > > > > CheckSmatch PASS 326.99 seconds
> > > > > > bluezmakeextell PASS 98.83 seconds
> > > > > > IncrementalBuild PASS 1262.88 seconds
> > > > > > ScanBuild WARNING 964.73 seconds
> > > > > >
> > > > > > Details
> > > > > > ##############################
> > > > > > Test: CheckPatch - FAIL
> > > > > > Desc: Run checkpatch.pl script
> > > > > > Output:
> > > > > > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > > > > > #49:
> > > > > > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> > > > > >
> > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > > > > > #50:
> > > > > > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> > > > > >
> > > > > > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> > > > > >
> > > > > > NOTE: For some of the reported defects, checkpatch may be able to
> > > > > > mechanically convert to the typical style using --fix or --fix-inplace.
> > > > > >
> > > > > > /github/workspace/src/src/13240258.patch has style problems, please review.
> > > > > >
> > > > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> > > > > >
> > > > > > NOTE: If any of the errors are false positives, please report
> > > > > > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> > > > > >
> > > > > >
> > > > > > ##############################
> > > > > > Test: ScanBuild - WARNING
> > > > > > Desc: Run Scan Build
> > > > > > Output:
> > > > > > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > > > > > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > > > > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > > > > 1 warning generated.
> > > > > >
> > > > > >
> > > > > >
> > > > > > ---
> > > > > > Regards,
> > > > > > Linux Bluetooth
> > > > >
> > > > > I tried running on fedora but it looks like something is missing in my setup:
> > > > >
> > > > > [E][00003.767959] spa.dbus | [ dbus.c: 329
> > > > > impl_connection_get()] Failed to connect to session bus: Unable to
> > > > > autolaun1
> > > > > [E][00003.769967] mod.portal | [ module-portal.c: 326
> > > > > pipewire__module_init()] Failed to connect to session bus:
> > > > > Input/output error
> > > >
> > > > I have those two "errors" too, they should be harmless as the xdg-
> > > > desktop-portal module is optional. With `test-runner -d -l -A` you
> > > > should get the Bluetooth endpoints to appear.
> > > >
> > > > Removing the mod.portal from the configuration can't be done with drop-
> > > > in config files currently, and I didn't want to include a full config
> > > > file here as it has some tens of lines of mandatory boilerplate.
> > >
> > > Ok, looks like it configuring the endpoints:
> > >
> > > https://gist.github.com/Vudentz/0d8851e719affd9f2dc1f4081ce32fb7
> > >
> > > That said I probably need to compile pipewire from source in order to
> > > have the LE Audio endpoints registered, btw do you have any
> > > instructions on how to build it, do I need to build wireplumber as
> > > well?
> >
> > Should be along these lines to install under $PWD/install and enable
> > BAP parts:
> >
> > git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
> > cd pipewire
> > LDFLAGS="-Wl,-rpath=$PWD/install/lib64" \
> > meson setup builddir --prefix=$PWD/install \
> > -Dsystemd-user-service=disabled \
> > -Dudevrulesdir=$PWD/install/lib/udev/rules.d \
> > -Dbluez5-codec-lc3=enabled
> > meson install -C builddir
> >
> > Meson will clone and install Wireplumber too. Turning experimental on
> > in src/main.conf and it should give
> >
> > $ ./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage sleep 5
> > ...
> > bluetoothd[29]: profiles/audio/media.c:endpoint_init_pac() PAC :1.1:/MediaEndpointLE/BAPSource/lc3 registered
> > bluetoothd[29]: Endpoint registered: sender=:1.1 path=/MediaEndpointLE/BAPSource/lc3
> > bluetoothd[29]: profiles/audio/media.c:client_ready_cb() Media application registered: :1.1:/MediaEndpointLE
> > ...
>
> Thanks, something is not quite right for me since I don't see any
> objects on MediaEndpointLE:
>
> https://gist.github.com/Vudentz/242e4e2bfb8907acfdfdf18b458eec1d

It gets "No object received" when trying to register the BAP
application, so probably the LC3 codec is missing somehow.

meson setup should have reported 
"Bluetooth audio codecs ... LC3 : YES".

`ldd install/bin/pipewire` should link to libpipewire-0.3.so.0 under
the install/ prefix and not to system lib. If not, the rpath in
compilation accordingly should be adjusted accordingly, or set
LD_LIBRARY_PATH there.

Also the codec plugin 
install/lib64/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so should exist.


> Ive used the following command line though to use a real controller:
>
> sudo tools/test-runner -u -d
> -A/home/vudentz/git/pipewire/install/bin/pipewire -k
> ~/git/linux/arch/x86/boot/bzImage -- /bin/bash
>
> Starting with -l instead of -u didn't seem to fix the problem either,
> starting bluetoothctl -e does work though:
>
> bluetoothd[35]: profiles/audio/media.c:endpoint_init_pac() PAC
> :1.2:/local/endpoint/ep2 registered
> bluetoothd[35]: Endpoint registered: sender=:1.2 path=/local/endpoint/ep2




2023-05-17 21:29:04

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Pauli,

On Wed, May 17, 2023 at 2:16 PM Pauli Virtanen <[email protected]> wrote:
>
> Hi Luiz,
>
> ke, 2023-05-17 kello 13:53 -0700, Luiz Augusto von Dentz kirjoitti:
> > Hi Pauli,
> >
> > On Wed, May 17, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > >
> > > Hi Luiz,
> > >
> > > ke, 2023-05-17 kello 12:34 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > Hi Pauli,
> > > >
> > > > On Mon, May 15, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > > > >
> > > > > Hi Luiz,
> > > > >
> > > > > ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > > > Hi Pauli,
> > > > > >
> > > > > > On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> > > > > > >
> > > > > > > This is automated email and please do not reply to this email!
> > > > > > >
> > > > > > > Dear submitter,
> > > > > > >
> > > > > > > Thank you for submitting the patches to the linux bluetooth mailing list.
> > > > > > > This is a CI test results with your patch series:
> > > > > > > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> > > > > > >
> > > > > > > ---Test result---
> > > > > > >
> > > > > > > Test Summary:
> > > > > > > CheckPatch FAIL 1.14 seconds
> > > > > > > GitLint PASS 0.52 seconds
> > > > > > > BuildEll PASS 26.21 seconds
> > > > > > > BluezMake PASS 745.32 seconds
> > > > > > > MakeCheck PASS 11.04 seconds
> > > > > > > MakeDistcheck PASS 151.18 seconds
> > > > > > > CheckValgrind PASS 243.86 seconds
> > > > > > > CheckSmatch PASS 326.99 seconds
> > > > > > > bluezmakeextell PASS 98.83 seconds
> > > > > > > IncrementalBuild PASS 1262.88 seconds
> > > > > > > ScanBuild WARNING 964.73 seconds
> > > > > > >
> > > > > > > Details
> > > > > > > ##############################
> > > > > > > Test: CheckPatch - FAIL
> > > > > > > Desc: Run checkpatch.pl script
> > > > > > > Output:
> > > > > > > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > > > > > > #49:
> > > > > > > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> > > > > > >
> > > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > > > > > > #50:
> > > > > > > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> > > > > > >
> > > > > > > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> > > > > > >
> > > > > > > NOTE: For some of the reported defects, checkpatch may be able to
> > > > > > > mechanically convert to the typical style using --fix or --fix-inplace.
> > > > > > >
> > > > > > > /github/workspace/src/src/13240258.patch has style problems, please review.
> > > > > > >
> > > > > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> > > > > > >
> > > > > > > NOTE: If any of the errors are false positives, please report
> > > > > > > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> > > > > > >
> > > > > > >
> > > > > > > ##############################
> > > > > > > Test: ScanBuild - WARNING
> > > > > > > Desc: Run Scan Build
> > > > > > > Output:
> > > > > > > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > > > > > > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > > > > > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > > > > > 1 warning generated.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > ---
> > > > > > > Regards,
> > > > > > > Linux Bluetooth
> > > > > >
> > > > > > I tried running on fedora but it looks like something is missing in my setup:
> > > > > >
> > > > > > [E][00003.767959] spa.dbus | [ dbus.c: 329
> > > > > > impl_connection_get()] Failed to connect to session bus: Unable to
> > > > > > autolaun1
> > > > > > [E][00003.769967] mod.portal | [ module-portal.c: 326
> > > > > > pipewire__module_init()] Failed to connect to session bus:
> > > > > > Input/output error
> > > > >
> > > > > I have those two "errors" too, they should be harmless as the xdg-
> > > > > desktop-portal module is optional. With `test-runner -d -l -A` you
> > > > > should get the Bluetooth endpoints to appear.
> > > > >
> > > > > Removing the mod.portal from the configuration can't be done with drop-
> > > > > in config files currently, and I didn't want to include a full config
> > > > > file here as it has some tens of lines of mandatory boilerplate.
> > > >
> > > > Ok, looks like it configuring the endpoints:
> > > >
> > > > https://gist.github.com/Vudentz/0d8851e719affd9f2dc1f4081ce32fb7
> > > >
> > > > That said I probably need to compile pipewire from source in order to
> > > > have the LE Audio endpoints registered, btw do you have any
> > > > instructions on how to build it, do I need to build wireplumber as
> > > > well?
> > >
> > > Should be along these lines to install under $PWD/install and enable
> > > BAP parts:
> > >
> > > git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
> > > cd pipewire
> > > LDFLAGS="-Wl,-rpath=$PWD/install/lib64" \
> > > meson setup builddir --prefix=$PWD/install \
> > > -Dsystemd-user-service=disabled \
> > > -Dudevrulesdir=$PWD/install/lib/udev/rules.d \
> > > -Dbluez5-codec-lc3=enabled
> > > meson install -C builddir
> > >
> > > Meson will clone and install Wireplumber too. Turning experimental on
> > > in src/main.conf and it should give
> > >
> > > $ ./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage sleep 5
> > > ...
> > > bluetoothd[29]: profiles/audio/media.c:endpoint_init_pac() PAC :1.1:/MediaEndpointLE/BAPSource/lc3 registered
> > > bluetoothd[29]: Endpoint registered: sender=:1.1 path=/MediaEndpointLE/BAPSource/lc3
> > > bluetoothd[29]: profiles/audio/media.c:client_ready_cb() Media application registered: :1.1:/MediaEndpointLE
> > > ...
> >
> > Thanks, something is not quite right for me since I don't see any
> > objects on MediaEndpointLE:
> >
> > https://gist.github.com/Vudentz/242e4e2bfb8907acfdfdf18b458eec1d
>
> It gets "No object received" when trying to register the BAP
> application, so probably the LC3 codec is missing somehow.
>
> meson setup should have reported
> "Bluetooth audio codecs ... LC3 : YES".

Yep, that shows as enabled.

> `ldd install/bin/pipewire` should link to libpipewire-0.3.so.0 under
> the install/ prefix and not to system lib. If not, the rpath in
> compilation accordingly should be adjusted accordingly, or set
> LD_LIBRARY_PATH there.

libpipewire-0.3.so.0 =>
/home/vudentz/git/pipewire/install/lib64/libpipewire-0.3.so.0
(0x00007f3b8e947000)

> Also the codec plugin
> install/lib64/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so should exist.

-rwxr-xr-x. 1 **** **** 166592 May 17 13:39
install/lib64/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so

Perhaps we need to enable more debugs for pipewire to sort this out?

--
Luiz Augusto von Dentz

2023-05-17 21:54:42

by Pauli Virtanen

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

ke, 2023-05-17 kello 14:25 -0700, Luiz Augusto von Dentz kirjoitti:
> Hi Pauli,
>
> On Wed, May 17, 2023 at 2:16 PM Pauli Virtanen <[email protected]> wrote:
> >
> > Hi Luiz,
> >
> > ke, 2023-05-17 kello 13:53 -0700, Luiz Augusto von Dentz kirjoitti:
> > > Hi Pauli,
> > >
> > > On Wed, May 17, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > > >
> > > > Hi Luiz,
> > > >
> > > > ke, 2023-05-17 kello 12:34 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > > Hi Pauli,
> > > > >
> > > > > On Mon, May 15, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > > > > >
> > > > > > Hi Luiz,
> > > > > >
> > > > > > ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > > > > Hi Pauli,
> > > > > > >
> > > > > > > On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> > > > > > > >
> > > > > > > > This is automated email and please do not reply to this email!
> > > > > > > >
> > > > > > > > Dear submitter,
> > > > > > > >
> > > > > > > > Thank you for submitting the patches to the linux bluetooth mailing list.
> > > > > > > > This is a CI test results with your patch series:
> > > > > > > > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> > > > > > > >
> > > > > > > > ---Test result---
> > > > > > > >
> > > > > > > > Test Summary:
> > > > > > > > CheckPatch FAIL 1.14 seconds
> > > > > > > > GitLint PASS 0.52 seconds
> > > > > > > > BuildEll PASS 26.21 seconds
> > > > > > > > BluezMake PASS 745.32 seconds
> > > > > > > > MakeCheck PASS 11.04 seconds
> > > > > > > > MakeDistcheck PASS 151.18 seconds
> > > > > > > > CheckValgrind PASS 243.86 seconds
> > > > > > > > CheckSmatch PASS 326.99 seconds
> > > > > > > > bluezmakeextell PASS 98.83 seconds
> > > > > > > > IncrementalBuild PASS 1262.88 seconds
> > > > > > > > ScanBuild WARNING 964.73 seconds
> > > > > > > >
> > > > > > > > Details
> > > > > > > > ##############################
> > > > > > > > Test: CheckPatch - FAIL
> > > > > > > > Desc: Run checkpatch.pl script
> > > > > > > > Output:
> > > > > > > > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > > > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > > > > > > > #49:
> > > > > > > > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> > > > > > > >
> > > > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > > > > > > > #50:
> > > > > > > > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> > > > > > > >
> > > > > > > > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> > > > > > > >
> > > > > > > > NOTE: For some of the reported defects, checkpatch may be able to
> > > > > > > > mechanically convert to the typical style using --fix or --fix-inplace.
> > > > > > > >
> > > > > > > > /github/workspace/src/src/13240258.patch has style problems, please review.
> > > > > > > >
> > > > > > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> > > > > > > >
> > > > > > > > NOTE: If any of the errors are false positives, please report
> > > > > > > > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> > > > > > > >
> > > > > > > >
> > > > > > > > ##############################
> > > > > > > > Test: ScanBuild - WARNING
> > > > > > > > Desc: Run Scan Build
> > > > > > > > Output:
> > > > > > > > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > > > > > > > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > > > > > > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > > > > > > 1 warning generated.
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > ---
> > > > > > > > Regards,
> > > > > > > > Linux Bluetooth
> > > > > > >
> > > > > > > I tried running on fedora but it looks like something is missing in my setup:
> > > > > > >
> > > > > > > [E][00003.767959] spa.dbus | [ dbus.c: 329
> > > > > > > impl_connection_get()] Failed to connect to session bus: Unable to
> > > > > > > autolaun1
> > > > > > > [E][00003.769967] mod.portal | [ module-portal.c: 326
> > > > > > > pipewire__module_init()] Failed to connect to session bus:
> > > > > > > Input/output error
> > > > > >
> > > > > > I have those two "errors" too, they should be harmless as the xdg-
> > > > > > desktop-portal module is optional. With `test-runner -d -l -A` you
> > > > > > should get the Bluetooth endpoints to appear.
> > > > > >
> > > > > > Removing the mod.portal from the configuration can't be done with drop-
> > > > > > in config files currently, and I didn't want to include a full config
> > > > > > file here as it has some tens of lines of mandatory boilerplate.
> > > > >
> > > > > Ok, looks like it configuring the endpoints:
> > > > >
> > > > > https://gist.github.com/Vudentz/0d8851e719affd9f2dc1f4081ce32fb7
> > > > >
> > > > > That said I probably need to compile pipewire from source in order to
> > > > > have the LE Audio endpoints registered, btw do you have any
> > > > > instructions on how to build it, do I need to build wireplumber as
> > > > > well?
> > > >
> > > > Should be along these lines to install under $PWD/install and enable
> > > > BAP parts:
> > > >
> > > > git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
> > > > cd pipewire
> > > > LDFLAGS="-Wl,-rpath=$PWD/install/lib64" \
> > > > meson setup builddir --prefix=$PWD/install \
> > > > -Dsystemd-user-service=disabled \
> > > > -Dudevrulesdir=$PWD/install/lib/udev/rules.d \
> > > > -Dbluez5-codec-lc3=enabled
> > > > meson install -C builddir
> > > >
> > > > Meson will clone and install Wireplumber too. Turning experimental on
> > > > in src/main.conf and it should give
> > > >
> > > > $ ./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage sleep 5
> > > > ...
> > > > bluetoothd[29]: profiles/audio/media.c:endpoint_init_pac() PAC :1.1:/MediaEndpointLE/BAPSource/lc3 registered
> > > > bluetoothd[29]: Endpoint registered: sender=:1.1 path=/MediaEndpointLE/BAPSource/lc3
> > > > bluetoothd[29]: profiles/audio/media.c:client_ready_cb() Media application registered: :1.1:/MediaEndpointLE
> > > > ...
> > >
> > > Thanks, something is not quite right for me since I don't see any
> > > objects on MediaEndpointLE:
> > >
> > > https://gist.github.com/Vudentz/242e4e2bfb8907acfdfdf18b458eec1d
> >
> > It gets "No object received" when trying to register the BAP
> > application, so probably the LC3 codec is missing somehow.
> >
> > meson setup should have reported
> > "Bluetooth audio codecs ... LC3 : YES".
>
> Yep, that shows as enabled.
>
> > `ldd install/bin/pipewire` should link to libpipewire-0.3.so.0 under
> > the install/ prefix and not to system lib. If not, the rpath in
> > compilation accordingly should be adjusted accordingly, or set
> > LD_LIBRARY_PATH there.
>
> libpipewire-0.3.so.0 =>
> /home/vudentz/git/pipewire/install/lib64/libpipewire-0.3.so.0
> (0x00007f3b8e947000)
>
> > Also the codec plugin
> > install/lib64/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so should exist.
>
> -rwxr-xr-x. 1 **** **** 166592 May 17 13:39
> install/lib64/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so

Does `ldd libspa-codec-bluez5-lc3.so` show it finds liblc3.so?

> Perhaps we need to enable more debugs for pipewire to sort this out?

./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage -- /bin/bash
... inside vm: ...
pkill wireplumber
export XDG_CONFIG_HOME=/run/conf
export XDG_STATE_HOME=/run
export XDG_RUNTIME_DIR=/run
export WIREPLUMBER_DEBUG=4
/home/pauli/tmp/pipewire/install/bin/wireplumber

should spit out what it tried to do.

--
Pauli Virtanen

2023-05-17 22:22:47

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: [BlueZ,v3,1/2] test-runner: revert udevd and audio support

Hi Pauli,

On Wed, May 17, 2023 at 2:43 PM Pauli Virtanen <[email protected]> wrote:
>
> ke, 2023-05-17 kello 14:25 -0700, Luiz Augusto von Dentz kirjoitti:
> > Hi Pauli,
> >
> > On Wed, May 17, 2023 at 2:16 PM Pauli Virtanen <[email protected]> wrote:
> > >
> > > Hi Luiz,
> > >
> > > ke, 2023-05-17 kello 13:53 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > Hi Pauli,
> > > >
> > > > On Wed, May 17, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > > > >
> > > > > Hi Luiz,
> > > > >
> > > > > ke, 2023-05-17 kello 12:34 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > > > Hi Pauli,
> > > > > >
> > > > > > On Mon, May 15, 2023 at 1:30 PM Pauli Virtanen <[email protected]> wrote:
> > > > > > >
> > > > > > > Hi Luiz,
> > > > > > >
> > > > > > > ma, 2023-05-15 kello 13:01 -0700, Luiz Augusto von Dentz kirjoitti:
> > > > > > > > Hi Pauli,
> > > > > > > >
> > > > > > > > On Sat, May 13, 2023 at 10:41 AM <[email protected]> wrote:
> > > > > > > > >
> > > > > > > > > This is automated email and please do not reply to this email!
> > > > > > > > >
> > > > > > > > > Dear submitter,
> > > > > > > > >
> > > > > > > > > Thank you for submitting the patches to the linux bluetooth mailing list.
> > > > > > > > > This is a CI test results with your patch series:
> > > > > > > > > PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=747273
> > > > > > > > >
> > > > > > > > > ---Test result---
> > > > > > > > >
> > > > > > > > > Test Summary:
> > > > > > > > > CheckPatch FAIL 1.14 seconds
> > > > > > > > > GitLint PASS 0.52 seconds
> > > > > > > > > BuildEll PASS 26.21 seconds
> > > > > > > > > BluezMake PASS 745.32 seconds
> > > > > > > > > MakeCheck PASS 11.04 seconds
> > > > > > > > > MakeDistcheck PASS 151.18 seconds
> > > > > > > > > CheckValgrind PASS 243.86 seconds
> > > > > > > > > CheckSmatch PASS 326.99 seconds
> > > > > > > > > bluezmakeextell PASS 98.83 seconds
> > > > > > > > > IncrementalBuild PASS 1262.88 seconds
> > > > > > > > > ScanBuild WARNING 964.73 seconds
> > > > > > > > >
> > > > > > > > > Details
> > > > > > > > > ##############################
> > > > > > > > > Test: CheckPatch - FAIL
> > > > > > > > > Desc: Run checkpatch.pl script
> > > > > > > > > Output:
> > > > > > > > > [BlueZ,v3,1/2] test-runner: revert udevd and audio support
> > > > > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id '91a48af52efb0751fab396b2b9026c9186b10b88', maybe rebased or not pulled?
> > > > > > > > > #49:
> > > > > > > > > This reverts commit 91a48af52efb0751fab396b2b9026c9186b10b88
> > > > > > > > >
> > > > > > > > > WARNING:UNKNOWN_COMMIT_ID: Unknown commit id 'e20e7e0b05c7edb74255c9b092916ac5bb99c97f', maybe rebased or not pulled?
> > > > > > > > > #50:
> > > > > > > > > This reverts commit e20e7e0b05c7edb74255c9b092916ac5bb99c97f
> > > > > > > > >
> > > > > > > > > /github/workspace/src/src/13240258.patch total: 0 errors, 2 warnings, 193 lines checked
> > > > > > > > >
> > > > > > > > > NOTE: For some of the reported defects, checkpatch may be able to
> > > > > > > > > mechanically convert to the typical style using --fix or --fix-inplace.
> > > > > > > > >
> > > > > > > > > /github/workspace/src/src/13240258.patch has style problems, please review.
> > > > > > > > >
> > > > > > > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO
> > > > > > > > >
> > > > > > > > > NOTE: If any of the errors are false positives, please report
> > > > > > > > > them to the maintainer, see CHECKPATCH in MAINTAINERS.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > ##############################
> > > > > > > > > Test: ScanBuild - WARNING
> > > > > > > > > Desc: Run Scan Build
> > > > > > > > > Output:
> > > > > > > > > tools/test-runner.c:924:2: warning: 2nd function call argument is an uninitialized value
> > > > > > > > > printf("Running command %s\n", cmdname ? cmdname : argv[0]);
> > > > > > > > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > > > > > > > 1 warning generated.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > ---
> > > > > > > > > Regards,
> > > > > > > > > Linux Bluetooth
> > > > > > > >
> > > > > > > > I tried running on fedora but it looks like something is missing in my setup:
> > > > > > > >
> > > > > > > > [E][00003.767959] spa.dbus | [ dbus.c: 329
> > > > > > > > impl_connection_get()] Failed to connect to session bus: Unable to
> > > > > > > > autolaun1
> > > > > > > > [E][00003.769967] mod.portal | [ module-portal.c: 326
> > > > > > > > pipewire__module_init()] Failed to connect to session bus:
> > > > > > > > Input/output error
> > > > > > >
> > > > > > > I have those two "errors" too, they should be harmless as the xdg-
> > > > > > > desktop-portal module is optional. With `test-runner -d -l -A` you
> > > > > > > should get the Bluetooth endpoints to appear.
> > > > > > >
> > > > > > > Removing the mod.portal from the configuration can't be done with drop-
> > > > > > > in config files currently, and I didn't want to include a full config
> > > > > > > file here as it has some tens of lines of mandatory boilerplate.
> > > > > >
> > > > > > Ok, looks like it configuring the endpoints:
> > > > > >
> > > > > > https://gist.github.com/Vudentz/0d8851e719affd9f2dc1f4081ce32fb7
> > > > > >
> > > > > > That said I probably need to compile pipewire from source in order to
> > > > > > have the LE Audio endpoints registered, btw do you have any
> > > > > > instructions on how to build it, do I need to build wireplumber as
> > > > > > well?
> > > > >
> > > > > Should be along these lines to install under $PWD/install and enable
> > > > > BAP parts:
> > > > >
> > > > > git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
> > > > > cd pipewire
> > > > > LDFLAGS="-Wl,-rpath=$PWD/install/lib64" \
> > > > > meson setup builddir --prefix=$PWD/install \
> > > > > -Dsystemd-user-service=disabled \
> > > > > -Dudevrulesdir=$PWD/install/lib/udev/rules.d \
> > > > > -Dbluez5-codec-lc3=enabled
> > > > > meson install -C builddir
> > > > >
> > > > > Meson will clone and install Wireplumber too. Turning experimental on
> > > > > in src/main.conf and it should give
> > > > >
> > > > > $ ./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage sleep 5
> > > > > ...
> > > > > bluetoothd[29]: profiles/audio/media.c:endpoint_init_pac() PAC :1.1:/MediaEndpointLE/BAPSource/lc3 registered
> > > > > bluetoothd[29]: Endpoint registered: sender=:1.1 path=/MediaEndpointLE/BAPSource/lc3
> > > > > bluetoothd[29]: profiles/audio/media.c:client_ready_cb() Media application registered: :1.1:/MediaEndpointLE
> > > > > ...
> > > >
> > > > Thanks, something is not quite right for me since I don't see any
> > > > objects on MediaEndpointLE:
> > > >
> > > > https://gist.github.com/Vudentz/242e4e2bfb8907acfdfdf18b458eec1d
> > >
> > > It gets "No object received" when trying to register the BAP
> > > application, so probably the LC3 codec is missing somehow.
> > >
> > > meson setup should have reported
> > > "Bluetooth audio codecs ... LC3 : YES".
> >
> > Yep, that shows as enabled.
> >
> > > `ldd install/bin/pipewire` should link to libpipewire-0.3.so.0 under
> > > the install/ prefix and not to system lib. If not, the rpath in
> > > compilation accordingly should be adjusted accordingly, or set
> > > LD_LIBRARY_PATH there.
> >
> > libpipewire-0.3.so.0 =>
> > /home/vudentz/git/pipewire/install/lib64/libpipewire-0.3.so.0
> > (0x00007f3b8e947000)
> >
> > > Also the codec plugin
> > > install/lib64/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so should exist.
> >
> > -rwxr-xr-x. 1 **** **** 166592 May 17 13:39
> > install/lib64/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so
>
> Does `ldd libspa-codec-bluez5-lc3.so` show it finds liblc3.so?

I guess we found the problem:

liblc3.so.1 => not found

> > Perhaps we need to enable more debugs for pipewire to sort this out?
>
> ./tools/test-runner -d -l --audio=/home/pauli/tmp/pipewire/install/bin/pipewire -k../linux/arch/x86_64/boot/bzImage -- /bin/bash
> ... inside vm: ...
> pkill wireplumber
> export XDG_CONFIG_HOME=/run/conf
> export XDG_STATE_HOME=/run
> export XDG_RUNTIME_DIR=/run
> export WIREPLUMBER_DEBUG=4
> /home/pauli/tmp/pipewire/install/bin/wireplumber
>
> should spit out what it tried to do.

Yep, here is the full trace:

https://gist.github.com/Vudentz/36f9acdc62b623c85e978883ea29c2d3

But I think the problem is with the linking of liblc3, are you running
with the latest from git? Perhaps I need to install it also in the
same path?

--
Luiz Augusto von Dentz