summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/char/agp/generic.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/char/agp/generic.c b/drivers/char/agp/generic.c
index 4b50767b26ba..3f5a3366cf37 100644
--- a/drivers/char/agp/generic.c
+++ b/drivers/char/agp/generic.c
@@ -270,13 +270,15 @@ EXPORT_SYMBOL_GPL(agp_num_entries);
int agp_copy_info(agp_kern_info * info)
{
memset(info, 0, sizeof(agp_kern_info));
- info->chipset = agp_bridge->type;
-
- if (agp_bridge->type == NOT_SUPPORTED)
+ if (!agp_bridge || agp_bridge->type == NOT_SUPPORTED ||
+ !agp_bridge->version) {
+ info->chipset = NOT_SUPPORTED;
return -EIO;
+ }
info->version.major = agp_bridge->version->major;
info->version.minor = agp_bridge->version->minor;
+ info->chipset = agp_bridge->type;
info->device = agp_bridge->dev;
info->mode = agp_bridge->mode;
info->aper_base = agp_bridge->gart_bus_addr;