|
@@ -521,7 +521,8 @@ static ssize_t driver_override_store(struct device *dev,
|
|
|
struct pci_dev *pdev = to_pci_dev(dev);
|
|
|
char *driver_override, *old = pdev->driver_override, *cp;
|
|
|
|
|
|
- if (count > PATH_MAX)
|
|
|
+ /* We need to keep extra room for a newline */
|
|
|
+ if (count >= (PAGE_SIZE - 1))
|
|
|
return -EINVAL;
|
|
|
|
|
|
driver_override = kstrndup(buf, count, GFP_KERNEL);
|
|
@@ -549,7 +550,7 @@ static ssize_t driver_override_show(struct device *dev,
|
|
|
{
|
|
|
struct pci_dev *pdev = to_pci_dev(dev);
|
|
|
|
|
|
- return sprintf(buf, "%s\n", pdev->driver_override);
|
|
|
+ return snprintf(buf, PAGE_SIZE, "%s\n", pdev->driver_override);
|
|
|
}
|
|
|
static DEVICE_ATTR_RW(driver_override);
|
|
|
|