aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/pci
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@FreeBSD.org>2006-10-06 14:31:32 +0000
committerRuslan Ermilov <ru@FreeBSD.org>2006-10-06 14:31:32 +0000
commit40ed3f472a75d51bd487954ba2cd54e3c2e3ef6f (patch)
tree8d9646f068ef56d1f34de2ab4e79b7d87092d6b2 /sys/dev/pci
parent6c93a5ae8e1c0f2335a5e71915d5ff31cd10b6fb (diff)
Notes
Diffstat (limited to 'sys/dev/pci')
-rw-r--r--sys/dev/pci/pci_user.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/sys/dev/pci/pci_user.c b/sys/dev/pci/pci_user.c
index 6122ba576733..469dc40afcd2 100644
--- a/sys/dev/pci/pci_user.c
+++ b/sys/dev/pci/pci_user.c
@@ -374,12 +374,14 @@ getconfexit:
case 4:
case 2:
case 1:
- /* make sure register is in bounds and aligned */
- if (cmd == PCIOCREAD || cmd == PCIOCWRITE)
- if (io->pi_reg < 0 ||
- io->pi_reg + io->pi_width > PCI_REGMAX ||
- io->pi_reg & (io->pi_width - 1))
- error = EINVAL;
+ /* Make sure register is in bounds and aligned. */
+ if ((cmd == PCIOCREAD || cmd == PCIOCWRITE) &&
+ (io->pi_reg < 0 ||
+ io->pi_reg + io->pi_width > PCI_REGMAX + 1 ||
+ io->pi_reg & (io->pi_width - 1))) {
+ error = EINVAL;
+ break;
+ }
/*
* Assume that the user-level bus number is
* in fact the physical PCI bus number.