diff options
| -rw-r--r-- | include/linux/sched.h | 1 | ||||
| -rw-r--r-- | include/net/scm.h | 1 | ||||
| -rw-r--r-- | net/core/scm.c | 22 | 
3 files changed, 3 insertions, 21 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index af3555cc760..598ba2da786 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -1546,7 +1546,6 @@ struct task_struct {  	unsigned long timer_slack_ns;  	unsigned long default_timer_slack_ns; -	struct list_head	*scm_work_list;  #ifdef CONFIG_FUNCTION_GRAPH_TRACER  	/* Index of current stored address in ret_stack */  	int curr_ret_stack; diff --git a/include/net/scm.h b/include/net/scm.h index d456f4c71a3..079d7887dac 100644 --- a/include/net/scm.h +++ b/include/net/scm.h @@ -13,7 +13,6 @@  #define SCM_MAX_FD	253  struct scm_fp_list { -	struct list_head	list;  	short			count;  	short			max;  	struct file		*fp[SCM_MAX_FD]; diff --git a/net/core/scm.c b/net/core/scm.c index 611c5efd4cb..8f6ccfd68ef 100644 --- a/net/core/scm.c +++ b/net/core/scm.c @@ -109,25 +109,9 @@ void __scm_destroy(struct scm_cookie *scm)  	if (fpl) {  		scm->fp = NULL; -		if (current->scm_work_list) { -			list_add_tail(&fpl->list, current->scm_work_list); -		} else { -			LIST_HEAD(work_list); - -			current->scm_work_list = &work_list; - -			list_add(&fpl->list, &work_list); -			while (!list_empty(&work_list)) { -				fpl = list_first_entry(&work_list, struct scm_fp_list, list); - -				list_del(&fpl->list); -				for (i=fpl->count-1; i>=0; i--) -					fput(fpl->fp[i]); -				kfree(fpl); -			} - -			current->scm_work_list = NULL; -		} +		for (i=fpl->count-1; i>=0; i--) +			fput(fpl->fp[i]); +		kfree(fpl);  	}  }  EXPORT_SYMBOL(__scm_destroy);  |