1 2017-07-16 00:11:13	0|sipa|BlueMatt: i'm not
  2 2017-07-16 00:13:07	0|bitcoin-git|[13bitcoin] 15practicalswift opened pull request #10839: Don't use pass by reference to const for cheaply-copied types (bool, char, etc.). (06master...06dont-pass-by-reference-for-cheaply-copied-types) 02https://github.com/bitcoin/bitcoin/pull/10839
  3 2017-07-16 00:21:21	0|fanquake|sipa same issue as before. Assertion failed: (consensus.hashGenesisBlock etc
  4 2017-07-16 00:22:45	0|sipa|fanquake: ok, thank you
  5 2017-07-16 00:27:22	0|bitcoin-git|[13bitcoin] 15practicalswift opened pull request #10840: Remove duplicate include (06master...06remove-duplicate-include) 02https://github.com/bitcoin/bitcoin/pull/10840
  6 2017-07-16 01:08:09	0|AsadSalman|Hi
  7 2017-07-16 01:08:33	0|AsadSalman|I'm working in the bitcoin core, trying to get the amount of a transaction sent into the mempool
  8 2017-07-16 01:09:00	0|AsadSalman|I'm logging all entries (working on regtestnet, btw)
  9 2017-07-16 01:09:41	0|AsadSalman|http://imgur.com/a/olCNk
 10 2017-07-16 01:10:09	0|AsadSalman|I am able to get a value out (as you can see in the screenshot)
 11 2017-07-16 01:10:22	0|AsadSalman|but that is a sum of both CTxOut
 12 2017-07-16 01:10:59	0|AsadSalman|I only want the amount I spent (which was 10BTC, i.e. 1,000,000,000 satoshi)
 13 2017-07-16 01:11:25	0|AsadSalman|I don't know what the other CTxOut that is getting summed in is, and how do I get rid of it in the final sum?
 14 2017-07-16 01:11:32	0|sipa|it's change
 15 2017-07-16 01:11:56	0|AsadSalman|change? I'm not sure what you mean, could you elaborate?
 16 2017-07-16 01:12:05	0|sipa|not here, try bitcoin.stackexchange.com
 17 2017-07-16 01:12:11	0|sipa|or #bitcoin
 18 2017-07-16 01:12:44	0|AsadSalman|okay! (sorry, I thought this would be an appropriate place to ask about core)
 19 2017-07-16 01:13:10	0|sipa|your question is about how bitcoin transactions work
 20 2017-07-16 02:47:23	0|gmaxwell|BlueMatt: on 10831 please review the rebase carefully, I'm sick and wouldn't even have done the rebase today but for merge window urgency.
 21 2017-07-16 03:58:29	0|cfields|sipa: still crashes :(
 22 2017-07-16 03:59:49	0|cfields|sipa: i managed to get lldb to step into the asm, but it doesn't show me where I am when i single-step instructions, only that I'm in the asm block. So i have to step 1 instruction at a time and dump registers
 23 2017-07-16 04:00:49	0|cfields|the explicit assignments will help though, since now I'll know where I'm looking
 24 2017-07-16 04:03:08	0|sipa|cfields: so you do reach the asm block?
 25 2017-07-16 04:03:21	0|sipa|can you count how many instructions inside you execute?
 26 2017-07-16 04:03:27	0|cfields|sipa: yea, and past the zero-size check
 27 2017-07-16 04:04:55	0|cfields|sipa: yea, i can do that. the recent changes should make it much easier, i'll poke some more
 28 2017-07-16 04:10:42	0|sipa|cfields: thanks for all the time you're spending on thid
 29 2017-07-16 04:11:19	0|cfields|sipa: np. it's a big boost.
 30 2017-07-16 04:12:28	0|sipa|cfields: for IBD it seems a 200-300 second reduction to block 450k
 31 2017-07-16 04:12:58	0|sipa|at the tip the impact is probably larger, but harder to benchmark
 32 2017-07-16 04:14:04	0|cfields|wow
 33 2017-07-16 04:15:22	0|cfields|net-side will benefit at the tip too, though probably not enough to be relevant
 34 2017-07-16 04:15:50	0|cfields|sipa: gcc docs says the value of inputs isn't allowed to change. i suppose values of pointers passed in are ok though?
 35 2017-07-16 04:16:09	0|sipa|cfields: the only inputs are constants
 36 2017-07-16 04:16:25	0|sipa|everything else is marked as an output
 37 2017-07-16 04:17:29	0|cfields|oh right, nm
 38 2017-07-16 04:18:02	0|gmaxwell|sha-ni is a bigger boost.
 39 2017-07-16 04:18:15	0|sipa|yes, far larger
 40 2017-07-16 04:18:20	0|sipa|close to 1000s reduction
 41 2017-07-16 04:18:32	0|sipa|more like 800s
 42 2017-07-16 04:18:43	0|sipa|(compared to master)
 43 2017-07-16 04:20:17	0|gmaxwell|cfields: I expect even just sse4 to make a very measurable improvement in compact block relay... that is mostly bottlenecked on sha2...
 44 2017-07-16 04:21:16	0|cfields|whoa
 45 2017-07-16 04:22:48	0|cfields|have you benchmarked any benefit to adding a dedicated sha2d?
 46 2017-07-16 04:25:11	0|sipa|cfields: can you show another disasm?
 47 2017-07-16 04:25:53	0|gmaxwell|haven't though if we want further benefit I think what we really want is a hash tree that hashes multiple things at once,  parallel sse4 sha2 is significantly faster than one at a time... and it even looks like for sha-ni for max throughput you want to do at least two at a time.
 48 2017-07-16 04:27:12	0|cfields|gmaxwell: yea, i was reading that paper (one of many?) yesterday
 49 2017-07-16 04:27:16	0|cfields|sipa: https://pastebin.com/raw/jY0EGwDB
 50 2017-07-16 04:27:47	0|cfields|stepping through it now
 51 2017-07-16 04:28:24	0|cfields|sipa: note that i haven't hand-modified any flags for that one, so the stack protector is in place where it hasn't been in other dumps
 52 2017-07-16 04:30:00	0|sipa|i can see
 53 2017-07-16 04:30:03	0|sipa|that
 54 2017-07-16 04:34:36	0|sipa|cfields: during the entire execution, the rdi register should contain a pointer to the SHA256 state
 55 2017-07-16 04:34:41	0|sipa|and it should never change
 56 2017-07-16 04:35:43	0|sipa|there is not a single instruction in your disasm that modifies that register, so far so good
 57 2017-07-16 04:36:07	0|sipa|so the question is... is rdi actually pointing to the state?
 58 2017-07-16 04:36:21	0|gmaxwell|sipa: you could try taking cfields disasm and monkey patching it into a binary to try to reproduce he failure.
 59 2017-07-16 04:36:47	0|sipa|gmaxwell: nontrivial... linking information would be lost
 60 2017-07-16 04:36:51	0|cfields|sipa: actually, hold on. linker stuck a bunch of nops in the final binary...
 61 2017-07-16 04:37:08	0|cfields|let met give you a dump of that rather than a dump of just the object
 62 2017-07-16 04:37:14	0|sipa|cfields: ah, yes!
 63 2017-07-16 04:37:37	0|gmaxwell|linker replaced the object with foldgers crystals,  turns out we noticed.
 64 2017-07-16 04:39:00	0|cfields|uhmm, wtf
 65 2017-07-16 04:39:32	0|sipa|the linker replaced the object with foldgers crystals?
 66 2017-07-16 04:39:44	0|cfields|ok, i don't trust myself enough here to be a proxy debugger...
 67 2017-07-16 04:39:49	0|cfields|sec
 68 2017-07-16 04:41:14	0|cfields|I'm just going to send you the whole dasm. Got anywhere convenient for a 58mb text dump?
 69 2017-07-16 04:42:31	0|sipa|sure
 70 2017-07-16 04:42:37	0|sipa|mail?
 71 2017-07-16 04:47:44	0|midnightmagic|lol
 72 2017-07-16 05:06:07	0|sipa|gmaxwell: your foldgers crystals guess is surprisingly accurate
 73 2017-07-16 05:09:20	0|cfields|bingo!
 74 2017-07-16 05:09:23	0|cfields|got it.
 75 2017-07-16 05:10:12	0|sipa|oh?
 76 2017-07-16 05:11:10	0|cfields|now to figure out why :)
 77 2017-07-16 05:11:12	0|cfields|-Wl,-dead_strip
 78 2017-07-16 05:11:50	0|cfields|it's weird that if it's going to strip it, it doesn't strip the whole thing though
 79 2017-07-16 05:12:45	0|cfields|(to be clear, we use -Wl,-dead_strip by default. With that removed, it runs as expected)
 80 2017-07-16 05:15:09	0|sipa|cfields: give local labels a name that starts with L
 81 2017-07-16 05:15:24	0|sipa|that way the linker treats them as local labels rather than separate functions
 82 2017-07-16 05:18:47	0|cfields|sipa: works!
 83 2017-07-16 05:19:31	0|sipa|http://www.galloway.me.uk/2011/03/assembly-beware-local-label-names-with-dead_strip-option/
 84 2017-07-16 05:19:37	0|sipa|i found thst
 85 2017-07-16 05:20:04	0|cfields|hah! well that was some easy googling for once :)
 86 2017-07-16 05:24:04	0|cfields|sipa: do you see that documented anywhere?
 87 2017-07-16 05:24:25	0|sipa|nope
 88 2017-07-16 05:28:34	0|bitcoin-git|[13bitcoin] 15jnewbery opened pull request #10841: [rpc] Give users one final warning before depracating getinfo (06master...06deprecate_getinfo) 02https://github.com/bitcoin/bitcoin/pull/10841
 89 2017-07-16 05:30:35	0|cfields|sipa: https://sourceware.org/binutils/docs/as/Symbol-Names.html#Symbol-Names
 90 2017-07-16 05:33:45	0|sipa|ah
 91 2017-07-16 05:36:05	0|cfields|sipa: maybe safer to use digits instead, then? Reading the docs like a pedant, I assume some future linker could break win32 the same way.
 92 2017-07-16 05:44:36	0|cfields|nope, that's crashy too
 93 2017-07-16 06:22:38	0|sipa|cfields: so, latest PR version works?
 94 2017-07-16 06:24:16	0|cfields|sipa: i don't think so, i think that matches what i tried
 95 2017-07-16 06:24:33	0|sipa|?
 96 2017-07-16 06:24:45	0|cfields|sipa: i misread the docs, look at their example
 97 2017-07-16 06:25:02	0|cfields|"So for example, the first 1: may be named .L1C-B1, and the 44th 3: may be named .L3C-B44."
 98 2017-07-16 06:25:25	0|sipa|A local symbol is any symbol beginning with certain local label prefixes. By default, the local label prefix is `.L' for ELF systems or `L' for traditional a.out systems, but each target may have its own set of local label prefixes.
 99 2017-07-16 06:25:33	0|cfields|apparently the numbers aren't a replacement for the L prefix
100 2017-07-16 06:25:54	0|sipa|you're looking at automatically generated names
101 2017-07-16 06:26:11	0|sipa|we don't need that; the asm syntax's %= guaranrees uniqueness already
102 2017-07-16 06:28:37	0|cfields|sipa: sorry, misread the diff
103 2017-07-16 06:29:34	0|sipa|it won't work, i forgot to rename the jumps
104 2017-07-16 06:29:46	0|cfields|yep, with those renamed, all good
105 2017-07-16 06:39:19	0|phantomcircuit|gmaxwell, btw when i did the walletdb stuff i was doing CWalletDB *pwalletdb=NULL and then initializing pwalletdb only if it was null instead of creating a new function
106 2017-07-16 10:22:43	0|bitcoin-git|[13bitcoin] 15practicalswift opened pull request #10842: Fix incorrect Doxygen tag (@ince → @since) (06master...06doxygen-since) 02https://github.com/bitcoin/bitcoin/pull/10842
107 2017-07-16 13:07:43	0|bitcoin-git|[13bitcoin] 15practicalswift opened pull request #10843: Add attribute [[noreturn]] (C++11) to functions that will not return (06master...06noreturn) 02https://github.com/bitcoin/bitcoin/pull/10843
108 2017-07-16 13:48:53	0|terjegun|Hello! I was wondering, is there any reward for contributing translations to the project?
109 2017-07-16 13:50:14	0|Lauda|No.
110 2017-07-16 13:50:39	0|instagibbs|terjegun, satisfaction in knowing you helped others?
111 2017-07-16 13:55:11	0|bitcoin-git|[13bitcoin] 15ReneNyffenegger opened pull request #10844: Use range based for loop (06master...06dbwrapper_tests-for) 02https://github.com/bitcoin/bitcoin/pull/10844
112 2017-07-16 16:49:57	0|bitcoin-git|[13bitcoin] 15TheBlueMatt closed pull request #10838: (finally) remove the longest-ever-deprecated RPC call getinfo (06master...062017-07-seriously-fuck-getinfo) 02https://github.com/bitcoin/bitcoin/pull/10838
113 2017-07-16 17:44:21	0|bitcoin-git|[13bitcoin] 15practicalswift opened pull request #10845: Remove unreachable code (06master...06remove-unreachable-code) 02https://github.com/bitcoin/bitcoin/pull/10845
114 2017-07-16 18:03:34	0|bitcoin-git|[13bitcoin] 15TheBlueMatt opened pull request #10846: Add stdlib include in qt/test/test_main (for setenv) (06master...062017-07-env-include) 02https://github.com/bitcoin/bitcoin/pull/10846
115 2017-07-16 18:24:58	0|bitcoin-git|[13bitcoin] 15TheBlueMatt closed pull request #10846: Add stdlib include in qt/test/test_main (for setenv) (06master...062017-07-env-include) 02https://github.com/bitcoin/bitcoin/pull/10846
116 2017-07-16 18:51:15	0|bitcoin-git|13bitcoin/06master 14674848f 15Pieter Wuille: Clarify entropy source
117 2017-07-16 18:51:15	0|bitcoin-git|13bitcoin/06master 14a9e82f6 15Pieter Wuille: Use cpuid intrinsics instead of asm code
118 2017-07-16 18:51:15	0|bitcoin-git|[13bitcoin] 15sipa pushed 3 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/5cfdda2503c9...ef37f2033c4a
119 2017-07-16 18:51:16	0|bitcoin-git|13bitcoin/06master 14ef37f20 15Pieter Wuille: Merge #10820: Use cpuid intrinsics instead of asm code...
120 2017-07-16 18:51:44	0|bitcoin-git|[13bitcoin] 15sipa closed pull request #10820: Use cpuid intrinsics instead of asm code (06master...0620170717_cpuid) 02https://github.com/bitcoin/bitcoin/pull/10820
121 2017-07-16 18:56:33	0|bitcoin-git|13bitcoin/06master 14912da1d 15René Nyffenegger: Use AC_ARG_VAR to set ARFLAGS....
122 2017-07-16 18:56:33	0|bitcoin-git|13bitcoin/06master 14b4d03be 15Pieter Wuille: Merge #10766: Building Environment: Set ARFLAGS to cr...
123 2017-07-16 18:56:33	0|bitcoin-git|[13bitcoin] 15sipa pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/ef37f2033c4a...b4d03be3cac0
124 2017-07-16 18:57:03	0|bitcoin-git|[13bitcoin] 15sipa closed pull request #10766: Building Environment: Set ARFLAGS to cr (06master...06ARFLAGS) 02https://github.com/bitcoin/bitcoin/pull/10766
125 2017-07-16 19:00:43	0|bitcoin-git|13bitcoin/06master 14c53369c 15practicalswift: Remove duplicate include
126 2017-07-16 19:00:43	0|bitcoin-git|[13bitcoin] 15sipa pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/b4d03be3cac0...99c7db8731cc
127 2017-07-16 19:00:44	0|bitcoin-git|13bitcoin/06master 1499c7db8 15Pieter Wuille: Merge #10840: Remove duplicate include...
128 2017-07-16 19:01:13	0|bitcoin-git|[13bitcoin] 15sipa closed pull request #10840: Remove duplicate include (06master...06remove-duplicate-include) 02https://github.com/bitcoin/bitcoin/pull/10840
129 2017-07-16 19:03:53	0|bitcoin-git|13bitcoin/06master 14d0413c6 15René Nyffenegger: Use range based for loop...
130 2017-07-16 19:03:53	0|bitcoin-git|[13bitcoin] 15sipa pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/99c7db8731cc...ad6fce67b9bb
131 2017-07-16 19:03:54	0|bitcoin-git|13bitcoin/06master 14ad6fce6 15Pieter Wuille: Merge #10844: Use range based for loop...
132 2017-07-16 19:04:23	0|bitcoin-git|[13bitcoin] 15sipa closed pull request #10844: Use range based for loop (06master...06dbwrapper_tests-for) 02https://github.com/bitcoin/bitcoin/pull/10844
133 2017-07-16 19:15:45	0|bitcoin-git|13bitcoin/06master 146835cb0 15practicalswift: Avoid static analyzer warnings regarding uninitialized arguments...
134 2017-07-16 19:15:45	0|bitcoin-git|[13bitcoin] 15sipa pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/ad6fce67b9bb...565494619d80
135 2017-07-16 19:15:46	0|bitcoin-git|13bitcoin/06master 145654946 15Pieter Wuille: Merge #10735: Avoid static analyzer warnings regarding uninitialized arguments...
136 2017-07-16 19:16:10	0|bitcoin-git|[13bitcoin] 15sipa closed pull request #10735: Avoid static analyzer warnings regarding uninitialized arguments (06master...06std-array) 02https://github.com/bitcoin/bitcoin/pull/10735
137 2017-07-16 19:29:42	0|sipa|do we know about this: https://bitcoin.stackexchange.com/questions/56750/autogen-sh-not-working-on-ubuntu-on-windows ?
138 2017-07-16 19:30:59	0|BlueMatt|that seems to indicate it doesnt support "seg -e"???
139 2017-07-16 19:31:06	0|BlueMatt|that sounds like an ubuntu-on-windows issue
140 2017-07-16 19:31:52	0|sipa|I vaguely remember that there were known issues when building on Ubuntu-in-Windows, but I don't remember whether it was this.
141 2017-07-16 19:32:39	0|BlueMatt|not this, no
142 2017-07-16 19:32:45	0|BlueMatt|well, afair
143 2017-07-16 19:48:15	0|cfields|IIRC the last round of problems was caused by an update that borked the default path
144 2017-07-16 19:51:09	0|sipa|cfields: what is the option to make gcc emit every function in its own section?
145 2017-07-16 19:51:45	0|cfields|sipa: ffunction-section
146 2017-07-16 19:51:59	0|cfields|er, there's another s in there somewhere though
147 2017-07-16 19:52:25	0|cfields|-ffunction-sections
148 2017-07-16 19:52:26	0|sipa|do we enable -Wl,--gc-sections by default?
149 2017-07-16 19:52:31	0|cfields|sipa: and you want to link with -gc-sections
150 2017-07-16 19:52:33	0|cfields|no
151 2017-07-16 19:54:08	0|sipa|any reason not to?
152 2017-07-16 19:56:30	0|cfields|sipa: i think default-hidden-visibility accomplishes the same thing without the section bloat?
153 2017-07-16 19:59:40	0|sipa|cfields: is that always set for us?
154 2017-07-16 20:01:51	0|sipa|cfields: a build with CFLAGS/CXXFLAGS/LDFLAGS all set to "-O2 -g0", results in a 6MB stripped bitcoind
155 2017-07-16 20:02:15	0|sipa|cfields: a build with CFLAGS/CXXFLAGS/LDFLAGS all set to "-O2 -g0 -ffunction-sections -fdata-sections -Wl,--gc-sections", results in a 5.4MB stripped bitcoind
156 2017-07-16 20:03:38	0|cfields|sipa: it's not set auto, --enable-reduced-exports
157 2017-07-16 20:03:45	0|cfields|mind comparing with that?
158 2017-07-16 20:03:54	0|gmaxwell|why don't we do that by default
159 2017-07-16 20:04:10	0|cfields|gmaxwell: there's a visibility issue with some boost versions
160 2017-07-16 20:04:17	0|gmaxwell|ah
161 2017-07-16 20:05:31	0|sipa|cfields: that option makes no difference; 6.0MB again
162 2017-07-16 20:05:43	0|cfields|huh
163 2017-07-16 20:06:36	0|sipa|make clean && ./configure --with-incompatible-bdb --without-gui --enable-reduced-exports && make -j9 src/bitcoind && strip src/bitcoind && wc -c src/bitcoind
164 2017-07-16 20:06:40	0|sipa|6008256 src/bitcoind
165 2017-07-16 20:07:32	0|cfields|sipa: sounds promising then, though I'm kinda confused as to why
166 2017-07-16 20:07:59	0|sipa|make clean && COMMON="-O2" && ./configure --with-incompatible-bdb --without-gui CFLAGS="$COMMON" CXXFLAGS="$COMMON" LDFLAGS="$COMMON" && make -j9 src/bitcoind && strip src/bitcoind && wc -c src/bitcoind
167 2017-07-16 20:08:06	0|sipa|6008256 src/bitcoind
168 2017-07-16 20:08:33	0|sipa|^ exactly the same
169 2017-07-16 20:08:50	0|sipa|make clean && COMMON="-O2 -ffunction-sections -fdata-sections -Wl,--gc-sections" && ./configure --with-incompatible-bdb --without-gui CFLAGS="$COMMON" CXXFLAGS="$COMMON" LDFLAGS="$COMMON" && make -j9 src/bitcoind && strip src/bitcoind && wc -c src/bitcoind
170 2017-07-16 20:08:54	0|sipa|5397952 src/bitcoind
171 2017-07-16 20:10:00	0|cfields|sipa: i wonder if there are any downsides wrt locality?
172 2017-07-16 20:10:32	0|sipa|cfields: i can run a reindex benchmark
173 2017-07-16 20:14:16	0|sipa|cfields: should --enable-reduced-exports affect the CXXFLAGS/LDFLAGS that get printed in any way?
174 2017-07-16 20:14:49	0|cfields|sipa: sigh, probably not
175 2017-07-16 20:15:04	0|cfields|that needs to be cleaned up. There's lots of stuff not reported
176 2017-07-16 20:16:20	0|gmaxwell|sipa: you mean when doing a V=1 build so you can see the arguments it actually uses
177 2017-07-16 20:16:31	0|cfields|sipa: aurgh!
178 2017-07-16 20:17:25	0|cfields|wait, hmm
179 2017-07-16 20:18:20	0|cfields|sipa: sorry, i lied to you :(
180 2017-07-16 20:18:24	0|cfields|--enable-reduce-exports
181 2017-07-16 20:18:55	0|sipa|shouldn't it complain if i make a typo?
182 2017-07-16 20:19:16	0|cfields|sipa: it used to, but we can't anymore because config options get forwarded to subconfigs
183 2017-07-16 20:19:34	0|sipa|heh, i always wondered how it dealt with that...
184 2017-07-16 20:21:44	0|sipa|-rwxr-xr-x 1 pw pw   5397952 Jul 16 13:19 src/bitcoind-shasse-O2sections
185 2017-07-16 20:21:44	0|sipa|-rwxr-xr-x 1 pw pw   5979584 Jul 16 13:21 src/bitcoind-shasse-O2reduce
186 2017-07-16 20:21:44	0|sipa|-rwxr-xr-x 1 pw pw   6008256 Jul 16 13:15 src/bitcoind-shasse-O2
187 2017-07-16 20:22:07	0|sipa|the middle one is with CXXFLAGS="-O2" --enable-reduce-exports
188 2017-07-16 20:26:04	0|sipa|benchmarking those 3
189 2017-07-16 20:26:08	0|cfields|sipa: may as well try with -fdata-sections too
190 2017-07-16 20:27:18	0|sipa|cfields: yeah, that's with both
191 2017-07-16 20:27:29	0|gmaxwell|sipa: why would you expect a performance difference?
192 2017-07-16 20:27:42	0|cfields|ah ok
193 2017-07-16 20:30:03	0|sipa|gmaxwell: cfields asked if there could be a locality impact
194 2017-07-16 20:50:26	0|bitcoin-git|13bitcoin/06master 145618b7d 15Pavel Janík: Do not shadow upper local variable `state`.
195 2017-07-16 20:50:26	0|bitcoin-git|[13bitcoin] 15MarcoFalke pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/565494619d80...1fc783fc08bc
196 2017-07-16 20:50:27	0|bitcoin-git|13bitcoin/06master 141fc783f 15MarcoFalke: Merge #10739: test: Move variable `state` down where it is used...
197 2017-07-16 20:50:46	0|bitcoin-git|[13bitcoin] 15MarcoFalke closed pull request #10739: test: Move variable `state` down where it is used (06master...0620170704_Wshadow_txvalidationcache_tests) 02https://github.com/bitcoin/bitcoin/pull/10739
198 2017-07-16 20:55:38	0|cfields|sipa: if we're using ffunction-sections, we can use -Wl,--icf=safe too
199 2017-07-16 20:56:37	0|cfields|shaves off another ~70k for me
200 2017-07-16 20:56:39	0|sipa|cfields: i don't see that in man ld
201 2017-07-16 20:56:54	0|cfields|sipa: man ld.gold
202 2017-07-16 20:57:53	0|sipa|ah
203 2017-07-16 21:19:29	0|bincap|given two gitian.signs asserts (from two people) is there a quick command to compare if their out_manifest is identical?
204 2017-07-16 21:23:31	0|bitcoin-git|[13bitcoin] 15practicalswift opened pull request #10847: Enable devirtualization opportunities by using the final specifier (C++11) (06master...06devirtualization) 02https://github.com/bitcoin/bitcoin/pull/10847
205 2017-07-16 21:44:52	0|bitcoin-git|13bitcoin/06master 142c2e90d 15practicalswift: Fix incorrect Doxygen tag (@ince → @since). Make Doxygen parameter names match actual parameter names.
206 2017-07-16 21:44:52	0|bitcoin-git|[13bitcoin] 15MarcoFalke pushed 2 new commits to 06master: 02https://github.com/bitcoin/bitcoin/compare/1fc783fc08bc...3895e25a7736
207 2017-07-16 21:44:53	0|bitcoin-git|13bitcoin/06master 143895e25 15MarcoFalke: Merge #10842: Fix incorrect Doxygen tag (@ince → @since). Doxygen parameter name matching....
208 2017-07-16 21:45:18	0|bitcoin-git|[13bitcoin] 15MarcoFalke closed pull request #10842: Fix incorrect Doxygen tag (@ince → @since). Doxygen parameter name matching. (06master...06doxygen-since) 02https://github.com/bitcoin/bitcoin/pull/10842
209 2017-07-16 22:01:03	0|Chris_Stewart_5|In the test framework, using node.generate() will propogate the block to another peer right?
210 2017-07-16 22:01:23	0|sipa|it'll propagate to whatever other peer it is connected to
211 2017-07-16 22:01:45	0|sipa|who will do the same
212 2017-07-16 22:02:09	0|Chris_Stewart_5|Do I need to use some sort of sleep mechanism if I need it to propogate before runnign the next line?
213 2017-07-16 22:02:25	0|sipa|no, you need to use wait_for_block
214 2017-07-16 22:02:32	0|sipa|or something similar
215 2017-07-16 22:02:43	0|Chris_Stewart_5|oh, cool. I'll check that out. Thanks.
216 2017-07-16 22:33:42	0|BlueMatt|cfields: gonna update 10809?
217 2017-07-16 22:35:23	0|sipa|BlueMatt: care to investigate #10758?
218 2017-07-16 22:35:24	0|gribble|https://github.com/bitcoin/bitcoin/issues/10758 | Fix some chainstate-init-order bugs. by TheBlueMatt · Pull Request #10758 · bitcoin/bitcoin · GitHub
219 2017-07-16 22:35:43	0|sipa|(it seems to forget progress when continuing a reindex)
220 2017-07-16 22:36:04	0|BlueMatt|oh, yes, thats next on my list
221 2017-07-16 22:36:22	0|sipa|actually, i may be an idiot there
222 2017-07-16 22:37:08	0|BlueMatt|hmm, did that not used to happen? I have no idea
223 2017-07-16 22:38:20	0|sipa|it is supposed to start over from scratch, but go faster through the parts it has already done
224 2017-07-16 22:39:52	0|sipa|i guess the thing to make sure is that it does not wipe the block index when contonuing a reindex
225 2017-07-16 22:41:02	0|BlueMatt|it shouldnt, though
226 2017-07-16 22:41:03	0|BlueMatt|hmm
227 2017-07-16 22:41:15	0|BlueMatt|(thats the section where you commented on the comment you found confusing
228 2017-07-16 22:41:32	0|BlueMatt|(it says explicitly that we dont want to clear the db even if we're setting fReindex unless its a new reindex...)
229 2017-07-16 22:42:32	0|sipa|well i failed to understand what it was trying to say :)
230 2017-07-16 22:43:31	0|BlueMatt|sipa: try now?
231 2017-07-16 22:43:33	0|BlueMatt|(comment, that is)
232 2017-07-16 22:43:35	0|BlueMatt|didnt change the code
233 2017-07-16 22:43:42	0|sipa|ok, will have a look soon
234 2017-07-16 22:43:56	0|BlueMatt|so, wait, do you think there is a bug that i should go hunt or do you think you mis-read?
235 2017-07-16 22:45:22	0|sipa|i thought there was a bug, but i'm less sure now
236 2017-07-16 22:45:28	0|sipa|i'll verify
237 2017-07-16 22:53:34	0|BlueMatt|hmmm...this client-side getinfo thing scares me
238 2017-07-16 22:54:01	0|BlueMatt|our rpcs are always atomic elements, but if you start calling getinfo, then getwalletinfo, then getmininginfo separately, they could return results based on different views of the current chain
239 2017-07-16 22:54:07	0|BlueMatt|which would be astoundingly confusing for users
240 2017-07-16 22:54:58	0|sipa|i'm totally fine with deprecating and then deleting
241 2017-07-16 22:55:30	0|BlueMatt|well I'm curious what the previously-mentioned "IRC discussion" was that resulted in the pr getting reopened
242 2017-07-16 22:55:47	0|BlueMatt|i dont want to show up late to the party and shit on it and say it shouldnt happen, but I'm really uneasy about the idea
243 2017-07-16 22:58:17	0|BlueMatt|sipa: do you want the asm sha in for 15?
244 2017-07-16 22:58:21	0|BlueMatt|should i bother reviewing it?
245 2017-07-16 22:58:26	0|BlueMatt|(yet)
246 2017-07-16 22:58:56	0|sipa|BlueMatt: i think it's a great and easy performance win, and i think it's ready
247 2017-07-16 22:59:11	0|sipa|whether we want it in 0.15 depends on reviewer interest
248 2017-07-16 23:00:19	0|BlueMatt|k
249 2017-07-16 23:00:23	0|BlueMatt|i'll try to get to it
250 2017-07-16 23:01:01	0|sipa|awesome
251 2017-07-16 23:01:39	0|cfields|BlueMatt: yea, will do in a bit. I'm frantically trying to bump qt atm.
252 2017-07-16 23:02:40	0|cfields|+1 for sha asm in 0.15
253 2017-07-16 23:09:21	0|cfields|sipa: any theories as to what slows down the lto build?
254 2017-07-16 23:11:42	0|sipa|cfields: over-eager inlining across objects?
255 2017-07-16 23:14:06	0|cfields|makes sense
256 2017-07-16 23:14:12	0|gmaxwell|sipa: wumpus had a comment about where the detection was being triggered for the asm.
257 2017-07-16 23:14:14	0|cfields|i could see how it might make a mess of our serialization
258 2017-07-16 23:14:39	0|sipa|gmaxwell: i've long since addressed that and commented about it
259 2017-07-16 23:14:43	0|gmaxwell|I only haven't acked it because I didn't think the patch was in its final state yet... I've tried it on a few hosts, works as expected.
260 2017-07-16 23:14:46	0|gmaxwell|sipa: oh
261 2017-07-16 23:15:35	0|gmaxwell|oh I see there are more commits now
262 2017-07-16 23:15:57	0|sipa|gmaxwell: where 'long' means 15 hours ago
263 2017-07-16 23:16:45	0|sipa|it also prints which implementation is being used
264 2017-07-16 23:17:29	0|sipa|the only unaddressed comment is BlueMatt's concern about printing copyright information for binary-only distributions
265 2017-07-16 23:17:53	0|BlueMatt|we do it for openssl for qt - we have it in the about dialog or smth iirc
266 2017-07-16 23:18:09	0|gmaxwell|I don't believe matt is correct in any case; we don't have a "binary only distribution" -- sure you don't have to download the source, but thats up to you.
267 2017-07-16 23:18:09	0|sipa|easy enough to add something there, if needed
268 2017-07-16 23:18:18	0|gmaxwell|BlueMatt: openssl is 4-clause BSD
269 2017-07-16 23:20:01	0|cfields|\o/ a self-test
270 2017-07-16 23:20:55	0|sipa|cfields: actually, you should test whether reintroducing the foldgers crystals bug in the sse asm causes it to select the basic sha256 implementation at run time
271 2017-07-16 23:20:58	0|sipa|it should
272 2017-07-16 23:22:11	0|gmaxwell|sipa: I was thinking of suggesting logging that failure, when cpu id and selftest disagree...
273 2017-07-16 23:22:16	0|cfields|sipa: hmm, i wonder if we should still fail in that case though, and require a --software-sha256 flag or something
274 2017-07-16 23:22:27	0|sipa|gmaxwell: the crypto code doesn't have access to logging
275 2017-07-16 23:22:35	0|cfields|if that's happening in the wild, we really want to know about it
276 2017-07-16 23:23:07	0|sipa|we could assert in case the selftest doesn't go as expected
277 2017-07-16 23:23:15	0|sipa|i agree that this may hide bugs
278 2017-07-16 23:23:47	0|sipa|though in a pretty safe way... i don't think it's easy to screw up SHA256 in a way that wouldn't be detectable with a single test
279 2017-07-16 23:24:37	0|gmaxwell|sipa: one thing the selftest doesn't extensively test is sensitivity to alignent.
280 2017-07-16 23:24:45	0|sipa|ok, i can fix that
281 2017-07-16 23:24:58	0|sipa|i can also extend it to test 0 and/or 2 blocks rather than just a single block
282 2017-07-16 23:25:42	0|BlueMatt|gmaxwell: hmm? bitcoin.org/bin has binary distributions
283 2017-07-16 23:25:48	0|BlueMatt|we ship binary-only stuff, at least on windows
284 2017-07-16 23:25:52	0|BlueMatt|iirc
285 2017-07-16 23:26:41	0|sipa|BlueMatt: i think gmaxwell's point is that the source code is still available for those
286 2017-07-16 23:26:54	0|sipa|i have no idea whether that matters, IANAL
287 2017-07-16 23:27:17	0|BlueMatt|ah, ok
288 2017-07-16 23:27:20	0|BlueMatt|wellt hen I dont care
289 2017-07-16 23:27:37	0|BlueMatt|as long as his point isnt "we dont ship binary-only" and is instead "but source is freely available", then he would know :)
290 2017-07-16 23:27:52	0|gmaxwell|BlueMatt: if it meant what you thought, it wouldn't be GPL compatible. You're interperting the license in the same way that 4-clause bsd is written.
291 2017-07-16 23:28:03	0|BlueMatt|k :)
292 2017-07-16 23:28:35	0|gmaxwell|BlueMatt: my point was we always make the source available.
293 2017-07-16 23:30:20	0|bitcoin-git|[13bitcoin] 15TheBlueMatt reopened pull request #10838: (finally) remove the longest-ever-deprecated RPC call getinfo (06master...062017-07-seriously-fuck-getinfo) 02https://github.com/bitcoin/bitcoin/pull/10838
294 2017-07-16 23:30:46	0|BlueMatt|gmaxwell: we dont always *ship* the source along with the binary
295 2017-07-16 23:30:49	0|BlueMatt|was my point
296 2017-07-16 23:30:56	0|BlueMatt|as long as I'm misreading the liscense, I withdraw my concern :)
297 2017-07-16 23:31:06	0|BlueMatt|we just make it available
298 2017-07-16 23:53:54	0|gmaxwell|sipa: not something to fix now, but I see that the multiblock code doesn't really make a heroic effort to transform multiple blocks at a time.  This may disavantage the avx2-rorx code, which really wants 2 blocks at a time (as it vector processes the initial expander in both blocks)
299 2017-07-16 23:54:54	0|sipa|gmaxwell: that's not too hard to fix
300 2017-07-16 23:55:32	0|gmaxwell|ya, I know. e.g. change the buffering to buffer two blocks.
301 2017-07-16 23:55:54	0|sipa|yeah
302 2017-07-16 23:56:13	0|gmaxwell|similar, the 8m rorx code is setup for 8 blocks.