[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xen-devel
Subject:    [Xen-devel] XEN/IA64 critical patch for xen-3.0.0-testing tree
From:       "Tian, Kevin" <kevin.tian () intel ! com>
Date:       2005-12-31 3:10:35
Message-ID: 571ACEFD467F7749BC50E0A98C17CDD802C06BD1 () pdsmsx403
[Download RAW message or body]

Hi, Keir/Ian,
	Attached includes 3 critical fixes which need to be pushed into
xen-3.0.0-testing. Could you please take a look and help? ;-)

Thanks,
Kevin
========================================
This patch includes changesets critical to XEN/IA64 dom0/domU which only
touches ia64 specific files and test no regression upon testing tree:

(xen-unstable.hg)
8423 - generic xen0_defconfig_ia64 to run on multiple IA64 boxes (HP-ZX1
and Tiger) which are both commonly used
8413 - Fix dom0 losing virtual timer interrupt issue, which blocks
multiple domains stability

(xen-ia64-unstable.hg)
(Following 5 changesets are all related to I/D cache sync issue, to
ensure IA64 dom0 running on box with cache split. Patch is made upon
8437)
8437
8435
8434
8375
8371


linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 |  313
++++++++++----
xen/arch/ia64/xen/domain.c                                |   20 
xen/arch/ia64/xen/vcpu.c                                  |   21 
xen/arch/ia64/xen/xenmisc.c                               |   24 +
xen/include/asm-ia64/linux-xen/asm/pal.h                  |    6 
5 files changed, 279 insertions(+), 105 deletions(-)

(xen-unstable.hg)
----
8423
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 663c487a5f2c1bee87062dfe522c4e4516a82f8e
# Parent  97d70c793b67fcd93b9f44529c81d8a9e1eaad63
New default config file that works on both tiger4 and HP boxes

----
8413
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID f998426f9069aa9e4e060ceb48a3cd9cfc1231d9
# Parent  dda94d6dce94447d29eaf64c53e6e6315e4ac96e
Under some specific conditions, dom0 will lose guest timer interrupt.
Signed-off-by Anthony Xu <anthony.xu@intel.com>
Signed-off-by Kevin Tian <kevin.tian@intel.com>
The reason is that Xen/ia64 will try to pend guest timer interrupt to
dom0
within each machine timer interrupt handler. To avoid duplicated
delivery, 
domain_itm_last recorded domain_itm of last injection. If two are
identical,
it means interrupt injected but guest has not set new itm value. Or else
corresponding pending irr bit will be turned on. That works in most
cases.

However currently guest linux may try to set itm multiple times within
one
handler before turn on psr.i again. Among first few settings, new guest
timer
interrupt may be pended. Then once guest linux enables interrupt, a new
timer interrupt will be injected immediately. However this injection may
have
itc still smaller than the domain_itm set at the last round of last
handle.
In this case, guest linux will set same domain_itm as last again.
However
since domain_itm_last already equals to domain_itm at last read ivr,
later
no guest timer interrupt can be injected any more since Xen always
thinks
an instance already injected without guest's response.

Attahced patch fixed this issue by adding sanity check upon guest timer
vector when deciding to inject interrupt into dom0. We always compare
current
itc with latest domain_itm that guest really wants. So if itc <
domain_itm
at this point, we simply clear the pending bit and no injection.

There's also a small fix to vcpu_read_ivr, where domain_itm_last should
be updated before clearing irr bit. Or els a small window still remains
to add a duplicate interrupt.

(xen-ia64-unstable.hg)
----
8437
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID b4925703b56c0944e304f073c3117da4f3d71ccd
# Parent  5222e8d456aea9a7cf432d0d4ad8a3a7ac602c5b
Missing initialization in cache sync code (by Anthony Xu)

----
8435
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 8643b4d778f56c780d2860289d1255c80ab0b32e
# Parent  40648452d45f4b9a26043c0297869c55a6912551
Leave psr.ic on in pal_cache_flush -- fixes Linux bug (by Anthony Xu)

----
8434
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 40648452d45f4b9a26043c0297869c55a6912551
# Parent  f218e6ba2653d3f2d50e11ea4b18c743d6c9127f
Sync caches only on split cache machines (dynamic test instead of
compile ifdef)
Signed-off-by: Dan Magenheimer <dan.magenheimer@hp.com>

----
8375
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 72f51528d55a9b99f8c7737b34bf6f370de0de7f
# Parent  545ba1b126ca2f06861c3982c4da33dd310e7717
More pal_flush_cache calls for split cache machines (by Anthony Xu)

----
8371
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID e1ae4b162128f5b16c626d77c25215a37f9da6e7
# Parent  2d5c57be196d7db66157d3f820858c7acf9dbe58
Turn off ia64_pal_cache_flush for domU (temp, until failure understood)

["IA64_patches_for_xen_testing.patch" (application/octet-stream)]

This patch includes changesets critical to XEN/IA64 dom0/domU:
(xen-unstable.hg)
8413
8423

(xen-ia64-unstable.hg)
8437
8435
8434
8375
8371
(Above 5 changesets are all related to I/D cache sync issue, and we
merge into one patch below)

linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64 |  313 ++++++++++----
xen/arch/ia64/xen/domain.c                                |   20
xen/arch/ia64/xen/vcpu.c                                  |   21
xen/arch/ia64/xen/xenmisc.c                               |   24 +
xen/include/asm-ia64/linux-xen/asm/pal.h                  |    6
5 files changed, 279 insertions(+), 105 deletions(-)

(xen-unstable.hg)
----
8423
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 663c487a5f2c1bee87062dfe522c4e4516a82f8e
# Parent  97d70c793b67fcd93b9f44529c81d8a9e1eaad63
New default config file that works on both tiger4 and HP boxes

----
8413
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID f998426f9069aa9e4e060ceb48a3cd9cfc1231d9
# Parent  dda94d6dce94447d29eaf64c53e6e6315e4ac96e
Under some specific conditions, dom0 will lose guest timer interrupt.
Signed-off-by Anthony Xu <anthony.xu@intel.com>
Signed-off-by Kevin Tian <kevin.tian@intel.com>
The reason is that Xen/ia64 will try to pend guest timer interrupt to dom0
within each machine timer interrupt handler. To avoid duplicated delivery,
domain_itm_last recorded domain_itm of last injection. If two are identical,
it means interrupt injected but guest has not set new itm value. Or else
corresponding pending irr bit will be turned on. That works in most cases.

However currently guest linux may try to set itm multiple times within one
handler before turn on psr.i again. Among first few settings, new guest timer
interrupt may be pended. Then once guest linux enables interrupt, a new
timer interrupt will be injected immediately. However this injection may have
itc still smaller than the domain_itm set at the last round of last handle.
In this case, guest linux will set same domain_itm as last again. However
since domain_itm_last already equals to domain_itm at last read ivr, later
no guest timer interrupt can be injected any more since Xen always thinks
an instance already injected without guest's response.

Attahced patch fixed this issue by adding sanity check upon guest timer
vector when deciding to inject interrupt into dom0. We always compare current
itc with latest domain_itm that guest really wants. So if itc < domain_itm
at this point, we simply clear the pending bit and no injection.

There's also a small fix to vcpu_read_ivr, where domain_itm_last should
be updated before clearing irr bit. Or els a small window still remains
to add a duplicate interrupt.

(xen-ia64-unstable.hg)
----
8437
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID b4925703b56c0944e304f073c3117da4f3d71ccd
# Parent  5222e8d456aea9a7cf432d0d4ad8a3a7ac602c5b
Missing initialization in cache sync code (by Anthony Xu)

----
8435
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 8643b4d778f56c780d2860289d1255c80ab0b32e
# Parent  40648452d45f4b9a26043c0297869c55a6912551
Leave psr.ic on in pal_cache_flush -- fixes Linux bug (by Anthony Xu)

----
8434
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 40648452d45f4b9a26043c0297869c55a6912551
# Parent  f218e6ba2653d3f2d50e11ea4b18c743d6c9127f
Sync caches only on split cache machines (dynamic test instead of compile ifdef)
Signed-off-by: Dan Magenheimer <dan.magenheimer@hp.com>

----
8375
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID 72f51528d55a9b99f8c7737b34bf6f370de0de7f
# Parent  545ba1b126ca2f06861c3982c4da33dd310e7717
More pal_flush_cache calls for split cache machines (by Anthony Xu)

----
8371
# HG changeset patch
# User djm@kirby.fc.hp.com
# Node ID e1ae4b162128f5b16c626d77c25215a37f9da6e7
# Parent  2d5c57be196d7db66157d3f820858c7acf9dbe58
Turn off ia64_pal_cache_flush for domU (temp, until failure understood)

diff -r dda94d6dce94 -r f998426f9069 xen/arch/ia64/xen/vcpu.c
--- a/xen/arch/ia64/xen/vcpu.c	Thu Dec 15 20:51:10 2005
+++ b/xen/arch/ia64/xen/vcpu.c	Thu Dec 15 22:07:47 2005
@@ -676,6 +676,7 @@
 	 * event injection without handle. Later guest may throw out
 	 * the event itself.
 	 */
+check_start:
 	if (event_pending(vcpu) &&
 		!test_bit(vcpu->vcpu_info->arch.evtchn_vector,
 			&PSCBX(vcpu, insvc[0])))
@@ -702,6 +703,15 @@
 //printf("XXXXXXX vcpu_check_pending_interrupts: got bitnum=%p...",bitnum);
 	vector = bitnum+(i*64);
 	mask = 1L << bitnum;
+	/* sanity check for guest timer interrupt */
+	if (vector == (PSCB(vcpu,itv) & 0xff)) {
+		uint64_t now = ia64_get_itc();
+		if (now < PSCBX(vcpu,domain_itm)) {
+			printk("Ooops, pending guest timer before its due\n");
+			PSCBX(vcpu,irr[i]) &= ~mask;
+			goto check_start;
+		}
+	}
 //printf("XXXXXXX vcpu_check_pending_interrupts: got vector=%p...",vector);
 	if (*r >= mask) {
 		// masked by equal inservice
@@ -798,6 +808,13 @@
 		firsttime[vector]=0;
 	}
 #endif
+	/* if delivering a timer interrupt, remember domain_itm, which
+	 * needs to be done before clearing irr
+	 */
+	if (vector == (PSCB(vcpu,itv) & 0xff)) {
+		PSCBX(vcpu,domain_itm_last) = PSCBX(vcpu,domain_itm);
+	}
+
 	i = vector >> 6;
 	mask = 1L << (vector & 0x3f);
 //printf("ZZZZZZ vcpu_get_ivr: setting insvc mask for vector %ld\n",vector);
@@ -805,10 +822,6 @@
 	PSCBX(vcpu,irr[i]) &= ~mask;
 	//PSCB(vcpu,pending_interruption)--;
 	*pval = vector;
-	// if delivering a timer interrupt, remember domain_itm
-	if (vector == (PSCB(vcpu,itv) & 0xff)) {
-		PSCBX(vcpu,domain_itm_last) = PSCBX(vcpu,domain_itm);
-	}
 	return IA64_NO_FAULT;
 }

diff -r 5baa96bedc13 xen/arch/ia64/xen/domain.c
--- a/xen/arch/ia64/xen/domain.c	Thu Dec 15 19:57:27 2005
+++ b/xen/arch/ia64/xen/domain.c	Fri Dec 30 12:32:08 2005
@@ -273,14 +273,6 @@
 	if ( test_bit(_VCPUF_initialised, &v->vcpu_flags) )
             return 0;

-	/* Sync d/i cache conservatively */
-	if (!running_on_sim) {
-	    ret = ia64_pal_cache_flush(4, 0, &progress, NULL);
-	    if (ret != PAL_STATUS_SUCCESS)
-	        panic("PAL CACHE FLUSH failed for domain.\n");
-	    printk("Sync i/d cache for dom0 image SUCC\n");
-	}
-
 	if (c->flags & VGCF_VMX_GUEST) {
 	    if (!vmx_enabled) {
 		printk("No VMX hardware feature for vmx domain.\n");
@@ -297,6 +289,7 @@
 	d->arch.sys_pgnr = c->sys_pgnr;
 	new_thread(v, regs->cr_iip, 0, 0);

+    sync_split_caches();
  	v->vcpu_info->arch.evtchn_vector = c->vcpu.evtchn_vector;
 	if ( c->vcpu.privregs && copy_from_user(v->arch.privregs,
 			   c->vcpu.privregs, sizeof(mapped_regs_t))) {
@@ -896,14 +889,6 @@
 	//if ( initrd_len != 0 )
 	//    memcpy((void *)vinitrd_start, initrd_start, initrd_len);

-	/* Sync d/i cache conservatively */
-	if (!running_on_sim) {
-	    ret = ia64_pal_cache_flush(4, 0, &progress, NULL);
-	    if (ret != PAL_STATUS_SUCCESS)
-	        panic("PAL CACHE FLUSH failed for dom0.\n");
-	    printk("Sync i/d cache for dom0 image SUCC\n");
-	}
-
 	/* Set up start info area. */
 	si = (start_info_t *)alloc_xenheap_page();
 	memset(si, 0, PAGE_SIZE);
@@ -956,6 +941,7 @@

 	new_thread(v, pkern_entry, 0, 0);
 	physdev_init_dom0(d);
+    sync_split_caches();

 	// FIXME: Hack for keyboard input
 #ifdef CLONE_DOMAIN0
@@ -1014,6 +1000,7 @@
 #endif
 	new_thread(v, pkern_entry, 0, 0);
 	printk("new_thread returns\n");
+    sync_split_caches();
 	__set_bit(0x30, VCPU(v, delivery_mask));

 	return 0;
@@ -1027,6 +1014,7 @@
 		v->domain->domain_id);
 	loaddomainelfimage(v->domain,v->domain->arch.image_start);
 	new_thread(v, v->domain->arch.entry, 0, 0);
+    sync_split_caches();
 }
 #endif

diff -r 5baa96bedc13 xen/arch/ia64/xen/xenmisc.c
--- a/xen/arch/ia64/xen/xenmisc.c	Thu Dec 15 19:57:27 2005
+++ b/xen/arch/ia64/xen/xenmisc.c	Fri Dec 30 12:32:08 2005
@@ -368,3 +368,29 @@
 		goto loop;
 	}
 }
+
+
+
+
+/* FIXME: for the forseeable future, all cpu's that enable VTi have split
++ *  caches and all cpu's that have split caches enable VTi.  This may
++ *  eventually be untrue though. */
+#define cpu_has_split_cache    vmx_enabled
+extern unsigned int vmx_enabled;
+
+void sync_split_caches(void)
+{
+   unsigned long ret, progress=0;
+
+   if (cpu_has_split_cache) {
+       /* Sync d/i cache conservatively */
+       ret = ia64_pal_cache_flush(4, 0, &progress, NULL);
+       if ((ret!=PAL_STATUS_SUCCESS)&& (ret!=PAL_STATUS_UNIMPLEMENTED))
+           printk("PAL CACHE FLUSH failed\n");
+       else printk("Sync i/d cache for guest SUCC\n");
+   }
+   else printk("sync_split_caches ignored for CPU with no split cache\n");
+}
+
+
+
diff -r 5baa96bedc13 xen/include/asm-ia64/linux-xen/asm/pal.h
--- a/xen/include/asm-ia64/linux-xen/asm/pal.h	Thu Dec 15 19:57:27 2005
+++ b/xen/include/asm-ia64/linux-xen/asm/pal.h	Fri Dec 30 12:32:08 2005
@@ -925,7 +925,11 @@
 ia64_pal_cache_flush (u64 cache_type, u64 invalidate, u64 *progress, u64 *vector)
 {
 	struct ia64_pal_retval iprv;
-	PAL_CALL_IC_OFF(iprv, PAL_CACHE_FLUSH, cache_type, invalidate, *progress);
+#ifdef XEN /* fix a bug in Linux... PAL has changed */
+    PAL_CALL(iprv, PAL_CACHE_FLUSH, cache_type, invalidate, *progress);
+#else
+    PAL_CALL_IC_OFF(iprv, PAL_CACHE_FLUSH, cache_type, invalidate, *progress);
+#endif
 	if (vector)
 		*vector = iprv.v0;
 	*progress = iprv.v1;
diff -r 97d70c793b67 -r 663c487a5f2c linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64
--- a/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64	Wed Dec 21 14:40:16 2005
+++ b/linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_ia64	Wed Dec 21 14:49:31 2005
@@ -1,16 +1,14 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.12
-# Thu Sep 15 11:04:33 2005
+# Linux kernel version: 2.6.12.6-xen0
+# Wed Dec 21 11:17:02 2005
 #

 #
 # Code maturity level options
 #
 CONFIG_EXPERIMENTAL=y
-# CONFIG_CLEAN_COMPILE is not set
-CONFIG_BROKEN=y
-CONFIG_BROKEN_ON_SMP=y
+CONFIG_CLEAN_COMPILE=y
 CONFIG_LOCK_KERNEL=y
 CONFIG_INIT_ENV_ARG_LIMIT2

@@ -20,19 +18,20 @@
 CONFIG_LOCALVERSION=""
 CONFIG_SWAP=y
 CONFIG_SYSVIPC=y
-# CONFIG_POSIX_MQUEUE is not set
+CONFIG_POSIX_MQUEUE=y
 CONFIG_BSD_PROCESS_ACCT=y
 # CONFIG_BSD_PROCESS_ACCT_V3 is not set
 CONFIG_SYSCTL=y
 # CONFIG_AUDIT is not set
 CONFIG_HOTPLUG=y
 CONFIG_KOBJECT_UEVENT=y
-# CONFIG_IKCONFIG is not set
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
 # CONFIG_CPUSETS is not set
 # CONFIG_EMBEDDED is not set
 CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_ALL is not set
-# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_KALLSYMS_ALL=y
+CONFIG_KALLSYMS_EXTRA_PASS=y
 CONFIG_PRINTK=y
 CONFIG_BUG=y
 CONFIG_BASE_FULL=y
@@ -50,11 +49,13 @@
 # Loadable module support
 #
 CONFIG_MODULES=y
-# CONFIG_MODULE_UNLOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
 CONFIG_OBSOLETE_MODPARM=y
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-# CONFIG_KMOD is not set
+CONFIG_MODVERSIONS=y
+CONFIG_MODULE_SRCVERSION_ALL=y
+CONFIG_KMOD=y
+CONFIG_STOP_MACHINE=y

 #
 # Processor type and features
@@ -68,18 +69,17 @@
 CONFIG_EFI=y
 CONFIG_GENERIC_IOMAP=y
 CONFIG_XEN=y
-CONFIG_XEN_VT=y
 CONFIG_ARCH_XEN=y
 CONFIG_XEN_PRIVILEGED_GUEST=y
 CONFIG_XEN_PHYSDEV_ACCESS=y
 CONFIG_XEN_BLKDEV_GRANT=y
 CONFIG_XEN_BLKDEV_FRONTEND=y
-CONFIG_VGA_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE=n
+CONFIG_XEN_VT=y
+CONFIG_VT=y
 CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
 # CONFIG_IA64_GENERIC is not set
-# CONFIG_IA64_DIG is not set
-CONFIG_IA64_HP_ZX1=y
+CONFIG_IA64_DIG=y
+# CONFIG_IA64_HP_ZX1 is not set
 # CONFIG_IA64_HP_ZX1_SWIOTLB is not set
 # CONFIG_IA64_SGI_SN2 is not set
 # CONFIG_IA64_HP_SIM is not set
@@ -93,12 +93,12 @@
 # CONFIG_NUMA is not set
 CONFIG_VIRTUAL_MEM_MAP=y
 CONFIG_HOLES_IN_ZONE=y
-# CONFIG_IA64_CYCLONE is not set
+CONFIG_IA64_CYCLONE=y
 CONFIG_IOSAPIC=y
 CONFIG_FORCE_MAX_ZONEORDER
 CONFIG_SMP=y
-CONFIG_NR_CPUS
-# CONFIG_HOTPLUG_CPU is not set
+CONFIG_NR_CPUS=4
+CONFIG_HOTPLUG_CPU=y
 # CONFIG_SCHED_SMT is not set
 # CONFIG_PREEMPT is not set
 CONFIG_HAVE_DEC_LOCK=y
@@ -131,6 +131,7 @@
 # CONFIG_ACPI_VIDEO is not set
 CONFIG_ACPI_FAN=y
 CONFIG_ACPI_PROCESSOR=y
+# CONFIG_ACPI_HOTPLUG_CPU is not set
 CONFIG_ACPI_THERMAL=y
 CONFIG_ACPI_BLACKLIST_YEAR=0
 # CONFIG_ACPI_DEBUG is not set
@@ -201,8 +202,8 @@
 # CONFIG_BLK_DEV_UMEM is not set
 # CONFIG_BLK_DEV_COW_COMMON is not set
 CONFIG_BLK_DEV_LOOP=y
-# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
+CONFIG_BLK_DEV_CRYPTOLOOP=y
+CONFIG_BLK_DEV_NBD=y
 # CONFIG_BLK_DEV_SX8 is not set
 # CONFIG_BLK_DEV_UB is not set
 CONFIG_BLK_DEV_RAM=y
@@ -224,7 +225,59 @@
 #
 # ATA/ATAPI/MFM/RLL support
 #
-# CONFIG_IDE is not set
+CONFIG_IDE=y
+CONFIG_BLK_DEV_IDE=y
+
+#
+# Please see Documentation/ide.txt for help/info on IDE drives
+#
+# CONFIG_BLK_DEV_IDE_SATA is not set
+CONFIG_BLK_DEV_IDEDISK=y
+# CONFIG_IDEDISK_MULTI_MODE is not set
+CONFIG_BLK_DEV_IDECD=y
+# CONFIG_BLK_DEV_IDETAPE is not set
+CONFIG_BLK_DEV_IDEFLOPPY=y
+CONFIG_BLK_DEV_IDESCSI=y
+# CONFIG_IDE_TASK_IOCTL is not set
+
+#
+# IDE chipset support/bugfixes
+#
+CONFIG_IDE_GENERIC=y
+CONFIG_BLK_DEV_IDEPCI=y
+# CONFIG_IDEPCI_SHARE_IRQ is not set
+# CONFIG_BLK_DEV_OFFBOARD is not set
+CONFIG_BLK_DEV_GENERIC=y
+# CONFIG_BLK_DEV_OPTI621 is not set
+CONFIG_BLK_DEV_IDEDMA_PCI=y
+# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
+CONFIG_IDEDMA_PCI_AUTO=y
+# CONFIG_IDEDMA_ONLYDISK is not set
+# CONFIG_BLK_DEV_AEC62XX is not set
+# CONFIG_BLK_DEV_ALI15X3 is not set
+# CONFIG_BLK_DEV_AMD74XX is not set
+CONFIG_BLK_DEV_CMD64X=y
+# CONFIG_BLK_DEV_TRIFLEX is not set
+# CONFIG_BLK_DEV_CY82C693 is not set
+# CONFIG_BLK_DEV_CS5520 is not set
+# CONFIG_BLK_DEV_CS5530 is not set
+# CONFIG_BLK_DEV_HPT34X is not set
+# CONFIG_BLK_DEV_HPT366 is not set
+# CONFIG_BLK_DEV_SC1200 is not set
+CONFIG_BLK_DEV_PIIX=y
+# CONFIG_BLK_DEV_NS87415 is not set
+# CONFIG_BLK_DEV_PDC202XX_OLD is not set
+# CONFIG_BLK_DEV_PDC202XX_NEW is not set
+# CONFIG_BLK_DEV_SVWKS is not set
+# CONFIG_BLK_DEV_SIIMAGE is not set
+# CONFIG_BLK_DEV_SLC90E66 is not set
+# CONFIG_BLK_DEV_TRM290 is not set
+# CONFIG_BLK_DEV_VIA82CXXX is not set
+# CONFIG_IDE_ARM is not set
+CONFIG_BLK_DEV_IDEDMA=y
+# CONFIG_IDEDMA_IVB is not set
+CONFIG_IDEDMA_AUTO=y
+# CONFIG_BLK_DEV_HD is not set

 #
 # SCSI device support
@@ -253,7 +306,7 @@
 # SCSI Transport Attributes
 #
 CONFIG_SCSI_SPI_ATTRS=y
-# CONFIG_SCSI_FC_ATTRS is not set
+CONFIG_SCSI_FC_ATTRS=y
 # CONFIG_SCSI_ISCSI_ATTRS is not set

 #
@@ -266,13 +319,10 @@
 # CONFIG_SCSI_AIC7XXX is not set
 # CONFIG_SCSI_AIC7XXX_OLD is not set
 # CONFIG_SCSI_AIC79XX is not set
-# CONFIG_SCSI_ADVANSYS is not set
 # CONFIG_MEGARAID_NEWGEN is not set
 # CONFIG_MEGARAID_LEGACY is not set
 # CONFIG_SCSI_SATA is not set
-# CONFIG_SCSI_CPQFCTS is not set
 # CONFIG_SCSI_DMX3191D is not set
-# CONFIG_SCSI_EATA_PIO is not set
 # CONFIG_SCSI_FUTURE_DOMAIN is not set
 # CONFIG_SCSI_IPS is not set
 # CONFIG_SCSI_INITIO is not set
@@ -283,17 +333,15 @@
 CONFIG_SCSI_SYM53C8XX_MAX_TAGSd
 # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set
 # CONFIG_SCSI_IPR is not set
-# CONFIG_SCSI_PCI2000 is not set
-# CONFIG_SCSI_PCI2220I is not set
-# CONFIG_SCSI_QLOGIC_ISP is not set
-# CONFIG_SCSI_QLOGIC_FC is not set
+CONFIG_SCSI_QLOGIC_FC=y
+# CONFIG_SCSI_QLOGIC_FC_FIRMWARE is not set
 CONFIG_SCSI_QLOGIC_1280=y
 # CONFIG_SCSI_QLOGIC_1280_1040 is not set
 CONFIG_SCSI_QLA2XXX=y
-# CONFIG_SCSI_QLA21XX is not set
-# CONFIG_SCSI_QLA22XX is not set
-# CONFIG_SCSI_QLA2300 is not set
-# CONFIG_SCSI_QLA2322 is not set
+CONFIG_SCSI_QLA21XX=y
+CONFIG_SCSI_QLA22XX=y
+CONFIG_SCSI_QLA2300=y
+CONFIG_SCSI_QLA2322=y
 # CONFIG_SCSI_QLA6312 is not set
 # CONFIG_SCSI_LPFC is not set
 # CONFIG_SCSI_DC395x is not set
@@ -303,7 +351,9 @@
 #
 # Multi-device support (RAID and LVM)
 #
-# CONFIG_MD is not set
+CONFIG_MD=y
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_BLK_DEV_DM is not set

 #
 # Fusion MPT device support
@@ -341,13 +391,13 @@
 # CONFIG_NET_IPIP is not set
 # CONFIG_NET_IPGRE is not set
 # CONFIG_IP_MROUTE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
+CONFIG_ARPD=y
+CONFIG_SYN_COOKIES=y
 # CONFIG_INET_AH is not set
 # CONFIG_INET_ESP is not set
 # CONFIG_INET_IPCOMP is not set
 # CONFIG_INET_TUNNEL is not set
-# CONFIG_IP_TCPDIAG is not set
+CONFIG_IP_TCPDIAG=y
 # CONFIG_IP_TCPDIAG_IPV6 is not set

 #
@@ -357,6 +407,7 @@
 # CONFIG_IPV6 is not set
 CONFIG_NETFILTER=y
 # CONFIG_NETFILTER_DEBUG is not set
+CONFIG_BRIDGE_NETFILTER=y

 #
 # IP: Netfilter Configuration
@@ -370,11 +421,16 @@
 # CONFIG_IP_NF_ARP_MANGLE is not set

 #
+# Bridge: Netfilter Configuration
+#
+# CONFIG_BRIDGE_NF_EBTABLES is not set
+
+#
 # SCTP Configuration (EXPERIMENTAL)
 #
 # CONFIG_IP_SCTP is not set
 # CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
+CONFIG_BRIDGE=y
 # CONFIG_VLAN_8021Q is not set
 # CONFIG_DECNET is not set
 # CONFIG_LLC2 is not set
@@ -396,8 +452,10 @@
 # Network testing
 #
 # CONFIG_NET_PKTGEN is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
+CONFIG_NETPOLL=y
+# CONFIG_NETPOLL_RX is not set
+# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NET_POLL_CONTROLLER=y
 # CONFIG_HAMRADIO is not set
 # CONFIG_IRDA is not set
 # CONFIG_BT is not set
@@ -405,12 +463,20 @@
 CONFIG_DUMMY=y
 # CONFIG_BONDING is not set
 # CONFIG_EQUALIZER is not set
-# CONFIG_TUN is not set
+CONFIG_TUN=y

 #
 # ARCnet devices
 #
-# CONFIG_ARCNET is not set
+CONFIG_ARCNET=y
+# CONFIG_ARCNET_1201 is not set
+# CONFIG_ARCNET_1051 is not set
+# CONFIG_ARCNET_RAW is not set
+# CONFIG_ARCNET_CAP is not set
+# CONFIG_ARCNET_COM90xx is not set
+# CONFIG_ARCNET_COM90xxIO is not set
+# CONFIG_ARCNET_RIM_I is not set
+# CONFIG_ARCNET_COM20020 is not set

 #
 # Ethernet (10 or 100Mbit)
@@ -442,7 +508,7 @@
 # CONFIG_B44 is not set
 # CONFIG_FORCEDETH is not set
 # CONFIG_DGRS is not set
-# CONFIG_EEPRO100 is not set
+CONFIG_EEPRO100=y
 CONFIG_E100=y
 # CONFIG_FEALNX is not set
 # CONFIG_NATSEMI is not set
@@ -496,12 +562,22 @@
 # CONFIG_SLIP is not set
 # CONFIG_NET_FC is not set
 # CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
+CONFIG_NETCONSOLE=y

 #
 # ISDN subsystem
 #
-# CONFIG_ISDN is not set
+CONFIG_ISDN=m
+
+#
+# Old ISDN4Linux
+#
+# CONFIG_ISDN_I4L is not set
+
+#
+# CAPI subsystem
+#
+# CONFIG_ISDN_CAPI is not set

 #
 # Telephony Support
@@ -528,8 +604,16 @@
 #
 # Input Device Drivers
 #
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=y
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=y
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_VSXXXAA is not set
 # CONFIG_INPUT_JOYSTICK is not set
 # CONFIG_INPUT_TOUCHSCREEN is not set
 # CONFIG_INPUT_MISC is not set
@@ -538,17 +622,34 @@
 # Hardware I/O ports
 #
 CONFIG_SERIO=y
-# CONFIG_SERIO_I8042 is not set
+CONFIG_SERIO_I8042=y
 # CONFIG_SERIO_SERPORT is not set
 # CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
 # CONFIG_SERIO_RAW is not set
-# CONFIG_GAMEPORT is not set
+CONFIG_GAMEPORT=y
+# CONFIG_GAMEPORT_NS558 is not set
+# CONFIG_GAMEPORT_L4 is not set
+# CONFIG_GAMEPORT_EMU10K1 is not set
+# CONFIG_GAMEPORT_VORTEX is not set
+# CONFIG_GAMEPORT_FM801 is not set
+# CONFIG_GAMEPORT_CS461X is not set

 #
 # Character devices
 #
-# CONFIG_VT is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
+CONFIG_VT_CONSOLE=y
+CONFIG_HW_CONSOLE=y
+CONFIG_SERIAL_NONSTANDARD=y
+# CONFIG_ROCKETPORT is not set
+# CONFIG_CYCLADES is not set
+# CONFIG_MOXA_SMARTIO is not set
+# CONFIG_ISI is not set
+# CONFIG_SYNCLINKMP is not set
+# CONFIG_N_HDLC is not set
+# CONFIG_SPECIALIX is not set
+# CONFIG_SX is not set
+# CONFIG_STALDRV is not set

 #
 # Serial drivers
@@ -556,7 +657,7 @@
 CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_ACPI=y
-CONFIG_SERIAL_8250_NR_UARTS=8
+CONFIG_SERIAL_8250_NR_UARTS=6
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_SHARE_IRQ=y
 # CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -592,12 +693,11 @@
 # Ftape, the floppy tape device driver
 #
 CONFIG_AGP=y
-CONFIG_AGP_HP_ZX1=y
+CONFIG_AGP_I460=y
 CONFIG_DRM=y
 # CONFIG_DRM_TDFX is not set
-# CONFIG_DRM_GAMMA is not set
 # CONFIG_DRM_R128 is not set
-CONFIG_DRM_RADEON=y
+# CONFIG_DRM_RADEON is not set
 # CONFIG_DRM_MGA is not set
 # CONFIG_DRM_SIS is not set
 # CONFIG_RAW_DRIVER is not set
@@ -724,7 +824,6 @@
 # CONFIG_TUNER_3036 is not set
 # CONFIG_VIDEO_STRADIS is not set
 # CONFIG_VIDEO_ZORAN is not set
-# CONFIG_VIDEO_ZR36120 is not set
 # CONFIG_VIDEO_SAA7134 is not set
 # CONFIG_VIDEO_MXB is not set
 # CONFIG_VIDEO_DPC is not set
@@ -777,9 +876,15 @@
 # CONFIG_FB_3DFX is not set
 # CONFIG_FB_VOODOO1 is not set
 # CONFIG_FB_TRIDENT is not set
-# CONFIG_FB_PM3 is not set
 # CONFIG_FB_S1D13XXX is not set
 # CONFIG_FB_VIRTUAL is not set
+
+#
+# Console display driver support
+#
+CONFIG_VGA_CONSOLE=y
+CONFIG_DUMMY_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE is not set

 #
 # Logo configuration
@@ -804,7 +909,7 @@
 CONFIG_SND_HWDEP=y
 CONFIG_SND_RAWMIDI=y
 CONFIG_SND_SEQUENCER=y
-# CONFIG_SND_SEQ_DUMMY is not set
+CONFIG_SND_SEQ_DUMMY=y
 CONFIG_SND_OSSEMUL=y
 CONFIG_SND_MIXER_OSS=y
 CONFIG_SND_PCM_OSS=y
@@ -817,18 +922,18 @@
 #
 CONFIG_SND_MPU401_UART=y
 CONFIG_SND_OPL3_LIB=y
-# CONFIG_SND_DUMMY is not set
-# CONFIG_SND_VIRMIDI is not set
-# CONFIG_SND_MTPAV is not set
-# CONFIG_SND_SERIAL_U16550 is not set
-# CONFIG_SND_MPU401 is not set
+CONFIG_SND_DUMMY=y
+CONFIG_SND_VIRMIDI=y
+CONFIG_SND_MTPAV=y
+CONFIG_SND_SERIAL_U16550=y
+CONFIG_SND_MPU401=y

 #
 # PCI devices
 #
 CONFIG_SND_AC97_CODEC=y
 # CONFIG_SND_ALI5451 is not set
-# CONFIG_SND_ATIIXP is not set
+CONFIG_SND_ATIIXP=y
 # CONFIG_SND_ATIIXP_MODEM is not set
 # CONFIG_SND_AU8810 is not set
 # CONFIG_SND_AU8820 is not set
@@ -876,7 +981,29 @@
 #
 # Open Sound System
 #
-# CONFIG_SOUND_PRIME is not set
+CONFIG_SOUND_PRIME=y
+# CONFIG_SOUND_BT878 is not set
+# CONFIG_SOUND_CMPCI is not set
+# CONFIG_SOUND_EMU10K1 is not set
+# CONFIG_SOUND_FUSION is not set
+# CONFIG_SOUND_CS4281 is not set
+# CONFIG_SOUND_ES1370 is not set
+# CONFIG_SOUND_ES1371 is not set
+# CONFIG_SOUND_ESSSOLO1 is not set
+# CONFIG_SOUND_MAESTRO is not set
+# CONFIG_SOUND_MAESTRO3 is not set
+# CONFIG_SOUND_ICH is not set
+# CONFIG_SOUND_SONICVIBES is not set
+# CONFIG_SOUND_TRIDENT is not set
+# CONFIG_SOUND_MSNDCLAS is not set
+# CONFIG_SOUND_MSNDPIN is not set
+# CONFIG_SOUND_VIA82CXXX is not set
+# CONFIG_SOUND_OSS is not set
+# CONFIG_SOUND_TVMIXER is not set
+# CONFIG_SOUND_ALI5455 is not set
+# CONFIG_SOUND_FORTE is not set
+# CONFIG_SOUND_RME96XX is not set
+# CONFIG_SOUND_AD1980 is not set

 #
 # USB support
@@ -889,7 +1016,7 @@
 #
 # Miscellaneous USB options
 #
-# CONFIG_USB_DEVICEFS is not set
+CONFIG_USB_DEVICEFS=y
 CONFIG_USB_BANDWIDTH=y
 # CONFIG_USB_DYNAMIC_MINORS is not set
 # CONFIG_USB_SUSPEND is not set
@@ -910,7 +1037,7 @@
 #
 # USB Device Class drivers
 #
-# CONFIG_USB_AUDIO is not set
+CONFIG_USB_AUDIO=y
 # CONFIG_USB_BLUETOOTH_TTY is not set
 # CONFIG_USB_MIDI is not set
 # CONFIG_USB_ACM is not set
@@ -923,6 +1050,7 @@
 # CONFIG_USB_STORAGE_DEBUG is not set
 # CONFIG_USB_STORAGE_DATAFAB is not set
 # CONFIG_USB_STORAGE_FREECOM is not set
+# CONFIG_USB_STORAGE_ISD200 is not set
 # CONFIG_USB_STORAGE_DPCM is not set
 # CONFIG_USB_STORAGE_USBAT is not set
 # CONFIG_USB_STORAGE_SDDR09 is not set
@@ -999,6 +1127,7 @@
 # CONFIG_USB_PHIDGETSERVO is not set
 # CONFIG_USB_IDMOUSE is not set
 # CONFIG_USB_SISUSBVGA is not set
+# CONFIG_USB_TEST is not set

 #
 # USB ATM/DSL drivers
@@ -1024,28 +1153,39 @@
 #
 CONFIG_EXT2_FS=y
 CONFIG_EXT2_FS_XATTR=y
-# CONFIG_EXT2_FS_POSIX_ACL is not set
-# CONFIG_EXT2_FS_SECURITY is not set
+CONFIG_EXT2_FS_POSIX_ACL=y
+CONFIG_EXT2_FS_SECURITY=y
 CONFIG_EXT3_FS=y
 CONFIG_EXT3_FS_XATTR=y
-# CONFIG_EXT3_FS_POSIX_ACL is not set
-# CONFIG_EXT3_FS_SECURITY is not set
+CONFIG_EXT3_FS_POSIX_ACL=y
+CONFIG_EXT3_FS_SECURITY=y
 CONFIG_JBD=y
 # CONFIG_JBD_DEBUG is not set
 CONFIG_FS_MBCACHE=y
-# CONFIG_REISERFS_FS is not set
+CONFIG_REISERFS_FS=y
+# CONFIG_REISERFS_CHECK is not set
+# CONFIG_REISERFS_PROC_INFO is not set
+CONFIG_REISERFS_FS_XATTR=y
+CONFIG_REISERFS_FS_POSIX_ACL=y
+CONFIG_REISERFS_FS_SECURITY=y
 # CONFIG_JFS_FS is not set
+CONFIG_FS_POSIX_ACL=y

 #
 # XFS support
 #
-# CONFIG_XFS_FS is not set
+CONFIG_XFS_FS=y
+CONFIG_XFS_EXPORT=y
+# CONFIG_XFS_RT is not set
+# CONFIG_XFS_QUOTA is not set
+# CONFIG_XFS_SECURITY is not set
+# CONFIG_XFS_POSIX_ACL is not set
 # CONFIG_MINIX_FS is not set
 # CONFIG_ROMFS_FS is not set
 # CONFIG_QUOTA is not set
 CONFIG_DNOTIFY=y
 CONFIG_AUTOFS_FS=y
-# CONFIG_AUTOFS4_FS is not set
+CONFIG_AUTOFS4_FS=y

 #
 # CD-ROM/DVD Filesystems
@@ -1104,11 +1244,11 @@
 CONFIG_NFS_FS=y
 CONFIG_NFS_V3=y
 CONFIG_NFS_V4=y
-# CONFIG_NFS_DIRECTIO is not set
+CONFIG_NFS_DIRECTIO=y
 CONFIG_NFSD=y
 CONFIG_NFSD_V3=y
-# CONFIG_NFSD_V4 is not set
-# CONFIG_NFSD_TCP is not set
+CONFIG_NFSD_V4=y
+CONFIG_NFSD_TCP=y
 CONFIG_LOCKD=y
 CONFIG_LOCKD_V4=y
 CONFIG_EXPORTFS=y
@@ -1116,8 +1256,13 @@
 CONFIG_SUNRPC_GSS=y
 CONFIG_RPCSEC_GSS_KRB5=y
 # CONFIG_RPCSEC_GSS_SPKM3 is not set
-# CONFIG_SMB_FS is not set
-# CONFIG_CIFS is not set
+CONFIG_SMB_FS=y
+CONFIG_SMB_NLS_DEFAULT=y
+CONFIG_SMB_NLS_REMOTE="cp437"
+CONFIG_CIFS=y
+# CONFIG_CIFS_STATS is not set
+# CONFIG_CIFS_XATTR is not set
+# CONFIG_CIFS_EXPERIMENTAL is not set
 # CONFIG_NCP_FS is not set
 # CONFIG_CODA_FS is not set
 # CONFIG_AFS_FS is not set
@@ -1137,7 +1282,7 @@
 # CONFIG_SOLARIS_X86_PARTITION is not set
 # CONFIG_UNIXWARE_DISKLABEL is not set
 # CONFIG_LDM_PARTITION is not set
-# CONFIG_SGI_PARTITION is not set
+CONFIG_SGI_PARTITION=y
 # CONFIG_ULTRIX_PARTITION is not set
 # CONFIG_SUN_PARTITION is not set
 CONFIG_EFI_PARTITION=y
@@ -1206,7 +1351,7 @@
 # CONFIG_PRINTK_TIME is not set
 CONFIG_DEBUG_KERNEL=y
 CONFIG_MAGIC_SYSRQ=y
-CONFIG_LOG_BUF_SHIFT
+CONFIG_LOG_BUF_SHIFT 
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_DEBUG_SLAB is not set
 # CONFIG_DEBUG_SPINLOCK is not set


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic