Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3794624imu; Mon, 7 Jan 2019 09:33:09 -0800 (PST) X-Google-Smtp-Source: ALg8bN5jqAayblgwGu1+J5f04QCOPq900xv2b0cOL5lSYzN5+SpD4DwC5c6kTPgYLrtJSrjTOdMR X-Received: by 2002:a17:902:b68d:: with SMTP id c13mr61946318pls.102.1546882389230; Mon, 07 Jan 2019 09:33:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1546882389; cv=none; d=google.com; s=arc-20160816; b=e4kSuwrCUnnl9VVrHeZ7Hvb3Y6fBL7o/LXe99YSfP+dt6en22uHJ3PAayfWa+UGH1+ QakIEpNQFRmNB8Oepjal7Bk91DhHj0UCiodcgSAGSJpO7emg2W8Qk+mInnb01egHxtp/ zZl4lOblG1KyME6NM0LsUtAsZlbmSp3jORncS6MSDW5lyiqLeJXUwetks0ebfRikydxx S2QqgdfshChxQqMqHZVt4sz2a9tESDqnzUCiS6omWJpzKyHmKe69WNOaRLZD3wK5E/+9 vWYQcbjs12WSB3KnLj1tnpyWBuAoX0Z/nbOg8x6yy2o1T4WI3xhsxwnh0vpyIaGeRq6/ UISw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:from:subject:cc:to:message-id:date; bh=fhpjkk6eFdGpFGKTzUsVTgMu+lJ+0km6ZeyVkUIXCW8=; b=rpZJ3mHL74Ljtne8J7jXs+luAqFkWOkzoFlue4Z9j1vFwLnZkEfzYZOZGD1J2/mZks JO4b21g/KmoGmd3fu+RX3wgiVtx9rvtXdVI3UigGWKrfYBs4mvea1LJXT775BPfcZoV+ T4jLpws3BGKW0EQ/k6Jj7t6ylpxop2mrRDqLKnSkFq2tm9crAAhrZBFIV+8WIOc3h1Ot I3Mldd6elJoaCKltOT6Kaqw6X/mlS2gmmerm+6Idbr2YDRkrshuGIS9SmcDEOS+SXqR+ eisZ6YxKgI+GgYr5ABYhWo8cfFoovsd8dtBYnNPPAogYb9TgJRO0jW3RJ76Vq/+VCURg mrMA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h16si60571541pgj.203.2019.01.07.09.32.54; Mon, 07 Jan 2019 09:33:09 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729821AbfAGPZJ (ORCPT + 99 others); Mon, 7 Jan 2019 10:25:09 -0500 Received: from shards.monkeyblade.net ([23.128.96.9]:56824 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727226AbfAGPZJ (ORCPT ); Mon, 7 Jan 2019 10:25:09 -0500 Received: from localhost (unknown [144.121.20.163]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: davem-davemloft) by shards.monkeyblade.net (Postfix) with ESMTPSA id 5CA9514C8371A; Mon, 7 Jan 2019 07:25:08 -0800 (PST) Date: Mon, 07 Jan 2019 07:25:07 -0800 (PST) Message-Id: <20190107.072507.2123333109511407402.davem@davemloft.net> To: ap420073@gmail.com Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, daniel@iogearbox.net, ast@kernel.org, mcgrof@kernel.org Subject: Re: [PATCH net v3 1/4] umh: add exit routine for UMH process From: David Miller In-Reply-To: <20190107121014.13499-1-ap420073@gmail.com> References: <20190107121014.13499-1-ap420073@gmail.com> X-Mailer: Mew version 6.8 on Emacs 26.1 Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 07 Jan 2019 07:25:08 -0800 (PST) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Taehee Yoo Date: Mon, 7 Jan 2019 21:10:14 +0900 > @@ -679,6 +688,29 @@ static int proc_cap_handler(struct ctl_table *table, int write, > return 0; > } > > +void exit_umh(struct task_struct *tsk) > +{ > + struct umh_info *info; > + pid_t pid = tsk->pid; > + > + if (!(tsk->flags & PF_UMH)) > + return; Let's really make this low cost. In linux/sched.h or similar: void __exit_umh(struct task_struct *tsk); static inline void exit_umh(struct task_struct *tsk) { if (unlikely(tsk->flags & PF_UMH)) __exit_umh(tsk); } Thank you.