@@ -522,7 +522,7 @@ static int klp_add_nops(struct klp_patch *patch)
522522 struct klp_patch * old_patch ;
523523 struct klp_object * old_obj ;
524524
525- list_for_each_entry (old_patch , & klp_patches , list ) {
525+ klp_for_each_patch (old_patch ) {
526526 klp_for_each_object (old_patch , old_obj ) {
527527 int err ;
528528
@@ -1004,7 +1004,7 @@ int klp_enable_patch(struct klp_patch *patch)
10041004
10051005 if (!klp_have_reliable_stack ()) {
10061006 pr_err ("This architecture doesn't have support for the livepatch consistency model.\n" );
1007- return - ENOSYS ;
1007+ return - EOPNOTSUPP ;
10081008 }
10091009
10101010
@@ -1057,7 +1057,7 @@ void klp_discard_replaced_patches(struct klp_patch *new_patch)
10571057{
10581058 struct klp_patch * old_patch , * tmp_patch ;
10591059
1060- list_for_each_entry_safe (old_patch , tmp_patch , & klp_patches , list ) {
1060+ klp_for_each_patch_safe (old_patch , tmp_patch ) {
10611061 if (old_patch == new_patch )
10621062 return ;
10631063
@@ -1101,29 +1101,22 @@ static void klp_cleanup_module_patches_limited(struct module *mod,
11011101 struct klp_patch * patch ;
11021102 struct klp_object * obj ;
11031103
1104- list_for_each_entry (patch , & klp_patches , list ) {
1104+ klp_for_each_patch (patch ) {
11051105 if (patch == limit )
11061106 break ;
11071107
11081108 klp_for_each_object (patch , obj ) {
11091109 if (!klp_is_module (obj ) || strcmp (obj -> name , mod -> name ))
11101110 continue ;
11111111
1112- /*
1113- * Only unpatch the module if the patch is enabled or
1114- * is in transition.
1115- */
1116- if (patch -> enabled || patch == klp_transition_patch ) {
1117-
1118- if (patch != klp_transition_patch )
1119- klp_pre_unpatch_callback (obj );
1112+ if (patch != klp_transition_patch )
1113+ klp_pre_unpatch_callback (obj );
11201114
1121- pr_notice ("reverting patch '%s' on unloading module '%s'\n" ,
1122- patch -> mod -> name , obj -> mod -> name );
1123- klp_unpatch_object (obj );
1115+ pr_notice ("reverting patch '%s' on unloading module '%s'\n" ,
1116+ patch -> mod -> name , obj -> mod -> name );
1117+ klp_unpatch_object (obj );
11241118
1125- klp_post_unpatch_callback (obj );
1126- }
1119+ klp_post_unpatch_callback (obj );
11271120
11281121 klp_free_object_loaded (obj );
11291122 break ;
@@ -1148,7 +1141,7 @@ int klp_module_coming(struct module *mod)
11481141 */
11491142 mod -> klp_alive = true;
11501143
1151- list_for_each_entry (patch , & klp_patches , list ) {
1144+ klp_for_each_patch (patch ) {
11521145 klp_for_each_object (patch , obj ) {
11531146 if (!klp_is_module (obj ) || strcmp (obj -> name , mod -> name ))
11541147 continue ;
@@ -1162,13 +1155,6 @@ int klp_module_coming(struct module *mod)
11621155 goto err ;
11631156 }
11641157
1165- /*
1166- * Only patch the module if the patch is enabled or is
1167- * in transition.
1168- */
1169- if (!patch -> enabled && patch != klp_transition_patch )
1170- break ;
1171-
11721158 pr_notice ("applying patch '%s' to loading module '%s'\n" ,
11731159 patch -> mod -> name , obj -> mod -> name );
11741160
0 commit comments