Re: [PATCH 3/4] kgdb: Respect that flush op is optional

From: Jason Wessel
Date: Fri Mar 16 2012 - 12:17:08 EST


On 03/16/2012 07:53 AM, Jan Kiszka wrote:
> On 2012-03-16 13:46, Jason Wessel wrote:
>> On 03/16/2012 07:17 AM, Jan Kiszka wrote:
>>> Not all kgdb I/O drivers implement a flush operation. Adjust
>>> gdbstub_exit accordingly.
>> The flush is certainly optional. The reason we never saw this bug is because it was only used by some code not in the mainline, where it is in fact patched. The out of tree patch hooked into the reboot notifier.
>>
>> It makes me wonder if using the reboot notifier is enough vs the call backs you placed in the critical power off points in your patch [4/4]. I'll respond separately to that thread because there are other folks in the CC line.
> I looked at other (granted: not kgdb-) archs and found them hooking
> their machine_xxx handlers. Also, do we trigger the notifier on all
> reboot/shutdown types?

>From what I can tell, all the safe shutdown types go through notifier, however if you do something like:

echo o > /proc/sysrq-trigger

This will avoid the reboot notifier hook. It is a question of how aggressively you want to catch all these cases or patch the kernel such that these holes provide notifications.

>> If we decide to roll with this series, I will definitely merge this patch, else I will remove the code since it is not used except for out of tree patches.
> Even with a reboot notifier, you still need the logic of gdbstub_exit.
> So I doubt it makes sense to be removed, rather start to be used - finally.

You are correct about that, and it is actually used in the reboot notifier version.

Jason.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/