|
85 | 85 | * calls:
|
86 | 86 | *
|
87 | 87 | * a) FAIL_DUP_MOD_BECOMING: at the end of early_mod_check() before
|
88 |
| - * layout_and_allocate(). This does not yet happen. |
| 88 | + * layout_and_allocate(). |
89 | 89 | * - with module decompression: 2 virtual memory allocation calls
|
90 | 90 | * - without module decompression: 1 virtual memory allocation calls
|
91 | 91 | * b) FAIL_DUP_MOD_LOAD: after layout_and_allocate() on add_unformed_module()
|
@@ -126,17 +126,16 @@ static LIST_HEAD(dup_failed_modules);
|
126 | 126 | * pressure.
|
127 | 127 | * * invalid_becoming_bytes: total number of bytes allocated and freed used
|
128 | 128 | * used to read the kernel module userspace wants us to read before we
|
129 |
| - * promote it to be processed to be added to our @modules linked list. |
130 |
| - * These failures could in theory happen if we had a check in |
131 |
| - * between a successful kernel_read_file_from_fd() |
| 129 | + * promote it to be processed to be added to our @modules linked list. These |
| 130 | + * failures can happen if we had a check in between a successful kernel_read_file_from_fd() |
132 | 131 | * call and right before we allocate the our private memory for the module
|
133 | 132 | * which would be kept if the module is successfully loaded. The most common
|
134 | 133 | * reason for this failure is when userspace is racing to load a module
|
135 | 134 | * which it does not yet see loaded. The first module to succeed in
|
136 | 135 | * add_unformed_module() will add a module to our &modules list and
|
137 | 136 | * subsequent loads of modules with the same name will error out at the
|
138 |
| - * end of early_mod_check(). A check for module_patient_check_exists() |
139 |
| - * at the end of early_mod_check() could be added to prevent duplicate allocations |
| 137 | + * end of early_mod_check(). The check for module_patient_check_exists() |
| 138 | + * at the end of early_mod_check() prevents duplicate allocations |
140 | 139 | * on layout_and_allocate() for modules already being processed. These
|
141 | 140 | * duplicate failed modules are non-fatal, however they typically are
|
142 | 141 | * indicative of userspace not seeing a module in userspace loaded yet and
|
|
0 commit comments