Re: [PATCH v3 4/9] PCI/VGA: Improve the default VGA device selection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,


Thanks for you noticed my change.


On 2023/7/20 03:32, Bjorn Helgaas wrote:
@@ -1509,13 +1543,24 @@ static int pci_notify(struct notifier_block *nb, unsigned long action,
  	 * cases of hotplugable vga cards.
  	 */
- if (action == BUS_NOTIFY_ADD_DEVICE)
+	switch (action) {
+	case BUS_NOTIFY_ADD_DEVICE:
  		notify = vga_arbiter_add_pci_device(pdev);
-	else if (action == BUS_NOTIFY_DEL_DEVICE)
+		if (notify)
+			vga_arbiter_notify_clients();
+		break;
+	case BUS_NOTIFY_DEL_DEVICE:
  		notify = vga_arbiter_del_pci_device(pdev);
+		if (notify)
+			vga_arbiter_notify_clients();
+		break;
+	case BUS_NOTIFY_BOUND_DRIVER:
+		vga_arbiter_do_arbitration(pdev);
+		break;
+	default:
+		break;
+	}
Changing from if/else to switch makes the patch bigger than necessary
for no real benefit and obscures what is really changing.

Actually, the logic become more clear after this patch applied.

```

    switch (action) {
    case BUS_NOTIFY_ADD_DEVICE:
        notify = vga_arbiter_add_pci_device(pdev);
        if (notify)
            vga_arbiter_notify_clients();
        break;
    case BUS_NOTIFY_DEL_DEVICE:
        notify = vga_arbiter_del_pci_device(pdev);
        if (notify)
            vga_arbiter_notify_clients();
        break;
    case BUS_NOTIFY_BOUND_DRIVER:
        vga_arbiter_do_arbitration(pdev);
        break;
    default:
        break;
    }

```


Because we only need call vga_arbiter_notify_clients() when action == BUS_NOTIFY_ADD_DEVICE or action == BUS_NOTIFY_DEL_DEVICE,

But *NOT* when the action equals to  BUS_NOTIFY_BOUND_DRIVER.




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux