Re: [PATCH v2 00/20] libnd: non-volatile memory device support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 28, 2015 at 3:28 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> On Tue, Apr 28, 2015 at 2:06 PM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
>> On Tue, Apr 28, 2015 at 1:59 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
>>> On Tue, Apr 28, 2015 at 1:52 PM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
>>>> On Tue, Apr 28, 2015 at 11:24 AM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
>>>>> Changes since v1 [1]: Incorporates feedback received prior to April 24.
>>>>>
>>>>> 1/ Ingo said [2]:
>>>>>
>>>>>        "So why on earth is this whole concept and the naming itself
>>>>>        ('drivers/block/nd/' stands for 'NFIT Defined', apparently)
>>>>>        revolving around a specific 'firmware' mindset and revolving
>>>>>        around specific, weirdly named, overly complicated looking
>>>>>        firmware interfaces that come with their own new weird
>>>>>        glossary??"
>>>>>
>>>>>    Indeed, we of course consulted the NFIT specification to determine
>>>>>    the shape of the sub-system, but then let its terms and data
>>>>>    structures permeate too deep into the implementation.  That is fixed
>>>>>    now with all NFIT specifics factored out into acpi.c.  The NFIT is no
>>>>>    longer required reading to review libnd.  Only three concepts are
>>>>>    needed:
>>>>>
>>>>>       i/ PMEM - contiguous memory range where cpu stores are
>>>>>          persistent once they are flushed through the memory
>>>>>          controller.
>>>>>
>>>>>      ii/ BLK - mmio apertures (sliding windows) that can be
>>>>>          programmed to access an aperture's-worth of persistent
>>>>>          media at a time.
>>>>>
>>>>>     iii/ DPA - "dimm-physical-address", address space local to a
>>>>>          dimm.  A dimm may provide both PMEM-mode and BLK-mode
>>>>>          access to a range of DPA.  libnd manages allocation of DPA
>>>>>          to either PMEM or BLK-namespaces to resolve this aliasing.
>>>>
>>>> Mostly for my understanding: is there a name for "address relative to
>>>> the address lines on the DIMM"?  That is, a DIMM that exposes 8 GB of
>>>> apparent physical memory, possibly interleaved, broken up, or weirdly
>>>> remapped by the memory controller, would still have addresses between
>>>> 0 and 8 GB.  Some of those might be PMEM windows, some might be MMIO,
>>>> some might be BLK apertures, etc.
>>>>
>>>> IIUC "DPA" refers to actual addressable storage, not this type of address?
>>>
>>> No, DPA is exactly as you describe above.  You can't directly access
>>> it except through a PMEM mapping (possibly interleaved with DPA from
>>> other DIMMs) or a BLK aperture (mmio window into DPA).
>>
>> So the thing I'm describing has no name, then?  Oh, well.
>
> What?  The thing you are describing *is* DPA.

I'm confused.  Here are the two things I have in mind:

1. An address into on-DIMM storage.  If I have a DIMM that is mapped
to 8 GB of SPA but has 64 GB of usable storage (accessed through BLK
apertures, say), then this address runs from 0 to 64 GB.

2. An address into the DIMM's view of physical address space.  If I
have a DIMM that is mapped to 8 GB of SPA but has 64 GB of usable
storage (accessed through BLK apertures, say), then this address runs
from 0 to 8 GB.  There's a one-to-one mapping between SPA and this
type of address.

Since you said "a dimm may provide both PMEM-mode and BLK-mode access
to a range of DPA.," I thought that DPA was #1.

--Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux