From owner-freebsd-arm@freebsd.org Wed Jul 15 07:36:13 2015 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A849F9A21FD for ; Wed, 15 Jul 2015 07:36:13 +0000 (UTC) (envelope-from daemon-user@freebsd.org) Received: from phabric-backend.isc.freebsd.org (phabric-backend.isc.freebsd.org [IPv6:2001:4f8:3:ffe0:406a:0:50:2]) by mx1.freebsd.org (Postfix) with ESMTP id 902FF1DF3 for ; Wed, 15 Jul 2015 07:36:13 +0000 (UTC) (envelope-from daemon-user@freebsd.org) Received: by phabric-backend.isc.freebsd.org (Postfix, from userid 1346) id 80D8DEE37; Wed, 15 Jul 2015 07:36:13 +0000 (UTC) Date: Wed, 15 Jul 2015 07:36:13 +0000 To: freebsd-arm@freebsd.org From: "wma_semihalf.com (Wojciech Macek)" Reply-to: D3094+327+b6ce39a707c1ba10@FreeBSD.org Subject: [Differential] [Request, 12 lines] D3094: Fix ARMv8 KSTACK_PAGES issue Message-ID: X-Priority: 3 Thread-Topic: D3094: Fix ARMv8 KSTACK_PAGES issue X-Herald-Rules: <28>, <31>, <32>, <34> X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-Cc: X-Phabricator-Cc: X-Phabricator-Cc: X-Phabricator-Cc: Thread-Index: MTE0MDI0ZWQ5YjVlYzUxYzUyMWU4OWFkZjdh Precedence: bulk X-Phabricator-Sent-This-Message: Yes X-Mail-Transport-Agent: MetaMTA X-Auto-Response-Suppress: All X-Phabricator-Mail-Tags: , , , MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="b1_02e5a17ed84b5a608dd9cd36c9fbabff" X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.20 List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jul 2015 07:36:13 -0000 --b1_02e5a17ed84b5a608dd9cd36c9fbabff Content-Type: text/plain; charset = "utf-8" Content-Transfer-Encoding: 8bit wma_semihalf.com created this revision. wma_semihalf.com added reviewers: emaste, andrew, zbb. wma_semihalf.com added a subscriber: freebsd-arm-list. wma_semihalf.com set the repository for this revision to rS FreeBSD src repository. Herald added subscribers: emaste, andrew, imp. REVISION SUMMARY If KSTACK_PAGES was changed to anything alse than the default, the value from param.h was taken instead. Ensure all places where KSTACK_PAGES are used the opt_kstack_pages.h is included. The issue with wrong stack size is very hard to debug, so author desided to remove default to unhide any potential code errors. From now, each time one use KSTACK_PAGES the proper file must be included as well or the compile will generate an error. The default was moved to GENERIC config instead. REPOSITORY rS FreeBSD src repository REVISION DETAIL https://reviews.freebsd.org/D3094 AFFECTED FILES sys/arm64/arm64/locore.S sys/arm64/arm64/mp_machdep.c sys/arm64/arm64/swtch.S sys/arm64/conf/GENERIC sys/arm64/include/param.h sys/ddb/db_ps.c sys/ddb/db_sym.c CHANGE DETAILS diff --git a/sys/ddb/db_sym.c b/sys/ddb/db_sym.c --- a/sys/ddb/db_sym.c +++ b/sys/ddb/db_sym.c @@ -31,6 +31,8 @@ #include __FBSDID("$FreeBSD$"); +#include "opt_kstack_pages.h" + #include #include #include diff --git a/sys/ddb/db_ps.c b/sys/ddb/db_ps.c --- a/sys/ddb/db_ps.c +++ b/sys/ddb/db_ps.c @@ -30,6 +30,8 @@ #include __FBSDID("$FreeBSD$"); +#include "opt_kstack_pages.h" + #include #include #include diff --git a/sys/arm64/include/param.h b/sys/arm64/include/param.h --- a/sys/arm64/include/param.h +++ b/sys/arm64/include/param.h @@ -92,10 +92,6 @@ #define MAXPAGESIZES 1 /* maximum number of supported page sizes */ -#ifndef KSTACK_PAGES -#define KSTACK_PAGES 4 /* pages of kernel stack (with pcb) */ -#endif - #define KSTACK_GUARD_PAGES 1 /* pages of kstack guard; 0 disables */ #define PCPU_PAGES 1 diff --git a/sys/arm64/conf/GENERIC b/sys/arm64/conf/GENERIC --- a/sys/arm64/conf/GENERIC +++ b/sys/arm64/conf/GENERIC @@ -70,6 +70,7 @@ options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default options RCTL # Resource limits options SMP +options KSTACK_PAGES=4 # Debugging support. Always need this: options KDB # Enable kernel debugger support. diff --git a/sys/arm64/arm64/swtch.S b/sys/arm64/arm64/swtch.S --- a/sys/arm64/arm64/swtch.S +++ b/sys/arm64/arm64/swtch.S @@ -30,6 +30,7 @@ */ #include "assym.s" +#include "opt_kstack_pages.h" #include "opt_sched.h" #include diff --git a/sys/arm64/arm64/mp_machdep.c b/sys/arm64/arm64/mp_machdep.c --- a/sys/arm64/arm64/mp_machdep.c +++ b/sys/arm64/arm64/mp_machdep.c @@ -29,6 +29,7 @@ */ #include "opt_platform.h" +#include "opt_kstack_pages.h" #include __FBSDID("$FreeBSD$"); diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S --- a/sys/arm64/arm64/locore.S +++ b/sys/arm64/arm64/locore.S @@ -27,6 +27,7 @@ */ #include "assym.s" +#include "opt_kstack_pages.h" #include #include #include EMAIL PREFERENCES https://reviews.freebsd.org/settings/panel/emailpreferences/ To: wma_semihalf.com, emaste, andrew, zbb Cc: imp, andrew, freebsd-arm-list, emaste --b1_02e5a17ed84b5a608dd9cd36c9fbabff Content-Type: text/x-patch; charset=utf-8; name="D3094.6960.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="D3094.6960.patch" ZGlmZiAtLWdpdCBhL3N5cy9kZGIvZGJfc3ltLmMgYi9zeXMvZGRiL2RiX3N5bS5jCi0tLSBhL3N5 cy9kZGIvZGJfc3ltLmMKKysrIGIvc3lzL2RkYi9kYl9zeW0uYwpAQCAtMzEsNiArMzEsOCBAQAog I2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogX19GQlNESUQoIiRGcmVlQlNEJCIpOwogCisjaW5jbHVk ZSAib3B0X2tzdGFja19wYWdlcy5oIgorCiAjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CiAjaW5jbHVk ZSA8c3lzL3BjcHUuaD4KICNpbmNsdWRlIDxzeXMvc21wLmg+CmRpZmYgLS1naXQgYS9zeXMvZGRi L2RiX3BzLmMgYi9zeXMvZGRiL2RiX3BzLmMKLS0tIGEvc3lzL2RkYi9kYl9wcy5jCisrKyBiL3N5 cy9kZGIvZGJfcHMuYwpAQCAtMzAsNiArMzAsOCBAQAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgog X19GQlNESUQoIiRGcmVlQlNEJCIpOwogCisjaW5jbHVkZSAib3B0X2tzdGFja19wYWdlcy5oIgor CiAjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CiAjaW5jbHVkZSA8c3lzL2NvbnMuaD4KICNpbmNsdWRl IDxzeXMvamFpbC5oPgpkaWZmIC0tZ2l0IGEvc3lzL2FybTY0L2luY2x1ZGUvcGFyYW0uaCBiL3N5 cy9hcm02NC9pbmNsdWRlL3BhcmFtLmgKLS0tIGEvc3lzL2FybTY0L2luY2x1ZGUvcGFyYW0uaAor KysgYi9zeXMvYXJtNjQvaW5jbHVkZS9wYXJhbS5oCkBAIC05MiwxMCArOTIsNiBAQAogCiAjZGVm aW5lCU1BWFBBR0VTSVpFUwkxCQkvKiBtYXhpbXVtIG51bWJlciBvZiBzdXBwb3J0ZWQgcGFnZSBz aXplcyAqLwogCi0jaWZuZGVmIEtTVEFDS19QQUdFUwotI2RlZmluZQlLU1RBQ0tfUEFHRVMJNAkv KiBwYWdlcyBvZiBrZXJuZWwgc3RhY2sgKHdpdGggcGNiKSAqLwotI2VuZGlmCi0KICNkZWZpbmUJ S1NUQUNLX0dVQVJEX1BBR0VTCTEJLyogcGFnZXMgb2Yga3N0YWNrIGd1YXJkOyAwIGRpc2FibGVz ICovCiAjZGVmaW5lCVBDUFVfUEFHRVMJCTEKIApkaWZmIC0tZ2l0IGEvc3lzL2FybTY0L2NvbmYv R0VORVJJQyBiL3N5cy9hcm02NC9jb25mL0dFTkVSSUMKLS0tIGEvc3lzL2FybTY0L2NvbmYvR0VO RVJJQworKysgYi9zeXMvYXJtNjQvY29uZi9HRU5FUklDCkBAIC03MCw2ICs3MCw3IEBACiBvcHRp b25zIAlSQUNDVF9ERUZBVUxUX1RPX0RJU0FCTEVEICMgU2V0IGtlcm4ucmFjY3QuZW5hYmxlPTAg YnkgZGVmYXVsdAogb3B0aW9ucyAJUkNUTAkJCSMgUmVzb3VyY2UgbGltaXRzCiBvcHRpb25zIAlT TVAKK29wdGlvbnMgCUtTVEFDS19QQUdFUz00CiAKICMgRGVidWdnaW5nIHN1cHBvcnQuICBBbHdh eXMgbmVlZCB0aGlzOgogb3B0aW9ucyAJS0RCCQkJIyBFbmFibGUga2VybmVsIGRlYnVnZ2VyIHN1 cHBvcnQuCmRpZmYgLS1naXQgYS9zeXMvYXJtNjQvYXJtNjQvc3d0Y2guUyBiL3N5cy9hcm02NC9h cm02NC9zd3RjaC5TCi0tLSBhL3N5cy9hcm02NC9hcm02NC9zd3RjaC5TCisrKyBiL3N5cy9hcm02 NC9hcm02NC9zd3RjaC5TCkBAIC0zMCw2ICszMCw3IEBACiAgKi8KIAogI2luY2x1ZGUgImFzc3lt LnMiCisjaW5jbHVkZSAib3B0X2tzdGFja19wYWdlcy5oIgogI2luY2x1ZGUgIm9wdF9zY2hlZC5o IgogCiAjaW5jbHVkZSA8bWFjaGluZS9hc20uaD4KZGlmZiAtLWdpdCBhL3N5cy9hcm02NC9hcm02 NC9tcF9tYWNoZGVwLmMgYi9zeXMvYXJtNjQvYXJtNjQvbXBfbWFjaGRlcC5jCi0tLSBhL3N5cy9h cm02NC9hcm02NC9tcF9tYWNoZGVwLmMKKysrIGIvc3lzL2FybTY0L2FybTY0L21wX21hY2hkZXAu YwpAQCAtMjksNiArMjksNyBAQAogICovCiAKICNpbmNsdWRlICJvcHRfcGxhdGZvcm0uaCIKKyNp bmNsdWRlICJvcHRfa3N0YWNrX3BhZ2VzLmgiCiAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIF9f RkJTRElEKCIkRnJlZUJTRCQiKTsKZGlmZiAtLWdpdCBhL3N5cy9hcm02NC9hcm02NC9sb2NvcmUu UyBiL3N5cy9hcm02NC9hcm02NC9sb2NvcmUuUwotLS0gYS9zeXMvYXJtNjQvYXJtNjQvbG9jb3Jl LlMKKysrIGIvc3lzL2FybTY0L2FybTY0L2xvY29yZS5TCkBAIC0yNyw2ICsyNyw3IEBACiAgKi8K IAogI2luY2x1ZGUgImFzc3ltLnMiCisjaW5jbHVkZSAib3B0X2tzdGFja19wYWdlcy5oIgogI2lu Y2x1ZGUgPHN5cy9zeXNjYWxsLmg+CiAjaW5jbHVkZSA8bWFjaGluZS9hc20uaD4KICNpbmNsdWRl IDxtYWNoaW5lL2FybXJlZy5oPgoK --b1_02e5a17ed84b5a608dd9cd36c9fbabff--