git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 1.9.5.x5
[linux-2.6.git]
/
drivers
/
pnp
/
pnpbios
/
core.c
diff --git
a/drivers/pnp/pnpbios/core.c
b/drivers/pnp/pnpbios/core.c
index
1a2fe19
..
0d1736c
100644
(file)
--- a/
drivers/pnp/pnpbios/core.c
+++ b/
drivers/pnp/pnpbios/core.c
@@
-56,10
+56,12
@@
#include <linux/mm.h>
#include <linux/smp.h>
#include <linux/slab.h>
#include <linux/mm.h>
#include <linux/smp.h>
#include <linux/slab.h>
-#include <linux/k
mod
.h>
+#include <linux/k
object_uevent
.h>
#include <linux/completion.h>
#include <linux/spinlock.h>
#include <linux/dmi.h>
#include <linux/completion.h>
#include <linux/spinlock.h>
#include <linux/dmi.h>
+#include <linux/delay.h>
+#include <linux/acpi.h>
#include <asm/page.h>
#include <asm/desc.h>
#include <asm/page.h>
#include <asm/desc.h>
@@
-177,8
+179,7
@@
static int pnp_dock_thread(void * unused)
/*
* Poll every 2 seconds
*/
/*
* Poll every 2 seconds
*/
- set_current_state(TASK_INTERRUPTIBLE);
- schedule_timeout(HZ*2);
+ msleep_interruptible(2000);
if(signal_pending(current))
break;
if(signal_pending(current))
break;
@@
-538,6
+539,14
@@
int __init pnpbios_init(void)
return -ENODEV;
}
return -ENODEV;
}
+#ifdef CONFIG_PNPACPI
+ if (!acpi_disabled && !pnpacpi_disabled) {
+ pnpbios_disabled = 1;
+ printk(KERN_INFO "PnPBIOS: Disabled by ACPI PNP\n");
+ return -ENODEV;
+ }
+#endif /* CONFIG_ACPI */
+
/* scan the system for pnpbios support */
if (!pnpbios_probe_system())
return -ENODEV;
/* scan the system for pnpbios support */
if (!pnpbios_probe_system())
return -ENODEV;
@@
-574,6
+583,8
@@
subsys_initcall(pnpbios_init);
static int __init pnpbios_thread_init(void)
{
static int __init pnpbios_thread_init(void)
{
+ if (pnpbios_disabled)
+ return 0;
#ifdef CONFIG_HOTPLUG
init_completion(&unload_sem);
if (kernel_thread(pnp_dock_thread, NULL, CLONE_KERNEL) > 0)
#ifdef CONFIG_HOTPLUG
init_completion(&unload_sem);
if (kernel_thread(pnp_dock_thread, NULL, CLONE_KERNEL) > 0)