Skip to content

Promote to 1.0.6#73

Open
qcom-service-bot wants to merge 118 commits into
qcom/ubuntu/noblefrom
debian/pr/1.0.6-1
Open

Promote to 1.0.6#73
qcom-service-bot wants to merge 118 commits into
qcom/ubuntu/noblefrom
debian/pr/1.0.6-1

Conversation

@qcom-service-bot

Copy link
Copy Markdown
Contributor

Automated promotion PR

This PR was generated by pkg-promote to move this package repo to upstream tag
v1.0.6.

Summary

  • Base branch: qcom/ubuntu/noble
  • Upstream branch/tag prepared: upstream/latest / upstream/1.0.6
  • PR branch: debian/pr/1.0.6-1
  • Changelog update: 1.0.6-1 (UNRELEASED)

Reviewer checklist

  1. Review the upstream merge and packaging diff.
  2. Confirm the Build workflow is green.
  3. If needed, push follow-up packaging fixes to this PR branch.
  4. Merge with Merge commit (do not squash or rebase).

Flow

---
config:
  themeVariables:
    'gitInv2': '#ff0000'
gitGraph:
  parallelCommits: true
  rotateCommitLabel: true
---
gitGraph BT:
  branch qcom/ubuntu/noble   order: 1
  branch upstream-main   order: 4
  branch upstream/latest order: 3
  checkout main
  commit id: 'Unrelated history: workflows, doc'
  checkout upstream-main
  commit
  checkout upstream-main
  commit
  commit id: 'release' tag: 'v1.0.6'
  checkout upstream/latest
  commit id: 'previous stuff'
  merge upstream-main id: 'Filtered .github/debian folders' tag: 'upstream/1.0.6'
  checkout qcom/ubuntu/noble
  commit
  commit
  commit
  branch debian/pr/1.0.6-1 order: 2
  merge upstream/latest id: 'Merged Upstream'
  commit id: 'Changelog version update' type: HIGHLIGHT
Loading

quic-kdybcio and others added 30 commits December 2, 2025 11:55
Newer compiler versions include various improvements, ranging from
codegen and support for newer arch extensions to improved warning
messages, which help keep the code less buggy.

Discourage the use of the six year old GCC 7.5, in favor of using
whatever newest revision the user's distribution decides to ship.

Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Create systemd service files for DSP RPC daemons (aDSP, cDSP,
gDSP, sDSP) with device-conditional startup.

Each service uses After directives to ensure proper ordering with
corresponding device units (dev-fastrpc-*-device and
dev-fastrpc-*-secure.device),and ConditionPathExists directives to
conditionally start only when at least one of the device paths
exists (/dev/fastrpc-* or /dev/fastrpc-*-secure). Includes
automatic restart on failure with 5-second delay between attempts.
Services are enabled for multi-user.target.

Signed-off-by: Vinayak Katoch <vkatoch@qti.qualcomm.com>
Configure systemd unit directory through DISTCHECK_CONFIGURE_FLAGS
to avoid permission denied errors during distcheck.

Signed-off-by: Vinayak Katoch <vkatoch@qti.qualcomm.com>
Create systemd service files for DSP RPC daemons (aDSP, cDSP, gDSP,
sDSP) with device-conditional startup.

Each service uses After directives to ensure proper ordering with
corresponding device units (dev-fastrpc-\*-device and
dev-fastrpc-\*-secure.device),and ConditionPathExists directives to
conditionally start only when at least one of the device paths exists
(/dev/fastrpc-\* or /dev/fastrpc-\*-secure). Includes automatic restart
on failure with 5-second delay between attempts. Services are enabled
for multi-user.target.

Fixes: #245
Add generated gdsprpcd file to .gitignore.

Signed-off-by: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>
- Updated `runs-on` to use self-hosted runner group: `GHA-fastrpc-Prd-SelfHosted-RG`
- Use AWS runners to support uploading artifacts to the configured S3 location

Signed-off-by: Tharun Kumar Merugu <mtharu@qti.qualcomm.com>
Add generated gdsprpcd file to .gitignore.
To streamline the bug reporting process, ask some questions upfront.

Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To streamline the bug reporting process, ask some questions upfront.
**Summary**
- Updated runs-on to use the self-hosted runner group:
GHA-fastrpc-Prd-SelfHosted-RG
- Configured AWS runners to support uploading artifacts to the
designated S3 location.


**Why This Change?**
- Track changes and results generated from the repository
- Maintain backward compatibility at the repo level
- Display these details in the
[Armor](https://armor.qualcomm.com/public-overview/public_headers)
dashboard for better visibility

**Impact**
- Ensures seamless artifact uploads to S3 using AWS runners.
- Enhances observability and traceability for CI/CD workflows.
- No breaking changes introduced; backward compatibility is preserved.

CRs-Fixed: 4400385
Clean up unused PM QoS implementation.
PM QoS is not supported by fastrpc driver, so related code is removed.

Signed-off-by: Jianping Li <jianping.li@oss.qualcomm.com>
Add a systemd unit file for the audiopd RPC daemon, allowing the
aDSP to load modules dynamically as needed.
This supports features such as runtime loading of decoder modules
for compress‑offload audio playback.

Signed-off-by: Sairamreddy Bojja <sbojja@qti.qualcomm.com>
Add a systemd service to manage the audiopd RPC daemon to support
dynamic module loading on the aDSP.
This PR addresses issue #225 by removing unused PM QoS code.

Changes include:

- Removal of PM_Qos-related fastrpc code
- Cleanup of associated headers and macros
- Verified that no active components depend on the removed code
- This cleanup improves maintainability and aligns with the current
usage patterns of fastRPC

Fixes #225.
Poll job state via lavacli inside Docker
Handle cancelled/incomplete states and enforce 2‑hour timeout
On completion, fetch results and determine pass/fail
Update GitHub summary with job status, job ID, and URL
Prevent incorrect reporting when jobs fail early or never finish

Signed-off-by: Tharun Kumar Merugu <mtharu@qti.qualcomm.com>
Standard glibc does not provide BSD-specific string functions like
strlcpy and strlcat, which are needed for safe string operations.
Android includes these functions natively, but Linux GNU builds
require an external library to provide them.

Add dependency on libbsd-overlay for non-Android targets to provide
the missing BSD functions. Configure the build system to detect and
link against libbsd when building for Linux GNU platforms.

Signed-off-by: Vinayak Katoch <vkatoch@qti.qualcomm.com>
Add libbsd-dev:arm64 to ARM64 workflows (build_linux_arm64.yml,
codeql.yml, abi-compat.yml) and ensure libbsd-dev is in
build_linux_gnu.yml to resolve configure errors during compilation.

Signed-off-by: Vinayak Katoch <vkatoch@qti.qualcomm.com>
Check for libbsd on non-Android targets and export BSD_CFLAGS and
BSD_LIBS. Include BSD flags in CFLAGS and link BSD libs alongside YAML
libs.

Add libbsd-dev:arm64 to ARM64 workflows and ensure libbsd-dev is in
build_linux_gnu.yml.

## Technical Details

@BSD_CFLAGS@ adds the BSD include path (e.g., `-isystem
/usr/include/bsd`). With libbsd-overlay, when `<string.h>` is included,
the BSD header chain is pulled in indirectly through the overlay
mechanism.

As a result, the compiler sees the strlcpy/strlcat prototypes and no
longer warns about implicit declarations, without requiring an explicit
`#include <bsd/string.h>`.

## Changes

- **configure.ac**: Added PKG_CHECK_MODULES for libbsd-overlay on
non-Android builds
- **src/Makefile.am**: Added @BSD_CFLAGS@ to LIBDSPRPC_CFLAGS and
@BSD_LIBS@ to library link flags
- **Workflows**: Updated CI workflows to install libbsd-dev package for
Linux builds

Fixes: #265
Document required dependencies (libyaml, libmd, libbsd) for
cross-compiling FastRPC on Ubuntu. Include step-by-step build
instructions with proper cross-compilation configuration for
aarch64-linux-gnu target to resolve dependency missing failures
during the build process.

Signed-off-by: Vinayak Katoch <vkatoch@qti.qualcomm.com>
Some may send the RPC_PM_QOS control-domain command. The current
driver does not support PM QoS operations, so return a false
success to preserve compatibility and avoid triggering unexpected
failures.

Signed-off-by: Jianping Li <jianping.li@oss.qualcomm.com>
- Introduces GitHub Actions workflow to build the Linux kernel using the
  FastRPC Docker image
- Runs weekly every Sunday at midnight UTC
- Builds kernel from qcom-next branch of qualcomm-linux/kernel
- Uploads compressed artifacts for debugging and validation

Signed-off-by: Tharun Kumar Merugu <mtharu@qti.qualcomm.com>
This workflow is an adapted copy of this workflow :
https://github.com/qualcomm-linux/pkg-template/blob/main/.github/workflows/to_paste_in_upstream/pkg-build-pr-check.yml

With this workflow in position, a PR in the upstream project repo (this
one) triggers a build or the sister package repo. The special repo
variable PKG_REPO_GITHUB_NAME will need to be set.

See visit https://github.com/qualcomm-linux/pkg-template for more info
about this whole CI workflow

Signed-off-by: Simon Beaudoin <sbeaudoi@qti.qualcomm.com>
This workflow is an adapted copy of this workflow :
https://github.com/qualcomm-linux/pkg-template/blob/main/.github/workflows/to_paste_in_upstream/pkg-build-pr-check.yml

With this workflow in position, a PR in the upstream project repo (this
one) triggers a build or the sister package repo (in this case, it will
be https://github.com/qualcomm-linux/pkg-fastrpc). The special repo
variable PKG_REPO_GITHUB_NAME will need to be set to
"qualcomm-linux/pkg-fastrpc" in this repo for this to work.

See visit https://github.com/qualcomm-linux/pkg-template for more info
about this whole CI workflow.

When a PR is open in this repo, this workflow will in turn call this one
:

https://github.com/qualcomm-linux/qcom-build-utils/blob/main/.github/workflows/qcom-upstream-pr-pkg-build-reusable-workflow.yml
What it will do is try to compile the debian package from the
"qualcomm-linux/pkg-fastrpc" but with the changes from the PR opened on
this side added in order to test that the debian package will still
build if this PR were to be merged.

Ultimately, there will be even more tests downstream from that, like
integration tests in a whole distro.
Some may send the RPC_PM_QOS control-domain command. The current driver
does not support PM QoS operations, so return a false success to
preserve compatibility and avoid triggering unexpected failures.
This change updates the workflow to:

- Check LAVA job status using lavacli inside the Docker container
- Handle additional states such as Cancelled, Incomplete, or timeout (>2
hours)
- Wait until the job reaches Finished before proceeding
- Fetch test results on completion and set pass/fail summary in GitHub
Actions
- Update the step summary with job ID, URL, and final status

This improves reliability of LAVA-triggered test pipelines and prevents
workflows from hanging or reporting incorrect results.
## Summary
This PR adds a new GitHub Actions workflow that performs a weekly kernel
build using the FastRPC Docker image. The workflow automatically builds
the Linux kernel from the `qcom-next` branch of the
`qualcomm-linux/kernel` repository and uploads the generated artifacts.

## Key Features
- Weekly scheduled run (`cron: 0 0 * * 0`)
- Builds kernel using custom FastRPC Docker environment
- Zips and uploads all build artifacts for downstream testing
- Ensures automated, consistent kernel snapshots for validation

## Verification
The workflow has been successfully tested and verified in the staging
environment. You can review the successful run here:

🔗 **Staging Run:**  
https://github.com/qualcomm-linux-stg/fastrpc/actions/runs/21269727139

## Why This Change?
- Provides regular kernel builds aligned with upstream changes
- Enables automated testing and faster detection of regressions
- Ensures stable and reproducible artifact availability for the team

## Notes
- Workflow triggers automatically every Sunday at midnight UTC
- No changes to existing workflows or build logic outside this addition
-This change adds support for a precompiled kernel
 image by implementing a nightly kernel build workflow
 that compiles the kernel once and uploads the resulting
 artifacts to S3. PR workflows are updated to download
 these nightly artifacts when generating the ramdisk,
 removing the need to rebuild the kernel within every PR.
-This eliminates repeated kernel rebuilds across PRs,
 significantly reducing CI time, compute usage, and
 kernel‑related failure noise.

Signed-off-by: Tharun Kumar Merugu <mtharu@qti.qualcomm.com>
Document required dependencies (libyaml, libmd, libbsd) for
cross-compiling FastRPC on Ubuntu. Include step-by-step build
instructions with proper cross-compilation configuration for
aarch64-linux-gnu target to resolve dependency missing failures during
the build process.

Fixes: #274
Autotools expects library dependencies to be specified via *_LIBADD,
not LDFLAGS. Placing -ldl -lm and $(USE_LOG) in *_LIBADD ensures
libtool orders them after objects and before dependent libs, and
prevents it from treating dependent libs as linker flags.

This fixes a non-Android link failure on aarch64 where libtool tried
to load a .la for BSD and errored with:
  libtool:   error: '/usr/aarch64-linux-gnu/lib/libbsd.la' is not a
  valid libtool archive

By moving these flags into lib{adsp,cdsp,sdsp,gdsp}rpc_la_LIBADD and
keeping LDFLAGS limited to versioning, the link completes cleanly
across targets.

Signed-off-by: Abhinav Parihar <parihar@qti.qualcomm.com>
Jianping (Jianping-Li) and others added 25 commits April 28, 2026 14:24
remote_mmap64_internal() currently uses the MMAP_64 ioctl for all
mapping flags. However, MMAP_64 is only supported for specific use
cases such as adding pages or mapping the remote heap.

Update remote_mmap64_internal() to route only ADSP_MMAP_ADD_PAGES and
ADSP_MMAP_REMOTE_HEAP_ADDR through the MMAP_64 ioctl. All other flags
now fall back to fastrpc_mmap_internal(), which provides broader backend
support.

Because the use of fastrpc_mmap_internal has been moved inside
remote_mmap64_internal, the application of fastrpc_mmap_internal in
apps_mem_imp.c will be reverted.

Signed-off-by: Jianping Li <jianping.li@oss.qualcomm.com>
Replace pull_request_target with pull_request in PR workflows to follow
GitHub security practices and avoid elevated permissions during PR
validation.
Carrying 2 fixes

1. Initialize apps_std earlier to ensure it is available before being
used by config and listener paths.

2. guard against refcount underflow in fastrpc session put
DSP runtime logs emitted by adspmsgd are currently written to stdout
using printf(), which causes them to be routed to the console instead of
systemd journal on Linux systems.

Add support for routing logs via syslog when USE_SYSLOG is enabled, and
use platform-specific logging backends where applicable. This ensures
that runtime DSP logs are correctly captured by journalctl on Linux
while preserving existing Android logging behavior.

Fallback to stdout is retained for non-Android and non-syslog builds.
remote_mmap64_internal() currently uses the MMAP_64 ioctl for all
mapping flags. However, MMAP_64 is only supported for specific use cases
such as adding pages or mapping the remote heap.

Update remote_mmap64_internal() to route only ADSP_MMAP_ADD_PAGES and
ADSP_MMAP_REMOTE_HEAP_ADDR through the MMAP_64 ioctl. All other flags
now fall back to fastrpc_mmap_internal(), which provides broader backend
support.

Because the use of fastrpc_mmap_internal has been moved inside
remote_mmap64_internal, the application of fastrpc_mmap_internal in
apps_mem_imp.c will be reverted.
GDSP0_DOMAIN_ID and GDSP1_DOMAIN_ID are internal platform-specific
constants not part of the Hexagon SDK API. Move them out of the
inc/remote.h into inc/fastrpc_common.h to align remote.h with the
Hexagon SDK remote.h surface.
Use portable PRIx64 and PRId64 format specifiers from inttypes.h
instead of %llx and %lld for uint64_t and int64_t types. This fixes
compiler warnings on platforms where these types are defined as
'long' rather than 'long long'.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
The fopen_from_dirlist function was incorrectly modifying its
const char* dirList parameter. Fix this by creating a local copy of
the directory list, preserving the const contract with callers.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Eliminate warnings caused by the use of the same buffer as both
source and destination in string operations.

Changes:
- fastrpc_apps_user.c: Replace strlcpy(pdName, pdName, len) with
  a direct null-termination to truncate string in place
- mod_table.c: Replace snprintf(tmp, ..., tmp) with strlcat to
  append the "_system.so" suffix without buffer overlap

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Remove the "bail" label by replacing the goto with an early return as
the unused label was causing warnings.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Remove unused GDSP library variable definitions from Makefile.am
that were causing automake warnings. GDSP daemon correctly shares
the CDSP libraries rather than building separate GDSP-specific
libraries.

Add comments ahead of gdsp => cdsp usage to make it clear these are
by design.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Handle return values from write() calls to ftrace trace_marker_fd
to avoid warnings from -Wunused-result warnings.

For the begin trace marker, check if the write succeeded before
setting trace_enabled to ensure we only write the end marker if
the begin marker was successfully written.

For the end trace marker, capture the return value in an unused
variable since this is in the cleanup code path.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Add --enable-stricter configure flag to enable security hardening
and strict warning flags based on Debian's dpkg-buildflags defaults.
This helps compatibility with distros and allows detecting more
issues during development.

Use --enable-stricter in CI workflow to catch regressions early.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Remove unused 'pn' and 'pnn' variables that were declared but never
used in the remote_munmap64 function as part of f68b30a; fixes build
warning.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Various build warning fixes, and improvements to CI builds flags.
- **Fix format string warnings for 64-bit integer types**
- **Fix const qualifier warnings from fopen_from_dirlist**
- **Fix -Wrestrict warnings due to overlapping buffers**
- **Fix -Wint-in-bool-context warnings in _ALLOCATE**
- **Fix unused label warnings in dsprpcd daemons**
- **Fix GDSP library build configuration**
- **Fix unused result warnings for trace marker writes**
- **Add and use --enable-stricter configure flag**
- **Remove unused userspace allocation check**

Fixes: #329
systemd derives unit names from device paths by replacing each '/'
with '-' and escaping any literal '-' in the path as '\x2d'. So for
/dev/fastrpc-* nodes the correct device unit name for e.g.
/dev/fastrpc-adsp is dev-fastrpc\x2dadsp.device, not
dev-fastrpc-adsp.device (which would refer to /dev/fastrpc/adsp).

Fix all seven service files accordingly. Without this the After=
ordering constraints were silently ignored.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Set up udev rules to enable FastRPC access through the fastrpc
group. Non-secure device nodes use root:fastrpc ownership and
0660 permissions to allow daemon and client access without root.

Leave secure device nodes unchanged to preserve default
ownership and permissions. Changes to secure node handling
will be addressed separately.

Set SYSTEMD_WANTS for device-triggered daemon start and add
audiopd service trigger for ADSP devices.

Add configure support for installing udev rules and sysusers
configuration to create the fastrpc group. Document user/group
requirements in README.md.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Signed-off-by: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>
Services are automatically started when device nodes appear, so
attempting to starting services again on multi-user.target will not
do anything since these depend on the device nodes being present and
either won't start or would have already started.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Use PKG_CHECK_VAR to query systemd.pc for the installation directory
for systemd system unit files.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
The *rpcd daemons are system services that should be started with
the fastrpc group by udev/systemd, not user commands. Move them to
sbin following standard FHS conventions.

Fix the hardcoding of these pathnames in service files to be
properly generated by generating them dynamically.

Signed-off-by: Loïc Minier <loic.minier@oss.qualcomm.com>
Converge systemd services from Debian packaging with upstream ones with
fastrpc user/group.
- **files: fix device unit names in After= dependencies**
- **files: run daemons as dedicated fastrpc user**
- **files: add udev rules and fastrpc user/group**
This commit pulls in upstream changes from 'v1.0.6' into the
Debian packaging branch.

Since upstream project might have content of their own in their .github/
folder (because they have CI stuff on their side), it's important to NOT
pick up .github/ folder from upstream, and only leave the .github/
folder from debian packaging branch.

The same applies to debian/ folder if upstream has one (which is rare
but possible).

This commit was generated automatically by
qcom-build-utils/scripts/merge_debian_packaging_upstream.

Signed-off-by: GitHub Service Bot <githubservice@qti.qualcomm.com>
Signed-off-by: GitHub Service Bot <githubservice@qti.qualcomm.com>
Add libbsd-dev to Build-Depends for libbsd-overlay
pkg-config checks introduced in upstream 1.0.6.

Signed-off-by: Simon Beaudoin <sbeaudoi@qti.qualcomm.com>
Adjust fastrpc-support.install to pick daemons from usr/sbin.
Update not-installed entries for upstream-installed files that are
not packaged in this branch.

Signed-off-by: Simon Beaudoin <sbeaudoi@qti.qualcomm.com>
@simonbeaudoin0935

Simon Beaudoin (simonbeaudoin0935) commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Robie Basak (@basak-qcom)
Ekansh Gupta (@ekanshibu)

Robie, ekansh reached out to me to get this working; he asked to support the ubuntu noble distro.

I therefore went and created the branch qcom/ubuntu/noble from qcom/ubuntu/trixie which was pegged at 1.0.2

Then, I prepped the branch by doing a changelog cleanup (a22043c: dropped older entries, kept current top UNRELEASED flow) and version cleanup (abc2f64: removed ~).

Then, I ran the promotion workflow on the qcom/ubuntu/noble branch for upstream tag v1.0.6

Then, I had to do a couple of things to get the get the pkg-promote workflows green:

  • Removed branch-local debian/gbp.conf override (71d60fc) that forced upstream/v%(version)s and conflicted with the pkg-promote convention. The convention is "upstream/%(version)s" everywhere else accross other repos, only here in pkg-fastrpc do we have a gbp.conf which overrode that. I removed it in this branch, but it shall be removed in all packaging branches also tbh. This caused an error because during the promotion workflow, the tag upstream/1.0.6 was created, but then because of the gbp.conf override, during the build gbp looked for a tag 'upstream/v1.0.6'.

  • Repo had mixed upstream tags (upstream/<version> and one upstream/v1.0.2).

  • Removed the stray upstream/v1.0.2 tag so pkg-promote latest-tag checks align with upstream/<normalized_version> and allow promote to v1.0.6. Just to be clear, there were an 'upstream/v1.0.2' AND a 'upstream/1.0.2' tags, both pointing to the same commit. So i removed the one with the 'v', which was thowing verification logic off in the promotion logic. The verification logic is in the promotion workflow where it checks the chronology of the tags, to make sure we are not trying to promote to past versions, etc. and the logic assumes tags upstream/%(version)s, not a mix with upstream/%(version).

  1. Fixed packaging issues found by PR Build (Docker)
  • Added missing build dependency for new upstream configure checks:
    • debian/control: add libbsd-dev (581c06a).
  • Fixed install manifest path drift from upstream daemon move to sbin_PROGRAMS:
    • debian/fastrpc-support.install: use usr/sbin/{adsprpcd,cdsprpcd,sdsprpcd} (28f907c).
  • Updated debian/not-installed to match newly installed-but-unpackaged upstream files (systemd units, udev rule, sysusers file, gdsprpcd) (28f907c).

After these adjustments, the noble promote/build path with the current pkg-workflows succeeded.

Now, I remember we had talked about that gbp.conf file a long time ago and the convo just died, but then with this its coming back to the surface. I think we should drop that gbp.conf file. The standard says upstream/%(version)s is the default assumed schema, which I followed, and therefore it makes no sense to declare an override in a gbp.conf, no?. The idea is to really not need it at all in my opition, this way we avoid the mess of having such defaults be overriden in some repos / branches and not other.

Now, the failing test is due to the ingestion of upstream repo commits which contain bad emails.. I think we are going to have to deal with this scenario which is coming up often now, but for this we can ignore it

@ekanshibu

Copy link
Copy Markdown

Thanks for the support and detailed summary Simon Beaudoin (@simonbeaudoin0935) !

@ekanshibu

Copy link
Copy Markdown

adding Jianping (@Jianping-Li) to review as he has tried v1.0.6 locally

@@ -1,5 +1,5 @@
debian/adsprpcd.service usr/lib/systemd/system/
debian/cdsprpcd.service usr/lib/systemd/system/

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I noticed it doesn't install:

systemd services

usr/lib/systemd/system/*.service

udev + sysusers

usr/lib/udev/rules.d/60-fastrpc.rules
usr/lib/sysusers.d/fastrpc.conf

daemons

usr/sbin/adsprpcd usr/sbin
usr/sbin/cdsprpcd usr/sbin
usr/sbin/sdsprpcd usr/sbin
usr/sbin/gdsprpcd usr/sbin

These files are required for creating the fastrpc group, setting FastRPC device permissions, enabling DMA heap access, and automatically starting the RPC daemons through udev/systemd.
Could you please check whether these files are being installed elsewhere in the new packaging? I don't see them in the fastrpc-support.install change.

@lool Loïc Minier (lool) left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please note the new build-dep in the debian/changelog and drop the debian/ service files if you can; I'd prefer landing this in debian/latest first, then merging to noble.

Comment thread debian/control
Section: misc
Priority: optional
Build-Depends: debhelper-compat (= 13), libyaml-dev, pkgconf
Build-Depends: debhelper-compat (= 13), libyaml-dev, libbsd-dev, pkgconf

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change must me mentioned in debian/changelog

Comment thread debian/not-installed
@@ -1,4 +1,13 @@
usr/bin/gdsprpcd
usr/sbin/gdsprpcd
lib/systemd/system/adsprpcd.service

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've spent some time so that upstream fastrpc would install the right files:

  • systemd services
  • systemd file to create relevant user/groups
  • udev rules

They should fit together and supersede what we had to do in the packaging. The idea is that each distro should not have to reinvent how fastrpc should be running.

When a new upstream release adding these comes out, we should drop the packaging workarounds for systemd services, udev etc. and use the upstream versions (like for the usr/sbin pathnames, which I also sent upstream :)).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.