All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <1431988690.15857.31.camel@intel.com>

diff --git a/a/1.txt b/N1/1.txt
index 1a61b95..5f6e80f 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -144,31 +144,31 @@ other threads/CPUs that resolve to the same spinlock to run.
 > 
 > inside btt_make_request:
 > 
->        ¦                     /* Wait if the new block is being read from */
->        ¦                     for (i = 0; i < arena->nfree; i++)
->   2.98 ¦     ? je     2b4
->   0.05 ¦       mov    0x60(%r14),%rax
->   0.00 ¦       mov    %ebx,%edx
->        ¦       xor    %esi,%esi
->   0.03 ¦       or     $0x80000000,%edx
->   0.05 ¦       nop
->        ¦                             while (arena->rtt[i] == (RTT_VALID | new_postmap))
->  22.98 ¦290:   mov    %esi,%edi
->   0.01 ¦       cmp    %edx,(%rax,%rdi,4)
->  30.97 ¦       lea    0x0(,%rdi,4),%rcx
->  21.05 ¦     ? jne    2ab
->        ¦       nop
->        ¦     }
->        ¦
->        ¦     /* REP NOP (PAUSE) is a good thing to insert into busy-wait loops. */
->        ¦     static inline void rep_nop(void)
->        ¦     {
->        ¦             asm volatile("rep; nop" ::: "memory");
->        ¦2a0:   pause
->        ¦       mov    0x60(%r14),%rax
->        ¦       cmp    (%rax,%rcx,1),%edx
->        ¦     ? je     2a0
->        ¦                     }
+>        ¦                     /* Wait if the new block is being read from */
+>        ¦                     for (i = 0; i < arena->nfree; i++)
+>   2.98 ¦     ? je     2b4
+>   0.05 ¦       mov    0x60(%r14),%rax
+>   0.00 ¦       mov    %ebx,%edx
+>        ¦       xor    %esi,%esi
+>   0.03 ¦       or     $0x80000000,%edx
+>   0.05 ¦       nop
+>        ¦                             while (arena->rtt[i] == (RTT_VALID | new_postmap))
+>  22.98 ¦290:   mov    %esi,%edi
+>   0.01 ¦       cmp    %edx,(%rax,%rdi,4)
+>  30.97 ¦       lea    0x0(,%rdi,4),%rcx
+>  21.05 ¦     ? jne    2ab
+>        ¦       nop
+>        ¦     }
+>        ¦
+>        ¦     /* REP NOP (PAUSE) is a good thing to insert into busy-wait loops. */
+>        ¦     static inline void rep_nop(void)
+>        ¦     {
+>        ¦             asm volatile("rep; nop" ::: "memory");
+>        ¦2a0:   pause
+>        ¦       mov    0x60(%r14),%rax
+>        ¦       cmp    (%rax,%rcx,1),%edx
+>        ¦     ? je     2a0
+>        ¦                     }
 > 
 > 
 > ddpt zeroing out
@@ -200,3 +200,4 @@ Thanks, this is great analysis - I'd be quite interested in how these
 numbers look like with the two changes Dan mentioned.
 
 	-Vishal
+ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ\x17¥Šwÿº{.nÇ+‰·¥Š{±þG«éÿŠ{ayº\x1dʇڙë,j\a­¢f£¢·hšïêÿ‘êçz_è®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?™¨è­Ú&£ø§~á¶iO•æ¬z·švØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?–I¥
diff --git a/a/content_digest b/N1/content_digest
index a27ec95..6faf2f8 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -13,7 +13,7 @@
   Dan J <dan.j.williams@intel.com>
   axboe@fb.com <axboe@fb.com>
   hpa@zytor.com <hpa@zytor.com>
-  linux-nvdimm@lists.01.org <linux-nvdimm@lists.01.org>
+  linux-nvdimm@lists.01.org <linux-nvdimm@ml01.01.org>
   gregkh@linuxfoundation.org <gregkh@linuxfoundation.org>
   luto@amacapital.net <luto@amacapital.net>
  " david@fromorbit.com <david@fromorbit.com>\0"
@@ -165,31 +165,31 @@
  "> \n"
  "> inside btt_make_request:\n"
  "> \n"
- ">        \302\246                     /* Wait if the new block is being read from */\n"
- ">        \302\246                     for (i = 0; i < arena->nfree; i++)\n"
- ">   2.98 \302\246     ? je     2b4\n"
- ">   0.05 \302\246       mov    0x60(%r14),%rax\n"
- ">   0.00 \302\246       mov    %ebx,%edx\n"
- ">        \302\246       xor    %esi,%esi\n"
- ">   0.03 \302\246       or     $0x80000000,%edx\n"
- ">   0.05 \302\246       nop\n"
- ">        \302\246                             while (arena->rtt[i] == (RTT_VALID | new_postmap))\n"
- ">  22.98 \302\246290:   mov    %esi,%edi\n"
- ">   0.01 \302\246       cmp    %edx,(%rax,%rdi,4)\n"
- ">  30.97 \302\246       lea    0x0(,%rdi,4),%rcx\n"
- ">  21.05 \302\246     ? jne    2ab\n"
- ">        \302\246       nop\n"
- ">        \302\246     }\n"
- ">        \302\246\n"
- ">        \302\246     /* REP NOP (PAUSE) is a good thing to insert into busy-wait loops. */\n"
- ">        \302\246     static inline void rep_nop(void)\n"
- ">        \302\246     {\n"
- ">        \302\246             asm volatile(\"rep; nop\" ::: \"memory\");\n"
- ">        \302\2462a0:   pause\n"
- ">        \302\246       mov    0x60(%r14),%rax\n"
- ">        \302\246       cmp    (%rax,%rcx,1),%edx\n"
- ">        \302\246     ? je     2a0\n"
- ">        \302\246                     }\n"
+ ">        \303\202\302\246                     /* Wait if the new block is being read from */\n"
+ ">        \303\202\302\246                     for (i = 0; i < arena->nfree; i++)\n"
+ ">   2.98 \303\202\302\246     ? je     2b4\n"
+ ">   0.05 \303\202\302\246       mov    0x60(%r14),%rax\n"
+ ">   0.00 \303\202\302\246       mov    %ebx,%edx\n"
+ ">        \303\202\302\246       xor    %esi,%esi\n"
+ ">   0.03 \303\202\302\246       or     $0x80000000,%edx\n"
+ ">   0.05 \303\202\302\246       nop\n"
+ ">        \303\202\302\246                             while (arena->rtt[i] == (RTT_VALID | new_postmap))\n"
+ ">  22.98 \303\202\302\246290:   mov    %esi,%edi\n"
+ ">   0.01 \303\202\302\246       cmp    %edx,(%rax,%rdi,4)\n"
+ ">  30.97 \303\202\302\246       lea    0x0(,%rdi,4),%rcx\n"
+ ">  21.05 \303\202\302\246     ? jne    2ab\n"
+ ">        \303\202\302\246       nop\n"
+ ">        \303\202\302\246     }\n"
+ ">        \303\202\302\246\n"
+ ">        \303\202\302\246     /* REP NOP (PAUSE) is a good thing to insert into busy-wait loops. */\n"
+ ">        \303\202\302\246     static inline void rep_nop(void)\n"
+ ">        \303\202\302\246     {\n"
+ ">        \303\202\302\246             asm volatile(\"rep; nop\" ::: \"memory\");\n"
+ ">        \303\202\302\2462a0:   pause\n"
+ ">        \303\202\302\246       mov    0x60(%r14),%rax\n"
+ ">        \303\202\302\246       cmp    (%rax,%rcx,1),%edx\n"
+ ">        \303\202\302\246     ? je     2a0\n"
+ ">        \303\202\302\246                     }\n"
  "> \n"
  "> \n"
  "> ddpt zeroing out\n"
@@ -220,6 +220,7 @@
  "Thanks, this is great analysis - I'd be quite interested in how these\n"
  "numbers look like with the two changes Dan mentioned.\n"
  "\n"
- "\t-Vishal"
+ "\t-Vishal\n"
+ "\303\277\303\264\303\250\302\272{.n\303\207+\302\211\302\267\302\237\302\256\302\211\302\255\302\206+%\302\212\303\213\303\277\302\261\303\251\303\235\302\266\027\302\245\302\212w\303\277\302\272{.n\303\207+\302\211\302\267\302\245\302\212{\302\261\303\276G\302\253\302\235\303\251\303\277\302\212{ay\302\272\035\303\212\302\207\303\232\302\231\303\253,j\a\302\255\302\242f\302\243\302\242\302\267h\302\232\302\217\303\257\302\201\303\252\303\277\302\221\303\252\303\247z_\303\250\302\256\003(\302\255\303\251\302\232\302\216\302\212\303\235\302\242j\"\302\235\303\272\032\302\266\033m\302\247\303\277\303\277\302\276\a\302\253\303\276G\302\253\302\235\303\251\303\277\302\242\302\270?\302\231\302\250\303\250\302\255\303\232&\302\243\303\270\302\247~\302\217\303\241\302\266iO\302\225\303\246\302\254z\302\267\302\232v\303\230^\024\004\032\302\266\033m\302\247\303\277\303\277\303\203\f\303\277\302\266\303\254\303\277\302\242\302\270?\302\226I\302\245"
 
-14d1eb1b385416b3b5948363df4fde8112f6a8e8da7fb4d914eab7db4ac88eef
+f7657418467667a4037c460f9c207bb6672f6983fd5165684a45c8a05a0f816a

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.