1. 24 6月, 2008 3 次提交
  2. 22 6月, 2008 1 次提交
  3. 19 6月, 2008 2 次提交
  4. 17 6月, 2008 3 次提交
  5. 13 6月, 2008 4 次提交
    • D
      pagemap: pass mm into pagewalkers · 2165009b
      Dave Hansen 提交于
      We need this at least for huge page detection for now, because powerpc
      needs the vm_area_struct to be able to determine whether a virtual address
      is referring to a huge page (its pmd_huge() doesn't work).
      
      It might also come in handy for some of the other users.
      Signed-off-by: NDave Hansen <dave@linux.vnet.ibm.com>
      Acked-by: NMatt Mackall <mpm@selenic.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      2165009b
    • M
      cciss: add new hardware support · 24aac480
      Mike Miller 提交于
      Add support for the next generation of HP Smart Array SAS/SATA
      controllers.  Shipping date is late Fall 2008.
      
      Bump the driver version to 3.6.20 to reflect the new hardware support from
      patch 1 of this set.
      Signed-off-by: NMike Miller <mike.miller@hp.com>
      Cc: Jens Axboe <jens.axboe@oracle.com>
      Cc: <stable@kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      24aac480
    • B
      proc_fs.h: move struct mm_struct forward-declaration · 57d3c64f
      Ben Nizette 提交于
      Move the forward-declaration of struct mm_struct a little way up
      proc_fs.h.  This fixes a bunch of "'struct mm_struct' declared inside
      parameter list" warnings with CONFIG_PROC_FS=n
      Signed-off-by: NBen Nizette <bn@niasdigital.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      57d3c64f
    • D
      tcp: Revert 'process defer accept as established' changes. · ec0a1966
      David S. Miller 提交于
      This reverts two changesets, ec3c0982
      ("[TCP]: TCP_DEFER_ACCEPT updates - process as established") and
      the follow-on bug fix 9ae27e0a
      ("tcp: Fix slab corruption with ipv6 and tcp6fuzz").
      
      This change causes several problems, first reported by Ingo Molnar
      as a distcc-over-loopback regression where connections were getting
      stuck.
      
      Ilpo Järvinen first spotted the locking problems.  The new function
      added by this code, tcp_defer_accept_check(), only has the
      child socket locked, yet it is modifying state of the parent
      listening socket.
      
      Fixing that is non-trivial at best, because we can't simply just grab
      the parent listening socket lock at this point, because it would
      create an ABBA deadlock.  The normal ordering is parent listening
      socket --> child socket, but this code path would require the
      reverse lock ordering.
      
      Next is a problem noticed by Vitaliy Gusev, he noted:
      
      ----------------------------------------
      >--- a/net/ipv4/tcp_timer.c
      >+++ b/net/ipv4/tcp_timer.c
      >@@ -481,6 +481,11 @@ static void tcp_keepalive_timer (unsigned long data)
      > 		goto death;
      > 	}
      >
      >+	if (tp->defer_tcp_accept.request && sk->sk_state == TCP_ESTABLISHED) {
      >+		tcp_send_active_reset(sk, GFP_ATOMIC);
      >+		goto death;
      
      Here socket sk is not attached to listening socket's request queue. tcp_done()
      will not call inet_csk_destroy_sock() (and tcp_v4_destroy_sock() which should
      release this sk) as socket is not DEAD. Therefore socket sk will be lost for
      freeing.
      ----------------------------------------
      
      Finally, Alexey Kuznetsov argues that there might not even be any
      real value or advantage to these new semantics even if we fix all
      of the bugs:
      
      ----------------------------------------
      Hiding from accept() sockets with only out-of-order data only
      is the only thing which is impossible with old approach. Is this really
      so valuable? My opinion: no, this is nothing but a new loophole
      to consume memory without control.
      ----------------------------------------
      
      So revert this thing for now.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ec0a1966
  6. 12 6月, 2008 6 次提交
  7. 11 6月, 2008 4 次提交
  8. 10 6月, 2008 4 次提交
    • A
      ftrace: prevent freeing of all failed updates · 0eb96701
      Abhishek Sagar 提交于
      Prevent freeing of records which cause problems and correspond to function from
      core kernel text. A new flag, FTRACE_FL_CONVERTED is used to mark a record
      as "converted". All other records are patched lazily to NOPs. Failed records
      now also remain on frace_hash table. Each invocation of ftrace_record_ip now
      checks whether the traced function has ever been recorded (including past
      failures) and doesn't re-record it again.
      Signed-off-by: NAbhishek Sagar <sagar.abhishek@gmail.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      0eb96701
    • O
      sched: fix TASK_WAKEKILL vs SIGKILL race · 16882c1e
      Oleg Nesterov 提交于
      schedule() has the special "TASK_INTERRUPTIBLE && signal_pending()" case,
      this allows us to do
      
      	current->state = TASK_INTERRUPTIBLE;
      	schedule();
      
      without fear to sleep with pending signal.
      
      However, the code like
      
      	current->state = TASK_KILLABLE;
      	schedule();
      
      is not right, schedule() doesn't take TASK_WAKEKILL into account. This means
      that mutex_lock_killable(), wait_for_completion_killable(), down_killable(),
      schedule_timeout_killable() can miss SIGKILL (and btw the second SIGKILL has
      no effect).
      
      Introduce the new helper, signal_pending_state(), and change schedule() to
      use it. Hopefully it will have more users, that is why the task's state is
      passed separately.
      
      Note this "__TASK_STOPPED | __TASK_TRACED" check in signal_pending_state().
      This is needed to preserve the current behaviour (ptrace_notify). I hope
      this check will be removed soon, but this (afaics good) change needs the
      separate discussion.
      
      The fast path is "(state & (INTERRUPTIBLE | WAKEKILL)) + signal_pending(p)",
      basically the same that schedule() does now. However, this patch of course
      bloats schedule().
      Signed-off-by: NOleg Nesterov <oleg@tv-sign.ru>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      16882c1e
    • A
      include/linux/ssb/ssb_driver_gige.h typo fix · 585c5434
      Adrian Bunk 提交于
      This patch fixes a typo in the name of a config variable.
      Reported-by: NRobert P. J. Day <rpjday@crashcourse.ca>
      Signed-off-by: NAdrian Bunk <bunk@kernel.org>
      Reviewed-by: NMichael Buesch <mb@bu3sch.de>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      585c5434
    • R
      mm: Minor clean-up of page flags in mm/page_alloc.c · dfa7e20c
      Russ Anderson 提交于
      Minor source code cleanup of page flags in mm/page_alloc.c.
      Move the definition of the groups of bits to page-flags.h.
      
      The purpose of this clean up is that the next patch will
      conditionally add a page flag to the groups.  Doing that
      in a header file is cleaner than adding #ifdefs to the
      C code.
      Signed-off-by: NRuss Anderson <rja@sgi.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      dfa7e20c
  9. 09 6月, 2008 2 次提交
  10. 07 6月, 2008 6 次提交
  11. 05 6月, 2008 1 次提交
    • D
      V4L/DVB (7166): [v4l] Add new user class controls and deprecate others · 39028ec6
      David Woodhouse 提交于
      These were removed in commit 26d507fc:
      
      > -#define V4L2_CID_HCENTER               (V4L2_CID_BASE+22)
      > -#define V4L2_CID_VCENTER               (V4L2_CID_BASE+23)
      > -#define V4L2_CID_LASTP1                        (V4L2_CID_BASE+24) /*
      > last CID + 1 */
      > +
      > +/* Deprecated, use V4L2_CID_PAN_RESET and V4L2_CID_TILT_RESET */
      > +#define V4L2_CID_HCENTER_DEPRECATED    (V4L2_CID_BASE+22)
      > +#define V4L2_CID_VCENTER_DEPRECATED    (V4L2_CID_BASE+23)
      
      But there was no warning in Documentation/feature-removal-schedule.txt
      and I'm receiving reports that it's breaking userspace apps (the
      gstreamer-v4l2 plugin breaks in Fedora rawhide). You can't just pull
      things from the published userspace API like that.
      
      Please can we revert the addition of _DEPRECATED to these ioctl
      definitions. Perhaps we can add a runtime warning if they actually get
      used? Or a compile-time warning if we can manage that?
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@infradead.org>
      39028ec6
  12. 04 6月, 2008 4 次提交