<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/net/bluetooth, branch v2.6.32.8</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Bluetooth: Fix regression with L2CAP configuration in Basic Mode</title>
<updated>2009-11-16T00:31:41+00:00</updated>
<author>
<name>Gustavo F. Padovan</name>
<email>gustavo@las.ic.unicamp.br</email>
</author>
<published>2009-10-18T00:41:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=68ae6639b6dff117ba37f648f1611a4629abadf0'/>
<id>68ae6639b6dff117ba37f648f1611a4629abadf0</id>
<content type='text'>
Basic Mode is the default mode of operation of a L2CAP entity. In
this case the RFC (Retransmission and Flow Control) configuration
option should not be used at all.

Normally remote L2CAP implementation should just ignore this option,
but it can cause various side effects with other Bluetooth stacks
that are not capable of handling unknown options.

Signed-off-by: Gustavo F. Padovan &lt;gustavo@las.ic.unicamp.br&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Basic Mode is the default mode of operation of a L2CAP entity. In
this case the RFC (Retransmission and Flow Control) configuration
option should not be used at all.

Normally remote L2CAP implementation should just ignore this option,
but it can cause various side effects with other Bluetooth stacks
that are not capable of handling unknown options.

Signed-off-by: Gustavo F. Padovan &lt;gustavo@las.ic.unicamp.br&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: Select Basic Mode as default for SOCK_SEQPACKET</title>
<updated>2009-11-16T00:31:16+00:00</updated>
<author>
<name>Gustavo F. Padovan</name>
<email>gustavo@las.ic.unicamp.br</email>
</author>
<published>2009-09-29T04:42:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a0e55a32afc2130e5ae506755e4b8eb42a23b568'/>
<id>a0e55a32afc2130e5ae506755e4b8eb42a23b568</id>
<content type='text'>
The default mode for SOCK_SEQPACKET is Basic Mode. So when no
mode has been specified, Basic Mode shall be used.

This is important for current application to keep working as
expected and not cause a regression.

Signed-off-by: Gustavo F. Padovan &lt;gustavo@las.ic.unicamp.br&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The default mode for SOCK_SEQPACKET is Basic Mode. So when no
mode has been specified, Basic Mode shall be used.

This is important for current application to keep working as
expected and not cause a regression.

Signed-off-by: Gustavo F. Padovan &lt;gustavo@las.ic.unicamp.br&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Bluetooth: Set general bonding security for ACL by default</title>
<updated>2009-11-16T00:30:28+00:00</updated>
<author>
<name>Andrei Emeltchenko</name>
<email>andrei.emeltchenko@nokia.com</email>
</author>
<published>2009-09-03T09:34:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=93f19c9fc8c98bb6d2e9825115989603ffd5cd1f'/>
<id>93f19c9fc8c98bb6d2e9825115989603ffd5cd1f</id>
<content type='text'>
This patch fixes double pairing issues with Secure Simple
Paring support. It was observed that when pairing with SSP
enabled, that the confirmation will be asked twice.

http://www.spinics.net/lists/linux-bluetooth/msg02473.html

This also causes bug when initiating SSP connection from
Windows Vista.

The reason is because bluetoothd does not store link keys
since HCIGETAUTHINFO returns 0. Setting default to general
bonding fixes these issues.

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@nokia.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes double pairing issues with Secure Simple
Paring support. It was observed that when pairing with SSP
enabled, that the confirmation will be asked twice.

http://www.spinics.net/lists/linux-bluetooth/msg02473.html

This also causes bug when initiating SSP connection from
Windows Vista.

The reason is because bluetoothd does not store link keys
since HCIGETAUTHINFO returns 0. Setting default to general
bonding fixes these issues.

Signed-off-by: Andrei Emeltchenko &lt;andrei.emeltchenko@nokia.com&gt;
Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>bluetooth: static lock key fix</title>
<updated>2009-10-20T02:36:49+00:00</updated>
<author>
<name>Dave Young</name>
<email>hidave.darkstar@gmail.com</email>
</author>
<published>2009-10-18T20:28:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=45054dc1bf2367ccb0e7c0486037907cd9395f8b'/>
<id>45054dc1bf2367ccb0e7c0486037907cd9395f8b</id>
<content type='text'>
When shutdown ppp connection, lockdep waring about non-static key
will happen, it is caused by the lock is not initialized properly
at that time.

Fix with tuning the lock/skb_queue_head init order

[   94.339261] INFO: trying to register non-static key.
[   94.342509] the code is fine but needs lockdep annotation.
[   94.342509] turning off the locking correctness validator.
[   94.342509] Pid: 0, comm: swapper Not tainted 2.6.31-mm1 #2
[   94.342509] Call Trace:
[   94.342509]  [&lt;c0248fbe&gt;] register_lock_class+0x58/0x241
[   94.342509]  [&lt;c024b5df&gt;] ? __lock_acquire+0xb57/0xb73
[   94.342509]  [&lt;c024ab34&gt;] __lock_acquire+0xac/0xb73
[   94.342509]  [&lt;c024b7fa&gt;] ? lock_release_non_nested+0x17b/0x1de
[   94.342509]  [&lt;c024b662&gt;] lock_acquire+0x67/0x84
[   94.342509]  [&lt;c04cd1eb&gt;] ? skb_dequeue+0x15/0x41
[   94.342509]  [&lt;c054a857&gt;] _spin_lock_irqsave+0x2f/0x3f
[   94.342509]  [&lt;c04cd1eb&gt;] ? skb_dequeue+0x15/0x41
[   94.342509]  [&lt;c04cd1eb&gt;] skb_dequeue+0x15/0x41
[   94.342509]  [&lt;c054a648&gt;] ? _read_unlock+0x1d/0x20
[   94.342509]  [&lt;c04cd641&gt;] skb_queue_purge+0x14/0x1b
[   94.342509]  [&lt;fab94fdc&gt;] l2cap_recv_frame+0xea1/0x115a [l2cap]
[   94.342509]  [&lt;c024b5df&gt;] ? __lock_acquire+0xb57/0xb73
[   94.342509]  [&lt;c0249c04&gt;] ? mark_lock+0x1e/0x1c7
[   94.342509]  [&lt;f8364963&gt;] ? hci_rx_task+0xd2/0x1bc [bluetooth]
[   94.342509]  [&lt;fab95346&gt;] l2cap_recv_acldata+0xb1/0x1c6 [l2cap]
[   94.342509]  [&lt;f8364997&gt;] hci_rx_task+0x106/0x1bc [bluetooth]
[   94.342509]  [&lt;fab95295&gt;] ? l2cap_recv_acldata+0x0/0x1c6 [l2cap]
[   94.342509]  [&lt;c02302c4&gt;] tasklet_action+0x69/0xc1
[   94.342509]  [&lt;c022fbef&gt;] __do_softirq+0x94/0x11e
[   94.342509]  [&lt;c022fcaf&gt;] do_softirq+0x36/0x5a
[   94.342509]  [&lt;c022fe14&gt;] irq_exit+0x35/0x68
[   94.342509]  [&lt;c0204ced&gt;] do_IRQ+0x72/0x89
[   94.342509]  [&lt;c02038ee&gt;] common_interrupt+0x2e/0x34
[   94.342509]  [&lt;c024007b&gt;] ? pm_qos_add_requirement+0x63/0x9d
[   94.342509]  [&lt;c038e8a5&gt;] ? acpi_idle_enter_bm+0x209/0x238
[   94.342509]  [&lt;c049d238&gt;] cpuidle_idle_call+0x5c/0x94
[   94.342509]  [&lt;c02023f8&gt;] cpu_idle+0x4e/0x6f
[   94.342509]  [&lt;c0534153&gt;] rest_init+0x53/0x55
[   94.342509]  [&lt;c0781894&gt;] start_kernel+0x2f0/0x2f5
[   94.342509]  [&lt;c0781091&gt;] i386_start_kernel+0x91/0x96

Reported-by: Oliver Hartkopp &lt;oliver@hartkopp.net&gt;
Signed-off-by: Dave Young &lt;hidave.darkstar@gmail.com&gt;
Tested-by: Oliver Hartkopp &lt;oliver@hartkopp.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When shutdown ppp connection, lockdep waring about non-static key
will happen, it is caused by the lock is not initialized properly
at that time.

Fix with tuning the lock/skb_queue_head init order

[   94.339261] INFO: trying to register non-static key.
[   94.342509] the code is fine but needs lockdep annotation.
[   94.342509] turning off the locking correctness validator.
[   94.342509] Pid: 0, comm: swapper Not tainted 2.6.31-mm1 #2
[   94.342509] Call Trace:
[   94.342509]  [&lt;c0248fbe&gt;] register_lock_class+0x58/0x241
[   94.342509]  [&lt;c024b5df&gt;] ? __lock_acquire+0xb57/0xb73
[   94.342509]  [&lt;c024ab34&gt;] __lock_acquire+0xac/0xb73
[   94.342509]  [&lt;c024b7fa&gt;] ? lock_release_non_nested+0x17b/0x1de
[   94.342509]  [&lt;c024b662&gt;] lock_acquire+0x67/0x84
[   94.342509]  [&lt;c04cd1eb&gt;] ? skb_dequeue+0x15/0x41
[   94.342509]  [&lt;c054a857&gt;] _spin_lock_irqsave+0x2f/0x3f
[   94.342509]  [&lt;c04cd1eb&gt;] ? skb_dequeue+0x15/0x41
[   94.342509]  [&lt;c04cd1eb&gt;] skb_dequeue+0x15/0x41
[   94.342509]  [&lt;c054a648&gt;] ? _read_unlock+0x1d/0x20
[   94.342509]  [&lt;c04cd641&gt;] skb_queue_purge+0x14/0x1b
[   94.342509]  [&lt;fab94fdc&gt;] l2cap_recv_frame+0xea1/0x115a [l2cap]
[   94.342509]  [&lt;c024b5df&gt;] ? __lock_acquire+0xb57/0xb73
[   94.342509]  [&lt;c0249c04&gt;] ? mark_lock+0x1e/0x1c7
[   94.342509]  [&lt;f8364963&gt;] ? hci_rx_task+0xd2/0x1bc [bluetooth]
[   94.342509]  [&lt;fab95346&gt;] l2cap_recv_acldata+0xb1/0x1c6 [l2cap]
[   94.342509]  [&lt;f8364997&gt;] hci_rx_task+0x106/0x1bc [bluetooth]
[   94.342509]  [&lt;fab95295&gt;] ? l2cap_recv_acldata+0x0/0x1c6 [l2cap]
[   94.342509]  [&lt;c02302c4&gt;] tasklet_action+0x69/0xc1
[   94.342509]  [&lt;c022fbef&gt;] __do_softirq+0x94/0x11e
[   94.342509]  [&lt;c022fcaf&gt;] do_softirq+0x36/0x5a
[   94.342509]  [&lt;c022fe14&gt;] irq_exit+0x35/0x68
[   94.342509]  [&lt;c0204ced&gt;] do_IRQ+0x72/0x89
[   94.342509]  [&lt;c02038ee&gt;] common_interrupt+0x2e/0x34
[   94.342509]  [&lt;c024007b&gt;] ? pm_qos_add_requirement+0x63/0x9d
[   94.342509]  [&lt;c038e8a5&gt;] ? acpi_idle_enter_bm+0x209/0x238
[   94.342509]  [&lt;c049d238&gt;] cpuidle_idle_call+0x5c/0x94
[   94.342509]  [&lt;c02023f8&gt;] cpu_idle+0x4e/0x6f
[   94.342509]  [&lt;c0534153&gt;] rest_init+0x53/0x55
[   94.342509]  [&lt;c0781894&gt;] start_kernel+0x2f0/0x2f5
[   94.342509]  [&lt;c0781091&gt;] i386_start_kernel+0x91/0x96

Reported-by: Oliver Hartkopp &lt;oliver@hartkopp.net&gt;
Signed-off-by: Dave Young &lt;hidave.darkstar@gmail.com&gt;
Tested-by: Oliver Hartkopp &lt;oliver@hartkopp.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>bluetooth: scheduling while atomic bug fix</title>
<updated>2009-10-20T02:36:45+00:00</updated>
<author>
<name>Dave Young</name>
<email>hidave.darkstar@gmail.com</email>
</author>
<published>2009-10-18T20:24:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f74c77cb1124a11acf69c98d10c0fdc22f322664'/>
<id>f74c77cb1124a11acf69c98d10c0fdc22f322664</id>
<content type='text'>
Due to driver core changes dev_set_drvdata will call kzalloc which should be
in might_sleep context, but hci_conn_add will be called in atomic context

Like dev_set_name move dev_set_drvdata to work queue function.

oops as following:

Oct  2 17:41:59 darkstar kernel: [  438.001341] BUG: sleeping function called from invalid context at mm/slqb.c:1546
Oct  2 17:41:59 darkstar kernel: [  438.001345] in_atomic(): 1, irqs_disabled(): 0, pid: 2133, name: sdptool
Oct  2 17:41:59 darkstar kernel: [  438.001348] 2 locks held by sdptool/2133:
Oct  2 17:41:59 darkstar kernel: [  438.001350]  #0:  (sk_lock-AF_BLUETOOTH-BTPROTO_L2CAP){+.+.+.}, at: [&lt;faa1d2f5&gt;] lock_sock+0xa/0xc [l2cap]
Oct  2 17:41:59 darkstar kernel: [  438.001360]  #1:  (&amp;hdev-&gt;lock){+.-.+.}, at: [&lt;faa20e16&gt;] l2cap_sock_connect+0x103/0x26b [l2cap]
Oct  2 17:41:59 darkstar kernel: [  438.001371] Pid: 2133, comm: sdptool Not tainted 2.6.31-mm1 #2
Oct  2 17:41:59 darkstar kernel: [  438.001373] Call Trace:
Oct  2 17:41:59 darkstar kernel: [  438.001381]  [&lt;c022433f&gt;] __might_sleep+0xde/0xe5
Oct  2 17:41:59 darkstar kernel: [  438.001386]  [&lt;c0298843&gt;] __kmalloc+0x4a/0x15a
Oct  2 17:41:59 darkstar kernel: [  438.001392]  [&lt;c03f0065&gt;] ? kzalloc+0xb/0xd
Oct  2 17:41:59 darkstar kernel: [  438.001396]  [&lt;c03f0065&gt;] kzalloc+0xb/0xd
Oct  2 17:41:59 darkstar kernel: [  438.001400]  [&lt;c03f04ff&gt;] device_private_init+0x15/0x3d
Oct  2 17:41:59 darkstar kernel: [  438.001405]  [&lt;c03f24c5&gt;] dev_set_drvdata+0x18/0x26
Oct  2 17:41:59 darkstar kernel: [  438.001414]  [&lt;fa51fff7&gt;] hci_conn_init_sysfs+0x40/0xd9 [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001422]  [&lt;fa51cdc0&gt;] ? hci_conn_add+0x128/0x186 [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001429]  [&lt;fa51ce0f&gt;] hci_conn_add+0x177/0x186 [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001437]  [&lt;fa51cf8a&gt;] hci_connect+0x3c/0xfb [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001442]  [&lt;faa20e87&gt;] l2cap_sock_connect+0x174/0x26b [l2cap]
Oct  2 17:41:59 darkstar kernel: [  438.001448]  [&lt;c04c8df5&gt;] sys_connect+0x60/0x7a
Oct  2 17:41:59 darkstar kernel: [  438.001453]  [&lt;c024b703&gt;] ? lock_release_non_nested+0x84/0x1de
Oct  2 17:41:59 darkstar kernel: [  438.001458]  [&lt;c028804b&gt;] ? might_fault+0x47/0x81
Oct  2 17:41:59 darkstar kernel: [  438.001462]  [&lt;c028804b&gt;] ? might_fault+0x47/0x81
Oct  2 17:41:59 darkstar kernel: [  438.001468]  [&lt;c033361f&gt;] ? __copy_from_user_ll+0x11/0xce
Oct  2 17:41:59 darkstar kernel: [  438.001472]  [&lt;c04c9419&gt;] sys_socketcall+0x82/0x17b
Oct  2 17:41:59 darkstar kernel: [  438.001477]  [&lt;c020329d&gt;] syscall_call+0x7/0xb

Signed-off-by: Dave Young &lt;hidave.darkstar@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Due to driver core changes dev_set_drvdata will call kzalloc which should be
in might_sleep context, but hci_conn_add will be called in atomic context

Like dev_set_name move dev_set_drvdata to work queue function.

oops as following:

Oct  2 17:41:59 darkstar kernel: [  438.001341] BUG: sleeping function called from invalid context at mm/slqb.c:1546
Oct  2 17:41:59 darkstar kernel: [  438.001345] in_atomic(): 1, irqs_disabled(): 0, pid: 2133, name: sdptool
Oct  2 17:41:59 darkstar kernel: [  438.001348] 2 locks held by sdptool/2133:
Oct  2 17:41:59 darkstar kernel: [  438.001350]  #0:  (sk_lock-AF_BLUETOOTH-BTPROTO_L2CAP){+.+.+.}, at: [&lt;faa1d2f5&gt;] lock_sock+0xa/0xc [l2cap]
Oct  2 17:41:59 darkstar kernel: [  438.001360]  #1:  (&amp;hdev-&gt;lock){+.-.+.}, at: [&lt;faa20e16&gt;] l2cap_sock_connect+0x103/0x26b [l2cap]
Oct  2 17:41:59 darkstar kernel: [  438.001371] Pid: 2133, comm: sdptool Not tainted 2.6.31-mm1 #2
Oct  2 17:41:59 darkstar kernel: [  438.001373] Call Trace:
Oct  2 17:41:59 darkstar kernel: [  438.001381]  [&lt;c022433f&gt;] __might_sleep+0xde/0xe5
Oct  2 17:41:59 darkstar kernel: [  438.001386]  [&lt;c0298843&gt;] __kmalloc+0x4a/0x15a
Oct  2 17:41:59 darkstar kernel: [  438.001392]  [&lt;c03f0065&gt;] ? kzalloc+0xb/0xd
Oct  2 17:41:59 darkstar kernel: [  438.001396]  [&lt;c03f0065&gt;] kzalloc+0xb/0xd
Oct  2 17:41:59 darkstar kernel: [  438.001400]  [&lt;c03f04ff&gt;] device_private_init+0x15/0x3d
Oct  2 17:41:59 darkstar kernel: [  438.001405]  [&lt;c03f24c5&gt;] dev_set_drvdata+0x18/0x26
Oct  2 17:41:59 darkstar kernel: [  438.001414]  [&lt;fa51fff7&gt;] hci_conn_init_sysfs+0x40/0xd9 [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001422]  [&lt;fa51cdc0&gt;] ? hci_conn_add+0x128/0x186 [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001429]  [&lt;fa51ce0f&gt;] hci_conn_add+0x177/0x186 [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001437]  [&lt;fa51cf8a&gt;] hci_connect+0x3c/0xfb [bluetooth]
Oct  2 17:41:59 darkstar kernel: [  438.001442]  [&lt;faa20e87&gt;] l2cap_sock_connect+0x174/0x26b [l2cap]
Oct  2 17:41:59 darkstar kernel: [  438.001448]  [&lt;c04c8df5&gt;] sys_connect+0x60/0x7a
Oct  2 17:41:59 darkstar kernel: [  438.001453]  [&lt;c024b703&gt;] ? lock_release_non_nested+0x84/0x1de
Oct  2 17:41:59 darkstar kernel: [  438.001458]  [&lt;c028804b&gt;] ? might_fault+0x47/0x81
Oct  2 17:41:59 darkstar kernel: [  438.001462]  [&lt;c028804b&gt;] ? might_fault+0x47/0x81
Oct  2 17:41:59 darkstar kernel: [  438.001468]  [&lt;c033361f&gt;] ? __copy_from_user_ll+0x11/0xce
Oct  2 17:41:59 darkstar kernel: [  438.001472]  [&lt;c04c9419&gt;] sys_socketcall+0x82/0x17b
Oct  2 17:41:59 darkstar kernel: [  438.001477]  [&lt;c020329d&gt;] syscall_call+0x7/0xb

Signed-off-by: Dave Young &lt;hidave.darkstar@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Make setsockopt() optlen be unsigned.</title>
<updated>2009-09-30T23:12:20+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2009-09-30T23:12:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=b7058842c940ad2c08dd829b21e5c92ebe3b8758'/>
<id>b7058842c940ad2c08dd829b21e5c92ebe3b8758</id>
<content type='text'>
This provides safety against negative optlen at the type
level instead of depending upon (sometimes non-trivial)
checks against this sprinkled all over the the place, in
each and every implementation.

Based upon work done by Arjan van de Ven and feedback
from Linus Torvalds.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This provides safety against negative optlen at the type
level instead of depending upon (sometimes non-trivial)
checks against this sprinkled all over the the place, in
each and every implementation.

Based upon work done by Arjan van de Ven and feedback
from Linus Torvalds.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid</title>
<updated>2009-09-22T14:51:28+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2009-09-22T14:51:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=50223e486cabdcf7e540e519da1f26bab3084e5d'/>
<id>50223e486cabdcf7e540e519da1f26bab3084e5d</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
  HID: Remove duplicate Kconfig entry
  HID: consolidate connect and disconnect into core code
  HID: fix non-atomic allocation in hid_input_report
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
  HID: Remove duplicate Kconfig entry
  HID: consolidate connect and disconnect into core code
  HID: fix non-atomic allocation in hid_input_report
</pre>
</div>
</content>
</entry>
<entry>
<title>HID: consolidate connect and disconnect into core code</title>
<updated>2009-09-17T13:15:11+00:00</updated>
<author>
<name>Jiri Kosina</name>
<email>jkosina@suse.cz</email>
</author>
<published>2009-09-15T14:27:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c4c259bcc27c4242b012106afdba183622b1735f'/>
<id>c4c259bcc27c4242b012106afdba183622b1735f</id>
<content type='text'>
HID core registers input, hidraw and hiddev devices, but leaves
unregistering it up to the individual driver, which is not really nice.
Let's move all the logic to the core.

Reported-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Reported-by: Brian Rogers &lt;brian@xyzw.org&gt;
Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
HID core registers input, hidraw and hiddev devices, but leaves
unregistering it up to the individual driver, which is not really nice.
Let's move all the logic to the core.

Reported-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Reported-by: Brian Rogers &lt;brian@xyzw.org&gt;
Acked-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>driver model: constify attribute groups</title>
<updated>2009-09-15T16:50:47+00:00</updated>
<author>
<name>David Brownell</name>
<email>dbrownell@users.sourceforge.net</email>
</author>
<published>2009-06-24T17:06:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a4dbd6740df0872cdf0a86841f75beec8381964d'/>
<id>a4dbd6740df0872cdf0a86841f75beec8381964d</id>
<content type='text'>
Let attribute group vectors be declared "const".  We'd
like to let most attribute metadata live in read-only
sections... this is a start.

Signed-off-by: David Brownell &lt;dbrownell@users.sourceforge.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Let attribute group vectors be declared "const".  We'd
like to let most attribute metadata live in read-only
sections... this is a start.

Signed-off-by: David Brownell &lt;dbrownell@users.sourceforge.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>net: Add DEVTYPE support for Ethernet based devices</title>
<updated>2009-09-11T19:54:55+00:00</updated>
<author>
<name>Marcel Holtmann</name>
<email>marcel@holtmann.org</email>
</author>
<published>2009-08-31T21:08:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=384912ed194e43c03ad1cdaa09b0b1e488c34d46'/>
<id>384912ed194e43c03ad1cdaa09b0b1e488c34d46</id>
<content type='text'>
The Ethernet framing is used for a lot of devices these days. Most
prominent are WiFi and WiMAX based devices. However for userspace
application it is important to classify these devices correctly and
not only see them as Ethernet devices. The daemons like HAL, DeviceKit
or even NetworkManager with udev support tries to do the classification
in userspace with a lot trickery and extra system calls. This is not
good and actually reaches its limitations. Especially since the kernel
does know the type of the Ethernet device it is pretty stupid.

To solve this problem the underlying device type needs to be set and
then the value will be exported as DEVTYPE via uevents and available
within udev.

  # cat /sys/class/net/wlan0/uevent
  DEVTYPE=wlan
  INTERFACE=wlan0
  IFINDEX=5

This is similar to subsystems like USB and SCSI that distinguish
between hosts, devices, disks, partitions etc.

The new SET_NETDEV_DEVTYPE() is a convenience helper to set the actual
device type. All device types are free form, but for convenience the
same strings as used with RFKILL are choosen.

Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Ethernet framing is used for a lot of devices these days. Most
prominent are WiFi and WiMAX based devices. However for userspace
application it is important to classify these devices correctly and
not only see them as Ethernet devices. The daemons like HAL, DeviceKit
or even NetworkManager with udev support tries to do the classification
in userspace with a lot trickery and extra system calls. This is not
good and actually reaches its limitations. Especially since the kernel
does know the type of the Ethernet device it is pretty stupid.

To solve this problem the underlying device type needs to be set and
then the value will be exported as DEVTYPE via uevents and available
within udev.

  # cat /sys/class/net/wlan0/uevent
  DEVTYPE=wlan
  INTERFACE=wlan0
  IFINDEX=5

This is similar to subsystems like USB and SCSI that distinguish
between hosts, devices, disks, partitions etc.

The new SET_NETDEV_DEVTYPE() is a convenience helper to set the actual
device type. All device types are free form, but for convenience the
same strings as used with RFKILL are choosen.

Signed-off-by: Marcel Holtmann &lt;marcel@holtmann.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
