powerpc/pseries: Introduce api_version to migration sysfs interface
authorTyrel Datwyler <tyreld@linux.vnet.ibm.com>
Thu, 5 Mar 2015 02:25:38 +0000 (18:25 -0800)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 24 Mar 2015 00:23:11 +0000 (11:23 +1100)
commit288a298c05774dde0a8d5abac9b692503d4e41f2
tree69b3d83a82f3e59367c6a68d6b1fc5dc2ce4d02a
parentcc83458d3aa01d69ccb2976e1323c92a6caae540
powerpc/pseries: Introduce api_version to migration sysfs interface

The /sys/kernel/mobility/migration interface was added all the way back
in 2.6.37. However, the drmgr userspace tool was never augmented to use
this interface to perfrom migrations. Instead it has continued using a
faux rtas call coupled with performing the device tree update processing
in userspace and communicating it back to the kernel via the ugly
/proc/ppc64/ofdt interface.

Up until 3.12 the device tree update code in the kernel was badly broken
and bit rotting. This code was fixed in 3.12 and is now utilized by the
kernel suspend code as of 3.15. The kernel is now better suited to
handle the post-mobility fixup of the device tree and drmgr should be
transitioned to using the sysfs migration interface.

This patch introduces the api_version sysfs file to /sys/kernel/mobility
as a means for drmgr to query the current implementation level of the
kernel migration code. This initial versioning indicates it is capable
of perfroming all current PAPR requirements for migration including the
post-mobility firmware activation and device tree update.

Signed-off-by: Tyrel Datwyler <tyreld@linux.vnet.ibm.com>
Cc: Nathan Fontenot <nfont@linux.vnet.ibm.com>
Cc: Cyril Bur <cyrilbur@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/platforms/pseries/mobility.c