In the unlikely case that pci_find_bus() should return NULL viacam_serial_is_enabled() is going to dereference a NULL pointer and blow up. Better safe than sorry, so be defensive and check the pointer.
Unified · Split
| @@ -1332,6 +1332,8 @@ static __devinit bool viacam_serial_is_enabled(void) · 1331 unmodified lines | |||
| 1332 | struct pci_bus *pbus = pci_find_bus(0, 0); | 1332 | struct pci_bus *pbus = pci_find_bus(0, 0); |
| 1333 | u8 cbyte; | 1333 | u8 cbyte; |
| 1334 | 1334 | ||
| 1335 | if (!pbus) | ||
| 1336 | return false; | ||
| 1335 | pci_bus_read_config_byte(pbus, VIACAM_SERIAL_DEVFN, | 1337 | pci_bus_read_config_byte(pbus, VIACAM_SERIAL_DEVFN, |
| 1336 | VIACAM_SERIAL_CREG, &cbyte); | 1338 | VIACAM_SERIAL_CREG, &cbyte); |
| 1337 | if ((cbyte & VIACAM_SERIAL_BIT) == 0) | 1339 | if ((cbyte & VIACAM_SERIAL_BIT) == 0) |