• Stefan Haberland's avatar
    s390/dasd: add copy pair setup · a91ff09d
    Stefan Haberland authored
    A copy relation that is configured on the storage server side needs to be
    enabled separately in the device driver. A sysfs interface is created
    that allows userspace tooling to control such setup.
    
    The following sysfs entries are added to store and read copy relation
    information:
    
    copy_pair
        - Add/Delete a copy pair relation to the DASD device driver
        - Query all previously added copy pair relations
    copy_role
        - Query the copy pair role of the device
    
    To add a copy pair to the DASD device driver it has to be specified
    through the sysfs attribute copy_pair. Only one secondary device can be
    specified at a time together with the primary device. Both, secondary
    and primary can be used equally to define the copy pair.
    The secondary devices have to be offline when adding the copy relation.
    The primary device needs to be specified first followed by the comma
    separated secondary device.
    Read from the copy_pair attribute to get the current setup and write
    "clear" to the attribute to delete any existing setup.
    
    Example:
    $ echo 0.0.9700,0.0.9740 > /sys/bus/ccw/devices/0.0.9700/copy_pair
    $ cat /sys/bus/ccw/devices/0.0.9700/copy_pair
    0.0.9700,0.0.9740
    
    During device online processing the required data will be read from the
    storage server and the information will be compared to the setup
    requested through the copy_pair attribute. The registration of the
    primary and secondary device will be handled accordingly.
    A blockdevice is only allocated for copy relation primary devices.
    
    To query the copy role of a device read from the copy_role sysfs
    attribute. Possible values are primary, secondary, and none.
    
    Example:
    $ cat /sys/bus/ccw/devices/0.0.9700/copy_role
    primary
    Signed-off-by: default avatarStefan Haberland <sth@linux.ibm.com>
    Reviewed-by: default avatarJan Hoeppner <hoeppner@linux.ibm.com>
    Link: https://lore.kernel.org/r/20220920192616.808070-4-sth@linux.ibm.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
    a91ff09d
dasd_devmap.c 58.9 KB