€•å=Œ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”Œ5/translations/zh_CN/networking/devlink/devlink-reload”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ5/translations/zh_TW/networking/devlink/devlink-reload”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ5/translations/it_IT/networking/devlink/devlink-reload”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ5/translations/ja_JP/networking/devlink/devlink-reload”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ5/translations/ko_KR/networking/devlink/devlink-reload”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ5/translations/pt_BR/networking/devlink/devlink-reload”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ5/translations/sp_SP/networking/devlink/devlink-reload”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…””}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒO/var/lib/git/docbuild/linux/Documentation/networking/devlink/devlink-reload.rst”h´KubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒDevlink Reload”h]”hŒDevlink Reload”…””}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhŒ paragraph”“”)”}”(hŒ³``devlink-reload`` provides mechanism to reinit driver entities, applying ``devlink-params`` and ``devlink-resources`` new values. It also provides mechanism to activate firmware.”h]”(hŒliteral”“”)”}”(hŒ``devlink-reload``”h]”hŒdevlink-reload”…””}”(hhåh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhhßubhŒ8 provides mechanism to reinit driver entities, applying ”…””}”(hhßh²hh³Nh´Nubhä)”}”(hŒ``devlink-params``”h]”hŒdevlink-params”…””}”(hh÷h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhhßubhŒ and ”…””}”(hhßh²hh³Nh´Nubhä)”}”(hŒ``devlink-resources``”h]”hŒdevlink-resources”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhhßubhŒ= new values. It also provides mechanism to activate firmware.”…””}”(hhßh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhhÊh²hubhÉ)”}”(hhh]”(hÎ)”}”(hŒReload Actions”h]”hŒReload Actions”…””}”(hj$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj!h²hh³hÇh´K ubhÞ)”}”(hŒQUser may select a reload action. By default ``driver_reinit`` action is selected.”h]”(hŒ,User may select a reload action. By default ”…””}”(hj2h²hh³Nh´Nubhä)”}”(hŒ``driver_reinit``”h]”hŒ driver_reinit”…””}”(hj:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhj2ubhŒ action is selected.”…””}”(hj2h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj!h²hubhŒtable”“”)”}”(hhh]”(hÎ)”}”(hŒPossible reload actions”h]”hŒPossible reload actions”…””}”(hjWh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍh³hÇh´KhjTubhŒtgroup”“”)”}”(hhh]”(hŒcolspec”“”)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jjhjgubjk)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”juKZuh1jjhjgubhŒtbody”“”)”}”(hhh]”(hŒrow”“”)”}”(hhh]”(hŒentry”“”)”}”(hhh]”hÞ)”}”(hŒName”h]”hŒName”…””}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj‹ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj†ubjŠ)”}”(hhh]”hÞ)”}”(hŒ Description”h]”hŒ Description”…””}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj†ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j„hjubj…)”}”(hhh]”(jŠ)”}”(hhh]”hÞ)”}”(hŒ``driver-reinit``”h]”hä)”}”(hjÇh]”hŒ driver-reinit”…””}”(hjÉh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhjÅubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjÂubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj¿ubjŠ)”}”(hhh]”(hÞ)”}”(hŒ‰Devlink driver entities re-initialization, including applying new values to devlink entities which are used during driver load which are:”h]”hŒ‰Devlink driver entities re-initialization, including applying new values to devlink entities which are used during driver load which are:”…””}”(hjåh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjâubhŒ bullet_list”“”)”}”(hhh]”(hŒ list_item”“”)”}”(hŒ7``devlink-params`` in configuration mode ``driverinit``”h]”hÞ)”}”(hjüh]”(hä)”}”(hŒ``devlink-params``”h]”hŒdevlink-params”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhjþubhŒ in configuration mode ”…””}”(hjþh²hh³Nh´Nubhä)”}”(hŒ``driverinit``”h]”hŒ driverinit”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhjþubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khjúubah}”(h]”h ]”h"]”h$]”h&]”uh1jøhjõubjù)”}”(hŒ``devlink-resources`` ”h]”hÞ)”}”(hŒ``devlink-resources``”h]”hä)”}”(hj3h]”hŒdevlink-resources”…””}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhj1ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khj-ubah}”(h]”h ]”h"]”h$]”h&]”uh1jøhjõubeh}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ*”uh1jóh³hÇh´KhjâubhÞ)”}”(hŒ;Other devlink entities may stay over the re-initialization:”h]”hŒ;Other devlink entities may stay over the re-initialization:”…””}”(hjVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khjâubjô)”}”(hhh]”(jù)”}”(hŒ``devlink-health-reporter``”h]”hÞ)”}”(hjih]”hä)”}”(hjih]”hŒdevlink-health-reporter”…””}”(hjnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhjkubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K hjgubah}”(h]”h ]”h"]”h$]”h&]”uh1jøhjdubjù)”}”(hŒ``devlink-region`` ”h]”hÞ)”}”(hŒ``devlink-region``”h]”hä)”}”(hjh]”hŒdevlink-region”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhj‹ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K!hj‡ubah}”(h]”h ]”h"]”h$]”h&]”uh1jøhjdubeh}”(h]”h ]”h"]”h$]”h&]”jTjUuh1jóh³hÇh´K hjâubhÞ)”}”(hŒ@The rest of the devlink entities have to be removed and readded.”h]”hŒ@The rest of the devlink entities have to be removed and readded.”…””}”(hj®h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K#hjâubeh}”(h]”h ]”h"]”h$]”h&]”uh1j‰hj¿ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j„hjubj…)”}”(hhh]”(jŠ)”}”(hhh]”hÞ)”}”(hŒ``fw_activate``”h]”hä)”}”(hjÐh]”hŒ fw_activate”…””}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hãhjÎubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K$hjËubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjÈubjŠ)”}”(hhh]”hÞ)”}”(hŒäFirmware activate. Activates new firmware if such image is stored and pending activation. If no limitation specified this action may involve firmware reset. If no new image pending this action will reload current firmware image.”h]”hŒäFirmware activate. Activates new firmware if such image is stored and pending activation. If no limitation specified this action may involve firmware reset. If no new image pending this action will reload current firmware image.”…””}”(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„hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjgubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1jehjTubeh}”(h]”Œid1”ah ]”Œcolwidths-given”ah"]”h$]”h&]”uh1jRhj!h²hh³Nh´NubhÞ)”}”(hXTNote that even though user asks for a specific action, the driver implementation might require to perform another action alongside with it. For example, some driver do not support driver reinitialization being performed without fw activation. Therefore, the devlink reload command returns the list of actions which were actrually performed.”h]”hXTNote that even though user asks for a specific action, the driver implementation might require to perform another action alongside with it. For example, some driver do not support driver reinitialization being performed without fw activation. Therefore, the devlink reload command returns the list of actions which were actrually performed.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K*hj!h²hubeh}”(h]”Œreload-actions”ah ]”h"]”Œreload actions”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´K ubhÉ)”}”(hhh]”(hÎ)”}”(hŒ Reload Limits”h]”hŒ Reload Limits”…””}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj3h²hh³hÇh´K1ubhÞ)”}”(hŒƒBy default reload actions are not limited and driver implementation may include reset or downtime as needed to perform the actions.”h]”hŒƒBy default reload actions are not limited and driver implementation may include reset or downtime as needed to perform the actions.”…””}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K3hj3h²hubhÞ)”}”(hŒkHowever, some drivers support action limits, which limit the action implementation to specific constraints.”h]”hŒkHowever, some drivers support action limits, which limit the action implementation to specific constraints.”…””}”(hjRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K6hj3h²hubjS)”}”(hhh]”(hÎ)”}”(hŒPossible reload limits”h]”hŒPossible reload limits”…””}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍh³hÇh´K9hj`ubjf)”}”(hhh]”(jk)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”juKuh1jjhjqubjk)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”juKZuh1jjhjqubj€)”}”(hhh]”(j…)”}”(hhh]”(jŠ)”}”(hhh]”hÞ)”}”(hŒName”h]”hŒName”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjÃubah}”(h]”h ]”h"]”h$]”h&]”uh1j‰hjÀubjŠ)”}”(hhh]”hÞ)”}”(hŒRNo reset allowed, no down time allowed, no link flap and no configuration is lost.”h]”hŒRNo reset allowed, no down time allowed, no link flap and no configuration is lost.”…””}”(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„hj†ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjqubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1jehj`ubeh}”(h]”Œid2”ah ]”jah"]”h$]”h&]”uh1jRhj3h²hh³Nh´Nubeh}”(h]”Œ reload-limits”ah ]”h"]”Œ reload limits”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´K1ubhÉ)”}”(hhh]”(hÎ)”}”(hŒChange Namespace”h]”hŒChange Namespace”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhjh²hh³hÇh´KCubhÞ)”}”(hŒ»The netns option allows user to be able to move devlink instances into namespaces during devlink reload operation. By default all devlink instances are created in init_net and stay there.”h]”hŒ»The netns option allows user to be able to move devlink instances into namespaces during devlink reload operation. By default all devlink instances are created in init_net and stay there.”…””}”(hj-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KEhjh²hubhÉ)”}”(hhh]”(hÎ)”}”(hŒ example usage”h]”hŒ example usage”…””}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj;h²hh³hÇh´KJubhŒ literal_block”“”)”}”(hX$ devlink dev reload help $ devlink dev reload DEV [ netns { PID | NAME | ID } ] [ action { driver_reinit | fw_activate } ] [ limit no_reset ] # Run reload command for devlink driver entities re-initialization: $ devlink dev reload pci/0000:82:00.0 action driver_reinit reload_actions_performed: driver_reinit # Run reload command to activate firmware: # Note that mlx5 driver reloads the driver while activating firmware $ devlink dev reload pci/0000:82:00.0 action fw_activate reload_actions_performed: driver_reinit fw_activate”h]”hX$ devlink dev reload help $ devlink dev reload DEV [ netns { PID | NAME | ID } ] [ action { driver_reinit | fw_activate } ] [ limit no_reset ] # Run reload command for devlink driver entities re-initialization: $ devlink dev reload pci/0000:82:00.0 action driver_reinit reload_actions_performed: driver_reinit # Run reload command to activate firmware: # Note that mlx5 driver reloads the driver while activating firmware $ devlink dev reload pci/0000:82:00.0 action fw_activate reload_actions_performed: driver_reinit fw_activate”…””}”hjNsbah}”(h]”h ]”h"]”h$]”h&]”Œforce”‰Œhighlight_args”}”hÅhÆŒlanguage”Œshell”uh1jLh³hÇh´KLhj;h²hubeh}”(h]”Œ example-usage”ah ]”h"]”Œ example usage”ah$]”h&]”uh1hÈhjh²hh³hÇh´KJubeh}”(h]”Œchange-namespace”ah ]”h"]”Œchange namespace”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´KCubeh}”(h]”Œdevlink-reload”ah ]”h"]”Œdevlink reload”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”}”(jvjsj0j-jjjnjkjfjcuŒ nametypes”}”(jv‰j0‰j‰jn‰jf‰uh}”(jshÊj-j!jj3jkjjcj;jjTjj`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”“”}”j©Ks…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.