Skip to content

dns resolve timeout leads to CPU memory access violation error #34931

@nimarty

Description

@nimarty

Describe the bug
Zephyr OS crashes when trying to do a DNS resolve. Zephyr runs in QEMU (qemu_x86). zsock_getaddrinfo() from getaddrinfo.c is used.

To Reproduce
Steps to reproduce the behavior:

  1. build for qemu_x86 and run
  2. simple application sends a dns query from within main() using api mentioned in description.
  3. zephyr fatal error

Expected behavior
When the DNS server is not reachable, then the query timeout should not lead to a fatal error.

Impact
Cannot run dns resolver in qemu, which is part of a bigger application which i would like to test in qemu.

Logs and console output

[00:00:03.200,000] <dbg> net_dns_resolve.query_timeout: (sysworkq): Query timeout DNS req 2436 type 1 hash 23545
[00:00:03.200,000] <dbg> net_dns_resolve.dns_resolve_cancel_with_hash: (sysworkq): Cancelling DNS req 2436 (name httpbin.org type 1 hash 23545)
[00:00:03.200,000] <dbg> net_sock_addr.dns_resolve_cb: (sysworkq): dns status: -101
[00:00:03.200,000] <err> os: Page fault at address 0x3 (error code 0x0)
[00:00:03.200,000] <err> os: Linear address not present in page tables
[00:00:03.200,000] <err> os: Access violation: supervisor thread not allowed to read
[00:00:03.200,000] <err> os: PTE: not present
[00:00:03.200,000] <err> os: EAX: 0x00000003, EBX: 0x00000003, ECX: 0x00000050, EDX: 0x00000000
[00:00:03.200,000] <err> os: ESI: 0x00000012, EDI: 0x0015cb0c, EBP: 0x0015cb70, ESP: 0x0015cb64
[00:00:03.210,000] <err> os: EFLAGS: 0x00000046 CS: 0x0008 CR3: 0x00165000
[00:00:03.210,000] <err> os: call trace:
[00:00:03.210,000] <err> os: EIP: 0x001014c6
[00:00:03.210,000] <err> os:      0x00130e1d (0x15cb0c)
[00:00:03.210,000] <err> os:      0x001314dd (0x15cb0c)
[00:00:03.210,000] <err> os:      0x001317b7 (0x15cb0c)
[00:00:03.210,000] <err> os:      0x0010a21f (0x15cb0c)
[00:00:03.210,000] <err> os:      0x0012e566 (0xffffff9b)
[00:00:03.210,000] <err> os:      0x0012e637 (0x13b4c0)
[00:00:03.210,000] <err> os:      0x00102091 (0x1414a8)
[00:00:03.210,000] <err> os:      0x00101e61 (0x141780)
[00:00:03.210,000] <err> os: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
[00:00:03.210,000] <err> os: Current thread: 0x1417a0 (sysworkq)
[00:00:03.220,000] <err> os: Halting system

Environment (please complete the following information):

  • OS: Linux
  • Zephyr v2.4.99-ncs1

Metadata

Metadata

Assignees

Labels

area: NetworkingbugThe issue is a bug, or the PR is fixing a bugpriority: lowLow impact/importance bug

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions