summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci
diff options
context:
space:
mode:
authordavidxu <davidxu@FreeBSD.org>2012-12-26 13:07:17 +0000
committerdavidxu <davidxu@FreeBSD.org>2012-12-26 13:07:17 +0000
commit242aa47263470350ff677c0413de93a75842d34a (patch)
tree8c164ac7c4972935789600c64effb2d4478018df /sys/dev/pci
parent55e18ebdf3e07929f1a0c7d68309e1edb2c655be (diff)
downloadFreeBSD-src-242aa47263470350ff677c0413de93a75842d34a.zip
FreeBSD-src-242aa47263470350ff677c0413de93a75842d34a.tar.gz
Always initialize pattern_buf pointers to NULL, otherwise AMD64 machine
panics with: free: address xxx(yyy) has not been allocated. it can be triggered by hald.
Diffstat (limited to 'sys/dev/pci')
-rw-r--r--sys/dev/pci/pci_user.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/dev/pci/pci_user.c b/sys/dev/pci/pci_user.c
index b8756a6..a5b58c3 100644
--- a/sys/dev/pci/pci_user.c
+++ b/sys/dev/pci/pci_user.c
@@ -425,12 +425,12 @@ pci_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *t
#ifdef COMPAT_FREEBSD32
struct pci_conf_io32 *cio32 = NULL;
struct pci_conf_old32 conf_old32;
- struct pci_match_conf_old32 *pattern_buf_old32;
+ struct pci_match_conf_old32 *pattern_buf_old32 = NULL;
#endif
struct pci_conf_old conf_old;
struct pci_io iodata;
struct pci_io_old *io_old;
- struct pci_match_conf_old *pattern_buf_old;
+ struct pci_match_conf_old *pattern_buf_old = NULL;
io_old = NULL;
@@ -470,10 +470,8 @@ pci_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *t
#ifdef PRE7_COMPAT
#ifdef COMPAT_FREEBSD32
case PCIOCGETCONF_OLD32:
- pattern_buf_old32 = NULL;
#endif
case PCIOCGETCONF_OLD:
- pattern_buf_old = NULL;
#endif
case PCIOCGETCONF:
OpenPOWER on IntegriCloud