From owner-freebsd-current@freebsd.org Sun Feb 7 21:59:52 2016 Return-Path: Delivered-To: freebsd-current@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 28874AA1AF4 for ; Sun, 7 Feb 2016 21:59:52 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 0B81E1C6 for ; Sun, 7 Feb 2016 21:59:52 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 06F8DAA1AF3; Sun, 7 Feb 2016 21:59:52 +0000 (UTC) Delivered-To: current@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 E0CA9AA1AF2 for ; Sun, 7 Feb 2016 21:59:51 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: from mail-wm0-x22d.google.com (mail-wm0-x22d.google.com [IPv6:2a00:1450:400c:c09::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 863EC1C5 for ; Sun, 7 Feb 2016 21:59:51 +0000 (UTC) (envelope-from oliver.pinter@hardenedbsd.org) Received: by mail-wm0-x22d.google.com with SMTP id g62so111218062wme.0 for ; Sun, 07 Feb 2016 13:59:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd-org.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=txdNSfuG2gxhIOiCYVxGKburVxK92xLn3veZa7OneY0=; b=OEhAPPWoj6IVGBnAsJae5bfSaT6DHlZYpTmmcK428Tl1z7Xf8p4RpAX1Z1a4v6ZJtB nspPRXJ8v6HUAVeyKl9s8Em/sdTYYkPbmBzBJiQHx7oVGzhHHeSz1P/uZqP/QdML9k4s R1z9k+8uwtYazWBzgwUfX3n209S6q2oUBBbCaF6/MgIydAtbsyEVmKj4guryr4wMBSjs 1k5gfULoRQicGAl80GHxHsS+WtlBmWWvTlD/56Uy1xC9yGpipxhgMlhm4J/plyEXNmlX Xsr9iXMNjWXxjETgeqpNrt9UJAa3wkmHRC8LBJLYkvjUgmllFASWCJ5y7zF0iv5vyPhn 9VMQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=txdNSfuG2gxhIOiCYVxGKburVxK92xLn3veZa7OneY0=; b=DqkLmFgs89C9v0L9+Tw3Sk+EXZT7yY22PhRLJ8TkPzxKcZSAJBt6lKBfjfjE2XkXMe pN3T6eMC2TQV17lFQKN8FwO0y6kGZ4ahYq/lXjbjhGznwGoMlE4rHgdvmwzy1lEd0c3B qelfQPQTnZROzVxtjT3xOQIY6vMfLh6xZhkfzz6UgmDXwpo1QoWQQjN/iyZZDlBfHXFB OP0UqHM8tKbJH9CASDYDJ+3acA19gna7v6eV/rhfbpFSTfIpIfCx48cfTKDkEUoIYDNv qai7AkLOEwHznY0Bnt8zJMnur2UezNFekOjm+n+uIpTpzM2mz4LVKsN4+H1r9VMiT3Q5 tWNw== X-Gm-Message-State: AG10YOTm7M58X+AYsmWsQZNYDvsgzLHMYiWIwtutNKtTaBr9umM1oVGri5k/TIf8HQHcYctjNV0gKiLSKZDMWVAb MIME-Version: 1.0 X-Received: by 10.28.146.145 with SMTP id u139mr26366939wmd.81.1454882388859; Sun, 07 Feb 2016 13:59:48 -0800 (PST) Received: by 10.194.82.6 with HTTP; Sun, 7 Feb 2016 13:59:48 -0800 (PST) In-Reply-To: <20160206152345.GW91220@kib.kiev.ua> References: <20160206152345.GW91220@kib.kiev.ua> Date: Sun, 7 Feb 2016 22:59:48 +0100 Message-ID: Subject: Re: Broken suspend-resume (suspend to RAM) with enabled INVARIANTS on 11-CURRENT - with workaround From: Oliver Pinter To: Konstantin Belousov Cc: current Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Feb 2016 21:59:52 -0000 On 2/6/16, Konstantin Belousov wrote: > On Fri, Feb 05, 2016 at 07:34:02PM +0100, Oliver Pinter wrote: >> Not yet tested, but possible fix: >> >> diff --git a/sys/kern/init_main.c b/sys/kern/init_main.c >> index cb952da..25bae84 100644 >> --- a/sys/kern/init_main.c >> +++ b/sys/kern/init_main.c >> @@ -482,7 +482,7 @@ proc0_init(void *dummy __unused) >> session0.s_leader = p; >> >> p->p_sysent = &null_sysvec; >> - p->p_flag = P_SYSTEM | P_INMEM; >> + p->p_flag = P_SYSTEM | P_INMEM | P_KTHREAD; >> p->p_flag2 = 0; >> p->p_state = PRS_NORMAL; > So did you tested this ? Did you do an audit to see whether P_KTHREAD > other usages possibly conflict with the proc0 specifics ? Tested and working as expected. Other uses would not conflict, since the codes already checks for P_SYSTEM and the P_KTHREAD flag is almost kern_kthread.c's "private" flag. And this change probably fixes one issue with hwpmc too, in the kernel case: -- dev/hwpmc/hwpmc_mod.c- dev/hwpmc/hwpmc_mod.c- /* issue an attach event to a configured log file */ dev/hwpmc/hwpmc_mod.c- if (pm->pm_owner->po_flags & PMC_PO_OWNS_LOGFILE) { dev/hwpmc/hwpmc_mod.c: if (p->p_flag & P_KTHREAD) { dev/hwpmc/hwpmc_mod.c- fullpath = kernelname; dev/hwpmc/hwpmc_mod.c- freepath = NULL; dev/hwpmc/hwpmc_mod.c- } else { dev/hwpmc/hwpmc_mod.c- pmc_getfilename(p->p_textvp, &fullpath, &freepath); dev/hwpmc/hwpmc_mod.c- pmclog_process_pmcattach(pm, p->p_pid, fullpath); dev/hwpmc/hwpmc_mod.c- } If you want to commit this change, then please add this line: "This work was sponsored by HardenedBSD." > >> #ifdef PAX >