patch-2.1.23 linux/arch/alpha/kernel/bios32.c
Next file: linux/arch/alpha/kernel/entry.S
Previous file: linux/arch/alpha/kernel/alpha_ksyms.c
Back to the patch index
Back to the overall index
-  Lines: 41
-  Date:
Sun Jan 26 12:07:03 1997
-  Orig file: 
v2.1.22/linux/arch/alpha/kernel/bios32.c
-  Orig date: 
Thu Dec 12 17:02:40 1996
diff -u --recursive --new-file v2.1.22/linux/arch/alpha/kernel/bios32.c linux/arch/alpha/kernel/bios32.c
@@ -24,6 +24,8 @@
  * within the United States, $35 abroad.
  */
 #include <linux/config.h>
+#include <linux/smp.h>
+#include <linux/smp_lock.h>
 
 #if 0
 # define DBG_DEVS(args)		printk args
@@ -1217,6 +1219,7 @@
 	unsigned int uint;
 	long err = 0;
 
+	lock_kernel();
 	switch (len) {
 	    case 1:
 		err = pcibios_read_config_byte(bus, dfn, off, &ubyte);
@@ -1240,6 +1243,7 @@
 		err = -EINVAL;
 		break;
 	}
+	unlock_kernel();
 	return err;
 }
 asmlinkage int sys_pciconfig_write(
@@ -1254,6 +1258,7 @@
 	unsigned int uint;
 	long err = 0;
 
+	lock_kernel();
 	switch (len) {
 	    case 1:
 		err = get_user(ubyte, buf);
@@ -1286,6 +1291,7 @@
 		err = -EINVAL;
 		break;
 	}
+	unlock_kernel();
 	return err;
 }
 
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov