Remove double "it", and redundant information about defaults
[nbd.git] / README
diff --git a/README b/README
index 6194578..e2e7291 100644 (file)
--- a/README
+++ b/README
@@ -16,10 +16,10 @@ Using NBD is quite easy. First, on the client, you need to create the
 device nodes:
 
 # cd /dev
-# ./MAKEDEV nb0
+# ./MAKEDEV nbd0
 
-(if you need more than one NBD device, repeat the above command for nb1,
-nb2, ...)
+(if you need more than one NBD device, repeat the above command for nbd1,
+nbd2, ...)
 
 Since there's a problem with nbd and the (default) cfq I/O scheduler,
 you may want to set it to deadline:
@@ -47,7 +47,7 @@ nbd-client <hostname> <port> <nbd device>
 
 e.g.,
 
-nbd-client 10.0.0.1 1234 /dev/nb0
+nbd-client 10.0.0.1 1234 /dev/nbd0
 
 nbd-client must be ran as root; the same is not true for nbd-server (but
 do make sure that /var/run is writeable by the server that nbd-server
@@ -104,17 +104,11 @@ FreeBSD: "net/nbd-server", available in the ports tree since 2003.
        client isn't built there.
 SuSE: "nbd", since SuSE 10.0
 Fedora: "nbd", since Fedora 7
+uClibc's "buildroot" script also seems to have support for NBD.
 
 If you're packaging NBD for a different operating system that isn't in
 the above list, I'd like to know about it.
 
-Thanks, and have fun,
-
-Wouter Verhelst
-
-
-
-
 [1] When you write something to a block device, the kernel will not
 immediately write that to the physical block device; instead, your
 changes are written to a cache, which is periodically flushed by a
@@ -126,6 +120,26 @@ If, while your kblockd is emptying the NBD buffer cache, the kernel
 decides that the cache of the block device your nbd-server is writing to
 needs to be emptied, then you've got a deadlock.
 
-A kernel patch exists[2] to create a separate kernel thread for NBD
-writes which woul fix this problem; however, it has not made it into
-mainline yet.
+A kernel patch exists to create a separate kernel thread for NBD writes
+which woul fix this problem; however, it has not made it into mainline
+yet.
+
+BUILDING THE SERVER FOR NON-LINUX OPERATING SYSTEMS
+===================================================
+
+Since the client requires kernel-side support, you can't just compile
+nbd-client on a non-Linux kernel and hope it'll work; you'd have to
+write a kernel-space driver before that would be possible.
+
+However, nbd-server assumes nothing more than POSIX and one headerfile
+from the Linux kernel. Compiling it can be done as follows:
+- Fetch the nbd userland sources, and unpack them. Since you're reading
+  this README file, you have already done this step.
+- Fetch the "nbd.h" file from /usr/include/linux on a Linux system, or
+  from include/linux in the Linux source tree, and store it in the
+  toplevel directory of the nbd userland sources
+- Edit the headerfile, and remove the line that says '#include
+  <linux/types.h>' (on non-Linux systems, the userland source is smart
+  enough to figure out how this works by itself)
+- now it's just a regular './configure && make && sudo make install'
+