€•œHŒsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ"/translations/zh_CN/watchdog/hpwdt”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/zh_TW/watchdog/hpwdt”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/it_IT/watchdog/hpwdt”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/ja_JP/watchdog/hpwdt”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/ko_KR/watchdog/hpwdt”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/sp_SP/watchdog/hpwdt”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒHPE iLO NMI Watchdog Driver”h]”hŒHPE iLO NMI Watchdog Driver”…””}”(hh¨hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h¦hh£hžhhŸŒ 0, the timer is reprogrammed with the greater of value or current timeout value. ============ ================================================================ NOTE: More information about watchdog drivers in general, including the ioctl interface to /dev/watchdog can be found in Documentation/watchdog/watchdog-api.rst and Documentation/driver-api/ipmi.rst Due to limitations in the iLO hardware, the NMI pretimeout if enabled, can only be set to 9 seconds. Attempts to set pretimeout to other non-zero values will be rounded, possibly to zero. Users should verify the pretimeout value after attempting to set pretimeout or timeout. Upon receipt of an NMI from the iLO, the hpwdt driver will initiate a panic. This is to allow for a crash dump to be collected. It is incumbent upon the user to have properly configured the system for kdump. The default Linux kernel behavior upon panic is to print a kernel tombstone and loop forever. This is generally not what a watchdog user wants. For those wishing to learn more please see: - Documentation/admin-guide/kdump/kdump.rst - Documentation/admin-guide/kernel-parameters.txt (panic=) - Your Linux Distribution specific documentation. If the hpwdt does not receive the NMI associated with an expiring timer, the iLO will proceed to reset the system at timeout if the timer hasn't been updated. ”h]”(hÉ)”}”(hŒžThe HPE iLO NMI Watchdog driver is a kernel module that provides basic watchdog functionality and handler for the iLO "Generate NMI to System" virtual button.”h]”hŒ¢The HPE iLO NMI Watchdog driver is a kernel module that provides basic watchdog functionality and handler for the iLO “Generate NMI to System†virtual button.”…””}”(hhÞhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K hhÚubhÉ)”}”(hŒbAll references to iLO in this document imply it also works on iLO2 and all subsequent generations.”h]”hŒbAll references to iLO in this document imply it also works on iLO2 and all subsequent generations.”…””}”(hhìhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KhhÚubhÉ)”}”(hXõWatchdog functionality is enabled like any other common watchdog driver. That is, an application needs to be started that kicks off the watchdog timer. A basic application exists in tools/testing/selftests/watchdog/ named watchdog-test.c. Simply compile the C file and kick it off. If the system gets into a bad state and hangs, the HPE ProLiant iLO timer register will not be updated in a timely fashion and a hardware system reset (also known as an Automatic Server Recovery (ASR)) event will occur.”h]”hXõWatchdog functionality is enabled like any other common watchdog driver. That is, an application needs to be started that kicks off the watchdog timer. A basic application exists in tools/testing/selftests/watchdog/ named watchdog-test.c. Simply compile the C file and kick it off. If the system gets into a bad state and hangs, the HPE ProLiant iLO timer register will not be updated in a timely fashion and a hardware system reset (also known as an Automatic Server Recovery (ASR)) event will occur.”…””}”(hhúhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KhhÚubhÉ)”}”(hŒ:The hpwdt driver also has the following module parameters:”h]”hŒ:The hpwdt driver also has the following module parameters:”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KhhÚubhŒtable”“”)”}”(hhh]”hŒtgroup”“”)”}”(hhh]”(hŒcolspec”“”)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”K uh1j hjubj!)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”K@uh1j hjubhŒtbody”“”)”}”(hhh]”(hŒrow”“”)”}”(hhh]”(hŒentry”“”)”}”(hhh]”hÉ)”}”(hŒ soft_margin”h]”hŒ soft_margin”…””}”(hjEhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KhjBubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hj=ubjA)”}”(hhh]”hÉ)”}”(hŒMallows the user to set the watchdog timer value. Default value is 30 seconds.”h]”hŒMallows the user to set the watchdog timer value. Default value is 30 seconds.”…””}”(hj\hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KhjYubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hj=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j;hj8ubj<)”}”(hhh]”(jA)”}”(hhh]”hÉ)”}”(hŒtimeout”h]”hŒtimeout”…””}”(hj|hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h Khjyubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hjvubjA)”}”(hhh]”hÉ)”}”(hŒan alias of soft_margin.”h]”hŒan alias of soft_margin.”…””}”(hj“hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hjvubeh}”(h]”h ]”h"]”h$]”h&]”uh1j;hj8ubj<)”}”(hhh]”(jA)”}”(hhh]”hÉ)”}”(hŒ pretimeout”h]”hŒ pretimeout”…””}”(hj³hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K hj°ubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hj­ubjA)”}”(hhh]”hÉ)”}”(hŒÝallows the user to set the watchdog pretimeout value. This is the number of seconds before timeout when an NMI is delivered to the system. Setting the value to zero disables the pretimeout NMI. Default value is 9 seconds.”h]”hŒÝallows the user to set the watchdog pretimeout value. This is the number of seconds before timeout when an NMI is delivered to the system. Setting the value to zero disables the pretimeout NMI. Default value is 9 seconds.”…””}”(hjÊhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K hjÇubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hj­ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j;hj8ubj<)”}”(hhh]”(jA)”}”(hhh]”hÉ)”}”(hŒnowayout”h]”hŒnowayout”…””}”(hjêhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K%hjçubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hjäubjA)”}”(hhh]”hÉ)”}”(hŒ÷basic watchdog parameter that does not allow the timer to be restarted or an impending ASR to be escaped. Default value is set when compiling the kernel. If it is set to "Y", then there is no way of disabling the watchdog once it has been started.”h]”hŒûbasic watchdog parameter that does not allow the timer to be restarted or an impending ASR to be escaped. Default value is set when compiling the kernel. If it is set to “Yâ€, then there is no way of disabling the watchdog once it has been started.”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K%hjþubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hjäubeh}”(h]”h ]”h"]”h$]”h&]”uh1j;hj8ubj<)”}”(hhh]”(jA)”}”(hhh]”hÉ)”}”(hŒ kdumptimeout”h]”hŒ kdumptimeout”…””}”(hj!hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K*hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hjubjA)”}”(hhh]”hÉ)”}”(hŒÎMinimum timeout in seconds to apply upon receipt of an NMI before calling panic. (-1) disables the watchdog. When value is > 0, the timer is reprogrammed with the greater of value or current timeout value.”h]”hŒÎMinimum timeout in seconds to apply upon receipt of an NMI before calling panic. (-1) disables the watchdog. When value is > 0, the timer is reprogrammed with the greater of value or current timeout value.”…””}”(hj8hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K*hj5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j@hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j;hj8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j6hjubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1jhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jhhÚubhŒdefinition_list”“”)”}”(hhh]”hŒdefinition_list_item”“”)”}”(hŒÇNOTE: More information about watchdog drivers in general, including the ioctl interface to /dev/watchdog can be found in Documentation/watchdog/watchdog-api.rst and Documentation/driver-api/ipmi.rst ”h]”(hŒterm”“”)”}”(hŒNOTE:”h]”hŒNOTE:”…””}”(hjrhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jphŸh¶h K3hjlubhŒ definition”“”)”}”(hhh]”hÉ)”}”(hŒÀMore information about watchdog drivers in general, including the ioctl interface to /dev/watchdog can be found in Documentation/watchdog/watchdog-api.rst and Documentation/driver-api/ipmi.rst”h]”hŒÀMore information about watchdog drivers in general, including the ioctl interface to /dev/watchdog can be found in Documentation/watchdog/watchdog-api.rst and Documentation/driver-api/ipmi.rst”…””}”(hj…hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K1hj‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1j€hjlubeh}”(h]”h ]”h"]”h$]”h&]”uh1jjhŸh¶h K3hjgubah}”(h]”h ]”h"]”h$]”h&]”uh1jehhÚubhÉ)”}”(hXDue to limitations in the iLO hardware, the NMI pretimeout if enabled, can only be set to 9 seconds. Attempts to set pretimeout to other non-zero values will be rounded, possibly to zero. Users should verify the pretimeout value after attempting to set pretimeout or timeout.”h]”hXDue to limitations in the iLO hardware, the NMI pretimeout if enabled, can only be set to 9 seconds. Attempts to set pretimeout to other non-zero values will be rounded, possibly to zero. Users should verify the pretimeout value after attempting to set pretimeout or timeout.”…””}”(hj¥hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K5hhÚubhÉ)”}”(hŒÐUpon receipt of an NMI from the iLO, the hpwdt driver will initiate a panic. This is to allow for a crash dump to be collected. It is incumbent upon the user to have properly configured the system for kdump.”h]”hŒÐUpon receipt of an NMI from the iLO, the hpwdt driver will initiate a panic. This is to allow for a crash dump to be collected. It is incumbent upon the user to have properly configured the system for kdump.”…””}”(hj³hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K:hhÚubhÉ)”}”(hŒThe default Linux kernel behavior upon panic is to print a kernel tombstone and loop forever. This is generally not what a watchdog user wants.”h]”hŒThe default Linux kernel behavior upon panic is to print a kernel tombstone and loop forever. This is generally not what a watchdog user wants.”…””}”(hjÁhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h K>hhÚubjf)”}”(hhh]”jk)”}”(hŒÅFor those wishing to learn more please see: - Documentation/admin-guide/kdump/kdump.rst - Documentation/admin-guide/kernel-parameters.txt (panic=) - Your Linux Distribution specific documentation. ”h]”(jq)”}”(hŒ+For those wishing to learn more please see:”h]”hŒ+For those wishing to learn more please see:”…””}”(hjÖhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jphŸh¶h KDhjÒubj)”}”(hhh]”hŒ bullet_list”“”)”}”(hhh]”(hŒ list_item”“”)”}”(hŒ)Documentation/admin-guide/kdump/kdump.rst”h]”hÉ)”}”(hjðh]”hŒ)Documentation/admin-guide/kdump/kdump.rst”…””}”(hjòhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KBhjîubah}”(h]”h ]”h"]”h$]”h&]”uh1jìhjéubjí)”}”(hŒ8Documentation/admin-guide/kernel-parameters.txt (panic=)”h]”hÉ)”}”(hjh]”hŒ8Documentation/admin-guide/kernel-parameters.txt (panic=)”…””}”(hj hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KChjubah}”(h]”h ]”h"]”h$]”h&]”uh1jìhjéubjí)”}”(hŒ0Your Linux Distribution specific documentation. ”h]”hÉ)”}”(hŒ/Your Linux Distribution specific documentation.”h]”hŒ/Your Linux Distribution specific documentation.”…””}”(hj hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KDhjubah}”(h]”h ]”h"]”h$]”h&]”uh1jìhjéubeh}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ-”uh1jçhŸh¶h KBhjäubah}”(h]”h ]”h"]”h$]”h&]”uh1j€hjÒubeh}”(h]”h ]”h"]”h$]”h&]”uh1jjhŸh¶h KDhjÏubah}”(h]”h ]”h"]”h$]”h&]”uh1jehhÚubhÉ)”}”(hŒžIf the hpwdt does not receive the NMI associated with an expiring timer, the iLO will proceed to reset the system at timeout if the timer hasn't been updated.”h]”hŒ If the hpwdt does not receive the NMI associated with an expiring timer, the iLO will proceed to reset the system at timeout if the timer hasn’t been updated.”…””}”(hjNhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KFhhÚubeh}”(h]”h ]”h"]”h$]”h&]”uh1hØhŸh¶h K hh·hžhubhÉ)”}”(hŒ--”h]”hŒ--”…””}”(hjbhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KJhh·hžhubhÙ)”}”(hŒ^The HPE iLO NMI Watchdog Driver and documentation were originally developed by Tom Mingarelli.”h]”hÉ)”}”(hŒ^The HPE iLO NMI Watchdog Driver and documentation were originally developed by Tom Mingarelli.”h]”hŒ^The HPE iLO NMI Watchdog Driver and documentation were originally developed by Tom Mingarelli.”…””}”(hjthžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÈhŸh¶h KLhjpubah}”(h]”h ]”h"]”h$]”h&]”uh1hØhŸh¶h KLhh·hžhubeh}”(h]”Œfor-ilo-based-proliant-servers”ah ]”h"]”Œfor ilo based proliant servers”ah$]”h&]”uh1h¡hh£hžhhŸh¶h Kubeh}”(h]”Œhpe-ilo-nmi-watchdog-driver”ah ]”h"]”Œhpe ilo nmi watchdog driver”ah$]”h&]”uh1h¡hhhžhhŸh¶h Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”h¶uh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(h¦NŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”j@Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jºŒerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”h¶Œ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(j•j’jjŠuŒ nametypes”}”(j•‰j‰uh}”(j’h£jŠh·uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nhžhub.