Hi Anand

I tried the below patch provided by you and now I'm able to ping from the
VM on ARM compute node to th GW IP.


*diff --git a/include/vr_flow.h b/include/vr_flow.h*

*index 09853e7..ce018b1 100644*

*--- a/include/vr_flow.h*

*+++ b/include/vr_flow.h*

@@ -290,8 +290,8 @@ struct vr_dummy_flow_entry {

     struct vr_flow fe_key;

     uint8_t fe_key_packing;

     uint16_t fe_tcp_flags;

-    unsigned int fe_tcp_seq;

     struct vr_flow_queue *fe_hold_list;

+    unsigned int fe_tcp_seq;

     unsigned short fe_action;

     unsigned short fe_flags;

     int fe_rflow;

@@ -314,8 +314,8 @@ struct vr_flow_entry {

     struct vr_flow fe_key;

     uint8_t fe_key_packing;

     uint16_t fe_tcp_flags;

-    unsigned int fe_tcp_seq;

     struct vr_flow_queue *fe_hold_list;

+    unsigned int fe_tcp_seq;

     unsigned short fe_action;

     unsigned short fe_flags;

     int fe_rflow;

Thanks Anand for your support.




On Mon, Dec 28, 2015 at 12:43 PM, abhishek jain <[email protected]>
wrote:

> Hi Anand
>
> I tried applying the above patch on the master branch and after applying
> the patch I was able to compile vrouter.ko and contrail-vrouter-agent
> successfully.
>
> Hoewever when I tried ruunning the modified contrail-vrouter-agent with
> the modified vrouter.ko,the binary was not able to run properly and
> starting producing alignment errors.Below are the dmesg logs..
>
> vrouter soft reset start
> [  324.645142] vrouter soft reset done (0)
> [  326.649461] Unhandled fault: alignment fault (0x92000021) at
> 0x0000ffff87f0003f
>
>
> So I tried running the default contrail-vrouter-agent with the modified
> (patch applied) vrouter.ko and I was able to run contrail-vrouter-agent
> properly.However I was getting the same kernel crash while pinging from the
> VM
>
> PFA kernel crash logs ..
>
> --Thanks
> Abhishek Jain
>
> On Mon, Dec 28, 2015 at 10:56 AM, Anand H Krishnan <[email protected]>
> wrote:
>
>> Can you try this patch? I am assuming that you are on the mainline branch.
>>
>>
>> Cheers,
>>
>> Anand
>>
>>
>> PS: Please recompile agent too after applying the following patch.
>>
>>
>> *diff --git a/include/vr_flow.h b/include/vr_flow.h*
>>
>> *index 09853e7..ee00ed1 100644*
>>
>> *--- a/include/vr_flow.h*
>>
>> *+++ b/include/vr_flow.h*
>>
>> @@ -288,10 +288,10 @@ struct vr_flow_queue {
>>
>>
>>
>>  struct vr_dummy_flow_entry {
>>
>>      struct vr_flow fe_key;
>>
>> -    uint8_t fe_key_packing;
>>
>> -    uint16_t fe_tcp_flags;
>>
>>      unsigned int fe_tcp_seq;
>>
>>      struct vr_flow_queue *fe_hold_list;
>>
>> +    uint16_t fe_tcp_flags;
>>
>> +    uint16_t fe_packing;
>>
>>      unsigned short fe_action;
>>
>>      unsigned short fe_flags;
>>
>>      int fe_rflow;
>>
>> @@ -312,10 +312,10 @@ struct vr_dummy_flow_entry {
>>
>>  /* do not change. any field positions as it might lead to
>> incompatibility */
>>
>>  struct vr_flow_entry {
>>
>>      struct vr_flow fe_key;
>>
>> -    uint8_t fe_key_packing;
>>
>> -    uint16_t fe_tcp_flags;
>>
>>      unsigned int fe_tcp_seq;
>>
>>      struct vr_flow_queue *fe_hold_list;
>>
>> +    uint16_t fe_tcp_flags;
>>
>> +    uint16_t fe_packing;
>>
>>      unsigned short fe_action;
>>
>>      unsigned short fe_flags;
>>
>>      int fe_rflow;
>>
>>
>> Thanks,
>>
>> Anand
>>
>>
>> ------------------------------
>> *From:* abhishek jain <[email protected]>
>> *Sent:* Saturday, December 26, 2015 10:11 AM
>> *To:* Anand H Krishnan
>> *Cc:* [email protected]; Rajagopalan Sivaramakrishnan; Prabhjot
>> Singh Sethi
>> *Subject:* Re: [opencontrail-dev] kernel crash when ping
>>
>> Hi Anand
>>
>> Thanks for looking into this.
>>
>> I applied some prints in the same function to be more clear on the exact
>> reason and the exact problem seems to be is with
>> *&fe->fe_hold_list.*
>>
>> func: vr_flush_entry line: 1456 *&fe->fe_hold_list*: *ffff8083010f4c34*
>> {  vfq: ffff80007b339640
>> [  249.477176] Unhandled fault: alignment fault (0x96000021) at 
>> *0xffff8083010f4c34
>> *
>> [  249.484494] Internal error: : 96000021 [#1] PREEMPT SMP
>> [  249.489717] Modules linked in: vrouter(O)
>>
>>
>> What could be  the reason for this?
>>
>> -Thanks
>> Abhishek Jain
>>
>>
>>
>>
>> On Sat, Dec 26, 2015 at 8:51 AM, Anand H Krishnan <[email protected]>
>> wrote:
>>
>>> Hi Abhishek,
>>>
>>>
>>> We do not have an arm system to analyze the core. Can you please do a
>>>
>>> bit more analysis (looks like you already did most of the initial digging
>>>
>>> around)?
>>>
>>>
>>> The place where you saw a crash seems highly unlikely. There are a couple
>>>
>>> of possibilities. &fe->fe_hold_list is invalid or __sync* stuff doesn't
>>> work
>>>
>>> on arm (guessing). Can you analyze the kernel crash dump?
>>>
>>>
>>> Cheers,
>>>
>>> Anand
>>>
>>>
>>> ------------------------------
>>> *From:* Dev <[email protected]> on behalf of abhishek
>>> jain <[email protected]>
>>> *Sent:* Thursday, December 24, 2015 12:05 AM
>>> *To:* [email protected]; Rajagopalan Sivaramakrishnan;
>>> Prabhjot Singh Sethi
>>> *Subject:* [opencontrail-dev] kernel crash when ping
>>>
>>>
>>> Hi Team
>>>
>>> I'm running ARM 64 as a compute node (4.0.4 kernel version) with
>>> contrail vrouter-agent running on it.The compute node is able to make
>>> connection to the controller node and I'm able to launch VM on compute node
>>> from the controller node(Opencontrail) GUI.
>>>
>>> The VM on compute node is able obtain IP address from the virtual DHCP
>>> server running on controller node.However I'm facing kernel crash when I'm
>>> pinging the virtual GW from the VM.
>>>
>>> I'm using the latest opencontrail code.I'm getting kernel crash at
>>> function vr_flush_entry at below line..
>>>
>>>   swapped = __sync_bool_compare_and_swap(&fe->fe_hold_list, vfq, NULL);
>>>
>>> Please help me regarding this.
>>>
>>> --Thanks
>>> Abhishek Jain
>>>
>>
>>
>
_______________________________________________
Dev mailing list
[email protected]
http://lists.opencontrail.org/mailman/listinfo/dev_lists.opencontrail.org

Reply via email to