Comment 4 for bug 2009595

Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :

GDB session with crash from git.

(gdb) p pc.namelist
$11 = 0x7fffffffed7f "../usr/lib/debug/boot/vmlinux-6.1.0-16-generic"

(gdb) p kt.proc_version
$12 = "Linux version 6.1.0-16-generic (buildd@lcy02-amd64-014) (x86_64-linux-gnu-gcc-12 (Ubuntu 12.2.0-14ubuntu2) 12.2.0, GNU ld (GNU Binutils for Ubuntu) 2.40) #16-Ubuntu SMP PREEMPT_DYNAMIC Fri Feb 24 14:3"...

Breakpoint 6, match_file_string (filename=0x7fffffffed7f "../usr/lib/debug/boot/vmlinux-6.1.0-16-generic",
    string=0x5555560f0e20 <kernel_table+128> "Linux version 6.1.0-16-generic (buildd@lcy02-amd64-014) (x86_64-linux-gnu-gcc-12 (Ubuntu 12.2.0-14ubuntu2) 12.2.0, GNU ld (GNU Binutils for Ubuntu) 2.40) #16-Ubuntu SMP PREEMPT_DYNAMIC Fri Feb 24 14:3"...,
    buffer=buffer@entry=0x7fffffffdce0 "crash.o") at ./filesys.c:4314
4314 {
(gdb) l
...
4312 static int
4313 match_file_string(char *filename, char *string, char *buffer)
4314 {
4315 int found;
4316 char command[BUFSIZE];
4317 FILE *pipe;
4318
(gdb)
4319
4320 sprintf(command, "/usr/bin/strings %s", filename);
4321 if ((pipe = popen(command, "r")) == NULL) {
4322 error(INFO, "%s: %s\n", filename, strerror(errno));
4323 return FALSE;
4324 }
4325
4326 found = FALSE;
4327 while (fgets(buffer, BUFSIZE-1, pipe)) {
4328 if (strstr(buffer, string)) {
(gdb)
4329 found = TRUE;
4330 break;
4331 }
4332 }
4333 pclose(pipe);
4334
4335 return found;
4336 }
...

(gdb) printf "%s\n", string
Linux version 6.1.0-16-generic (buildd@lcy02-amd64-014) (x86_64-linux-gnu-gcc-12 (Ubuntu 12.2.0-14ubuntu2) 12.2.0, GNU ld (GNU Binutils for Ubuntu) 2.40) #16-Ubuntu SMP PREEMPT_DYNAMIC Fri Feb 24 14:37:30 UTC 2023 (Ubuntu 6.1.0-16.16-generic 6.1.6)

(gdb) shell

# cat /proc/version
Linux version 6.1.0-16-generic (buildd@lcy02-amd64-014) (x86_64-linux-gnu-gcc-12 (Ubuntu 12.2.0-14ubuntu2) 12.2.0, GNU ld (GNU Binutils for Ubuntu) 2.40) #16-Ubuntu SMP PREEMPT_DYNAMIC Fri Feb 24 14:37:30 UTC 2023 (Ubuntu 6.1.0-16.16-generic 6.1.6)

# cat /proc/version_signature
Ubuntu 6.1.0-16.16-generic 6.1.6

# strings ../usr/lib/debug/boot/vmlinux-6.1.0-16-generic | grep 'Linux version'
Linux version 6.1.0-16-generic (buildd@lcy02-amd64-014) (x86_64-linux-gnu-gcc-12 (Ubuntu 12.2.0-14ubuntu2) 12.2.0, GNU ld (GNU Binutils for Ubuntu) 2.40) #16-Ubuntu SMP PREEMPT_DYNAMIC
Linux version 6.1.0-16-generic (buildd@lcy02-amd64-014) (x86_64-linux-gnu-gcc-12 (Ubuntu 12.2.0-14ubuntu2) 12.2.0, GNU ld (GNU Binutils for Ubuntu) 2.40) #16-Ubuntu SMP PREEMPT_DYNAMIC Fri Feb 24 14:37:30 UTC 2023