On 08.09.2021 17:14, Oleksandr Andrushchenko wrote:
> On 08.09.21 17:46, Jan Beulich wrote:
>> On 08.09.2021 15:33, Oleksandr Andrushchenko wrote:
>>> static void guest_bar_write(const struct pci_dev *pdev, unsigned int reg,
>>>                               uint32_t val, void *data)
>>> {
>>>       struct vpci_bar *bar = data;
>>>       bool hi = false;
>>>
>>>       if ( bar->type == VPCI_BAR_MEM64_HI )
>>>       {
>>>           ASSERT(reg > PCI_BASE_ADDRESS_0);
>>>           bar--;
>>>           hi = true;
>>>       }
>>>       else
>>>       {
>>>           val &= PCI_BASE_ADDRESS_MEM_MASK;
>>>           val |= bar->type == VPCI_BAR_MEM32 ? PCI_BASE_ADDRESS_MEM_TYPE_32
>>>                                              : PCI_BASE_ADDRESS_MEM_TYPE_64;
>>>           val |= bar->prefetchable ? PCI_BASE_ADDRESS_MEM_PREFETCH : 0;
>>>       }
>>>
>>>       bar->guest_addr &= ~(0xffffffffull << (hi ? 32 : 0));
> 
> Do you think this needs to be 0xfffffffful, not 0xffffffffull?
> 
> e.g. s/ull/ul

If guest_addr is uint64_t then ull would seem more correct to me,
especially when considering (hypothetical?) 32-bit architectures
potentially wanting to use this code.

Jan


Reply via email to