Skip to contentSkip to conversation

uv/x2apic: update for change in pci bridge handling.

PATCH In review Dave Airlie 4 participants 6 messages May 25, 2011 – Jun 9, 2011

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 uv/x2apic: update for change in pci bridge handling.

From: Dave Airlie <[email protected]>

I forgot about the special uv handling code for this, so this patch fixes it up.

---
 arch/x86/kernel/apic/x2apic_uv_x.c |    8 ++++----
 drivers/pci/pci.c                  |    4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)
arch/x86/kernel/apic/x2apic_uv_x.c +4 -4
index 33b10a0..185cd1e 100644
@@ -599,14 +599,14 @@ late_initcall(uv_init_heartbeat);
 
 /* Direct Legacy VGA I/O traffic to designated IOH */
 int uv_set_vga_state(struct pci_dev *pdev, bool decode,
-		      unsigned int command_bits, bool change_bridge)
+		      unsigned int command_bits, u32 flags)
 {
 	int domain, bus, rc;
 
-	PR_DEVEL("devfn %x decode %d cmd %x chg_brdg %d\n",
-			pdev->devfn, decode, command_bits, change_bridge);
+	PR_DEVEL("devfn %x decode %d cmd %x flags %d\n",
+			pdev->devfn, decode, command_bits, flags);
 
-	if (!change_bridge)
+	if (!(flags & PCI_VGA_STATE_CHANGE_BRIDGE))
 		return 0;
 
 	if ((command_bits & PCI_COMMAND_IO) == 0)
drivers/pci/pci.c +2 -2
index a339237..4528ee7 100644
@@ -2862,11 +2862,11 @@ void __init pci_register_set_vga_state(arch_set_vga_state_t func)
 }
 
 static int pci_set_vga_state_arch(struct pci_dev *dev, bool decode,
-		      unsigned int command_bits, bool change_bridge)
+		      unsigned int command_bits, u32 flags)
 {
 	if (arch_set_vga_state)
 		return arch_set_vga_state(dev, decode, command_bits,
-						change_bridge);
+						flags);
 	return 0;
 }
 
Signature · 1 line
1.7.1
#1 lore raw
Quoted 4 lines · Dave Airlie

From: Dave Airlie <[email protected]>

I forgot about the special uv handling code for this, so this patch fixes it up.

ping?

This fixes a warning and bug in Linus tree,

CC arch/x86/kernel/apic/x2apic_uv_x.o
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c: In function ‘uv_system_init’:
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c:882:2:
warning: passing argument 1 of ‘pci_register_set_vga_state’ from incompatible pointer type [enabled by default] /home/airlied/git/linux-2.6/include/linux/pci.h:1094:13: note:
expected ‘arch_set_vga_state_t’ but argument is of type ‘int (*)(struct pci_dev *, bool, unsigned int, bool)’

Dave.

Quoted 57 lines

---
 arch/x86/kernel/apic/x2apic_uv_x.c |    8 ++++---- drivers/pci/pci.c                  |    4 ++--

 2 files changed, 6 insertions(+), 6 deletions(-)
arch/x86/kernel/apic/x2apic_uv_x.c +4 -4
index 33b10a0..185cd1e 100644
@@ -599,14 +599,14 @@ late_initcall(uv_init_heartbeat);
 
  /* Direct Legacy VGA I/O traffic to designated IOH */
  int uv_set_vga_state(struct pci_dev *pdev, bool decode,
-                     unsigned int command_bits, bool change_bridge)
+                     unsigned int command_bits, u32 flags)
  {
        int domain, bus, rc;
 
-       PR_DEVEL("devfn %x decode %d cmd %x chg_brdg %d\n",
-                       pdev->devfn, decode, command_bits, change_bridge);
+       PR_DEVEL("devfn %x decode %d cmd %x flags %d\n",
+                       pdev->devfn, decode, command_bits, flags);
 
-       if (!change_bridge)
+       if (!(flags & PCI_VGA_STATE_CHANGE_BRIDGE))
                return 0;
 
        if ((command_bits & PCI_COMMAND_IO) == 0)
drivers/pci/pci.c +2 -3
index a339237..4528ee7 100644
@@ -2862,11 +2862,11 @@ void __init pci_register_set_vga_state(arch_set_vga_state_t func)
  }
 
  static int pci_set_vga_state_arch(struct pci_dev *dev, bool decode,
-                     unsigned int command_bits, bool change_bridge)
+                     unsigned int command_bits, u32 flags)
  {
        if (arch_set_vga_state)
                return arch_set_vga_state(dev, decode, command_bits,
-                                               change_bridge);
+                                               flags);
        return 0;
  }
 
--

1.7.1

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

#2 lore raw
Quoted 21 lines · Dave Airlie
Quoted 4 lines · Dave Airlie

From: Dave Airlie <[email protected]>

I forgot about the special uv handling code for this, so this patch fixes it up.

ping?

This fixes a warning and bug in Linus tree,

CC arch/x86/kernel/apic/x2apic_uv_x.o
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c: In function ‘uv_system_init’:
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c:882:2:
warning: passing argument 1 of ‘pci_register_set_vga_state’ from incompatible pointer type [enabled by default] /home/airlied/git/linux-2.6/include/linux/pci.h:1094:13: note:
expected ‘arch_set_vga_state_t’ but argument is of type ‘int (*)(struct pci_dev *, bool, unsigned int, bool)’

Quoted 8 lines

Dave.

Quoted 6 lines

---
 arch/x86/kernel/apic/x2apic_uv_x.c |    8 ++++---- drivers/pci/pci.c                  |    4 ++--

 2 files changed, 6 insertions(+), 6 deletions(-)

Bug introduced via the DRM tree? Then the fix should go via the DRM tree or via the PCI tree i suspect.

Thanks,

Ingo

#3 lore raw
Quoted 26 lines · Ingo Molnar
Quoted 24 lines · Dave Airlie
Quoted 4 lines · Dave Airlie

From: Dave Airlie <[email protected]>

I forgot about the special uv handling code for this, so this patch fixes it up.

ping?

This fixes a warning and bug in Linus tree,

CC arch/x86/kernel/apic/x2apic_uv_x.o
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c: In function ‘uv_system_init’:
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c:882:2:
warning: passing argument 1 of ‘pci_register_set_vga_state’ from incompatible pointer type [enabled by default] /home/airlied/git/linux-2.6/include/linux/pci.h:1094:13: note:
expected ‘arch_set_vga_state_t’ but argument is of type ‘int (*)(struct pci_dev *, bool, unsigned int, bool)’

Dave.

Quoted 1 line
Quoted 8 lines
Quoted 5 lines
Quoted 5 lines
---
 arch/x86/kernel/apic/x2apic_uv_x.c |    8 ++++----
 drivers/pci/pci.c                  |    4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

Bug introduced via the DRM tree? Then the fix should go via the DRM tree or via the PCI tree i suspect.

So I can take that as an ack for the x86 bit? :-)

I don't mind pushing it, just didn't want to step outside my box

Dave.

#4 lore raw
Quoted 33 lines · Dave Airlie
Quoted 32 lines · Ingo Molnar
Quoted 29 lines · Dave Airlie
Quoted 4 lines · Dave Airlie

From: Dave Airlie <[email protected]>

I forgot about the special uv handling code for this, so this patch fixes it up.

ping?

This fixes a warning and bug in Linus tree,

CC arch/x86/kernel/apic/x2apic_uv_x.o
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c: In function ‘uv_system_init’:
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c:882:2:
warning: passing argument 1 of ‘pci_register_set_vga_state’ from incompatible pointer type [enabled by default] /home/airlied/git/linux-2.6/include/linux/pci.h:1094:13: note:
expected ‘arch_set_vga_state_t’ but argument is of type ‘int (*)(struct pci_dev *, bool, unsigned int, bool)’

Dave.

Quoted 6 lines
---
 arch/x86/kernel/apic/x2apic_uv_x.c |    8 ++++----
 drivers/pci/pci.c                  |    4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)
Quoted 4 lines
Quoted 2 lines

Bug introduced via the DRM tree? Then the fix should go via the DRM tree or via the PCI tree i suspect.

So I can take that as an ack for the x86 bit? :-)

Sure thing, you always have my implicit ack for obvious bug fixes, especially if you were the one who broke things ;-)

[ I might criticise you if you do something ugly, but i generally do
that regardless of who maintains what. In any case, as long as you don't do ugly fixes you should always be safe from me! ;-) ]

Thanks,

Ingo

Acked-by
#5 lore raw
In reply to Dave Airlie
Quoted 60 lines · On Thu, 9 Jun 2011 13:43:52 +1000 Dave Airlie <[email protected]> wrote:
Quoted 4 lines · Dave Airlie

From: Dave Airlie <[email protected]>

I forgot about the special uv handling code for this, so this patch fixes it up.

ping?

This fixes a warning and bug in Linus tree,

CC arch/x86/kernel/apic/x2apic_uv_x.o
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c: In function ‘uv_system_init’:
/home/airlied/git/linux-2.6/arch/x86/kernel/apic/x2apic_uv_x.c:882:2:
warning: passing argument 1 of ‘pci_register_set_vga_state’ from incompatible pointer type [enabled by default] /home/airlied/git/linux-2.6/include/linux/pci.h:1094:13: note:
expected ‘arch_set_vga_state_t’ but argument is of type ‘int (*)(struct pci_dev *, bool, unsigned int, bool)’

Dave.

Quoted 37 lines

---
 arch/x86/kernel/apic/x2apic_uv_x.c |    8 ++++---- drivers/pci/pci.c                  |    4 ++--

 2 files changed, 6 insertions(+), 6 deletions(-)
arch/x86/kernel/apic/x2apic_uv_x.c +4 -4
index 33b10a0..185cd1e 100644
@@ -599,14 +599,14 @@ late_initcall(uv_init_heartbeat);
 
  /* Direct Legacy VGA I/O traffic to designated IOH */
  int uv_set_vga_state(struct pci_dev *pdev, bool decode,
-                     unsigned int command_bits, bool change_bridge)
+                     unsigned int command_bits, u32 flags)
  {
        int domain, bus, rc;
 
-       PR_DEVEL("devfn %x decode %d cmd %x chg_brdg %d\n",
-                       pdev->devfn, decode, command_bits, change_bridge);
+       PR_DEVEL("devfn %x decode %d cmd %x flags %d\n",
+                       pdev->devfn, decode, command_bits, flags);
 
-       if (!change_bridge)
+       if (!(flags & PCI_VGA_STATE_CHANGE_BRIDGE))
                return 0;
 
        if ((command_bits & PCI_COMMAND_IO) == 0)
drivers/pci/pci.c +0 -0
index a339237..4528ee7 100644
@@ -2862,11 +2862,11 @@ void __init pci_register_set_vga_state(arch_set_vga_state_t func)
  }
 
Quoted 10 lines

drivers/pci/pci.c void __init pci_register_set_vga_state(arch_set_vga_state_t func) · line 2871

Quoted 10 lines
drivers/pci/pci.c +2 -2
  static int pci_set_vga_state_arch(struct pci_dev *dev, bool decode,
-                     unsigned int command_bits, bool change_bridge)
+                     unsigned int command_bits, u32 flags)
  {
        if (arch_set_vga_state)
                return arch_set_vga_state(dev, decode, command_bits,
-                                               change_bridge);
+                                               flags);
        return 0;
  }

Yeah, this is fine with me, you can push it through your tree.

Signature · 1 line
Jesse Barnes, Intel Open Source Technology Center