[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] Remove a few stray references to the sparse tree.
# HG changeset patch # User Ian Campbell <ian.campbell@xxxxxxxxxxxxx> # Date 1180957673 -3600 # Node ID 267ccb919967944c1d443af13376b0d3cd3e774c # Parent 20ee22a089ea2f9fa0593d667e3fd594651040ee Remove a few stray references to the sparse tree. The only non-obvious change here is in tools/xenfb/Makefile. This now picks up the headers it requires via the copy in tools/libxc. Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxxxxx> --- tools/misc/xen-clone | 134 ------------------------------------------ tools/Rules.mk | 4 - tools/blktap/drivers/Makefile | 3 tools/guest-headers/Makefile | 4 - tools/include/Linux/evtchn.h | 88 +++++++++++++++++++++++++++ tools/include/Linux/gntdev.h | 105 ++++++++++++++++++++++++++++++++ tools/include/Linux/privcmd.h | 79 ++++++++++++++++++++++++ tools/xenfb/Makefile | 2 8 files changed, 276 insertions(+), 143 deletions(-) diff -r 20ee22a089ea -r 267ccb919967 tools/Rules.mk --- a/tools/Rules.mk Mon Jun 04 11:37:50 2007 +0100 +++ b/tools/Rules.mk Mon Jun 04 12:47:53 2007 +0100 @@ -41,11 +41,11 @@ check-$(CONFIG_X86) = $(call cc-ver-chec mk-symlinks-SunOS: -mk-symlinks-Linux: LINUX_ROOT=$(XEN_ROOT)/linux-2.6-xen-sparse +mk-symlinks-Linux: LINUX_ROOT=$(XEN_ROOT)/tools/include/Linux mk-symlinks-Linux: mkdir -p xen/linux ( cd xen/linux && \ - ln -sf ../../$(LINUX_ROOT)/include/xen/public/*.h . ) + ln -sf ../../$(LINUX_ROOT)/*.h . ) ( cd xen && rm -f sys && ln -sf linux sys ) mk-symlinks-xen: diff -r 20ee22a089ea -r 267ccb919967 tools/blktap/drivers/Makefile --- a/tools/blktap/drivers/Makefile Mon Jun 04 11:37:50 2007 +0100 +++ b/tools/blktap/drivers/Makefile Mon Jun 04 12:47:53 2007 +0100 @@ -38,9 +38,6 @@ BLK-OBJS += aes.o all: $(IBIN) qcow-util -LINUX_ROOT := $(wildcard $(XEN_ROOT)/linux-2.6.*-xen-sparse) - - blktapctrl: blktapctrl.c $(CC) $(CFLAGS) -o blktapctrl $(LIBS) blktapctrl.c diff -r 20ee22a089ea -r 267ccb919967 tools/guest-headers/Makefile --- a/tools/guest-headers/Makefile Mon Jun 04 11:37:50 2007 +0100 +++ b/tools/guest-headers/Makefile Mon Jun 04 12:47:53 2007 +0100 @@ -1,7 +1,5 @@ XEN_ROOT=../.. XEN_ROOT=../.. include $(XEN_ROOT)/tools/Rules.mk - -linuxsparsetree = $(XEN_ROOT)/linux-2.6-xen-sparse .PHONY: all all: @@ -13,7 +11,7 @@ check: install-Linux: mkdir -p $(DESTDIR)/usr/include/xen/linux - $(INSTALL_DATA) $(linuxsparsetree)/include/xen/public/*.h $(DESTDIR)/usr/include/xen/linux + $(INSTALL_DATA) $(XEN_ROOT)/tools/include/Linux/*.h $(DESTDIR)/usr/include/xen/linux install-SunOS: diff -r 20ee22a089ea -r 267ccb919967 tools/include/Linux/evtchn.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/include/Linux/evtchn.h Mon Jun 04 12:47:53 2007 +0100 @@ -0,0 +1,88 @@ +/****************************************************************************** + * evtchn.h + * + * Interface to /dev/xen/evtchn. + * + * Copyright (c) 2003-2005, K A Fraser + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License version 2 + * as published by the Free Software Foundation; or, when distributed + * separately from the Linux kernel or incorporated into other + * software packages, subject to the following license: + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this source file (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, copy, modify, + * merge, publish, distribute, sublicense, and/or sell copies of the Software, + * and to permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + +#ifndef __LINUX_PUBLIC_EVTCHN_H__ +#define __LINUX_PUBLIC_EVTCHN_H__ + +/* + * Bind a fresh port to VIRQ @virq. + * Return allocated port. + */ +#define IOCTL_EVTCHN_BIND_VIRQ \ + _IOC(_IOC_NONE, 'E', 0, sizeof(struct ioctl_evtchn_bind_virq)) +struct ioctl_evtchn_bind_virq { + unsigned int virq; +}; + +/* + * Bind a fresh port to remote <@remote_domain, @remote_port>. + * Return allocated port. + */ +#define IOCTL_EVTCHN_BIND_INTERDOMAIN \ + _IOC(_IOC_NONE, 'E', 1, sizeof(struct ioctl_evtchn_bind_interdomain)) +struct ioctl_evtchn_bind_interdomain { + unsigned int remote_domain, remote_port; +}; + +/* + * Allocate a fresh port for binding to @remote_domain. + * Return allocated port. + */ +#define IOCTL_EVTCHN_BIND_UNBOUND_PORT \ + _IOC(_IOC_NONE, 'E', 2, sizeof(struct ioctl_evtchn_bind_unbound_port)) +struct ioctl_evtchn_bind_unbound_port { + unsigned int remote_domain; +}; + +/* + * Unbind previously allocated @port. + */ +#define IOCTL_EVTCHN_UNBIND \ + _IOC(_IOC_NONE, 'E', 3, sizeof(struct ioctl_evtchn_unbind)) +struct ioctl_evtchn_unbind { + unsigned int port; +}; + +/* + * Unbind previously allocated @port. + */ +#define IOCTL_EVTCHN_NOTIFY \ + _IOC(_IOC_NONE, 'E', 4, sizeof(struct ioctl_evtchn_notify)) +struct ioctl_evtchn_notify { + unsigned int port; +}; + +/* Clear and reinitialise the event buffer. Clear error condition. */ +#define IOCTL_EVTCHN_RESET \ + _IOC(_IOC_NONE, 'E', 5, 0) + +#endif /* __LINUX_PUBLIC_EVTCHN_H__ */ diff -r 20ee22a089ea -r 267ccb919967 tools/include/Linux/gntdev.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/include/Linux/gntdev.h Mon Jun 04 12:47:53 2007 +0100 @@ -0,0 +1,105 @@ +/****************************************************************************** + * gntdev.h + * + * Interface to /dev/xen/gntdev. + * + * Copyright (c) 2007, D G Murray + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License version 2 + * as published by the Free Software Foundation; or, when distributed + * separately from the Linux kernel or incorporated into other + * software packages, subject to the following license: + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this source file (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, copy, modify, + * merge, publish, distribute, sublicense, and/or sell copies of the Software, + * and to permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + +#ifndef __LINUX_PUBLIC_GNTDEV_H__ +#define __LINUX_PUBLIC_GNTDEV_H__ + +struct ioctl_gntdev_grant_ref { + /* The domain ID of the grant to be mapped. */ + uint32_t domid; + /* The grant reference of the grant to be mapped. */ + uint32_t ref; +}; + +/* + * Inserts the grant references into the mapping table of an instance + * of gntdev. N.B. This does not perform the mapping, which is deferred + * until mmap() is called with @index as the offset. + */ +#define IOCTL_GNTDEV_MAP_GRANT_REF \ +_IOC(_IOC_NONE, 'G', 0, sizeof(struct ioctl_gntdev_map_grant_ref)) +struct ioctl_gntdev_map_grant_ref { + /* IN parameters */ + /* The number of grants to be mapped. */ + uint32_t count; + uint32_t pad; + /* OUT parameters */ + /* The offset to be used on a subsequent call to mmap(). */ + uint64_t index; + /* Variable IN parameter. */ + /* Array of grant references, of size @count. */ + struct ioctl_gntdev_grant_ref refs[1]; +}; + +/* + * Removes the grant references from the mapping table of an instance of + * of gntdev. N.B. munmap() must be called on the relevant virtual address(es) + * before this ioctl is called, or an error will result. + */ +#define IOCTL_GNTDEV_UNMAP_GRANT_REF \ +_IOC(_IOC_NONE, 'G', 1, sizeof(struct ioctl_gntdev_unmap_grant_ref)) +struct ioctl_gntdev_unmap_grant_ref { + /* IN parameters */ + /* The offset was returned by the corresponding map operation. */ + uint64_t index; + /* The number of pages to be unmapped. */ + uint32_t count; + uint32_t pad; +}; + +/* + * Returns the offset in the driver's address space that corresponds + * to @vaddr. This can be used to perform a munmap(), followed by an + * UNMAP_GRANT_REF ioctl, where no state about the offset is retained by + * the caller. The number of pages that were allocated at the same time as + * @vaddr is returned in @count. + * + * N.B. Where more than one page has been mapped into a contiguous range, the + * supplied @vaddr must correspond to the start of the range; otherwise + * an error will result. It is only possible to munmap() the entire + * contiguously-allocated range at once, and not any subrange thereof. + */ +#define IOCTL_GNTDEV_GET_OFFSET_FOR_VADDR \ +_IOC(_IOC_NONE, 'G', 2, sizeof(struct ioctl_gntdev_get_offset_for_vaddr)) +struct ioctl_gntdev_get_offset_for_vaddr { + /* IN parameters */ + /* The virtual address of the first mapped page in a range. */ + uint64_t vaddr; + /* OUT parameters */ + /* The offset that was used in the initial mmap() operation. */ + uint64_t offset; + /* The number of pages mapped in the VM area that begins at @vaddr. */ + uint32_t count; + uint32_t pad; +}; + +#endif /* __LINUX_PUBLIC_GNTDEV_H__ */ diff -r 20ee22a089ea -r 267ccb919967 tools/include/Linux/privcmd.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/include/Linux/privcmd.h Mon Jun 04 12:47:53 2007 +0100 @@ -0,0 +1,79 @@ +/****************************************************************************** + * privcmd.h + * + * Interface to /proc/xen/privcmd. + * + * Copyright (c) 2003-2005, K A Fraser + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License version 2 + * as published by the Free Software Foundation; or, when distributed + * separately from the Linux kernel or incorporated into other + * software packages, subject to the following license: + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this source file (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, copy, modify, + * merge, publish, distribute, sublicense, and/or sell copies of the Software, + * and to permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + +#ifndef __LINUX_PUBLIC_PRIVCMD_H__ +#define __LINUX_PUBLIC_PRIVCMD_H__ + +#include <linux/types.h> + +#ifndef __user +#define __user +#endif + +typedef struct privcmd_hypercall +{ + __u64 op; + __u64 arg[5]; +} privcmd_hypercall_t; + +typedef struct privcmd_mmap_entry { + __u64 va; + __u64 mfn; + __u64 npages; +} privcmd_mmap_entry_t; + +typedef struct privcmd_mmap { + int num; + domid_t dom; /* target domain */ + privcmd_mmap_entry_t __user *entry; +} privcmd_mmap_t; + +typedef struct privcmd_mmapbatch { + int num; /* number of pages to populate */ + domid_t dom; /* target domain */ + __u64 addr; /* virtual address */ + xen_pfn_t __user *arr; /* array of mfns - top nibble set on err */ +} privcmd_mmapbatch_t; + +/* + * @cmd: IOCTL_PRIVCMD_HYPERCALL + * @arg: &privcmd_hypercall_t + * Return: Value returned from execution of the specified hypercall. + */ +#define IOCTL_PRIVCMD_HYPERCALL \ + _IOC(_IOC_NONE, 'P', 0, sizeof(privcmd_hypercall_t)) +#define IOCTL_PRIVCMD_MMAP \ + _IOC(_IOC_NONE, 'P', 2, sizeof(privcmd_mmap_t)) +#define IOCTL_PRIVCMD_MMAPBATCH \ + _IOC(_IOC_NONE, 'P', 3, sizeof(privcmd_mmapbatch_t)) + +#endif /* __LINUX_PUBLIC_PRIVCMD_H__ */ diff -r 20ee22a089ea -r 267ccb919967 tools/misc/xen-clone --- a/tools/misc/xen-clone Mon Jun 04 11:37:50 2007 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,134 +0,0 @@ -#!/bin/sh -x - -# usage: xen-clone hg_repository dest_dir orig_linux_dir -# -# this script contains some CL site specific details, but can easily be adapted -# - -# test which site we're on -[ -d /usr/groups/xeno/ -a -d /usr/groups/srgboot ] && SITE=UCCL - -case "$SITE" in -UCCL) - BK_REP=${1:-http://hg.srg.cl.cam.ac.uk/xen-unstable.hg} - LINUX_DIR=${3:-/usr/groups/xeno/archive/} - ;; -*) - BK_REP=${1:-http://xenbits.xensource.com/xen-unstable.hg} - LINUX_DIR=${3:-.:..} -;; -esac - -DEST_DIR=${2:-xeno-clone} -DEST_BK_REP=`basename "${BK_REP}"` -DEST_VER=`basename ${DEST_BK_REP} .hg` - -echo usage: xen-clone hg dest_dir orig_linux_dir -echo Source BK Repository : ${BK_REP} -echo Destination Dir/Repository : ${DEST_DIR}/${DEST_BK_REP} -echo Pristine Linux Source directory : ${LINUX_DIR} - -mkdir -p ${DEST_DIR} -cd ${DEST_DIR} -TOP=`/bin/pwd` - -# site-specific set up of installation directories -case "$SITE" in -UCCL) - PATH=$PATH:/usr/groups/xeno/build_tools/bin - mkdir -p install/boot - cd install/boot - ln -sf ../../../xeno-roots/roots . - ln -sf ../../../xeno-roots/usr . - ln -sf ../lib . - ln -sf ../bin . - ln -sf /usr/groups/srgboot/${USER}/xenoboot.sh . - ln -sf `pwd` /usr/groups/srgboot/${USER}/${DEST_DIR} - ln -sf xen.gz image.gz - cd ../.. - ;; -esac - -# clone the master repository (now checked-out by default) -if [ ! -d ${DEST_BK_REP} ] -then -mkdir -p ${DEST_BK_REP} ; cd ${DEST_BK_REP} ; hg init ${BK_REP} ; hg co ; cd ${TOP} -else -cd ${DEST_BK_REP} -hg pull ; hg co -cd ${TOP} -fi - - -if [ -d ${DEST_BK_REP}/linux-2.4*-xen-sparse ] -then - # this is a new style Xen repository so building is dead easy - - export LINUX_SRC_PATH=${LINUX_DIR} - - cd ${DEST_BK_REP} - - # Recent repositories install into 'dist/install' rather than 'install'. - if [ -f install.sh ] - then - mkdir -p dist - ln -sf ../../install dist/install - else - ln -sf ../install install - fi - - make -j4 KERNELS=linux-* world - #make -j4 linux24 - cd ../install/boot - if [ -r vmlinuz-2.6-xen0 ] - then - ln -s vmlinuz-2.6-xen0 xenolinux.gz - else - kern=`ls vmlinuz-2.6.*-xen0 | head -1` - [ -r "$kern" ] && ln -s "$kern" xenolinux.gz - fi - -else - # old style repository without 'make world' - - - # identify this version of linux - LINUX_VER=`( /bin/ls -ld ${DEST_BK_REP}/*xenolinux-sparse || /bin/ls -ld ${DEST_BK_REP}/*xenolinux-*-sparse ) 2>/dev/null | sed -e 's!^.*xenolinux-\(.\+\)-sparse!\1!'` - - if [ -z "${LINUX_VER}" ] - then - echo Unable to identify Linux version. Bailing. - exit -1 - fi - - # copy in the master Linux tree for this kernel - if [ ! -d linux-${LINUX_VER} ] - then - tar -jxf ${LINUX_DIR}/linux-${LINUX_VER}.tar.bz2 || tar -zxf ${LINUX_DIR}/linux-${LINUX_VER}.tar.gz || tar -zxf ${LINUX_DIR}/linux-${LINUX_VER}.tgz || cp -a ${LINUX_DIR}/linux-${LINUX_VER} . || wget ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-${LINUX_VER}.tar.gz -O- | tar -zxf - || exit -1 - fi - - # build and install Xen and tools - cd ${DEST_BK_REP} - make dist || make install - - # Turn linux into xenolinux then build it - cd xenolinux-${LINUX_VER}-sparse - bash ./mkbuildtree ../../linux-${LINUX_VER} - cd ../.. - mv linux-${LINUX_VER} xenolinux-${LINUX_VER} - cd xenolinux-${LINUX_VER} - - # cope with the change from ARCH=xeno to ARCH=xen - cd arch; XEN=`/bin/ls -d xen*`; cd .. - - # built it all - ARCH=$XEN make oldconfig - ARCH=$XEN make dep - ARCH=$XEN make bzImage - ARCH=$XEN make dist || ARCH=xen make install - ARCH=$XEN make modules - ARCH=$XEN make INSTALL_MOD_PATH=${TOP}/install modules_install - cd .. - -fi - diff -r 20ee22a089ea -r 267ccb919967 tools/xenfb/Makefile --- a/tools/xenfb/Makefile Mon Jun 04 11:37:50 2007 +0100 +++ b/tools/xenfb/Makefile Mon Jun 04 12:47:53 2007 +0100 @@ -2,7 +2,7 @@ include $(XEN_ROOT)/tools/Rules.mk include $(XEN_ROOT)/tools/Rules.mk CFLAGS += -I$(XEN_LIBXC) -I$(XEN_XENSTORE) -CFLAGS += -I$(XEN_ROOT)/linux-2.6-xen-sparse/include -I$(XEN_ROOT)/tools/ioemu +CFLAGS += -I$(XEN_ROOT)/tools/ioemu LDFLAGS += -L$(XEN_LIBXC) -L$(XEN_XENSTORE) .PHONY: all _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |