diff options
| author | 2022-10-01 19:16:16 -0700 | |
|---|---|---|
| committer | 2022-10-01 19:16:16 -0700 | |
| commit | 305a72efa791c826fe84768ca55e31adc4113ea8 (patch) | |
| tree | 35c72646ea4b81528d73d3d79650004abed3285b /lib/livepatch | |
| parent | nvdimm/namespace: drop unneeded temporary variable in size_store() (diff) | |
| parent | ACPI: HMAT: Release platform device in case of platform_device_add_data() fails (diff) | |
Merge branch 'for-6.1/nvdimm' into libnvdimm-for-next
Add v6.1 content on top of some straggling updates that missed v6.0.
Diffstat (limited to 'lib/livepatch')
| -rw-r--r-- | lib/livepatch/test_klp_callbacks_busy.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/livepatch/test_klp_callbacks_busy.c b/lib/livepatch/test_klp_callbacks_busy.c index 7ac845f65be5..133929e0ce8f 100644 --- a/lib/livepatch/test_klp_callbacks_busy.c +++ b/lib/livepatch/test_klp_callbacks_busy.c @@ -16,10 +16,12 @@ MODULE_PARM_DESC(block_transition, "block_transition (default=false)"); static void busymod_work_func(struct work_struct *work); static DECLARE_WORK(work, busymod_work_func); +static DECLARE_COMPLETION(busymod_work_started); static void busymod_work_func(struct work_struct *work) { pr_info("%s enter\n", __func__); + complete(&busymod_work_started); while (READ_ONCE(block_transition)) { /* @@ -37,6 +39,12 @@ static int test_klp_callbacks_busy_init(void) pr_info("%s\n", __func__); schedule_work(&work); + /* + * To synchronize kernel messages, hold the init function from + * exiting until the work function's entry message has printed. + */ + wait_for_completion(&busymod_work_started); + if (!block_transition) { /* * Serialize output: print all messages from the work |
