28 Apr, 2007

1 commit

  • * master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (448 commits)
    [IPV4] nl_fib_lookup: Initialise res.r before fib_res_put(&res)
    [IPV6]: Fix thinko in ipv6_rthdr_rcv() changes.
    [IPV4]: Add multipath cached to feature-removal-schedule.txt
    [WIRELESS] cfg80211: Clarify locking comment.
    [WIRELESS] cfg80211: Fix locking in wiphy_new.
    [WEXT] net_device: Don't include wext bits if not required.
    [WEXT]: Misc code cleanups.
    [WEXT]: Reduce inline abuse.
    [WEXT]: Move EXPORT_SYMBOL statements where they belong.
    [WEXT]: Cleanup early ioctl call path.
    [WEXT]: Remove options.
    [WEXT]: Remove dead debug code.
    [WEXT]: Clean up how wext is called.
    [WEXT]: Move to net/wireless
    [AFS]: Eliminate cmpxchg() usage in vlocation code.
    [RXRPC]: Fix pointers passed to bitops.
    [RXRPC]: Remove bogus atomic_* overrides.
    [AFS]: Fix u64 printing in debug logging.
    [AFS]: Add "directory write" support.
    [AFS]: Implement the CB.InitCallBackState3 operation.
    ...

    Linus Torvalds
     

27 Apr, 2007

5 commits


26 Apr, 2007

3 commits

  • Now that network timestamps use ktime_t infrastructure, we can add a new
    SOL_SOCKET sockopt SO_TIMESTAMPNS.

    This command is similar to SO_TIMESTAMP, but permits transmission of
    a 'timespec struct' instead of a 'timeval struct' control message.
    (nanosecond resolution instead of microsecond)

    Control message is labelled SCM_TIMESTAMPNS instead of SCM_TIMESTAMP

    A socket cannot mix SO_TIMESTAMP and SO_TIMESTAMPNS : the two modes are
    mutually exclusive.

    sock_recv_timestamp() became too big to be fully inlined so I added a
    __sock_recv_timestamp() helper function.

    Signed-off-by: Eric Dumazet
    CC: linux-arch@vger.kernel.org
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Now network timestamps use ktime_t infrastructure, we can add a new
    ioctl() SIOCGSTAMPNS command to get timestamps in 'struct timespec'.
    User programs can thus access to nanosecond resolution.

    Signed-off-by: Eric Dumazet
    CC: Stephen Hemminger
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Here is the current version of the 64 bit divide common code.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Stephen Hemminger
     

20 Apr, 2007

5 commits

  • I've traced down an off-by-one TCP checksum calculation error under
    the following conditions:

    1) The TCP code needs to split a full-sized packet due to a reduced
    MSS (typically due to the addition of TCP options mid-stream like
    SACK).
    _AND_
    2) The checksum of the 2nd fragment is larger than the checksum of the
    original packet. After subtraction this results in a checksum for
    the 1st fragment with bits 16..31 set to 1. (this is ok)
    _AND_
    3) The checksum of the 1st fragment's TCP header plus the previously
    32bit checksum of the 1st fragment DOES NOT cause a 32bit overflow
    when added together. This results in a checksum of the TCP header
    plus TCP data that still has the upper 16 bits as 1's.
    _THEN_
    4) The TCP+data checksum is added to the checksum of the pseudo IP
    header with csum_tcpudp_nofold() incorrectly (the bug).

    The problem is the checksum of the TCP+data is passed to
    csum_tcpudp_nofold() as an 32bit unsigned value, however the assembly
    code acts on it as if it is a 64bit unsigned value.

    This causes an incorrect 32->64bit extension if the sum has bit 31
    set. The resulting checksum is off by one.

    This problems is data and TCP header dependent due to #2 and #3
    above so it doesn't occur on every TCP packet split.

    Signed-off-by: Dave Johnson
    Signed-off-by: Ralf Baechle

    Dave Johnson
     
  • With commit 63dc68a8cf60cb110b147dab1704d990808b39e2, kernel can not
    handle BUG() and BUG_ON() properly since get_user() returns false for
    kernel code. Use __get_user() to skip unnecessary access_ok(). This
    patch also make BRK_BUG code encoded in the TNE instruction.

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: Ralf Baechle

    Atsushi Nemoto
     
  • The save_fp_context()/restore_fp_context() might sleep on accessing
    user stack and therefore might lose FPU ownership in middle of them.

    If these function failed due to "in_atomic" test in do_page_fault,
    touch the sigcontext area in non-atomic context and retry these
    save/restore operation.

    This is a replacement of a (broken) fix which was titled "Allow CpU
    exception in kernel partially".

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: Ralf Baechle

    Atsushi Nemoto
     
  • The commit 4d40bff7110e9e1a97ff8c01bdd6350e9867cc10 ("Allow CpU
    exception in kernel partially") was broken. The commit was to fix
    theoretical problem but broke usual case. Revert it for now.

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: Ralf Baechle

    Atsushi Nemoto
     
  • Recent versions of the BCM112X processors aren't recognized by Linux
    (preventing Linux from booting on those processors). This patch adds
    support for those that are missing.

    Signed-off-by: Mark Mason
    Signed-off-by: Ralf Baechle

    Mark Mason
     

30 Mar, 2007

2 commits


25 Mar, 2007

6 commits


18 Mar, 2007

1 commit


17 Mar, 2007

4 commits


10 Mar, 2007

1 commit

  • o Fix build error.
    o Handle error returns.
    o Deal with signals received while sleeping.
    o Don't allow to be selected when we're not building the directory with
    the driver anyway.
    o Coding style cleanups.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     

08 Mar, 2007

1 commit


07 Mar, 2007

7 commits


05 Mar, 2007

4 commits