<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/net/bluetooth/af_bluetooth.c, branch linux-3.3.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>Bluetooth: silence lockdep warning</title>
<updated>2012-02-15T11:09:26+00:00</updated>
<author>
<name>Octavian Purdila</name>
<email>tavi.purdila@gmail.com</email>
</author>
<published>2012-01-21T22:28:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=b5a30dda6598af216c070165ece6068f9f00f33a'/>
<id>b5a30dda6598af216c070165ece6068f9f00f33a</id>
<content type='text'>
Since bluetooth uses multiple protocols types, to avoid lockdep
warnings, we need to use different lockdep classes (one for each
protocol type).

This is already done in bt_sock_create but it misses a couple of cases
when new connections are created. This patch corrects that to fix the
following warning:

&lt;4&gt;[ 1864.732366] =======================================================
&lt;4&gt;[ 1864.733030] [ INFO: possible circular locking dependency detected ]
&lt;4&gt;[ 1864.733544] 3.0.16-mid3-00007-gc9a0f62 #3
&lt;4&gt;[ 1864.733883] -------------------------------------------------------
&lt;4&gt;[ 1864.734408] t.android.btclc/4204 is trying to acquire lock:
&lt;4&gt;[ 1864.734869]  (rfcomm_mutex){+.+.+.}, at: [&lt;c14970ea&gt;] rfcomm_dlc_close+0x15/0x30
&lt;4&gt;[ 1864.735541]
&lt;4&gt;[ 1864.735549] but task is already holding lock:
&lt;4&gt;[ 1864.736045]  (sk_lock-AF_BLUETOOTH){+.+.+.}, at: [&lt;c1498bf7&gt;] lock_sock+0xa/0xc
&lt;4&gt;[ 1864.736732]
&lt;4&gt;[ 1864.736740] which lock already depends on the new lock.
&lt;4&gt;[ 1864.736750]
&lt;4&gt;[ 1864.737428]
&lt;4&gt;[ 1864.737437] the existing dependency chain (in reverse order) is:
&lt;4&gt;[ 1864.738016]
&lt;4&gt;[ 1864.738023] -&gt; #1 (sk_lock-AF_BLUETOOTH){+.+.+.}:
&lt;4&gt;[ 1864.738549]        [&lt;c1062273&gt;] lock_acquire+0x104/0x140
&lt;4&gt;[ 1864.738977]        [&lt;c13d35c1&gt;] lock_sock_nested+0x58/0x68
&lt;4&gt;[ 1864.739411]        [&lt;c1493c33&gt;] l2cap_sock_sendmsg+0x3e/0x76
&lt;4&gt;[ 1864.739858]        [&lt;c13d06c3&gt;] __sock_sendmsg+0x50/0x59
&lt;4&gt;[ 1864.740279]        [&lt;c13d0ea2&gt;] sock_sendmsg+0x94/0xa8
&lt;4&gt;[ 1864.740687]        [&lt;c13d0ede&gt;] kernel_sendmsg+0x28/0x37
&lt;4&gt;[ 1864.741106]        [&lt;c14969ca&gt;] rfcomm_send_frame+0x30/0x38
&lt;4&gt;[ 1864.741542]        [&lt;c1496a2a&gt;] rfcomm_send_ua+0x58/0x5a
&lt;4&gt;[ 1864.741959]        [&lt;c1498447&gt;] rfcomm_run+0x441/0xb52
&lt;4&gt;[ 1864.742365]        [&lt;c104f095&gt;] kthread+0x63/0x68
&lt;4&gt;[ 1864.742742]        [&lt;c14d5182&gt;] kernel_thread_helper+0x6/0xd
&lt;4&gt;[ 1864.743187]
&lt;4&gt;[ 1864.743193] -&gt; #0 (rfcomm_mutex){+.+.+.}:
&lt;4&gt;[ 1864.743667]        [&lt;c1061ada&gt;] __lock_acquire+0x988/0xc00
&lt;4&gt;[ 1864.744100]        [&lt;c1062273&gt;] lock_acquire+0x104/0x140
&lt;4&gt;[ 1864.744519]        [&lt;c14d2c70&gt;] __mutex_lock_common+0x3b/0x33f
&lt;4&gt;[ 1864.744975]        [&lt;c14d303e&gt;] mutex_lock_nested+0x2d/0x36
&lt;4&gt;[ 1864.745412]        [&lt;c14970ea&gt;] rfcomm_dlc_close+0x15/0x30
&lt;4&gt;[ 1864.745842]        [&lt;c14990d9&gt;] __rfcomm_sock_close+0x5f/0x6b
&lt;4&gt;[ 1864.746288]        [&lt;c1499114&gt;] rfcomm_sock_shutdown+0x2f/0x62
&lt;4&gt;[ 1864.746737]        [&lt;c13d275d&gt;] sys_socketcall+0x1db/0x422
&lt;4&gt;[ 1864.747165]        [&lt;c14d42f0&gt;] syscall_call+0x7/0xb

Signed-off-by: Octavian Purdila &lt;octavian.purdila@intel.com&gt;
Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Johan Hedberg &lt;johan.hedberg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since bluetooth uses multiple protocols types, to avoid lockdep
warnings, we need to use different lockdep classes (one for each
protocol type).

This is already done in bt_sock_create but it misses a couple of cases
when new connections are created. This patch corrects that to fix the
following warning:

&lt;4&gt;[ 1864.732366] =======================================================
&lt;4&gt;[ 1864.733030] [ INFO: possible circular locking dependency detected ]
&lt;4&gt;[ 1864.733544] 3.0.16-mid3-00007-gc9a0f62 #3
&lt;4&gt;[ 1864.733883] -------------------------------------------------------
&lt;4&gt;[ 1864.734408] t.android.btclc/4204 is trying to acquire lock:
&lt;4&gt;[ 1864.734869]  (rfcomm_mutex){+.+.+.}, at: [&lt;c14970ea&gt;] rfcomm_dlc_close+0x15/0x30
&lt;4&gt;[ 1864.735541]
&lt;4&gt;[ 1864.735549] but task is already holding lock:
&lt;4&gt;[ 1864.736045]  (sk_lock-AF_BLUETOOTH){+.+.+.}, at: [&lt;c1498bf7&gt;] lock_sock+0xa/0xc
&lt;4&gt;[ 1864.736732]
&lt;4&gt;[ 1864.736740] which lock already depends on the new lock.
&lt;4&gt;[ 1864.736750]
&lt;4&gt;[ 1864.737428]
&lt;4&gt;[ 1864.737437] the existing dependency chain (in reverse order) is:
&lt;4&gt;[ 1864.738016]
&lt;4&gt;[ 1864.738023] -&gt; #1 (sk_lock-AF_BLUETOOTH){+.+.+.}:
&lt;4&gt;[ 1864.738549]        [&lt;c1062273&gt;] lock_acquire+0x104/0x140
&lt;4&gt;[ 1864.738977]        [&lt;c13d35c1&gt;] lock_sock_nested+0x58/0x68
&lt;4&gt;[ 1864.739411]        [&lt;c1493c33&gt;] l2cap_sock_sendmsg+0x3e/0x76
&lt;4&gt;[ 1864.739858]        [&lt;c13d06c3&gt;] __sock_sendmsg+0x50/0x59
&lt;4&gt;[ 1864.740279]        [&lt;c13d0ea2&gt;] sock_sendmsg+0x94/0xa8
&lt;4&gt;[ 1864.740687]        [&lt;c13d0ede&gt;] kernel_sendmsg+0x28/0x37
&lt;4&gt;[ 1864.741106]        [&lt;c14969ca&gt;] rfcomm_send_frame+0x30/0x38
&lt;4&gt;[ 1864.741542]        [&lt;c1496a2a&gt;] rfcomm_send_ua+0x58/0x5a
&lt;4&gt;[ 1864.741959]        [&lt;c1498447&gt;] rfcomm_run+0x441/0xb52
&lt;4&gt;[ 1864.742365]        [&lt;c104f095&gt;] kthread+0x63/0x68
&lt;4&gt;[ 1864.742742]        [&lt;c14d5182&gt;] kernel_thread_helper+0x6/0xd
&lt;4&gt;[ 1864.743187]
&lt;4&gt;[ 1864.743193] -&gt; #0 (rfcomm_mutex){+.+.+.}:
&lt;4&gt;[ 1864.743667]        [&lt;c1061ada&gt;] __lock_acquire+0x988/0xc00
&lt;4&gt;[ 1864.744100]        [&lt;c1062273&gt;] lock_acquire+0x104/0x140
&lt;4&gt;[ 1864.744519]        [&lt;c14d2c70&gt;] __mutex_lock_common+0x3b/0x33f
&lt;4&gt;[ 1864.744975]        [&lt;c14d303e&gt;] mutex_lock_nested+0x2d/0x36
&lt;4&gt;[ 1864.745412]        [&lt;c14970ea&gt;] rfcomm_dlc_close+0x15/0x30
&lt;4&gt;[ 1864.745842]        [&lt;c14990d9&gt;] __rfcomm_sock_close+0x5f/0x6b
&lt;4&gt;[ 1864.746288]        [&lt;c1499114&gt;] rfcomm_sock_shutdown+0x2f/0x62
&lt;4&gt;[ 1864.746737]        [&lt;c13d275d&gt;] sys_socketcall+0x1db/0x422
&lt;4&gt;[ 1864.747165]        [&lt;c14d42f0&gt;] syscall_call+0x7/0xb

Signed-off-by: Octavian Purdila &lt;octavian.purdila@intel.com&gt;
Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Johan Hedberg &lt;johan.hedberg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: Remove *_bh from socket list lock.</title>
<updated>2012-01-03T00:20:24+00:00</updated>
<author>
<name>Gustavo F. Padovan</name>
<email>padovan@profusion.mobi</email>
</author>
<published>2011-12-27T17:28:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=94f5bfb8c1641080c3c4325714b8fe7d2839a906'/>
<id>94f5bfb8c1641080c3c4325714b8fe7d2839a906</id>
<content type='text'>
We don't need it anymore.

Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We don't need it anymore.

Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: fix bt_accept_dequeue() to work in process context</title>
<updated>2011-12-22T16:02:08+00:00</updated>
<author>
<name>Gustavo F. Padovan</name>
<email>padovan@profusion.mobi</email>
</author>
<published>2011-12-20T19:15:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=8a154a8feb805394d1fd46281becaf876e18860a'/>
<id>8a154a8feb805394d1fd46281becaf876e18860a</id>
<content type='text'>
No local_bh_disable is needed there once we run everything in process
context. The same goes for the replacement of bh_lock_sock() by
lock_sock().

Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No local_bh_disable is needed there once we run everything in process
context. The same goes for the replacement of bh_lock_sock() by
lock_sock().

Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: Handle fragmented skbs in bt_sock_stream_recvmsg()</title>
<updated>2011-09-27T21:16:07+00:00</updated>
<author>
<name>Mat Martineau</name>
<email>mathewm@codeaurora.org</email>
</author>
<published>2011-07-22T21:53:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5b668eb3270f3f9c13ddf6e4fb57bf20c83dccff'/>
<id>5b668eb3270f3f9c13ddf6e4fb57bf20c83dccff</id>
<content type='text'>
ERTM reassembly will be more efficient when skbs are linked together
rather than copying every incoming data byte. The existing stream recv
function assumes skbs are linear, so it needs to know how to handle
fragments before reassembly is changed.

bt_sock_recvmsg() already handles fragmented skbs.

Signed-off-by: Mat Martineau &lt;mathewm@codeaurora.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ERTM reassembly will be more efficient when skbs are linked together
rather than copying every incoming data byte. The existing stream recv
function assumes skbs are linear, so it needs to know how to handle
fragments before reassembly is changed.

bt_sock_recvmsg() already handles fragmented skbs.

Signed-off-by: Mat Martineau &lt;mathewm@codeaurora.org&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: Fix lost wakeups waiting for sock state change</title>
<updated>2011-08-11T22:50:26+00:00</updated>
<author>
<name>Peter Hurley</name>
<email>peter@hurleysoftware.com</email>
</author>
<published>2011-07-24T04:10:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=9be4e3fbf2d3603e7a7010ede0697166738a788b'/>
<id>9be4e3fbf2d3603e7a7010ede0697166738a788b</id>
<content type='text'>
Fix race conditions which can cause lost wakeups while waiting
for sock state to change.

Signed-off-by: Peter Hurley &lt;peter@hurleysoftware.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix race conditions which can cause lost wakeups while waiting
for sock state to change.

Signed-off-by: Peter Hurley &lt;peter@hurleysoftware.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: remove unnecessary call to hci_sock_cleanup</title>
<updated>2011-02-26T01:36:58+00:00</updated>
<author>
<name>Anand Gadiyar</name>
<email>gadiyar@ti.com</email>
</author>
<published>2011-02-22T07:13:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0ed54dad52e8056f4440da723a4c117f2aef1f68'/>
<id>0ed54dad52e8056f4440da723a4c117f2aef1f68</id>
<content type='text'>
hci_sock_cleanup is already called after the sock_err label.
It appears that we can drop this call.

Signed-off-by: Anand Gadiyar &lt;gadiyar@ti.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
hci_sock_cleanup is already called after the sock_err label.
It appears that we can drop this call.

Signed-off-by: Anand Gadiyar &lt;gadiyar@ti.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: fix checkpatch errors in af_bluetooth.c</title>
<updated>2011-02-17T22:24:05+00:00</updated>
<author>
<name>Gustavo F. Padovan</name>
<email>padovan@profusion.mobi</email>
</author>
<published>2011-02-17T22:24:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=8ffd878419839638d1aea102455b575da39c1a62'/>
<id>8ffd878419839638d1aea102455b575da39c1a62</id>
<content type='text'>
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: Merge L2CAP and SCO modules into bluetooth.ko</title>
<updated>2011-02-14T20:27:36+00:00</updated>
<author>
<name>Gustavo F. Padovan</name>
<email>padovan@profusion.mobi</email>
</author>
<published>2011-02-07T22:08:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=642745184f82688eb3ef0cdfaa4ba632055be9af'/>
<id>642745184f82688eb3ef0cdfaa4ba632055be9af</id>
<content type='text'>
Actually doesn't make sense have these modules built separately.
The L2CAP layer is needed by almost all Bluetooth protocols and profiles.
There isn't any real use case without having L2CAP loaded.
SCO is only essential for Audio transfers, but it is so small that we can
have it loaded always in bluetooth.ko without problems.
If you really doesn't want it you can disable SCO in the kernel config.

Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Actually doesn't make sense have these modules built separately.
The L2CAP layer is needed by almost all Bluetooth protocols and profiles.
There isn't any real use case without having L2CAP loaded.
SCO is only essential for Audio transfers, but it is so small that we can
have it loaded always in bluetooth.ko without problems.
If you really doesn't want it you can disable SCO in the kernel config.

Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: fix crash by disabling tasklet in sock accept</title>
<updated>2011-02-08T03:40:08+00:00</updated>
<author>
<name>Andrei Emeltchenko</name>
<email>andrei.emeltchenko@nokia.com</email>
</author>
<published>2011-01-24T08:53:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=d37f50e19094862a5d60d79637d6f4dbdc42f4f1'/>
<id>d37f50e19094862a5d60d79637d6f4dbdc42f4f1</id>
<content type='text'>
Crash can happen when tasklet handling connect/disconnect requests
preempts socket accept. Can be reproduced with "l2test -r" on one
side and several "l2test -c -b 1000 -i hci0 -P 10 &lt;bdaddr&gt;" on the
other side.

disable taskets in socket accept and change lock_sock and release_sock
to bh_lock_sock and bh_unlock_sock since we have to use spinlocks and
there is no need to mark sock as owned by user.

...
[ 3555.897247] Unable to handle kernel NULL pointer dereference at virtual
address 000000bc
[ 3555.915039] pgd = cab9c000
[ 3555.917785] [000000bc] *pgd=8bf3d031, *pte=00000000, *ppte=00000000
[ 3555.928314] Internal error: Oops: 17 [#1] PREEMPT
[ 3555.999786] CPU: 0    Not tainted  (2.6.32.21-13874-g67918ef #65)
...
[ 3556.005981] PC is at bt_accept_unlink+0x20/0x58 [bluetooth]
[ 3556.011627] LR is at bt_accept_dequeue+0x3c/0xe8 [bluetooth]
...
[ 3556.161285] [&lt;bf0007fc&gt;] (bt_accept_unlink+0x20/0x58 [bluetooth]) from
[&lt;bf000870&gt;] (bt_accept_dequeue+0x3c/0xe8 [bluetooth])
[ 3556.172729] [&lt;bf000870&gt;] (bt_accept_dequeue+0x3c/0xe8 [bluetooth]) from
[&lt;bf324df8&gt;] (l2cap_sock_accept+0x100/0x15c [l2cap])
[ 3556.184082] [&lt;bf324df8&gt;] (l2cap_sock_accept+0x100/0x15c [l2cap]) from
[&lt;c026a0a8&gt;] (sys_accept4+0x120/0x1e0)
[ 3556.193969] [&lt;c026a0a8&gt;] (sys_accept4+0x120/0x1e0) from [&lt;c002c9a0&gt;]
(ret_fast_syscall+0x0/0x2c)
[ 3556.202819] Code: e5813000 e5901164 e580c160 e580c15c (e1d13bbc)
...

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@nokia.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Crash can happen when tasklet handling connect/disconnect requests
preempts socket accept. Can be reproduced with "l2test -r" on one
side and several "l2test -c -b 1000 -i hci0 -P 10 &lt;bdaddr&gt;" on the
other side.

disable taskets in socket accept and change lock_sock and release_sock
to bh_lock_sock and bh_unlock_sock since we have to use spinlocks and
there is no need to mark sock as owned by user.

...
[ 3555.897247] Unable to handle kernel NULL pointer dereference at virtual
address 000000bc
[ 3555.915039] pgd = cab9c000
[ 3555.917785] [000000bc] *pgd=8bf3d031, *pte=00000000, *ppte=00000000
[ 3555.928314] Internal error: Oops: 17 [#1] PREEMPT
[ 3555.999786] CPU: 0    Not tainted  (2.6.32.21-13874-g67918ef #65)
...
[ 3556.005981] PC is at bt_accept_unlink+0x20/0x58 [bluetooth]
[ 3556.011627] LR is at bt_accept_dequeue+0x3c/0xe8 [bluetooth]
...
[ 3556.161285] [&lt;bf0007fc&gt;] (bt_accept_unlink+0x20/0x58 [bluetooth]) from
[&lt;bf000870&gt;] (bt_accept_dequeue+0x3c/0xe8 [bluetooth])
[ 3556.172729] [&lt;bf000870&gt;] (bt_accept_dequeue+0x3c/0xe8 [bluetooth]) from
[&lt;bf324df8&gt;] (l2cap_sock_accept+0x100/0x15c [l2cap])
[ 3556.184082] [&lt;bf324df8&gt;] (l2cap_sock_accept+0x100/0x15c [l2cap]) from
[&lt;c026a0a8&gt;] (sys_accept4+0x120/0x1e0)
[ 3556.193969] [&lt;c026a0a8&gt;] (sys_accept4+0x120/0x1e0) from [&lt;c002c9a0&gt;]
(ret_fast_syscall+0x0/0x2c)
[ 3556.202819] Code: e5813000 e5901164 e580c160 e580c15c (e1d13bbc)
...

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@nokia.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: Do not use assignments in IF conditions</title>
<updated>2011-02-08T03:40:08+00:00</updated>
<author>
<name>Andrei Emeltchenko</name>
<email>andrei.emeltchenko@nokia.com</email>
</author>
<published>2011-01-11T15:20:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=5a08eccedaa1e12b74cf3afea9e11a9aefc29f73'/>
<id>5a08eccedaa1e12b74cf3afea9e11a9aefc29f73</id>
<content type='text'>
Fix checkpatch warnings concerning assignments in if conditions.

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@nokia.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix checkpatch warnings concerning assignments in if conditions.

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@nokia.com&gt;
Signed-off-by: Gustavo F. Padovan &lt;padovan@profusion.mobi&gt;
</pre>
</div>
</content>
</entry>
</feed>
