From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754713AbbIWMAG (ORCPT ); Wed, 23 Sep 2015 08:00:06 -0400 Received: from mx2.suse.de ([195.135.220.15]:46794 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754325AbbIWMAE (ORCPT ); Wed, 23 Sep 2015 08:00:04 -0400 From: Petr Mladek To: Andrew Morton , Ingo Molnar , Masami Hiramatsu Cc: Andy Lutomirski , Peter Zijlstra , "H. Peter Anvin" , Thomas Gleixner , Thiago Macieira , Jiri Kosina , linux-kernel@vger.kernel.org, Petr Mladek Subject: [PATCH 1/2] clone: Declare do_fork() only when available Date: Wed, 23 Sep 2015 13:59:28 +0200 Message-Id: <1443009569-1508-2-git-send-email-pmladek@suse.com> X-Mailer: git-send-email 1.8.5.6 In-Reply-To: <1443009569-1508-1-git-send-email-pmladek@suse.com> References: <1443009569-1508-1-git-send-email-pmladek@suse.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The commit 3033f14ab78c32687 ("clone: support passing tls argument via C rather than pt_regs magic") introduced _do_fork() that allowed to pass @tls parameter. The old do_fork() is defined only for architectures that are not ready to use this way and do not define HAVE_COPY_THREAD_TLS. But the function is always declared in linux/sched.h. This patch hides the declaration when the function is not defined. Signed-off-by: Petr Mladek --- include/linux/sched.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/linux/sched.h b/include/linux/sched.h index b7b9501b41af..f71f1f505923 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -2618,7 +2618,9 @@ extern int do_execveat(int, struct filename *, const char __user * const __user *, int); extern long _do_fork(unsigned long, unsigned long, unsigned long, int __user *, int __user *, unsigned long); +#ifndef CONFIG_HAVE_COPY_THREAD_TLS extern long do_fork(unsigned long, unsigned long, unsigned long, int __user *, int __user *); +#endif struct task_struct *fork_idle(int); extern pid_t kernel_thread(int (*fn)(void *), void *arg, unsigned long flags); -- 1.8.5.6