Files
linux/drivers/char
Bjorn Helgaas 8bb98f7cae agp/hp: fixup hp agp after ACPI changes
commit 67fe63b071 upstream.

Commit 15b8dd53f5 changed the string in info->hardware_id from a static
array to a pointer and added a length field.  But instead of changing
"sizeof(array)" to "length", we changed it to "sizeof(length)" (== 4),
which corrupts the string we're trying to null-terminate.

We no longer even need to null-terminate the string, but we *do* need to
check whether we found a HID.  If there's no HID, we used to have an empty
array, but now we have a null pointer.

The combination of these defects causes this oops:

  Unable to handle kernel NULL pointer dereference (address 0000000000000003)
  modprobe[895]: Oops 8804682956800 [1]
  ip is at zx1_gart_probe+0xd0/0xcc0 [hp_agp]

  http://marc.info/?l=linux-ia64&m=126264484923647&w=2

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Reported-by: Émeric Maschino <emeric.maschino@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-04-26 07:41:32 -07:00
..
2009-06-11 08:51:01 -07:00
2009-10-04 15:05:10 -07:00
2009-09-24 07:21:03 -07:00
2009-09-22 07:17:42 -07:00
2009-07-12 12:22:34 -07:00
2005-04-16 15:20:36 -07:00
2008-06-20 14:05:55 -06:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2008-12-13 11:25:49 -08:00
2009-10-01 16:11:16 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2008-10-20 08:52:41 -07:00
2008-12-13 09:12:07 +00:00
2009-10-04 15:05:10 -07:00
2008-07-20 17:12:36 -07:00
2005-04-16 15:20:36 -07:00
2009-06-18 11:16:55 +10:00
2009-01-02 10:28:32 -08:00
2009-09-15 08:42:00 -07:00
2008-02-07 08:42:25 -08:00
2009-09-23 07:39:29 -07:00
2009-07-12 12:22:34 -07:00
2008-04-30 08:29:43 -07:00
2009-07-12 12:22:34 -07:00
2009-07-12 12:22:34 -07:00
2007-02-12 09:48:30 -08:00
2009-06-18 13:03:54 -07:00
2009-10-11 11:20:58 -07:00
2010-02-09 04:50:58 -08:00
2010-04-26 07:41:19 -07:00
2005-04-16 15:20:36 -07:00
2009-09-19 13:13:37 -07:00
2008-07-20 17:12:38 -07:00
2009-07-12 12:22:34 -07:00
2009-02-22 09:23:02 -08:00
2009-06-11 08:51:01 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2008-07-20 17:12:38 -07:00
2009-07-12 12:22:34 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2009-09-01 01:13:31 -07:00
2009-09-01 01:13:31 -07:00
2009-09-01 01:13:31 -07:00
2009-07-03 15:45:29 +01:00
2008-04-30 23:15:34 +02:00
2009-06-11 08:51:02 -07:00
2009-09-19 13:13:35 -07:00
2010-03-15 08:49:54 -07:00
2009-09-19 13:13:35 -07:00