[Pkg-lustre-svn-commit] r372 - in /trunk/debian: TODO patches/00list patches/bug11880-flock-recov.dpatch

pwinnertz-guest at users.alioth.debian.org pwinnertz-guest at users.alioth.debian.org
Fri Oct 12 15:44:12 UTC 2007


Author: pwinnertz-guest
Date: Fri Oct 12 15:44:12 2007
New Revision: 372

URL: http://svn.debian.org/wsvn/pkg-lustre/?sc=1&rev=372
Log:
the patch for bug 11880 doesn't work properly right now.. added to todo

Modified:
    trunk/debian/TODO
    trunk/debian/patches/00list
    trunk/debian/patches/bug11880-flock-recov.dpatch

Modified: trunk/debian/TODO
URL: http://svn.debian.org/wsvn/pkg-lustre/trunk/debian/TODO?rev=372&op=diff
==============================================================================
--- trunk/debian/TODO (original)
+++ trunk/debian/TODO Fri Oct 12 15:44:12 2007
@@ -9,7 +9,7 @@
   package i think)
   
   Here is the list:
-  - 5491 & 11880
+  - 5491 & 11880 (this patchset doesn't work properly right now)
   - 5494
   - 6334
   - 12207

Modified: trunk/debian/patches/00list
URL: http://svn.debian.org/wsvn/pkg-lustre/trunk/debian/patches/00list?rev=372&op=diff
==============================================================================
--- trunk/debian/patches/00list (original)
+++ trunk/debian/patches/00list Fri Oct 12 15:44:12 2007
@@ -25,10 +25,13 @@
 #Work needing patches
 #autogen-run.dpatch
 #quota-configure.dpatch
-bug5491-posix.dpatch
-bug11880-flock-recov.dpatch
+#bug11880-flock-recov.dpatch
 bug12411-build_patchless-client-packages.dpatch
 bug12609-make_group_upcall_default.dpatch
 bug13632-no_namespace_lock.dpatch
 bug13696-lru_resize_mount_opts+perf_test.dpatch
 bug6334-prevent_multiple_mounts.dpatch
+
+
+#Seems so as this patch is already included in 1.6.3
+#bug5491-posix.dpatch

Modified: trunk/debian/patches/bug11880-flock-recov.dpatch
URL: http://svn.debian.org/wsvn/pkg-lustre/trunk/debian/patches/bug11880-flock-recov.dpatch?rev=372&op=diff
==============================================================================
--- trunk/debian/patches/bug11880-flock-recov.dpatch (original)
+++ trunk/debian/patches/bug11880-flock-recov.dpatch Fri Oct 12 15:44:12 2007
@@ -1,14 +1,17 @@
 #! /bin/sh /usr/share/dpatch/dpatch-run
-## bug11880-flock-recov.dpatch by Patrick Winnertz <patrick.winnertz at skolelinux.org>
 ##
 ## All lines beginning with `## DP:' are a description of the patch.
-## DP: Patch from upstream bugzilla (bug 11880)
+## DP: Patch from upstream bugzilla
 
 @DPATCH@
-diff -urNad lustre-1.6.3~/lustre/ldlm/ldlm_flock.c lustre-1.6.3/lustre/ldlm/ldlm_flock.c
---- lustre-1.6.3~/lustre/ldlm/ldlm_flock.c	2007-10-12 17:12:37.000000000 +0200
-+++ lustre-1.6.3/lustre/ldlm/ldlm_flock.c	2007-10-12 17:12:37.000000000 +0200
-@@ -88,7 +88,10 @@
+Index: ldlm/ldlm_flock.c
+===================================================================
+RCS file: /cvsroot/cfs/lustre-core/ldlm/ldlm_flock.c,v
+retrieving revision 1.13
+diff -u -p -r1.13 ldlm_flock.c
+--- ./lustre/ldlm/ldlm_flock.c	10 Feb 2007 06:31:56 -0000	1.13
++++ ./lustre/ldlm/ldlm_flock.c	13 Jun 2007 03:00:06 -0000
+@@ -88,7 +88,10 @@ ldlm_flock_destroy(struct ldlm_lock *loc
          if (flags == LDLM_FL_WAIT_NOREPROC) {
                  /* client side - set a flag to prevent sending a CANCEL */
                  lock->l_flags |= LDLM_FL_LOCAL_ONLY | LDLM_FL_CBPENDING;
@@ -20,7 +23,7 @@
          }
  
          ldlm_lock_destroy_nolock(lock);
-@@ -137,6 +140,7 @@
+@@ -137,6 +140,7 @@ ldlm_process_flock_lock(struct ldlm_lock
          int local = ns->ns_client;
          int added = (mode == LCK_NL);
          int overlaps = 0;
@@ -28,7 +31,7 @@
          ENTRY;
  
          CDEBUG(D_DLMTRACE, "flags %#x pid %u mode %u start "LPU64" end "LPU64
-@@ -155,6 +159,7 @@
+@@ -155,6 +159,7 @@ ldlm_process_flock_lock(struct ldlm_lock
                  req->l_blocking_ast = ldlm_flock_blocking_ast;
          }
  
@@ -36,7 +39,7 @@
          if ((*flags == LDLM_FL_WAIT_NOREPROC) || (mode == LCK_NL)) {
                  /* This loop determines where this processes locks start
                   * in the resource lr_granted list. */
-@@ -367,8 +372,9 @@
+@@ -360,8 +371,9 @@ ldlm_process_flock_lock(struct ldlm_lock
                                   &new2->l_export->exp_ldlm_data.led_held_locks);
                          spin_unlock(&new2->l_export->exp_ldlm_data.led_lock);
                  }
@@ -48,9 +51,9 @@
  
                  /* insert new2 at lock */
                  ldlm_resource_add_lock(res, ownlocks, new2);
-@@ -380,6 +386,10 @@
-         if (splitted == 0 && new2 != NULL)
-                 ldlm_lock_destroy_nolock(new2);
+@@ -369,6 +381,10 @@ ldlm_process_flock_lock(struct ldlm_lock
+                 break;
+         }
  
 +        /* if new2 is created but never used, destroy it*/
 +        if (splitted == 0 && new2 != NULL)
@@ -59,7 +62,7 @@
          /* At this point we're granting the lock request. */
          req->l_granted_mode = req->l_req_mode;
  
-@@ -409,9 +419,9 @@
+@@ -398,9 +414,9 @@ restart:
                                  ldlm_reprocess_queue(res, &res->lr_waiting,
                                                       &rpc_list);
  
@@ -72,7 +75,7 @@
                                  if (rc == -ERESTART)
                                          GOTO(restart, -ERESTART);
                         }
-@@ -511,7 +521,7 @@
+@@ -500,7 +516,7 @@ granted:
  
          LDLM_DEBUG(lock, "client-side enqueue granted");
          ns = lock->l_resource->lr_namespace;
@@ -81,7 +84,18 @@
  
          /* take lock off the deadlock detection waitq. */
          list_del_init(&lock->l_flock_waitq);
-@@ -546,7 +556,7 @@
+@@ -524,8 +540,8 @@ granted:
+                         cfs_flock_set_type(getlk, F_UNLCK);
+                 }
+                 cfs_flock_set_pid(getlk, (pid_t)lock->l_policy_data.l_flock.pid);
+-                cfs_flock_set_start(getlk, (off_t)lock->l_policy_data.l_flock.start);
+-                cfs_flock_set_end(getlk, (off_t)lock->l_policy_data.l_flock.end);
++                cfs_flock_set_start(getlk, (loff_t)lock->l_policy_data.l_flock.start);
++                cfs_flock_set_end(getlk, (loff_t)lock->l_policy_data.l_flock.end);
+         } else {
+                 int noreproc = LDLM_FL_WAIT_NOREPROC;
+ 
+@@ -535,7 +551,7 @@ granted:
                  if (flags == 0)
                          cfs_waitq_signal(&lock->l_waitq);
          }
@@ -90,10 +104,14 @@
          RETURN(0);
  }
  EXPORT_SYMBOL(ldlm_flock_completion_ast);
-diff -urNad lustre-1.6.3~/lustre/ldlm/ldlm_internal.h lustre-1.6.3/lustre/ldlm/ldlm_internal.h
---- lustre-1.6.3~/lustre/ldlm/ldlm_internal.h	2007-10-12 17:12:20.000000000 +0200
-+++ lustre-1.6.3/lustre/ldlm/ldlm_internal.h	2007-10-12 17:12:37.000000000 +0200
-@@ -70,7 +70,9 @@
+Index: ldlm/ldlm_internal.h
+===================================================================
+RCS file: /cvsroot/cfs/lustre-core/ldlm/ldlm_internal.h,v
+retrieving revision 1.16
+diff -u -p -r1.16 ldlm_internal.h
+--- ./lustre/ldlm/ldlm_internal.h	10 Feb 2007 06:31:56 -0000	1.16
++++ ./lustre/ldlm/ldlm_internal.h	13 Jun 2007 03:00:06 -0000
+@@ -26,7 +26,9 @@ ldlm_lock_create(struct ldlm_namespace *
  ldlm_error_t ldlm_lock_enqueue(struct ldlm_namespace *, struct ldlm_lock **,
                                 void *cookie, int *flags);
  void ldlm_lock_addref_internal(struct ldlm_lock *, __u32 mode);
@@ -103,10 +121,14 @@
  void ldlm_add_ast_work_item(struct ldlm_lock *lock, struct ldlm_lock *new,
                                  struct list_head *work_list);
  int ldlm_reprocess_queue(struct ldlm_resource *res, struct list_head *queue,
-diff -urNad lustre-1.6.3~/lustre/ldlm/ldlm_lock.c lustre-1.6.3/lustre/ldlm/ldlm_lock.c
---- lustre-1.6.3~/lustre/ldlm/ldlm_lock.c	2007-10-12 17:12:20.000000000 +0200
-+++ lustre-1.6.3/lustre/ldlm/ldlm_lock.c	2007-10-12 17:13:40.000000000 +0200
-@@ -578,15 +578,12 @@
+Index: ldlm/ldlm_lock.c
+===================================================================
+RCS file: /cvsroot/cfs/lustre-core/ldlm/ldlm_lock.c,v
+retrieving revision 1.159
+diff -u -p -r1.159 ldlm_lock.c
+--- ./lustre/ldlm/ldlm_lock.c	10 Feb 2007 06:31:56 -0000	1.159
++++ ./lustre/ldlm/ldlm_lock.c	13 Jun 2007 03:00:06 -0000
+@@ -556,15 +556,12 @@ void ldlm_lock_addref_internal(struct ld
          unlock_res_and_lock(lock);
  }
  
@@ -127,7 +149,27 @@
          LDLM_DEBUG(lock, "ldlm_lock_decref(%s)", ldlm_lockname[mode]);
          if (mode & (LCK_NL | LCK_CR | LCK_PR)) {
                  LASSERT(lock->l_readers > 0);
-@@ -652,8 +649,6 @@
+@@ -575,6 +572,19 @@ void ldlm_lock_decref_internal(struct ld
+                 lock->l_writers--;
+         }
+ 
++        LDLM_LOCK_PUT(lock);    /* matches the ldlm_lock_get in addref */
++}
++void ldlm_lock_decref_internal(struct ldlm_lock *lock, __u32 mode)
++{
++        struct ldlm_namespace *ns;
++        ENTRY;
++
++        lock_res_and_lock(lock);
++
++        ns = lock->l_resource->lr_namespace;
++
++        ldlm_lock_decref_internal_nolock(lock, mode);
++
+         if (lock->l_flags & LDLM_FL_LOCAL &&
+             !lock->l_readers && !lock->l_writers) {
+                 /* If this is a local lock on a server namespace and this was
+@@ -616,8 +626,6 @@ void ldlm_lock_decref_internal(struct ld
                  unlock_res_and_lock(lock);
          }
  
@@ -135,4 +177,3 @@
 -
          EXIT;
  }
- 




More information about the Pkg-lustre-svn-commit mailing list