crash_kexec in oops_end() and panic()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

These two paths seem to be duplicating each other. We have an issue 
where we're using mtdoops to collect kernel logs on oops and panic, we 
also have a crash kernel (which also collects these logs). mtdoops saves 
logs differently for oops and panic, since oops isn't always fatal it 
schedules a write to the flash. Since panic() is always fatal is writes 
the logs immediately. In oops_end() the crash kernel runs immediately 
while still signaling an OOPS condition to mtdoops. Since mtdoops 
schedules a write to flash later, there is no later since the crash 
kernel runs immediately, we end up without getting the logs

I'm wondering what the significance is to have these two paths ? 
oops_end() could just call into panic() or a modified panic_with_regs() 
then we would collapse multiple paths. There is what I would call a hack 
in kexec_should_crash() which checks if there are 
crash_kexec_post_notifiers and it runs panic() if they exist. This 
wouldn't be needed if we always called panic() . I also wonder if there 
are other things in panic() which we should be running , but don't get 
run because of these two paths.


Any info appreciated.


Daniel




[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux