From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752067AbbDPWbm (ORCPT ); Thu, 16 Apr 2015 18:31:42 -0400 Received: from mail-la0-f53.google.com ([209.85.215.53]:34199 "EHLO mail-la0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751273AbbDPWbd (ORCPT ); Thu, 16 Apr 2015 18:31:33 -0400 MIME-Version: 1.0 In-Reply-To: References: <1427872339-6688-2-git-send-email-hch@lst.de> <20150402191352.GA10627@gmail.com> From: Andy Lutomirski Date: Thu, 16 Apr 2015 15:31:11 -0700 Message-ID: Subject: Re: [tip:x86/pmem] x86/mm: Add support for the non-standard protected e820 type To: Ingo Molnar Cc: axboe@fb.com, Boaz Harrosh , Dan Williams , "H. Peter Anvin" , Jens Axboe , "linux-kernel@vger.kernel.org" , Thomas Gleixner , Borislav Petkov , Andrew Morton , Linus Torvalds , Christoph Hellwig , Ross Zwisler , Matthew Wilcox , keith.busch@intel.com, "linux-tip-commits@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Apr 2, 2015 at 12:51 PM, Andy Lutomirski wrote: > On Thu, Apr 2, 2015 at 12:13 PM, Ingo Molnar wrote: >> >> * Andy Lutomirski wrote: >> >>> On Thu, Apr 2, 2015 at 5:31 AM, tip-bot for Christoph Hellwig >>> wrote: >>> > Commit-ID: ec776ef6bbe1734c29cd6bd05219cd93b2731bd4 >>> > Gitweb: http://git.kernel.org/tip/ec776ef6bbe1734c29cd6bd05219cd93b2731bd4 >>> > Author: Christoph Hellwig >>> > AuthorDate: Wed, 1 Apr 2015 09:12:18 +0200 >>> > Committer: Ingo Molnar >>> > CommitDate: Wed, 1 Apr 2015 17:02:43 +0200 >>> > >>> > x86/mm: Add support for the non-standard protected e820 type >>> > >>> > Various recent BIOSes support NVDIMMs or ADR using a >>> > non-standard e820 memory type, and Intel supplied reference >>> > Linux code using this type to various vendors. >>> > >>> > Wire this e820 table type up to export platform devices for the >>> > pmem driver so that we can use it in Linux. >>> >>> This scares me a bit. Do we know that the upcoming ACPI 6.0 >>> enumeration mechanism *won't* use e820 type 12? [...] >> >> So I know nothing about it, but I'd be surprised if e820 was touched >> at all, as e820 isn't really well suited to enumerate more complex >> resources, and it appears pmem wants to grow into complex directions? > > I hope so, but I have no idea what the ACPI committee's schemes are. > > We could require pmem.enable_legacy_e820=Y to load the driver for now > if we're concerned about it. > ACPI 6.0 is out: http://www.uefi.org/sites/default/files/resources/ACPI_6.0.pdf AFAICT from a quick read, ACPI 6.0 systems will show EFI type 14 (EfiPersistentMemory), ACPI type 7 (AddressRangePersistentMemory) and e820 type 7. Type 12 is still "OEM defined". See table 15-312. Maybe I'm reading this wrong. *However*, ACPI 6.0 unsurprisingly also has a real enumeration mechanism for NVDIMMs and such, and those should take precedence. So this driver could plausibly be safe even on ACPI 6.0 systems. Someone from one of the relevant vendors should probably confirm that. I'm still a bit nervous, though. --Andy