mirror of
https://github.com/lm-sensors/lm-sensors.git
synced 2026-11-06 15:51:34 +00:00
as99127F detection problems are hopefully fixed.
Deleted problems related to very old kernels. git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2861 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
1 parent
32cc706dd6
commit
b18efe8c19
1 file changed
-69
@@ -25,11 +25,6 @@ Please do not send mail to the author or the sensors group asking for
|
||||
a datasheet or ideas on how to convince Asus.
|
||||
See doc/chips/w83781d for more information.
|
||||
|
||||
Also, many as99127f chips are misidentified as w83781d or w83782d chips.
|
||||
If so, you can fix this by forcing the driver:
|
||||
modprobe w83781d force_as99127f=BUS,0x2d where BUS is your bus number
|
||||
(cat /proc/bus/i2c to identify your bus number).
|
||||
|
||||
================================
|
||||
i2c/smbus lockup (i2c-piix4 and i2c-ali15x3 drivers)
|
||||
|
||||
@@ -90,67 +85,3 @@ Rmmod'ing a bus driver when the /proc directory for a chip
|
||||
driver on that bus is in use may cause a kernel oops, because
|
||||
the chip driver gets removed too. See ticket #331 for details.
|
||||
Not likely to happen. No obvious way to fix.
|
||||
|
||||
|
||||
============================================================================
|
||||
Following are old problems with older kernels.
|
||||
|
||||
|
||||
Pre-2.1.58 /proc directory Oops
|
||||
===============================
|
||||
|
||||
There is a problem in pre 2.1.58 kernels that can make the kernel Oops. You
|
||||
can trigger this Oops if you have opened any file, or are in any directory,
|
||||
created by a module. If you remove the module at such a moment, successive
|
||||
access to those files or directories will make the kernel complain through
|
||||
an Oops. There is really no good way to solve this. Stock kernel modules
|
||||
exhibit the same problem, by the way. Kernels from 2.1.58 onwards have new
|
||||
fill_inode() semantics; using this function, we can increase the module use
|
||||
count while a module file or directory is accessed. This solves the problem,
|
||||
because it makes it impossible to remove the module.
|
||||
Alan Cox (alan@lxorguk.ukuu.org.uk), the maintainer of 2.0 kernels, has
|
||||
said he will consider patches that backport this 2.1 feature; perhaps it
|
||||
will be in 2.0.37. Until then, be careful when you unload modules.
|
||||
|
||||
|
||||
2.2.x cdrom.o Oops
|
||||
==================
|
||||
|
||||
Module cdrom.o in all 2.2 kernels conflicts with our sensors.o module.
|
||||
You can get an Oops if cdrom.o is unloaded after sensors.o was loaded.
|
||||
Below is a small diff that you can apply to the kernel to correct this.
|
||||
Another solution is to make sure cdrom.o is never unloaded, or to make
|
||||
sure it is not a module but compiled into the kernel proper.
|
||||
|
||||
The diff corrects a long-standing /proc bug. It will go into kernel 2.2.2
|
||||
or later in a somewhat modified form. It was written by Jens Axboe
|
||||
<axboe@image.dk>.
|
||||
|
||||
-----cut here-----
|
||||
--- virgin/kernel/sysctl.c Sat Jan 9 07:54:16 1999
|
||||
+++ linux/kernel/sysctl.c Mon Feb 1 23:44:58 1999
|
||||
@@ -559,12 +559,12 @@
|
||||
unregister_proc_table(table->child, de);
|
||||
}
|
||||
/* Don't unregister proc directories which still have
|
||||
- entries... */
|
||||
- if (!((de->mode & S_IFDIR) && de->subdir)) {
|
||||
+ entries or are still being used... */
|
||||
+ if (!((de->mode & S_IFDIR) && de->subdir) && !de->count)
|
||||
{
|
||||
proc_unregister(root, de->low_ino);
|
||||
table->de = NULL;
|
||||
kfree(de);
|
||||
- }
|
||||
+ }
|
||||
}
|
||||
}
|
||||
-----cut here-----
|
||||
|
||||
|
||||
Kernel i2c conflict
|
||||
===================
|
||||
|
||||
An older version of the i2c modules is distributed in 2.2 and late 2.1
|
||||
kernels. If you try to use it at the same moment as our i2c modules, you
|
||||
may get into trouble. This should be fixed for lm_sensors-2.4.0 and newer.
|
||||
Reference in new issue
Block a user