Ingo, Don't you think it would be useful to have some reserved memory for the netconsole use ? It would be nice to have a guarantee that messages are sent over network even if the system is under real OOM. On Wed, 26 Sep 2001, Ingo Molnar wrote: > > this is the first public release of the 'netconsole patch', a debugging > patch that implements kernel-level network logging via UDP packets. > > the special thing about this approach is the ability to send 'emergency' > network packets even from IRQ handlers. This enables the netconsole to > send enough info even if we crash in init or in an interrupt handler. > > another property of netconsole is that it's able to share the networking > device with other kernel subsystems, like the TCP/IP stack. So the > networking device is not dedicated for netconsole use, it's transparently > shared. > > netconsole is also designed to be robust, it goes straight to the network > driver, so it does not depend on the networking stack to log messages. > > kernel-level netlogging is useful in a number of scenarios: > > - if remotely managed systems with no serial cable logging keep crashing > without any trace of an oops message in the userspace log. (the patch > was written to debug such a crash. Original idea of sending an > emergency packet from IRQ handlers comes from Daniel Veillard who's > system produced the crash - thanks Daniel!) > > - if for whatever reason the amount of logging is so high that a serial > console cannot hold it and disks can not keep up - or in cases where > logged messages disturb the debugged subsystem. I'm sure fellow VM > hackers will find this useful :-) > > - the netconsole can be used to emit crashdumps over the network, without > any delay between the point of crash and start of netlogging. > > the kernel patch (against 2.4.10 or 2.4.9-ac), and a simple user-space > tool to display netconsole messages can be found at: > > http://redhat.com/~mingo/netconsole-patches/ > > sample startup of the netconsole on the server: > > insmod netconsole dev=eth1 target_ip=0x0a000701 \ > source_port=6666 \ > target_port=6666 \ > target_eth_byte0=0x00 \ > target_eth_byte1=0x90\ > target_eth_byte2=0x27 \ > target_eth_byte3=0x8C \ > target_eth_byte4=0xA0 \ > target_eth_byte5=0xA8 > > and on the client: > > # ./netconsole-client -server 10.0.7.5 -client 10.0.7.1 -port 6666 > [...network console startup...] > netconsole: network logging started up successfully! > SysRq : Loglevel set to 9 > > more about features and limitations can be found under: > > Documentation/networking/netlogging.txt > > reports, comments, suggestions welcome. > > Ingo > > - > : send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ > - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html