From dc6132dc06dfb3f52d337e164a00d6502c1f6f2c Mon Sep 17 00:00:00 2001 From: Aaron Janse Date: Mon, 17 Aug 2020 03:24:56 -0700 Subject: [PATCH] elaborate error message for initfs chdir failure --- src/lib.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/lib.rs b/src/lib.rs index b816c13..0c78f18 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -170,7 +170,12 @@ pub extern fn userspace_init() { let path = b"initfs:/bin/init"; let env = unsafe { INIT_ENV }; - assert_eq!(syscall::chdir(b"initfs:"), Ok(0)); + if let Err(err) = syscall::chdir(b"initfs:") { + info!("Failed to enter initfs ({}).", err); + info!("Perhaps the kernel was compiled with an incorrect INITFS_FOLDER \ + environment variable value?"); + panic!("Unexpected error while trying to enter initfs:."); + } assert_eq!(syscall::open(b"debug:", syscall::flag::O_RDONLY).map(FileHandle::into), Ok(0)); assert_eq!(syscall::open(b"debug:", syscall::flag::O_WRONLY).map(FileHandle::into), Ok(1));