diff for duplicates of <20100812000355.GA7195@mail.oracle.com> diff --git a/a/1.txt b/N1/1.txt index 629fe4d..0fd8f4f 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -28,7 +28,7 @@ On Sat, Aug 07, 2010 at 11:09:13AM +0200, Julia Lawall wrote: However, this is not the correct solution. The goal of the original code, which used to use list_for_each(), was to leave lock non-NULL if the cookie was found. Your version merely exits the loop on -the first non-matching entry, always leaving lock=NULL if there is a +the first non-matching entry, always leaving lock==NULL if there is a non-matching entry. One possible solution is to return the original code: @@ -53,7 +53,7 @@ non-matching entry. + list_for_each(iter, tmpq) { + lock = list_entry(iter, struct dlm_lock, list); + -+ if (lock->ml.cookie = ml->cookie) ++ if (lock->ml.cookie == ml->cookie) break; + lock = NULL; } @@ -72,7 +72,7 @@ but use a better check for entry existence: - if (lock->ml.cookie != ml->cookie) - lock = NULL; - else -+ if (lock->ml.cookie = ml->cookie) ++ if (lock->ml.cookie == ml->cookie) break; } - if (lock) @@ -97,5 +97,5 @@ Life's Little Instruction Book #335 Joel Becker Consulting Software Developer Oracle -E-mail: joel.becker@oracle.com +E-mail: joel.becker at oracle.com Phone: (650) 506-8127 diff --git a/a/content_digest b/N1/content_digest index 4ae0543..9b552b9 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,7 +1,7 @@ "ref\0Pine.LNX.4.64.1008071108540.5821@ask.diku.dk\0" "From\0Joel Becker <Joel.Becker@oracle.com>\0" - "Subject\0Re: [PATCH 1/2] fs/ocfs2/dlm: Eliminate update of\0" - "Date\0Thu, 12 Aug 2010 00:03:56 +0000\0" + "Subject\0[Ocfs2-devel] [PATCH 1/2] fs/ocfs2/dlm: Eliminate update of list_for_each_entry loop cursor\0" + "Date\0Wed, 11 Aug 2010 17:03:56 -0700\0" "To\0Julia Lawall <julia@diku.dk>\0" "Cc\0Mark Fasheh <mfasheh@suse.com>" ocfs2-devel@oss.oracle.com @@ -40,7 +40,7 @@ "\tHowever, this is not the correct solution. The goal of the\n" "original code, which used to use list_for_each(), was to leave lock\n" "non-NULL if the cookie was found. Your version merely exits the loop on\n" - "the first non-matching entry, always leaving lock=NULL if there is a\n" + "the first non-matching entry, always leaving lock==NULL if there is a\n" "non-matching entry.\n" "\tOne possible solution is to return the original code:\n" "\n" @@ -65,7 +65,7 @@ "+\t\t\t\tlist_for_each(iter, tmpq) {\n" "+\t\t\t\t\tlock = list_entry(iter, struct dlm_lock, list);\n" "+\n" - "+\t\t\t\t\tif (lock->ml.cookie = ml->cookie)\n" + "+\t\t\t\t\tif (lock->ml.cookie == ml->cookie)\n" " \t\t\t\t\t\tbreak;\n" "+\t\t\t\t\tlock = NULL;\n" " \t\t\t\t}\n" @@ -84,7 +84,7 @@ "-\t\t\t\t\tif (lock->ml.cookie != ml->cookie)\n" "-\t\t\t\t\t\tlock = NULL;\n" "-\t\t\t\t\telse\n" - "+\t\t\t\t\tif (lock->ml.cookie = ml->cookie)\n" + "+\t\t\t\t\tif (lock->ml.cookie == ml->cookie)\n" " \t\t\t\t\t\tbreak;\n" " \t\t\t\t}\n" "-\t\t\t\tif (lock)\n" @@ -109,7 +109,7 @@ "Joel Becker\n" "Consulting Software Developer\n" "Oracle\n" - "E-mail: joel.becker@oracle.com\n" + "E-mail: joel.becker at oracle.com\n" Phone: (650) 506-8127 -0982aed7635ac8e46a54ff57ce847cd9b15ae81c399ec4bd14a20048b626307b +baae0af1e346fd2c0d1af0f9a2b298b66b43c9f437c26f435cc882a10ee4d24d
diff --git a/a/1.txt b/N2/1.txt index 629fe4d..1fecbbe 100644 --- a/a/1.txt +++ b/N2/1.txt @@ -28,7 +28,7 @@ On Sat, Aug 07, 2010 at 11:09:13AM +0200, Julia Lawall wrote: However, this is not the correct solution. The goal of the original code, which used to use list_for_each(), was to leave lock non-NULL if the cookie was found. Your version merely exits the loop on -the first non-matching entry, always leaving lock=NULL if there is a +the first non-matching entry, always leaving lock==NULL if there is a non-matching entry. One possible solution is to return the original code: @@ -53,7 +53,7 @@ non-matching entry. + list_for_each(iter, tmpq) { + lock = list_entry(iter, struct dlm_lock, list); + -+ if (lock->ml.cookie = ml->cookie) ++ if (lock->ml.cookie == ml->cookie) break; + lock = NULL; } @@ -72,7 +72,7 @@ but use a better check for entry existence: - if (lock->ml.cookie != ml->cookie) - lock = NULL; - else -+ if (lock->ml.cookie = ml->cookie) ++ if (lock->ml.cookie == ml->cookie) break; } - if (lock) diff --git a/a/content_digest b/N2/content_digest index 4ae0543..65837fb 100644 --- a/a/content_digest +++ b/N2/content_digest @@ -1,7 +1,7 @@ "ref\0Pine.LNX.4.64.1008071108540.5821@ask.diku.dk\0" "From\0Joel Becker <Joel.Becker@oracle.com>\0" - "Subject\0Re: [PATCH 1/2] fs/ocfs2/dlm: Eliminate update of\0" - "Date\0Thu, 12 Aug 2010 00:03:56 +0000\0" + "Subject\0Re: [PATCH 1/2] fs/ocfs2/dlm: Eliminate update of list_for_each_entry loop cursor\0" + "Date\0Wed, 11 Aug 2010 17:03:56 -0700\0" "To\0Julia Lawall <julia@diku.dk>\0" "Cc\0Mark Fasheh <mfasheh@suse.com>" ocfs2-devel@oss.oracle.com @@ -40,7 +40,7 @@ "\tHowever, this is not the correct solution. The goal of the\n" "original code, which used to use list_for_each(), was to leave lock\n" "non-NULL if the cookie was found. Your version merely exits the loop on\n" - "the first non-matching entry, always leaving lock=NULL if there is a\n" + "the first non-matching entry, always leaving lock==NULL if there is a\n" "non-matching entry.\n" "\tOne possible solution is to return the original code:\n" "\n" @@ -65,7 +65,7 @@ "+\t\t\t\tlist_for_each(iter, tmpq) {\n" "+\t\t\t\t\tlock = list_entry(iter, struct dlm_lock, list);\n" "+\n" - "+\t\t\t\t\tif (lock->ml.cookie = ml->cookie)\n" + "+\t\t\t\t\tif (lock->ml.cookie == ml->cookie)\n" " \t\t\t\t\t\tbreak;\n" "+\t\t\t\t\tlock = NULL;\n" " \t\t\t\t}\n" @@ -84,7 +84,7 @@ "-\t\t\t\t\tif (lock->ml.cookie != ml->cookie)\n" "-\t\t\t\t\t\tlock = NULL;\n" "-\t\t\t\t\telse\n" - "+\t\t\t\t\tif (lock->ml.cookie = ml->cookie)\n" + "+\t\t\t\t\tif (lock->ml.cookie == ml->cookie)\n" " \t\t\t\t\t\tbreak;\n" " \t\t\t\t}\n" "-\t\t\t\tif (lock)\n" @@ -112,4 +112,4 @@ "E-mail: joel.becker@oracle.com\n" Phone: (650) 506-8127 -0982aed7635ac8e46a54ff57ce847cd9b15ae81c399ec4bd14a20048b626307b +db04272f900a2a02d2daeda6a9d854bd230010c0b0a1c2f4b140975eaa9378e0
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.