1. 12 6月, 2007 3 次提交
  2. 07 6月, 2007 3 次提交
  3. 22 5月, 2007 1 次提交
    • A
      Detach sched.h from mm.h · e8edc6e0
      Alexey Dobriyan 提交于
      First thing mm.h does is including sched.h solely for can_do_mlock() inline
      function which has "current" dereference inside. By dealing with can_do_mlock()
      mm.h can be detached from sched.h which is good. See below, why.
      
      This patch
      a) removes unconditional inclusion of sched.h from mm.h
      b) makes can_do_mlock() normal function in mm/mlock.c
      c) exports can_do_mlock() to not break compilation
      d) adds sched.h inclusions back to files that were getting it indirectly.
      e) adds less bloated headers to some files (asm/signal.h, jiffies.h) that were
         getting them indirectly
      
      Net result is:
      a) mm.h users would get less code to open, read, preprocess, parse, ... if
         they don't need sched.h
      b) sched.h stops being dependency for significant number of files:
         on x86_64 allmodconfig touching sched.h results in recompile of 4083 files,
         after patch it's only 3744 (-8.3%).
      
      Cross-compile tested on
      
      	all arm defconfigs, all mips defconfigs, all powerpc defconfigs,
      	alpha alpha-up
      	arm
      	i386 i386-up i386-defconfig i386-allnoconfig
      	ia64 ia64-up
      	m68k
      	mips
      	parisc parisc-up
      	powerpc powerpc-up
      	s390 s390-up
      	sparc sparc-up
      	sparc64 sparc64-up
      	um-x86_64
      	x86_64 x86_64-up x86_64-defconfig x86_64-allnoconfig
      
      as well as my two usual configs.
      Signed-off-by: NAlexey Dobriyan <adobriyan@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      e8edc6e0
  4. 12 5月, 2007 1 次提交
  5. 11 5月, 2007 10 次提交
  6. 10 5月, 2007 1 次提交
  7. 09 5月, 2007 9 次提交
  8. 03 5月, 2007 2 次提交
  9. 27 4月, 2007 5 次提交
  10. 26 4月, 2007 3 次提交
  11. 20 4月, 2007 2 次提交
    • D
      [MIPS] Fix wrong checksum for split TCP packets on 64-bit MIPS · 1d464c26
      Dave Johnson 提交于
      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: NDave Johnson <djohnson+linux-mips@sw.starentnetworks.com>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      1d464c26
    • A
      [MIPS] Fix BUG(), BUG_ON() handling · ba755f8e
      Atsushi Nemoto 提交于
      With commit 63dc68a8, 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: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      ba755f8e