~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/ABI/testing/sysfs-class-rnbd-client

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/ABI/testing/sysfs-class-rnbd-client (Version linux-6.12-rc7) and /Documentation/ABI/testing/sysfs-class-rnbd-client (Version linux-5.9.16)


  1 What:           /sys/class/rnbd-client              1 What:           /sys/class/rnbd-client
  2 Date:           Feb 2020                            2 Date:           Feb 2020
  3 KernelVersion:  5.7                                 3 KernelVersion:  5.7
  4 Contact:        Jack Wang <jinpu.wang@cloud.ion      4 Contact:        Jack Wang <jinpu.wang@cloud.ionos.com> Danil Kipnis <danil.kipnis@cloud.ionos.com>
  5 Description:    Provide information about RNBD      5 Description:    Provide information about RNBD-client.
  6                 All sysfs files that are not r      6                 All sysfs files that are not read-only provide the usage information on read:
  7                                                     7 
  8                 Example::                      !!   8                 Example:
                                                   >>   9                 # cat /sys/class/rnbd-client/ctl/map_device
  9                                                    10 
 10                     # cat /sys/class/rnbd-clie !!  11                 > Usage: echo "sessname=<name of the rtrs session> path=<[srcaddr,]dstaddr>
 11                                                !!  12                 > [path=<[srcaddr,]dstaddr>] device_path=<full path on remote side>
 12                     > Usage: echo "sessname=<n !!  13                 > [access_mode=<ro|rw|migration>] > map_device
 13                     > [path=<[srcaddr,]dstaddr !!  14                 >
 14                     > [access_mode=<ro|rw|migr !!  15                 > addr ::= [ ip:<ipv4> | ip:<ipv6> | gid:<gid> ]
 15                     >                          << 
 16                     > addr ::= [ ip:<ipv4> | i << 
 17                                                    16 
 18 What:           /sys/class/rnbd-client/ctl/map     17 What:           /sys/class/rnbd-client/ctl/map_device
 19 Date:           Feb 2020                           18 Date:           Feb 2020
 20 KernelVersion:  5.7                                19 KernelVersion:  5.7
 21 Contact:        Jack Wang <jinpu.wang@cloud.ion     20 Contact:        Jack Wang <jinpu.wang@cloud.ionos.com> Danil Kipnis <danil.kipnis@cloud.ionos.com>
 22 Description:    Expected format is the followi !!  21 Description:    Expected format is the following:
 23                                                    22 
 24                     sessname=<name of the rtrs !!  23                 sessname=<name of the rtrs session>
 25                     path=<[srcaddr,]dstaddr> [ !!  24                 path=<[srcaddr,]dstaddr> [path=<[srcaddr,]dstaddr> ...]
 26                     device_path=<full path on  !!  25                 device_path=<full path on remote side>
 27                     [access_mode=<ro|rw|migrat !!  26                 [access_mode=<ro|rw|migration>]
 28                                                    27 
 29                 Where:                             28                 Where:
 30                                                    29 
 31                 sessname:                      !!  30                 sessname: accepts a string not bigger than 256 chars, which identifies
 32                     accepts a string not bigge !!  31                 a given session on the client and on the server.
 33                     a given session on the cli !!  32                 I.e. "clt_hostname-srv_hostname" could be a natural choice.
 34                     I.e. "clt_hostname-srv_hos !!  33 
 35                                                !!  34                 path:     describes a connection between the client and the server by
 36                 path:                          !!  35                 specifying destination and, when required, the source address.
 37                     describes a connection bet !!  36                 The addresses are to be provided in the following format:
 38                     specifying destination and << 
 39                     The addresses are to be pr << 
 40                                                << 
 41                         ip:<IPv6>              << 
 42                         ip:<IPv4>              << 
 43                         gid:<GID>              << 
 44                                                    37 
 45                 for example::                  !!  38                 ip:<IPv6>
                                                   >>  39                 ip:<IPv4>
                                                   >>  40                 gid:<GID>
 46                                                    41 
 47                     path=ip:10.0.0.66          !!  42                 for example:
 48                                                    43 
                                                   >>  44                 path=ip:10.0.0.66
 49                 The single addr is treated as      45                 The single addr is treated as the destination.
 50                 The connection will be establi     46                 The connection will be established to this server from any client IP address.
 51                                                    47 
 52                 ::                             !!  48                 path=ip:10.0.0.66,ip:10.0.1.66
 53                                                << 
 54                     path=ip:10.0.0.66,ip:10.0. << 
 55                                                << 
 56                 First addr is the source addre     49                 First addr is the source address and the second is the destination.
 57                                                    50 
 58                 If multiple "path=" options ar     51                 If multiple "path=" options are specified multiple connection
 59                 will be established and data w     52                 will be established and data will be sent according to
 60                 the selected multipath policy      53                 the selected multipath policy (see RTRS mp_policy sysfs entry description).
 61                                                    54 
 62                 device_path:                   !!  55                 device_path: Path to the block device on the server side. Path is specified
 63                     Path to the block device o !!  56                 relative to the directory on server side configured in the
 64                     relative to the directory  !!  57                 'dev_search_path' module parameter of the rnbd_server.
 65                     'dev_search_path' module p !!  58                 The rnbd_server prepends the <device_path> received from client
 66                     The rnbd_server prepends t !!  59                 with <dev_search_path> and tries to open the
 67                     with <dev_search_path> and !!  60                 <dev_search_path>/<device_path> block device.  On success,
 68                     <dev_search_path>/<device_ !!  61                 a /dev/rnbd<N> device file, a /sys/block/rnbd_client/rnbd<N>/
 69                     a /dev/rnbd<N> device file !!  62                 directory and an entry in /sys/class/rnbd-client/ctl/devices
 70                     directory and an entry in  !!  63                 will be created.
 71                     will be created.           << 
 72                                                    64 
 73                 If 'dev_search_path' contains      65                 If 'dev_search_path' contains '%SESSNAME%', then each session can
 74                 have different devices namespa     66                 have different devices namespace, e.g. server was configured with
 75                 the following parameter "dev_s     67                 the following parameter "dev_search_path=/run/rnbd-devs/%SESSNAME%",
 76                 client has this string "sessna     68                 client has this string "sessname=blya device_path=sda", then server
 77                 will try to open: /run/rnbd-de     69                 will try to open: /run/rnbd-devs/blya/sda.
 78                                                    70 
 79                 access_mode:                   !!  71                 access_mode: the access_mode parameter specifies if the device is to be
 80                     the access_mode parameter  !!  72                 mapped as "ro" read-only or "rw" read-write. The server allows
 81                     mapped as "ro" read-only o !!  73                 a device to be exported in rw mode only once. The "migration"
 82                     a device to be exported in !!  74                 access mode has to be specified if a second mapping in read-write
 83                     access mode has to be spec !!  75                 mode is desired.
 84                     mode is desired.           << 
 85                                                    76 
 86                 By default "rw" is used.           77                 By default "rw" is used.
 87                                                    78 
 88                 nr_poll_queues                 << 
 89                   specifies the number of poll << 
 90                   the block-layer will send th << 
 91                   For fast network and device  << 
 92                   IO handling because it saves << 
 93                   another process, handling th << 
 94                   issuing process.             << 
 95                                                << 
 96                   Set -1 if you want to set it << 
 97                   By default rnbd client creat << 
 98                                                << 
 99                   NOTICE: MUST make a unique s << 
100                                                << 
101                 Exit Codes:                        79                 Exit Codes:
102                                                    80 
103                 If the device is already mappe     81                 If the device is already mapped it will fail with EEXIST. If the input
104                 has an invalid format it will      82                 has an invalid format it will return EINVAL. If the device path cannot
105                 be found on the server, it wil     83                 be found on the server, it will fail with ENOENT.
106                                                    84 
107                 Finding device file after mapp     85                 Finding device file after mapping
108                 ------------------------------     86                 ---------------------------------
109                                                    87 
110                 After mapping, the device file     88                 After mapping, the device file can be found by:
111                 o  The symlink /sys/class/rnbd< !!  89                 o  The symlink /sys/class/rnbd-client/ctl/devices/<device_id>
112                 points to /sys/block/<dev-name     90                 points to /sys/block/<dev-name>. The last part of the symlink destination
113                 is the same as the device name     91                 is the same as the device name.  By extracting the last part of the
114                 path the path to the device /d     92                 path the path to the device /dev/<dev-name> can be build.
115                                                    93 
116                 * /dev/block/$(cat /sys/class/< !!  94                 o /dev/block/$(cat /sys/class/rnbd-client/ctl/devices/<device_id>/dev)
117                                                    95 
118                 How to find the <device_id> of     96                 How to find the <device_id> of the device is described on the next
119                 section.                           97                 section.
120                                                    98 
121 What:           /sys/class/rnbd-client/ctl/dev     99 What:           /sys/class/rnbd-client/ctl/devices/
122 Date:           Feb 2020                          100 Date:           Feb 2020
123 KernelVersion:  5.7                               101 KernelVersion:  5.7
124 Contact:        Jack Wang <jinpu.wang@cloud.ion    102 Contact:        Jack Wang <jinpu.wang@cloud.ionos.com> Danil Kipnis <danil.kipnis@cloud.ionos.com>
125 Description:    For each device mapped on the     103 Description:    For each device mapped on the client a new symbolic link is created as
126                 /sys/class/rnbd-client/ctl/dev< !! 104                 /sys/class/rnbd-client/ctl/devices/<device_id>, which points
127                 to the block device created by    105                 to the block device created by rnbd (/sys/block/rnbd<N>/).
128                 The <device_id> of each device    106                 The <device_id> of each device is created as follows:
129                                                   107 
130                 - If the 'device_path' provide    108                 - If the 'device_path' provided during mapping contains slashes ("/"),
131                   they are replaced by exclama !! 109                 they are replaced by exclamation mark ("!") and used as as the
132                   <device_id>. Otherwise, the  !! 110                 <device_id>. Otherwise, the <device_id> will be the same as the
133                   "device_path" provided.      !! 111                 "device_path" provided.
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php