Messages in this thread Patch in this message | | | Date | Thu, 12 Feb 2009 17:01:00 -0600 | From | David Engel <> | Subject | Re: Linux 2.6.27.16 |
| |
On Thu, Feb 12, 2009 at 10:04:48AM -0800, Greg KH wrote: > We (the -stable team) are announcing the release of the 2.6.27.16 > kernel. > > It contains a wide range of bugfixes, and all users of the 2.6.27 kernel > series are strongly encouraged to upgrade.
I get the following oops when starting hald on my Sony VAIO SZ360.
Starting Hardware abstraction layer: haldBUG: unable to handle kernel NULL pointer dereference at 00000000 IP: [<c0220048>] show_docked+0xe/0x37 *pde = 00000000 Oops: 0000 [#2] SMP Modules linked in: autofs4 acpi_cpufreq cpufreq_conservative cpufreq_userspace cpufreq_powersave cpufreq_ondemand cpufreq_stats freq_table btusb bluetooth usbhid pcmcia arc4 ecb crypto_blkcipher cryptomgr crypto_algapi snd_hda_intel snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device joydev i2c_i801 iwl3945 pcspkr rtc_cmos tifm_7xx1 mac80211 thermal yenta_socket snd sky2 ide_cd_mod rsrc_nonstatic i2c_core rtc_core ehci_hcd pcmcia_core tifm_core bitrev soundcore uhci_hcd sony_laptop cdrom psmouse ohci1394 rng_core rtc_lib snd_page_alloc crc32 ieee1394 usbcore evdev cfg80211 backlight battery ac processor button intel_agp agpgart unix
Pid: 2404, comm: hald Tainted: G D (2.6.27.16 #1) EIP: 0060:[<c0220048>] EFLAGS: 00010282 CPU: 0 EIP is at show_docked+0xe/0x37 EAX: 00000000 EBX: f6d93000 ECX: f6d93000 EDX: f6d99f38 ESI: c03af2fc EDI: c022003a EBP: f6cdb254 ESP: f6d99f38 DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 Process hald (pid: 2404, ti=f6d98000 task=f72c78d0 task.ti=f6d98000) Stack: fffffff4 fffffffb c0246cc1 c03b5600 f6cdb240 f781e7c8 c01b6507 40038000 00000003 00001000 40038000 c03b5600 f7854480 f7016940 40038000 c01b6480 00001000 c017836d f6d99fa0 f7bf2774 f7016940 fffffff7 00000000 f6d98000 Call Trace: [<c0246cc1>] dev_attr_show+0x21/0x50 [<c01b6507>] sysfs_read_file+0x87/0x120 [<c01b6480>] sysfs_read_file+0x0/0x120 [<c017836d>] vfs_read+0x9d/0x140 [<c01784e1>] sys_read+0x41/0x80 [<c01032ca>] syscall_call+0x7/0xb ======================= Code: fd ff 58 5a ba 02 00 00 00 8d 83 80 00 00 00 8d 4c 24 10 e8 bb f7 fc ff 83 c4 18 5b c3 53 89 cb 83 ec 04 8b 80 d8 00 00 00 89 e2 <8b> 00 8b 00 e8 77 d2 ff ff 85 c0 75 07 68 60 b1 37 c0 eb 05 68 EIP: [<c0220048>] show_docked+0xe/0x37 SS:ESP 0068:f6d99f38 ---[ end trace abcf04f7c3ef131b ]---
The following change is the part which causes it.
> diff --git a/drivers/acpi/dock.c b/drivers/acpi/dock.c > index e28469e..eab790f 100644 > --- a/drivers/acpi/dock.c > +++ b/drivers/acpi/dock.c > @@ -691,8 +691,14 @@ fdd_out: > static ssize_t show_docked(struct device *dev, > struct device_attribute *attr, char *buf) > { > - return snprintf(buf, PAGE_SIZE, "%d\n", dock_present(dock_station)); > + struct acpi_device *tmp; > + > + struct dock_station *dock_station = *((struct dock_station **) > + dev->platform_data); > > + if (ACPI_SUCCESS(acpi_bus_get_device(dock_station->handle, &tmp))) > + return snprintf(buf, PAGE_SIZE, "1\n"); > + return snprintf(buf, PAGE_SIZE, "0\n"); > } > static DEVICE_ATTR(docked, S_IRUGO, show_docked, NULL);
It seems that dev->platform_data is NULL on my system.
David -- David Engel david@istwok.net
| |