rpms/kernel/devel linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch, NONE, 1.1.2.2 patch-2.6.31-rc3.bz2.sign, NONE, 1.1.2.2 .cvsignore, 1.1014.2.20, 1.1014.2.21 config-generic, 1.238.6.29, 1.238.6.30 drm-nouveau.patch, 1.8.6.12, 1.8.6.13 kernel.spec, 1.1294.2.40, 1.1294.2.41 linux-2.6-compile-fixes.patch, 1.193.6.1, 1.193.6.2 sources, 1.976.2.21, 1.976.2.22 upstream, 1.888.2.20, 1.888.2.21 xen.pvops.patch, 1.1.2.27, 1.1.2.28 linux-2.6-dmadebug-spinlock.patch, 1.1.2.2, NONE patch-2.6.31-rc2-git4.bz2.sign, 1.1.2.2, NONE patch-2.6.31-rc2.bz2.sign, 1.1.2.2, NONE
myoung
myoung at fedoraproject.org
Wed Jul 15 20:58:51 UTC 2009
- Previous message (by thread): rpms/trac-mercurial-plugin/F-11 import.log, NONE, 1.1 sources, 1.3, 1.4 trac-mercurial-plugin.spec, 1.6, 1.7
- Next message (by thread): rpms/trac-mercurial-plugin/F-10 .cvsignore, 1.2, 1.3 sources, 1.2, 1.3 trac-mercurial-plugin.spec, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: myoung
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv25691
Modified Files:
Tag: private-myoung-dom0-branch
.cvsignore config-generic drm-nouveau.patch kernel.spec
linux-2.6-compile-fixes.patch sources upstream xen.pvops.patch
Added Files:
Tag: private-myoung-dom0-branch
linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch
patch-2.6.31-rc3.bz2.sign
Removed Files:
Tag: private-myoung-dom0-branch
linux-2.6-dmadebug-spinlock.patch
patch-2.6.31-rc2-git4.bz2.sign patch-2.6.31-rc2.bz2.sign
Log Message:
update pvops
linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch:
--- NEW FILE linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch ---
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index 5cc77fb..8d3b3d1 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -1288,6 +1288,14 @@ static int cpufreq_suspend(struct sys_device *sysdev, pm_message_t pmsg)
dprintk("suspending cpu %u\n", cpu);
+ /*
+ * This whole bogosity is here because Powerbooks are made of fail.
+ * No sane platform should need any of the code below to be run.
+ * (it's entirely the wrong thing to do, as driver->get may
+ * reenable interrupts on some architectures).
+ */
+
+#ifdef __powerpc__
if (!cpu_online(cpu))
return 0;
@@ -1346,6 +1354,7 @@ static int cpufreq_suspend(struct sys_device *sysdev, pm_message_t pmsg)
out:
cpufreq_cpu_put(cpu_policy);
+#endif /* __powerpc__ */
return ret;
}
@@ -1365,6 +1374,11 @@ static int cpufreq_resume(struct sys_device *sysdev)
dprintk("resuming cpu %u\n", cpu);
+ /* As with the ->suspend method, all the code below is
+ * only necessary because Powerbooks suck.
+ * See commit 42d4dc3f4e1e for jokes. */
+#ifdef __powerpc__
+
if (!cpu_online(cpu))
return 0;
@@ -1428,6 +1442,7 @@ out:
schedule_work(&cpu_policy->update);
fail:
cpufreq_cpu_put(cpu_policy);
+#endif /* __powerpc__ */
return ret;
}
--- NEW FILE patch-2.6.31-rc3.bz2.sign ---
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: See http://www.kernel.org/signature.html for info
iD8DBQBKW+DRyGugalF9Dw4RAsIPAJ9AM7RKZ20g4JmawZnqs+g7muodKgCghTQa
1R44RsEbaiDeFRCLS2WTn1A=
=ubmU
-----END PGP SIGNATURE-----
Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/.cvsignore,v
retrieving revision 1.1014.2.20
retrieving revision 1.1014.2.21
diff -u -p -r1.1014.2.20 -r1.1014.2.21
--- .cvsignore 10 Jul 2009 19:04:29 -0000 1.1014.2.20
+++ .cvsignore 15 Jul 2009 20:58:03 -0000 1.1014.2.21
@@ -5,5 +5,4 @@ kernel-2.6.*.config
temp-*
kernel-2.6.30
linux-2.6.30.tar.bz2
-patch-2.6.31-rc2.bz2
-patch-2.6.31-rc2-git4.bz2
+patch-2.6.31-rc3.bz2
Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/config-generic,v
retrieving revision 1.238.6.29
retrieving revision 1.238.6.30
diff -u -p -r1.238.6.29 -r1.238.6.30
--- config-generic 10 Jul 2009 19:04:29 -0000 1.238.6.29
+++ config-generic 15 Jul 2009 20:58:03 -0000 1.238.6.30
@@ -356,6 +356,7 @@ CONFIG_BLK_DEV_UMEM=m
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_OSD=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=16384
@@ -3966,6 +3967,7 @@ CONFIG_USB_ATMEL=m
# CONFIG_LINE6_USB is not set
# CONFIG_USB_SERIAL_QUATECH_ESU100 is not set
# CONFIG_RT3070 is not set
+ CONFIG_RTL8192SU is not set
#
# Android
drm-nouveau.patch:
View full diff with command:
/usr/bin/cvs -f diff -kk -u -p -N -r 1.8.6.12 -r 1.8.6.13 drm-nouveau.patch
Index: drm-nouveau.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/drm-nouveau.patch,v
retrieving revision 1.8.6.12
retrieving revision 1.8.6.13
diff -u -p -r1.8.6.12 -r1.8.6.13
--- drm-nouveau.patch 30 Jun 2009 18:06:00 -0000 1.8.6.12
+++ drm-nouveau.patch 15 Jul 2009 20:58:03 -0000 1.8.6.13
@@ -94,7 +94,7 @@ index 6246e3f..436e2fe 100644
if (map->type == _DRM_REGISTERS)
diff --git a/drivers/gpu/drm/nouveau/Makefile b/drivers/gpu/drm/nouveau/Makefile
new file mode 100644
-index 0000000..96688cf
+index 0000000..f5d93b5
--- /dev/null
+++ b/drivers/gpu/drm/nouveau/Makefile
@@ -0,0 +1,26 @@
@@ -105,7 +105,7 @@ index 0000000..96688cf
+ccflags-y := -Iinclude/drm
+nouveau-y := nouveau_drv.o nouveau_state.o nouveau_fifo.o nouveau_mem.o \
+ nouveau_object.o nouveau_irq.o nouveau_notifier.o \
-+ nouveau_swmthd.o nouveau_sgdma.o nouveau_dma.o \
++ nouveau_sgdma.o nouveau_dma.o \
+ nouveau_bo.o nouveau_fence.o nouveau_gem.o nouveau_ttm.o \
+ nouveau_hw.o nouveau_calc.o nouveau_bios.o nouveau_i2c.o \
+ nouveau_display.o nouveau_fbcon.o nouveau_backlight.o \
@@ -286,10 +286,10 @@ index 0000000..395639b
+}
diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
new file mode 100644
-index 0000000..f6628db
+index 0000000..f719eb4
--- /dev/null
+++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
-@@ -0,0 +1,4852 @@
+@@ -0,0 +1,4861 @@
+/*
+ * Copyright 2005-2006 Erik Waling
+ * Copyright 2006 Stephane Marchesin
@@ -341,10 +341,10 @@ index 0000000..f6628db
+/* this will need remembering across a suspend */
+static uint32_t saved_nv_pfb_cfg0;
+
-+typedef struct {
++struct init_exec {
+ bool execute;
+ bool repeat;
-+} init_exec_t;
++};
+
+static bool nv_cksum(const uint8_t *data, unsigned int length)
+{
@@ -531,22 +531,22 @@ index 0000000..f6628db
+ return false;
+}
+
-+typedef struct {
++struct init_tbl_entry {
+ char* name;
+ uint8_t id;
+ int length;
+ int length_offset;
+ int length_multiplier;
-+ bool (*handler)(struct drm_device *dev, struct nvbios *, uint16_t, init_exec_t *);
-+} init_tbl_entry_t;
++ bool (*handler)(struct drm_device *dev, struct nvbios *, uint16_t, struct init_exec *);
++};
+
-+typedef struct {
++struct bit_entry {
+ uint8_t id[2];
+ uint16_t length;
+ uint16_t offset;
-+} bit_entry_t;
++};
+
-+static int parse_init_table(struct drm_device *dev, struct nvbios *bios, unsigned int offset, init_exec_t *iexec);
++static int parse_init_table(struct drm_device *dev, struct nvbios *bios, unsigned int offset, struct init_exec *iexec);
+
+#define MACRO_INDEX_SIZE 2
+#define MACRO_SIZE 8
@@ -581,68 +581,22 @@ index 0000000..f6628db
+ struct drm_nouveau_private *dev_priv = dev->dev_private;
+
+ /* C51 has misaligned regs on purpose. Marvellous */
-+ if (reg & 0x2 || (reg & 0x1 && dev_priv->VBIOS.pub.chip_version != 0x51)) {
-+ NV_ERROR(dev, "========== misaligned reg 0x%08X ==========\n",
-+ reg);
-+ return 0;
-+ }
-+ /* warn on C51 regs that haven't been verified accessible in mmiotracing */
++ if (reg & 0x2 ||
++ (reg & 0x1 && dev_priv->VBIOS.pub.chip_version != 0x51))
++ NV_ERROR(dev, "======= misaligned reg 0x%08X =======\n", reg);
++
++ /* warn on C51 regs that haven't been verified accessible in tracing */
+ if (reg & 0x1 && dev_priv->VBIOS.pub.chip_version == 0x51 &&
+ reg != 0x130d && reg != 0x1311 && reg != 0x60081d)
+ NV_WARN(dev, "=== C51 misaligned reg 0x%08X not verified ===\n",
+ reg);
+
-+ #define WITHIN(x,y,z) ((x>=y)&&(x<=y+z))
-+ if (WITHIN(reg,NV_PMC_OFFSET,NV_PMC_SIZE))
-+ return 1;
-+ if (WITHIN(reg,NV_PBUS_OFFSET,NV_PBUS_SIZE))
-+ return 1;
-+ if (WITHIN(reg,NV_PFIFO_OFFSET,NV_PFIFO_SIZE))
-+ return 1;
-+ /* maybe a little large, but it will do for the moment. */
-+ if (nv_arch(dev) >= NV_50 && WITHIN(reg, 0x1000, 0xEFFF))
-+ return 1;
-+ if (dev_priv->VBIOS.pub.chip_version >= 0x30 && WITHIN(reg,0x4000,0x600))
-+ return 1;
-+ if (dev_priv->VBIOS.pub.chip_version >= 0x40 && WITHIN(reg,0xc000,0x48))
-+ return 1;
-+ if (dev_priv->VBIOS.pub.chip_version >= 0x17 && reg == 0x0000d204)
-+ return 1;
-+ if (dev_priv->VBIOS.pub.chip_version >= 0x40) {
-+ if (reg == 0x00011014 || reg == 0x00020328)
-+ return 1;
-+ if (WITHIN(reg,0x88000,NV_PBUS_SIZE)) /* new PBUS */
-+ return 1;
-+ }
-+ if (nv_arch(dev) >= NV_50) {
-+ /* No clue what they do, but because they are outside normal
-+ * ranges we'd better list them seperately. */
-+ if (reg == 0x00020018 || reg == 0x0002004C ||
-+ reg == 0x00020060 || reg == 0x00021218 ||
-+ reg == 0x0002130C || reg == 0x00089008 ||
-+ reg == 0x00089028)
-+ return 1;
++ if (reg >= (8*1024*1024)) {
++ NV_ERROR(dev, "=== reg 0x%08x out of mapped bounds ===\n", reg);
++ return 0;
+ }
-+ if (WITHIN(reg,NV_PFB_OFFSET,NV_PFB_SIZE))
-+ return 1;
-+ if (WITHIN(reg,NV_PEXTDEV_OFFSET,NV_PEXTDEV_SIZE))
-+ return 1;
-+ if (WITHIN(reg,NV_PCRTC0_OFFSET,NV_PCRTC0_SIZE * 2))
-+ return 1;
-+ if (nv_arch(dev) >= NV_50 &&
-+ WITHIN(reg, NV50_DISPLAY_OFFSET, NV50_DISPLAY_SIZE))
-+ return 1;
-+ if (WITHIN(reg,NV_PRAMDAC0_OFFSET,NV_PRAMDAC0_SIZE * 2))
-+ return 1;
-+ if (dev_priv->VBIOS.pub.chip_version >= 0x17 && reg == 0x0070fff0)
-+ return 1;
-+ if (dev_priv->VBIOS.pub.chip_version == 0x51 && WITHIN(reg,NV_PRAMIN_OFFSET,NV_PRAMIN_SIZE))
-+ return 1;
-+ #undef WITHIN
+
-+ NV_ERROR(dev, "========== unknown reg 0x%08X ==========\n", reg);
-+
-+ return 0;
++ return 1;
+}
+
+static bool valid_idx_port(struct drm_device *dev, uint16_t port)
@@ -992,7 +946,7 @@ index 0000000..f6628db
+ }
+}
+
-+static bool init_io_restrict_prog(struct drm_device *dev, struct nvbios *bios, uint16_t offset, init_exec_t *iexec)
++static bool init_io_restrict_prog(struct drm_device *dev, struct nvbios *bios, uint16_t offset, struct init_exec *iexec)
+{
+ /* INIT_IO_RESTRICT_PROG opcode: 0x32 ('2')
+ *
@@ -1044,7 +998,7 @@ index 0000000..f6628db
+ return true;
+}
+
-+static bool init_repeat(struct drm_device *dev, struct nvbios *bios, uint16_t offset, init_exec_t *iexec)
++static bool init_repeat(struct drm_device *dev, struct nvbios *bios, uint16_t offset, struct init_exec *iexec)
+{
+ /* INIT_REPEAT opcode: 0x33 ('3')
+ *
@@ -1078,7 +1032,7 @@ index 0000000..f6628db
+ return true;
+}
+
-+static bool init_io_restrict_pll(struct drm_device *dev, struct nvbios *bios, uint16_t offset, init_exec_t *iexec)
++static bool init_io_restrict_pll(struct drm_device *dev, struct nvbios *bios, uint16_t offset, struct init_exec *iexec)
+{
+ /* INIT_IO_RESTRICT_PLL opcode: 0x34 ('4')
+ *
@@ -1142,7 +1096,7 @@ index 0000000..f6628db
+ return true;
+}
+
-+static bool init_end_repeat(struct drm_device *dev, struct nvbios *bios, uint16_t offset, init_exec_t *iexec)
++static bool init_end_repeat(struct drm_device *dev, struct nvbios *bios, uint16_t offset, struct init_exec *iexec)
+{
+ /* INIT_END_REPEAT opcode: 0x36 ('6')
+ *
@@ -1162,7 +1116,7 @@ index 0000000..f6628db
+ return true;
+}
+
-+static bool init_copy(struct drm_device *dev, struct nvbios *bios, uint16_t offset, init_exec_t *iexec)
[...4542 lines suppressed...]
++ 0x00122503, 0x00162600, 0x00122607, 0x00112680, 0x00112700, 0x00112702,
++ 0x00122780, 0x0011278b, 0x00112794, 0x0011279c, 0x0040d1e2, 0x00200298,
++ 0x00600006, 0x00200044, 0x00102880, 0x001128c6, 0x001528c9, 0x001928d0,
++ 0x00122900, 0x00122903, 0x00162a00, 0x00122a07, 0x00112a80, 0x00112b00,
++ 0x00112b02, 0x00122b80, 0x00112b8b, 0x00112b94, 0x00112b9c, 0x0040eee3,
++ 0x002002ff, 0x00600006, 0x00200044, 0x00102c80, 0x0040df0f, 0x0040df4b,
++ 0x00217240, 0x00600007, 0x0020043f, 0x008800ff, 0x0070008f, 0x0040df8c,
++ 0x005000cb, 0x00000000, 0x00112cc6, 0x00152cc9, 0x00192cd0, 0x00122d00,
++ 0x00122d03, 0x00162e00, 0x00122e07, 0x00112e80, 0x00112f00, 0x00112f02,
++ 0x00122f80, 0x00112f8b, 0x00112f94, 0x00112f9c, 0x00000000, 0x0040f50f,
++ 0x005000cb, 0x00217240, 0x00600007, 0x0020043f, 0x008800ff, 0x005000cb,
++ 0x0040f887, 0x0060000a, 0x00000000, 0x00410700, 0x007000a0, 0x00700080,
++ 0x00200380, 0x00600007, 0x00200004, 0x00c000ff, 0x008000ff, 0x005000cb,
++ 0x00700000, 0x00200000, 0x00600006, 0x00111bfe, 0x0041294d, 0x00700000,
++ 0x00200000, 0x00600006, 0x00111bfe, 0x00700080, 0x0070001d, 0x0040114d,
++ 0x00700081, 0x00600004, 0x0050004a, 0x00411388, 0x0060000b, 0x00200000,
++ 0x00600006, 0x00700000, 0x0041290b, 0x00111bfd, 0x0040424d, 0x00202dd2,
++ 0x008000fd, 0x005000cb, 0x00c00002, 0x00200380, 0x00600007, 0x00200160,
++ 0x00800002, 0x005000cb, 0x00c01802, 0x00202c72, 0x00800002, 0x005000cb,
++ 0x00404e4d, 0x0060000b, 0x0041274d, 0x00700001, 0x00700003, 0x00412d06,
++ 0x00412e05, 0x0060000d, 0x00700005, 0x0070000d, 0x00700006, 0x0070000b,
++ 0x0070000e, 0x0070001c, 0x0060000c, ~0
++};
++
++static unsigned nv94_ctxvals[] = {
++ 0x0043, 0x00000000,
++ 0x0001, 0x00000030,
++ 0x0008, 0x00000000,
++ 0x0001, 0x00000002,
++ 0x0028, 0x00000000,
++ 0x0001, 0x00000003,
++ 0x0001, 0x00001000,
++ 0x000f, 0x00000000,
++ 0x0001, 0x0000fe0c,
++ 0x0004, 0x00000000,
++ 0x0001, 0x00001000,
++ 0x000a, 0x00000000,
++ 0x0001, 0x00000187,
++ 0x0004, 0x00000000,
++ 0x0001, 0x00001018,
++ 0x0001, 0x000000ff,
++ 0x000e, 0x00000000,
++ 0x0001, 0x00000004,
++ 0x0001, 0x044d00df,
++ 0x0001, 0x00000000,
++ 0x0001, 0x00000600,
++ 0x0005, 0x00000000,
++ 0x0001, 0x01000000,
++ 0x0001, 0x000000ff,
++ 0x0001, 0x00000000,
++ 0x0001, 0x00000400,
++ 0x0005, 0x00000000,
++ 0x0001, 0x00000001,
++ 0x0001, 0x00000080,
++ 0x0001, 0x00000004,
++ 0x0006, 0x00000000,
++ 0x0001, 0x00000002,
++ 0x0001, 0x00000001,
++ 0x0003, 0x00000000,
++ 0x0001, 0x00000001,
++ 0x0001, 0x00000100,
++ 0x0005, 0x00000000,
++ 0x0001, 0x00000002,
++ 0x0002, 0x00000001,
+ 0x0003, 0x00000000,
+ 0x0001, 0x00000001,
+ 0x0001, 0x003fffff,
@@ -51203,10 +52720,10 @@ index 0000000..ca23454
+#endif
diff --git a/drivers/gpu/drm/nouveau/nv50_instmem.c b/drivers/gpu/drm/nouveau/nv50_instmem.c
new file mode 100644
-index 0000000..a89926e
+index 0000000..9b5f802
--- /dev/null
+++ b/drivers/gpu/drm/nouveau/nv50_instmem.c
-@@ -0,0 +1,451 @@
+@@ -0,0 +1,445 @@
+/*
+ * Copyright (C) 2007 Ben Skeggs.
+ *
@@ -51636,9 +53153,6 @@ index 0000000..a89926e
+ struct drm_nouveau_private *dev_priv = dev->dev_private;
+ struct nv50_instmem_priv *priv = dev_priv->engine.instmem.priv;
+
-+ BUG_ON(dev_priv->ramin_map != NULL);
-+ dev_priv->ramin_map = dev_priv->ramin;
-+
+ priv->last_access_wr = write;
+}
+
@@ -51648,9 +53162,6 @@ index 0000000..a89926e
+ struct drm_nouveau_private *dev_priv = dev->dev_private;
+ struct nv50_instmem_priv *priv = dev_priv->engine.instmem.priv;
+
-+ BUG_ON(dev_priv->ramin_map == NULL);
-+ dev_priv->ramin_map = NULL;
-+
+ if (priv->last_access_wr) {
+ nv_wr32(0x070000, 0x00000001);
+ if (!nv_wait(0x070000, 0x00000001, 0x00000000))
@@ -51706,10 +53217,10 @@ index 0000000..6572f12
+}
diff --git a/drivers/gpu/drm/nouveau/nv50_sor.c b/drivers/gpu/drm/nouveau/nv50_sor.c
new file mode 100644
-index 0000000..8977aa3
+index 0000000..5429266
--- /dev/null
+++ b/drivers/gpu/drm/nouveau/nv50_sor.c
-@@ -0,0 +1,310 @@
+@@ -0,0 +1,304 @@
+/*
+ * Copyright (C) 2008 Maarten Maathuis.
+ * All Rights Reserved.
@@ -51745,7 +53256,6 @@ index 0000000..8977aa3
+#include "nouveau_connector.h"
+#include "nouveau_crtc.h"
+#include "nv50_display.h"
-+#include "nv50_display_commands.h"
+
+extern int nouveau_duallink;
+
@@ -51755,7 +53265,6 @@ index 0000000..8977aa3
+ struct drm_device *dev = encoder->base.dev;
+ struct drm_nouveau_private *dev_priv = dev->dev_private;
+ struct nouveau_channel *evo = &dev_priv->evo.chan;
-+ uint32_t offset = encoder->or * 0x40;
+ int ret;
+
+ NV_DEBUG(dev, "Disconnecting SOR %d\n", encoder->or);
@@ -51765,8 +53274,8 @@ index 0000000..8977aa3
+ NV_ERROR(dev, "no space while disconnecting SOR\n");
+ return;
+ }
-+ BEGIN_RING(evo, 0, NV50_SOR0_MODE_CTRL + offset, 1);
-+ OUT_RING (evo, NV50_SOR_MODE_CTRL_OFF);
++ BEGIN_RING(evo, 0, NV50_EVO_SOR(encoder->or, MODE_CTRL), 1);
++ OUT_RING (evo, 0);
+}
+
+static int
@@ -51895,8 +53404,7 @@ index 0000000..8977aa3
+ struct nouveau_encoder *encoder = to_nouveau_encoder(drm_encoder);
+ struct drm_device *dev = drm_encoder->dev;
+ struct nouveau_crtc *crtc = to_nouveau_crtc(drm_encoder->crtc);
-+ uint32_t offset = encoder->or * 0x40;
-+ uint32_t mode_ctl = NV50_SOR_MODE_CTRL_OFF;
++ uint32_t mode_ctl = 0;
+ int ret;
+
+ NV_DEBUG(dev, "or %d\n", encoder->or);
@@ -51906,31 +53414,29 @@ index 0000000..8977aa3
+ nv50_sor_dpms(drm_encoder, DRM_MODE_DPMS_ON);
+ dev_priv->in_modeset = ret;
+
-+ if (encoder->base.encoder_type == DRM_MODE_ENCODER_LVDS) {
-+ mode_ctl |= NV50_SOR_MODE_CTRL_LVDS;
-+ } else {
-+ mode_ctl |= NV50_SOR_MODE_CTRL_TMDS;
++ if (encoder->base.encoder_type != DRM_MODE_ENCODER_LVDS) {
++ mode_ctl |= NV50_EVO_SOR_MODE_CTRL_TMDS;
+ if (adjusted_mode->clock > 165000)
-+ mode_ctl |= NV50_SOR_MODE_CTRL_TMDS_DUAL_LINK;
++ mode_ctl |= NV50_EVO_SOR_MODE_CTRL_TMDS_DUAL_LINK;
+ }
+
+ if (crtc->index == 1)
-+ mode_ctl |= NV50_SOR_MODE_CTRL_CRTC1;
++ mode_ctl |= NV50_EVO_SOR_MODE_CTRL_CRTC1;
+ else
-+ mode_ctl |= NV50_SOR_MODE_CTRL_CRTC0;
++ mode_ctl |= NV50_EVO_SOR_MODE_CTRL_CRTC0;
+
+ if (adjusted_mode->flags & DRM_MODE_FLAG_NHSYNC)
-+ mode_ctl |= NV50_SOR_MODE_CTRL_NHSYNC;
++ mode_ctl |= NV50_EVO_SOR_MODE_CTRL_NHSYNC;
+
+ if (adjusted_mode->flags & DRM_MODE_FLAG_NVSYNC)
-+ mode_ctl |= NV50_SOR_MODE_CTRL_NVSYNC;
++ mode_ctl |= NV50_EVO_SOR_MODE_CTRL_NVSYNC;
+
+ ret = RING_SPACE(evo, 2);
+ if (ret) {
+ NV_ERROR(dev, "no space while connecting SOR\n");
+ return;
+ }
-+ BEGIN_RING(evo, 0, NV50_SOR0_MODE_CTRL + offset, 1);
++ BEGIN_RING(evo, 0, NV50_EVO_SOR(encoder->or, MODE_CTRL), 1);
+ OUT_RING (evo, mode_ctl);
+}
+
@@ -52004,8 +53510,7 @@ index 0000000..8977aa3
+ drm_encoder_init(dev, &encoder->base, &nv50_sor_encoder_funcs, type);
+ drm_encoder_helper_add(&encoder->base, &nv50_sor_helper_funcs);
+
-+ /* I've never seen possible crtc's restricted. */
-+ encoder->base.possible_crtcs = 3;
++ encoder->base.possible_crtcs = entry->heads;
+ encoder->base.possible_clones = 0;
+
+ /* Some default state, unknown what it precisely means. */
View full diff with command:
/usr/bin/cvs -f diff -kk -u -p -N -r 1.1294.2.40 -r 1.1294.2.41 kernel.spec
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1294.2.40
retrieving revision 1.1294.2.41
diff -u -p -r1.1294.2.40 -r1.1294.2.41
--- kernel.spec 10 Jul 2009 19:04:29 -0000 1.1294.2.40
+++ kernel.spec 15 Jul 2009 20:58:06 -0000 1.1294.2.41
@@ -57,9 +57,9 @@ Summary: The Linux kernel
# The next upstream release sublevel (base_sublevel+1)
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
# The rc snapshot level
-%define rcrev 2
+%define rcrev 3
# The git snapshot level
-%define gitrev 4
+%define gitrev 0
# Set rpm version accordingly
%define rpmversion 2.6.%{upstream_sublevel}
%endif
@@ -646,6 +646,8 @@ Patch800: linux-2.6-crash-driver.patch
Patch900: linux-2.6-pci-cacheline-sizing.patch
+Patch1000: linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch
+
Patch1515: linux-2.6.31-lirc.patch
Patch1516: lirc_streamzap-buffer-rework.patch
Patch1517: hdpvr-ir-enable.patch
@@ -674,8 +676,6 @@ Patch2900: linux-2.6-v4l-dvb-update.patc
Patch2901: linux-2.6-v4l-dvb-experimental.patch
Patch2903: linux-2.6-revert-dvb-net-kabi-change.patch
-Patch3000: linux-2.6-dmadebug-spinlock.patch
-
# fs fixes
# NFSv4
@@ -1134,8 +1134,6 @@ ApplyPatch linux-2.6.29-sparc-IOC_TYPECH
#
ApplyPatch linux-2.6-execshield.patch
-ApplyPatch linux-2.6-dmadebug-spinlock.patch
-
#
# bugfixes to drivers and filesystems
#
@@ -1223,6 +1221,8 @@ ApplyPatch linux-2.6-crash-driver.patch
# Determine cacheline sizes in a generic manner.
ApplyPatch linux-2.6-pci-cacheline-sizing.patch
+ApplyPatch linux-2.6-cpufreq-ppc-suspend-clusterfuck.patch
+
# http://www.lirc.org/
ApplyPatch linux-2.6.31-lirc.patch
# should be a short-lived patch, hopefully fixing bz#508952 w/o breaking anything else...
@@ -1875,6 +1875,33 @@ fi
# and build.
%changelog
+* Wed Jul 15 2009 Michael Young <m.a.young at durham.ac.uk>
+- update pvops
+
+* Tue Jul 14 2009 Kyle McMartin <kyle at redhat.com> 2.6.31-0.68-rc3
+- 2.6.31-rc3
+- config changes:
+ - RTL8192SU is not set, (staging)
+
+* Mon Jul 13 2009 Kyle McMartin <kyle at redhat.com> 2.6.31-0.67.rc2.git9
+- 2.6.31-rc2-git9
+- config changes:
+ - BLK_DEV_OSD=m
+
+* Mon Jul 13 2009 Ben Skeggs <bskeggs at redhat.com>
+- drm-nouveau.patch: update from upstream
+
+* Fri Jul 10 2009 Chuck Ebbert <cebbert at redhat.com>
+- 2.6.31-rc2-git6
+- Drop dmadebug-spinlock patch -- merged upstream.
+
+* Fri Jul 10 2009 Dave Jones <davej at redhat.com> 2.6.31-0.64.rc2.git5
+- Don't jump through hoops that ppc powerbooks have to on sensible systems
+ in cpufreq_suspend.
+
+* Fri Jul 10 2009 Dave Jones <davej at redhat.com>
+- 2.6.31-rc2-git5
+
* Thu Jul 09 2009 Michael Young <m.a.young at durham.ac.uk>
- disable CONFIG_KERNEL_LZMA as xen doesn't like it
@@ -2639,2651 +2666,6 @@ fi
* Mon Mar 23 2009 Dave Jones <davej at redhat.com>
- 2.6.29
-* Mon Mar 23 2009 Mauro Carvalho Chehab <mchehab at rehat.com>
-- Some fixes on drivers/media
-- Removed inexistent drivers/media items from config-generic
-- Cinergy T2 option were renamed. Use the current syntax
-
-* Mon Mar 23 2009 Matthew Garrett <mjg at redhat.com>
-- linux-2.6-sony-laptop-rfkill.patch
- Update to support hotkeys and rfkill switch
-
-* Mon Mar 23 2009 Bill Nottingham <notting at redhat.com>
-- build ide-gd_mod in on PPC (#491380)
-
-* Mon Mar 23 2009 Mark McLoughlin <markmc at redhat.com>
-- Add /sys/bus/pci/devices/*/remove_id for KVM (#487103)
-
-* Mon Mar 23 2009 Chuck Ebbert <cebbert at redhat.com>
-- Linux 2.6.29-rc8-git6
-
-* Mon Mar 23 2009 Roland McGrath <roland at redhat.com>
-- utrace update, fixes /proc/pid/status format (#491508)
-
-* Mon Mar 23 2009 Ben Skeggs <bskeggs at redhat.com>
-- drm-nouveau.patch: fix GEM object leak, and display shutdown issue
-
-* Fri Mar 20 2009 Kyle McMartin <kyle at redhat.com>
-- Linux 2.6.29-rc8-git5
-
-* Thu Mar 19 2009 Mauro Carvalho Chehab <mchehab at redhat.com>
-- Removed v4l-build-fixes.patch
-
-* Thu Mar 19 2009 Mauro Carvalho Chehab <mchehab at redhat.com>
-- update v4l-dvb to reflect changes at linux-next
-
-* Thu Mar 19 2009 Matthew Garrett <mjg at redhat.com>
-- linux-2.6-acpi-video-didl-intel-outputs.patch
- don't attempt to re-register the backlight device on resume
-- linux-2.6-sony-laptop-rfkill.patch
- provide rfkill control on current vaios
-
-* Thu Mar 19 2009 Dave Jones <davej at redhat.com>
-- Switch x86-32 back to using 8k stacks.
-
-* Thu Mar 19 2009 Chuck Ebbert <cebbert at redhat.com>
-- Enable the sfc 10GbE network driver.
-
-* Thu Mar 19 2009 Kyle McMartin <kyle at redhat.com>
-- dma-api debug fixes for e1000 and e1000e from tip.
-- fix dma leak in tulip request_irq error path.
-
-* Thu Mar 19 2009 Kyle McMartin <kyle at redhat.com> 2.6.29-0.267.rc8.git4
-- build fixes for v4l tree.
-
-* Thu Mar 19 2009 Roland McGrath <roland at redhat.com> 2.6.29-0.266.rc8.git4
-- utrace update, add ftrace process-tracer widget, drop utrace-ptrace
-
-* Thu Mar 19 2009 Ben Skeggs <bskeggs at redhat.com>
-- drm-nouveau.patch: kms fixes and cleanups
-
-* Thu Mar 19 2009 Chuck Ebbert <cebbert at redhat.com>
-- 2.6.29-rc8-git4
-- Dropped patches, merged upstream:
- linux-2.6-ext4-extent-header-check-fix.patch
- linux-2.6-ext4-print-warning-once.patch
- linux-2.6-net-velocity-dma.patch
-
-* Wed Mar 18 2009 Mauro Carvalho Chehab <mchehab at redhat.com>
-- merge hdpvr patch into v4l-dvb updates
-- update v4l-dvb to reflect changes at linux-next
-
-* Wed Mar 18 2009 Jarod Wilson <jarod at redhat.com>
-- Update hdpvr patch to version targeted for v4l-dvb merge
-- Re-sort patches to add hdpvr after v4l-dvb updates
-
-* Wed Mar 18 2009 Dave Airlie <airlied at redhat.com>
-- drm-next.patch: fix rs600 GART setup
-- drm-modesetting-radeon.patch: allocator fixups
-
-* Wed Mar 18 2009 Ben Skeggs <bskeggs at redhat.com>
-- enable CONFIG_MMIOTRACE on x86/x86_64
-
-* Tue Mar 17 2009 Michael Young <m.a.young at durham.ac.uk>
-- update pvops patch
-
-* Tue Mar 17 2009 Kyle McMartin <kyle at redhat.com>
-- increase MAX_LOCKDEP_ENTRIES to 10240.
-
-* Mon Mar 16 2009 Josef Bacik <josef at toxicpanda.com> 2.6.29-0.258.rc8.git2
-- update btrfs code so it doesn't pop the stack on x86
-
-* Mon Mar 16 2009 Kyle McMartin <kyle at redhat.com> 2.6.29-0.255.rc8.git2
-- 2.6.29-rc8-git2
-
-* Sun Mar 15 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.29-0.254.rc8.git1
-- 2.6.29-rc8-git1
-- Entire v4l-dvb-fixes patch was merged upstream.
-
-* Fri Mar 13 2009 Mauro Carvalho Chehab <mchehab at redhat.com
-- v4l-dvb patches: better conflict solving with hdpvr, more fixes and updates
-
-* Fri Mar 13 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.29-0.252.rc8
-- Quiet down an ext4 warning message.
-
-* Fri Mar 13 2009 Dave Jones <davej at redhat.com> 2.6.29-0.250.rc8
-- Fix DMA leak in Velocity TX path
-
-* Fri Mar 13 2009 Mauro Carvalho Chehab <mchehab at redhat.com
[...2342 lines suppressed...]
-- Fix gianfar build.
-
-* Thu May 22 2008 Dave Jones <davej at redhat.com>
-- 2.6.26-rc3-git4
-
-* Wed May 21 2008 John W. Linville <linville at redhat.com>
-- libertas: Fix ethtool statistics
-- mac80211: fix NULL pointer dereference in ieee80211_compatible_rates
-- mac80211: don't claim iwspy support
-- rtl8187: resource leak in error case
-- hostap_cs: add ID for Conceptronic CON11CPro
-- orinoco_cs: add ID for SpeedStream wireless adapters
-
-* Wed May 21 2008 Dave Jones <davej at redhat.com>
-- 2.6.26-rc3-git3
-
-* Tue May 20 2008 Dave Jones <davej at redhat.com>
-- 2.6.26-rc3-git1
-
-* Mon May 19 2008 Dave Jones <davej at redhat.com>
-- Disable PATA_ISAPNP (it's busted).
-
-* Mon May 19 2008 John W. Linville <linville at redhat.com>
-- mac80211 : Association with 11n hidden ssid ap.
-- libertas: fix command timeout after firmware failure
-- mac80211: Add RTNL version of ieee80211_iterate_active_interfaces
-- wireless: Create 'device' symlink in sysfs
-- hostap: fix "registers" registration in procfs
-- wireless, airo: waitbusy() won't delay
-- iwlwifi : Set monitor mode for 4965
-- iwlwifi : Set monitor mode for 3945
-- make sta_rx_agg_session_timer_expired() static
-- remove ieee80211_tx_frame()
-- remove ieee80211_wx_{get,set}_auth()
-- wireless: fix "iwlwifi: unify init driver flow"
-- iwl3945: do not delay hardware scan if it is a direct scan
-- ath5k: Fix loop variable initializations
-- zd1211rw: initial IBSS support
-- mac80211: use hardware flags for signal/noise units
-- mac80211: make rx radiotap header more flexible
-- iwlwifi: HW dependent run time calibration
-- iwlwifi: HW crypto acceleration fixes
-- iwlwifi: remove uneeded callback
-- iwlwifi: CT-Kill configuration fix
-- iwlwifi: HT IE in probe request clean up
-- iwlwifi: clean up register names and defines
-- iwlwifi: move Flow Handlers define to iwl-fh.h
-- iwlwifi: move verify_ucode functions to iwl-core
-- iwlwifi: move hw_rx_handler_setup to iwl-4965.c
-- iwlwifi-5000: update the CT-Kill value for 5000 series
-- iwlwifi-5000: add run time calibrations for 5000
-- iwlwifi-5000: update the byte count in SCD
-- iwlwifi: move iwl4965_init_alive_start to iwl-4965.c
-- wireless: Add missing locking to cfg80211_dev_rename
-- mac80211: correct skb allocation
-- iwlwifi: move per driverdebug_level to per device
-- iwlwifi: move debug_level to sysfs/bus/pci/devices
-- iwlwifi: update levels of debug prints
-- iwlwifi: adding parameter of fw_restart
-- iwlwifi: remove support for Narrow Channel (10Mhz)
-- iwlwifi: HT antenna/chains overhaul
-- iwlwifi: TLC modifications
-- iwlwifi: rate scale module cleanups
-- iwlwifi: rate scale restructure toggle_antenna functions
-- iwlwifi: rs fix wrong parenthesizing in rs_get_lower_rate function
-- iwlwifi: rate sacaling fixes
-- iwlwifi: more RS improvements
-- mac80211: remove unnecessary byteshifts in frame control testing
-- wireless: use get/put_unaligned_* helpers
-- mac80211: tkip.c use kernel-provided infrastructure
-- b43: replace limit_value macro with clamp_val
-- b43legacy: replace limit_value macro with clamp_val
-- b43: use the bitrev helpers rather than rolling a private one
-- libertas: debug output tweaks for lbs_thread
-- libertas: make some functions void
-- libertas: allow removal of card at any time
-- libertas: remove lbs_get_data_rate()
-- b43: nphy.c remove duplicated include
-- mac80211: Replace ieee80211_tx_control->key_idx with ieee80211_key_conf
-- mac80211: Add IEEE80211_KEY_FLAG_PAIRWISE
-- rt2x00: Support hardware RTS and CTS-to-self frames
-- rt2x00: Remove DRIVER_SUPPORT_MIXED_INTERFACES
-- rt2x00: Use rt2x00 queue numbering
-- rt2x00: Add helper macros
-- rt2x00: Fix kernel-doc
-- rt2x00: Release rt2x00 2.1.5
-- rt2x00: Clarify supported chipsets in Kconfig
-- mac80211: Set IEEE80211_TXPD_REQ_TX_STATUS for all TX frames
-- mac80211: a few code cleanups
-- mac80211: clean up get_tx_stats callback
-- mac80211: remove queue info from ieee80211_tx_status
-- mac80211: QoS related cleanups
-- mac80211: fix wme code
-- mac80211: require four hardware queues for QoS/HT
-- mac80211: proper STA info locking
-- mac80211: fix queue constant confusion
-- wireless: fix warning introduced by "mac80211: QoS related cleanups"
-- ssb: Allow reading of 440-byte SPROM that is not rev 4
-- b43: Rewrite LO calibration algorithm
-- b43: Remove some dead code
-- b43: Don't disable IRQs in mac_suspend
-- iwlwifi: Add power level support
-- airo: use netstats in net_device structure
-- arlan: use netstats in net_device structure
-- atmel: use netstats in net_device structure
-- iwlwifi: arranging aggregation actions
-- iwlwifi: expanding HW parameters control
-- iwlwifi: support 64 bit DMA masks
-- iwlwifi: handle shared memory
-- iwlwifi: unify init driver flow
-- iwlwifi: iwl-sta redundant includes clean up
-- iwlwifi-5000: add iwl 5000 shared memory handlers
-- iwlwifi: map A-MPDU HW queue to mac80211 A-MPDU SW queue
-- iwlwifi-5000: rename iwl5000_init_nic to iwl5000_init_config
-- iwlwifi: create disable SCD Tx FIFOs handler
-- iwlwifi: move NIC init and Tx queues init to iwlcore
-- iwlwifi: handle shared memory Rx index access
-- iwlwifi: remove 4965 prefix from iwl4965_kw and iwl4965_tx_queue
-- iwlwifi: fix spinlock used before initialized
-- iwlwifi: move find station to iwl-sta.c
-- iwlwifi: cleanup set_pwr_src
-- iwlwifi: define ANA_PLL values in iwl-csr.h
-- iwlwifi: export int iwl4965_set_pwr_src
-- iwlwifi: changing EEPROM layout handling
-- iwlwifi: remove includes to net/ieee80211.h
-- iwlwifi: add apm init handler
-- iwlwifi: add iwl_hw_detect function to iwl core
-- iwlwifi: check eeprom version in pci probe time
-- iwlwifi: reorganize TX RX constatns
-- iwlwifi: 3945 remove unused SCD definitions
-- iwlwifi: remove 49 prefix from general CSR values
-- iwlwifi: remove unnecessary apmg settings
-- iwlwifi: wrapping nic configuration in iwl core handler
-- iwlwifi-5000: adding initial recognition for the 5000 family
-- iwlwifi-5000: add ops infrastructure for 5000
-- iwlwifi-5000: add apm_init handler for 5000 HW family
-- iwlwifi-5000: use iwl4965_set_pwr_src in 5000
-- iwlwifi-5000: EEPROM settings for 5000
-- iwlwifi-5000: adding iwl5000 HW parameters
-- iwlwifi-5000: adjust antennas names in 5000 HW family
-- iwlwifi-5000: Add HW REV of 5000 HW family
-- iwlwifi-5000: add eeprom check version handler
-- iwlwifi-5000: add nic config handler for 5000 HW
-- iwlwifi: rename iwl-4965-commands to iwl-commands.h
-- iwlwifi: rename iwl-4965.h to iwl-dev.h
-- iwlwifi: move RX code to iwl-rx.c
-- iwlwifi: don't override association channel with control channel
-- iwlwifi: remove 4965 from station_entry
-- iwlwifi: debugfs EEPROM dump
-- iwlwifi: remove 4965 from rx_packet
-- iwlwifi: generalize iwl4965_send_add_station function
-- iwlwifi-5000: add build_addsta_hcmd handler for 5000 HW
-- iwlwifi: move iwl4965_set_rxon_ht into iwlcore
-- iwlwifi: compile iwl-sta into iwlcore
-- iwlwifi: add device sysfs version entry
-- at76: use hardware flags for signal/noise units
-
-* Sun May 18 2008 Dave Jones <davej at redhat.com>
-- 2.6.26-rc3
-
-* Sat May 17 2008 Eric Paris <eparis at redhat.com>
-- SELinux: enable deffered context validation
-- SELinux: don't sleep while holding locks in above patch
-- SELinux: replace ioctl specific knowlege in the selinux code and follow generic permissions
-- SELinux: not all reading in /proc needs ptrace, so make those things just use 'read' perms
-
-* Sat May 17 2008 Dave Jones <davej at redhat.com>
-- Enable PAGEALLOC debugging for a while. (Some things might get slow).
-
-* Sat May 17 2008 Dave Jones <davej at redhat.com>
-- Disable CONFIG_SND_PCSP (#447039)
-
-* Fri May 16 2008 Dave Jones <davej at redhat.com>
-- Enable CONFIG_SND_SERIAL_U16550
-
-* Fri May 16 2008 Dave Jones <davej at redhat.com>
-- 2.6.26-rc2-git5
-
-* Thu May 15 2008 Eric Sandeen <esandeen at redhat.com>
-- ext3/4: fix uninitialized bs in ext3/4_xattr_set_handle()
-
-* Wed May 14 2008 Eric Paris <eparis at redhat.com>
-- fix may sleep in allocation for previous deffered context patch
-- replace selinux specific knowledge of ioctls with a generic ioctl implementation
-
-* Mon May 12 2008 Kyle McMartin <kmcmartin at redhat.com>
-- Linux 2.6.25.3
-
-* Fri May 09 2008 John W. Linville <linville at redhat.com> 2.6.25.2-7
-- Regroup wireless patches as prep for 2.6.26 and F10 cycles
-
-* Fri May 09 2008 Eric Paris <eparis at redhat.com>
-- support deffered context validation in selinux. aka rpm can lay down illegal labels. (won't upstream until .27 opens)
-
-* Wed May 07 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.25.2-5
-- Add the patches queued for 2.6.25.3
-
###
# The following Emacs magic makes C-c C-e use UTC dates.
# Local Variables:
linux-2.6-compile-fixes.patch:
Index: linux-2.6-compile-fixes.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-compile-fixes.patch,v
retrieving revision 1.193.6.1
retrieving revision 1.193.6.2
diff -u -p -r1.193.6.1 -r1.193.6.2
--- linux-2.6-compile-fixes.patch 10 Jul 2009 19:04:30 -0000 1.193.6.1
+++ linux-2.6-compile-fixes.patch 15 Jul 2009 20:58:06 -0000 1.193.6.2
@@ -4,14 +4,3 @@
# Please add the errors from gcc before the diffs to save others having
# to do a compile to figure out what your diff is fixing. Thanks.
#
---- linux-2.6.30.noarch/drivers/net/bmac.c~ 2009-07-09 21:51:36.000000000 -0400
-+++ linux-2.6.30.noarch/drivers/net/bmac.c 2009-07-09 21:51:47.000000000 -0400
-@@ -431,7 +431,7 @@ bmac_init_phy(struct net_device *dev)
- printk(KERN_DEBUG);
- printk(KERN_CONT " %.4x", bmac_mif_read(dev, addr));
- }
-- print(KERN_CONT "\n");
-+ printk(KERN_CONT "\n");
-
- if (bp->is_bmac_plus) {
- unsigned int capable, ctrl;
Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/sources,v
retrieving revision 1.976.2.21
retrieving revision 1.976.2.22
diff -u -p -r1.976.2.21 -r1.976.2.22
--- sources 10 Jul 2009 19:04:31 -0000 1.976.2.21
+++ sources 15 Jul 2009 20:58:07 -0000 1.976.2.22
@@ -1,3 +1,2 @@
7a80058a6382e5108cdb5554d1609615 linux-2.6.30.tar.bz2
-a785e5e8d16d646c7a7c876359b3dab3 patch-2.6.31-rc2.bz2
-76b4082138a3d4ba88c37da6e3b91d13 patch-2.6.31-rc2-git4.bz2
+39a1c949531faa70e147d0aa5be6c6ec patch-2.6.31-rc3.bz2
Index: upstream
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/upstream,v
retrieving revision 1.888.2.20
retrieving revision 1.888.2.21
diff -u -p -r1.888.2.20 -r1.888.2.21
--- upstream 10 Jul 2009 19:04:31 -0000 1.888.2.20
+++ upstream 15 Jul 2009 20:58:07 -0000 1.888.2.21
@@ -1,4 +1,3 @@
linux-2.6.30.tar.bz2
-patch-2.6.31-rc2.bz2
-patch-2.6.31-rc2-git4.bz2
+patch-2.6.31-rc3.bz2
xen.pvops.patch:
Index: xen.pvops.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/Attic/xen.pvops.patch,v
retrieving revision 1.1.2.27
retrieving revision 1.1.2.28
diff -u -p -r1.1.2.27 -r1.1.2.28
--- xen.pvops.patch 9 Jul 2009 22:53:03 -0000 1.1.2.27
+++ xen.pvops.patch 15 Jul 2009 20:58:07 -0000 1.1.2.28
@@ -2016,8 +2016,21 @@ index 6b8ca3a..d47c54f 100644
mp_lapic_addr = address;
set_fixmap_nocache(FIX_APIC_BASE, address);
+diff --git a/arch/x86/kernel/acpi/sleep.c b/arch/x86/kernel/acpi/sleep.c
+index ca93638..9eff23c 100644
+--- a/arch/x86/kernel/acpi/sleep.c
++++ b/arch/x86/kernel/acpi/sleep.c
+@@ -12,6 +12,8 @@
+ #include <asm/segment.h>
+ #include <asm/desc.h>
+
++#include <xen/acpi.h>
++
+ #include "realmode/wakeup.h"
+ #include "sleep.h"
+
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
-index 8fd1efb..e6e7500 100644
+index 90b5e6e..7011798 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -63,8 +63,10 @@
@@ -2076,7 +2089,7 @@ index 8fd1efb..e6e7500 100644
if (sis_apic_bug)
writel(reg, &io_apic->index);
-@@ -3852,6 +3873,11 @@ void __init probe_nr_irqs_gsi(void)
+@@ -3851,6 +3872,11 @@ void __init probe_nr_irqs_gsi(void)
printk(KERN_DEBUG "nr_irqs_gsi: %d\n", nr_irqs_gsi);
}
@@ -2088,7 +2101,7 @@ index 8fd1efb..e6e7500 100644
#ifdef CONFIG_SPARSE_IRQ
int __init arch_probe_nr_irqs(void)
{
-@@ -4145,6 +4171,11 @@ void __init ioapic_init_mappings(void)
+@@ -4144,6 +4170,11 @@ void __init ioapic_init_mappings(void)
struct resource *ioapic_res;
int i;
@@ -4286,11 +4299,92 @@ index 4b45435..48804b0 100644
static inline void blk_free_request(struct request_queue *q, struct request *rq)
{
+diff --git a/drivers/acpi/acpica/hwsleep.c b/drivers/acpi/acpica/hwsleep.c
+index db307a3..c6d845c 100644
+--- a/drivers/acpi/acpica/hwsleep.c
++++ b/drivers/acpi/acpica/hwsleep.c
+@@ -46,6 +46,9 @@
+ #include "accommon.h"
+ #include "actables.h"
+
++#include <xen/acpi.h>
++#include <asm/xen/hypervisor.h>
++
+ #define _COMPONENT ACPI_HARDWARE
+ ACPI_MODULE_NAME("hwsleep")
+
+@@ -343,8 +346,22 @@ acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state)
+ ACPI_FLUSH_CPU_CACHE();
+
+ /* Write #2: Write both SLP_TYP + SLP_EN */
++ if (xen_pv_acpi()) {
++ int err;
++
++ err = acpi_notify_hypervisor_state(sleep_state,
++ pm1a_control, pm1b_control);
++ if (err) {
++ ACPI_DEBUG_PRINT((ACPI_DB_INIT,
++ "Hypervisor failure [%d]\n", err));
++ return_ACPI_STATUS(AE_ERROR);
++ }
+
++ return_ACPI_STATUS(AE_OK);
++ }
++
+ status = acpi_hw_write_pm1_control(pm1a_control, pm1b_control);
++
+ if (ACPI_FAILURE(status)) {
+ return_ACPI_STATUS(status);
+ }
+diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c
+index 01574a0..c57e7b2 100644
+--- a/drivers/acpi/sleep.c
++++ b/drivers/acpi/sleep.c
+@@ -19,6 +19,8 @@
+
+ #include <asm/io.h>
+
++#include <xen/acpi.h>
++
+ #include <acpi/acpi_bus.h>
+ #include <acpi/acpi_drivers.h>
+
+@@ -211,6 +213,21 @@ static int acpi_suspend_begin(suspend_state_t pm_state)
+ return error;
+ }
+
++static void do_suspend(void)
++{
++ if (!xen_pv_acpi()) {
++ do_suspend_lowlevel();
++ return;
++ }
++
++ /*
++ * Xen will save and restore CPU context, so
++ * we can skip that and just go straight to
++ * the suspend.
++ */
++ acpi_enter_sleep_state(ACPI_STATE_S3);
++}
++
+ /**
+ * acpi_suspend_enter - Actually enter a sleep state.
+ * @pm_state: ignored
+@@ -244,7 +261,7 @@ static int acpi_suspend_enter(suspend_state_t pm_state)
+ break;
+
+ case ACPI_STATE_S3:
+- do_suspend_lowlevel();
++ do_suspend();
+ break;
+ }
+
diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig
-index bb72ada..bea8ae7 100644
+index 1d886e0..f4a2b10 100644
--- a/drivers/block/Kconfig
+++ b/drivers/block/Kconfig
-@@ -446,6 +446,7 @@ config XEN_BLKDEV_FRONTEND
+@@ -462,6 +462,7 @@ config XEN_BLKDEV_FRONTEND
tristate "Xen virtual block device support"
depends on XEN
default y
@@ -4904,7 +4998,7 @@ index 0000000..b1a7d93
+}
+
diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
-index cab100a..aa72eb3 100644
+index cab100a..3b1c421 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -28,6 +28,29 @@ config XEN_DEV_EVTCHN
@@ -4937,7 +5031,7 @@ index cab100a..aa72eb3 100644
config XENFS
tristate "Xen filesystem"
depends on XEN
-@@ -60,4 +83,7 @@ config XEN_SYS_HYPERVISOR
+@@ -60,4 +83,11 @@ config XEN_SYS_HYPERVISOR
Create entries under /sys/hypervisor describing the Xen
hypervisor environment. When running native or in another
virtual environment, /sys/hypervisor will still be present,
@@ -4947,11 +5041,16 @@ index cab100a..aa72eb3 100644
+
+config XEN_XENBUS_FRONTEND
+ tristate
++
++config XEN_S3
++ def_bool y
++ depends on XEN_DOM0 && ACPI
+\ No newline at end of file
diff --git a/drivers/xen/Makefile b/drivers/xen/Makefile
-index ec2a39b..5a5c307 100644
+index ec2a39b..386c775 100644
--- a/drivers/xen/Makefile
+++ b/drivers/xen/Makefile
-@@ -1,9 +1,11 @@
+@@ -1,9 +1,12 @@
-obj-y += grant-table.o features.o events.o manage.o
+obj-y += grant-table.o features.o events.o manage.o biomerge.o
obj-y += xenbus/
@@ -4961,6 +5060,8 @@ index ec2a39b..5a5c307 100644
-obj-$(CONFIG_XEN_BALLOON) += balloon.o
-obj-$(CONFIG_XEN_DEV_EVTCHN) += evtchn.o
-obj-$(CONFIG_XENFS) += xenfs/
+-obj-$(CONFIG_XEN_SYS_HYPERVISOR) += sys-hypervisor.o
+\ No newline at end of file
+obj-$(CONFIG_HOTPLUG_CPU) += cpu_hotplug.o
+obj-$(CONFIG_XEN_XENCOMM) += xencomm.o
+obj-$(CONFIG_XEN_BALLOON) += balloon.o
@@ -4968,8 +5069,38 @@ index ec2a39b..5a5c307 100644
+obj-$(CONFIG_XEN_BLKDEV_BACKEND) += blkback/
+obj-$(CONFIG_XEN_NETDEV_BACKEND) += netback/
+obj-$(CONFIG_XENFS) += xenfs/
- obj-$(CONFIG_XEN_SYS_HYPERVISOR) += sys-hypervisor.o
++obj-$(CONFIG_XEN_SYS_HYPERVISOR) += sys-hypervisor.o
++obj-$(CONFIG_XEN_S3) += acpi.o
\ No newline at end of file
+diff --git a/drivers/xen/acpi.c b/drivers/xen/acpi.c
+new file mode 100644
+index 0000000..e6d3d0e
+--- /dev/null
++++ b/drivers/xen/acpi.c
+@@ -0,0 +1,23 @@
++#include <xen/acpi.h>
++
++#include <xen/interface/platform.h>
++#include <asm/xen/hypercall.h>
++#include <asm/xen/hypervisor.h>
++
++int acpi_notify_hypervisor_state(u8 sleep_state,
++ u32 pm1a_cnt, u32 pm1b_cnt)
++{
++ struct xen_platform_op op = {
++ .cmd = XENPF_enter_acpi_sleep,
++ .interface_version = XENPF_INTERFACE_VERSION,
++ .u = {
++ .enter_acpi_sleep = {
++ .pm1a_cnt_val = (u16)pm1a_cnt,
++ .pm1b_cnt_val = (u16)pm1b_cnt,
++ .sleep_state = sleep_state,
++ },
++ },
++ };
++
++ return HYPERVISOR_dom0_op(&op);
++}
diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c
index f5bbd9e..bfe1fa3 100644
--- a/drivers/xen/balloon.c
@@ -11020,10 +11151,10 @@ index 0000000..70029e5
+subsys_initcall(xenbus_probe_backend_init);
diff --git a/drivers/xen/xenbus/xenbus_probe_frontend.c b/drivers/xen/xenbus/xenbus_probe_frontend.c
new file mode 100644
-index 0000000..ed7d950
+index 0000000..689761d
--- /dev/null
+++ b/drivers/xen/xenbus/xenbus_probe_frontend.c
-@@ -0,0 +1,278 @@
+@@ -0,0 +1,292 @@
+#define DPRINTK(fmt, args...) \
+ pr_debug("xenbus_probe (%s:%d) " fmt ".\n", \
+ __func__, __LINE__, ##args)
@@ -11147,7 +11278,7 @@ index 0000000..ed7d950
+ return xenbus_read_otherend_details(xendev, "backend-id", "backend");
+}
+
-+static int is_disconnected_device(struct device *dev, void *data)
++static int is_device_connecting(struct device *dev, void *data)
+{
+ struct xenbus_device *xendev = to_xenbus_device(dev);
+ struct device_driver *drv = data;
@@ -11165,19 +11296,17 @@ index 0000000..ed7d950
+ return 0;
+
+ xendrv = to_xenbus_driver(dev->driver);
-+ return (xendev->state != XenbusStateConnected ||
-+ (xendrv->is_ready && !xendrv->is_ready(xendev)));
++ return (xendev->state < XenbusStateConnected ||
++ (xendev->state == XenbusStateConnected &&
++ xendrv->is_ready && !xendrv->is_ready(xendev)));
+}
+
-+
-+static int exists_disconnected_device(struct device_driver *drv)
++static int exists_connecting_device(struct device_driver *drv)
+{
+ return bus_for_each_dev(&xenbus_frontend.bus, NULL, drv,
-+ is_disconnected_device);
++ is_device_connecting);
+}
+
-+
-+
+static int print_device_status(struct device *dev, void *data)
+{
+ struct xenbus_device *xendev = to_xenbus_device(dev);
@@ -11191,19 +11320,23 @@ index 0000000..ed7d950
+ /* Information only: is this too noisy? */
+ printk(KERN_INFO "XENBUS: Device with no driver: %s\n",
+ xendev->nodename);
-+ } else if (xendev->state != XenbusStateConnected) {
++ } else if (xendev->state < XenbusStateConnected) {
++ enum xenbus_state rstate = XenbusStateUnknown;
++ if (xendev->otherend)
++ rstate = xenbus_read_driver_state(xendev->otherend);
+ printk(KERN_WARNING "XENBUS: Timeout connecting "
-+ "to device: %s (state %d)\n",
-+ xendev->nodename, xendev->state);
++ "to device: %s (local state %d, remote state %d)\n",
++ xendev->nodename, xendev->state, rstate);
+ }
+
+ return 0;
+}
++
+/* We only wait for device setup after most initcalls have run. */
+static int ready_to_wait_for_devices;
+
+/*
-+ * On a 10 second timeout, wait for all devices currently configured. We need
++ * On a 5-minute timeout, wait for all devices currently configured. We need
+ * to do this to guarantee that the filesystems and / or network devices
+ * needed for boot are available, before we can allow the boot to proceed.
+ *
@@ -11218,18 +11351,30 @@ index 0000000..ed7d950
+ */
+static void wait_for_devices(struct xenbus_driver *xendrv)
+{
-+ unsigned long timeout = jiffies + 10*HZ;
++ unsigned long start = jiffies;
+ struct device_driver *drv = xendrv ? &xendrv->driver : NULL;
++ unsigned int seconds_waited = 0;
+
+ if (!ready_to_wait_for_devices || !xen_domain())
+ return;
+
-+ while (exists_disconnected_device(drv)) {
-+ if (time_after(jiffies, timeout))
-+ break;
++ while (exists_connecting_device(drv)) {
++ if (time_after(jiffies, start + (seconds_waited+5)*HZ)) {
++ if (!seconds_waited)
++ printk(KERN_WARNING "XENBUS: Waiting for "
++ "devices to initialise: ");
++ seconds_waited += 5;
++ printk("%us...", 300 - seconds_waited);
++ if (seconds_waited == 300)
++ break;
++ }
++
+ schedule_timeout_interruptible(HZ/10);
+ }
+
++ if (seconds_waited)
++ printk("\n");
++
+ bus_for_each_dev(&xenbus_frontend.bus, NULL, drv,
+ print_device_status);
+}
@@ -12012,6 +12157,35 @@ index 4e65c16..84ad8f0 100644
@@ -1 +1,2 @@
header-y += evtchn.h
+header-y += privcmd.h
+diff --git a/include/xen/acpi.h b/include/xen/acpi.h
+new file mode 100644
+index 0000000..fea4cfb
+--- /dev/null
++++ b/include/xen/acpi.h
+@@ -0,0 +1,23 @@
++#ifndef _XEN_ACPI_H
++#define _XEN_ACPI_H
++
++#include <linux/types.h>
++
++#ifdef CONFIG_XEN_S3
++#include <asm/xen/hypervisor.h>
++
++static inline bool xen_pv_acpi(void)
++{
++ return xen_pv_domain();
++}
++#else
++static inline bool xen_pv_acpi(void)
++{
++ return false;
++}
++#endif
++
++int acpi_notify_hypervisor_state(u8 sleep_state,
++ u32 pm1a_cnt, u32 pm1b_cnd);
++
++#endif /* _XEN_ACPI_H */
diff --git a/include/xen/balloon.h b/include/xen/balloon.h
new file mode 100644
index 0000000..e751514
@@ -12905,7 +13079,7 @@ index bffe6d7..cec5f62 100644
panic("Cannot allocate SWIOTLB overflow buffer!\n");
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index ad7cd1c..1e1ba56 100644
+index caa9268..1f29611 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -566,6 +566,13 @@ static void __free_pages_ok(struct page *page, unsigned int order)
--- linux-2.6-dmadebug-spinlock.patch DELETED ---
--- patch-2.6.31-rc2-git4.bz2.sign DELETED ---
--- patch-2.6.31-rc2.bz2.sign DELETED ---
- Previous message (by thread): rpms/trac-mercurial-plugin/F-11 import.log, NONE, 1.1 sources, 1.3, 1.4 trac-mercurial-plugin.spec, 1.6, 1.7
- Next message (by thread): rpms/trac-mercurial-plugin/F-10 .cvsignore, 1.2, 1.3 sources, 1.2, 1.3 trac-mercurial-plugin.spec, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list