Skip to content

Segmentation fault in postinst script #744

@Julius98

Description

@Julius98

Hi,

we have a problem using iot hub device update with Debian 12 on armhf. We built it from source because there is no package provided. Then the .deb file was extracted and installed on the target system. That package additionally requested delivery optimization which was also build from source and then installed succesfully. Intalling deviceupdate-agent now fails in the postinst script.

Expected Behavior

Normal adu agent installation and operation.

Current Behavior

Fails with segmentation fault when running postinst script.

Steps to Reproduce

  1. Build for Debian 12 armhf (we tried docker with qemu emulation, raspberry pi5 running raspbian32 bit and also compiling on our target device stm32mp1 based)
  2. Extract .deb package
  3. Try install

Device Information

  • Host OS [Debian12]:
  • Architecture [arm32]:
  • Provisioning Method: Iot Edge (ais)
    *DU Agent Version : 1.2.0

Logs

******************** Running /var/lib/dpkg/info/deviceupdate-agent.postinst configure ***********************
Setting directories and files...
Generate the template configuration file...
Generating the diagnostics configuration file...
Create data dir...
drwxrwx--- 3 adu adu 4096 Apr 22 13:48 /var/lib/adu
drwxrwx--- 2 adu adu 4096 Apr 22 13:48 /var/lib/adu/downloads
Register all reference step handlers...
/var/lib/dpkg/info/deviceupdate-agent.postinst: line 218: 7426 Segmentation fault $adu_bin_path -l 2 --extension-type updateContentHandler --extension-id "microsoft/apt:1" --register-extension $adu_extensions_sources_dir/$adu_apt_handler_file
dpkg: error processing package deviceupdate-agent (--configure):
installed deviceupdate-agent package post-installation script subprocess returned error exit status 139
Errors were encountered while processing:
deviceupdate-agent
E: Sub-process /usr/bin/dpkg returned an error code (1)

Additional Information

We allready tried commenting parts of the postinst script but the behaviour is the same for all extensions also when excetued seperatly from the install script.

Dockerfile for reproduction;

FROM --platform=linux/arm/v7 debian:bookworm

RUN apt-get update &&
apt-get install -y git

WORKDIR /adu
RUN git clone https://github.com/Azure/iot-hub-device-update.git

WORKDIR /adu/iot-hub-device-update
RUN git fetch --tags && git checkout tags/1.2.0

RUN ./scripts/install-deps.sh --install-all-deps --cmake-force-source

RUN ./scripts/build.sh -c -u --build-packages

VOLUME ["/adu/iot-hub-device-update/out"]

CMD ["bash"]

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions