<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/rose, branch linux-2.6.25.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.25.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.25.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-05-01T21:44:32Z</updated>
<entry>
<title>rose: Socket lock was not released before returning to user space</title>
<updated>2008-05-01T21:44:32Z</updated>
<author>
<name>Bernard Pidoux</name>
</author>
<published>2008-04-25T08:42:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=75e109ad447b0bded3f0e2b2def52bce4fa9a1ea'/>
<id>urn:sha1:75e109ad447b0bded3f0e2b2def52bce4fa9a1ea</id>
<content type='text'>
[ Upstream commit: 43837b1e6c5aef803d57009a68db18df13e64892 ]

================================================
[ BUG: lock held when returning to user space! ]
------------------------------------------------
xfbbd/3683 is leaving the kernel with locks still held!
1 lock held by xfbbd/3683:
  #0:  (sk_lock-AF_ROSE){--..}, at: [&lt;c8cd1eb3&gt;] rose_connect+0x73/0x420 [rose]

INFO: task xfbbd:3683 blocked for more than 120 seconds.
"echo 0 &gt; /proc/sys/kernel/hung_task_timeout_secs" disables this message.
xfbbd         D 00000246     0  3683   3669
        c6965ee0 00000092 c02c5c40 00000246 c0f6b5f0 c0f6b5c0 c0f6b5f0 c0f6b5c0
        c0f6b614 c6965f18 c024b74b ffffffff c06ba070 00000000 00000000 00000001
        c6ab07c0 c012d450 c0f6b634 c0f6b634 c7b5bf10 c0d6004c c7b5bf10 c6965f40
Call Trace:
  [&lt;c024b74b&gt;] lock_sock_nested+0x6b/0xd0
  [&lt;c012d450&gt;] ? autoremove_wake_function+0x0/0x40
  [&lt;c02488f1&gt;] sock_fasync+0x41/0x150
  [&lt;c0249e69&gt;] sock_close+0x19/0x40
  [&lt;c0175d54&gt;] __fput+0xb4/0x170
  [&lt;c0176018&gt;] fput+0x18/0x20
  [&lt;c017300e&gt;] filp_close+0x3e/0x70
  [&lt;c01744e9&gt;] sys_close+0x69/0xb0
  [&lt;c0103bda&gt;] sysenter_past_esp+0x5f/0xa5
  =======================
INFO: lockdep is turned off.

Signed-off-by: Bernard Pidoux &lt;f6bvp@amsat.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>[ROSE/AX25] af_rose: rose_release() fix</title>
<updated>2008-04-02T06:56:17Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-04-02T06:56:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4965291acf8cc2c31dcb2fc7d292a04ee08da2dd'/>
<id>urn:sha1:4965291acf8cc2c31dcb2fc7d292a04ee08da2dd</id>
<content type='text'>
rose_release() doesn't release sockets properly, e.g. it skips
sock_orphan(), so OOPSes are triggered in sock_def_write_space(),
which was observed especially while ROSE skbs were kfreed from
ax25_frames_acked(). There is also sock_hold() and lock_sock() added -
similarly to ax25_release(). Thanks to Bernard Pidoux for substantial
help in debugging this problem.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Reported-and-tested-by: Bernard Pidoux &lt;bpidoux@free.fr&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[ROSE]: Supress sparse warnings</title>
<updated>2008-01-28T23:02:44Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2008-01-15T11:30:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=95b7d924a589dbefc7ae2ea6c7144b86b75d6a47'/>
<id>urn:sha1:95b7d924a589dbefc7ae2ea6c7144b86b75d6a47</id>
<content type='text'>
  CHECK   net/rose/af_rose.c
net/rose/af_rose.c:125:11: warning: expensive signed divide
net/rose/af_rose.c:976:46: warning: expensive signed divide
net/rose/af_rose.c:1379:13: warning: context imbalance in 'rose_info_start' - wrong count at exit
net/rose/af_rose.c:1406:13: warning: context imbalance in 'rose_info_stop' - unexpected unlock
  CHECK   net/rose/rose_in.c
net/rose/rose_in.c:185:25: warning: expensive signed divide
  CHECK   net/rose/rose_route.c
net/rose/rose_route.c:997:46: warning: expensive signed divide
net/rose/rose_route.c:1070:13: warning: context imbalance in 'rose_node_start' - wrong count at exit
net/rose/rose_route.c:1093:13: warning: context imbalance in 'rose_node_stop' - unexpected unlock
net/rose/rose_route.c:1146:13: warning: context imbalance in 'rose_neigh_start' - wrong count at exit
net/rose/rose_route.c:1169:13: warning: context imbalance in 'rose_neigh_stop' - unexpected unlock
net/rose/rose_route.c:1229:13: warning: context imbalance in 'rose_route_start' - wrong count at exit
net/rose/rose_route.c:1252:13: warning: context imbalance in 'rose_route_stop' - unexpected unlock

Signed-off-by: Eric Dumazet &lt;dada1@cosmosbay.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET]: Simple ctl_table to ctl_path conversions.</title>
<updated>2008-01-28T23:01:07Z</updated>
<author>
<name>Pavel Emelyanov</name>
</author>
<published>2008-01-09T08:30:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b5ccd792fa413f9336273cb8fa3b9dd3a7ec1735'/>
<id>urn:sha1:b5ccd792fa413f9336273cb8fa3b9dd3a7ec1735</id>
<content type='text'>
This patch includes many places, that only required
replacing the ctl_table-s with appropriate ctl_paths
and call register_sysctl_paths().

Nothing special was done with them.

Signed-off-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET]: Convert init_timer into setup_timer</title>
<updated>2008-01-28T22:53:35Z</updated>
<author>
<name>Pavel Emelyanov</name>
</author>
<published>2008-01-24T05:20:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b24b8a247ff65c01b252025926fe564209fae4fc'/>
<id>urn:sha1:b24b8a247ff65c01b252025926fe564209fae4fc</id>
<content type='text'>
Many-many code in the kernel initialized the timer-&gt;function
and  timer-&gt;data together with calling init_timer(timer). There
is already a helper for this. Use it for networking code.

The patch is HUGE, but makes the code 130 lines shorter
(98 insertions(+), 228 deletions(-)).

Signed-off-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Acked-by: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[ROSE]: Trivial compilation CONFIG_INET=n case</title>
<updated>2007-12-05T13:37:28Z</updated>
<author>
<name>Pavel Emelyanov</name>
</author>
<published>2007-12-05T10:18:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=78f150bf94f5430fe8c34edeafe8d01706f38148'/>
<id>urn:sha1:78f150bf94f5430fe8c34edeafe8d01706f38148</id>
<content type='text'>
The rose_rebuild_header() consists only of some variables in
case INET=n, and gcc will warn us about it.

Signed-off-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET]: Forget the zero_it argument of sk_alloc()</title>
<updated>2007-11-01T07:39:31Z</updated>
<author>
<name>Pavel Emelyanov</name>
</author>
<published>2007-11-01T07:39:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6257ff2177ff02d7f260a7a501876aa41cb9a9f6'/>
<id>urn:sha1:6257ff2177ff02d7f260a7a501876aa41cb9a9f6</id>
<content type='text'>
Finally, the zero_it argument can be completely removed from
the callers and from the function prototype.

Besides, fix the checkpatch.pl warnings about using the
assignments inside if-s.

This patch is rather big, and it is a part of the previous one.
I splitted it wishing to make the patches more readable. Hope 
this particular split helped.

Signed-off-by: Pavel Emelyanov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET]: Move hardware header operations out of netdevice.</title>
<updated>2007-10-10T23:52:52Z</updated>
<author>
<name>Stephen Hemminger</name>
</author>
<published>2007-10-09T08:40:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3b04ddde02cf1b6f14f2697da5c20eca5715017f'/>
<id>urn:sha1:3b04ddde02cf1b6f14f2697da5c20eca5715017f</id>
<content type='text'>
Since hardware header operations are part of the protocol class
not the device instance, make them into a separate object and
save memory.

Signed-off-by: Stephen Hemminger &lt;shemminger@linux-foundation.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET]: Make the device list and device lookups per namespace.</title>
<updated>2007-10-10T23:49:10Z</updated>
<author>
<name>Eric W. Biederman</name>
</author>
<published>2007-09-17T18:56:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=881d966b48b035ab3f3aeaae0f3d3f9b584f45b2'/>
<id>urn:sha1:881d966b48b035ab3f3aeaae0f3d3f9b584f45b2</id>
<content type='text'>
This patch makes most of the generic device layer network
namespace safe.  This patch makes dev_base_head a
network namespace variable, and then it picks up
a few associated variables.  The functions:
dev_getbyhwaddr
dev_getfirsthwbytype
dev_get_by_flags
dev_get_by_name
__dev_get_by_name
dev_get_by_index
__dev_get_by_index
dev_ioctl
dev_ethtool
dev_load
wireless_process_ioctl

were modified to take a network namespace argument, and
deal with it.

vlan_ioctl_set and brioctl_set were modified so their
hooks will receive a network namespace argument.

So basically anthing in the core of the network stack that was
affected to by the change of dev_base was modified to handle
multiple network namespaces.  The rest of the network stack was
simply modified to explicitly use &amp;init_net the initial network
namespace.  This can be fixed when those components of the network
stack are modified to handle multiple network namespaces.

For now the ifindex generator is left global.

Fundametally ifindex numbers are per namespace, or else
we will have corner case problems with migration when
we get that far.

At the same time there are assumptions in the network stack
that the ifindex of a network device won't change.  Making
the ifindex number global seems a good compromise until
the network stack can cope with ifindex changes when
you change namespaces, and the like.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET]: Make device event notification network namespace safe</title>
<updated>2007-10-10T23:49:09Z</updated>
<author>
<name>Eric W. Biederman</name>
</author>
<published>2007-09-12T11:02:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e9dc86534051b78e41e5b746cccc291b57a3a311'/>
<id>urn:sha1:e9dc86534051b78e41e5b746cccc291b57a3a311</id>
<content type='text'>
Every user of the network device notifiers is either a protocol
stack or a pseudo device.  If a protocol stack that does not have
support for multiple network namespaces receives an event for a
device that is not in the initial network namespace it quite possibly
can get confused and do the wrong thing.

To avoid problems until all of the protocol stacks are converted
this patch modifies all netdev event handlers to ignore events on
devices that are not in the initial network namespace.

As the rest of the code is made network namespace aware these
checks can be removed.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
