lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1178290638.23670.114.camel@localhost.localdomain>
Date:	Sat, 05 May 2007 00:57:18 +1000
From:	Rusty Russell <rusty@...tcorp.com.au>
To:	Andrew Morton <akpm@...ux-foundation.org>
Cc:	lkml - Kernel Mailing List <linux-kernel@...r.kernel.org>,
	virtualization <virtualization@...ts.linux-foundation.org>,
	Matt Mackall <mpm@...enic.com>,
	Tony Breeds <tony@...eyournoodle.com>,
	WANG Cong <xiyou.wangcong@...il.com>
Subject: [PATCH 1/3] Documentation and example updates

1) Example code: old libc headers don't have SIOCBRADDIF, and old zlibs
   don't have gzdirect() -- it's a sanity check anyway.
2) Some people don't build in their source directories, so .config
   isn't there (thanks to Tony Breeds <tony@...eyournoodle.com>).
3) Point out that guest and host kernel are usually the same.
4) Set the "no checksum" option on the tun device as a minor optimization.

Signed-off-by: Rusty Russell <rusty@...tcorp.com.au>

---
 Documentation/lguest/Makefile   |    9 ++++++++-
 Documentation/lguest/lguest.c   |    6 ++++--
 Documentation/lguest/lguest.txt |    8 ++++++--
 3 files changed, 18 insertions(+), 5 deletions(-)

===================================================================
--- a/Documentation/lguest/Makefile
+++ b/Documentation/lguest/Makefile
@@ -1,7 +1,14 @@
 # This creates the demonstration utility "lguest" which runs a Linux guest.
 
+# For those people that have a separate object dir, look there for .config
+KBUILD_OUTPUT := ../..
+ifdef O
+  ifeq ("$(origin O)", "command line")
+    KBUILD_OUTPUT := $(O)
+  endif
+endif
 # We rely on CONFIG_PAGE_OFFSET to know where to put lguest binary.
-include ../../.config
+include $(KBUILD_OUTPUT)/.config
 LGUEST_GUEST_TOP := ($(CONFIG_PAGE_OFFSET) - 0x08000000)
 
 CFLAGS:=-Wall -Wmissing-declarations -Wmissing-prototypes -O3 \
===================================================================
--- a/Documentation/lguest/lguest.c
+++ b/Documentation/lguest/lguest.c
@@ -40,6 +40,9 @@ typedef uint8_t u8;
 #define PAGE_PRESENT 0x7 	/* Present, RW, Execute */
 #define NET_PEERNUM 1
 #define BRIDGE_PFX "bridge:"
+#ifndef SIOCBRADDIF
+#define SIOCBRADDIF	0x89a2		/* add interface to bridge      */
+#endif
 
 static bool verbose;
 #define verbose(args...) \
@@ -166,8 +169,6 @@ static unsigned long unpack_bzimage(int 
 	void *img = (void *)0x100000;
 
 	f = gzdopen(fd, "rb");
-	if (gzdirect(f))
-		errx(1, "did not find correct gzip header");
 	while ((ret = gzread(f, img + len, 65536)) > 0)
 		len += ret;
 	if (ret < 0)
@@ -820,6 +821,7 @@ static void setup_tun_net(const char *ar
 	strcpy(ifr.ifr_name, "tap%d");
 	if (ioctl(netfd, TUNSETIFF, &ifr) != 0)
 		err(1, "configuring /dev/net/tun");
+	ioctl(netfd, TUNSETNOCSUM, 1);
 
 	/* You will be peer 1: we should create enough jitter to randomize */
 	dev = new_device(devices, LGUEST_DEVICE_T_NET, 1,
===================================================================
--- a/Documentation/lguest/lguest.txt
+++ b/Documentation/lguest/lguest.txt
@@ -23,7 +23,10 @@ Developer features:
 
 Running Lguest:
 
-- You will need to configure your kernel with the following options:
+- Lguest runs the same kernel as guest and host.  You can configure
+  them differently, but usually it's easiest not to.
+
+  You will need to configure your kernel with the following options:
 
   CONFIG_HIGHMEM64G=n ("High Memory Support" "64GB")[1]
   CONFIG_TUN=y/m ("Universal TUN/TAP device driver support")
@@ -35,7 +38,8 @@ Running Lguest:
   CONFIG_HZ=100 ("Timer frequency")[2]
 
 - A tool called "lguest" is available in this directory: type "make"
-  to build it.
+  to build it.  If you didn't build your kernel in-tree, use "make
+  O=<builddir>".
 
 - Create or find a root disk image.  There are several useful ones
   around, such as the xm-test tiny root image at


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ