[haiku-bugs] Re: [Haiku] #11497: Media/mixer crash, either buffer "oops" or NULL indirection in float_to_float()

  • From: "ttcoder" <trac@xxxxxxxxxxxx>
  • Date: Tue, 25 Nov 2014 11:45:31 -0000

#11497: Media/mixer crash, either buffer "oops" or NULL indirection in
float_to_float()
-----------------------------------+----------------------------
   Reporter:  ttcoder              |      Owner:  nobody
       Type:  bug                  |     Status:  new
   Priority:  critical             |  Milestone:  R1/beta1
  Component:  Add-Ons/Media/Mixer  |    Version:  R1/Development
 Resolution:                       |   Keywords:
 Blocked By:                       |   Blocking:
Has a Patch:  0                    |   Platform:  All
-----------------------------------+----------------------------

Comment (by ttcoder):

 Note to self: the intruiguing fFlags value must originally come from the
 buffer_clone_info [http://cgit.haiku-
 os.org/haiku/tree/src/kits/media/Buffer.cpp#n188 here] called
 
[http://grok.bikemonkey.org/source/xref/haiku/src/kits/media/BufferGroup.cpp#156
 here]..

 ==

 I guess it's indeed possible to find a code path not related to out-of-
 bounds access that still explains what I'm seeing, for instance this
 sequence of events...
 -
 
http://grok.bikemonkey.org/source/xref/haiku/src/servers/media/BufferManager.cpp#216
 -
 
http://grok.bikemonkey.org/source/xref/haiku/src/servers/media/BufferManager.cpp#82
 -
 
http://grok.bikemonkey.org/source/xref/haiku/src/servers/media/media_server.cpp#732
 - http://cgit.haiku-os.org/haiku/tree/src/kits/media/Buffer.cpp#n248

 ... followed by a SetHeader() somewhere that would set "wild"
 AvailableSize ..etc values.

 That path includes errors/asserts but they are invisible because of the
 release builds;
 It seems a good idea to run MediaPlayer next to a lib/ folder containing a
 debug build of libmedia.so, and/or run media_server in debug mode, to see
 if those asserts and errors get tripped. Will do that.


 @vidrep TBH I'm narrowly focusing on "oops" and float_to_float as those
 are the ones I have a reliable reproducible case for, and even then I'm
 trying to collect data for those who will actually know how to fix it ;-)
 Well I might get lucky and stumble on a fix, but that has seldom happened
 in the past for this humble app developer.. Saw your tickets about failed
 asserts in ffmpeg though, seems to me they would be alleviated if it was
 possible to revert to ffmpeg 0.10 ; pulkomandy announced he'll work on
 ffmpeg again soon

--
Ticket URL: <https://dev.haiku-os.org/ticket/11497#comment:4>
Haiku <https://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: