24 Jan, 2006

1 commit


12 Jan, 2006

2 commits


04 Jan, 2006

2 commits

  • Currently all network protocols need to call dev_ioctl as the default
    fallback in their ioctl implementations. This patch adds a fallback
    to dev_ioctl to sock_ioctl if the protocol returned -ENOIOCTLCMD.
    This way all the procotol ioctl handlers can be simplified and we don't
    need to export dev_ioctl.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: David S. Miller

    Christoph Hellwig
     
  • I noticed that some of 'struct proto_ops' used in the kernel may share
    a cache line used by locks or other heavily modified data. (default
    linker alignement is 32 bytes, and L1_CACHE_LINE is 64 or 128 at
    least)

    This patch makes sure a 'struct proto_ops' can be declared as const,
    so that all cpus can share all parts of it without false sharing.

    This is not mandatory : a driver can still use a read/write structure
    if it needs to (and eventually a __read_mostly)

    I made a global stubstitute to change all existing occurences to make
    them const.

    This should reduce the possibility of false sharing on SMP, and
    speedup some socket system calls.

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     

07 Dec, 2005

1 commit


04 Oct, 2005

1 commit

  • I've found the problem in general. It affects any 64-bit
    architecture. The problem occurs when you change the system time.

    Suppose that when you boot your system clock is forward by a day.
    This gets recorded down in skb_tv_base. You then wind the clock back
    by a day. From that point onwards the offset will be negative which
    essentially overflows the 32-bit variables they're stored in.

    In fact, why don't we just store the real time stamp in those 32-bit
    variables? After all, we're not going to overflow for quite a while
    yet.

    When we do overflow, we'll need a better solution of course.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     

27 Sep, 2005

1 commit


21 Sep, 2005

1 commit

  • The convention is that longer addresses will simply extend
    the hardeware address byte arrays at the end of sockaddr_ll and
    packet_mreq.

    In making this change a small information leak was also closed.
    The code only initializes the hardware address bytes that are
    used, but all of struct sockaddr_ll was copied to userspace.
    Now we just copy sockaddr_ll to the last byte of the hardware
    address used.

    For error checking larger structures than our internal
    maximums continue to be allowed but an error is signaled if we can
    not fit the hardware address into our internal structure.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     

07 Sep, 2005

1 commit


30 Aug, 2005

2 commits


13 Jul, 2005

1 commit

  • Revert the nf_reset change that caused so much trouble, drop conntrack
    references manually before packets are queued to packet sockets.

    Signed-off-by: Phil Oester
    Signed-off-by: Patrick McHardy
    Signed-off-by: David S. Miller

    Phil Oester
     

12 Jul, 2005

1 commit

  • Move the protocol specific config options out to the specific protocols.
    With this change net/Kconfig now starts to become readable and serve as a
    good basis for further re-structuring.

    The menu structure is left almost intact, except that indention is
    fixed in most cases. Most visible are the INET changes where several
    "depends on INET" are replaced with a single ifdef INET / endif pair.

    Several new files were created to accomplish this change - they are
    small but serve the purpose that config options are now distributed
    out where they belongs.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Sam Ravnborg
     

06 May, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds