On 04.10.2021 07:58, Oleksandr Andrushchenko wrote:
>
>
> On 01.10.21 16:26, Jan Beulich wrote:
>> On 30.09.2021 09:52, Oleksandr Andrushchenko wrote:
>>> @@ -445,14 +456,25 @@ static void rom_write(const struct pci_dev *pdev,
>>> unsigned int reg,
>>> rom->addr = val & PCI_ROM_ADDRESS_MASK;
>>> }
>>>
>>> -static int add_bar_handlers(const struct pci_dev *pdev)
>>> +static void guest_rom_write(const struct pci_dev *pdev, unsigned int reg,
>>> + uint32_t val, void *data)
>>> +{
>>> +}
>>> +
>>> +static uint32_t guest_rom_read(const struct pci_dev *pdev, unsigned int
>>> reg,
>>> + void *data)
>>> +{
>>> + return 0xffffffff;
>>> +}
>>> +
>>> +static int add_bar_handlers(const struct pci_dev *pdev, bool is_hwdom)
>> I remain unconvinced that this boolean is the best way to go here,
> I can remove "bool is_hwdom" and have the checks like:
>
> static int add_bar_handlers(const struct pci_dev *pdev)
> {
> ...
> if ( is_hardware_domain(pdev->domain) )
> rc = vpci_add_register(pdev->vpci, vpci_hw_read16, cmd_write,
> PCI_COMMAND, 2, header);
> else
> rc = vpci_add_register(pdev->vpci, vpci_hw_read16, guest_cmd_write,
> PCI_COMMAND, 2, header);
> Is this going to be better?
Marginally (plus you'd need to prove that pdev->domain can never be NULL
when making it here). "I remain unconvinced" was rather referring to our
prior discussion.
Jan