diff mbox

[ovs-dev,2/4] datapath-windows: reset the IRP pointer after use in OvsQueuePackets

Message ID 1442343149-52881-2-git-send-email-nithin@vmware.com
State Superseded
Headers show

Commit Message

Nithin Raju Sept. 15, 2015, 6:52 p.m. UTC
Signed-off-by: Nithin Raju <nithin@vmware.com>
---
 datapath-windows/ovsext/User.c | 13 +++----------
 1 file changed, 3 insertions(+), 10 deletions(-)

Comments

Sairam Venugopal Sept. 19, 2015, 12:36 a.m. UTC | #1
Acked-by: Sairam Venugopal <vsairam@vmware.com>



On 9/15/15, 11:52 AM, "Nithin Raju" <nithin@vmware.com> wrote:

>Signed-off-by: Nithin Raju <nithin@vmware.com>
>---
> datapath-windows/ovsext/User.c | 13 +++----------
> 1 file changed, 3 insertions(+), 10 deletions(-)
>
>diff --git a/datapath-windows/ovsext/User.c
>b/datapath-windows/ovsext/User.c
>index 0bbf690..d6139b8 100644
>--- a/datapath-windows/ovsext/User.c
>+++ b/datapath-windows/ovsext/User.c
>@@ -698,7 +698,6 @@ OvsQueuePackets(PLIST_ENTRY packetList,
> {
>     POVS_USER_PACKET_QUEUE upcallQueue = NULL;
>     POVS_PACKET_QUEUE_ELEM elem;
>-    PIRP irp = NULL;
>     PLIST_ENTRY  link;
>     UINT32 num = 0;
>     LIST_ENTRY dropPackets;
>@@ -728,23 +727,17 @@ OvsQueuePackets(PLIST_ENTRY packetList,
>                 InsertTailList(&upcallQueue->packetList, &elem->link);
>                 upcallQueue->numPackets++;
>                 if (upcallQueue->pendingIrp) {
>+                    PIRP irp = upcallQueue->pendingIrp;
>                     PDRIVER_CANCEL cancelRoutine;
>-                    irp = upcallQueue->pendingIrp;
>                     upcallQueue->pendingIrp = NULL;
>                     cancelRoutine = IoSetCancelRoutine(irp, NULL);
>-                    if (cancelRoutine == NULL) {
>-                        irp = NULL;
>+                    if (cancelRoutine != NULL) {
>+                        OvsCompleteIrpRequest(irp, 0, STATUS_SUCCESS);
>                     }
>                 }
>             }
>-
>-            if (irp) {
>-                OvsCompleteIrpRequest(irp, 0, STATUS_SUCCESS);
>-            }
>-
>             NdisReleaseSpinLock(&upcallQueue->queueLock);
>         }
>-
>         OvsReleasePidHashLock();
>     }
> 
>-- 
>1.8.5.6
>
>_______________________________________________
>dev mailing list
>dev@openvswitch.org
>https://urldefense.proofpoint.com/v2/url?u=http-3A__openvswitch.org_mailma
>n_listinfo_dev&d=BQIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=Dc
>ruz40PROJ40ROzSpxyQSLw6fcrOWpJgEcEmNR3JEQ&m=PgSpEB4TbzYchapb2AjoDAfTniQ83w
>Or23J-YWcbPWU&s=OUoMLSIwyVnX5e5albUzTkw4Nhwa1jWjeHDBEIifKNk&e=
Alin Serdean Sept. 23, 2015, 3 p.m. UTC | #2
Acked-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com>



> -----Mesaj original-----

> De la: dev [mailto:dev-bounces@openvswitch.org] În numele Nithin Raju

> Trimis: Tuesday, September 15, 2015 9:52 PM

> Către: dev@openvswitch.org

> Subiect: [ovs-dev] [PATCH 2/4] datapath-windows: reset the IRP pointer

> after use in OvsQueuePackets

> 

> Signed-off-by: Nithin Raju <nithin@vmware.com>

> ---

>  datapath-windows/ovsext/User.c | 13 +++----------

>  1 file changed, 3 insertions(+), 10 deletions(-)

> 

> diff --git a/datapath-windows/ovsext/User.c b/datapath-

> windows/ovsext/User.c index 0bbf690..d6139b8 100644

> --- a/datapath-windows/ovsext/User.c

> +++ b/datapath-windows/ovsext/User.c

> @@ -698,7 +698,6 @@ OvsQueuePackets(PLIST_ENTRY packetList,  {

>      POVS_USER_PACKET_QUEUE upcallQueue = NULL;

>      POVS_PACKET_QUEUE_ELEM elem;

> -    PIRP irp = NULL;

>      PLIST_ENTRY  link;

>      UINT32 num = 0;

>      LIST_ENTRY dropPackets;

> @@ -728,23 +727,17 @@ OvsQueuePackets(PLIST_ENTRY packetList,

>                  InsertTailList(&upcallQueue->packetList, &elem->link);

>                  upcallQueue->numPackets++;

>                  if (upcallQueue->pendingIrp) {

> +                    PIRP irp = upcallQueue->pendingIrp;

>                      PDRIVER_CANCEL cancelRoutine;

> -                    irp = upcallQueue->pendingIrp;

>                      upcallQueue->pendingIrp = NULL;

>                      cancelRoutine = IoSetCancelRoutine(irp, NULL);

> -                    if (cancelRoutine == NULL) {

> -                        irp = NULL;

> +                    if (cancelRoutine != NULL) {

> +                        OvsCompleteIrpRequest(irp, 0, STATUS_SUCCESS);

>                      }

>                  }

>              }

> -

> -            if (irp) {

> -                OvsCompleteIrpRequest(irp, 0, STATUS_SUCCESS);

> -            }

> -

>              NdisReleaseSpinLock(&upcallQueue->queueLock);

>          }

> -

>          OvsReleasePidHashLock();

>      }

> 

> --

> 1.8.5.6

> 

> _______________________________________________

> dev mailing list

> dev@openvswitch.org

> http://openvswitch.org/mailman/listinfo/dev
diff mbox

Patch

diff --git a/datapath-windows/ovsext/User.c b/datapath-windows/ovsext/User.c
index 0bbf690..d6139b8 100644
--- a/datapath-windows/ovsext/User.c
+++ b/datapath-windows/ovsext/User.c
@@ -698,7 +698,6 @@  OvsQueuePackets(PLIST_ENTRY packetList,
 {
     POVS_USER_PACKET_QUEUE upcallQueue = NULL;
     POVS_PACKET_QUEUE_ELEM elem;
-    PIRP irp = NULL;
     PLIST_ENTRY  link;
     UINT32 num = 0;
     LIST_ENTRY dropPackets;
@@ -728,23 +727,17 @@  OvsQueuePackets(PLIST_ENTRY packetList,
                 InsertTailList(&upcallQueue->packetList, &elem->link);
                 upcallQueue->numPackets++;
                 if (upcallQueue->pendingIrp) {
+                    PIRP irp = upcallQueue->pendingIrp;
                     PDRIVER_CANCEL cancelRoutine;
-                    irp = upcallQueue->pendingIrp;
                     upcallQueue->pendingIrp = NULL;
                     cancelRoutine = IoSetCancelRoutine(irp, NULL);
-                    if (cancelRoutine == NULL) {
-                        irp = NULL;
+                    if (cancelRoutine != NULL) {
+                        OvsCompleteIrpRequest(irp, 0, STATUS_SUCCESS);
                     }
                 }
             }
-
-            if (irp) {
-                OvsCompleteIrpRequest(irp, 0, STATUS_SUCCESS);
-            }
-
             NdisReleaseSpinLock(&upcallQueue->queueLock);
         }
-
         OvsReleasePidHashLock();
     }