]> err.no Git - linux-2.6/blobdiff - arch/x86/kernel/tlb_uv.c
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6] / arch / x86 / kernel / tlb_uv.c
index 7bdbf67a2d797d6de782aab761b2c0ae4447f1ef..8b8c0d6640fa9ba9ca7da73fac2cb4ee52e7be26 100644 (file)
@@ -17,6 +17,7 @@
 #include <asm/genapic.h>
 #include <asm/idle.h>
 #include <asm/tsc.h>
+#include <asm/irq_vectors.h>
 
 #include <mach_apic.h>
 
@@ -492,6 +493,8 @@ static ssize_t uv_ptc_proc_write(struct file *file, const char __user *user,
        long newmode;
        char optstr[64];
 
+       if (count == 0 || count > sizeof(optstr))
+               return -EINVAL;
        if (copy_from_user(optstr, user, count))
                return -EFAULT;
        optstr[count - 1] = '\0';
@@ -609,7 +612,7 @@ static struct bau_control * __init uv_table_bases_init(int blade, int node)
 
        uv_bau_table_bases[blade] = bau_tabp;
 
-       return bau_tabsp;
+       return bau_tabp;
 }
 
 /*
@@ -781,7 +784,7 @@ static int __init uv_bau_init(void)
                uv_init_blade(blade, node, cur_cpu);
                cur_cpu += uv_blade_nr_possible_cpus(blade);
        }
-       set_intr_gate(UV_BAU_MESSAGE, uv_bau_message_intr1);
+       alloc_intr_gate(UV_BAU_MESSAGE, uv_bau_message_intr1);
        uv_enable_timeouts();
 
        return 0;