Bug 14293

Summary: strange messages in dmesg: i801_smbus: probe of 0000:00:1f.3 failed with error -16
Product: Drivers Reporter: Vladimir (snigurmd)
Component: I2CAssignee: Jean Delvare (jdelvare)
Status: RESOLVED CODE_FIX    
Severity: low CC: akpm, krah.tm, shane.huang
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.31.1 Subsystem:
Regression: No Bisected commit-id:
Attachments: kernel config
i2c: Hide probe errors cause by ACPI resource conflicts
i2c: Hide probe errors cause by ACPI resource conflicts (v2)

Description Vladimir 2009-10-01 19:53:08 UTC
Created attachment 23225 [details]
kernel config

Don't know whatever the hell it is.
System: mini-note Samsung NC10 with WiMAX (Intel WiFi/WiMAX 5150), Zenwalk linux.

such messages in system logs:
i801_smbus 0000:00:1f.3: PCI INT B -> GSI 19 (level, low) -> IRQ 19
ACPI: I/O resource 0000:00:1f.3 [0x18a0-0x18bf] conflicts with ACPI region SMBI [0x18a0-0x18af]
ACPI: Device needs an ACPI driver
i801_smbus: probe of 0000:00:1f.3 failed with error -16


modules loaded:

bnep                    5616  2 
rfcomm                 25216  8 
hidp                    8496  2 
l2cap                  16464  17 bnep,rfcomm,hidp
iwlagn                 62032  0 
iwlcore                68240  1 iwlagn
i2400m_usb             19888  0 
mac80211              102112  2 iwlagn,iwlcore
btusb                   7044  2 
i2400m                 62204  1 i2400m_usb
cfg80211               59600  3 iwlagn,iwlcore,mac80211
bluetooth              34628  9 bnep,rfcomm,hidp,l2cap,btusb
wimax                  15956  2 i2400m_usb,i2400m
i2c_i801                5920  0 
rfkill                  8324  3 cfg80211,bluetooth,wimax
Comment 1 Andrew Morton 2009-10-01 20:25:46 UTC
Reassigned to drivers/i2c.
Comment 2 Jean Delvare 2009-10-01 21:45:41 UTC
This is not a bug per se. Do you have any problem with this machine?
Comment 3 Jean Delvare 2009-10-02 14:18:29 UTC
Created attachment 23229 [details]
i2c: Hide probe errors cause by ACPI resource conflicts

Possible fix: be quieter on ACPI resource conflict.
Comment 4 Jean Delvare 2009-10-04 11:45:53 UTC
Created attachment 23256 [details]
i2c: Hide probe errors cause by ACPI resource conflicts (v2)
Comment 5 Jean Delvare 2009-10-17 08:45:41 UTC
Patch committed upstream:

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=18669eabde2ff5fc446e72e043f0539059763438

Scheduled for 2.6.31-stable as well.
Comment 6 Torsten Krah 2009-10-31 12:22:24 UTC
I've got the same problem.
Using 2.6.28.x is reads like this:

[   19.966966] i801_smbus 0000:00:1f.3: PCI INT B -> Link[LNKB] -> GSI 5 (level, low) -> IRQ 5
[   19.966974] ACPI: I/O resource 0000:00:1f.3 [0x1100-0x111f] conflicts with ACPI region SBUS [0x1100-0x110f]
[   19.966977] ACPI: Device needs an ACPI driver

My sensors on Samsung P35 did work (lm90 hwmon).


2.6.31 read this:

[   17.405744] i801_smbus 0000:00:1f.3: PCI INT B -> Link[LNKB] -> GSI 5 (level, low) -> IRQ 5
[   17.405751] ACPI: I/O resource 0000:00:1f.3 [0x1100-0x111f] conflicts with ACPI region SBUS [0x1100-0x110f]
[   17.405817] ACPI: If an ACPI driver is available for this device, you should use it instead of the native driver
[   17.405825] i801_smbus: probe of 0000:00:1f.3 failed with error -16


Now "sensors" does not return my lm90 detected ones like before - the failed -16 error is new too - so something is broken now.
Comment 7 Torsten Krah 2009-10-31 12:34:34 UTC
I would also add that this is a regression, because it did work on 2.6.28.
Comment 8 Jean Delvare 2009-10-31 13:35:33 UTC
Torsten, this is not a regression. This is a bug that has been fixed. You may not like the side effects of the fix, but we are not going to revert. If you want to put your machine at risk again, simply boot with acpi_enforce_resources=lax. But do not complain if your system is unstable or if your hardware dies from overheating. On laptops, it's much better to use ACPI for thermal management in general anyway. The lm90 driver won't give you much more than the standard ACPI thermal zone.
Comment 9 Jean Delvare 2009-10-31 13:36:25 UTC
Patch was included in stable kernel 2.6.31.5:

http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.31.y.git;a=commit;h=91be0e881d6abf1da9903c831d20954f2325ce3e

So this bug is fixed and can be closed.
Comment 10 Torsten Krah 2009-10-31 16:41:18 UTC
(In reply to comment #8)
> Torsten, this is not a regression. This is a bug that has been fixed. You may
> not like the side effects of the fix, but we are not going to revert. If you
> want to put your machine at risk again, simply boot with
> acpi_enforce_resources=lax. But do not complain if your system is unstable or
> if your hardware dies from overheating. On laptops, it's much better to use
> ACPI for thermal management in general anyway. The lm90 driver won't give you
> much more than the standard ACPI thermal zone.

Hm before i've got lm90 and the normal thermal zone, why its not possible now to get both anymore?
Its right that i don't see "more" - except the low and high stuff and m/b temp, but i wonder why its not possible to have both, like before - got thermal zone and smbus sensors?

lm90-i2c-0-4c
Adapter: SMBus I801 adapter at 1100
M/B Temp:    +42 C  (low  =   -65 C, high =  +127 C)
CPU Temp:  +42.9 C  (low  = +37.1 C, high = +67.2 C)
M/B Crit:   +112 C  (hyst =  +102 C)
CPU Crit:   +112 C  (hyst =  +102 C)
Comment 11 Jean Delvare 2009-10-31 17:23:14 UTC
Because accessing the same I/O ports from ACPI and native drivers at the same time is not safe.