lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 5 Nov 2010 09:58:01 -0700
From:	Guenter Roeck <guenter.roeck@...csson.com>
To:	Randy Dunlap <randy.dunlap@...cle.com>
CC:	Jean Delvare <khali@...ux-fr.org>,
	lkml <linux-kernel@...r.kernel.org>,
	"lm-sensors@...sensors.org" <lm-sensors@...sensors.org>
Subject: Re: [lm-sensors] hwmon/adt7470 crash on module load (2.6.37-rc1)

On Fri, 2010-11-05 at 12:21 -0400, Randy Dunlap wrote:
> On Fri, 5 Nov 2010 16:17:41 +0100 Jean Delvare wrote:
> 
> > Hi Randy,
> > 
> > On Fri, 05 Nov 2010 07:45:19 -0700, Randy Dunlap wrote:
> > > On 11/05/10 01:42, Jean Delvare wrote:
> > > > Hi Randy,
> > > > 
> > > > On Thu, 4 Nov 2010 17:09:29 -0700, Randy Dunlap wrote:
> > > >> Nov  4 15:56:17 control kernel: [  173.105754] calling  adt7470_init+0x0/0x27 [adt7470] @ 4392
> > > >> Nov  4 15:56:18 [  173.113711] i2c-core: driver [adt7470] registered
> > > >> control kernel: [  173.122202] i2c i2c-15: found normal entry for adapter 15, addr 0x2c
> > > >> [  173.105754] c[  173.136181] i801_smbus 0000:00:1f.3: No response
> > > >> [  173.142478] i2c i2c-15: found normal entry for adapter 15, addr 0x2e
> > > >> Nov  4 15:56:18 [  173.151286] general protection fault: 0000 [#1] SMP DEBUG_PAGEALLOC
> > > > 
> > > > Do you have a device at address 0x2e on this I2C adapter, or not?
> > > 
> > > AFAIK I don't even have an I2C adapter.  or is there one in the intel chipset?
> > 
> > The "i2c-15" above suggests that you have at least 16 I2C adapters on
> > your system. There are many such adapters in graphics cards, TV cards
> > (both analog and digital) and on the mainboard as well. You can get a
> > list with:
> > 
> > # modprobe i2c-dev
> > # i2cdetect -l
> > 
> > But given the problem you've just reported, I expect the above command
> > to crash on 2.6.37-rc1. You could try it on 2.6.36 to at least give me a
> > rough idea of what I2C adapters are available on your system. This
> > would help me understand what's happening.
> > 
> > Do you have any DVB adapter in this machine?
> 
> Nope.
> 
> > > > Are you using the adt7470 driver on this system normally, or did you
> > > > build it in just for random testing purpose?
> > > 
> > > It's just random module testing.
> > > 
> > > >> [  173.156502] last sysfs file: /sys/module/hwmon/initstate
> > > >> [  173.156502] CPU 1 
> > > >> [  173.156502] Modules linked in: adt7470(+) ipt_MASQUERADE iptable_nat nf_nat af_packet nfsd lockd nfs_acl auth_rpcgss exportfs sco bridge stp llc bnep l2cap crc16 bluetooth rfkill sunrpc ipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables ip6t_REJECT xt_tcpudp nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables x_tables ipv6 p4_clockmod freq_table speedstep_lib binfmt_misc dm_mirror dm_region_hash dm_log dm_multipath scsi_dh dm_mod kvm uinput mousedev joydev ppdev snd_intel8x0 snd_ac97_codec ac97_bus snd_seq snd_seq_device snd_pcm usbkbd snd_timer led_class usbmouse usbhid hid iTCO_wdt snd dcdbas iTCO_vendor_support sg sr_mod pcspkr i2c_i801 soundcore rtc_cmos cdrom parport_pc rng_core snd_page_alloc rtc_core tg3 rtc_lib parport 8250_pnp evdev mac_hid shpchp pci_hotplug unix ide_pci_generic ide_core ata_generic pata_acpi ata_piix sd_mod crc_t10dif ext3 jbd mbcache uhci_hcd ohci_hcd ssb mmc_core pcmcia pcmcia_core firm!
 wa!
>  re_cl
> > > >>  ass ehci_hcd usbcore nls_base i915 drm_kms_helper intel_agp button intel_gtt video thermal_sys hwmon output [last unloaded: ltc4245]
> > > >> [  173.156502] 
> > > >> [  173.156502] Pid: 22, comm: kworker/1:1 Not tainted 2.6.37-rc1 #12 0HH807/OptiPlex GX620               
> > > >> [  173.156502] RIP: 0010:[<ffffffff813ea532>]  [<ffffffff813ea532>] check_modem_status+0xe7/0x29c
> > > > 
> > > > Several drivers have a function named check_modem_status(), but adt7470 is
> > > > not one of them. I'm curious how we can get there if the crash is in
> > > > driver adt7470. Stack corruption maybe?
> > > > 
> > > >> [  173.308056] RSP: 0018:ffff88007c803e18  EFLAGS: 00010006
> > > >> [  173.308056] RAX: 6b6b6b6b6b6b6b6b RBX: ffffffff82a55400 RCX: 0000000000000100
> > > >> [  173.308056] RDX: 00000000260b260a RSI: 0000000000000028 RDI: 0000000000000006
> > > >> [  173.308056] RBP: ffff88007c803e58 R08: 0000000000000006 R09: 395099858027a0e6
> > > >>
> > > >> <locked up tight here>
> > > > 
> > > > Can we see the kernel config you're running?
> > > 
> > > Sure, it's attached.  It's close to allmodconfig, with a few kconfig
> > > options changed to =y instead of =m and some others (like debug and self-tests)
> > > disabled.
> > 
> > OK. I'll try this config on my system and see if I can reproduce your
> > problem. Likely not before tomorrow though, as I have more urgent
> > issues to deal with right now.
> 
> Ack.  However, I can't reproduce the problem today, so maybe you should
> go slowly on it.  Or maybe the problem is actually somewhere else
> (like you hinted at).
> 
> I'll test it some more.
> 
> | Actually, the following command on 2.6.37-rc1 should work and answer my
> | question:
> | 
> | $ grep . /sys/bus/i2c/devices/i2c-*/name
> 
> /sys/bus/i2c/devices/i2c-0/name:gmbus disabled
> /sys/bus/i2c/devices/i2c-10/name:GPIOE
> /sys/bus/i2c/devices/i2c-11/name:gmbus reserveddpd
> /sys/bus/i2c/devices/i2c-12/name:GPIOF
> /sys/bus/i2c/devices/i2c-13/name:gmbus (null)
> /sys/bus/i2c/devices/i2c-14/name:GPIO?

The above two lines look a bit fishy to me.

Wonder if 7b5337ddbaf7e4b71ef6fd6307c6f9ef84f636e9 or one of the other
recent changes in drivers/gpu/drm/i915/intel_i2c.c caused some havoc.

Guenter

> /sys/bus/i2c/devices/i2c-15/name:SMBus I801 adapter at e8a0
> /sys/bus/i2c/devices/i2c-1/name:gmbus ssc
> /sys/bus/i2c/devices/i2c-2/name:GPIOB
> /sys/bus/i2c/devices/i2c-3/name:gmbus vga
> /sys/bus/i2c/devices/i2c-4/name:GPIOA
> /sys/bus/i2c/devices/i2c-5/name:gmbus panel
> /sys/bus/i2c/devices/i2c-6/name:GPIOC
> /sys/bus/i2c/devices/i2c-7/name:gmbus dpc
> /sys/bus/i2c/devices/i2c-8/name:GPIOD
> /sys/bus/i2c/devices/i2c-9/name:gmbus dpb
> 
> 
> And the i2c registration sanity check patch didn't catch any problems.
> 
> ---
> ~Randy
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
> 
> _______________________________________________
> lm-sensors mailing list
> lm-sensors@...sensors.org
> http://lists.lm-sensors.org/mailman/listinfo/lm-sensors


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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ