<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/sound/firewire/oxfw, branch linux-4.3.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.3.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.3.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2016-01-31T19:25:44Z</updated>
<entry>
<title>ALSA: fireworks/bebob/oxfw/dice: enable to make as built-in</title>
<updated>2016-01-31T19:25:44Z</updated>
<author>
<name>Takashi Sakamoto</name>
</author>
<published>2015-10-18T04:46:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7d8a45bdacd89f38ae5bda817e7e51490ffd994a'/>
<id>urn:sha1:7d8a45bdacd89f38ae5bda817e7e51490ffd994a</id>
<content type='text'>
commit df4833886f91eea0d20e6e97066adab308625ef8 upstream.

When committed to upstream, these four modules had wrong entries for
Makefile. This forces them to be loadable modules even if they're set
as built-in.

This commit fixes this bug.

Fixes: b5b04336015e('ALSA: fireworks: Add skelton for Fireworks based devices')
Fixes: fd6f4b0dc167('ALSA: bebob: Add skelton for BeBoB based devices')
Fixes: 1a4e39c2e5ca('ALSA: oxfw: Move to its own directory')
Fixes: 14ff6a094815('ALSA: dice: Move file to its own directory')
Signed-off-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ALSA: fireworks/bebob/dice/oxfw: fix substreams counting at vmalloc failure</title>
<updated>2015-08-29T07:14:41Z</updated>
<author>
<name>Takashi Sakamoto</name>
</author>
<published>2015-08-29T01:38:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=22c103cd3dfadff340b3b639e477a3c161cb2104'/>
<id>urn:sha1:22c103cd3dfadff340b3b639e477a3c161cb2104</id>
<content type='text'>
In PCM core, when hw_params() in each driver returns error, the state of
PCM substream is kept as 'open'. In this case, current drivers for sound
units on IEEE 1394 bus doesn't decrement substream counter in hw_free()
correctly. This causes these drivers to keep streams even if not
required.

This commit fixes this bug. When snd_pcm_lib_alloc_vmalloc_buffer()
fails, hw_params function in each driver returns without incrementing the
counter.

Reported-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Acked-by: Clemens Ladisch &lt;clemens@ladisch.de&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: firewire: use kmemdup rather than duplicating its implementation</title>
<updated>2015-08-07T12:52:07Z</updated>
<author>
<name>Andrzej Hajda</name>
</author>
<published>2015-08-07T07:59:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=96bab82f6ba3c4e116ee89989b3854dde6c0cd2d'/>
<id>urn:sha1:96bab82f6ba3c4e116ee89989b3854dde6c0cd2d</id>
<content type='text'>
The patch was generated using fixed coccinelle semantic patch
scripts/coccinelle/api/memdup.cocci [1].

[1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

Signed-off-by: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: firewire-lib: add buffer-over-run protection at receiving more data blocks than expected</title>
<updated>2015-05-23T07:13:18Z</updated>
<author>
<name>Takashi Sakamoto</name>
</author>
<published>2015-05-22T14:00:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a2064710ba2b38a4f07c1b273c389b70b14b2d18'/>
<id>urn:sha1:a2064710ba2b38a4f07c1b273c389b70b14b2d18</id>
<content type='text'>
In IEC 61883-6, the number of data blocks in a packet is limited up to
the value of SYT_INTERVAL. Current implementation is compliant to the
limitation, while it can cause buffer-over-run when the value of dbs
field in received packet is illegally large.

This commit adds a validator to detect such illegal packets to prevent
the buffer-over-run. Actually, the buffer is aligned to the size of memory
 page, thus this issue hardly causes system errors due to the room to page
alignment, as long as a few packets includes such jumbo payload; i.e.
a packet to several received packets.

Here, Behringer F-Control Audio 202 (based on OXFW 960) has a quirk to
postpone transferring isochronous packet till finish handling any
asynchronous packets. In this case, this model is lazy, transfers no
packets according to several cycle-start packets. After finishing, this
model pushes required data in next isochronous packet. As a result, the
packet include more data blocks than IEC 61883-6 defines.

To continue to support this model, this commit adds a new flag to extend
the length of calculated payload. This flag allows the size of payload
5 times as large as IEC 61883-6 defines. As a result, packets from this
model passed the validator successfully.

Signed-off-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: oxfw: fix a condition and return code in start_stream()</title>
<updated>2015-02-27T13:42:18Z</updated>
<author>
<name>Takashi Sakamoto</name>
</author>
<published>2015-02-27T00:39:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f2b14c0bc510c6a8f67a4f36049deefe5d99a537'/>
<id>urn:sha1:f2b14c0bc510c6a8f67a4f36049deefe5d99a537</id>
<content type='text'>
The amdtp_stream_wait_callback() doesn't return minus value and
the return code is not for error code.

This commit fixes with a propper condition and an error code.

Fixes: f3699e2c7745 ('ALSA: oxfw: Change the way to start stream')
Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Cc: &lt;stable@vger.kernel.org&gt; # 3.19+
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: fireworks/bebob/dice/oxfw: make it possible to shutdown safely</title>
<updated>2015-02-23T08:11:24Z</updated>
<author>
<name>Takashi Sakamoto</name>
</author>
<published>2015-02-21T14:55:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dec84316dd53c90e93b4ee849483bd4bd1e9a585'/>
<id>urn:sha1:dec84316dd53c90e93b4ee849483bd4bd1e9a585</id>
<content type='text'>
A part of these drivers, especially BeBoB driver, are programmed to wait
some events. Thus the drivers should not destroy any data in .remove()
context.

This commit moves some destructors from 'struct fw_driver.remove()' to
'struct snd_card.private_free()' to shutdown safely.

Signed-off-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Cc: &lt;stable@vger.kernel.org&gt; # 3.19+
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: fireworks/bebob/dice/oxfw: allow stream destructor after releasing runtime</title>
<updated>2015-02-23T08:11:16Z</updated>
<author>
<name>Takashi Sakamoto</name>
</author>
<published>2015-02-21T14:54:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d23c2cc4485d10f0cedfef99dd2961d9652b1b3f'/>
<id>urn:sha1:d23c2cc4485d10f0cedfef99dd2961d9652b1b3f</id>
<content type='text'>
Currently stream destructor in each driver has a problem to be called in
a context in which sound card object is released, because the destructors
call amdtp_stream_pcm_abort() and touch PCM runtime data.

The PCM runtime data is destroyed in application's context with
snd_pcm_close(), on the other hand PCM substream data is destroyed after
sound card object is released, in most case after all of ALSA character
devices are released. When PCM runtime is destroyed and PCM substream is
remained, amdtp_stream_pcm_abort() touches PCM runtime data and causes
Null-pointer-dereference.

This commit changes stream destructors and allows each driver to call
it after releasing runtime.

Signed-off-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Cc: &lt;stable@vger.kernel.org&gt; # 3.19+
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: fireworks/bebob/dice/oxfw: add reference-counting for FireWire unit</title>
<updated>2015-02-23T08:10:38Z</updated>
<author>
<name>Takashi Sakamoto</name>
</author>
<published>2015-02-21T14:54:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=12ed719291a953d443921f9cdb0ffee41066c340'/>
<id>urn:sha1:12ed719291a953d443921f9cdb0ffee41066c340</id>
<content type='text'>
Fireworks and Dice drivers try to touch instances of FireWire unit after
sound card object is released, while references to the unit is decremented
in .remove(). When unplugging during streaming, sound card object is
released after .remove(), thus Fireworks and Dice drivers causes GPF or
Null-pointer-dereferencing to application processes because an instance of
FireWire unit was already released.

This commit adds reference-counting for FireWire unit in drivers to allow
them to touch an instance of FireWire unit after .remove(). In most case,
any operations after .remove() may be failed safely.

Signed-off-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Cc: &lt;stable@vger.kernel.org&gt; # 3.19+
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: oxfw: some signedness bugs</title>
<updated>2014-12-15T09:03:21Z</updated>
<author>
<name>Dan Carpenter</name>
</author>
<published>2014-12-12T19:27:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5580ba7bf61a6047a8b95459a9ed893f01947737'/>
<id>urn:sha1:5580ba7bf61a6047a8b95459a9ed893f01947737</id>
<content type='text'>
This code tends to use unsigned variables by default and it causes
signedness bugs when we use negative variables for error handling.
The "i" and "j" variables are used to iterated over small positive
values and so they should be type "int".  The "len" variable doesn't
*need* to be signed but it should be signed to make the code easier to
read and audit.

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: oxfw: fix detect_loud_models() return value</title>
<updated>2014-12-14T15:04:50Z</updated>
<author>
<name>Dan Carpenter</name>
</author>
<published>2014-12-12T19:28:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0d3aba30b755fe9ccaf390f0e71f6fb9fd55bd87'/>
<id>urn:sha1:0d3aba30b755fe9ccaf390f0e71f6fb9fd55bd87</id>
<content type='text'>
This code causes a static checker warning:

	sound/firewire/oxfw/oxfw.c:46 detect_loud_models()
	warn: signedness bug returning '(-2)'

The detect_loud_models() function should return false on falure, so that
we don't try to set up the loud code for hardware that doesn't support
it.

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Takashi Sakamoto &lt;o-takashi@sakamocchi.jp&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
</feed>
