On 6/13/19 8:02 AM, Eric Blake wrote: > On 6/12/19 11:31 AM, roman.stratiienko@xxxxxxxxxxxxxxx wrote: >> From: Roman Stratiienko <roman.stratiienko@xxxxxxxxxxxxxxx> >> >> Adding support to nbd to use it as a root device. This code essentially >> provides a minimal nbd-client implementation within the kernel. It opens >> a socket and makes the negotiation with the server. Afterwards it passes >> the socket to the normal nbd-code to handle the connection. >> >> The arguments for the server are passed via kernel command line. >> The kernel command line has the format >> 'nbdroot=[<SERVER_IP>:]<SERVER_PORT>/<EXPORT_NAME>'. > > Did you intend for nbdroot=1234 to connect to port 1234 or to server > 1234 port 10809? Is an export name mandatory even when it is the empty > string, in which case, is the / character mandatory? Maybe this would > be better written as: > > [<SERVER_IP>[:<SERVER_PORT]][/<EXPORT_NAME] Make that: [[<SERVER_IP>][:<SERVER_PORT>]][/[<EXPORT_NAME>]] as well as a blurb that IPv6 requires use of [] around SERVER_IP to avoid ambiguity between IP address and the port designator. That would allow variations such as: nbdroot=1.2.3.4 # port 10809 and export name '' defaulted nbdroot=1.2.3.4:10809/ # fully explicit, export name '' nbdroot=:10810/export # host defaulted by DHCP, rest is explicit nbdroot=/ # host and port are defaulted, export is '' nbdroot=[::1]:10810 # IPv6 localhost and port 10810 nbdroot=::1 # IPv6 localhost, default port 10809 [I'm aware that localhost is probably not going to work based on how early this is encountered during the boot; rather, consider ::1 as a placeholder for a more realistic IPv6 address] > > although that would allow nbdroot= using all defaults (will that still > do the right thing?). nbdroot= # host from DHCP, port 10809, export '' > > Should we support nbdroot=URI, and tie this in to Rich's proposal [1] on > standardizing the set of URIs that refer to an NBD export? It seems > like you are still limited to a TCP socket (not Unix) with no > encryption, so this would be equivalent to the URI: > > nbd://[server[:port]][/export] > > [1] https://lists.debian.org/nbd/2019/06/msg00011.html > -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3226 Virtualization: qemu.org | libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature