(In reply to Takashi Iwai from comment #3) > (In reply to Nicolas Patricio Saenz Julienne from comment #2) > > I'm curious to know why is the i2c-device being removed. > > It's from psmouse_smbus_disconnect(). > > And this sounds like a known problem, according to the comments in > psmouse_smbus_schedule_remove(): > > /* > * This schedules removal of SMBus companion device. We have to do > * it in a separate tread to avoid deadlocking on psmouse_mutex in > * case the device has a trackstick (which is also driven by psmouse). > * > * Note that this may be racing with i2c adapter removal, but we > * can't do anything about that: i2c automatically destroys clients > * attached to an adapter that is being removed. This has to be > * fixed in i2c core. > */ Fair enough, but the removal happens on resume time, which I found kind of strange.