diff --git a/RELEASE_NOTES.rst b/RELEASE_NOTES.rst index bdc55724d..3a9a6d21a 100644 --- a/RELEASE_NOTES.rst +++ b/RELEASE_NOTES.rst @@ -21,6 +21,8 @@ Highlights: be brought up Ctrl-P (Ctrl+Return to immediately submit the selected entry with the default arguments). * Experiment results are now always saved to HDF5, even if run() fails. +* Core device: ``panic_reset 1`` now correctly resets the kernel CPU as well if + communication CPU panic occurs. Breaking changes: diff --git a/artiq/firmware/runtime/main.rs b/artiq/firmware/runtime/main.rs index b40c0d097..fda9d37ba 100644 --- a/artiq/firmware/runtime/main.rs +++ b/artiq/firmware/runtime/main.rs @@ -323,7 +323,10 @@ pub fn panic_impl(info: &core::panic::PanicInfo) -> ! { if config::read_str("panic_reset", |r| r == Ok("1")) { println!("restarting..."); - unsafe { boot::reset() } + unsafe { + kernel::stop(); + boot::reset(); + } } else { println!("halting."); println!("use `artiq_coremgmt config write -s panic_reset 1` to restart instead");