https://drdump.com/Problem.aspx?ProblemID=249669&login=guest
flylinkdc_x64!libtorrent::natpmp::update_mapping+0x1fb
Repeated 10726 times:
flylinkdc_x64!libtorrent::natpmp::update_mapping+0x200
flylinkdc_x64!libtorrent::natpmp::mapping_expired+0x4f
flylinkdc_x64!boost::asio::detail::wait_handler
flylinkdc_x64!boost::asio::detail::win_iocp_io_service::do_one+0x25d
flylinkdc_x64!boost::asio::detail::win_iocp_io_service::run+0xba
flylinkdc_x64!std::_LaunchPad
flylinkdc_x64!std::_Pad::_Call_func+0x9


is this something you can reproduce consistently?
No :-( only .dmp file

I see in the diffs that previously there was a mutex involved all over the place, but I'm not familiar with this part , can't say anything else.
It looks like we could get infinite recursion here if m.act != mapping_t::action::none && m.protocol == portmap_protocol::none is true for a mapping, which you can see if the case in the second screenshot. That can cause natpmp::update_mapping and natpmp::try_next_mapping to call each other in a recursive loop. It looks like natpmp::disable can put a mapping into that state. What does the bottom of the call stack look like? What's the state of the m_disabled?
@ssiloti

new call stack (VC++2017 + libtorrent-git-master)
https://drdump.com/Problem.aspx?ProblemID=286500&login=guest
help?

Just showing the infinite recursion portion of the call stack doesn't help, I need to see the calls that lead up to the recursion.
From time to time I get this error in android, it's UPnP but it looks very similar, an infinite recursion
backtrace:
#00 pc 00314d0c /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZNSt6__ndk110shared_ptrIN10libtorrent4upnpEEC2IS2_EERKNS_8weak_ptrIT_EENS_9enable_ifIXsr14is_convertibleIPS6_PS2_EE5valueENS3_5__natEE4typeE)
#01 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#02 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#03 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#04 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#05 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#06 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#07 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#08 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#09 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#10 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#11 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#12 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#13 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#14 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#15 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#16 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#17 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#18 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#19 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#20 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#21 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#22 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#23 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#24 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#25 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#26 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#27 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#28 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#29 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#30 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#31 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#32 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#33 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#34 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#35 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#36 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#37 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#38 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#39 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#40 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#41 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#42 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#43 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#44 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#45 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#46 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#47 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#48 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#49 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#50 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#51 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#52 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#53 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#54 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#55 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#56 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#57 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#58 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#59 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#60 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#61 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#62 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
#63 pc 00310e58 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
In the case of upnp I don't see how that could happen. act is always set to none before a recursive call is made which should prevent the mapping from being picked again.
@ssiloti
natpmp::update_mapping and natpmp::try_next_mapping - top list of crash-dumps
https://drdump.com/AppVersion.aspx?AppVersionID=3636&login=guest
help?
https://drdump.com/Problem.aspx?ProblemID=286500&login=guest

according to dump update_mapping called from two places:
c++
flylinkdc!libtorrent::natpmp::try_next_mapping+0x28 // update_mapping(i + 1);
....
flylinkdc!libtorrent::natpmp::try_next_mapping+0xb4 // update_mapping(int(m - m_mappings.begin()));
i persume problem in this line:
````c++
void natpmp::try_next_mapping(int const i)
...
auto const m = std::find_if(
m_mappings.begin(), m_mappings.end()
, [] (mapping_t const& ma) { return ma.act != mapping_t::action::none; });
may be it should contain:
c++
return ma.act != mapping_t::action::none && ma.protocol != portmap_protocol::none;
````
watch m_mappings[4]

as far as i understand "protocol" was assigned to "portmap_protocol::none", but "act" was not cleared and triggered infinite recursion. it could be fixed by changing std::find_if or by finding all places that makes "protocol = portmap_protocol::none" and adding "act = mapping_t::action::none"
@ajax16384 thanks

2.


?
changes in natpmp::on_reply will skip this "if (m->act == mapping_t::action::add)" condition but it's ok
The data doesn't provide any new information. If always setting act to none solves the problem I'd just go with what.
i guess @pavel-pimenov will collect new crash dump stat with workaround and show if recursion is gone
i try fix version 1
https://github.com/pavel-pimenov/flylinkdc-r5xx/blob/master/libtorrent/src/natpmp.cpp#L282
date release : 16.05.2017 19:36:56
so far so good:
https://drdump.com/AppVersion.aspx?AppVersionID=3756&login=guest
@pavel-pimenov do you have a patch or PR?
both "std::find_if" and "set_none" changes should be applied
is this problem believed to only affect master? i.e. not RC_1_1?
I believe the std::find_if fix is the only thing necessary. This is a fix for RC_1_1: https://github.com/arvidn/libtorrent/pull/2012
BTW upnp does not suffer from same error (even it has similar find_if pattern) cause it "fix" (act!=none && protocol==none):
c++
void natpmp::update_mapping(int const i)
...
if (m.act == mapping_t::action::none
|| m.protocol == portmap_protocol::none)
{
try_next_mapping(i);
return;
}
c++
void upnp::update_map(rootdevice& d, int const i)
....
if (m.act == mapping_t::action::none
|| m.protocol == portmap_protocol::none)
{
...
m.act = mapping_t::action::none; // << fix possible recursion cause
next(d, i);
return;
}
I believe this is fixed now
something still broken w/upnp-mappings, getting about 1000 crashes every 24 hours (android), they look like this:
backtrace:
native: pc 000000000031726c /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZNSt6__ndk110shared_ptrIN10libtorrent4upnpEEC2IS2_EERKNS_8weak_ptrIT_EENS_9enable_ifIXsr14is_convertibleIPS6_PS2_EE5valueENS3_5__natEE4typeE)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
native: pc 00000000003133b8 /data/app/com.frostwire.android-2/lib/arm/libjlibtorrent.so (_ZN10libtorrent4upnp10update_mapERNS0_10rootdeviceEi+124)
@arvidn reopen issue :-( new crash dump:
https://drdump.com/Problem.aspx?ProblemID=303960&login=guest
I don't see any way the upnp code could get into an infinite recursion which would produce that stack trace. Without a more detailed dump I don't think there's any hope of solving that one.