Skip to content

pstore doesn't persist panics correctly #362

Open
@fionera

Description

@fionera

While hacking around I found out that our pstore implementation doesn't correctly persist panics.

Metropolis: this is /dev/ttyS0. Verbose node logs follow.

        panichandler I Panic console: /dev/ttyS0
        panichandler I Panic console: /dev/ttyS1
                init I Starting Metropolis node init
                init I Version: v0.1.0-dev880.gc441f0b4.dirty
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x2548be7]

goroutine 1 [running]:
main.main()
        metropolis/node/core/main.go:280 +0xc67

 Metropolis encountered an uncorrectable error and this node must be restarted.
core exit status: 2
  Disks synced, rebooting...

[    4.116511] reboot: Restarting system
=
BdsDxe: loading Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x4,0x0)
BdsDxe: starting Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x4,0x0)
[TRACE]: external/rules_rust~~crate~crate_index_efi__uefi-0.24.0/src/fs/file_system/fs.rs@327: Can't open file \EFI\metropolis\loader_state.pb: Error { status: NOT_FOUND, data: () }
Unable to load A/B loader state, using default slot A: while reading state file: IO error
Booting into Slot A

  Metropolis Cluster Operating System
  Copyright 2020-2024 The Monogon Project Authors


Metropolis: this is /dev/ttyS0. Verbose node logs follow.

        panichandler I Panic console: /dev/ttyS0
        panichandler I Panic console: /dev/ttyS1
                init I Starting Metropolis node init
                init I Version: v0.1.0-dev880.gc441f0b4.dirty
              pstore W �

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingc/nodeIssues related to low-level node services and startup

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions