Re: Regression (gdm no longer shuts down) - 2.4.24.x and 2.6.25



On Wed, 26 Mar 2008 17:37:01 +0000, Ken Moffat wrote:
On Wed, Mar 26, 2008 at 04:19:34PM +0100, Jean Delvare wrote:
Hi Ken,

On Tue, 25 Mar 2008 20:07:14 +0000, Ken Moffat wrote:
Hi,

on one of my boxes, I've got a problem with gdm and kernels newer
than 2.6.24 (tested on 2.6.24.2, 2.6.24.4). If I try to restart or
shut down from gdm, the window disappears but the X background remains
and the box stays in runlevel 5 until I switch to a tty and shut it
down (as root) or give it a 3-fingered salute to reboot.

I have to admit that I am very skeptical. The i2c-viapro driver deals
with the motherboard's SMBus. It's not related in any way to gdm nor
drm, so I just can't see how it could cause the problem you report.
What gave you the idea to try unloading this driver?

Your skepticism seems reasonable. I tried this after I went back
to the "bad" 2.6.24.4 (to see if there was anything in the X log)
only to discover it was now shutting sown ok. I knew I had
forgotten to change the extraversion when I reverted the patch, so
I figured it must be something in the modules (i.e. the good ones
overwrote the bad ones - dunno if they all load or not).

The fact is that there is no i2c-viapro change in 2.6.24.2 nor .4, and
in fact no i2c change at all. So if anything changed in this driver,
this has to be a side effect of some (non-i2c) header file change.
That's a long shot, though.


After going back to 2.6.24.2 where I'd first seen this, I had a
look at what was loaded - only r8169, w83627hf with hwmon_vid, and
i2c_viapro. I tried hwmon_vid and w83627hf but it didn't help.
Then I tried i2c_viapro and it seemed to fix it.

Did you try unloading r8169 instead? It's certainly less easy to test,
but I think it's worth a try. The only thing that unloading i2c-viapro
really does is unbinding a PCI device and removing a PCI driver. So, if
for some reason shaking the PCI bits solves your problem, then maybe
unloading r8169 would have the same effect.

You could also try reloading i2c-viapro after unloading it. I wonder if
your problem will be back or not. (Not that I would be able to come up
to any conclusion either way...)


Do you have I2C or SMBus devices connected to the SMBus on that machine?
If you don't know, i2cdetect should tell.

After modprobing i2c-dev I get
root@bluesbreaker /home/ken #i2cdetect -l
i2c-0 i2c monid I2C
adapter
i2c-1 i2c dvi I2C
adapter
i2c-2 i2c vga I2C
adapter
i2c-3 i2c crt2 I2C
adapter
i2c-4 smbus SMBus Via Pro adapter at 0400
SMBus adapter
[ nothing shows on 1 ]
root@bluesbreaker /home/ken #i2cdetect 2
WARNING! This program can confuse your I2C bus, cause data loss and
worse!
I will probe file /dev/i2c-2.
I will probe address range 0x03-0x77.
Continue? [Y/n]
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

Totally unrelated, but FYI: the chip at 0x50 is an EDID EEPROM in your
display (which the radeonfb driver can use to switch to the correct
resolution / refresh rate.)

[ othing shows on 3 ]

Just in case... You might want to check that the problem is still
present with the radeonfb driver not built into your kernel (and
not loaded as a module either). Framebuffer drivers and X can fight
for resources sometimes.

root@bluesbreaker /home/ken #i2cdetect 4
WARNING! This program can confuse your I2C bus, cause data loss and
worse!
I will probe file /dev/i2c-4.
I will probe address range 0x03-0x77.
Continue? [Y/n]
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 2f
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 51 -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- 69 -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

OK... 0x50 and 0x51 are the SPD EEPROMs on your two memory modules. At
0x69 you have a clock chip. At 0x2f... maybe a hardware monitoring
chip, maybe something else. But more importantly, no driver attached to
any of these chips. So, the mysterious effect of unloading the
i2c-viapro driver can't be explained by an i2c chip driver detaching
from its device. So, again, I really can't see how i2c can be involved
in your problem.

Good luck,
--
Jean Delvare
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: how hot is my xeon?
    ... What does the 'sensors' command show? ... We are now going to do the I2C/SMBus adapter probings. ... (confidence 8, driver `eeprom') ... Found unknown chip with ID 0xf211 ...
    (Debian-User)
  • RE: LAN91C and XSCALE
    ... :ERROR--Invalid Lan Chip and Driver Combination. ... :Adapter Failed to Verify! ... I am comfident that the chip ID will read as "9" because I do so in my ... exactly is the difference between the NdisRawWrite and ReadPorts, ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Cambridge GPS NAV Model 20 Recorder and a USB only Computer?
    ... I just went through the exercise of finding a "good" USB to serial ... I also discovered that the Belken adapter is ... Larry recommended USB to serial adapters that use the Prolific chip, ... apparently the driver situation is not settled for Vista yet. ...
    (rec.aviation.soaring)
  • Re: Loading Unloading NDIS Intermediate Dirver
    ... driver inserts itself between an underlying adapter and a protocol driver, the underlying adapter continues to exist so its name is still in use.Thus the intermediate driver must create a new adapter name. ... the unloading of an intermediate driver must be done through a custom method. ... What causes the unload handler from a protocol driver to get called and subsequently the DLL released from memory? ...
    (microsoft.public.windowsce.platbuilder)
  • Re: LAN91C and XSCALE
    ... The driver tries to write the bank select register on the chip (read the ... :Adapter Failed to Verify! ...
    (microsoft.public.windowsce.platbuilder)