Re: [virtio-net][PATCH] Don't arm tx hrtimer with a constant 500us each transmit

Cam Macdonell
2007-12-18T23:38:06Z

Cam Macdonell wrote:
> Cam Macdonell wrote:
>> Dor Laor wrote:
>>> Cam Macdonell wrote:
>>>> Dor Laor wrote:
>>>>> Christian Borntraeger wrote:
>>>>>> Am Mittwoch, 12. Dezember 2007 schrieb Dor Laor:
>>>>>>> Christian Borntraeger wrote:
>>>>>>>> Am Mittwoch, 12. Dezember 2007 schrieb Dor Laor:
>>>>>>>>> --- a/drivers/net/virtio_net.c
>>>>>>>>> +++ b/drivers/net/virtio_net.c
>>>>>>>>> @@ -406,10 +405,10 @@ again:
>>>>>>>> Hmm, while I agree in general with the patch, I fail to find the
>>>>>> proper
>>>>>>>> version of virtio_net where this patch applies. I tried kvm.git and
>>>>>>>> linux-2.6.git from kernel.org. Can you give me a pointer to the
>>>>>> repository
>>>>>>>> where you work on virtio?
>>>>>>>>
>>>>>>> Sorry for that, I added some debug prints of my one.
>>>>>>> Here it is: *git clone
>>>>>>> git*://kvm.*qumranet*.com/home/*dor*/src/linux-2.6-nv use branch
>>>>>> 'virtio'.
>>>>>>
>>>> Hi Dor,
>>>>
>>>> Which userspace repo is usable with the above repo?
>>>>
>>>> Thanks,
>>>> Cam
>>>>
>>> git://kvm.qumranet.com/home/dor/src/kvm-nv use branch
>> Hi Dor,
>>
>> I think you forgot a word after branch above. Also, I get the following
>> error when I try clone the userspace repo.
>>
>> cam@madhatter:~/src/KVM$ git clone
>> git://kvm.qumranet.com/home/dor/src/kvm-nv
>> Initialized empty Git repository in /home/cam/src/KVM/kvm-nv/.git/
>> fatal: The remote end hung up unexpectedly
>> fetch-pack from 'git://kvm.qumranet.com/home/dor/src/kvm-nv' failed.
>>
>
> Ok, it works now, however, I'm getting an unknown symbol error when
> loading kvm in to kernel
>
> cam@madhatter:~/src/KVM/dor$ sudo modprobe kvm
> FATAL: Error inserting kvm
> (/lib/modules/2.6.22-14-generic/extra/kvm.ko): Unknown symbol in module,
> or unknown parameter (see dmesg)
>
> dmesg output:
> [89681.960000] kvm: Unknown symbol __fls
>

Hi Dor,

It seems this is a 32 v 64-bit issue. I'm running a 32-bit system. The
asm-x86/bitops_64.h defines __fls whereas asm-x86/bitops_32.h defines
fls. Simply replacing __fls with fls allows the module to load into the
kernel and I am able to boot VMs with it.

I hope that helps.

Cam