Hello developers,
I use xen-testing tree. While compiling custom xen kernels
I patched linux trees with -as6 fixes to get 2.6.10 into shape,
patches from http://www.acm.cs.rpi.edu/~dilinger/patches/2.6.10/as6/.
I noticed that some fixes are for arch/i386, and since xen is
different arch I checked if those fixes apply to arch/xen.
Indeed there are 3 patches that apply, one of them looking
like real bug fix (pci-dma.c). Maybe someone could check if
they should be included in next xen release.
Those are patches from -ac6 patchset that apply to arch/xen:
diff -urN linux-2.6.10.orig/arch/i386/kernel/pci-dma.c
linux-2.6.10/arch/i386/kernel/pci-dma.c
--- linux-2.6.10.orig/arch/i386/kernel/pci-dma.c 2004-12-24
16:34:26.000000000 -0500
+++ linux-2.6.10/arch/i386/kernel/pci-dma.c 2005-02-26 02:54:30.000000000
-0500
@@ -89,11 +89,11 @@
if (!mem_base)
goto out;
- dev->dma_mem = kmalloc(GFP_KERNEL, sizeof(struct dma_coherent_mem));
+ dev->dma_mem = kmalloc(sizeof(struct dma_coherent_mem), GFP_KERNEL);
if (!dev->dma_mem)
goto out;
memset(dev->dma_mem, 0, sizeof(struct dma_coherent_mem));
- dev->dma_mem->bitmap = kmalloc(GFP_KERNEL, bitmap_size);
+ dev->dma_mem->bitmap = kmalloc(bitmap_size, GFP_KERNEL);
if (!dev->dma_mem->bitmap)
goto free1_out;
memset(dev->dma_mem->bitmap, 0, bitmap_size);
diff -urN linux-2.6.10.orig/arch/i386/kernel/time.c
linux-2.6.10/arch/i386/kernel/time.c
--- linux-2.6.10.orig/arch/i386/kernel/time.c 2004-12-24 16:34:45.000000000
-0500
+++ linux-2.6.10/arch/i386/kernel/time.c 2005-02-26 02:54:30.000000000
-0500
@@ -343,12 +343,13 @@
hpet_reenable();
#endif
sec = get_cmos_time() + clock_cmos_diff;
- sleep_length = get_cmos_time() - sleep_start;
+ sleep_length = (get_cmos_time() - sleep_start) * HZ;
write_seqlock_irqsave(&xtime_lock, flags);
xtime.tv_sec = sec;
xtime.tv_nsec = 0;
write_sequnlock_irqrestore(&xtime_lock, flags);
- jiffies += sleep_length * HZ;
+ jiffies += sleep_length;
+ wall_jiffies += sleep_length;
return 0;
}
diff -urN linux-2.6.10.orig/arch/i386/kernel/cpu/common.c
linux-2.6.10/arch/i386/kernel/cpu/common.c
--- linux-2.6.10.orig/arch/i386/kernel/cpu/common.c 2004-12-24
16:33:50.000000000 -0500
+++ linux-2.6.10/arch/i386/kernel/cpu/common.c 2005-02-26 02:54:29.000000000
-0500
@@ -334,21 +334,19 @@
generic_identify(c);
- printk(KERN_DEBUG "CPU: After generic identify, caps: %08lx %08lx %08lx
%08lx\n",
- c->x86_capability[0],
- c->x86_capability[1],
- c->x86_capability[2],
- c->x86_capability[3]);
+ printk(KERN_DEBUG "CPU: After generic identify, caps:");
+ for (i = 0; i < NCAPINTS; i++)
+ printk(" %08lx", c->x86_capability[i]);
+ printk("\n");
if (this_cpu->c_identify) {
this_cpu->c_identify(c);
- printk(KERN_DEBUG "CPU: After vendor identify, caps: %08lx %08lx %08lx
%08lx\n",
- c->x86_capability[0],
- c->x86_capability[1],
- c->x86_capability[2],
- c->x86_capability[3]);
-}
+ printk(KERN_DEBUG "CPU: After vendor identify, caps:");
+ for (i = 0; i < NCAPINTS; i++)
+ printk(" %08lx", c->x86_capability[i]);
+ printk("\n");
+ }
/*
* Vendor-specific initialization. In this section we
@@ -398,11 +396,10 @@
/* Now the feature flags better reflect actual CPU features! */
- printk(KERN_DEBUG "CPU: After all inits, caps: %08lx %08lx %08lx
%08lx\n",
- c->x86_capability[0],
- c->x86_capability[1],
- c->x86_capability[2],
- c->x86_capability[3]);
+ printk(KERN_DEBUG "CPU: After all inits, caps:");
+ for (i = 0; i < NCAPINTS; i++)
+ printk(" %08lx", c->x86_capability[i]);
+ printk("\n");
/*
* On SMP, boot_cpu_data holds the common feature set between
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel
|