Skip to content

GDB and gdbserver cannot step on Linux targets #631

Open
@kolerov

Description

@kolerov

A sample program:

#include <stdio.h>

int main()
{
        printf("Hello, World!\n");
        return 0;
}

Try to perform step on ARC HS3x/4x Linux host using native GDB:

# gdb -q main-hs4x-glibc
Reading symbols from main-hs4x-glibc...
(gdb) b main
warning: could not convert 'main' from the host encoding (ANSI_X3.4-1968) to UTF-32.
This normally should not happen, please file a bug report.
Breakpoint 1 at 0x540: file main.c, line 5.
(gdb) run
Starting program: /root/main-hs4x-glibc
Breakpoint 1, main () at main.c:5
warning: Source file is more recent than executable.
5               printf("Hello, World!\n");
(gdb) step
Warning:
Cannot insert breakpoint 0.
Cannot access memory at address 0x0

0x200629b8 in ?? ()

Try to perform stepi on ARC HS3x/4x Linux host using native GDB:

# gdb -q main-hs4x-glibc
Reading symbols from main-hs4x-glibc...
(gdb) b main
warning: could not convert 'main' from the host encoding (ANSI_X3.4-1968) to UTF-32.
This normally should not happen, please file a bug report.
Breakpoint 1 at 0x540: file main.c, line 5.
(gdb) run
Starting program: /root/main-hs4x-glibc
Breakpoint 1, main () at main.c:5
warning: Source file is more recent than executable.
5               printf("Hello, World!\n");
(gdb) stepi
0x40000548      5               printf("Hello, World!\n");
(gdb) stepi
0x4000054a      5               printf("Hello, World!\n");

The same issue exists when debugging using gdbserver on a target system. The issue may be reproduced at least for arc-2023.09 release and later.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions