Received: by 10.192.165.156 with SMTP id m28csp87609imm; Sun, 15 Apr 2018 17:47:15 -0700 (PDT) X-Google-Smtp-Source: AIpwx480EqTZROCJPJ9CHE3FbY91/HD9VbX6HyH3IpLD/HEk/TfKnsOwltTu7RNLucBWaj+r3a/k X-Received: by 10.98.14.7 with SMTP id w7mr19702717pfi.50.1523839635161; Sun, 15 Apr 2018 17:47:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523839635; cv=none; d=google.com; s=arc-20160816; b=YQnyoI3qRQiAwo2zFDWUVPeygODipuWToiLnPi29+Qo7LATsFwxdZB26FU6Idlyxff tr1QTm0OgogadUTiefwwTmpCYh4Ro7C8JxAxixPemMs6XMK7vnuwpt6XHNja8lTn1nbw 8oxMVk2Z/7UcnJ9yd1f0NvU3oIl8myk2NimC+U5m2CnmLiVLqOHL7jWiANEYxOKZeXXv kSSTr/uNEm7L/7vv6YgAu7Hf7hTov4G29Yuo+gqyD2UK4vkxCGzeAs7Q/i+Jg0WFizNf yTTSeXzJXcXnwzo8I15+2307sd9P9EO+5irUbW5LfBPAKafVSX0q45Go4bMQbM1I4RIO 4N1A== 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 :user-agent:references:in-reply-to:message-id:cc:subject:date:to :from:arc-authentication-results; bh=3CCNZXwIH8xCEUaaS5Sxz4QDnggLsEhteXcsw9Qaz7s=; b=MDfXPmzX/UWfuhFvDFUSlfo/3DAttHDrpZ4qcqhGS7yQm/lgfHe2VbelgrhRiXOwqh 3i6G+aCYmcphue2LDfnNS6378Z4HYadHrxTcnxoM9mQr9/bIdK6Wv4lMjrW01oaEIsd6 aAFCKgkSc9u6ZRb4s8FxYAfRbvCSIUV7pka3l8rF1ybIm467ksyd7GPItd8f7rhFBfrv sJnxAr3DhiDmAI2vvUg/ONAP7kc/UjPmZ+ioHkNkQKzRpRlgmA5wl9i8vzhfIxKBnIvS wL0WWwzSKw6IyJrfvDqbzsDHr+soWEsoLBUnU5LPcNo4d4bhYWWwqQeeCepa08K7JFuV B/Qg== 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 q8si1667973pgn.692.2018.04.15.17.46.27; Sun, 15 Apr 2018 17:47:15 -0700 (PDT) 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 S1752806AbeDPAnL (ORCPT + 99 others); Sun, 15 Apr 2018 20:43:11 -0400 Received: from mx2.suse.de ([195.135.220.15]:42445 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752557AbeDPAnI (ORCPT ); Sun, 15 Apr 2018 20:43:08 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id D5930AC87; Mon, 16 Apr 2018 00:43:06 +0000 (UTC) From: NeilBrown To: Oleg Drokin , Greg Kroah-Hartman , James Simmons , Andreas Dilger Date: Mon, 16 Apr 2018 10:42:37 +1000 Subject: [PATCH 1/6] staging: lustre: move stack-check macros to libcfs_debug.h Cc: Linux Kernel Mailing List , Lustre Development List Message-ID: <152383935730.23409.6748888065027051683.stgit@noble> In-Reply-To: <152383910760.23409.2327082725637657049.stgit@noble> References: <152383910760.23409.2327082725637657049.stgit@noble> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org CDEBUG_STACK() and CHECK_STACK() are macros to help with debugging, so move them from drivers/staging/lustre/include/linux/libcfs/linux/libcfs.h to drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h This seems a more fitting location, and is a step towards removing linux/libcfs.h and simplifying the include file structure. Signed-off-by: NeilBrown --- .../lustre/include/linux/libcfs/libcfs_debug.h | 32 ++++++++++++++++++++ .../lustre/include/linux/libcfs/linux/libcfs.h | 31 ------------------- 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h b/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h index 9290a19429e7..0dc7b91efe7c 100644 --- a/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h +++ b/drivers/staging/lustre/include/linux/libcfs/libcfs_debug.h @@ -62,6 +62,38 @@ int libcfs_debug_str2mask(int *mask, const char *str, int is_subsys); extern unsigned int libcfs_catastrophe; extern unsigned int libcfs_panic_on_lbug; +/* Enable debug-checks on stack size - except on x86_64 */ +#if !defined(__x86_64__) +# ifdef __ia64__ +# define CDEBUG_STACK() (THREAD_SIZE - \ + ((unsigned long)__builtin_dwarf_cfa() & \ + (THREAD_SIZE - 1))) +# else +# define CDEBUG_STACK() (THREAD_SIZE - \ + ((unsigned long)__builtin_frame_address(0) & \ + (THREAD_SIZE - 1))) +# endif /* __ia64__ */ + +#define __CHECK_STACK(msgdata, mask, cdls) \ +do { \ + if (unlikely(CDEBUG_STACK() > libcfs_stack)) { \ + LIBCFS_DEBUG_MSG_DATA_INIT(msgdata, D_WARNING, NULL); \ + libcfs_stack = CDEBUG_STACK(); \ + libcfs_debug_msg(msgdata, \ + "maximum lustre stack %lu\n", \ + CDEBUG_STACK()); \ + (msgdata)->msg_mask = mask; \ + (msgdata)->msg_cdls = cdls; \ + dump_stack(); \ + /*panic("LBUG");*/ \ + } \ +} while (0) +#define CFS_CHECK_STACK(msgdata, mask, cdls) __CHECK_STACK(msgdata, mask, cdls) +#else /* __x86_64__ */ +#define CFS_CHECK_STACK(msgdata, mask, cdls) do {} while (0) +#define CDEBUG_STACK() (0L) +#endif /* __x86_64__ */ + #ifndef DEBUG_SUBSYSTEM # define DEBUG_SUBSYSTEM S_UNDEFINED #endif diff --git a/drivers/staging/lustre/include/linux/libcfs/linux/libcfs.h b/drivers/staging/lustre/include/linux/libcfs/linux/libcfs.h index 07d3cb2217d1..83aec9c7698f 100644 --- a/drivers/staging/lustre/include/linux/libcfs/linux/libcfs.h +++ b/drivers/staging/lustre/include/linux/libcfs/linux/libcfs.h @@ -80,35 +80,4 @@ #include #include "linux-cpu.h" -#if !defined(__x86_64__) -# ifdef __ia64__ -# define CDEBUG_STACK() (THREAD_SIZE - \ - ((unsigned long)__builtin_dwarf_cfa() & \ - (THREAD_SIZE - 1))) -# else -# define CDEBUG_STACK() (THREAD_SIZE - \ - ((unsigned long)__builtin_frame_address(0) & \ - (THREAD_SIZE - 1))) -# endif /* __ia64__ */ - -#define __CHECK_STACK(msgdata, mask, cdls) \ -do { \ - if (unlikely(CDEBUG_STACK() > libcfs_stack)) { \ - LIBCFS_DEBUG_MSG_DATA_INIT(msgdata, D_WARNING, NULL); \ - libcfs_stack = CDEBUG_STACK(); \ - libcfs_debug_msg(msgdata, \ - "maximum lustre stack %lu\n", \ - CDEBUG_STACK()); \ - (msgdata)->msg_mask = mask; \ - (msgdata)->msg_cdls = cdls; \ - dump_stack(); \ - /*panic("LBUG");*/ \ - } \ -} while (0) -#define CFS_CHECK_STACK(msgdata, mask, cdls) __CHECK_STACK(msgdata, mask, cdls) -#else /* __x86_64__ */ -#define CFS_CHECK_STACK(msgdata, mask, cdls) do {} while (0) -#define CDEBUG_STACK() (0L) -#endif /* __x86_64__ */ - #endif /* _LINUX_LIBCFS_H */