diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 579dfeda614c61bd1456b41f84f54769d6f46228..6ce3c7c8574c3f03bad3149eafba46303d43d260 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -1605,8 +1605,6 @@ void ext4_get_group_no_and_offset(struct super_block *sb, ext4_fsblk_t blocknr, */ struct ext4_lazy_init { unsigned long li_state; - wait_queue_head_t li_wait_task; - struct task_struct *li_task; struct list_head li_request_list; struct mutex li_list_mtx; }; diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 6a40ec1aabf6090803b1e28410f8397fcce45936..d7756bd2dc128af02e0b0a5a26c9ca114cc3618f 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -2768,9 +2768,6 @@ static int ext4_lazyinit_thread(void *arg) BUG_ON(NULL == eli); - eli->li_task = current; - wake_up(&eli->li_wait_task); - cont_thread: while (true) { next_wakeup = MAX_JIFFY_OFFSET; @@ -2833,9 +2830,6 @@ static int ext4_lazyinit_thread(void *arg) goto cont_thread; } mutex_unlock(&eli->li_list_mtx); - eli->li_task = NULL; - wake_up(&eli->li_wait_task); - kfree(ext4_li_info); ext4_li_info = NULL; mutex_unlock(&ext4_li_mtx); @@ -2872,8 +2866,6 @@ static int ext4_run_lazyinit_thread(void) return err; } ext4_li_info->li_state |= EXT4_LAZYINIT_RUNNING; - - wait_event(ext4_li_info->li_wait_task, ext4_li_info->li_task != NULL); return 0; } @@ -2908,11 +2900,9 @@ static int ext4_li_info_new(void) if (!eli) return -ENOMEM; - eli->li_task = NULL; INIT_LIST_HEAD(&eli->li_request_list); mutex_init(&eli->li_list_mtx); - init_waitqueue_head(&eli->li_wait_task); eli->li_state |= EXT4_LAZYINIT_QUIT; ext4_li_info = eli;