troubleshooting:crypto_upg
git update xmr-stak a xmrig-proxy
Incorrect algorithm
- oficiální xmr-stak TRTL netěží přes moji xmrig-proxy, protože:
>> {"method":"submit","params":{"id":"8aa1d53d-4307-43a1-83d7-3423aa23c9c5", "job_id":"565206028590910470","nonce":"68130047", "result":"200d35d1c3a9f24bebffe04f43cf53262c215239c0ee756c3fc06d6aaf090100", "algo":"cryptonight_lite"},"id":1}
<< {"id":1,"jsonrpc":"2.0","error":{"code":-1,"message":"Incorrect algorithm"}}
- prostě miner hlasí, že používá cryptonight_lite, ale proxy očekává jiný
- na proxy mám nastaveno algo na cryptonight-lite, variant -1
- xmrig-proxy převodní tabulka říká, že:
| Long name | Short name | Base algorithm | Variant | Notes |
|---|---|---|---|---|
| cryptonight-lite | cn-lite | cn-lite | -1 | Autodetect works only for Aeon. |
| cryptonight-lite/0 | cn-lite/0 | cn-lite | 0 | Original/old CryptoNight-Lite. |
| XMR-Stak name | XMRig Short name |
|---|---|
| cryptonight_lite | cn-lite/0 |
| cryptonight_lite_v7 | cn-lite/1 |
- z tabulky plyne, že bych měl proxy nastavit variantu 0, aby to fungovalo s xmr-stak
- ve skutečnosti je problém ale v xmr-stak, protože hlasí starý alg
- opravil jsem v xmr-stak
Poznámky
- fix jsem provedl v xmrstak/jconf.cpp definice mincí
- všude u řádků s fork version 255 jsem zkopíroval algoroot do algo
/* BARI note: * userpool/devpool is coinDescription * devpool is selected when oWork.iPoolId set to 0 * coinDescription is {algo, algo_root, fork_version} * algo is when version >= fork_version (after fork), algo_root is < fork_version (before fork) * fork_version 255u is max value => algoroot selected all the time?? but... submit work is always algo!!! * I HAVE FIXED WRONG LINES WITH FORK VERSION 255 IN USERPOOL * * xmrig-proxy algo table: * https://github.com/xmrig/xmrig-proxy/blob/dev/doc/STRATUM_EXT.md#11-miner-defined-algorithms-list * xmrig-proxy/src/common/crypto/Algorithm.cpp */ xmrstak::coin_selection coins[] = { // name, userpool, devpool, default_pool_suggestion { "alloy", {cryptonight_alloy, cryptonight_alloy, 0u}, {cryptonight_alloy, cryptonight_alloy, 0u}, nullptr}, { "aeon7", {cryptonight_aeon, cryptonight_lite, 7u}, {cryptonight_aeon, cryptonight_lite, 7u}, nullptr}, { "bbscoin", {cryptonight_monero, cryptonight, 3u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "croat", {cryptonight_monero, cryptonight, 255u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "cryptonight", {cryptonight, cryptonight, 255u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "cryptonight_masari", {cryptonight_masari, cryptonight_masari, 255u}, {cryptonight_monero, cryptonight_monero, 0u},nullptr }, { "cryptonight_haven", {cryptonight_haven, cryptonight_haven, 255u}, {cryptonight_heavy, cryptonight_heavy, 0u}, nullptr }, { "cryptonight_heavy", {cryptonight_heavy, cryptonight_heavy, 0u}, {cryptonight_heavy, cryptonight_heavy, 0u}, nullptr }, { "cryptonight_lite", {cryptonight_lite, cryptonight_lite, 255u}, {cryptonight_aeon, cryptonight_lite, 7u}, nullptr }, { "cryptonight_lite_v7", {cryptonight_aeon, cryptonight_aeon, 255u}, {cryptonight_aeon, cryptonight_lite, 7u}, nullptr }, { "cryptonight_lite_v7_xor", {cryptonight_ipbc, cryptonight_ipbc, 255u}, {cryptonight_aeon, cryptonight_aeon, 255u}, nullptr }, { "cryptonight_v7", {cryptonight_monero, cryptonight_monero, 0u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "cryptonight_v7_stellite", {cryptonight_stellite, cryptonight_stellite, 255u}, {cryptonight_monero, cryptonight_monero, 255u}, nullptr }, { "edollar", {cryptonight_monero, cryptonight, 255u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "electroneum", {cryptonight, cryptonight, 255u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "graft", {cryptonight_monero, cryptonight, 8u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "haven", {cryptonight_haven, cryptonight_heavy, 3u}, {cryptonight_heavy, cryptonight_heavy, 0u}, nullptr }, { "intense", {cryptonight_monero, cryptonight, 4u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "ipbc", {cryptonight_ipbc, cryptonight_ipbc, 255u}, {cryptonight_aeon, cryptonight_aeon, 255u}, nullptr }, { "karbo", {cryptonight, cryptonight, 255u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "masari", {cryptonight_masari, cryptonight_monero, 7u}, {cryptonight_monero, cryptonight_monero, 0u},nullptr }, { "monero7", {cryptonight_monero, cryptonight_monero, 0u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "stellite", {cryptonight_stellite, cryptonight_monero, 4u}, {cryptonight_monero, cryptonight_monero, 0u}, nullptr }, { "sumokoin", {cryptonight_heavy, cryptonight_heavy, 0u}, {cryptonight_heavy, cryptonight_heavy, 0u}, nullptr }, { "turtlecoin", {cryptonight_aeon, cryptonight_aeon, 255u}, {cryptonight_aeon, cryptonight_lite, 7u}, nullptr } };
- v xmrstak/net/jpsock.cpp je definice funkce cmd_submit obsahující přepis alg na aliasy použité v submit
- reportuje se vždycky algo bez ohledu na verzi forku
switch(algo) { case cryptonight: algo_name = "cryptonight"; break; case cryptonight_lite: algo_name = "cryptonight_lite"; break; case cryptonight_monero: algo_name = "cryptonight_v7"; break; case cryptonight_aeon: algo_name = "cryptonight_lite_v7"; break; case cryptonight_stellite: algo_name = "cryptonight_v7_stellite"; break; case cryptonight_alloy: algo_name = "cryptonight-alloy"; break; case cryptonight_ipbc: algo_name = "cryptonight_lite_v7_xor"; break; case cryptonight_heavy: algo_name = "cryptonight_heavy"; break; case cryptonight_haven: algo_name = "cryptonight_haven"; break; case cryptonight_masari: algo_name = "cryptonight_masari"; break; default: algo_name = "unknown"; break; }
- xmrig-proxy parametr algo má podle zdrojáku Algorithm.cpp Algorithm::ParseAlgorithm hodnoty
cryptonight cryptonight-lite cryptonight-light cryptonight-heavy
- když na proxy nastavím algo cryptonight, pak
- variant -1 - oficiaální xmr-stak nejede, dřívější xmr-stak-trtl jedou, fixnutá verze nejede
- variant 0 - oficiaální xmr-stak jede, dřívější xmr-stak-trtl nejedou, fixnutá verze nejede
- variant 1 - oficiaální xmr-stak nejede, dřívější xmr-stak-trtl nejedou, fixnutá verze jede
nejradsi bych uplne zrusil tu kontrolu alg na proxy.. to dela vic skody nez uzitku kruci :D
TODO
- porovnej vykon noveho cnl1 a trtl na 8c8k… rekl bych, ze je tam polovicni :D viz screen v pictures
- přidat do xmr-stak bittube v2
UPX segfault
- druhý problém je s UPX (komprimací binárky)
- když ho aplikuji na binarku, tak po spusteni haze segfault :(
- neexistuje novější verze než kterou mám v systému
upx -V upx 3.94 UCL data compression library 1.03 zlib data compression library 1.2.11 LZMA SDK version 4.43 Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer Copyright (C) 1996-2017 Laszlo Molnar Copyright (C) 2000-2017 John F. Reiser Copyright (C) 2002-2017 Jens Medoch Copyright (C) 1995-2005 Jean-loup Gailly and Mark Adler Copyright (C) 1999-2006 Igor Pavlov UPX comes with ABSOLUTELY NO WARRANTY; for details type 'upx -L'.
- zjistil jsem, že když použiji fast compression, tak to segfault neháže
troubleshooting/crypto_upg.txt · Poslední úprava: autor: 127.0.0.1
