On Wed, 2017-05-03 at 16:08 -0700, Dan Williams wrote:
On Wed, May 3, 2017 at 3:51 PM, Dan Williams
<dan.j.williams(a)intel.co
m> wrote:
> On Wed, May 3, 2017 at 3:41 PM, Kani, Toshimitsu <toshi.kani(a)hpe.co
> m> wrote:
> > On Wed, 2017-05-03 at 14:48 -0700, Dan Williams wrote:
:
>
> I believe we already have all the data needed to calculate the data
> offset. Given the following sysfs path:
>
> /sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0012:00/ndbus0/region1
> /dax1.1/dax/dax1.0
>
> ...we can find the associated namespace device from that dax1.1.
> From
> there we have the base address of the namespace and the size
> device-dax instance.
>
> device_dax_data_offset == namespace_base + namespace_size -
> device_dax_size
Dave reminds me that we do have the data offset of the device-dax
instance at the libnvdimm level:
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0012:00/ndbus0/region1/d
ax1.1/resource
...in this example, which maps to ndctl_dax_get_resource().
Thanks for the info! I noticed why I did not catch this info before.
# ll /dev/dax*
crw------- 1 root root 251, 3 May 3 04:28 /dev/dax0.0
# pwd
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/ACPI0012:00/ndbus0/region0/dax0.0
# grep . *
align:2097152
devtype:nd_dax
modalias:nd:t7
mode:none
numa_node:0
grep: power: Is a directory
grep: resource: No such device or address
grep: size: No such device or address
grep: subsystem: Is a directory
uevent:DEVTYPE=nd_dax
uevent:MODALIAS=nd:t7
But I noticed that "resource" and "size" that are under
".../region0/dax0.1" work. Is this intended?
-Toshi