Linux-Bluetooth Archive on
 help / color / Atom feed
* [RFC]  Persistent but intermitant unit/test-midi failure
@ 2020-05-18 17:01 Gix, Brian
  0 siblings, 0 replies; only message in thread
From: Gix, Brian @ 2020-05-18 17:01 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: eu, marcel

This has bothered me for some time, so I did some investigation on it.

The unit test for Midi assert-fails perhaps 10% - 20% of the time.  Out of 100 or so test runs, I have isolated
*what* the failure is, but have no answer to *why* it fails.  I suspected that it my be the random buffer size
value passed to midi_write_init() in test_midi_writer, but even if I "de - randomize" it (pass a prior failing
sequence of values) it does not change the frequency of success or failure.

I have only seen the failures occur with 2 different buffers, specifically the packets 
sysex4_1 (5 octets)
sysex5_1 (1024 octets)

The 3 symptoms that appears to always be true on the fail case:

1. Fail always occurs on reception of a SND_SEQ_EVENT_SYSEX
2. Received buffer is always exactly 1 octet shorter than what was expected
3. The expected and received buffers are identical except for a missing 0xF7
   octet at the end of the received buffer.

That's all I have time for, and I might not know enough about MIDI to continue further. But it would be nice if
this intermitent Unit Test Failure was fixed.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-18 17:01 [RFC] Persistent but intermitant unit/test-midi failure Gix, Brian

Linux-Bluetooth Archive on

Archives are clonable:
	git clone --mirror linux-bluetooth/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-bluetooth linux-bluetooth/ \
	public-inbox-index linux-bluetooth

Example config snippet for mirrors

Newsgroup available over NNTP:

AGPL code for this site: git clone