[cr][git]linux-cr branch, ckpt-v17-rc1, created. v2.6.27-rc5-45614-g9cfe3c4

orenl at cs.columbia.edu orenl at cs.columbia.edu
Mon Jul 6 06:18:56 PDT 2009


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "linux-cr".

The branch, ckpt-v17-rc1 has been created
        at  9cfe3c478746960e25a9f3abaeeb9d8503e0f74d (commit)

- Log -----------------------------------------------------------------
commit 9cfe3c478746960e25a9f3abaeeb9d8503e0f74d
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:11 2009 -0400

    c/r: checkpoint and restore (shared) task's sighand_struct
    
    This patch adds the checkpointing and restart of signal handling
    state - 'struct sighand_struct'. Since the contents of this state
    only affect userspace, no input validation is required.
    
    Add _NSIG to kernel constants saved/tested with image header.
    
    Number of signals (_NSIG) is arch-dependent, but is within __KERNEL__
    and not visibile to userspace compile. Therefore, define per arch
    CKPT_ARCH_NSIG in <asm/checkpoint_hdr.h>.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 5bac11a99e182cf7bdb30ee5f648a2e587b4ded2
Author: Serge E. Hallyn <serue at us.ibm.com>
Date:   Mon Jul 6 04:36:10 2009 -0400

    cr: restore file->f_cred
    
    Restore a file's f_cred.  This is set to the cred of the task doing
    the open, so often it will be the same as that of the restarted task.
    
    Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>

commit ae0ee34a49e4d5561df53c68ed29549345e596b1
Author: Serge E. Hallyn <serue at us.ibm.com>
Date:   Mon Jul 6 04:36:10 2009 -0400

    cr: checkpoint and restore task credentials
    
    This patch adds the checkpointing and restart of credentials
    (uids, gids, and capabilities) to Oren's c/r patchset (on top
    of v14).  It goes to great pains to re-use (and define when
    needed) common helpers, in order to make sure that as security
    code is modified, the cr code will be updated.  Some of the
    helpers should still be moved (i.e. _creds() functions should
    be in kernel/cred.c).
    
    When building the credentials for the restarted process, I
    1. create a new struct cred as a copy of the running task's
    cred (using prepare_cred())
    2. always authorize any changes to the new struct cred
    based on the permissions of current_cred() (not the current
    transient state of the new cred).
    
    While this may mean that certain transient_cred1->transient_cred2
    states are allowed which otherwise wouldn't be allowed, the
    fact remains that current_cred() is allowed to transition to
    transient_cred2.
    
    The reconstructed creds are applied to the task at the very
    end of the sys_restart call.  This ensures that any objects which
    need to be re-created (file, socket, etc) are re-created using
    the creds of the task calling sys_restart - preventing an unpriv
    user from creating a privileged object, and ensuring that a
    root task can restart a process which had started out privileged,
    created some privileged objects, then dropped its privilege.
    
    With these patches, the root user can restart checkpoint images
    (created by either hallyn or root) of user hallyn's tasks,
    resulting in a program owned by hallyn.
    
    Changelog:
    	Jun 15: Fix user_ns handling when !CONFIG_USER_N
    	        Set creator_ref=0 for root_ns (discard @flags)
    		Don't  overwrite global user-ns if CONFIG_USER_NS
    	Jun 10: Merge with ckpt-v16-dev (Oren Laadan)
    	Jun 01: Don't check ordering of groups in group_info, bc
    		set_groups() will sort it for us.
    	May 28: 1. Restore securebits
    		2. Address Alexey's comments: move prototypes out of
    		   sched.h, validate ngroups < NGROUPS_MAX, validate
    		   groups are sorted, and get rid of ckpt_hdr_cred->version.
    		3. remove bogus unused flag RESTORE_CREATE_USERNS
    	May 26: Move group, user, userns, creds c/r functions out
    		of checkpoint/process.c and into the appropriate files.
    	May 26: Define struct ckpt_hdr_task_creds and move task cred
    		objref c/r into {checkpoint_restore}_task_shared().
    	May 26: Take cred refs around checkpoint_write_creds()
    	May 20: Remove the limit on number of groups in groupinfo
    		at checkpoint time
    	May 20: Remove the depth limit on empty user namespaces
    	May 20: Better document checkpoint_user
    	May 18: fix more refcounting: if (userns 5, uid 0) had
    		no active tasks or child user_namespaces, then
    		it shouldn't exist at restart or it, its namespace,
    		and its whole chain of creators will be leaked.
    	May 14: fix some refcounting:
    		1. a new user_ns needs a ref to remain pinned
    		   by its root user
    		2. current_user_ns needs an extra ref bc objhash
    		   drops two on restart
    		3. cred needs a ref for the real credentials bc
    		   commit_creds eats one ref.
    	May 13: folded in fix to userns refcounting.
    
    Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>
    [orenl at cs.columbia.edu: merge with ckpt-v16-dev]

commit 12931bce69fb908bc3007c7fff6517df163ada31
Author: Serge E. Hallyn <serue at us.ibm.com>
Date:   Mon Jul 6 04:36:10 2009 -0400

    cr: capabilities: define checkpoint and restore fns
    
    [ Andrew: I am punting on dealing with the subsystem cooperation
    issues in this version, in favor of trying to get LSM issues
    straightened out ]
    
    An application checkpoint image will store capability sets
    (and the bounding set) as __u64s.  Define checkpoint and
    restart functions to translate between those and kernel_cap_t's.
    
    Define a common function do_capset_tocred() which applies capability
    set changes to a passed-in struct cred.
    
    The restore function uses do_capset_tocred() to apply the restored
    capabilities to the struct cred being crafted, subject to the
    current task's (task executing sys_restart()) permissions.
    
    Changelog:
    	Jun 09: Can't choose securebits or drop bounding set if
    		file capabilities aren't compiled into the kernel.
    		Also just store caps in __u32s (looks cleaner).
    	Jun 01: Made the checkpoint and restore functions and the
    		ckpt_hdr_capabilities struct more opaque to the
    		rest of the c/r code, as suggested by Andrew Morgan,
    		and using naming suggested by Oren.
    	Jun 01: Add commented BUILD_BUG_ON() to point out that the
    		current implementation depends on 64-bit capabilities.
    		(Andrew Morgan and Alexey Dobriyan).
    	May 28: add helpers to c/r securebits
    
    Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>

commit f8e5662e3ce83277c511347b4bf14be027b61e9d
Author: Serge E. Hallyn <serue at us.ibm.com>
Date:   Mon Jul 6 04:36:09 2009 -0400

    tFrom: Serge E. Hallyn <serue at us.ibm.com>
    
    clone_with_pids: define the s390 syscall
    
    Hook up the clone_with_pids system call for s390x.  clone_with_pids()
    takes an additional argument over clone(), which we pass in through
    register 7.  Stub code for using the syscall looks like:
    
    struct target_pid_set {
            int num_pids;
            pid_t *target_pids;
            unsigned long flags;
    };
    
        register unsigned long int __r2 asm ("2") = (unsigned long int)(stack);
        register unsigned long int __r3 asm ("3") = (unsigned long int)(flags);
        register unsigned long int __r4 asm ("4") = (unsigned long int)(NULL);
        register unsigned long int __r5 asm ("5") = (unsigned long int)(NULL);
        register unsigned long int __r6 asm ("6") = (unsigned long int)(NULL);
        register unsigned long int __r7 asm ("7") = (unsigned long int)(setp);
        register unsigned long int __result asm ("2");
        __asm__ __volatile__(
                " lghi %%r1,332\n"
                " svc 0\n"
                : "=d" (__result)
                : "0" (__r2), "d" (__r3),
                  "d" (__r4), "d" (__r5), "d" (__r6), "d" (__r7)
                : "1", "cc", "memory"
        );
                __result;
        })
    
        struct target_pid_set pid_set;
        int pids[1] = { 19799 };
        pid_set.num_pids = 1;
        pid_set.target_pids = &pids[0];
        pid_set.flags = 0;
    
        rc = do_clone_with_pids(topstack, clone_flags, setp);
        if (rc == 0)
    	printf("Child\n");
        else if (rc > 0)
    	printf("Parent: child pid %d\n", rc);
        else
    	printf("Error %d\n", rc);
    
    Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>

commit aa21acf0d5aa6c1d17782e6627ec7b1a73c49057
Author: Dan Smith <danms at us.ibm.com>
Date:   Mon Jul 6 04:36:09 2009 -0400

    c/r: define s390-specific checkpoint-restart code
    
    Implement the s390 arch-specific checkpoint/restart helpers.  This
    is on top of Oren Laadan's c/r code.
    
    With these, I am able to checkpoint and restart simple programs as per
    Oren's patch intro.  While on x86 I never had to freeze a single task
    to checkpoint it, on s390 I do need to.  That is a prereq for consistent
    snapshots (esp with multiple processes) anyway so I don't see that as
    a problem.
    
    Changelog:
        Jun 15:
                . Fix checkpoint and restart compat wrappers
        May 28:
                . Export asm/checkpoint_hdr.h to userspace
                . Define CKPT_ARCH_ID for S390
        Apr 11:
                . Introduce ckpt_arch_vdso()
        Feb 27:
                . Add checkpoint_s390.h
                . Fixed up save and restore of PSW, with the non-address bits
                  properly masked out
        Feb 25:
                . Make checkpoint_hdr.h safe for inclusion in userspace
                . Replace comment about vsdo code
                . Add comment about restoring access registers
                . Write and read an empty ckpt_hdr_head_arch record to appease
                  code (mktree) that expects it to be there
                . Utilize NUM_CKPT_WORDS in checkpoint_hdr.h
        Feb 24:
                . Use CKPT_COPY() to unify the un/loading of cpu and mm state
                . Fix fprs definition in ckpt_hdr_cpu
                . Remove debug WARN_ON() from checkpoint.c
        Feb 23:
                . Macro-ize the un/packing of trace flags
                . Fix the crash when externally-linked
                . Break out the restart functions into restart.c
                . Remove unneeded s390_enable_sie() call
        Jan 30:
                . Switched types in ckpt_hdr_cpu to __u64 etc.
                  (Per Oren suggestion)
                . Replaced direct inclusion of structs in
                  ckpt_hdr_cpu with the struct members.
                  (Per Oren suggestion)
                . Also ended up adding a bunch of new things
                  into restart (mm_segment, ksp, etc) in vain
                  attempt to get code using fpu to not segfault
                  after restart.
    
    Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>
    Signed-off-by: Dan Smith <danms at us.ibm.com>

commit aef6f91cd57c08b6497b7d58398163ad69866851
Author: Dan Smith <danms at us.ibm.com>
Date:   Mon Jul 6 04:36:09 2009 -0400

    c/r: add CKPT_COPY() macro
    
    As suggested by Dave[1], this provides us a way to make the copy-in and
    copy-out processes symmetric.  CKPT_COPY_ARRAY() provides us a way to do
    the same thing but for arrays.  It's not critical, but it helps us unify
    the checkpoint and restart paths for some things.
    
    Changelog:
        Mar 04:
                . Removed semicolons
                . Added build-time check for __must_be_array in CKPT_COPY_ARRAY
        Feb 27:
                . Changed CKPT_COPY() to use assignment, eliminating the need
                  for the CKPT_COPY_BIT() macro
                . Add CKPT_COPY_ARRAY() macro to help copying register arrays,
                  etc
                . Move the macro definitions inside the CR #ifdef
        Feb 25:
                . Changed WARN_ON() to BUILD_BUG_ON()
    
    Signed-off-by: Dan Smith <danms at us.ibm.com>
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>
    
    1: https://lists.linux-foundation.org/pipermail/containers/2009-February/015821.html (all the way at the bottom)

commit b410e93aca368b70e77aeda2e3e2ec19ead387ca
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:08 2009 -0400

    c/r: (s390): expose a constant for the number of words (CRs)
    
    We need to use this value in the checkpoint/restart code and would like to
    have a constant instead of a magic '3'.
    
    Changelog:
        Mar 30:
                . Add CHECKPOINT_SUPPORT in Kconfig (Nathan Lynch)
        Mar 03:
                . Picked up additional use of magic '3' in ptrace.h
    
    Signed-off-by: Dan Smith <danms at us.ibm.com>

commit 347a452330a406e9813823ce2689d3cdc7d5868a
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:08 2009 -0400

    c/r: support semaphore sysv-ipc
    
    Checkpoint of sysvipc semaphores is performed by iterating through all
    sem objects and dumping the contents of each one. The semaphore array
    of each sem is dumped with that object.
    
    The semaphore array (sem->sem_base) holds an array of 'struct sem',
    which is a {int, int}. Because this translates into the same format
    on 32- and 64-bit architectures, the checkpoint format is simply the
    dump of this array as is.
    
    TODO: this patch does not handle semaphore-undo -- this data should be
    saved per-task while iterating through the tasks.
    
    Changelog[v17]:
      - Restore objects in the right namespace
      - Forward declare struct msg_msg (instead of include linux/msg.h)
      - Fix typo in comment
      - Don't unlock ipc before calling freeary in error path
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit babace4ad297b923ac2d238514294b56370e69c9
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:08 2009 -0400

    c/r: support message-queues sysv-ipc
    
    Checkpoint of sysvipc message-queues is performed by iterating through
    all 'msq' objects and dumping the contents of each one. The message
    queued on each 'msq' are dumped with that object.
    
    Message of a specific queue get written one by one. The queue lock
    cannot be held while dumping them, but the loop must be protected from
    someone (who ?) writing or reading. To do that we grab the lock, then
    hijack the entire chain of messages from the queue, drop the lock,
    and then safely dump them in a loop. Finally, with the lock held, we
    re-attach the chain while verifying that there isn't other (new) data
    on that queue.
    
    Writing the message contents themselves is straight forward. The code
    is similar to that in ipc/msgutil.c, the main difference being that
    we deal with kernel memory and not user memory.
    
    Changelog[v17]:
      - Allocate security context for msg_msg
      - Restore objects in the right namespace
      - Don't unlock ipc before freeing
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit e02cc2043a38bb68571d7711de4c50d4d431e2e9
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:07 2009 -0400

    c/r: support share-memory sysv-ipc
    
    Checkpoint of sysvipc shared memory is performed in two steps: first,
    the entire ipc namespace is dumped as a whole by iterating through all
    shm objects and dumping the contents of each one. The shmem inode is
    registered in the objhash. Second, for each vma that refers to ipc
    shared memory we find the inode in the objhash, and save the objref.
    
    (If we find a new inode, that indicates that the ipc namespace is not
    entirely frozen and someone must have manipulated it since step 1).
    
    Handling of shm objects that have been deleted (via IPC_RMID) is left
    to a later patch in this series.
    
    Changelog[v17]:
      - Restore objects in the right namespace
      - Properly initialize ctx->deferqueue
      - Fix compilation with CONFIG_CHECKPOINT=n
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 694f14d8980ba33de4db80249d904836ee3a835d
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:07 2009 -0400

    c/r: save and restore sysvipc namespace basics
    
    Add the helpers to checkpoint and restore the contents of 'struct
    kern_ipc_perm'. Add header structures for ipc state. Put place-holders
    to save and restore ipc state.
    
    Save and restores the common state (parameters) of ipc namespace.
    
    Generic code to iterate through the objects of sysvipc shared memory,
    message queues and semaphores. The logic to save and restore the state
    of these objects will be added in the next few patches.
    
    Right now, we return -EPERM if the user calling sys_restart() isn't
    allowed to create an object with the checkpointed uid.  We may prefer
    to simply use the caller's uid in that case - but that could lead to
    subtle userspace bugs?  Unsure, so going for the stricter behavior.
    
    TODO: restore kern_ipc_perms->security.
    
    Changelog[v17]:
      - Restore objects in the right namespace
      - If !CONFIG_IPC_NS only restore objects, not global settings
      - Don't overwrite global ipc-ns if !CONFIG_IPC_NS
      - Reset the checkpointed uid and gid info on ipc objects
      - Fix compilation with CONFIG_SYSVIPC=n
    Changelog [Dan Smith <danms at us.ibm.com>]
      - Fix compilation with CONFIG_SYSVIPC=n
      - Update to match UTS changes
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 25d394f00ba9237ca5a71777ce0afc2cfd92879b
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:07 2009 -0400

    c/r (ipc): allow allocation of a desired ipc identifier
    
    During restart, we need to allocate ipc objects that with the same
    identifiers as recorded during checkpoint. Modify the allocation
    code allow an in-kernel caller to request a specific ipc identifier.
    The system call interface remains unchanged.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 522cccc15a554dc63bde8a8a53027cd8a84813c7
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:06 2009 -0400

    deferqueue: generic queue to defer work
    
    Add a interface to postpone an action until the end of the entire
    checkpoint or restart operation. This is useful when during the
    scan of tasks an operation cannot be performed in place, to avoid
    the need for a second scan.
    
    One use case is when restoring an ipc shared memory region that has
    been deleted (but is still attached), during restart it needs to be
    create, attached and then deleted. However, creation and attachment
    are performed in distinct locations, so deletion can not be performed
    on the spot. Instead, this work (delete) is deferred until later.
    (This example is in one of the following patches).
    
    This interface allows chronic procrastination in the kernel:
    
    deferqueue_create(void):
        Allocates and returns a new deferqueue.
    
    deferqueue_run(deferqueue):
        Executes all the pending works in the queue. Returns the number
        of works executed, or an error upon the first error reported by
        a deferred work.
    
    deferqueue_add(deferqueue, data, size, func, dtor):
        Enqueue a deferred work. @function is the callback function to
        do the work, which will be called with @data as an argument.
        @size tells the size of data. @dtor is a destructor callback
        that is invoked for deferred works remaining in the queue when
        the queue is destroyed. NOTE: for a given deferred work, @dtor
        is _not_ called if @func was already called (regardless of the
        return value of the latter).
    
    deferqueue_destroy(deferqueue):
        Free the deferqueue and any queued items while invoking the
        @dtor callback for each queued item.
    
    Why aren't we using the existing kernel workqueue mechanism?  We need
    to defer to work until the end of the operation: not earlier, since we
    need other things to be in place; not later, to not block waiting for
    it. However, the workqueue schedules the work for 'some time later'.
    Also, the kernel workqueue may run in any task context, but we require
    many times that an operation be run in the context of some specific
    restarting task (e.g., restoring IPC state of a certain ipc_ns).
    
    Instead, this mechanism is a simple way for the c/r operation as a
    whole, and later a task in particular, to defer some action until
    later (but not arbitrarily later) _in the restore_ operation.
    
    Changelog[v17]
      - Fix deferqueue_add() function
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 7f5238acd9767b2ff3628d28fbf6a7a5d1210c5a
Author: Dan Smith <danms at us.ibm.com>
Date:   Mon Jul 6 04:36:06 2009 -0400

    c/r: support for UTS namespace
    
    This patch adds a "phase" of checkpoint that saves out information about any
    namespaces the task(s) may have.  Do this by tracking the namespace objects
    of the tasks and making sure that tasks with the same namespace that follow
    get properly referenced in the checkpoint stream.
    
    Changes[v17]:
      - Save uts string lengths once in ckpt_hdr_const
      - Save and restore all fields of uts-ns
      - Don't overwrite global uts-ns if !CONFIG_UTS_NS
      - Replace sys_unshare() with create_uts_ns()
      - Take uts_sem around access to uts data
    Changes:
      - Remove the kernel restore path
      - Punt on nested namespaces
      - Use __NEW_UTS_LEN in nodename and domainname buffers
      - Add a note to Documentation/checkpoint/internals.txt to indicate where
        in the save/restore process the UTS information is kept
      - Store (and track) the objref of the namespace itself instead of the
        nsproxy (based on comments from Dave on IRC)
      - Remove explicit check for non-root nsproxy
      - Store the nodename and domainname lengths and use ckpt_write_string()
        to store the actual name strings
      - Catch failure of ckpt_obj_add_ptr() in ckpt_write_namespaces()
      - Remove "types" bitfield and use the "is this new" flag to determine
        whether or not we should write out a new ns descriptor
      - Replace kernel restore path
      - Move the namespace information to be directly after the task
        information record
      - Update Documentation to reflect new location of namespace info
      - Support checkpoint and restart of nested UTS namespaces
    
    Signed-off-by: Dan Smith <danms at us.ibm.com>
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 4a9926807f7b16037ac37067fb15702602775742
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:06 2009 -0400

    c/r: make ckpt_may_checkpoint_task() check each namespace individually
    
    For a given namespace type, say XXX, if a checkpoint was taken on a
    CONFIG_XXX_NS system, is restarted on a !CONFIG_XXX_NS, then ensure
    that:
    
    1) The global settings of the global (init) namespace do not get
    overwritten. Creating new objects in that namespace is ok, as long as
    the request identifier is available.
    
    2) All restarting tasks use a single namespace - because it is
    impossible to create additional namespaces to accommodate for what had
    been checkpointed.
    
    Original patch introducing nsproxy c/r by Dan Smith <danms at us.ibm.com>
    
    Chagnelog[v17]:
      - Restore namespace pieces directly instead of using sys_unshare()
      - Proper handling of restart from namespace(s) without namespace(s)
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 0fbc0992656c28e5efa3551c16d27a75c776f390
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:05 2009 -0400

    c/r: support for open pipes
    
    A pipe is a double-headed inode with a buffer attached to it. We
    checkpoint the pipe buffer only once, as soon as we hit one side of
    the pipe, regardless whether it is read- or write- end.
    
    To checkpoint a file descriptor that refers to a pipe (either end), we
    first lookup the inode in the hash table: If not found, it is the
    first encounter of this pipe. Besides the file descriptor, we also (a)
    save the pipe data, and (b) register the pipe inode in the hash. If
    found, it is the second encounter of this pipe, namely, as we hit the
    other end of the same pipe. In both cases we write the pipe-objref of
    the inode.
    
    To restore, create a new pipe and thus have two file pointers (read-
    and write- ends). We only use one of them, depending on which side was
    checkpointed first. We register the file pointer of the other end in
    the hash table, with the pipe_objref given for this pipe from the
    checkpoint, to be used later when the other arrives. At this point we
    also restore the contents of the pipe buffers.
    
    To save the pipe buffer, given a source pipe, use do_tee() to clone
    its contents into a temporary 'struct pipe_inode_info', and then use
    do_splice_from() to transfer it directly to the checkpoint image file.
    
    To restore the pipe buffer, with a fresh newly allocated target pipe,
    use do_splice_to() to splice the data directly between the checkpoint
    image file and the pipe.
    
    Changelog[v17]:
      - Forward-declare 'ckpt_ctx' et-al, don't use checkpoint_types.h
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit f95c4718f1675ef0ecb81036182fc0ad4b4686fa
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:05 2009 -0400

    splice: export pipe/file-to-pipe/file functionality
    
    During pipes c/r pipes we need to save and restore pipe buffers. But
    do_splice() requires two file descriptors, therefore we can't use it,
    as we always have one file descriptor (checkpoint image) and one
    pipe_inode_info.
    
    This patch exports interfaces that work at the pipe_inode_info level,
    namely link_pipe(), do_splice_to() and do_splice_from(). They are used
    in the following patch to to save and restore pipe buffers without
    unnecessary data copy.
    
    It slightly modifies both do_splice_to() and do_splice_from() to
    detect the case of pipe-to-pipe transfer, in which case they invoke
    splice_pipe_to_pipe() directly.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 3cf22fd2657461359be8983302fb1d4f89777d19
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:05 2009 -0400

    c/r: restore anonymous- and file-mapped- shared memory
    
    The bulk of the work is in ckpt_read_vma(), which has been refactored:
    the part that create the suitable 'struct file *' for the mapping is
    now larger and moved to a separate function. What's left is to read
    the VMA description, get the file pointer, create the mapping, and
    proceed to read the contents in.
    
    Both anonymous shared VMAs that have been read earlier (as indicated
    by a look up to objhash) and file-mapped shared VMAs are skipped.
    Anonymous shared VMAs seen for the first time have their contents
    read in directly to the backing inode, as indexed by the page numbers
    (as opposed to virtual addresses).
    
    Changelog[v14]:
      - Introduce patch
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 498ee06896939d59d6296752eda491667c0b4314
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:04 2009 -0400

    c/r: dump anonymous- and file-mapped- shared memory
    
    We now handle anonymous and file-mapped shared memory. Support for IPC
    shared memory requires support for IPC first. We extend ckpt_write_vma()
    to detect shared memory VMAs and handle it separately than private
    memory.
    
    There is not much to do for file-mapped shared memory, except to force
    msync() on the region to ensure that the file system is consistent
    with the checkpoint image. Use our internal type CKPT_VMA_SHM_FILE.
    
    Anonymous shared memory is always backed by inode in shmem filesystem.
    We use that inode to look up the VMA in the objhash and register it if
    not found (on first encounter). In this case, the type of the VMA is
    CKPT_VMA_SHM_ANON, and we dump the contents. On the other hand, if it is
    found there, we must have already saved it before, so we change the
    type to CKPT_VMA_SHM_ANON_SKIP and skip it.
    
    To dump the contents of a shmem VMA, we loop through the pages of the
    inode in the shmem filesystem, and dump the contents of each dirty
    (allocated) page - unallocated pages must be clean.
    
    Note that we save the original size of a shmem VMA because it may have
    been re-mapped partially. The format itself remains like with private
    VMAs, except that instead of addresses we record _indices_ (page nr)
    into the backing inode.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 89c4b25c2aed39a252aa1c47d83e26ae87f03711
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:04 2009 -0400

    c/r: export shmem_getpage() to support shared memory
    
    Export functionality to retrieve specific pages from shared memory
    given an inode in shmem-fs; this will be used in the next two patches
    to provide support for c/r of shared memory.
    
    mm/shmem.c:
    - shmem_getpage() and 'enum sgp_type' moved to linux/mm.h
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 2acc8e1a780a15b40e3b1f97cbb039ab84159535
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:03 2009 -0400

    c/r: restore memory address space (private memory)
    
    Restoring the memory address space begins with nuking the existing one
    of the current process, and then reading the vma state and contents.
    Call do_mmap_pgoffset() for each vma and then read in the data.
    
    Changelog[v17]:
      - Restore mm->{flags,def_flags,saved_auxv}
      - Fix bogus warning in do_restore_mm()
    Changelog[v16]:
      - Restore mm->exe_file
    Changelog[v14]:
      - Introduce per vma-type restore() function
      - Merge restart code into same file as checkpoint (memory.c)
      - Compare saved 'vdso' field of mm_context with current value
      - Check whether calls to ckpt_hbuf_get() fail
      - Discard field 'h->parent'
      - Revert change to pr_debug(), back to ckpt_debug()
    Changelog[v13]:
      - Avoid access to hh->vma_type after the header is freed
      - Test for no vma's in exit_mmap() before calling unmap_vma() (or it
        may crash if restart fails after having removed all vma's)
    Changelog[v12]:
      - Replace obsolete ckpt_debug() with pr_debug()
    Changelog[v9]:
      - Introduce ckpt_ctx_checkpoint() for checkpoint-specific ctx setup
    Changelog[v7]:
      - Fix argument given to kunmap_atomic() in memory dump/restore
    Changelog[v6]:
      - Balance all calls to ckpt_hbuf_get() with matching ckpt_hbuf_put()
        (even though it's not really needed)
    Changelog[v5]:
      - Improve memory restore code (following Dave Hansen's comments)
      - Change dump format (and code) to allow chunks of <vaddrs, pages>
        instead of one long list of each
      - Memory restore now maps user pages explicitly to copy data into them,
        instead of reading directly to user space; got rid of mprotect_fixup()
    Changelog[v4]:
      - Use standard list_... for ckpt_pgarr
    
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit fbeef7086c31f754714247fba5a76326d029643e
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:03 2009 -0400

    c/r: dump memory address space (private memory)
    
    For each vma, there is a 'struct ckpt_vma'; Then comes the actual
    contents, in one or more chunk: each chunk begins with a header that
    specifies how many pages it holds, then the virtual addresses of all
    the dumped pages in that chunk, followed by the actual contents of all
    dumped pages. A header with zero number of pages marks the end of the
    contents.  Then comes the next vma and so on.
    
    To checkpoint a vma, call the ops->checkpoint() method of that vma.
    Normally the per-vma function will invoke generic_vma_checkpoint()
    which first writes the vma description, followed by the specific
    logic to dump the contents of the pages.
    
    Currently for private mapped memory we save the pathname of the file
    that is mapped (restart will use it to re-open it and then map it).
    Later we change that to reference a file object.
    
    Changelog[v17]:
      - Save mm->{flags,def_flags,saved_auxv}
    Changelog[v16]:
      - Precede vaddrs/pages with a buffer header
      - Checkpoint mm->exe_file
      - Handle shared task->mm
    Changelog[v14]:
      - Modify the ops->checkpoint method to be much more powerful
      - Improve support for VDSO (with special_mapping checkpoint callback)
      - Save new field 'vdso' in mm_context
      - Revert change to pr_debug(), back to ckpt_debug()
      - Check whether calls to ckpt_hbuf_get() fail
      - Discard field 'h->parent'
    Changelog[v13]:
      - pgprot_t is an abstract type; use the proper accessor (fix for
        64-bit powerpc (Nathan Lynch <ntl at pobox.com>)
    Changelog[v12]:
      - Hide pgarr management inside ckpt_private_vma_fill_pgarr()
      - Fix management of pgarr chain reset and alloc/expand: keep empty
        pgarr in a pool chain
      - Replace obsolete ckpt_debug() with pr_debug()
    Changelog[v11]:
      - Copy contents of 'init->fs->root' instead of pointing to them.
      - Add missing test for VM_MAYSHARE when dumping memory
    Changelog[v10]:
      - Acquire dcache_lock around call to __d_path() in ckpt_fill_name()
    Changelog[v9]:
      - Introduce ckpt_ctx_checkpoint() for checkpoint-specific ctx setup
      - Test if __d_path() changes mnt/dentry (when crossing filesystem
        namespace boundary). for now ckpt_fill_fname() fails the checkpoint.
    Changelog[v7]:
      - Fix argument given to kunmap_atomic() in memory dump/restore
    Changelog[v6]:
      - Balance all calls to ckpt_hbuf_get() with matching ckpt_hbuf_put()
        (even though it's not really needed)
    Changelog[v5]:
      - Improve memory dump code (following Dave Hansen's comments)
      - Change dump format (and code) to allow chunks of <vaddrs, pages>
        instead of one long list of each
      - Fix use of follow_page() to avoid faulting in non-present pages
    Changelog[v4]:
      - Use standard list_... for ckpt_pgarr
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 1b5b1bee422af66abdcedd97dc2b4a4b8fd4e774
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:02 2009 -0400

    c/r: introduce method '->checkpoint()' in struct vm_operations_struct
    
    Changelog[v17]
      - Forward-declare 'ckpt_ctx et-al, don't use checkpoint_types.h
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 14572f89c243ba4c6194b79e1a55975b223584f4
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:02 2009 -0400

    c/r: add generic '->checkpoint()' f_op to simple devices
    
    * /dev/null
    * /dev/zero
    * /dev/random
    * /dev/urandom
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 515f0b9565b67eaa4fd9c8b8afb240486d7ca68d
Author: Dave Hansen <dave at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:36:02 2009 -0400

    c/r: add generic '->checkpoint' f_op to ext fses
    
    This marks ext[234] as being checkpointable.  There will be many
    more to do this to, but this is a start.
    
    Signed-off-by: Dave Hansen <dave at linux.vnet.ibm.com>

commit c529c519564f0d2c5fefc1325626aafccd63c5ba
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:01 2009 -0400

    c/r: restore open file descriptors
    
    For each fd read 'struct ckpt_hdr_file_desc' and lookup objref in the
    hash table; If not found in the hash table, (first occurence), read in
    'struct ckpt_hdr_file', create a new file and register in the hash.
    Otherwise attach the file pointer from the hash as an FD.
    
    Changelog[v17]:
      - Validate f_mode after restore against saved f_mode
      - Fail if f_flags have O_CREAT|O_EXCL|O_NOCTTY|O_TRUN
      - Reorder patch (move earlier in series)
      - Handle shared files_struct objects
    Changelog[v14]:
      - Introduce a per file-type restore() callback
      - Revert change to pr_debug(), back to ckpt_debug()
      - Rename:  restore_files() => restore_fd_table()
      - Rename:  ckpt_read_fd_data() => restore_file()
      - Check whether calls to ckpt_hbuf_get() fail
      - Discard field 'hh->parent'
    Changelog[v12]:
      - Replace obsolete ckpt_debug() with pr_debug()
    Changelog[v6]:
      - Balance all calls to ckpt_hbuf_get() with matching ckpt_hbuf_put()
        (even though it's not really needed)
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 5c6671b3d7f67edb58b9a6b72fc9f837ec6416af
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:01 2009 -0400

    c/r: dump open file descriptors
    
    Dump the file table with 'struct ckpt_hdr_file_table, followed by all
    open file descriptors. Because the 'struct file' corresponding to an
    fd can be shared, they are assigned an objref and registered in the
    object hash. A reference to the 'file *' is kept for as long as it
    lives in the hash (the hash is only cleaned up at the end of the
    checkpoint).
    
    Also provide generic_checkpoint_file() and generic_restore_file()
    which is good for normal files and directories. It does not support
    yet unlinked files or directories.
    
    Changelog[v17]:
      - Better file error debugging
      - Use (new) d_unlinked()
    Changelog[v16]:
      - Fix compile warning in checkpoint_bad()
    Changelog[v16]:
      - Reorder patch (move earlier in series)
      - Handle shared files_struct objects
    Changelog[v14]:
      - File objects are dumped/restored prior to the first reference
      - Introduce a per file-type restore() callback
      - Use struct file_operations->checkpoint()
      - Put code for generic file descriptors in a separate function
      - Use one CKPT_FILE_GENERIC for both regular files and dirs
      - Revert change to pr_debug(), back to ckpt_debug()
      - Use only unsigned fields in checkpoint headers
      - Rename:  ckpt_write_files() => checkpoint_fd_table()
      - Rename:  ckpt_write_fd_data() => checkpoint_file()
      - Discard field 'h->parent'
    Changelog[v12]:
      - Replace obsolete ckpt_debug() with pr_debug()
    Changelog[v11]:
      - Discard handling of opened symlinks (there is no such thing)
      - ckpt_scan_fds() retries from scratch if hits size limits
    Changelog[v9]:
      - Fix a couple of leaks in ckpt_write_files()
      - Drop useless kfree from ckpt_scan_fds()
    Changelog[v8]:
      - initialize 'coe' to workaround gcc false warning
    Changelog[v6]:
      - Balance all calls to ckpt_hbuf_get() with matching ckpt_hbuf_put()
        (even though it's not really needed)
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 032a0111680edf19eff30d931aa3056f7470d220
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:00 2009 -0400

    c/r: introduce '->checkpoint()' method in 'struct file_operations'
    
    While we assume all normal files and directories can be checkpointed,
    there are, as usual in the VFS, specialized places that will always
    need an ability to override these defaults. Although we could do this
    completely in the checkpoint code, that would bitrot quickly.
    
    This adds a new 'file_operations' function for checkpointing a file.
    It is assumed that there should be a dirt-simple way to make something
    (un)checkpointable that fits in with current code.
    
    As you can see in the ext[234] patches down the road, all that we have
    to do to make something simple be supported is add a single "generic"
    f_op entry.
    
    Also introduce vfs_fcntl() so that it can be called from restart (see
    patch adding restart of files).
    
    Changelog[v17]
      - Forward-declare 'ckpt_ctx' et-al, don't use checkpoint_types.h
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 4282801f352c242c220de30d364875a7f3868045
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:00 2009 -0400

    c/r: detect resource leaks for whole-container checkpoint
    
    Add a 'users' count to objhash items, and, for a !CHECKPOINT_SUBTREE
    checkpoint, return an error code if the actual objects' counts are
    higher, indicating leaks (references to the objects from a task not
    being checkpointed).  Of course, by this time most of the checkpoint
    image has been written out to disk, so this is purely advisory.  But
    then, it's probably naive to argue that anything more than an advisory
    'this went wrong' error code is useful.
    
    The comparison of the objhash user counts to object refcounts as a
    basis for checking for leaks comes from Alexey's OpenVZ-based c/r
    patchset.
    
    "Leak detection" occurs _before_ any real state is saved, as a
    pre-step. This prevents races due to sharing with outside world where
    the sharing ceases before the leak test takes place, thus protecting
    the checkpoint image from inconsistencies.
    
    Once leak testing concludes, checkpoint will proceed. Because objects
    are already in the objhash, checkpoint_obj() cannot distinguish
    between the first and subsequent encounters. This is solved with a
    flag (CKPT_OBJ_CHECKPOINTED) per object.
    
    Two additional checks take place during checkpoint: for objects that
    were created during, and objects destroyed, while the leak-detection
    pre-step took place.
    
    Changelog[v17]:
      - Leak detection is performed in two-steps
      - Detect reverse-leaks (objects disappearing unexpectedly)
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 8d09a44e9af97b94554cb6310701f95aa5d1f9b3
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:36:00 2009 -0400

    c/r: infrastructure for shared objects
    
    The state of shared objects is saved once. On the first encounter, the
    state is dumped and the object is assigned a unique identifier (objref)
    and also stored in a hash table (indexed by its physical kernel address).
    From then on the object will be found in the hash and only its identifier
    is saved.
    
    On restart the identifier is looked up in the hash table; if not found
    then the state is read, the object is created, and added to the hash
    table (this time indexed by its identifier). Otherwise, the object in
    the hash table is used.
    
    The hash is "one-way": objects added to it are never deleted until the
    hash it discarded. The hash is discarded at the end of checkpoint or
    restart, whether successful or not.
    
    The hash keeps a reference to every object that is added to it, matching
    the object's type, and maintains this reference during its lifetime.
    Therefore, it is always safe to use an object that is stored in the hash.
    
    Changelog[v17]:
      - Add ckpt_obj->flags with CKPT_OBJ_CHECKPOINTED flag
      - Add prototype of ckpt_obj_lookup
      - Complain on attempt to add NULL ptr to objhash
      - Prepare for 'leaks detection'
    Changelog[v16]:
      - Introduce ckpt_obj_lookup() to find an object by its ptr
    Changelog[v14]:
      - Introduce 'struct ckpt_obj_ops' to better modularize shared objs.
      - Replace long 'switch' statements with table lookups and callbacks.
      - Introduce checkpoint_obj() and restart_obj() helpers
      - Shared objects now dumped/saved right before they are referenced
      - Cleanup interface of shared objects
    Changelog[v13]:
      - Use hash_long() with 'unsigned long' cast to support 64bit archs
        (Nathan Lynch <ntl at pobox.com>)
    Changelog[v11]:
      - Doc: be explicit about grabbing a reference and object lifetime
    Changelog[v4]:
      - Fix calculation of hash table size
    Changelog[v3]:
      - Use standard hlist_... for hash table
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit a4ae2d397cd7c2a6b95fe35728a9c94baf1b5734
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:59 2009 -0400

    c/r: support for zombie processes
    
    During checkpoint, a zombie processes need only save p->comm,
    p->state, p->exit_state, and p->exit_code.
    
    During restart, zombie processes are created like all other
    processes. They validate the saved exit_code restore p->comm
    and p->exit_code. Then they call do_exit() instead of waking
    up the next task in line.
    
    But before, they place the @ctx in p->checkpoint_ctx, so that
    only at exit time they will wake up the next task in line,
    and drop the reference to the @ctx.
    
    This provides the guarantee that when the coordinator's wait
    completes, all normal tasks completed their restart, and all
    zombie tasks are already zombified (as opposed to perhap only
    becoming a zombie).
    
    Changelog[v17]:
      - Skip zombies in most of mmay_checkpoint_task()
      - Save/restore t->pdeath_signal
      - Validate ->exit_signal and ->pdeath_signal
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 4dc93d4648228feff3b792562a7d9b7dc7a2168a
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:59 2009 -0400

    c/r: introduce PF_RESTARTING, and skip notification on exit
    
    To restore zombie's we will create the a task, that, on its turn to
    run, calls do_exit(). Unlike normal tasks that exit, we need to
    prevent notification side effects that send signals to other
    processes, e.g. parent (SIGCHLD) or child tasks (per child's request).
    
    There are three main cases for such notifications:
    
    1) do_notify_parent(): parent of a process is notified about a change
     in status (e.g. become zombie, reparent, etc). If parent ignores,
     then mark child for immediate release (skip zombie).
    
    2) kill_orphan_pgrp(): a process group that becomes orphaned will
     signal stopped jobs (HUP then CONT).
    
    3) reparent_thread(): children of a process are signaled (per request)
     with p->pdeath_signal
    
    Remember that restoring signal state (for any restarting task) must
    complete _before_ it is allowed to resume execution, and not during
    the resume. Otherwise, a running task may send a signal to another
    task that hasn't restored yet, so the new signal will be lost
    soon-after.
    
    I considered two possible way to address this:
    
    1. Add another sync point to restart: all tasks will first restore
    their state without signals (all signals blocked), and zombies call
    do_exit(). A sync point then will ensure that all zombies are gone and
    their effects done. Then all tasks restore their signal state (and
    mask), and sync (new point) again. Only then they may resume
    execution.
    The main disadvantage is the added complexity and inefficiency,
    for no good reason.
    
    2. Introduce PF_RESTARTING: mark all restarting tasks with a new flag,
    and teach the above three notifications to skip sending the signal if
    theis flag is set.
    The main advantage is simplicity and completeness. Also, such a flag
    may to be useful later on. This the method implemented.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit c3ab8ec28809e265ac7faf2a1061885160d0d2ae
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:58 2009 -0400

    c/r: restart multiple processes
    
    Restarting of multiple processes expects all restarting tasks to call
    sys_restart(). Once inside the system call, each task will restart
    itself at the same order that they were saved. The internals of the
    syscall will take care of in-kernel synchronization bewteen tasks.
    
    This patch does _not_ create the task tree in the kernel. Instead it
    assumes that all tasks are created in some way and then invoke the
    restart syscall. You can use the userspace mktree.c program to do
    that.
    
    There is one special task - the coordinator - that is not part of the
    restarted hierarchy. The coordinator task allocates the restart
    context (ctx) and orchestrates the restart. Thus even if a restart
    fails after, or during the restore of the root task, the user
    perceives a clean exit and an error message.
    
    The coordinator task will:
     1) read header and tree, create @ctx (wake up restarting tasks)
     2) set the ->checkpoint_ctx field of itself and all descendants
     3) wait for all restarting tasks to reach sync point #1
     4) activate first restarting task (root task)
     5) wait for all other tasks to complete and reach sync point #3
     6) wake up everybody
    
    (Note that in step #2 the coordinator assumes that the entire task
    hierarchy exists by the time it enters sys_restart; this is arranged
    in user space by 'mktree')
    
    Task that are restarting has three sync points:
     1) wait for its ->checkpoint_ctx to be set (by the coordinator)
     2) wait for the task's turn to restore (be active)
     [...now the task restores its state...]
     3) wait for all other tasks to complete
    
    The third sync point ensures that a task may only resume execution
    after all tasks have successfully restored their state (or fail if an
    error has occured). This prevents tasks from returning to user space
    prematurely, before the entire restart completes.
    
    If a single task wishes to restart, it can set the "RESTART_TASKSELF"
    flag to restart(2) to skip the logic of the coordinator.
    
    The root-task is a child of the coordinator, identified by the @pid
    given to sys_restart() in the pid-ns of the coordinator. Restarting
    tasks that aren't the coordinator, should set the @pid argument of
    restart(2) syscall to zero.
    
    All tasks explicitly test for an error flag on the checkpoint context
    when they wakeup from sync points.  If an error occurs during the
    restart of some task, it will mark the @ctx with an error flag, and
    wakeup the other tasks.
    
    An array of pids (the one saved during the checkpoint) is used to
    synchronize the operation. The first task in the array is the init
    task (*). The restart context (@ctx) maintains a "current position" in
    the array, which indicates which task is currently active. Once the
    currently active task completes its own restart, it increments that
    position and wakes up the next task.
    
    Restart assumes that userspace provides meaningful data, otherwise
    it's garbage-in-garbage-out. In this case, the syscall may block
    indefinitely, but in TASK_INTERRUPTIBLE, so the user can ctrl-c or
    otherwise kill the stray restarting tasks.
    
    In terms of security, restart runs as the user the invokes it, so it
    will not allow a user to do more than is otherwise permitted by the
    usual system semantics and policy.
    
    Currently we ignore threads and zombies, as well as session ids.
    Add support for multiple processes
    
    (*) For containers, restart should be called inside a fresh container
    by the init task of that container. However, it is also possible to
    restart applications not necessarily inside a container, and without
    restoring the original pids of the processes (that is, provided that
    the application can tolerate such behavior). This is useful to allow
    multi-process restart of tasks not isolated inside a container, and
    also for debugging.
    
    Changelog[v17]:
      - Coordinator marks and sets descendants' ->checkpoint_ctx
      - Coordinator properly detects errors when woken up from wait
      - Fix race where root_task could kick start too early
      - Add a sync point for restarting tasks
      - Multiple fixes to restart logic
    Changelog[v14]:
      - Revert change to pr_debug(), back to ckpt_debug()
      - Discard field 'h.parent'
      - Check whether calls to ckpt_hbuf_get() fail
    Changelog[v13]:
      - Clear root_task->checkpoint_ctx regardless of error condition
      - Remove unused argument 'ctx' from do_restore_task() prototype
      - Remove unused member 'pids_err' from 'struct ckpt_ctx'
    Changelog[v12]:
      - Replace obsolete ckpt_debug() with pr_debug()
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit eed255306020b6901f8ae9b66a5674df170e67b8
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:58 2009 -0400

    c/r: checkpoint multiple processes
    
    Checkpointing of multiple processes works by recording the tasks tree
    structure below a given "root" task. The root task is expected to be a
    container init, and then an entire container is checkpointed. However,
    passing CHECKPOINT_SUBTREE to checkpoint(2) relaxes this requirement
    and allows to checkpoint a subtree of processes from the root task.
    
    For a given root task, do a DFS scan of the tasks tree and collect them
    into an array (keeping a reference to each task). Using DFS simplifies
    the recreation of tasks either in user space or kernel space. For each
    task collected, test if it can be checkpointed, and save its pid, tgid,
    and ppid.
    
    The actual work is divided into two passes: a first scan counts the
    tasks, then memory is allocated and a second scan fills the array.
    
    Whether checkpoints and restarts require CAP_SYS_ADMIN is determined
    by sysctl 'ckpt_unpriv_allowed': if 1, then regular permission checks
    are intended to prevent privilege escalation, however if 0 it prevents
    unprivileged users from exploiting any privilege escalation bugs.
    
    The logic is suitable for creation of processes during restart either
    in userspace or by the kernel.
    
    Currently we ignore threads and zombies.
    
    Changelog[v16]:
      - CHECKPOINT_SUBTREE flags allows subtree (not whole container)
      - sysctl variable 'ckpt_unpriv_allowed' controls needed privileges
    Changelog[v14]:
      - Refuse non-self checkpoint if target task isn't frozen
      - Refuse checkpoint (for now) if task is ptraced
      - Revert change to pr_debug(), back to ckpt_debug()
      - Use only unsigned fields in checkpoint headers
      - Check retval of ckpt_tree_count_tasks() in ckpt_build_tree()
      - Discard 'h.parent' field
      - Check whether calls to ckpt_hbuf_get() fail
      - Disallow threads or siblings to container init
    Changelog[v13]:
      - Release tasklist_lock in error path in ckpt_tree_count_tasks()
      - Use separate index for 'tasks_arr' and 'hh' in ckpt_write_pids()
    Changelog[v12]:
      - Replace obsolete ckpt_debug() with pr_debug()
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit d831b4a4e0459047e88e443e61a6927250f8f4bb
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:58 2009 -0400

    c/r: restart-blocks
    
    (Paraphrasing what's said this message:
    http://lists.openwall.net/linux-kernel/2007/12/05/64)
    
    Restart blocks are callbacks used cause a system call to be restarted
    with the arguments specified in the system call restart block. It is
    useful for system call that are not idempotent, i.e. the argument(s)
    might be a relative timeout, where some adjustments are required when
    restarting the system call. It relies on the system call itself to set
    up its restart point and the argument save area.  They are rare: an
    actual signal would turn that it an EINTR. The only case that should
    ever trigger this is some kernel action that interrupts the system
    call, but does not actually result in any user-visible state changes -
    like freeze and thaw.
    
    So restart blocks are about time remaining for the system call to
    sleep/wait. Generally in c/r, there are two possible time models that
    we can follow: absolute, relative. Here, I chose to save the relative
    timeout, measured from the beginning of the checkpoint. The time when
    the checkpoint (and restart) begin is also saved. This information is
    sufficient to restart in either model (absolute or negative).
    
    Which model to use should eventually be a per application choice (and
    possible configurable via cradvise() or some sort). For now, we adopt
    the relative model, namely, at restart the timeout is set relative to
    the beginning of the restart.
    
    To checkpoint, we check if a task has a valid restart block, and if so
    we save the *remaining* time that is has to wait/sleep, and the type
    of the restart block.
    
    To restart, we fill in the data required at the proper place in the
    thread information. If the system call return an error (which is
    possibly an -ERESTARTSYS eg), we not only use that error as our own
    return value, but also arrange for the task to execute the signal
    handler (by faking a signal). The handler, in turn, already has the
    code to handle these restart request gracefully.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 4deca2a77a07ed7604dd273b415c8388731061cc
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:57 2009 -0400

    c/r: export functionality used in next patch for restart-blocks
    
    To support c/r of restart-blocks (system call that need to be
    restarted because they were interrupted but there was no userspace
    visible side-effect), export restart-block callbacks for poll()
    and futex() syscalls.
    
    More details on c/r of restart-blocks and how it works in the
    following patch.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>
    Acked-by: Serge Hallyn <serue at us.ibm.com>

commit 693c63617585a0ed9126ef3bf1f41226742a5fc4
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:56 2009 -0400

    c/r: external checkpoint of a task other than ourself
    
    Now we can do "external" checkpoint, i.e. act on another task.
    
    sys_checkpoint() now looks up the target pid (in our namespace) and
    checkpoints that corresponding task. That task should be the root of
    a container, unless CHECKPOINT_SUBTREE flag is given.
    
    Set state of freezer cgroup of checkpointed task hierarchy to
    "CHECKPOINTING" during a checkpoint, to ensure that task(s) cannot be
    thawed while at it.
    
    Ensure that all tasks belong to root task's freezer cgroup (the root
    task is also tested, to detect it if changes its freezer cgroups
    before it moves to "CHECKPOINTING").
    
    sys_restart() remains the same, as the restart is always done in the
    context of the restarting task.
    
    Changelog[v17]:
      - Tighten ptrace ceckpoint for checkpoint to PTRACE_MODE_ATTACH
      - Use CHECKPOINTING state for hierarchy's freezer for checkpoint
    Changelog[v16]:
      - Use CHECKPOINT_SUBTREE to allow subtree (partial container)
    Changelog[v14]:
      - Refuse non-self checkpoint if target task isn't frozen
    Changelog[v12]:
      - Replace obsolete ckpt_debug() with pr_debug()
    Changelog[v11]:
      - Copy contents of 'init->fs->root' instead of pointing to them
    Changelog[v10]:
      - Grab vfs root of container init, rather than current process
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 1af61aaf6e3419b4464c3cbbddac77c78fb7f5e9
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:55 2009 -0400

    c/r: x86_32 support for checkpoint/restart
    
    Add logic to save and restore architecture specific state, including
    thread-specific state, CPU registers and FPU state.
    
    In addition, architecture capabilities are saved in an architecure
    specific extension of the header (ckpt_hdr_head_arch); Currently this
    includes only FPU capabilities.
    
    Currently only x86-32 is supported.
    
    Changelog[v17]:
      - Validate cpu registers and TLS descriptors on restart
      - Validate debug registers on restart
      - Export asm/checkpoint_hdr.h to userspace
    Changelog[v16]:
      - All objects are preceded by ckpt_hdr (TLS and xstate_buf)
      - Add architecture identifier to main header
    Changelog[v14]:
      - Use new interface ckpt_hdr_get/put()
      - Embed struct ckpt_hdr in struct ckpt_hdr...
      - Remove preempt_disable/enable() around init_fpu() and fix leak
      - Revert change to pr_debug(), back to ckpt_debug()
      - Move code related to task_struct to checkpoint/process.c
    Changelog[v12]:
      - A couple of missed calls to ckpt_hbuf_put()
      - Replace obsolete ckpt_debug() with pr_debug()
    Changelog[v9]:
      - Add arch-specific header that details architecture capabilities;
        split FPU restore to send capabilities only once.
      - Test for zero TLS entries in ckpt_write_thread()
      - Fix asm/checkpoint_hdr.h so it can be included from user-space
    Changelog[v7]:
      - Fix save/restore state of FPU
    Changelog[v5]:
      - Remove preempt_disable() when restoring debug registers
    Changelog[v4]:
      - Fix header structure alignment
    Changelog[v2]:
      - Pad header structures to 64 bits to ensure compatibility
      - Follow Dave Hansen's refactoring of the original post
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit e9c86651ca3fe36176c242b66e5dc5804b3a2ad7
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:53 2009 -0400

    c/r: basic infrastructure for checkpoint/restart
    
    Add those interfaces, as well as helpers needed to easily manage the
    file format. The code is roughly broken out as follows:
    
    checkpoint/sys.c - user/kernel data transfer, as well as setup of the
      c/r context (a per-checkpoint data structure for housekeeping)
    
    checkpoint/checkpoint.c - output wrappers and basic checkpoint handling
    
    checkpoint/restart.c - input wrappers and basic restart handling
    
    checkpoint/process.c - c/r of task data
    
    For now, we can only checkpoint the 'current' task ("self" checkpoint),
    and the 'pid' argument to the syscall is ignored.
    
    Patches to add the per-architecture support as well as the actual
    work to do the memory checkpoint follow in subsequent patches.
    
    Changelog[v17]:
      - Restart(2) isn't idempotent: must return -EINTR if interrupted
      - ckpt_debug does not depend on DYNAMIC_DEBUG, on by default
      - Export generic checkpoint headers to userespace
      - Fix comment for prototype of sys_restart
      - Have ckpt_debug() print global-pid and __LINE__
      - Only save and test kernel constants once (in header)
    Changelog[v16]:
      - Split ctx->flags to ->uflags (user flags) and ->kflags (kernel flags)
      - Introduce __ckpt_write_err() and ckpt_write_err() to report errors
      - Allow @ptr == NULL to write (or read) header only without payload
      - Introduce _ckpt_read_obj_type()
    Changelog[v15]:
      - Replace header buffer in ckpt_ctx (hbuf,hpos) with kmalloc/kfree()
    Changelog[v14]:
      - Cleanup interface to get/put hdr buffers
      - Merge checkpoint and restart code into a single file (per subsystem)
      - Take uts_sem around access to uts->{release,version,machine}
      - Embed ckpt_hdr in all ckpt_hdr_...., cleanup read/write helpers
      - Define sys_checkpoint(0,...) as asking for a self-checkpoint (Serge)
      - Revert use of 'pr_fmt' to avoid tainting whom includes us (Nathan Lynch)
      - Explicitly indicate length of UTS fields in header
      - Discard field 'h->parent' from ckpt_hdr
    Changelog[v12]:
      - ckpt_kwrite/ckpt_kread() again use vfs_read(), vfs_write() (safer)
      - Split ckpt_write/ckpt_read() to two parts: _ckpt_write/read() helper
      - Befriend with sparse : explicit conversion to 'void __user *'
      - Redfine 'pr_fmt' instead of using special ckpt_debug()
    Changelog[v10]:
      - add ckpt_write_buffer(), ckpt_read_buffer() and ckpt_read_buf_type()
      - force end-of-string in ckpt_read_string() (fix possible DoS)
    Changelog[v9]:
      - ckpt_kwrite/ckpt_kread() use file->f_op->write() directly
      - Drop ckpt_uwrite/ckpt_uread() since they aren't used anywhere
    Changelog[v6]:
      - Balance all calls to ckpt_hbuf_get() with matching ckpt_hbuf_put()
        (although it's not really needed)
    Changelog[v5]:
      - Rename headers files s/ckpt/checkpoint/
    Changelog[v2]:
      - Added utsname->{release,version,machine} to checkpoint header
      - Pad header structures to 64 bits to ensure compatibility
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 3568b2d7cead65ea65f4fb59c742d4418b54b096
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:53 2009 -0400

    c/r: documentation
    
    Covers application checkpoint/restart, overall design, interfaces,
    usage, shared objects, and and checkpoint image format.
    
    Changelog[v16]:
      - Update documentation
      - Unify into readme.txt and usage.txt
    Changelog[v14]:
      - Discard the 'h.parent' field
      - New image format (shared objects appear before they are referenced
        unless they are compound)
    Changelog[v8]:
      - Split into multiple files in Documentation/checkpoint/...
      - Extend documentation, fix typos and comments from feedback
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Signed-off-by: Dave Hansen <dave at linux.vnet.ibm.com>

commit ff1bcd7e8fe260a8da0a0f2da60692d5ba7130d0
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:53 2009 -0400

    c/r: create syscalls: sys_checkpoint, sys_restart
    
    Create trivial sys_checkpoint and sys_restore system calls. They will
    enable to checkpoint and restart an entire container, to and from a
    checkpoint image file descriptor.
    
    The syscalls take a pid, a file descriptor (for the image file) and
    flags as arguments. The pid identifies the top-most (root) task in the
    process tree, e.g. the container init: for sys_checkpoint the first
    argument identifies the pid of the target container/subtree; for
    sys_restart it will identify the pid of restarting root task.
    
    A checkpoint, much like a process coredump, dumps the state of multiple
    processes at once, including the state of the container. The checkpoint
    image is written to (and read from) the file descriptor directly from
    the kernel. This way the data is generated and then pushed out naturally
    as resources and tasks are scanned to save their state. This is the
    approach taken by, e.g., Zap and OpenVZ.
    
    By using a return value and not a file descriptor, we can distinguish
    between a return from checkpoint, a return from restart (in case of a
    checkpoint that includes self, i.e. a task checkpointing its own
    container, or itself), and an error condition, in a manner analogous
    to a fork() call.
    
    We don't use copy_from_user()/copy_to_user() because it requires
    holding the entire image in user space, and does not make sense for
    restart.  Also, we don't use a pipe, pseudo-fs file and the like,
    because they work by generating data on demand as the user pulls it
    (unless the entire image is buffered in the kernel) and would require
    more complex logic.  They also would significantly complicate
    checkpoint that includes self.
    
    Changelog[v17]:
      - Move checkpoint closer to namespaces (kconfig)
      - Kill "Enable" in c/r config option
    Changelog[v16]:
      - Change sys_restart() first argument to be 'pid_t pid'
    Changelog[v14]:
      - Change CONFIG_CHEKCPOINT_RESTART to CONFIG_CHECKPOINT (Ingo)
      - Remove line 'def_bool n' (default is already 'n')
      - Add CHECKPOINT_SUPPORT in Kconfig (Nathan Lynch)
    Changelog[v5]:
      - Config is 'def_bool n' by default
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Signed-off-by: Dave Hansen <dave at linux.vnet.ibm.com>

commit c14085cf849c883cb7c1f9d96112c58d851c8253
Author: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:52 2009 -0400

    pids 7/7: Define clone_with_pids syscall
    
    Container restart requires that a task have the same pid it had when it was
    checkpointed. When containers are nested the tasks within the containers
    exist in multiple pid namespaces and hence have multiple pids to specify
    during restart.
    
    clone_with_pids(), intended for use during restart, is the same as clone(),
    except that it takes a 'target_pid_set' paramter. This parameter lets caller
    choose specific pid numbers for the child process, in the process's active
    and ancestor pid namespaces. (Descendant pid namespaces in general don't
    matter since processes don't have pids in them anyway, but see comments
    in copy_target_pids() regarding CLONE_NEWPID).
    
    Unlike clone(), clone_with_pids() needs CAP_SYS_ADMIN, at least for now, to
    prevent unprivileged processes from misusing this interface.
    
    Call clone_with_pids as follows:
    
    	pid_t pids[] = { 0, 77, 99 };
    	struct target_pid_set pid_set;
    
    	pid_set.num_pids = sizeof(pids) / sizeof(int);
    	pid_set.target_pids = &pids;
    
    	syscall(__NR_clone_with_pids, flags, stack, NULL, NULL, NULL, &pid_set);
    
    If a target-pid is 0, the kernel continues to assign a pid for the process in
    that namespace. In the above example, pids[0] is 0, meaning the kernel will
    assign next available pid to the process in init_pid_ns. But kernel will assign
    pid 77 in the child pid namespace 1 and pid 99 in pid namespace 2. If either
    77 or 99 are taken, the system call fails with -EBUSY.
    
    If 'pid_set.num_pids' exceeds the current nesting level of pid namespaces,
    the system call fails with -EINVAL.
    
    Its mostly an exploratory patch seeking feedback on the interface.
    
    NOTE:
    	Compared to clone(), clone_with_pids() needs to pass in two more
    	pieces of information:
    
    		- number of pids in the set
    		- user buffer containing the list of pids.
    
    	But since clone() already takes 5 parameters, use a 'struct
    	target_pid_set'.
    
    TODO:
    	- Gently tested.
    	- May need additional sanity checks in do_fork_with_pids().
    
    Changelog[v3]:
    	- (Oren Laadan) Allow CLONE_NEWPID flag (by allocating an extra pid
    	  in the target_pids[] list and setting it 0. See copy_target_pids()).
    	- (Oren Laadan) Specified target pids should apply only to youngest
    	  pid-namespaces (see copy_target_pids())
    	- (Matt Helsley) Update patch description.
    
    Changelog[v2]:
    	- Remove unnecessary printk and add a note to callers of
    	  copy_target_pids() to free target_pids.
    	- (Serge Hallyn) Mention CAP_SYS_ADMIN restriction in patch description.
    	- (Oren Laadan) Add checks for 'num_pids < 0' (return -EINVAL) and
    	  'num_pids == 0' (fall back to normal clone()).
    	- Move arch-independent code (sanity checks and copy-in of target-pids)
    	  into kernel/fork.c and simplify sys_clone_with_pids()
    
    Changelog[v1]:
    	- Fixed some compile errors (had fixed these errors earlier in my
    	  git tree but had not refreshed patches before emailing them)
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>

commit 868d4069c7169599c318bef36a9257443aa52088
Author: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:52 2009 -0400

    pids 6/7: Define do_fork_with_pids()
    
    do_fork_with_pids() is same as do_fork(), except that it takes an
    additional, 'pid_set', parameter. This parameter, currently unused,
    specifies the set of target pids of the process in each of its pid
    namespaces.
    
    Changelog[v3]:
    	- Fix "long-line" warning from checkpatch.pl
    
    Changelog[v2]:
    	- To facilitate moving architecture-inpdendent code to kernel/fork.c
    	  pass in 'struct target_pid_set __user *' to do_fork_with_pids()
    	  rather than 'pid_t *' (next patch moves the arch-independent
    	  code to kernel/fork.c)
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Reviewed-by: Oren Laadan <orenl at cs.columbia.edu>

commit 3267ba7a50ef5b873453e6bff4ee4d214238a03b
Author: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:51 2009 -0400

    pids 5/7: Add target_pids parameter to copy_process()
    
    The new parameter will be used in a follow-on patch when clone_with_pids()
    is implemented.
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Reviewed-by: Oren Laadan <orenl at cs.columbia.edu>

commit 7b57514ef61c36f5b872077336dcc3d337ace4fc
Author: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:51 2009 -0400

    pids 4/7: Add target_pids parameter to alloc_pid()
    
    This parameter is currently NULL, but will be used in a follow-on patch.
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Reviewed-by: Oren Laadan <orenl at cs.columbia.edu>

commit 4843c25edc9d96bce557da51c35e183afeb7de69
Author: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:51 2009 -0400

    pids 3/7: Add target_pid parameter to alloc_pidmap()
    
    With support for setting a specific pid number for a process,
    alloc_pidmap() will need a paramter a 'target_pid' parameter.
    
    Changelog[v2]:
    	- (Serge Hallyn) Check for 'pid < 0' in set_pidmap().(Code
    	  actually checks for 'pid <= 0' for completeness).
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Reviewed-by: Oren Laadan <orenl at cs.columbia.edu>

commit bbcc2754b4c09b0dd256349e57cb06db1214aed2
Author: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:50 2009 -0400

    pids 2/7: Have alloc_pidmap() return actual error code
    
    alloc_pidmap() can fail either because all pid numbers are in use or
    because memory allocation failed.  With support for setting a specific
    pid number, alloc_pidmap() would also fail if either the given pid
    number is invalid or in use.
    
    Rather than have callers assume -ENOMEM, have alloc_pidmap() return
    the actual error.
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Reviewed-by: Oren Laadan <orenl at cs.columbia.edu>

commit 9627f0db68dc10668e0545a58244bdbd05c983c8
Author: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:50 2009 -0400

    pids 1/7: Factor out code to allocate pidmap page
    
    To implement support for clone_with_pids() system call we would
    need to allocate pidmap page in more than one place. Move this
    code to a new function alloc_pidmap_page().
    
    Changelog[v2]:
    	- (Matt Helsley, Dave Hansen) Have alloc_pidmap_page() return
    	  -ENOMEM on error instead of -1.
    
    Signed-off-by: Sukadev Bhattiprolu <sukadev at linux.vnet.ibm.com>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Reviewed-by: Oren Laadan <orenl at cs.columbia.edu>

commit 9cce440962eff2c197f1bc4ffadc3c1d5c389032
Author: Oren Laadan <orenl at cs.columbia.edu>
Date:   Mon Jul 6 04:35:50 2009 -0400

    c/r: make file_pos_read/write() public
    
    These two are used in the next patch when calling vfs_read/write()
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 06f36ac38c439e45fc63d5ef0bde4fbc7eea8889
Author: Dave Hansen <dave at linux.vnet.ibm.com>
Date:   Mon Jul 6 04:35:49 2009 -0400

    Namespaces submenu
    
    Let's not steal too much space in the 'General Setup' menu.
    Take a cue from the cgroups code and create a submenu.
    
    This can go upstream now.
    
    Signed-off-by: Dave Hansen <dave at linux.vnet.ibm.com>
    Acked-by: Oren Laadan <orenl at cs.columbia.edu>

commit 8cf19789c683120475dd65a0403833d3ae8f1f9e
Author: Matt Helsley <matthltc at us.ibm.com>
Date:   Mon Jul 6 04:35:49 2009 -0400

    cgroup freezer: Add CHECKPOINTING state to safeguard container checkpoint
    
    The CHECKPOINTING state prevents userspace from unfreezing tasks until
    sys_checkpoint() is finished. When doing container checkpoint userspace
    will do:
    
    	echo FROZEN > /cgroups/my_container/freezer.state
    	...
    	rc = sys_checkpoint( <pid of container root> );
    
    To ensure a consistent checkpoint image userspace should not be allowed
    to thaw the cgroup (echo THAWED > /cgroups/my_container/freezer.state)
    during checkpoint.
    
    "CHECKPOINTING" can only be set on a "FROZEN" cgroup using the checkpoint
    system call. Once in the "CHECKPOINTING" state, the cgroup may not leave until
    the checkpoint system call is finished and ready to return. Then the
    freezer state returns to "FROZEN". Writing any new state to freezer.state while
    checkpointing will return EBUSY. These semantics ensure that userspace cannot
    unfreeze the cgroup midway through the checkpoint system call.
    
    The cgroup_freezer_begin_checkpoint() and cgroup_freezer_end_checkpoint()
    make relatively few assumptions about the task that is passed in. However the
    way they are called in do_checkpoint() assumes that the root of the container
    is in the same freezer cgroup as all the other tasks that will be
    checkpointed.
    
    Notes:
            As a side-effect this prevents the multiple tasks from entering the
            CHECKPOINTING state simultaneously. All but one will get -EBUSY.
    
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>
    Signed-off-by: Matt Helsley <matthltc at us.ibm.com>
    Cc: Paul Menage <menage at google.com>
    Cc: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Cedric Le Goater <legoater at free.fr>

commit 17117ec72f4c385b8e3aa1eff0f3dd9a9b591e76
Author: Matt Helsley <matthltc at us.ibm.com>
Date:   Mon Jul 6 04:35:49 2009 -0400

    cgroup freezer: Update stale locking comments
    
    Update stale comments regarding locking order and add a little more detail
    so it's easier to follow the locking between the cgroup freezer and the
    power management freezer code.
    
    Signed-off-by: Matt Helsley <matthltc at us.ibm.com>
    Cc: Oren Laadan <orenl at cs.columbia.edu>
    Cc: Cedric Le Goater <legoater at free.fr>
    Cc: Paul Menage <menage at google.com>
    Cc: Li Zefan <lizf at cn.fujitsu.com>

commit d975794145aa173603e409b6ff7aeef5cbd859f3
Author: Matt Helsley <matthltc at us.ibm.com>
Date:   Mon Jul 6 04:35:48 2009 -0400

    cgroup freezer: Fix buggy resume test for tasks frozen with cgroup freezer
    
    When the cgroup freezer is used to freeze tasks we do not want to thaw
    those tasks during resume. Currently we test the cgroup freezer
    state of the resuming tasks to see if the cgroup is FROZEN.  If so
    then we don't thaw the task. However, the FREEZING state also indicates
    that the task should remain frozen.
    
    This also avoids a problem pointed out by Oren Ladaan: the freezer state
    transition from FREEZING to FROZEN is updated lazily when userspace reads
    or writes the freezer.state file in the cgroup filesystem. This means that
    resume will thaw tasks in cgroups which should be in the FROZEN state if
    there is no read/write of the freezer.state file to trigger this
    transition before suspend.
    
    NOTE: Another "simple" solution would be to always update the cgroup
    freezer state during resume. However it's a bad choice for several reasons:
    Updating the cgroup freezer state is somewhat expensive because it requires
    walking all the tasks in the cgroup and checking if they are each frozen.
    Worse, this could easily make resume run in N^2 time where N is the number
    of tasks in the cgroup. Finally, updating the freezer state from this code
    path requires trickier locking because of the way locks must be ordered.
    
    Instead of updating the freezer state we rely on the fact that lazy
    updates only manage the transition from FREEZING to FROZEN. We know that
    a cgroup with the FREEZING state may actually be FROZEN so test for that
    state too. This makes sense in the resume path even for partially-frozen
    cgroups -- those that really are FREEZING but not FROZEN.
    
    Reported-by: Oren Ladaan <orenl at cs.columbia.edu>
    Signed-off-by: Matt Helsley <matthltc at us.ibm.com>
    Cc: Cedric Le Goater <legoater at free.fr>
    Cc: Paul Menage <menage at google.com>
    Cc: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Rafael J. Wysocki <rjw at sisk.pl>
    Cc: Pavel Machek <pavel at suse.cz>
    Cc: linux-pm at lists.linux-foundation.org
    
    Seems like a candidate for -stable.

commit 8b52913e08e610acceb5952ae045565706d22154
Author: Serge E. Hallyn <serue at us.ibm.com>
Date:   Mon Jul 6 04:35:48 2009 -0400

    c/r: split core function out of some set*{u,g}id functions
    
    When restarting tasks, we want to be able to change xuid and
    xgid in a struct cred, and do so with security checks.  Break
    the core functionality of set{fs,res}{u,g}id into cred_setX
    which performs the access checks based on current_cred(),
    but performs the requested change on a passed-in cred.
    
    This will allow us to securely construct struct creds based
    on a checkpoint image, constrained by the caller's permissions,
    and apply them to the caller at the end of sys_restart().
    
    Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>

commit 3899850bc33fe47a69fe6dee895339ebfcab9744
Author: Serge E. Hallyn <serue at us.ibm.com>
Date:   Mon Jul 6 04:35:48 2009 -0400

    c/r: break out new_user_ns()
    
    Break out the core function which checks privilege and (if
    allowed) creates a new user namespace, with the passed-in
    creating user_struct.  Note that a user_namespace, unlike
    other namespace pointers, is not stored in the nsproxy.
    Rather it is purely a property of user_structs.
    
    This will let us keep the task restore code simpler.
    
    Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>

commit 6b27ca3e708548eb859fcbc8fdc82928e4153d89
Author: Alexey Dobriyan <adobriyan at gmail.com>
Date:   Mon Jul 6 04:35:47 2009 -0400

    x86: ptrace debugreg checks rewrite
    
    This is a mess.
    
    Pre unified-x86 code did check for breakpoint addr
    to be "< TASK_SIZE - 3 (or 7)". This was fine from security POV,
    but banned valid breakpoint usage when address is close to TASK_SIZE.
    E. g. 1-byte breakpoint at TASK_SIZE - 1 should be allowed, but it wasn't.
    
    Then came commit 84929801e14d968caeb84795bfbb88f04283fbd9
    ("[PATCH] x86_64: TASK_SIZE fixes for compatibility mode processes")
    which for some reason touched ptrace as well and made effective
    TASK_SIZE of 32-bit process depending on IA32_PAGE_OFFSET
    which is not a constant!:
    
    	#define IA32_PAGE_OFFSET ((current->personality & ADDR_LIMIT_3GB) ? 0xc0000000 : 0xFFFFe000)
    				   ^^^^^^^
    Maximum addr for breakpoint became dependent on personality of ptracer.
    
    Commit also relaxed danger zone for 32-bit processes from 8 bytes to 4
    not taking into account that 8-byte wide breakpoints are possible even
    for 32-bit processes. This was fine, however, because 64-bit kernel
    addresses are too far from 32-bit ones.
    
    Then came utrace with commit 2047b08be67b70875d8765fc81d34ce28041bec3
    ("x86: x86 ptrace getreg/putreg merge") which copy-pasted and ifdeffed 32-bit
    part of TASK_SIZE_OF() leaving 8-byte issue as-is.
    
    So, what patch fixes?
    1) Too strict logic near TASK_SIZE boundary -- as long as we don't cross
       TASK_SIZE_MAX, we're fine.
    2) Too smart logic of using breakpoints over non-existent kernel
       boundary -- we should only protect against setting up after
       TASK_SIZE_MAX, the rest is none of kernel business. This fixes
       IA32_PAGE_OFFSET beartrap as well.
    
    As a bonus, remove uberhack and big comment determining DR7 validness,
    rewrite with clear algorithm when it's obvious what's going on.
    
    Make DR validness checker suitable for C/R. On restart DR registers
    must be checked the same way they are checked on PTRACE_POKEUSR.
    
    Question 1: TIF_DEBUG can set even if none of breakpoints is turned on,
    should this be optimized?
    
    Question 2: Breakpoints are allowed to be globally enabled, is this a
    security risk?
    
    Signed-off-by: Alexey Dobriyan <adobriyan at gmail.com>

commit 7c4c09a5ea5266e3faeff7663961f46f7a607d0d
Author: Alexey Dobriyan <adobriyan at gmail.com>
Date:   Mon Jul 6 04:35:47 2009 -0400

    c/r: extend arch_setup_additional_pages()
    
    Add "start" argument, to request to map vDSO to a specific place,
    and fail the operation if not.
    
    This is useful for restart(2) to ensure that memory layout is restore
    exactly as needed.
    
    Signed-off-by: Alexey Dobriyan <adobriyan at gmail.com>
    Signed-off-by: Oren Laadan <orenl at cs.columbia.edu>

commit 8e4a718ff38d8539938ec3421935904c27e00c39
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 10:58:48 2009 -0700

    Linux 2.6.31-rc2

commit f50bf2b2f5e83b794e0bdb2f3f589f55ef0d52d0
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Fri Jul 3 15:45:56 2009 +0900

    video: sm501fb: Early initialization of mm_lock mutex.
    
    Commit 537a1bf059fa312355696fa6db80726e655e7f17 (fbdev: add mutex for
    fb_mmap locking) introduces a ->mm_lock mutex for protecting smem
    assignments. Unfortunately in the case of sm501fb these happen quite
    early in the initialization code, well before the mutex_init() that takes
    place in register_framebuffer(), leading to:
    
       Badness at kernel/mutex.c:207
    
       Pid : 1, Comm:          swapper
       CPU : 0                 Not tainted  (2.6.31-rc1-00284-g529ba0d-dirty #2273)
    
       PC is at __mutex_lock_slowpath+0x72/0x1bc
       PR is at __mutex_lock_slowpath+0x66/0x1bc
       ...
    
    matroxfb appears to have the same issue and has solved it with an early
    mutex_init(), so we do the same for sm501fb.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>
    Cc: Krzysztof Helt <krzysztof.h1 at wp.pl>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit de481ba925e880764e38b8756c93c05006892507
Merge: dd0888c264c0d5feb5d86eb69c1fdbcdb42566af 64daa4435a40aa1b7d0ece598ae783b89dda13ee
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 10:35:12 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6: (27 commits)
      parisc: use generic atomic64 on 32-bit
      parisc: superio: fix build breakage
      parisc: Fix PCI resource allocation on non-PAT SBA machines
      parisc: perf: wire up sys_perf_counter_open
      parisc: add task_pt_regs macro
      parisc: wire sys_perf_counter_open to sys_ni_syscall
      parisc: inventory.c, fix bloated stack frame
      parisc: processor.c, fix bloated stack frame
      parisc: fix compile warning in mm/init.c
      parisc: remove dead code from sys_parisc32.c
      parisc: wire up rt_tgsigqueueinfo
      parisc: ensure broadcast tlb purge runs single threaded
      parisc: fix "delay!" timer handling
      parisc: fix mismatched parenthesis in memcpy.c
      parisc: Fix gcc 4.4 warning in lba_pci.c
      parisc: add parameter to read_cr16()
      parisc: decode_exc.c should include kernel.h
      parisc: remove obsolete hw_interrupt_type
      parisc: fix irq compile bugs in arch/parisc/kernel/irq.c
      parisc: advertise PCI devs after "assign_resources"
      ...
    
    Manually fixed up trivial conflicts in tools/perf/perf.h due to addition
    of SH vs HPPA perf-counter support.

commit dd0888c264c0d5feb5d86eb69c1fdbcdb42566af
Merge: 14c1b7c212de7c7c9231d5a676eb96f28c088338 1c90ea2c7eb3b24a07a2f82164323588fb029bc1
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 10:31:26 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6:
      mfd: fix pcap adc locking
      mfd: sm501, fix lock imbalance

commit 14c1b7c212de7c7c9231d5a676eb96f28c088338
Merge: 4806626782b4408e468ef686229556899be345c8 033a666ccb842ab4134fcd0c861d5ba9f5d6bf3a
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 10:11:38 2009 -0700

    Merge branch 'for-2.6.31' of git://linux-nfs.org/~bfields/linux
    
    * 'for-2.6.31' of git://linux-nfs.org/~bfields/linux:
      NFSD: Don't hold unrefcounted creds over call to nfsd_setuser()

commit 4806626782b4408e468ef686229556899be345c8
Merge: f1a745710f001e8c2eec6d525396083e1f4c389a baf922780251d12bc1c24c83df60c4c278abb745
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 09:47:01 2009 -0700

    Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
    
    * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
      MIPS: Fix CONFIG_FLATMEM version of pfn_valid()
      MIPS: Reorganize Cavium OCTEON PCI support.
      Update Yoichi Yuasa's e-mail address
      MIPS: Allow suspend and hibernation again on uniprocessor kernels.
      MIPS: 64-bit: Fix o32 core dump
      MIPS: BC47xx: Fix SSB irq setup
      MIPS: CMP: Update sync-r4k for current kernel
      MIPS: CMP: Move gcmp_probe to before the SMP ops
      MIPS: CMP: activate CMP support
      MIPS: CMP: Extend IPI handling to CPU number
      MIPS: CMP: Extend the GIC IPI interrupts beyond 32
      MIPS: Define __arch_swab64 for all mips r2 cpus
      MIPS: Update VR41xx GPIO driver to use gpiolib
      MIPS: Hookup new syscalls sys_rt_tgsigqueueinfo and sys_perf_counter_open.
      MIPS: Malta: Remove unnecessary function prototypes
      MIPS: MT: Remove unnecessary semicolons
      MIPS: Add support for Texas Instruments AR7 System-on-a-Chip

commit f1a745710f001e8c2eec6d525396083e1f4c389a
Merge: 29f31773e07772e73e3177a4af147244cd080554 7ce1695c40e765e99cd790f55fc68037bc05d080
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 09:46:13 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
      sound: do not set DEVNAME for OSS devices
      ALSA: hda - Add sanity check in PCM open callback
      ALSA: hda - Call snd_pcm_lib_hw_rates() again after codec open callback
      ALSA: hda - Avoid invalid formats and rates with shared SPDIF
      ALSA: hda - Improve ASUS eeePC 1000 mixer
      ALSA: hda - Add GPIO1 control at muting with HP laptops
      ALSA: usx2y - reparent sound device
      ALSA: snd_usb_caiaq: reparent sound device
      sound: virtuoso: fix Xonar D1/DX silence after resume
      ASoC: Only disable pxa2xx-i2s clocks if we enabled them
      ALSA: hda - Add quirk for HP 6930p
      ALSA: hda - Add missing static to patch_ca0110()
      ASoC: OMAP: fix OMAP1510 broken PCM pointer callback
      ASoC: remove BROKEN from Efika and pcm030 fabric drivers
      ASoC: Fix typo in MPC5200 PSC AC97 driver Kconfig

commit 29f31773e07772e73e3177a4af147244cd080554
Merge: 59107c6525c0d325649eae807905d34772d5a664 112942353992d95099fb5b71c679ff1046fccfcf
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 09:46:01 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
      kbuild: finally remove the obsolete variable $TOPDIR
      gitignore: ignore scripts/ihex2fw
      Kbuild: Disable the -Wformat-security gcc flag
      gitignore: ignore gcov output files
      kbuild: deb-pkg ship changelog
      Add new __init_task_data macro to be used in arch init_task.c files.
      asm-generic/vmlinux.lds.h: shuffle INIT_TASK* macro names in vmlinux.lds.h
      Add new macros for page-aligned data and bss sections.
      asm-generic/vmlinux.lds.h: Fix up RW_DATA_SECTION definition.

commit 59107c6525c0d325649eae807905d34772d5a664
Merge: 746a99a5af60ee676afa2ba469ccd1373493c7e7 ab0fd1debe730ec9998678a0c53caefbd121ed10
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sat Jul 4 09:45:31 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
    
    * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
      block: don't merge requests of different failfast settings
      cciss: Ignore stale commands after reboot

commit 7ce1695c40e765e99cd790f55fc68037bc05d080
Merge: 854ace9c40d2b121191e1644aa4b0b68c4a226d3 954a973cab37ad5df3f87f08964166abd956cc17
Author: Takashi Iwai <tiwai at suse.de>
Date:   Fri Jul 3 23:50:47 2009 +0200

    Merge branch 'fix/soundcore' into for-linus
    
    * fix/soundcore:
      sound: do not set DEVNAME for OSS devices

commit 854ace9c40d2b121191e1644aa4b0b68c4a226d3
Merge: dbe45d0ce394732cc06187e929697fc0fb16aa53 c470331e69bd54d11a9ea3c27a0e4ad783d02d6b
Author: Takashi Iwai <tiwai at suse.de>
Date:   Fri Jul 3 23:50:45 2009 +0200

    Merge branch 'fix/hda' into for-linus
    
    * fix/hda:
      ALSA: hda - Add sanity check in PCM open callback
      ALSA: hda - Call snd_pcm_lib_hw_rates() again after codec open callback
      ALSA: hda - Avoid invalid formats and rates with shared SPDIF
      ALSA: hda - Improve ASUS eeePC 1000 mixer
      ALSA: hda - Add GPIO1 control at muting with HP laptops

commit 954a973cab37ad5df3f87f08964166abd956cc17
Author: Kay Sievers <kay.sievers at suse.de>
Date:   Fri Jul 3 20:56:05 2009 +0200

    sound: do not set DEVNAME for OSS devices
    
    Signed-off-by: Kay Sievers <kay.sievers at vrfy.org>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit c470331e69bd54d11a9ea3c27a0e4ad783d02d6b
Author: Takashi Iwai <tiwai at suse.de>
Date:   Fri Jul 3 23:10:23 2009 +0200

    ALSA: hda - Add sanity check in PCM open callback
    
    Add some sanity checks of struct snd_pcm_hardware fields in the PCM
    open callback of hda driver.  This makes a bit easier to debug any PCM
    setup errors in the codec side.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 70d321e6380f128096429d6e5b678f94ab0cef5d
Author: Takashi Iwai <tiwai at suse.de>
Date:   Fri Jul 3 23:06:45 2009 +0200

    ALSA: hda - Call snd_pcm_lib_hw_rates() again after codec open callback
    
    The PCM rates bit field may have been changed by the codec open callback.
    In that case, we need to reset rate_min and rate_max.  So, simply call
    snd_pcm_lib_hw_rates() again after the codec open callback.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 022b466fc353d3dc7a152451144be656248666ce
Author: Takashi Iwai <tiwai at suse.de>
Date:   Fri Jul 3 23:03:30 2009 +0200

    ALSA: hda - Avoid invalid formats and rates with shared SPDIF
    
    Check whether formats and rates don't result in zero due to the
    restriction of SPDIF sharing.  If any of them can be zero, disable
    the SPDIF sharing mode instead.  Otherwise it will lead to a PCM
    configuration error.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit ab0fd1debe730ec9998678a0c53caefbd121ed10
Author: Tejun Heo <tj at kernel.org>
Date:   Fri Jul 3 12:56:18 2009 +0200

    block: don't merge requests of different failfast settings
    
    Block layer used to merge requests and bios with different failfast
    settings.  This caused regular IOs to fail prematurely when they were
    merged into failfast requests for readahead.
    
    Niel Lambrechts could trigger the problem semi-reliably on ext4 when
    resuming from STR.  ext4 uses readahead when reading inodes and
    combined with the deterministic extra SATA PHY exception cycle during
    resume on the specific configuration, non-readahead inode read would
    fail causing ext4 errors.  Please read the following thread for
    details.
    
      http://lkml.org/lkml/2009/5/23/21
    
    This patch makes block layer reject merging if the failfast settings
    don't match.  This is correct but likely to lower IO performance by
    preventing regular IOs from mingling into surrounding readahead
    requests.  Changes to allow such mixed merges and handle errors
    correctly will be added later.
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Reported-by: Niel Lambrechts <niel.lambrechts at gmail.com>
    Cc: Theodore Tso <tytso at mit.edu>
    Signed-off-by: Jens Axboe <axboe at carl.(none)>

commit b59e64d0ddb756af57ea032383bfd393a286a8e8
Author: Hannes Reinecke <hare at suse.de>
Date:   Thu Jul 2 22:02:06 2009 +0200

    cciss: Ignore stale commands after reboot
    
    When doing an unexpected shutdown like kexec the cciss
    firmware might still have some commands in flight, which
    it is trying to complete.
    The driver is doing it's best on resetting the HBA,
    but sadly there's a firmware issue causing the firmware
    _not_ to abort or drop old commands.
    So the firmware will send us commands which we haven't
    accounted for, causing the driver to panic.
    
    With this patch we're just ignoring these commands as
    there is nothing we could be doing with them anyway.
    
    Signed-off-by: Hannes Reinecke <hare at suse.de>
    Acked-by: Mike Miller <mike.miller at hp.com>
    Signed-off-by: Jens Axboe <axboe at carl.(none)>

commit baf922780251d12bc1c24c83df60c4c278abb745
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Fri Jul 3 07:11:15 2009 +0100

    MIPS: Fix CONFIG_FLATMEM version of pfn_valid()
    
    For systems which do not define PHYS_OFFSET as 0 pfn_valid() may falsely
    have returned 0 on most configurations.  Bug introduced by commit
    752fbeb2e3555c0d236e992f1195fd7ce30e728d (linux-mips.org) rsp.
    6f284a2ce7b8bc49cb8455b1763357897a899abb (kernel.org) titled "[MIPS]
    FLATMEM: introduce PHYS_OFFSET."
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 01a6221a6a51ec47b9ae3ed42c396f98dd488c7e
Author: David Daney <ddaney at caviumnetworks.com>
Date:   Mon Jun 29 17:18:51 2009 -0700

    MIPS: Reorganize Cavium OCTEON PCI support.
    
    Move the cavium PCI files to the arch/mips/pci directory.  Also cleanup
    comment formatting and code layout.  Code from pci-common.c, was moved
    into other files.
    
    Signed-off-by: David Daney <ddaney at caviumnetworks.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit ada8e9514b5880f81cdbbd212d121380ceef7acc
Author: Yoichi Yuasa <yuasa at linux-mips.org>
Date:   Fri Jul 3 00:39:38 2009 +0900

    Update Yoichi Yuasa's e-mail address
    
    Signed-off-by: Yoichi Yuasa <yuasa at linux-mips.org>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 3f5b3e17f791ba27f91fc4fdc514e7704d4d6273
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Thu Jul 2 11:48:07 2009 +0100

    MIPS: Allow suspend and hibernation again on uniprocessor kernels.
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>
    Acked-by: Pavel Machek <pavel at ucw.cz>

commit cad9bc69048b073023366ebb0878c1dd64a2c4d9
Author: Yong Zhang <yong.zhang at windriver.com>
Date:   Wed Jul 1 09:35:39 2009 +0800

    MIPS: 64-bit: Fix o32 core dump
    
    If an o32 process generates a core dump on a 64 bit kernel, the core file
    will not be correctly recognized. This is because ELF_CORE_COPY_REGS and
    ELF_CORE_COPY_TASK_REGS are not correctly defined for o32 and will use
    the default register set which would be CONFIG_64BIT in asm/elf.h.
    
    So we'll switch to use the right register defines in this situation by
    checking for WANT_COMPAT_REG_H and use the right defines of
    ELF_CORE_COPY_REGS and ELF_CORE_COPY_TASK_REGS.
    
    [Ralf: made ELF_CORE_COPY_TASK_REGS() bullet-proof against funny arguments.]
    
    Signed-off-by: Yong Zhang <yong.zhang at windriver.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit ea4bbfd0048c53c24f72ef668b39f1247bc243c0
Author: matthieu castet <castet.matthieu at free.fr>
Date:   Tue Jun 30 23:04:55 2009 +0200

    MIPS: BC47xx: Fix SSB irq setup
    
    The current ssb irq setup in ssb_mipscore_init has the problem that it
    configures some device on some irq without checking that the irq is not
    taken by an other device.
    
    For example in my case PCI host is on irq 0 and IPSEC on irq 3.
    The current code:
      - store in dev->irq that IPSEC irq is 3 + 2
      - do a set_irq 0->3 on PCI host
    
    But now IPSEC irq is not routed anymore to the mips code and dev->irq is
    wrong.  This causes a problem described in [1].
    
    This patch tries to solve the problem by making set_irq configure the
    device we want to take the irq on the shared irq0. The previous example
    becomes:
      - store in dev->irq that IPSEC irq is 3 + 2
      - do a set_irq 0->3 on PCI host:
      - irq 3 is already taken by IPSEC. do a set_irq 3->0 on IPSEC
    
    I also added some code to print the irq configuration after irq setup to
    allow easier debugging. And I add extra checking in ssb_mips_irq to report
    device without irq or device with not routed irq.
    
    [1] http://www.danm.de/files/src/bcm5365p/REPORTED_DEVICES
    
    Signed-off-by: Matthieu CASTET <castet.matthieu at free.fr>
    Acked-by : Michael Buesch <mb at bu3sch.de>
    Tested-by: Florian Fainelli <florian at openwrt.org>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit eb9b5141a9815ef898ef6b6441f733e81c272600
Author: Tim Anderson <tanderson at mvista.com>
Date:   Wed Jun 17 16:40:34 2009 -0700

    MIPS: CMP: Update sync-r4k for current kernel
    
    This revises the sync-4k so it will boot and operate since the removal of
    expirelo from the timer code.
    
    Signed-off-by: Tim Anderson <tanderson at mvista.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 47b178bb69ea4d0043f2df509c714bc5b287f375
Author: Tim Anderson <tanderson at mvista.com>
Date:   Wed Jun 17 16:25:18 2009 -0700

    MIPS: CMP: Move gcmp_probe to before the SMP ops
    
    This is to move the gcmp_probe call to before the use of and selection of
    the smp_ops functions. This allows malta with 1004K to work.
    
    Signed-off-by: Tim Anderson <tanderson at mvista.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 0365070f05f12f1648b4adf22cfb52ec7a8a371c
Author: Tim Anderson <tanderson at mvista.com>
Date:   Wed Jun 17 16:22:53 2009 -0700

    MIPS: CMP: activate CMP support
    
    Most of the CMP support was added before, this mostly correct compile
    problems but adds a platform specific translation for the interrupt number
    based on cpu number.
    
    Signed-off-by: Tim Anderson <tanderson at mvista.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit a214cef9a5d06894785dca1f967c9c324cc84c17
Author: Tim Anderson <tanderson at mvista.com>
Date:   Wed Jun 17 16:22:25 2009 -0700

    MIPS: CMP: Extend IPI handling to CPU number
    
    This takes the current IPI interrupt assignment from the fix number of 4
    to the number of CPUs defined in the system.
    
    Signed-off-by: Tim Anderson <tanderson at mvista.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 9306c8def6abc2dbde4ac75eb6c631606b8fc1dd
Author: Tim Anderson <tanderson at mvista.com>
Date:   Wed Jun 17 16:21:19 2009 -0700

    MIPS: CMP: Extend the GIC IPI interrupts beyond 32
    
    This patch extends the GIC interrupt handling beyond the current 32 bit
    range as well as extending the number of interrupts based on the number
    of CPUs.
    
    Signed-off-by: Tim Anderson <tanderson at mvista.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit b53d4d1f8d522342e66f79b8b49a19835071fed4
Author: David Daney <ddaney at caviumnetworks.com>
Date:   Mon Jun 29 09:54:15 2009 -0700

    MIPS: Define __arch_swab64 for all mips r2 cpus
    
    Some CPUs implement mipsr2, but because they are a super-set of mips64r2 do
    not define CONFIG_CPU_MIPS64_R2.  Cavium OCTEON falls into this category.
    We would still like to use the optimized implementation, so since we have
    already checked for CONFIG_CPU_MIPSR2, checking for CONFIG_64BIT instead of
    CONFIG_CPU_MIPS64_R2 is sufficient.
    
    Signed-off-by: David Daney <ddaney at caviumnetworks.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 27fdd325dace4a1ebfa10e93ba6f3d25f25df674
Author: Yoichi Yuasa <yyuasa at linux.com>
Date:   Mon Jun 29 11:11:05 2009 +0900

    MIPS: Update VR41xx GPIO driver to use gpiolib
    
    Signed-off-by: Yoichi Yuasa <yyuasa at linux.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 69f16c9a8630edc64cb1d6f1bfca4ee7bc16279f
Author: David Daney <ddaney at caviumnetworks.com>
Date:   Fri Jun 26 09:53:57 2009 -0700

    MIPS: Hookup new syscalls sys_rt_tgsigqueueinfo and sys_perf_counter_open.
    
    [Ralf: I fixed up the numbering in the comment in scall64-n32.S.]
    
    Signed-off-by: David Daney <ddaney at caviumnetworks.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit d7e014db374d987c6bcff0b9abab2c6796f8e793
Author: Dmitri Vorobiev <dmitri.vorobiev at movial.com>
Date:   Fri Jun 26 19:59:25 2009 +0300

    MIPS: Malta: Remove unnecessary function prototypes
    
    Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev at movial.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 52a7a27cd8f6c57817da99fef019e37b9c303c4e
Author: Joe Perches <joe at perches.com>
Date:   Sun Jun 28 09:26:09 2009 -0700

    MIPS: MT: Remove unnecessary semicolons
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 7ca5dc145bc7daddd8aed8bbda46b74af9cebefc
Author: Florian Fainelli <florian at openwrt.org>
Date:   Wed Jun 24 11:12:57 2009 +0200

    MIPS: Add support for Texas Instruments AR7 System-on-a-Chip
    
    This patch adds support for the Texas Instruments AR7 System-on-a-Chip.
    It supports the TNETD7100, 7200 and 7300 versions of the SoC.
    
    Signed-off-by: Matteo Croce <matteo at openwrt.org>
    Signed-off-by: Felix Fietkau <nbd at openwrt.org>
    Signed-off-by: Eugene Konev <ejka at openwrt.org>
    Signed-off-by: Nicolas Thill <nico at openwrt.org>
    Signed-off-by: Florian Fainelli <florian at openwrt.org>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 033a666ccb842ab4134fcd0c861d5ba9f5d6bf3a
Author: David Howells <dhowells at redhat.com>
Date:   Thu Jul 2 14:35:32 2009 +0100

    NFSD: Don't hold unrefcounted creds over call to nfsd_setuser()
    
    nfsd_open() gets an unrefcounted pointer to the current process's effective
    credentials at the top of the function, then calls nfsd_setuser() via
    fh_verify() - which may replace and destroy the current process's effective
    credentials - and then passes the unrefcounted pointer to dentry_open() - but
    the credentials may have been destroyed by this point.
    
    Instead, the value from current_cred() should be passed directly to
    dentry_open() as one of its arguments, rather than being cached in a variable.
    
    Possibly fh_verify() should return the creds to use.
    
    This is a regression introduced by
    745ca2475a6ac596e3d8d37c2759c0fbe2586227 "CRED: Pass credentials through
    dentry_open()".
    
    Signed-off-by: David Howells <dhowells at redhat.com>
    Tested-and-Verified-By: Steve Dickson <steved at redhat.com>
    Cc: stable at kernel.org
    Signed-off-by: J. Bruce Fields <bfields at citi.umich.edu>

commit aa202455eec51699e44f658530728162cefa1307
Author: Takashi Iwai <tiwai at suse.de>
Date:   Fri Jul 3 15:00:54 2009 +0200

    ALSA: hda - Improve ASUS eeePC 1000 mixer
    
    The mixer elements created for ASUS eeePC 1000 with ALC269 aren't
    standard but strange words like "LineOut".  Rename the element names
    to follow the standard one like "Headphone" and "Speaker".
    Also, split the volumes to each so that the virtual master can control
    them.
    
    The alc269_fujitsu_mixer is removed because it's now identical with
    the new eeepc mixer.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 099db17e66294b02814dee01c81d9abbbeece93e
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jul 2 16:10:23 2009 +0200

    ALSA: hda - Add GPIO1 control at muting with HP laptops
    
    HP laptops with AD1984A codecs (at least mobile models) need to set
    GPIO1 appropriately to indicate the mute state.  The BIOS checks this
    bit to judge whether the mute on or off is sent via F8 key.
    Without changing this bit, the BIOS can be confused and may toggle
    the mute wrongly.
    
    Reference: Novell bnc#515266
    	https://bugzilla.novell.com/show_bug.cgi?id=515266
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 1c90ea2c7eb3b24a07a2f82164323588fb029bc1
Author: Daniel Ribeiro <drwyrm at gmail.com>
Date:   Tue Jun 23 12:30:58 2009 -0300

    mfd: fix pcap adc locking
    
    Release the lock on error.
    
    Signed-off-by: Daniel Ribeiro <drwyrm at gmail.com>
    Signed-off-by: Samuel Ortiz <sameo at linux.intel.com>

commit 992bb253cd6f08129edcb42b90e6c388ebf605f8
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Mon Jun 22 00:00:02 2009 +0200

    mfd: sm501, fix lock imbalance
    
    Add omitted unlock in sm501_unit_power.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Samuel Ortiz <sameo at linux.intel.com>

commit 64daa4435a40aa1b7d0ece598ae783b89dda13ee
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Thu Jul 2 13:10:29 2009 -0400

    parisc: use generic atomic64 on 32-bit
    
    Somewhat redundant since our atomic_t uses hashed-locks on 32-bit
    anyway... Maybe we can clean those up to be generic too someday.
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 0c5cb79198d80eaea273f3e91cb418d559f13462
Author: Alexander Beregalov <a.beregalov at gmail.com>
Date:   Thu Apr 16 14:45:59 2009 +0000

    parisc: superio: fix build breakage
    
    Usage of parport_pc_probe_port was changed in 28783eb52
    (parport: Fix various uses of parport_pc).
    
    It introduced this build error:
    drivers/parisc/superio.c: In function 'superio_parport_init':
    drivers/parisc/superio.c:437: error: too few arguments to function
    				'parport_pc_probe_port'
    
    Fix it.
    
    Signed-off-by: Alexander Beregalov <a.beregalov at gmail.com>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit ca0844e347cf0fc9719c825ea1959501117b7f89
Author: Matthew Wilcox <matthew at wil.cx>
Date:   Fri Jun 26 17:44:18 2009 +0000

    parisc: Fix PCI resource allocation on non-PAT SBA machines
    
    We weren't marking the resources as memory resources, so they weren't
    being found by pci_claim_resource().
    
    Signed-off-by: Matthew Wilcox <willy at linux.intel.com>
    Reviewed-by: Grant Grundler <grundler at parisc-linux.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 2d4618dce6a318ff4ec78dfe492cc3793015d540
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Tue Jun 23 21:38:49 2009 -0400

    parisc: perf: wire up sys_perf_counter_open
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit abf1e11a0dcf5514139cb76ed8eb050107653abd
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Tue Jun 23 21:32:18 2009 -0400

    parisc: add task_pt_regs macro
    
    needed for perf_counters.
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 538e23615fe78b6da151ef136e3f7c6ad1fda2c1
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Tue Jun 23 20:22:06 2009 -0400

    parisc: wire sys_perf_counter_open to sys_ni_syscall
    
    Reserve a syscall slot for sys_perf_counter_open.
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 0d56d1aa0e756f077b700420c54e1a52140e73b4
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Tue Jun 23 13:11:22 2009 -0400

    parisc: inventory.c, fix bloated stack frame
    
    The pa_pdc_cell struct can be kmalloc'd, so do that
    instead.
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 64a0cdb026666cd9911fa045b863fb1f0f255dd8
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Tue Jun 23 13:10:03 2009 -0400

    parisc: processor.c, fix bloated stack frame
    
    The pa_pdc_cell struct can be kmalloc'd, so do that instead.
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 20dbc9f724e02c26e30d89cf50e7ce259ab46da4
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Tue Jun 23 11:51:43 2009 -0400

    parisc: fix compile warning in mm/init.c
    
    arch/parisc/mm/init.c: In function 'free_initmem':
    381: warning: passing argument 1 of 'memset' makes pointer from integer without a cast
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit c3301ab4fb64cf84321d35a8e94f68c94c816dc1
Author: Christoph Hellwig <hch at lst.de>
Date:   Tue Jun 23 11:47:07 2009 -0400

    parisc: remove dead code from sys_parisc32.c
    
    Unless I'm totally missing something get_fd_set32/set_fd_set32 are
    completely unused.
    
    Signed-off-by: Christoph Hellwig <hch at lst.de>
    Acked-by: Grant Grundler <grundler at parisc-linux.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 4435607e986c792a8753f8850b570fdd80b21b10
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Tue Jun 23 11:40:37 2009 -0400

    parisc: wire up rt_tgsigqueueinfo
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit e82a3b75127188f20c7780bec580e148beb29da7
Author: Helge Deller <deller at gmx.de>
Date:   Tue Jun 16 20:51:48 2009 +0000

    parisc: ensure broadcast tlb purge runs single threaded
    
    The TLB flushing functions on hppa, which causes PxTLB broadcasts on the system
    bus, needs to be protected by irq-safe spinlocks to avoid irq handlers to deadlock
    the kernel. The deadlocks only happened during I/O intensive loads and triggered
    pretty seldom, which is why this bug went so long unnoticed.
    
    Signed-off-by: Helge Deller <deller at gmx.de>
    [edited to use spin_lock_irqsave on UP as well since we'd been locking there
     all this time anyway, --kyle]
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 84be31be3727d11b2a91781306b642e801c5a379
Author: Grant Grundler <grundler at parisc-linux.org>
Date:   Mon Jun 1 00:20:23 2009 +0000

    parisc: fix "delay!" timer handling
    
    Rewrote timer_interrupt() to properly handle the "delayed!" case.
    
    If we used floating point math to compute the number of ticks that had
    elapsed since the last timer interrupt, it could take up to 12K cycles
    (emperical!) to handle the interrupt. Existing code assumed it would
    never take more than 8k cycles. We end up programming Interval Timer
    to a value less than "current" cycle counter.  Thus have to wait until
    Interval Timer "wrapped" and would then get the "delayed!" printk that
    I moved below.
    
    Since we don't really know what the upper limit is, I prefer to read
    CR16 again after we've programmed it to make sure we won't have to
    wait for CR16 to wrap.
    
    Further, the printk was between reading CR16 (cycle couner) and writing CR16
    (the interval timer). This would cause us to continue to set the interval
    timer to a value that was "behind" the cycle counter. Rinse and repeat.
    So no printk's between reading CR16 and setting next interval timer.
    
    Tested on A500 (550 Mhz PA8600).
    
    Signed-off-by: Grant Grundler <grundler at parisc-linux.org>
    Tested-by: Kyle McMartin <kyle at mcmartin.ca>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>
    
    ----
    Kyle, Helge, and other parisc's,
    Please test on 32-bit before committing.
    I think I have it right but recognize I might not.
    
    TODO: I wanted to use "do_div()" in order to get both remainder
    and value back with one division op. That should help with the
    latency alot but can be applied seperately from this patch.
    
    thanks,
    grant

commit 87451d850c895470a122308086069b7c326c914b
Author: Randolph Chung <randolph at tausq.org>
Date:   Tue Jun 23 14:53:26 2009 +0000

    parisc: fix mismatched parenthesis in memcpy.c
    
    >>>> I think this is what was intended? Note that this patch may affect
    >>>> profiling.
    >>> it really should be
    >>>
    >>> -    if (likely(t1 & (sizeof(unsigned int)-1)) == 0) {
    >>> +    if (likely((t1 & (sizeof(unsigned int)-1)) == 0)) {
    >>>
    >>> randolph
    
    Reported-by: Roel Kluin <roel.kluin at gmail.com>
    Signed-off-by: Randolph Chung <tausq at parisc-linux.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit e957f608f321a97a60d065bccd01949590eef52e
Author: Grant Grundler <grundler at parisc-linux.org>
Date:   Tue Jun 23 11:03:11 2009 -0400

    parisc: Fix gcc 4.4 warning in lba_pci.c
    
    gcc 4.4 warns about:
    drivers/parisc/lba_pci.c: In function 'lba_pat_resources':
    drivers/parisc/lba_pci.c:1099: warning: the frame size of 8280 bytes is larger than 4096 bytes
    
    The problem is we declare two large structures on the stack. They don't need
    to be on the stack since they are only used during LBA initialization (which
    is serialized). Moving to be "static".
    
    Signed-off-by: Grant Grundler <grundler at parisc-linux.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit ebc30a0f67a4d6a9470556f4311478b3b04c2b1f
Author: Coly Li <coly.li at suse.de>
Date:   Thu Apr 30 22:43:46 2009 +0000

    parisc: add parameter to read_cr16()
    
    This patch modifies parameter of au1x_counter1_read() from 'void' to 'struct
    clocksource *cs', which fixes compile warning for incompatible parameter type.
    
    Signed-off-by: Coly Li <coly.li at suse.de>
    Signed-off-by: Helge Deller <deller at gmx.de>
    Cc: Ingo Molnar <mingo at elte.hu>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit e9b2601073aa57ffde7259afbe86f405060058e3
Author: Alexander Beregalov <a.beregalov at gmail.com>
Date:   Mon Apr 6 09:29:58 2009 +0000

    parisc: decode_exc.c should include kernel.h
    
    Fix this build error:
    arch/parisc/math-emu/decode_exc.c:351: undefined reference to `printk'
    
    Signed-off-by: Alexander Beregalov <a.beregalov at gmail.com>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit dfe07565021959f0f646e9e775810c1bfbe0f6d6
Author: Thomas Gleixner <tglx at linutronix.de>
Date:   Wed Jun 10 19:56:04 2009 +0000

    parisc: remove obsolete hw_interrupt_type
    
    The defines and typedefs (hw_interrupt_type, no_irq_type, irq_desc_t) have
    been kept around for migration reasons.  After more than two years it's
    time to remove them finally.
    
    This patch cleans up one of the remaining users.  When all such patches
    hit mainline we can remove the defines and typedefs finally.
    
    Impact: cleanup
    
    Convert the last remaining users to struct irq_chip and remove the
    define.
    
    Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 47b4150baa003fb83b93365f3eadd4c373e4fa6c
Author: Helge Deller <deller at gmx.de>
Date:   Sat Jun 6 21:54:28 2009 +0000

    parisc: fix irq compile bugs in arch/parisc/kernel/irq.c
    
    Fix miscompilation in arch/parisc/kernel/irq.c:
    123: warning: passing arg 1 of `cpumask_setall' from incompatible pointer type
    141: warning: passing arg 1 of `cpumask_copy' from incompatible pointer type
    300: warning: passing arg 1 of `cpumask_copy' from incompatible pointer type
    357: warning: passing arg 2 of `cpumask_copy' from incompatible pointer type
    
    Signed-off-by: Helge Deller <deller at gmx.de>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit fed99b1e86f5ff4f1b41e37264bb869da67d3174
Author: Grant Grundler <grundler at parisc-linux.org>
Date:   Mon Apr 20 04:28:22 2009 +0000

    parisc: advertise PCI devs after "assign_resources"
    
    Alex Chiang asked me why PARISC was calling pci_bus_add_devices()
    and pci_bus_assign_resources() in the opposite order from everyone else.
    No reason and I couldn't see any data dependency.
    Patch below applies cleanly to 2.6.30-rc2.
    
    Later, I suspected the code worked only because no drivers would be
    loaded/ready until much later in the system initialization sequence.
    
    Tested "LBA" code on J6000 (32-bit) and A500 (64-bit SMP) with 2.6.30-rc2.
    Not tested with any Dino controllers.
    Not tested with PCI-PCI Bridge (TBD).
    
    Reported-by: Alex Chiang <achiang at hp.com>
    Signed-off-by: Grant Grundler <grundler at parisc-linux.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 7d17e2763129ea307702fcdc91f6e9d114b65c2d
Author: Helge Deller <deller at gmx.de>
Date:   Thu Apr 30 21:39:45 2009 +0000

    parisc: fix ldcw inline assembler
    
    There are two reasons to expose the memory *a in the asm:
    
    1) To prevent the compiler from discarding a preceeding write to *a, and
    2) to prevent it from caching *a in a register over the asm.
    
    The change has had a few days testing with a SMP build of 2.6.22.19
    running on a rp3440.
    
    This patch is about the correctness of the __ldcw() macro itself.
    The use of the macro should be confined to small inline functions
    to try to limit the effect of clobbering memory on GCC's optimization
    of loads and stores.
    
    Signed-off-by: Dave Anglin <dave.anglin at nrc-cnrc.gc.ca>
    Signed-off-by: Helge Deller <deller at gmx.de>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 4fb11781a044552dded5342e1a78cf92a74683db
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Sun Apr 5 02:53:47 2009 +0000

    parisc: kill WARN in free_initmem when DEBUG_KERNEL
    
    Doing an IPI with local interrupts off triggers a warning. We
    don't need to be quite so ridiculously paranoid. Also, clean up
    a bit of the code a little.
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 692c14a5931341a37e4fbfca5fa96751187a108f
Author: Bastian Blank <waldi at debian.org>
Date:   Sat Apr 4 20:54:26 2009 +0000

    parisc: Remove casts from atomic macros
    
    The atomic operations on parisc are defined as macros. The macros
    includes casts which disallows the use of some syntax elements and
    produces error like this:
    
    net/phonet/pep.c: In function 'pipe_rcv_status':
    net/phonet/pep.c:262: error: lvalue required as left operand of assignment
    
    The patch removes this superfluous casts.
    
    Signed-off-by: Bastian Blank <waldi at debian.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 071327ec9005e9a826d088d37021ed2c88e683f7
Author: Alexander Beregalov <a.beregalov at gmail.com>
Date:   Fri Apr 3 01:49:22 2009 +0000

    parisc: remove CVS keywords
    
    Signed-off-by: Alexander Beregalov <a.beregalov at gmail.com>
    Acked-by: Matthew Wilcox <willy at linux.intel.com>
    Acked-by: Grant Grundler <grundler at parisc-linux.org>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 8d2d00ddeff2c2d1164d96e2d1b53e45ceb528c8
Author: Alexander Beregalov <a.beregalov at gmail.com>
Date:   Fri Apr 3 12:08:54 2009 +0000

    parisc: ccio-dma: fix build failure without procfs
    
    Fix this build error when CONFIG_PROC_FS is not set:
    drivers/parisc/ccio-dma.c:1574: error: 'ccio_proc_info_fops' undeclared
    
    Signed-off-by: Alexander Beregalov <a.beregalov at gmail.com>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 17085a934592585bd878884dee04b850a367be10
Author: Alexander Beregalov <a.beregalov at gmail.com>
Date:   Fri Apr 3 13:33:32 2009 +0000

    parisc: stifb: should depend on STI_CONSOLE
    
    Fix this build error when CONFIG_STI_CONSOLE is not set
    drivers/video/stifb.c:1337: undefined reference to `sti_get_rom'
    
    Signed-off-by: Alexander Beregalov <a.beregalov at gmail.com>
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 90eab5e09de20e8d991bbb11f6edfb573f906352
Author: Kyle McMartin <kyle at mcmartin.ca>
Date:   Mon Apr 27 08:29:12 2009 -0400

    parisc: wire up preadv/pwritev syscalls
    
    Generic compat handlers look appropriate, so use those.
    
    Signed-off-by: Kyle McMartin <kyle at mcmartin.ca>

commit 746a99a5af60ee676afa2ba469ccd1373493c7e7
Merge: 5291a12f0503e31e0b8e90ee8e4997d59c1c3aad bdae997f44535ac4ebe1e055ffe59eeee946f453
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jul 2 16:54:07 2009 -0700

    Merge branch 'for-linus' of git://git.infradead.org/users/eparis/notify
    
    * 'for-linus' of git://git.infradead.org/users/eparis/notify:
      fs/notify/inotify: decrement user inotify count on close

commit 5291a12f0503e31e0b8e90ee8e4997d59c1c3aad
Merge: c7cba0623fc17fe766063d492810632366790763 68f5a38c3ea4ae9cc7a40f86ff6d6d031583d93a
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jul 2 16:52:38 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:
      Btrfs: fix error message formatting
      Btrfs: fix use after free in btrfs_start_workers fail path
      Btrfs: honor nodatacow/sum mount options for new files
      Btrfs: update backrefs while dropping snapshot
      Btrfs: account for space we may use in fallocate
      Btrfs: fix the file clone ioctl for preallocated extents
      Btrfs: don't log the inode in file_write while growing the file

commit c7cba0623fc17fe766063d492810632366790763
Merge: 405d7ca51597645f3be850574d6c10f01be11e8d a222ad1a4b2e3ca177a538482c99c519c1ce94d1
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jul 2 16:52:25 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
      [SCSI] cxgb3i: fix connection error when vlan is enabled
      [SCSI] FC transport: Locking fix for common-code FC pass-through patch
      [SCSI] zalon: fix oops on attach failure
      [SCSI] fnic: use DMA_BIT_MASK(nn) instead of deprecated DMA_nnBIT_MASK
      [SCSI] fnic: remove redundant BUG_ONs and fix checks on unsigned
      [SCSI] ibmvscsi: Fix module load hang

commit 405d7ca51597645f3be850574d6c10f01be11e8d
Merge: 7c5371c403abb29f01bc6cff6c5096abdf2dc524 6a43e574c5af7d9bd084992b1c9c3cdbc3b6c0e9
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jul 2 16:51:09 2009 -0700

    Merge git://git.infradead.org/iommu-2.6
    
    * git://git.infradead.org/iommu-2.6: (38 commits)
      intel-iommu: Don't keep freeing page zero in dma_pte_free_pagetable()
      intel-iommu: Introduce first_pte_in_page() to simplify PTE-setting loops
      intel-iommu: Use cmpxchg64_local() for setting PTEs
      intel-iommu: Warn about unmatched unmap requests
      intel-iommu: Kill superfluous mapping_lock
      intel-iommu: Ensure that PTE writes are 64-bit atomic, even on i386
      intel-iommu: Make iommu=pt work on i386 too
      intel-iommu: Performance improvement for dma_pte_free_pagetable()
      intel-iommu: Don't free too much in dma_pte_free_pagetable()
      intel-iommu: dump mappings but don't die on pte already set
      intel-iommu: Combine domain_pfn_mapping() and domain_sg_mapping()
      intel-iommu: Introduce domain_sg_mapping() to speed up intel_map_sg()
      intel-iommu: Simplify __intel_alloc_iova()
      intel-iommu: Performance improvement for domain_pfn_mapping()
      intel-iommu: Performance improvement for dma_pte_clear_range()
      intel-iommu: Clean up iommu_domain_identity_map()
      intel-iommu: Remove last use of PHYSICAL_PAGE_MASK, for reserving PCI BARs
      intel-iommu: Make iommu_flush_iotlb_psi() take pfn as argument
      intel-iommu: Change aligned_size() to aligned_nrpages()
      intel-iommu: Clean up intel_map_sg(), remove domain_page_mapping()
      ...

commit 7c5371c403abb29f01bc6cff6c5096abdf2dc524
Author: Yinghai Lu <yinghai at kernel.org>
Date:   Wed Jul 1 12:32:18 2009 -0700

    x86: add boundary check for 32bit res before expand e820 resource to alignment
    
    fix hang with HIGHMEM_64G and 32bit resource.  According to hpa and
    Linus, use (resource_size_t)-1 to fend off big ranges.
    
    Analyzed by hpa
    
    Reported-and-tested-by: Mikael Pettersson <mikpe at it.uu.se>
    Signed-off-by: Yinghai Lu <yinghai at kernel.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 43644679a1e80f53e6e0155ab75b1093ba3c0365
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jul 2 12:05:10 2009 -0700

    x86: fix power-of-2 round_up/round_down macros
    
    These macros had two bugs:
     - the type of the mask was not correctly expanded to the full size of
       the argument being expanded, resulting in possible loss of high bits
       when mixing types.
     - the alignment argument was evaluated twice, despite the macro looking
       like a fancy function (but it really does need to be a macro, since
       it works on arbitrary integer types)
    
    Noticed by Peter Anvin, and with a fix that is a modification of his
    suggestion (bug noticed by Yinghai Lu).
    
    Cc: Peter Anvin <hpa at zytor.com>
    Cc: Yinghai Lu <yinghai at kernel.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 68f5a38c3ea4ae9cc7a40f86ff6d6d031583d93a
Author: Hu Tao <cnhutao at gmail.com>
Date:   Thu Jul 2 13:55:45 2009 -0400

    Btrfs: fix error message formatting
    
    Make an error msg look nicer by inserting a space between number and word.
    
    Signed-off-by: Hu Tao <hu.taoo at gmail.com>
    Signed-off-by: Jiri Kosina <jkosina at suse.cz>
    Signed-off-by: Chris Mason <chris.mason at oracle.com>

commit 9b627e9bf49ebfeb060dfae0435bdba06cf27cb8
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Thu Jul 2 13:50:58 2009 -0400

    Btrfs: fix use after free in btrfs_start_workers fail path
    
    worker memory is already freed on one fail path in btrfs_start_workers,
    but is still dereferenced. Switch the dereference and kfree.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Chris Mason <chris.mason at oracle.com>

commit 9427216476d4fa75103f39d4b228c47d56ba20da
Author: Chris Mason <chris.mason at oracle.com>
Date:   Thu Jul 2 12:26:06 2009 -0400

    Btrfs: honor nodatacow/sum mount options for new files
    
    The btrfs attr patches unconditionally inherited the inode flags field
    without honoring nodatacow and nodatasum.  This fix makes sure
    we properly record the nodatacow/sum mount options in new inodes.
    
    Signed-off-by: Chris Mason <chris.mason at oracle.com>

commit 2c47e605a91dde6b0514f689645e7ab336c8592a
Author: Yan Zheng <zheng.yan at oracle.com>
Date:   Sat Jun 27 21:07:35 2009 -0400

    Btrfs: update backrefs while dropping snapshot
    
    The new backref format has restriction on type of backref item.  If a tree
    block isn't referenced by its owner tree, full backrefs must be used for the
    pointers in it. When a tree block loses its owner tree's reference, backrefs
    for the pointers in it should be updated to full backrefs. Current
    btrfs_drop_snapshot misses the code that updates backrefs, so it's unsafe for
    general use.
    
    This patch adds backrefs update code to btrfs_drop_snapshot.  It isn't a
    problem in the restricted form btrfs_drop_snapshot is used today, but for
    general snapshot deletion this update is required.
    
    Signed-off-by: Yan Zheng <zheng.yan at oracle.com>
    Signed-off-by: Chris Mason <chris.mason at oracle.com>

commit a970b0a16cc416a509d5ae8b1d70978664e6f4fe
Author: Josef Bacik <jbacik at redhat.com>
Date:   Sat Jun 27 21:07:34 2009 -0400

    Btrfs: account for space we may use in fallocate
    
    Using Eric Sandeen's xfstest for fallocate, you can easily trigger a ENOSPC
    panic on btrfs.  This is because we do not account for data we may use when
    doing the fallocate.  This patch fixes the problem by properly reserving space,
    and then just freeing it when we are done.  The reservation stuff was made with
    delalloc in mind, so its a little crude for this case, but it keeps the box
    from panicing.
    
    Signed-off-by: Josef Bacik <jbacik at redhat.com>
    Signed-off-by: Chris Mason <chris.mason at oracle.com>

commit c8a894d77de4a1e0a544577fd4eabc9aacd453a8
Author: Chris Mason <chris.mason at oracle.com>
Date:   Sat Jun 27 21:07:03 2009 -0400

    Btrfs: fix the file clone ioctl for preallocated extents

commit f597bb19ccd034cbcf05e1194238e2c8d9505a8a
Author: Chris Mason <chris.mason at oracle.com>
Date:   Sat Jun 27 21:06:22 2009 -0400

    Btrfs: don't log the inode in file_write while growing the file

commit dbe45d0ce394732cc06187e929697fc0fb16aa53
Merge: 4413c8d2be530d7310feaceaae28350b316b2068 826390796d09444b93e1f957582f8970ddfd9b3d
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jul 2 17:48:34 2009 +0200

    Merge branch 'fix/oxygen' into for-linus
    
    * fix/oxygen:
      sound: virtuoso: fix Xonar D1/DX silence after resume

commit 4413c8d2be530d7310feaceaae28350b316b2068
Merge: cfbc78003e2b12e60a1d594ce192c30aea44eb2a ff84847171508a3c76eb7e483204d1be7738729b
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jul 2 17:48:33 2009 +0200

    Merge branch 'fix/hda' into for-linus
    
    * fix/hda:
      ALSA: hda - Add quirk for HP 6930p
      ALSA: hda - Add missing static to patch_ca0110()

commit cfbc78003e2b12e60a1d594ce192c30aea44eb2a
Merge: dc8a4f3fc3c32954c9fd46cb027b959380be2d65 3f5d3465be8f6e04f43d9b6d543fe28d4be07d78
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jul 2 17:48:32 2009 +0200

    Merge branch 'fix/caiaq' into for-linus
    
    * fix/caiaq:
      ALSA: usx2y - reparent sound device
      ALSA: snd_usb_caiaq: reparent sound device

commit dc8a4f3fc3c32954c9fd46cb027b959380be2d65
Merge: 9ea5ca75a2aebb7172094a7d77acf6ff7600cc56 da9ff1f796e81976935407251815838bef9868d4
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jul 2 17:48:31 2009 +0200

    Merge branch 'fix/asoc' into for-linus
    
    * fix/asoc:
      ASoC: Only disable pxa2xx-i2s clocks if we enabled them
      ASoC: OMAP: fix OMAP1510 broken PCM pointer callback
      ASoC: remove BROKEN from Efika and pcm030 fabric drivers
      ASoC: Fix typo in MPC5200 PSC AC97 driver Kconfig

commit bdae997f44535ac4ebe1e055ffe59eeee946f453
Author: Keith Packard <keithp at keithp.com>
Date:   Wed Jul 1 21:56:38 2009 -0700

    fs/notify/inotify: decrement user inotify count on close
    
    The per-user inotify_devs value is incremented each time a new file is
    allocated, but never decremented. This led to inotify_init failing after a
    limited number of calls.
    
    Signed-off-by: Keith Packard <keithp at keithp.com>
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit 6a43e574c5af7d9bd084992b1c9c3cdbc3b6c0e9
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Thu Jul 2 12:02:34 2009 +0100

    intel-iommu: Don't keep freeing page zero in dma_pte_free_pagetable()
    
    Check dma_pte_present() and only free the page if there _is_ one.
    Kind of surprising that there was no warning about this.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 75e6bf9638992dfc0fec9c3ca10444c8e0d6a638
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Thu Jul 2 11:21:16 2009 +0100

    intel-iommu: Introduce first_pte_in_page() to simplify PTE-setting loops
    
    On Wed, 2009-07-01 at 16:59 -0700, Linus Torvalds wrote:
    > I also _really_ hate how you do
    >
    >         (unsigned long)pte >> VTD_PAGE_SHIFT ==
    >         (unsigned long)first_pte >> VTD_PAGE_SHIFT
    
    Kill this, in favour of just looking to see if the incremented pte
    pointer has 'wrapped' onto the next page. Which means we have to check
    it _after_ incrementing it, not before.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 3f5d3465be8f6e04f43d9b6d543fe28d4be07d78
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jul 2 11:51:44 2009 +0200

    ALSA: usx2y - reparent sound device
    
    Fix the parent device to be the USB interface, not the USB device.
    A similiar commit like 563c2bf59d392357bcc1d99642933cc88c687964.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 563c2bf59d392357bcc1d99642933cc88c687964
Author: Daniel Mack <daniel at caiaq.de>
Date:   Thu Jul 2 10:46:35 2009 +0200

    ALSA: snd_usb_caiaq: reparent sound device
    
    The sound device instance needs to be a child of the USB interface, not
    the USB device. Newer udev versions pay attention to that.
    
    Signed-off-by: Daniel Mack <daniel at caiaq.de>
    Reported-by: Lennart Poettering <lennart at poettering.net>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 826390796d09444b93e1f957582f8970ddfd9b3d
Author: Clemens Ladisch <clemens at ladisch.de>
Date:   Thu Jul 2 08:31:30 2009 +0200

    sound: virtuoso: fix Xonar D1/DX silence after resume
    
    When resuming, we better take the DACs out of the reset state before
    trying to use them.
    
    Reference: kernel bug #13599
    	http://bugzilla.kernel.org/show_bug.cgi?id=13599
    
    Signed-off-by: Clemens Ladisch <clemens at ladisch.de>
    Cc: <stable at kernel.org>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 42ca4fb69126dd9d0e25112edca1cacf846aa5c3
Author: David Howells <dhowells at redhat.com>
Date:   Thu Jul 2 00:46:21 2009 +0100

    FRV: Add basic performance counter support
    
    Add basic performance counter support to the FRV arch.
    
    Signed-off-by: David Howells <dhowells at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 00460f41fffc0435dbb6ab4b058a190163d57ce6
Author: David Howells <dhowells at redhat.com>
Date:   Thu Jul 2 00:46:16 2009 +0100

    FRV: Implement atomic64_t
    
    Implement atomic64_t and its ops for FRV.  Tested with the following patch:
    
    	diff --git a/arch/frv/kernel/setup.c b/arch/frv/kernel/setup.c
    	index 55e4fab..086d50d 100644
    	--- a/arch/frv/kernel/setup.c
    	+++ b/arch/frv/kernel/setup.c
    	@@ -746,6 +746,52 @@ static void __init parse_cmdline_early(char *cmdline)
    
    	 } /* end parse_cmdline_early() */
    
    	+static atomic64_t xxx;
    	+
    	+static void test_atomic64(void)
    	+{
    	+	atomic64_set(&xxx, 0x12300000023LL);
    	+
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != 0x12300000023LL);
    	+	mb();
    	+	if (atomic64_inc_return(&xxx) != 0x12300000024LL)
    	+		BUG();
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != 0x12300000024LL);
    	+	mb();
    	+	if (atomic64_sub_return(0x36900000050LL, &xxx) != -0x2460000002cLL)
    	+		BUG();
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != -0x2460000002cLL);
    	+	mb();
    	+	if (atomic64_dec_return(&xxx) != -0x2460000002dLL)
    	+		BUG();
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != -0x2460000002dLL);
    	+	mb();
    	+	if (atomic64_add_return(0x36800000001LL, &xxx) != 0x121ffffffd4LL)
    	+		BUG();
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != 0x121ffffffd4LL);
    	+	mb();
    	+	if (atomic64_cmpxchg(&xxx, 0x123456789abcdefLL, 0x121ffffffd4LL) != 0x121ffffffd4LL)
    	+		BUG();
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != 0x121ffffffd4LL);
    	+	mb();
    	+	if (atomic64_cmpxchg(&xxx, 0x121ffffffd4LL, 0x123456789abcdefLL) != 0x121ffffffd4LL)
    	+		BUG();
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != 0x123456789abcdefLL);
    	+	mb();
    	+	if (atomic64_xchg(&xxx, 0xabcdef123456789LL) != 0x123456789abcdefLL)
    	+		BUG();
    	+	mb();
    	+	BUG_ON(atomic64_read(&xxx) != 0xabcdef123456789LL);
    	+	mb();
    	+}
    	+
    	 /*****************************************************************************/
    	 /*
    	  *
    	@@ -845,6 +891,8 @@ void __init setup_arch(char **cmdline_p)
    	 //	asm volatile("movgs %0,timerd" :: "r"(10000000));
    	 //	__set_HSR(0, __get_HSR(0) | HSR0_ETMD);
    
    	+	test_atomic64();
    	+
    	 } /* end setup_arch() */
    
    	 #if 0
    
    Note that this doesn't cover all the trivial wrappers, but does cover all the
    substantial implementations.
    
    Signed-off-by: David Howells <dhowells at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 7766a3fb905f0b078b05f5d6a6be8df4c64b9f51
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Wed Jul 1 20:27:03 2009 +0100

    intel-iommu: Use cmpxchg64_local() for setting PTEs
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 85b98276f2ffa66b25ae6328b00bfadfd74b74e7
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Wed Jul 1 19:27:53 2009 +0100

    intel-iommu: Warn about unmatched unmap requests
    
    This would have found the bug in i386 pci_unmap_addr() a long time ago.
    We shouldn't just silently return without doing anything.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 5a475ce4692f668b2615ae4ea1365c7c2d93f1dd
Merge: d960eea974f5e500c0dcb95a934239cc1f481cfd 1c6a307a54668eda556f499c94e75086aaf8f80f
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jul 1 11:46:30 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:
      sh: LCDC dcache flush for deferred io
      sh: Fix compiler error and include the definition of IS_ERR_VALUE
      sh: re-add LCDC fbdev support to the Migo-R defconfig
      sh: fix se7724 ceu names
      sh: ms7724se: Enable sh_eth in defconfig.
      arch/sh/boards/mach-se/7206/io.c: Remove unnecessary semicolons
      sh: ms7724se: Add sh_eth support
      nommu: provide follow_pfn().
      sh: Kill off unused DEBUG_BOOTMEM symbol.
      perf_counter tools: add cpu_relax()/rmb() definitions for sh.
      sh64: Hook up page fault events for software perf counters.
      sh: Hook up page fault events for software perf counters.
      sh: make set_perf_counter_pending() static inline.
      clocksource: sh_tmu: Make undefined TCOR behaviour less undefined.

commit 206a73c102fc480ba072a9388bc2142c303113aa
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Wed Jul 1 19:30:28 2009 +0100

    intel-iommu: Kill superfluous mapping_lock
    
    Since we're using cmpxchg64() anyway (because that's the only way to do
    an atomic 64-bit store on i386), we might as well ditch the extra
    locking and just use cmpxchg64() to ensure that we don't add the page
    twice.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 1c6a307a54668eda556f499c94e75086aaf8f80f
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Wed Jul 1 06:50:31 2009 +0000

    sh: LCDC dcache flush for deferred io
    
    Since writenotify on uncached vmas is unsupported in 2.6.31,
    live with cached framebuffer memory in the deferred io
    case for now and flush the dcache before forcing refresh.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>
    Acked-by: Magnus damm <damm at igel.co.jp>

commit 34e19ada994fb9cb3d11873f2b734602e2135f3a
Author: Matt Fleming <matt at console-pimps.org>
Date:   Wed Jul 1 18:14:18 2009 +0000

    sh: Fix compiler error and include the definition of IS_ERR_VALUE
    
    When arch/sh/include/asm/syscall_32.h is included from a file that
    doesn't also include linux/err.h the following error is produced,
    
    In file included from /home/matt/src/kernels/sh-2.6/arch/sh/include/asm/syscall.h:5,
                     from kernel/trace/trace_syscalls.c:3:
    /home/matt/src/kernels/sh-2.6/arch/sh/include/asm/syscall_32.h: In function 'syscall_get_error':
    /home/matt/src/kernels/sh-2.6/arch/sh/include/asm/syscall_32.h:28: error: implicit declaration of function 'IS_ERR_VALUE'
    make[2]: *** [kernel/trace/trace_syscalls.o] Error 1
    make[1]: *** [kernel/trace] Error 2
    make: *** [kernel] Error 2
    
    Signed-off-by: Matt Fleming <matt at console-pimps.org>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit d960eea974f5e500c0dcb95a934239cc1f481cfd
Author: Randy Dunlap <randy.dunlap at oracle.com>
Date:   Mon Jun 29 14:54:11 2009 -0700

    kernel-doc: move ignoring kmemcheck
    
    Somehow I managed to generate a diff that put these 2 lines
    into the wrong function:  should have been in dump_struct()
    instead of in dump_enum().
    
    Signed-off-by: Randy Dunlap <randy.dunlap at oracle.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 5c5d4e8eafd0e54c2134c23296b1d7996c304fe1
Merge: fa172f40068b50f0ad7ae352a2466d0acc579e00 c276aca46d26aa2347320096f8ecdf5016795c14
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jul 1 11:25:46 2009 -0700

    Merge git://git.infradead.org/mtd-2.6
    
    * git://git.infradead.org/mtd-2.6:
      mtd: nand: fix build failure and incorrect return from omap_wait()
      mtd: Use BLOCK_NIL consistently in NFTL/INFTL
      mtd: m25p80 timeout too short for worst-case m25p16 devices
      mtd: atmel_nand: Fix typo s/parititions/partitions/
      mtd: cmdlineparts: Use 64-bit format when printing a debug message.
      mtd: maps: Remove BUS_ID_SIZE from integrator_flash
      jffs2: fix another potential leak on error path in scan.c

commit c85994e4771025ef2a66533eb1a4c6c2217b9cda
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Wed Jul 1 19:21:24 2009 +0100

    intel-iommu: Ensure that PTE writes are 64-bit atomic, even on i386
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit fa172f40068b50f0ad7ae352a2466d0acc579e00
Merge: a15a519ed6e5e644f5a33c213c00b0c1d3cfe683 3b463ae0c6264f70e5d4c0a9c46af20fed43c96e
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jul 1 11:20:46 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
      fuse: invalidation reverse calls
      fuse: allow umask processing in userspace
      fuse: fix bad return value in fuse_file_poll()
      fuse: fix return value of fuse_dev_write()

commit a15a519ed6e5e644f5a33c213c00b0c1d3cfe683
Author: David Woodhouse <dwmw2 at infradead.org>
Date:   Wed Jul 1 18:49:06 2009 +0100

    Fix iommu address space allocation
    
    This fixes kernel.org bug #13584. The IOVA code attempted to optimise
    the insertion of new ranges into the rbtree, with the unfortunate result
    that some ranges just didn't get inserted into the tree at all. Then
    those ranges would be handed out more than once, and things kind of go
    downhill from there.
    
    Introduced after 2.6.25 by ddf02886cbe665d67ca750750196ea5bf524b10b
    ("PCI: iova RB tree setup tweak").
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
    Cc: mark gross <mgross at linux.intel.com>
    Cc: Andrew Morton <akpm at linux-foundation.org>
    Cc: stable at kernel.org
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 788d84bba47ea3eb377f7a3ae4fd1ee84b84877b
Author: David Woodhouse <dwmw2 at infradead.org>
Date:   Wed Jul 1 18:34:52 2009 +0100

    Fix pci_unmap_addr() et al on i386.
    
    We can run a 32-bit kernel on boxes with an IOMMU, so we need
    pci_unmap_addr() etc. to work -- without it, drivers will leak mappings.
    
    To be honest, this whole thing looks like it's more pain than it's
    worth; I'm half inclined to remove the no-op #else case altogether.
    
    But this is the minimal fix, which just does the right thing if
    CONFIG_DMAR is set.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
    Cc: stable at kernel.org  [ for 2.6.30 ]
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit e2dbe12557d85d81f4527879499f55681c3cca4f
Author: Amerigo Wang <amwang at redhat.com>
Date:   Wed Jul 1 01:06:26 2009 -0400

    elf: fix one check-after-use
    
    Check before use it.
    
    Signed-off-by: WANG Cong <amwang at redhat.com>
    Cc: Alexander Viro <viro at zeniv.linux.org.uk>
    Cc: David Howells <dhowells at redhat.com>
    Acked-by: Roland McGrath <roland at redhat.com>
    Acked-by: James Morris <jmorris at namei.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 3238c0c4d68d9a9022b411a11a4b933fbdb53a14
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Wed Jul 1 18:56:16 2009 +0100

    intel-iommu: Make iommu=pt work on i386 too
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 2027bd9f9290ede1664d5fa18b3fbd6c5f7401d3
Merge: 544ae5f96e14998cabc637fa20cf409eb92a0dd0 b706f64281b24d8b1fdc8ae883700131d365c412
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jul 1 10:41:09 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
    
    * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
      cfq-iosched: remove redundant check for NULL cfqq in cfq_set_request()
      blocK: Restore barrier support for md and probably other virtual devices.
      block: get rid of queue-private command filter
      block: Create bip slabs with embedded integrity vectors
      cfq-iosched: get rid of the need for __GFP_NOFAIL in cfq_find_alloc_queue()
      cfq-iosched: move cfqq initialization out of cfq_find_alloc_queue()
      Trivial typo fixes in Documentation/block/data-integrity.txt.

commit da9ff1f796e81976935407251815838bef9868d4
Author: Mark Brown <broonie at opensource.wolfsonmicro.com>
Date:   Wed Jul 1 18:23:26 2009 +0100

    ASoC: Only disable pxa2xx-i2s clocks if we enabled them
    
    The clock API can't cope with unbalanced enables and disables and
    we only enable in hw_params() but try to disable in shutdown.
    
    Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>

commit 544ae5f96e14998cabc637fa20cf409eb92a0dd0
Merge: 7b85425fac72588674d5c71604af618f690c91d7 e62e58a5ffdc98ac28d8dbd070c857620d541f99
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jul 1 10:31:26 2009 -0700

    Merge branch 'for-linus' of git://neil.brown.name/md
    
    * 'for-linus' of git://neil.brown.name/md:
      md: use interruptible wait when duration is controlled by userspace.
      md/raid5: suspend shouldn't affect read requests.
      md: tidy up error paths in md_alloc
      md: fix error path when duplicate name is found on md device creation.
      md: avoid dereferencing NULL pointer when accessing suspend_* sysfs attributes.
      md: Use new topology calls to indicate alignment and I/O sizes

commit 7b85425fac72588674d5c71604af618f690c91d7
Merge: 57d81f6f393b245894ca0cd828f80ce7e3294f39 f8a68e752bc4e39644843403168137663c984524
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jul 1 10:29:26 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (31 commits)
      Revert "ipv4: arp announce, arp_proxy and windows ip conflict verification"
      igb: return PCI_ERS_RESULT_DISCONNECT on permanent error
      e1000e: io_error_detected callback should return PCI_ERS_RESULT_DISCONNECT
      e1000: return PCI_ERS_RESULT_DISCONNECT on permanent error
      e1000: fix unmap bug
      igb: fix unmap length bug
      ixgbe: fix unmap length bug
      ixgbe: Fix link capabilities during adapter resets
      ixgbe: Fix device capabilities of 82599 single speed fiber NICs.
      ixgbe: Fix SFP log messages
      usbnet: Remove private stats structure
      usbnet: Use netdev stats structure
      smsc95xx: Use netdev stats structure
      rndis_host: Use netdev stats structure
      net1080: Use netdev stats structure
      dm9601: Use netdev stats structure
      cdc_eem: Use netdev stats structure
      ipv4: Fix fib_trie rebalancing, part 3
      bnx2x: Fix the behavior of ethtool when ONBOOT=no
      sctp: xmit sctp packet always return no route error
      ...

commit 57d81f6f393b245894ca0cd828f80ce7e3294f39
Author: Ingo Molnar <mingo at elte.hu>
Date:   Wed Jul 1 09:43:53 2009 +0200

    kmemleak: Fix scheduling-while-atomic bug
    
    One of the kmemleak changes caused the following
    scheduling-while-holding-the-tasklist-lock regression on x86:
    
    BUG: sleeping function called from invalid context at mm/kmemleak.c:795
    in_atomic(): 1, irqs_disabled(): 0, pid: 1737, name: kmemleak
    2 locks held by kmemleak/1737:
     #0:  (scan_mutex){......}, at: [<c10c4376>] kmemleak_scan_thread+0x45/0x86
     #1:  (tasklist_lock){......}, at: [<c10c3bb4>] kmemleak_scan+0x1a9/0x39c
    Pid: 1737, comm: kmemleak Not tainted 2.6.31-rc1-tip #59266
    Call Trace:
     [<c105ac0f>] ? __debug_show_held_locks+0x1e/0x20
     [<c102e490>] __might_sleep+0x10a/0x111
     [<c10c38d5>] scan_yield+0x17/0x3b
     [<c10c3970>] scan_block+0x39/0xd4
     [<c10c3bc6>] kmemleak_scan+0x1bb/0x39c
     [<c10c4331>] ? kmemleak_scan_thread+0x0/0x86
     [<c10c437b>] kmemleak_scan_thread+0x4a/0x86
     [<c104d73e>] kthread+0x6e/0x73
     [<c104d6d0>] ? kthread+0x0/0x73
     [<c100959f>] kernel_thread_helper+0x7/0x10
    kmemleak: 834 new suspected memory leaks (see /sys/kernel/debug/kmemleak)
    
    The bit causing it is highly dubious:
    
    static void scan_yield(void)
    {
            might_sleep();
    
            if (time_is_before_eq_jiffies(next_scan_yield)) {
                    schedule();
                    next_scan_yield = jiffies + jiffies_scan_yield;
            }
    }
    
    It called deep inside the codepath and in a conditional way,
    and that is what crapped up when one of the new scan_block()
    uses grew a tasklist_lock dependency.
    
    This minimal patch removes that yielding stuff and adds the
    proper cond_resched().
    
    The background scanning thread could probably also be reniced
    to +10.
    
    Signed-off-by: Ingo Molnar <mingo at elte.hu>
    Acked-by: Pekka Enberg <penberg at cs.helsinki.fi>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit ff84847171508a3c76eb7e483204d1be7738729b
Author: Takashi Iwai <tiwai at suse.de>
Date:   Wed Jul 1 18:08:01 2009 +0200

    ALSA: hda - Add quirk for HP 6930p
    
    Added a quirk model=laptop for HP 6930p (103c:30dc) with AD1984A codec.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit b706f64281b24d8b1fdc8ae883700131d365c412
Author: Shan Wei <shanwei at cn.fujitsu.com>
Date:   Wed Jul 1 12:41:14 2009 +0200

    cfq-iosched: remove redundant check for NULL cfqq in cfq_set_request()
    
    With the changes for falling back to an oom_cfqq, we never fail
    to find/allocate a queue in cfq_get_queue(). So remove the check.
    
    Signed-off-by: Shan Wei <shanwei at cn.fujitsu.com>
    Signed-off-by: Jens Axboe <jens.axboe at oracle.com>

commit db64f680ba4b5c56c4be59f0698000df89ff0281
Author: NeilBrown <neilb at suse.de>
Date:   Tue Jun 30 09:35:44 2009 +0200

    blocK: Restore barrier support for md and probably other virtual devices.
    
    The next_ordered flag is only meaningful for devices that use __make_request.
    So move the test against next_ordered out of generic code and in to
    __make_request
    
    Since this test was added, barriers have not worked on md or any
    devices that don't use __make_request and so don't bother to set
    next_ordered.  (dm explicitly sets something other than
    QUEUE_ORDERED_NONE since
      commit 99360b4c18f7675b50d283301d46d755affe75fd
    but notes in the comments that it is otherwise meaningless).
    
    Cc: Ken Milmore <ken.milmore at googlemail.com>
    Cc: stable at kernel.org
    Signed-off-by: NeilBrown <neilb at suse.de>
    Signed-off-by: Jens Axboe <jens.axboe at oracle.com>

commit 018e0446890661504783f92388ecce7138c1566d
Author: Jens Axboe <jens.axboe at oracle.com>
Date:   Fri Jun 26 16:27:10 2009 +0200

    block: get rid of queue-private command filter
    
    The initial patches to support this through sysfs export were broken
    and have been if 0'ed out in any release. So lets just kill the code
    and reclaim some space in struct request_queue, if anyone would later
    like to fixup the sysfs bits, the git history can easily restore
    the removed bits.
    
    Signed-off-by: Jens Axboe <jens.axboe at oracle.com>

commit 7878cba9f0037f5599004b03a1260b32d9050360
Author: Martin K. Petersen <martin.petersen at oracle.com>
Date:   Fri Jun 26 15:37:49 2009 +0200

    block: Create bip slabs with embedded integrity vectors
    
    This patch restores stacking ability to the block layer integrity
    infrastructure by creating a set of dedicated bip slabs.  Each bip slab
    has an embedded bio_vec array at the end.  This cuts down on memory
    allocations and also simplifies the code compared to the original bvec
    version.  Only the largest bip slab is backed by a mempool.  The pool is
    contained in the bio_set so stacking drivers can ensure forward
    progress.
    
    Signed-off-by: Martin K. Petersen <martin.petersen at oracle.com>
    Signed-off-by: Jens Axboe <axboe at carl.(none)>

commit 6118b70b3a0b4c583439bb77600194c82f220ce3
Author: Jens Axboe <jens.axboe at oracle.com>
Date:   Tue Jun 30 09:34:12 2009 +0200

    cfq-iosched: get rid of the need for __GFP_NOFAIL in cfq_find_alloc_queue()
    
    Setup an emergency fallback cfqq that we allocate at IO scheduler init
    time. If the slab allocation fails in cfq_find_alloc_queue(), we'll just
    punt IO to that cfqq instead. This ensures that cfq_find_alloc_queue()
    never fails without having to ensure free memory.
    
    On cfqq lookup, always try to allocate a new cfqq if the given cfq io
    context has the oom_cfqq assigned. This ensures that we only temporarily
    punt to this shared queue.
    
    Reviewed-by: Jeff Moyer <jmoyer at redhat.com>
    Signed-off-by: Jens Axboe <jens.axboe at oracle.com>

commit d5036d770f871bd34c9cfd955e6dee692e1e8e81
Author: Jens Axboe <jens.axboe at oracle.com>
Date:   Fri Jun 26 10:44:34 2009 +0200

    cfq-iosched: move cfqq initialization out of cfq_find_alloc_queue()
    
    We're going to be needing that init code outside of that function
    to get rid of the __GFP_NOFAIL in cfqq allocation.
    
    Reviewed-by: Jeff Moyer <jmoyer at redhat.com>
    Signed-off-by: Jens Axboe <jens.axboe at oracle.com>

commit 61fd21670d048017c81e62f60894ef1b04b481db
Author: Andre Noll <maan at systemlinux.org>
Date:   Thu Jun 25 13:03:04 2009 +0200

    Trivial typo fixes in Documentation/block/data-integrity.txt.
    
    Signed-off-by: Andre Noll <maan at systemlinux.org>
    Acked-by: Martin K. Petersen <martin.petersen at oracle.com>
    Signed-off-by: Jens Axboe <jens.axboe at oracle.com>

commit 1e1689536f346a431b748dc8ad9ac0828d2c065d
Author: Takashi Iwai <tiwai at suse.de>
Date:   Wed Jul 1 08:34:32 2009 +0200

    ALSA: hda - Add missing static to patch_ca0110()
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 0802d9e55cc6be6bd1b13f9dc9ef5aa6d24bca77
Author: Magnus Damm <damm at igel.co.jp>
Date:   Wed Jul 1 05:16:31 2009 +0000

    sh: re-add LCDC fbdev support to the Migo-R defconfig
    
    Re-add LCDC fbdev support to the Migo-R defconfig.
    
    Signed-off-by: Magnus Damm <damm at igel.co.jp>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 84f7597c116f811cfcb762e645fa258b7e585155
Author: Magnus Damm <damm at igel.co.jp>
Date:   Wed Jul 1 04:55:35 2009 +0000

    sh: fix se7724 ceu names
    
    Use "ceu0" and "ceu1" as CEU names instead of "ceu".
    This fixes "memchunk" kernel command line selection
    on the solution engine 7724 board.
    
    With this patch applied use "memchunk.ceu0=1m" or
    "memchunk.ceu1=1m" on kernel command line to override
    physically memory size to one meg for CEU0 or CEU1.
    
    Signed-off-by: Magnus Damm <damm at igel.co.jp>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit e62e58a5ffdc98ac28d8dbd070c857620d541f99
Author: NeilBrown <neilb at suse.de>
Date:   Wed Jul 1 13:15:35 2009 +1000

    md: use interruptible wait when duration is controlled by userspace.
    
    User space can set various limits on an md array so that resync waits
    when it gets to a certain point, or so that I/O is blocked for a short
    while.
    When md is waiting against one of these limit, it should use an
    interruptible wait so as not to add to the load average, and so are
    not to trigger a warning if the wait goes on for too long.
    
    Signed-off-by: NeilBrown <neilb at suse.de>

commit a5c308d4d1659b1f4833b863394e3e24cdbdfc6e
Author: NeilBrown <neilb at suse.de>
Date:   Wed Jul 1 13:15:35 2009 +1000

    md/raid5: suspend shouldn't affect read requests.
    
    md allows write to regions on an array to be suspended temporarily.
    This allows user-space to participate is aspects of reshape.
    In particular, data can be copied with not risk of a race.
    We should not be blocking read requests though, so don't.
    
    Cc: stable at kernel.org
    Signed-off-by: NeilBrown <neilb at suse.de>

commit f8a68e752bc4e39644843403168137663c984524
Author: Eric W. Biederman <ebiederm at xmission.com>
Date:   Tue Jun 30 16:27:17 2009 +0000

    Revert "ipv4: arp announce, arp_proxy and windows ip conflict verification"
    
    This reverts commit 73ce7b01b4496a5fbf9caf63033c874be692333f.
    
    After discovering that we don't listen to gratuitious arps in 2.6.30
    I tracked the failure down to this commit.
    
    The patch makes absolutely no sense.  RFC2131 RFC3927 and RFC5227.
    are all in agreement that an arp request with sip == 0 should be used
    for the probe (to prevent learning) and an arp request with sip == tip
    should be used for the gratitous announcement that people can learn
    from.
    
    It appears the author of the broken patch got those two cases confused
    and modified the code to drop all gratuitous arp traffic.  Ouch!
    
    Cc: stable at kernel.org
    Signed-off-by: Eric W. Biederman <ebiederm at aristanetworks.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 59ed6eecff4aa00c5c5d18ffd180acac108d596e
Author: Alexander Duyck <alexander.h.duyck at intel.com>
Date:   Tue Jun 30 12:46:34 2009 +0000

    igb: return PCI_ERS_RESULT_DISCONNECT on permanent error
    
    PCI drivers that implement the io_error_detected callback should return
    PCI_ERS_RESULT_DISCONNECT if the state passed in is
    pci_channel_io_perm_failure.  This patch fixes the issue for igb.
    
    Signed-off-by: Alexander Duyck <alexander.h.duyck at intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit c93b5a76d58656158d195a7df507ebc660010969
Author: Mike Mason <mmlnx at us.ibm.com>
Date:   Tue Jun 30 12:45:53 2009 +0000

    e1000e: io_error_detected callback should return PCI_ERS_RESULT_DISCONNECT
    
    on permanent failure
    
    PCI drivers that implement the io_error_detected callback
    should return PCI_ERS_RESULT_DISCONNECT if the state
    passed in is pci_channel_io_perm_failure.  This state is not
    checked in many of the network drivers.
    
    This patch fixes the omission in the e1000e driver.
    
    Signed-off-by: Mike Mason <mmlnx at us.ibm.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit eab633021c26025b34f36f79f0311d3d99f40ceb
Author: Andre Detsch <adetsch at br.ibm.com>
Date:   Tue Jun 30 12:46:13 2009 +0000

    e1000: return PCI_ERS_RESULT_DISCONNECT on permanent error
    
    PCI drivers that implement the io_error_detected callback
    should return PCI_ERS_RESULT_DISCONNECT if the state
    passed in is pci_channel_io_perm_failure.  This state is
    not checked in many of the network drivers.
    
    The patch fixes the omission in the e1000 driver.
    
    Based on Mike Mason's similar patch for e1000e.
    
    Signed-off-by: Andre Detsch <adetsch at br.ibm.com>
    CC: Mike Mason <mmlnx at us.ibm.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 679be3ba0c493eb66d22c206273729ce50925e85
Author: Jesse Brandeburg <jesse.brandeburg at intel.com>
Date:   Tue Jun 30 12:45:34 2009 +0000

    e1000: fix unmap bug
    
    as reported by kerneloops.org
    
    [  121.781161] ------------[ cut here ]------------
    [  121.781171] WARNING: at lib/dma-debug.c:793 check_unmap+0x14e/0x577()
    [  121.781173] Hardware name: S5520HC
    [  121.781177] e1000 0000:0a:00.0: DMA-API: device driver tries to free DMA
    memory it has not allocated [device address=0x00000001d688b0fa] [size=1522
    bytes]
    [  121.781180] Modules linked in: e1000 mdio  dca [last unloaded: ixgbe]
    [  121.781187] Pid: 4793, comm: bash Tainted: P 2.6.30-master-06161113 #3
    [  121.781190] Call Trace:
    [  121.781195]  [<ffffffff8123056f>] ? check_unmap+0x14e/0x577
    [  121.781201]  [<ffffffff81057a19>] warn_slowpath_common+0x77/0x8f
    [  121.781205]  [<ffffffff81057ae1>] warn_slowpath_fmt+0x9f/0xa1
    [  121.781212]  [<ffffffff81477ce2>] ? _spin_lock_irqsave+0x3f/0x49
    [  121.781216]  [<ffffffff8122fa97>] ? get_hash_bucket+0x28/0x33
    [  121.781220]  [<ffffffff8123056f>] check_unmap+0x14e/0x577
    [  121.781225]  [<ffffffff810e4f48>] ? check_bytes_and_report+0x38/0xcb
    [  121.781230]  [<ffffffff81230bbf>] debug_dma_unmap_page+0x80/0x92
    [  121.781234]  [<ffffffff8122e549>] ? unmap_single+0x1a/0x4e
    [  121.781239]  [<ffffffff813901e1>] ? __kfree_skb+0x74/0x78
    [  121.781250]  [<ffffffffa00662ef>] pci_unmap_single+0x64/0x6d [e1000]
    [  121.781259]  [<ffffffffa0066344>] e1000_clean_rx_ring+0x4c/0xbf [e1000]
    [  121.781268]  [<ffffffffa00663df>] e1000_clean_all_rx_rings+0x28/0x36 [e1000]
    [  121.781277]  [<ffffffffa0067464>] e1000_down+0x138/0x141 [e1000]
    [  121.781286]  [<ffffffffa00681c2>] __e1000_shutdown+0x6b/0x198 [e1000]
    [  121.781296]  [<ffffffffa0068405>] e1000_suspend+0x17/0x50 [e1000]
    [  121.781301]  [<ffffffff81237665>] pci_legacy_suspend+0x3b/0xbe
    [  121.781305]  [<ffffffff81237bc6>] pci_pm_suspend+0x3e/0xf1
    [  121.781310]  [<ffffffff812eaf1c>] pm_op+0x57/0xde
    [  121.781314]  [<ffffffff812eb444>] dpm_suspend_start+0x31e/0x470
    [  121.781319]  [<ffffffff810877da>] suspend_devices_and_enter+0x3e/0x1a2
    [  121.781323]  [<ffffffff81087a0f>] enter_state+0xd1/0x127
    [  121.781327]  [<ffffffff8108717a>] state_store+0xa7/0xc9
    [  121.781332]  [<ffffffff81221843>] kobj_attr_store+0x17/0x19
    [  121.781336]  [<ffffffff8113c01e>] sysfs_write_file+0xe5/0x121
    [  121.781341]  [<ffffffff810ed165>] vfs_write+0xab/0x105
    [  121.781344]  [<ffffffff810ed279>] sys_write+0x47/0x6d
    [  121.781349]  [<ffffffff81027aab>] system_call_fastpath+0x16/0x1b
    [  121.781352] ---[ end trace 97bacaaac2ed7786 ]---
    
    Fix is to correctly zero out internal ->dma value when unmapping
    and make sure never to unmap unless there specifically was a mapping done.
    
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg at intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 91615f765a2935b6cbae424b9eee1585ed681ae6
Author: Jesse Brandeburg <jesse.brandeburg at intel.com>
Date:   Tue Jun 30 12:45:15 2009 +0000

    igb: fix unmap length bug
    
    driver was mixing NET_IP_ALIGN count bytes in map/unmap calls
    unevenly. Only map the bytes that the hardware might dma into
    
    also fix unmap related bug where ->dma was not being cleared
    after unmap
    
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg at intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 4f57ca6e17edfc56ddde5c87eb893e47e0d2d343
Author: Jesse Brandeburg <jesse.brandeburg at intel.com>
Date:   Tue Jun 30 11:44:56 2009 +0000

    ixgbe: fix unmap length bug
    
    This patch addresses three WARN_ON statements from DMA-API debug code
    
    ixgbe is mapping more than it unmaps, reduce the length of the map call and
    remove the "used once" local variable.
    
    found by Joerg Roedel <joerg.roedel at amd.com> in 2.6.30, so is a candidate
    for -stable.
    
    in addition, fix missing ->dma = 0 after unmap to prevent double free with
    pci_unmap_single
    
    and lastly, don't unmap (half) pages that aren't mapped.
    
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg at intel.com>
    CC: Joerg Roedel <joerg.roedel at amd.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit a1f25324b93ecdab1cbb27d3e9c4cafecb06ceda
Author: Mallikarjuna R Chilakala <mallikarjuna.chilakala at intel.com>
Date:   Tue Jun 30 11:44:36 2009 +0000

    ixgbe: Fix link capabilities during adapter resets
    
    Adapter link advertisement capabilities were not persistent during
    adapter resets. While configuring multispeed fiber link check for
    phy autoneg_advertised settings before overwriting with default
    link capabilities
    
    Signed-off-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala at intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit a380137900fca5c79e6daa9500bdb6ea5649188e
Author: Mallikarjuna R Chilakala <mallikarjuna.chilakala at intel.com>
Date:   Tue Jun 30 11:44:16 2009 +0000

    ixgbe: Fix device capabilities of 82599 single speed fiber NICs.
    
    82599 single speed fiber modules only support 10G/Full. Return
    proper device capabilities while querrying the adapter and error
    while changing device advertisement/speed/duplex capabilities.
    
    Signed-off-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala at intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 88d2b81f4ee8f9ea3798dbe6105beb5609844317
Author: Don Skidmore <donald.c.skidmore at intel.com>
Date:   Tue Jun 30 11:43:55 2009 +0000

    ixgbe: Fix SFP log messages
    
    We had a wide range of log messages for the same sort of SFP
    failure.  This patch makes them all more similar and less
    confusing along with converting them to dev_err.
    
    Signed-off-by: Don Skidmore <donald.c.skidmore at intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit d9d62f3f2c6fa609883714f6fd6cd710a83d307f
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 29 16:54:12 2009 +0000

    usbnet: Remove private stats structure
    
    Now that nothing uses the private stats structure we can remove it.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 7963837f933df8a8ada56fa8f8205ebab40f84d0
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 29 16:53:28 2009 +0000

    usbnet: Use netdev stats structure
    
    Now that netdev has its own stats structure we should use that
    instead.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 80667ac13a6cf2c3a3ff275a2a72809671299acb
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 29 16:53:00 2009 +0000

    smsc95xx: Use netdev stats structure
    
    Now that netdev has its own stats structure we should use that
    instead.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 58e2e7d5913e7a2a6d87ef30d3b52e66b88e6e1d
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 29 16:52:26 2009 +0000

    rndis_host: Use netdev stats structure
    
    Now that netdev has its own stats structure we should use that
    instead.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit a22d2b36a2c4ca58c5914072a88704377bbd34f8
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 29 16:51:40 2009 +0000

    net1080: Use netdev stats structure
    
    Now that netdev has its own stats structure we should use that
    instead.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 9612101cb33862cc160069cc8423926d61db51f8
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 29 16:50:51 2009 +0000

    dm9601: Use netdev stats structure
    
    Now that netdev has its own stats structure we should use that
    instead.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit eaea43abf30c8ccb447c190e7c94b46b5f75eae6
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 29 16:49:40 2009 +0000

    cdc_eem: Use netdev stats structure
    
    Now that netdev has its own stats structure we should use that
    instead.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 0909dc448c98ed5021c87ffdfc09fb473aa464ab
Author: NeilBrown <neilb at suse.de>
Date:   Wed Jul 1 12:27:21 2009 +1000

    md: tidy up error paths in md_alloc
    
    As the recent bug in md_alloc showed, having a single exit path for
    unlocking and putting is a good idea.  So restructure md_alloc to have
    a single mutex_unlock and mddev_put, and use gotos where necessary.
    
    Found-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: NeilBrown <neilb at suse.de>

commit 1ec22eb2b4a2e1a763106bce36b11c02eaa84e61
Author: NeilBrown <neilb at suse.de>
Date:   Wed Jul 1 12:27:21 2009 +1000

    md: fix error path when duplicate name is found on md device creation.
    
    When an md device is created by name (rather than number) we need to
    check that the name is not already in use.  If this check finds a
    duplicate, we return an error without dropping the lock or freeing
    the newly create mddev.
    This patch fixes that.
    
    Cc: stable at kernel.org
    Found-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: NeilBrown <neilb at suse.de>

commit e83c2b0ff325f52dda1aff3572d0e1516216c54b
Merge: 9fcfc91bda04259abb9af2fd83bbf48d19da8502 12de38b186c2af97bf0b4a1f907f766df46b1def
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 30 19:04:53 2009 -0700

    Merge branch 'kmemleak' of git://linux-arm.org/linux-2.6
    
    * 'kmemleak' of git://linux-arm.org/linux-2.6:
      kmemleak: Inform kmemleak about pid_hash
      kmemleak: Do not warn if an unknown object is freed
      kmemleak: Do not report new leaked objects if the scanning was stopped
      kmemleak: Slightly change the policy on newly allocated objects
      kmemleak: Do not trigger a scan when reading the debug/kmemleak file
      kmemleak: Simplify the reports logged by the scanning thread
      kmemleak: Enable task stacks scanning by default
      kmemleak: Allow the early log buffer to be configurable.

commit 9fcfc91bda04259abb9af2fd83bbf48d19da8502
Merge: 55bcab46955644d5a8149a9b3cc9752a336e02f8 ea9df47cc92573b159ef3b4fda516c32cba9c4fd
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 30 19:04:14 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:
      dm table: fix blk_stack_limits arg to use bytes not sectors
      dm exception store: really fix type lookup

commit 55bcab46955644d5a8149a9b3cc9752a336e02f8
Merge: 58580c86450bc09ff101f0d23fd8a162c146bc64 7bec7a9134c25cecb0d7029199b59f7b1bef35b8
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 30 19:02:59 2009 -0700

    Merge branch 'perfcounters-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'perfcounters-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (47 commits)
      perf report: Add --symbols parameter
      perf report: Add --comms parameter
      perf report: Add --dsos parameter
      perf_counter tools: Adjust only prelinked symbol's addresses
      perf_counter: Provide a way to enable counters on exec
      perf_counter tools: Reduce perf stat measurement overhead/skew
      perf stat: Use percentages for scaling output
      perf_counter, x86: Update x86_pmu after WARN()
      perf stat: Micro-optimize the code: memcpy is only required if no event is selected and !null_run
      perf stat: Improve output
      perf stat: Fix multi-run stats
      perf stat: Add -n/--null option to run without counters
      perf_counter tools: Remove dead code
      perf_counter: Complete counter swap
      perf report: Print sorted callchains per histogram entries
      perf_counter tools: Prepare a small callchain framework
      perf record: Fix unhandled io return value
      perf_counter tools: Add alias for 'l1d' and 'l1i'
      perf-report: Add bare minimum PERF_EVENT_READ parsing
      perf-report: Add modes for inherited stats and no-samples
      ...

commit 58580c86450bc09ff101f0d23fd8a162c146bc64
Merge: 6086071005674eb982d898c75269c931240154cf fadfd2b6ba8838a6cc458dbae214993a177a3ee9
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 30 19:01:52 2009 -0700

    Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
    
    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
      Add Fenghua Yu as temporary co-maintainer for ia64
      [IA64] address compiler warnings perfmon.c/salinfo.c
      [IA64] Remove unnecessary semicolons
      [IA64] sprintf should not be used with same source & destination address

commit 6086071005674eb982d898c75269c931240154cf
Author: David Howells <dhowells at redhat.com>
Date:   Tue Jun 30 22:33:15 2009 +0100

    MN10300: Wire up new syscalls
    
    Wire up new syscalls rt_tgsigqueueinfo and perf_counter_open.
    
    Signed-off-by: David Howells <dhowells at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit aee3ff1b413cff44e7d91dd1901cacd8988ce9cf
Author: David Howells <dhowells at redhat.com>
Date:   Tue Jun 30 22:24:54 2009 +0100

    FRV: Wire up new syscalls
    
    Wire up new syscalls rt_tgsigqueueinfo and perf_counter_open.
    
    Signed-off-by: David Howells <dhowells at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 752fa51e4c5182c3c257f1cede90577a7e213c58
Author: Wolfgang Illmeyer <wolfgang at illmeyer.com>
Date:   Tue Jun 30 11:41:44 2009 -0700

    hostfs: set maximum filesize in superblock for proper LFS support
    
    Maximum file size for hostfs mounts defaults to 2GB, so bigger files cannot be
    read/written through hostfs. This patch initializes the maximum file size to
    MAX_LFS_SIZE.
    
    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=13531
    
    Signed-off-by: Wolfgang Illmeyer <wolfgang at illmeyer.com>
    Cc: Jeff Dike <jdike at addtoit.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 8516a500029890a72622d245f8ed32c4e30969b7
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Tue Jun 30 11:41:44 2009 -0700

    floppy: fix lock imbalance
    
    A crappy macro prevents us unlocking on a fail path.
    
    Expand the macro and unlock appropriatelly.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Cc: Jens Axboe <jens.axboe at oracle.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 9980060bad5607ca6db7fb8683de671b522e56a4
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Tue Jun 30 11:41:43 2009 -0700

    bfin: delay IRQ registration until driver is ready
    
    Make sure we do not actually request the RTC IRQ until the device driver
    is fully ready to handle and process any interrupt.  This way a spurious
    interrupt won't crash the system (which may happen if the bootloader was
    poking the RTC right before booting Linux).
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>
    Signed-off-by: Alessandro Zummo <a.zummo at towertech.it>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit ee905d0c58a440a5bd10c845e8305f6f7f706be2
Author: Ville Syrjala <syrjala at sci.fi>
Date:   Tue Jun 30 11:41:42 2009 -0700

    atyfb: fix alignment for block writes
    
    Block writes require 64 byte alignment.  Since block writes could be used
    with SGRAM or WRAM also refine the memory type detection to check for
    either type before deciding to use the 64 byte alignment.
    
    Signed-off-by: Ville Syrjala <syrjala at sci.fi>
    Tested-by: Mikulas Patocka <mpatocka at redhat.com>
    Cc: Krzysztof Helt <krzysztof.h1 at poczta.fm>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit eafad22a05fdaca60f06433ffe8810aaa920d539
Author: Ville Syrjala <syrjala at sci.fi>
Date:   Tue Jun 30 11:41:40 2009 -0700

    atyfb: fix HP OmniBook 500 reboot hang
    
    Apparently HP OmniBook 500's BIOS doesn't like the way atyfb reprograms
    the hardware. The BIOS will simply hang after a reboot. Fix the problem
    by restoring the hardware to it's original state on reboot.
    
    Signed-off-by: Ville Syrjala <syrjala at sci.fi>
    Cc: Mikulas Patocka <mpatocka at redhat.com>
    Cc: Krzysztof Helt <krzysztof.h1 at poczta.fm>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 50efacf6711e6c75595afd9b92aa15c1e4f7c79d
Author: Baruch Siach <baruch at tkos.co.il>
Date:   Tue Jun 30 11:41:39 2009 -0700

    gpio: pl061: fix IRQ handling for GPIOs >= PL061_GPIO_NR
    
    IRQ handling is wrong for any GPIO >= PL061_GPIO_NR.
    
    Fix this by implementing and using a proper .to_irq method.
    
    Signed-off-by: Baruch Siach <baruch at tkos.co.il>
    Cc: David Brownell <david-b at pacbell.net>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 79d7f4ee23d41571d9e4663521b5e6604c55729a
Author: Baruch Siach <baruch at tkos.co.il>
Date:   Tue Jun 30 11:41:38 2009 -0700

    gpio: pl061: fix probe error handling code
    
    Note that IRQ has not been initialized when kmalloc() fails.
    
    Also, use DECLARE_BITMAP() to make the code clearer.
    
    Signed-off-by: Baruch Siach <baruch at tkos.co.il>
    Cc: David Brownell <david-b at pacbell.net>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 66918dcdf91ad101194c749c18099e836ba3de2b
Author: Yinghai Lu <yinghai at kernel.org>
Date:   Tue Jun 30 11:41:37 2009 -0700

    x86: only clear node_states for 64bit
    
    Nathan reported that
    
    | commit 73d60b7f747176dbdff826c4127d22e1fd3f9f74
    | Author: Yinghai Lu <yinghai at kernel.org>
    | Date:   Tue Jun 16 15:33:00 2009 -0700
    |
    |    page-allocator: clear N_HIGH_MEMORY map before we set it again
    |
    |    SRAT tables may contains nodes of very small size.  The arch code may
    |    decide to not activate such a node.  However, currently the early boot
    |    code sets N_HIGH_MEMORY for such nodes.  These nodes therefore seem to be
    |    active although these nodes have no present pages.
    |
    |    For 64bit N_HIGH_MEMORY == N_NORMAL_MEMORY, so that works for 64 bit too
    
    unintentionally and incorrectly clears the cpuset.mems cgroup attribute on
    an i386 kvm guest, meaning that cpuset.mems can not be used.
    
    Fix this by only clearing node_states[N_NORMAL_MEMORY] for 64bit only.
    and need to do save/restore for that in find_zone_movable_pfn
    
    Reported-by: Nathan Lynch <ntl at pobox.com>
    Tested-by: Nathan Lynch <ntl at pobox.com>
    Signed-off-by: Yinghai Lu <yinghai at kernel.org>
    Cc: Christoph Lameter <cl at linux-foundation.org>
    Cc: Ingo Molnar <mingo at elte.hu>,
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit b37f2d4de6dfce4bfd6df311af80e4d61458ee1e
Author: Nikanth Karthikesan <knikanth at suse.de>
Date:   Tue Jun 30 11:41:36 2009 -0700

    cpusets: document adding/removing cpus to cpuset elaborately
    
    By writing a tasks's pid to the file, a process adds that task to that
    cgroup/cpuset.  But to add a cpu/mem to a cpuset, the new list of cpus
    should be written to the cpuset.mems file which would replace the old list
    of cpus.  Make this clearer in the documentation.
    
    Signed-off-by: Nikanth Karthikesan <knikanth at suse.de>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Acked-by: Paul Menage <menage at google.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit d7831a0bdf06b9f722b947bb0c205ff7d77cebd8
Author: Richard Kennedy <richard at rsk.demon.co.uk>
Date:   Tue Jun 30 11:41:35 2009 -0700

    mm: prevent balance_dirty_pages() from doing too much work
    
    balance_dirty_pages can overreact and move all of the dirty pages to
    writeback unnecessarily.
    
    balance_dirty_pages makes its decision to throttle based on the number of
    dirty plus writeback pages that are over the calculated limit,so it will
    continue to move pages even when there are plenty of pages in writeback
    and less than the threshold still dirty.
    
    This allows it to overshoot its limits and move all the dirty pages to
    writeback while waiting for the drives to catch up and empty the writeback
    list.
    
    A simple fio test easily demonstrates this problem.
    
    fio --name=f1 --directory=/disk1 --size=2G -rw=write --name=f2 --directory=/disk2 --size=1G --rw=write --startdelay=10
    
    This is the simplest fix I could find, but I'm not entirely sure that it
    alone will be enough for all cases.  But it certainly is an improvement on
    my desktop machine writing to 2 disks.
    
    Do we need something more for machines with large arrays where
    bdi_threshold * number_of_drives is greater than the dirty_ratio ?
    
    Signed-off-by: Richard Kennedy <richard at rsk.demon.co.uk>
    Acked-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Jens Axboe <jens.axboe at oracle.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit df279ca8966c3de83105428e3391ab17690802a9
Author: Renaud Lottiaux <renaud.lottiaux at kerlabs.com>
Date:   Tue Jun 30 11:41:34 2009 -0700

    bsdacct: fix access to invalid filp in acct_on()
    
    The file opened in acct_on and freshly stored in the ns->bacct struct can
    be closed in acct_file_reopen by a concurrent call after we release
    acct_lock and before we call mntput(file->f_path.mnt).
    
    Record file->f_path.mnt in a local variable and use this variable only.
    
    Signed-off-by: Renaud Lottiaux <renaud.lottiaux at kerlabs.com>
    Signed-off-by: Louis Rilling <louis.rilling at kerlabs.com>
    Cc: Al Viro <viro at zeniv.linux.org.uk>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit b4f90189dc2c7a7e6926ea480ae3404ec3de4581
Author: Joe Perches <joe at perches.com>
Date:   Tue Jun 30 11:41:32 2009 -0700

    MAINTAINERS: STARFIRE/DURALAN update
    
    Ion's cs.columbia.edu email address no longer works.
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Acked-by: Ion Badulescu <ionut at badula.org>
    Cc: "David S. Miller" <davem at davemloft.net>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 8bc1ad7dd301b7ca7454013519fa92e8c53655ff
Author: Zhang Rui <rui.zhang at intel.com>
Date:   Tue Jun 30 11:41:31 2009 -0700

    kernel/resource.c: fix sign extension in reserve_setup()
    
    When the 32-bit signed quantities get assigned to the u64 resource_size_t,
    they are incorrectly sign-extended.
    
    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=13253
    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=9905
    
    Signed-off-by: Zhang Rui <rui.zhang at intel.com>
    Reported-by: Leann Ogasawara <leann at ubuntu.com>
    Cc: Pierre Ossman <drzeus at drzeus.cx>
    Reported-by: <pablomme at googlemail.com>
    Tested-by: <pablomme at googlemail.com>
    Cc: <stable at kernel.org>
    Cc: Jesse Barnes <jbarnes at virtuousgeek.org>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 529ba0d9669386157457a1cb96294d2fe79b3f88
Author: David Brownell <dbrownell at users.sourceforge.net>
Date:   Tue Jun 30 11:41:30 2009 -0700

    spi: bitbang bugfix in message setup
    
    Bugfix to spi_bitbang infrastructure: make sure to always set transfer
    parameters on the first pass through the message's per-transfer loop.
    This can matter with drivers that replace the per-word or per-buffer
    transfer primitives, on busses with multiple SPI devices.
    
    Previously, this could have started messages using the settings left after
    previous messages.  The problem was observed when a high speed chip
    (m25p80 type flash) was running very slowly because a low speed device
    (avr8 microcontroller) had previously used the bus.  Similar faults could
    have driven the low speed device too fast, or used an unexpected word
    size.
    
    Acked-by: Steven A. Falco <sfalco at harris.com>
    Signed-off-by: David Brownell <dbrownell at users.sourceforge.net>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 537a1bf059fa312355696fa6db80726e655e7f17
Author: Krzysztof Helt <krzysztof.h1 at wp.pl>
Date:   Tue Jun 30 11:41:29 2009 -0700

    fbdev: add mutex for fb_mmap locking
    
    Add a mutex to avoid a circular locking problem between the mm layer
    semaphore and fbdev ioctl mutex through the fb_mmap() call.
    
    Also, add mutex to all places where smem_start and smem_len fields change
    so the mutex inside the fb_mmap() is actually used.  Changing of these
    fields before calling the framebuffer_register() are not mutexed.
    
    This is 2.6.31 material.  It removes one lockdep (fb_mmap() and
    register_framebuffer()) but there is still another one (fb_release() and
    register_framebuffer()).  It also cleans up handling of the smem_start and
    smem_len fields used by mutexed section of the fb_mmap().
    
    Signed-off-by: Krzysztof Helt <krzysztof.h1 at wp.pl>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: "Rafael J. Wysocki" <rjw at sisk.pl>
    Cc: <stable at kernel.org>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 70d6027ff2bc8bab180273b77e7ab3e8a62cca51
Author: David Brownell <dbrownell at users.sourceforge.net>
Date:   Tue Jun 30 11:41:27 2009 -0700

    spi: add spi_master flag word
    
    Add a new spi_master.flags word listing constraints relevant to that
    controller.  Define the first constraint bit: a half duplex restriction.
    Include that constraint in the OMAP1 MicroWire controller driver.
    
    Have the mmc_spi host be the first customer of this flag.  Its coding
    relies heavily on full duplex transfers, so it must fail when the
    underlying controller driver won't perform them.
    
    (The spi_write_then_read routine could use it too: use the
    temporarily-withdrawn full-duplex speedup unless this flag is set, in
    which case the existing code applies.  Similarly, any spi_master
    implementing only SPI_3WIRE should set the flag.)
    
    Signed-off-by: David Brownell <dbrownell at users.sourceforge.net>
    Cc: Marek Szyprowski <m.szyprowski at samsung.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit b55f627feeb9d48fdbde3835e18afbc76712e49b
Author: David Brownell <dbrownell at users.sourceforge.net>
Date:   Tue Jun 30 11:41:26 2009 -0700

    spi: new spi->mode bits
    
    Add two new spi_device.mode bits to accomodate more protocol options, and
    pass them through to usermode drivers:
    
     * SPI_NO_CS ... a second 3-wire variant, where the chipselect
       line is removed instead of a data line; transfers are still
       full duplex.
    
       This obviously has STRONG protocol implications since the
       chipselect transitions can't be used to synchronize state
       transitions with the SPI master.
    
     * SPI_READY ... defines open drain signal that's pulled low
       to pause the clock.  This defines a 5-wire variant (normal
       4-wire SPI plus READY) and two 4-wire variants (READY plus
       each of the 3-wire flavors).
    
       Such hardware flow control can be a big win.  There are ADC
       converters and flash chips that expose READY signals, but not
       many host controllers support it today.
    
    The spi_bitbang code should be changed to use SPI_NO_CS instead of its
    current nonportable hack.  That's a mode most hardware can easily support
    (unlike SPI_READY).
    
    Signed-off-by: David Brownell <dbrownell at users.sourceforge.net>
    Cc: "Paulraj, Sandeep" <s-paulraj at ti.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit c49568235dd7b4a2ffad63aa950562f4ffb9455f
Author: Thomas Gleixner <tglx at linutronix.de>
Date:   Tue Jun 30 11:41:25 2009 -0700

    dmapools: protect page_list walk in show_pools()
    
    show_pools() walks the page_list of a pool w/o protection against the list
    modifications in alloc/free.  Take pool->lock to avoid stomping into
    nirvana.
    
    Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
    Signed-off-by: Matthew Wilcox <willy at linux.intel.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 4d6c13f87db12ae1ce35ea6a15688ac72419b133
Author: Bryan Donlan <bdonlan at gmail.com>
Date:   Tue Jun 30 11:41:24 2009 -0700

    ext2: return -EIO not -ESTALE on directory traversal through deleted inode
    
    ext2_iget() returns -ESTALE if invoked on a deleted inode, in order to
    report errors to NFS properly.  However, in ext[234]_lookup(), this
    -ESTALE can be propagated to userspace if the filesystem is corrupted such
    that a directory entry references a deleted inode.  This leads to a
    misleading error message - "Stale NFS file handle" - and confusion on the
    part of the admin.
    
    The bug can be easily reproduced by creating a new filesystem, making a
    link to an unused inode using debugfs, then mounting and attempting to ls
    -l said link.
    
    This patch thus changes ext2_lookup to return -EIO if it receives -ESTALE
    from ext2_iget(), as ext2 does for other filesystem metadata corruption;
    and also invokes the appropriate ext*_error functions when this case is
    detected.
    
    Signed-off-by: Bryan Donlan <bdonlan at gmail.com>
    Cc: <linux-ext4 at vger.kernel.org>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 341c87bf346f57748230628c5ad6ee69219250e8
Author: KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com>
Date:   Tue Jun 30 11:41:23 2009 -0700

    elf: limit max map count to safe value
    
    With ELF, at generating coredump, some more headers other than used
    vmas are added.
    
    When max_map_count == 65536, a core generated by following kinds of
    code can be unreadable because the number of ELF's program header is
    written in 16bit in Ehdr (please see elf.h) and the number overflows.
    
    ==
    	... = mmap(); (munmap, mprotect, etc...)
    	if (failed)
    		abort();
    ==
    
    This can happen in mmap/munmap/mprotect/etc...which calls split_vma().
    
    I think 65536 is not safe as _default_ and reduce it to 65530 is good
    for avoiding unexpected corrupted core.
    
    Anyway, max_map_count can be enlarged by sysctl if a user is brave..
    
    Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com>
    Cc: Hugh Dickins <hugh.dickins at tiscali.co.uk>
    Cc: Jakub Jelinek <jakub at redhat.com>
    Acked-by: Roland McGrath <roland at redhat.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit b1cfebc9231a69d46d66982a2c856ba41ef6d6b9
Author: Yang Shi <yang.shi at windriver.com>
Date:   Tue Jun 30 11:41:22 2009 -0700

    edac: add DDR3 memory type for MPC85xx EDAC
    
    Since some new MPC85xx SOCs support DDR3 memory now, so add DDR3 memory
    type for MPC85xx EDAC.
    
    Signed-off-by: Yang Shi <yang.shi at windriver.com>
    Cc: Doug Thompson <norsk5 at yahoo.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit c4285b47b0514e2103584ee829246f813e7ae323
Author: Michael Buesch <mb at bu3sch.de>
Date:   Tue Jun 30 11:41:21 2009 -0700

    parport/serial: add support for NetMos 9901 Multi-IO card
    
    Add support for the PCI-Express NetMos 9901 Multi-IO card.
    
    0001:06:00.0 Serial controller [0700]: NetMos Technology Device [9710:9901] (prog-if 02 [16550])
            Subsystem: Device [a000:1000]
            Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
            Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
            Latency: 0, Cache Line Size: 64 bytes
            Interrupt: pin A routed to IRQ 65
            Region 0: I/O ports at 0030 [size=8]
            Region 1: Memory at 80105000 (32-bit, non-prefetchable) [size=4K]
            Region 4: Memory at 80104000 (32-bit, non-prefetchable) [size=4K]
            Capabilities: <access denied>
            Kernel driver in use: serial
            Kernel modules: 8250_pci
    
    0001:06:00.1 Serial controller [0700]: NetMos Technology Device [9710:9901] (prog-if 02 [16550])
            Subsystem: Device [a000:1000]
            Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
            Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
            Latency: 0, Cache Line Size: 64 bytes
            Interrupt: pin B routed to IRQ 65
            Region 0: I/O ports at 0020 [size=8]
            Region 1: Memory at 80103000 (32-bit, non-prefetchable) [size=4K]
            Region 4: Memory at 80102000 (32-bit, non-prefetchable) [size=4K]
            Capabilities: <access denied>
            Kernel driver in use: serial
            Kernel modules: 8250_pci
    
    0001:06:00.2 Parallel controller [0701]: NetMos Technology Device [9710:9901] (prog-if 03 [IEEE1284])
            Subsystem: Device [a000:2000]
            Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
            Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
            Latency: 0, Cache Line Size: 64 bytes
            Interrupt: pin C routed to IRQ 65
            Region 0: I/O ports at 0010 [size=8]
            Region 1: I/O ports at <unassigned>
            Region 2: Memory at 80101000 (32-bit, non-prefetchable) [size=4K]
            Region 4: Memory at 80100000 (32-bit, non-prefetchable) [size=4K]
            Capabilities: <access denied>
            Kernel driver in use: parport_pc
            Kernel modules: parport_pc
    
    [   16.760181] PCI parallel port detected: 416c:0100, I/O at 0x812010(0x0), IRQ 65
    [   16.760225] parport0: PC-style at 0x812010, irq 65 [PCSPP,TRISTATE,EPP]
    [   16.851842] serial 0001:06:00.0: enabling device (0004 -> 0007)
    [   16.883776] 0001:06:00.0: ttyS0 at I/O 0x812030 (irq = 65) is a ST16650V2
    [   16.893832] serial 0001:06:00.1: enabling device (0004 -> 0007)
    [   16.926537] 0001:06:00.1: ttyS1 at I/O 0x812020 (irq = 65) is a ST16650V2
    
    Signed-off-by: Michael Buesch <mb at bu3sch.de>
    Cc: Alan Cox <alan at lxorguk.ukuu.org.uk>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 972c71a3183ab41c0b1a9e50842be7e3e980954f
Author: Peter Oberparleiter <oberpar at linux.vnet.ibm.com>
Date:   Tue Jun 30 11:41:20 2009 -0700

    gcov: fix documentation
    
    Commonly available versions of cp and tar don't work well with special
    files created using seq_file.  Mention this problem in the gcov
    documentation and update the helper script example to work around these
    problems.
    
    Signed-off-by: Peter Oberparleiter <oberpar at linux.vnet.ibm.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit b01e8dc34379f4ba2f454390e340a025edbaaa7e
Author: Tejun Heo <tj at kernel.org>
Date:   Tue Jun 30 11:41:18 2009 -0700

    alpha: fix percpu build breakage
    
    alpha percpu access requires custom SHIFT_PERCPU_PTR() definition for
    modules to work around addressing range limitation.  This is done via
    generating inline assembly using C preprocessing which forces the
    assembler to generate external reference.  This happens behind the
    compiler's back and makes the compiler think that static percpu variables
    in modules are unused.
    
    This used to be worked around by using __unused attribute for percpu
    variables which prevent the compiler from omitting the variable; however,
    recent declare/definition attribute unification change broke this as
    __used can't be used for declaration.  Also, in the process,
    PER_CPU_ATTRIBUTES definition in alpha percpu.h got broken.
    
    This patch adds PER_CPU_DEF_ATTRIBUTES which is only used for definitions
    and make alpha use it to add __used for percpu variables in modules.  This
    also fixes the PER_CPU_ATTRIBUTES double definition bug.
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Tested-by: maximilian attems <max at stro.at>
    Acked-by: Ivan Kokshaysky <ink at jurassic.park.msu.ru>
    Cc: Richard Henderson <rth at twiddle.net>
    Cc: <stable at kernel.org>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 15e3252464432a29c5461325cb5243471bd2a219
Author: Stephen Rothwell <sfr at canb.auug.org.au>
Date:   Tue Jun 30 11:41:15 2009 -0700

    fbdev: work around old compiler bug
    
    When building with a 4.1.x compiler on powerpc64 (at least) we get this
    error:
    
    drivers/video/logo/logo_linux_mono.c:81: error: logo_linux_mono causes a section type conflict
    
    This was introduced by commit ae52bb2384f721562f15f719de1acb8e934733cb
    ("fbdev: move logo externs to header file").  This is a partial revert of
    that commit sufficient to not hit the compiler bug.
    
    Also convert _clut arrays from __initconst to __initdata.
    
    Sam said:
    
      Al analysed this some time ago.  When we say something is const then
      _sometimes_ gcc annotate the section as const(?) - sometimes not.  So if
      we have two variables/functions annotated __*const and gcc decides to
      annotate the section const only in one case we get a section type
      conflict.
    
    Signed-off-by: Stephen Rothwell <sfr at canb.auug.org.au>
    Cc: Sam Ravnborg <sam at ravnborg.org>
    Cc: Krzysztof Helt <krzysztof.h1 at poczta.fm>
    Cc: Geert Uytterhoeven <Geert.Uytterhoeven at sonycom.com>
    Cc: Kyle McMartin <kyle at mcmartin.ca>
    Cc: Al Viro <viro at zeniv.linux.org.uk>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit c15e504bd008aedfcd2219051055b66bffdb6148
Author: Joe Perches <joe at perches.com>
Date:   Tue Jun 30 11:41:13 2009 -0700

    MAINTAINERS: update EDAC-I82975X
    
    As per Ranganathan's request.
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Cc: Ranganathan Desikan <ravi at jetztechnologies.com>
    Cc: Arvind R. <arvind at jetztechnologies.com>
    Cc: Doug Thompson <norsk5 at yahoo.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 2a2325e6e8a3782795fb520220c36fd805775972
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Tue Jun 30 11:41:13 2009 -0700

    gcov: fix __ctors_start alignment
    
    The ctors section for each object file is eight byte aligned (on 64 bit).
    However the __ctors_start symbol starts at an arbitrary address dependent
    on the size of the previous sections.
    
    Therefore the linker may add some zeroes after __ctors_start to make sure
    the ctors contents are properly aligned.  However the extra zeroes at the
    beginning aren't expected by the code.  When walking the functions
    pointers contained in there and extra zeroes are added this may result in
    random jumps.  So make sure that the __ctors_start symbol is always
    aligned as well.
    
    Fixes this crash on an allyesconfig on s390:
    
    [    0.582482] Kernel BUG at 0000000000000012 [verbose debug info unavailable]
    [    0.582489] illegal operation: 0001 [#1] SMP DEBUG_PAGEALLOC
    [    0.582496] Modules linked in:
    [    0.582501] CPU: 0 Tainted: G        W  2.6.31-rc1-dirty #273
    [    0.582506] Process swapper (pid: 1, task: 000000003f218000, ksp: 000000003f2238e8)
    [    0.582510] Krnl PSW : 0704200180000000 0000000000000012 (0x12)
    [    0.582518]            R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:2 PM:0 EA:3
    [    0.582524] Krnl GPRS: 0000000000036727 0000000000000010 0000000000000001 0000000000000001
    [    0.582529]            00000000001dfefa 0000000000000000 0000000000000000 0000000000000040
    [    0.582534]            0000000001fff0f0 0000000001790628 0000000002296048 0000000002296048
    [    0.582540]            00000000020c438e 0000000001786000 0000000002014a66 000000003f223e60
    [    0.582553] Krnl Code:>0000000000000012: 0000                unknown
    [    0.582559]            0000000000000014: 0000                unknown
    [    0.582564]            0000000000000016: 0000                unknown
    [    0.582570]            0000000000000018: 0000                unknown
    [    0.582575]            000000000000001a: 0000                unknown
    [    0.582580]            000000000000001c: 0000                unknown
    [    0.582585]            000000000000001e: 0000                unknown
    [    0.582591]            0000000000000020: 0000                unknown
    [    0.582596] Call Trace:
    [    0.582599] ([<0000000002014a46>] kernel_init+0x622/0x7a0)
    [    0.582607]  [<0000000000113e22>] kernel_thread_starter+0x6/0xc
    [    0.582615]  [<0000000000113e1c>] kernel_thread_starter+0x0/0xc
    [    0.582621] INFO: lockdep is turned off.
    [    0.582624] Last Breaking-Event-Address:
    [    0.582627]  [<0000000002014a64>] kernel_init+0x640/0x7a0
    
    Cc: Peter Oberparleiter <oberpar at linux.vnet.ibm.com>
    Cc: Ingo Molnar <mingo at elte.hu>
    Cc: Martin Schwidefsky <schwidefsky at de.ibm.com>
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 133890103b9de08904f909995973e4b5c08a780e
Author: Davide Libenzi <davidel at xmailserver.org>
Date:   Tue Jun 30 11:41:11 2009 -0700

    eventfd: revised interface and cleanups
    
    Change the eventfd interface to de-couple the eventfd memory context, from
    the file pointer instance.
    
    Without such change, there is no clean way to racely free handle the
    POLLHUP event sent when the last instance of the file* goes away.  Also,
    now the internal eventfd APIs are using the eventfd context instead of the
    file*.
    
    This patch is required by KVM's IRQfd code, which is still under
    development.
    
    Signed-off-by: Davide Libenzi <davidel at xmailserver.org>
    Cc: Gregory Haskins <ghaskins at novell.com>
    Cc: Rusty Russell <rusty at rustcorp.com.au>
    Cc: Benjamin LaHaise <bcrl at kvack.org>
    Cc: Avi Kivity <avi at redhat.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit b8d966efd9a46a9a35beac50cbff6e30565125ef
Author: NeilBrown <neilb at suse.de>
Date:   Wed Jul 1 11:14:04 2009 +1000

    md: avoid dereferencing NULL pointer when accessing suspend_* sysfs attributes.
    
    If we try to modify one of the md/ sysfs files
      suspend_lo or suspend_hi
    when the array is not active, we dereference a NULL.
    Protect against that.
    
    Cc: stable at kernel.org
    Signed-off-by: NeilBrown <neilb at suse.de>

commit 8f6c2e4b325a8e9f8f47febb2fd0ed4fae7d45a9
Author: Martin K. Petersen <martin.petersen at oracle.com>
Date:   Wed Jul 1 11:13:45 2009 +1000

    md: Use new topology calls to indicate alignment and I/O sizes
    
    Switch MD over to the new disk_stack_limits() function which checks for
    aligment and adjusts preferred I/O sizes when stacking.
    
    Also indicate preferred I/O sizes where applicable.
    
    Signed-off-by: Martin K. Petersen <martin.petersen at oracle.com>
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Signed-off-by: NeilBrown <neilb at suse.de>

commit 7bec7a9134c25cecb0d7029199b59f7b1bef35b8
Author: Arnaldo Carvalho de Melo <acme at redhat.com>
Date:   Tue Jun 30 19:01:22 2009 -0300

    perf report: Add --symbols parameter
    
    So that we can filter by symbol name.
    
    The 'pfunct' utility in the 'dwarves' package can be used to
    create a file with the functions one wants.
    
    Example:
    
    [acme at doppio pahole]$ pfunct /usr/lib/debug/usr/lib64/libdw-0.141.so.debug | grep dwarf > /tmp/dwarf.symbols
    [acme at doppio pahole]$ wc -l /tmp/dwarf.symbols
    93 /tmp/dwarf.symbols
    [acme at doppio pahole]$ head -3 /tmp/dwarf.symbols
    dwfl_addrdwarf
    dwfl_module_getdwarf
    dwfl_getdwarf
    [acme at doppio pahole]$ perf report --sort comm,dso,symbol --comms pahole --dsos /usr/lib64/libdw-0.141.so --symbols file:///tmp/dwarf.symbols
    
        33.99%            pahole  /usr/lib64/libdw-0.141.so  [.] dwarf_tag
        29.07%            pahole  /usr/lib64/libdw-0.141.so  [.] dwarf_decl_file
        27.71%            pahole  /usr/lib64/libdw-0.141.so  [.] dwarf_getsrclines
         4.54%            pahole  /usr/lib64/libdw-0.141.so  0x00000000007400
         3.93%            pahole  /usr/lib64/libdw-0.141.so  [.] dwarf_decl_line
         0.46%            pahole  /usr/lib64/libdw-0.141.so  [.] dwarf_getlocation
         0.18%            pahole  /usr/lib64/libdw-0.141.so  [.] __libdwarf_next_prime
         0.13%            pahole  /usr/lib64/libdw-0.141.so  [.] dwarf_diecu
    
    [acme at doppio pahole]$
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme at redhat.com>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Peter Zijlstra <peterz at infradead.org>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <1246399282-20934-4-git-send-email-acme at redhat.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit cc8b88b15ab8e5ae162a46c4b6b286b555190dd1
Author: Arnaldo Carvalho de Melo <acme at redhat.com>
Date:   Tue Jun 30 19:01:21 2009 -0300

    perf report: Add --comms parameter
    
    So that we can filter by comm. Symbols in other comms won't be
    accounted for.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme at redhat.com>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Peter Zijlstra <peterz at infradead.org>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <1246399282-20934-3-git-send-email-acme at redhat.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 25903407da21552419e0955705d6d8c8e601cb2e
Author: Arnaldo Carvalho de Melo <acme at redhat.com>
Date:   Tue Jun 30 19:01:20 2009 -0300

    perf report: Add --dsos parameter
    
    So that we can filter by dso. Symbols in other dsos won't be
    accounted for.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme at redhat.com>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Peter Zijlstra <peterz at infradead.org>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <1246399282-20934-2-git-send-email-acme at redhat.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit fadfd2b6ba8838a6cc458dbae214993a177a3ee9
Author: Tony Luck <tony.luck at intel.com>
Date:   Tue Jun 30 14:28:54 2009 -0700

    Add Fenghua Yu as temporary co-maintainer for ia64
    
    I'm taking my sabbatical from Intel for July/August 2009.
    Fenghua Yu will handle ia64 architecture while I'm gone.
    
    Signed-off-by: Tony Luck <tony.luck at intel.com>

commit fa276f36f3d8743295e067fb483b42dca8bd1ece
Author: Jan Beulich <JBeulich at novell.com>
Date:   Tue Jun 30 12:01:57 2009 +0100

    [IA64] address compiler warnings perfmon.c/salinfo.c
    
    perfmon.c has a dubious cast directly from "int" to "void *". Add
    an intermediate cast to "long" to keep gcc happy.
    
    salinfo.c uses "down_trylock()" in a highly creative way (explained
    in the comments in the file) ... but it does kick out this warning:
    
     arch/ia64/kernel/salinfo.c:195: warning: ignoring return value of 'down_trylock'
    
    which people occasionally try to "fix" in ways that do not work. Use some
    casts to keep gcc quiet.
    
    Signed-off-by: Jan Beulich <jbeulich at novell.com>
    Signed-off-by: Tony Luck <tony.luck at intel.com>

commit 58782b34e9ffcc04619634efe9658263344ed188
Author: Joe Perches <joe at perches.com>
Date:   Sun Jun 28 09:26:07 2009 -0700

    [IA64] Remove unnecessary semicolons
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Signed-off-by: Tony Luck <tony.luck at intel.com>

commit 2be8412c6cef97b01dfaae71c04bf585d3d93a3b
Author: Alan Cox <alan at linux.intel.com>
Date:   Tue Jun 30 14:02:00 2009 -0700

    [IA64] sprintf should not be used with same source & destination address
    
    This happens to work at the moment but isn't a good idea so fix it the
    simple way.
    
    Resolves-bug: http://bugzilla.kernel.org/show_bug.cgi?id=13576
    
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Tony Luck <tony.luck at intel.com>

commit f7c2df9b55212d5ec94169a4de11e44c683e0af4
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Tue Jun 30 21:10:13 2009 +0100

    AFS: Fix lock imbalance
    
    Don't unlock on vfs_rejected_lock path in afs_do_setlk, since the lock
    is unlocked after abort_attempt label.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: David Howells <dhowells at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 008440e3ad4b72f5048d1b1f6f5ed894fdc5ad08
Author: Jarek Poplawski <jarkao2 at gmail.com>
Date:   Tue Jun 30 12:47:19 2009 -0700

    ipv4: Fix fib_trie rebalancing, part 3
    
    Alas current delaying of freeing old tnodes by RCU in trie_rebalance
    is still not enough because we can free a top tnode before updating a
    t->trie pointer.
    
    Reported-by: Pawel Staszewski <pstaszewski at itcare.pl>
    Tested-by: Pawel Staszewski <pstaszewski at itcare.pl>
    Signed-off-by: Jarek Poplawski <jarkao2 at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 01e532981460594fffbf9b992ecfc96a78369924
Author: Naohiro Ooiwa <nooiwa at miraclelinux.com>
Date:   Tue Jun 30 12:44:19 2009 -0700

    bnx2x: Fix the behavior of ethtool when ONBOOT=no
    
    This is the same fix as commit
    7959ea254ed18faee41160b1c50b3c9664735967 ("bnx2: Fix the behavior of
    ethtool when ONBOOT=no"), but for bnx2x:
    
    --------------------
        When configure in ifcfg-eth* is ONBOOT=no,
        the behavior of ethtool command is wrong.
    
            # grep ONBOOT /etc/sysconfig/network-scripts/ifcfg-eth2
            ONBOOT=no
            # ethtool eth2 | tail -n1
                    Link detected: yes
    
        I think "Link detected" should be "no".
    --------------------
    
    Signed-off-by: Naohiro Ooiwa <nooiwa at miraclelinux.com>
    Acked-by: Eilon Greenstein <eilong at broadcom.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 3b463ae0c6264f70e5d4c0a9c46af20fed43c96e
Author: John Muir <muirj at nortel.com>
Date:   Sun May 31 11:13:57 2009 -0400

    fuse: invalidation reverse calls
    
    Add notification messages that allow the filesystem to invalidate VFS
    caches.
    
    Two notifications are added:
    
     1) inode invalidation
    
       - invalidate cached attributes
       - invalidate a range of pages in the page cache (this is optional)
    
     2) dentry invalidation
    
       - try to invalidate a subtree in the dentry cache
    
    Care must be taken while accessing the 'struct super_block' for the
    mount, as it can go away while an invalidation is in progress.  To
    prevent this, introduce a rw-semaphore, that is taken for read during
    the invalidation and taken for write in the ->kill_sb callback.
    
    Cc: Csaba Henk <csaba at gluster.com>
    Cc: Anand Avati <avati at zresearch.com>
    Signed-off-by: Miklos Szeredi <mszeredi at suse.cz>

commit e0a43ddcc08c34dbd666d93600fd23914505f4aa
Author: Miklos Szeredi <mszeredi at suse.cz>
Date:   Tue Jun 30 20:12:23 2009 +0200

    fuse: allow umask processing in userspace
    
    This patch lets filesystems handle masking the file mode on creation.
    This is needed if filesystem is using ACLs.
    
     - The CREATE, MKDIR and MKNOD requests are extended with a "umask"
       parameter.
    
     - A new FUSE_DONT_MASK flag is added to the INIT request/reply.  With
       this the filesystem may request that the create mode is not masked.
    
    CC: Jean-Pierre André <jean-pierre.andre at wanadoo.fr>
    Signed-off-by: Miklos Szeredi <mszeredi at suse.cz>

commit 201fa69a2849536ef2912e8e971ec0b01c04eff4
Author: Miklos Szeredi <mszeredi at suse.cz>
Date:   Tue Jun 30 20:06:24 2009 +0200

    fuse: fix bad return value in fuse_file_poll()
    
    Fix fuse_file_poll() which returned a -errno value instead of a poll
    mask.
    
    Signed-off-by: Miklos Szeredi <mszeredi at suse.cz>
    CC: stable at kernel.org

commit b4c458b3a23d76936e76678f2074b1528f129f7a
Author: Csaba Henk <csaba at gluster.com>
Date:   Mon Jun 29 03:26:53 2009 +0200

    fuse: fix return value of fuse_dev_write()
    
    On 64 bit systems -- where sizeof(ssize_t) > sizeof(int) -- the following test
    exposes a bug due to a non-careful return of an int or unsigned value:
    
    implement a FUSE filesystem which sends an unsolicited notification to
    the kernel with invalid opcode. The respective write to /dev/fuse
    will return (1 << 32) - EINVAL with errno == 0 instead of -1 with
    errno == EINVAL.
    
    Signed-off-by: Miklos Szeredi <mszeredi at suse.cz>
    CC: stable at kernel.org

commit f5812a7a336fb952d819e4427b9a2dce02368e82
Author: Arnaldo Carvalho de Melo <acme at redhat.com>
Date:   Tue Jun 30 11:43:17 2009 -0300

    perf_counter tools: Adjust only prelinked symbol's addresses
    
    I.e. we can't handle these two kinds of files in the same way:
    
    1) prelinked system library:
    
    [acme at doppio pahole]$ readelf -s /usr/lib64/libdw-0.141.so | egrep 'FUNC.+GLOBAL.+dwfl_report_elf'
       278: 00000030450105a0   261 FUNC    GLOBAL DEFAULT   12 dwfl_report_elf@@ELFUTILS_0.122
    
    2) not prelinked library with debug information from a -debuginfo package:
    
    [acme at doppio pahole]$ readelf -s /usr/lib/debug/usr/lib64/libdw-0.141.so.debug | egrep 'FUNC.+GLOBAL.+dwfl_report_elf'
       629: 00000000000105a0   261 FUNC    GLOBAL DEFAULT   12 dwfl_report_elf
    [acme at doppio pahole]$
    
    Now the numbers I got for a pahole perf run are in line with
    the numbers I get from oprofile.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme at redhat.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <20090630144317.GB12663 at ghostprotocols.net>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit ea9df47cc92573b159ef3b4fda516c32cba9c4fd
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Tue Jun 30 15:18:17 2009 +0100

    dm table: fix blk_stack_limits arg to use bytes not sectors
    
    The offset passed to blk_stack_limits() must be in bytes not sectors.
    Fixes false warnings like the following:
    device-mapper: table: 254:1: target device sda6 is misaligned
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Reported-by: Frans Pop <elendil at planet.nl>
    Tested-by: Frans Pop <elendil at planet.nl>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 874d2f61d31e596c36af7732dc1b3aa2dc233824
Author: Milan Broz <mbroz at redhat.com>
Date:   Tue Jun 30 15:18:14 2009 +0100

    dm exception store: really fix type lookup
    
    Fix exception store name handling.
    
    We need to reference exception store by zero terminated string.
    
    Fixes regression introduced in commit f6bd4eb73cdf2a5bf954e497972842f39cabb7e3
    
    Cc: Yi Yang <yi.y.yang at intel.com>
    Cc: Jonathan Brassow <jbrassow at redhat.com>
    Cc: stable at kernel.org
    Cc: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Milan Broz <mbroz at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 57e7986ed142417498155ebcd5eaf617ac37136d
Author: Paul Mackerras <paulus at samba.org>
Date:   Tue Jun 30 16:07:19 2009 +1000

    perf_counter: Provide a way to enable counters on exec
    
    This provides a way to mark a counter to be enabled on the next
    exec. This is useful for measuring the total activity of a
    program without including overhead from the process that
    launches it.
    
    This also changes the perf stat command to use this new
    facility.
    
    Signed-off-by: Paul Mackerras <paulus at samba.org>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <19017.43927.838745.689203 at cargo.ozlabs.ibm.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 1bdd7419910c1506151e7b9e2d60c6980e015f76
Author: Janusz Krzysztofik <jkrzyszt at tis.icnet.pl>
Date:   Sun Jun 28 00:21:05 2009 +0200

    ASoC: OMAP: fix OMAP1510 broken PCM pointer callback
    
    This patch tries to work around the problem of broken OMAP1510 PCM playback
    pointer calculation by replacing DMA function call that incorrectly tries to
    read the value form DMA hardware with a value computed locally from an
    already maintained variable omap_runtime_data.period_index.
    
    Tested on OMAP5910 based Amstrad Delta (E3) using work in progress ASoC
    driver.
    
    Based on linux-2.6-asoc.git v2.6.31-rc1.
    
    Signed-off-by: Janusz Krzysztofik <jkrzyszt at tis.icnet.pl>
    Acked-by: Jarkko Nikula <jhnikula at gmail.com>
    Acked-by: Peter Ujfalusi <peter.ujfalusi at nokia.com>
    Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>

commit 40d9ec14e7e1f62d2379ecc1b5ee00ddfc2a5d0c
Author: Grant Likely <grant.likely at secretlab.ca>
Date:   Sun Jun 28 01:42:06 2009 -0600

    ASoC: remove BROKEN from Efika and pcm030 fabric drivers
    
    The needed spin_event_timeout() macro is now merged in from the
    powerpc tree, so these drivers are no longer broken.  This reverts
    commit 0c0e09e21a9e7bc6ca54e06ef3d497255ca26383 (ASoC: Mark MPC5200
    AC97 as BROKEN until PowerPC merge issues are resolved)
    
    Tested against 2.6.31-rc1.
    
    Signed-off-by: Grant Likely <grant.likely at secretlab.ca>
    Acked-by: Jon Smirl <jonsmirl at gmail.com>
    Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>

commit 6a84c234da06a4ac0c1b4c819b83cf264674c2d8
Author: Grant Likely <grant.likely at secretlab.ca>
Date:   Sun Jun 28 01:41:52 2009 -0600

    ASoC: Fix typo in MPC5200 PSC AC97 driver Kconfig
    
    ALSA SoC drivers should be specify SND_SOC_AC97_BUS instead, not AC97_BUS.
    Without SND_SOC_AC97_BUS defined, an AC97 device will not get correctly
    registered on the AC97 bus, which prevents thinks like the WM9712
    touchscreen driver from getting probed.
    
    Tested against 2.6.31-rc1.
    
    Signed-off-by: Grant Likely <grant.likely at secretlab.ca>
    Acked-by: Jon Smirl <jonsmirl at gmail.com>
    Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>

commit 5a4f13fad1ab5bd08dea78fc55321e429d83cddf
Merge: ec9c45d456fd7f1e400c75e6c8040d1deb9d4fff e18ed145c7f556f1de8350c32739bf35b26df705
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 29 20:07:43 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:
      ide: memory overrun in ide_get_identity_ioctl() on big endian machines using ioctl HDIO_OBSOLETE_IDENTITY
      ide: fix resume for CONFIG_BLK_DEV_IDEACPI=y
      ide-cd: handle fragmented packet commands gracefully
      ide: always kill the whole request on error
      ide: fix ide_kill_rq() for special ide-{floppy,tape} driver requests

commit f3a0a52fff4dbfdea2dccc908d00c038481d888e
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Tue Jun 30 03:40:07 2009 +0100

    intel-iommu: Performance improvement for dma_pte_free_pagetable()
    
    As with other functions, batch the CPU data cache flushes and don't keep
    recalculating PTE addresses.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 3d7b0e4154b4963d6bd39991ec8eaa09caeb3994
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Tue Jun 30 03:38:09 2009 +0100

    intel-iommu: Don't free too much in dma_pte_free_pagetable()
    
    The loop condition was wrong -- we should free a PMD only if its
    _entire_ range is within the range we're intending to clear. The
    early-termination condition was right, but not the loop.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 1bf20f0dc5629032ddd07617139d9fbca66c1642
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Mon Jun 29 22:06:43 2009 +0100

    intel-iommu: dump mappings but don't die on pte already set
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 9051aa0268dc1c3e42cd79a802b0af1f2bfcadae
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Mon Jun 29 12:30:54 2009 +0100

    intel-iommu: Combine domain_pfn_mapping() and domain_sg_mapping()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit e1605495c716ef4eebdb7606bcd1b593f28e2837
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Mon Jun 29 11:17:38 2009 +0100

    intel-iommu: Introduce domain_sg_mapping() to speed up intel_map_sg()
    
    Instead of calling domain_pfn_mapping() repeatedly with single or
    small numbers of pages, just pass the sglist in. It can optimise the
    number of cache flushes like domain_pfn_mapping() does, and gives a huge
    speedup for large scatterlists.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit ff0ac74afb5b9916641723a78796d4ee7937c2ea
Author: Wei Yongjun <yjwei at cn.fujitsu.com>
Date:   Sun Jun 28 22:49:37 2009 +0000

    sctp: xmit sctp packet always return no route error
    
    Commit 'net: skb->dst accessors'(adf30907d63893e4208dfe3f5c88ae12bc2f25d5)
    broken the sctp protocol stack, the sctp packet can never be sent out after
    Eric Dumazet's patch, which have typo in the sctp code.
    
    Signed-off-by: Wei Yongjun <yjwei at cn.fujitsu.com>
    Acked-by: Eric Dumazet <eric.dumazet at gmail.com>
    Acked-by: Vlad Yasevich <vladisalv.yasevich at hp.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit d51e9b0d94336db56a13fdc65bb30751e3ea33b7
Author: Graf Yang <graf.yang at analog.com>
Date:   Mon Jun 29 09:34:20 2009 +0000

    net/irda: convert bfin_sir to net_device_ops
    
    Signed-off-by: Graf Yang <graf.yang at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 1802571b9865c0fc1d8d0fa39cf73275f3a75af3
Author: Wei Yongjun <yjwei at cn.fujitsu.com>
Date:   Sun Jun 28 18:42:53 2009 +0000

    xfrm: use xfrm_addr_cmp() instead of compare addresses directly
    
    Clean up to use xfrm_addr_cmp() instead of compare addresses directly.
    
    Signed-off-by: Wei Yongjun <yjwei at cn.fujitsu.com>
    Acked-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 6828b92bd21acd65113dfe0541f19f5df0d9668f
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Sun Jun 28 18:06:41 2009 +0000

    tcp: Do not tack on TSO data to non-TSO packet
    
    If a socket starts out on a non-TSO route, and then switches to
    a TSO route, then we will tack on data to the tail of the tx queue
    even if it started out life as non-TSO.  This is suboptimal because
    all of it will then be copied and checksummed unnecessarily.
    
    This patch fixes this by ensuring that skb->ip_summed is set to
    CHECKSUM_PARTIAL before appending extra data beyond the MSS.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 8e5b9dda99cc86bdbd822935fcc37c5808e271b3
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Sun Jun 28 18:03:30 2009 +0000

    tcp: Stop non-TSO packets morphing into TSO
    
    If a socket starts out on a non-TSO route, and then switches to
    a TSO route, then the tail on the tx queue can morph into a TSO
    packet, causing mischief because the rest of the stack does not
    expect a partially linear TSO packet.
    
    This patch fixes this by ensuring that skb->ip_summed is set to
    CHECKSUM_PARTIAL before declaring a packet as TSO.
    
    Reported-by: Johannes Berg <johannes at sipsolutions.net>
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit e18ed145c7f556f1de8350c32739bf35b26df705
Author: Christian Engelmayer <christian.engelmayer at frequentis.com>
Date:   Mon Jun 29 19:31:41 2009 -0700

    ide: memory overrun in ide_get_identity_ioctl() on big endian machines using ioctl HDIO_OBSOLETE_IDENTITY
    
    This patch fixes a memory overrun in function ide_get_identity_ioctl() which
    chooses the size of a memory buffer depending on the ioctl command that led
    to the function call, however, passes that buffer to a function which needs the
    buffer size to be always chosen unconditionally.
    
    Due to conditional compilation the memory overrun can only happen on big endian
    machines. The error can be triggered using ioctl HDIO_OBSOLETE_IDENTITY. Usage
    of ioctl HDIO_GET_IDENTITY is safe.
    
    Signed-off-by: Christian Engelmayer <christian.engelmayer at frequentis.com>
    Acked-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 9c0346bd0891eb009f5cd08b868ff41c65804dbe
Merge: 53bd9728bf9be7fc3b3147e821dbeb71d767c354 dfd06fe8246c0425f8d6850b8e2c872b0d691ec3
Author: David S. Miller <davem at davemloft.net>
Date:   Mon Jun 29 19:23:53 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lowpan/lowpan

commit 53bd9728bf9be7fc3b3147e821dbeb71d767c354
Merge: bd46cb6cf11867130a41ea9546dd65688b71f3c2 d6d3f08b0fd998b647a05540cedd11a067b72867
Author: David S. Miller <davem at davemloft.net>
Date:   Mon Jun 29 19:22:31 2009 -0700

    Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6

commit 2bf427b25b79eb7cea27963a66c3d4684cae0e0c
Author: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
Date:   Mon Jun 29 19:20:42 2009 -0700

    ide: fix resume for CONFIG_BLK_DEV_IDEACPI=y
    
    commit 2f0d0fd2a605666d38e290c5c0d2907484352dc4 ("ide-acpi: cleanup
    do_drive_get_GTF()") didn't account for the lack of hwif->acpidata
    check in generic_ide_suspend() [ indirect user of do_drive_get_GTF()
    through ide_acpi_exec_tfs() ] resulting in broken resume when ACPI
    support is enabled but ACPI data is unavailable.
    
    Fix it by adding ide_port_acpi() helper for checking if port needs
    ACPI handling and cleaning generic_ide_{suspend,resume}() to use it
    instead of hiding hwif->acpidata and ide_noacpi checks in IDE ACPI
    helpers (this should help in preventing similar bugs in the future).
    
    While at it:
    - kill superfluous debugging printks in ide_acpi_{get,push}_timing()
    
    Reported-and-tested-by: Etienne Basset <etienne.basset at numericable.fr>
    Also-reported-and-tested-by: Jeff Chua <jeff.chua.linux at gmail.com>
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit ec9c45d456fd7f1e400c75e6c8040d1deb9d4fff
Merge: aa221cb61792b941234ab458020c93ed97810161 59c5fe6d848cae8fd51498d17532f5aad3866f98
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 29 16:18:19 2009 -0700

    Merge master.kernel.org:/home/rmk/linux-2.6-arm
    
    * master.kernel.org:/home/rmk/linux-2.6-arm: (28 commits)
      [ARM] 5562/2: at91: add gpio button support for at91sam9g20ek
      [ARM] 5563/1: at91: at91sam9rlek lcd interface correction
      [ARM] 5565/2: Use PAGE_SIZE and RO_DATA() in link script
      [ARM] 5560/1: Avoid buffer overrun in case of an invalid IRQ
      [ARM] GTA02: build fixes (s3c2410_nand_set usage)
      [ARM] MINI2440: Add missing flash_bbt flat to NAND
      [ARM] s3c2410_defconfig: add MINI2440 machine to build
      [ARM] S3C: Fix S3C24XX build to not include s3c64xx IIS devices
      [ARM] S3C24XX: Fix missing s3c_iis_device.
      [ARM] MINI2440: remove duplicated #include
      [ARM] S3C24XX: Fix spi-bus configuration build errors
      OMAP: Fix IOMEM macro for assembly
      [ARM] S3C: Remove unused CONFIG_DEBUG_S3C_PORT
      [ARM] S3C24XX: Fix use of CONFIG_S3C24XX_PWM
      OMAP2/3: Initialize gpio debounce register
      OMAP: IOMMU: function flush_iotlb_page is not flushing correct entry
      OMAP3: RX51: Use OneNAND sync read / write
      OMAP2/3: gpmc-onenand: correct use of async timings
      OMAP3: DMA: Enable idlemodes for DMA OCP
      OMAP3: SRAM size fix for HS/EMU devices
      ...

commit 051ae7f7344f453616b6b10332d4d8e1d40ed823
Author: Paul Mackerras <paulus at samba.org>
Date:   Mon Jun 29 21:13:21 2009 +1000

    perf_counter tools: Reduce perf stat measurement overhead/skew
    
    Vince Weaver reported a 'perf stat' measurement overhead in the
    count of retired instructions, which can amount to a +6000
    instructions inflated count in the reported count.
    
    At present, perf stat creates its counters on the perf process.  Thus
    the counters count the fork and various other activity in both the
    parent and child, such as the resolver overhead for resolving PLT
    entries for any libc functions that haven't been called before, such
    as execvp.
    
    This reduces the overhead by creating the counters on the child process
    after the fork, using a couple of pipes to synchronize so that the
    child process waits until the parent has created the counters before
    doing the exec.  To eliminate the PLT resolution overhead on calling
    execvp, this does a dummy execvp first which will always fail.
    
    With this, the overhead of executing a program goes down from over
    4800 instructions to about 90 instructions on powerpc (32-bit).
    This was measured with a statically-linked program written in
    assembler which only does the 3 instructions needed to call _exit(0).
    
    Before:
    
    $ perf stat -e 0:1:u ./three
    
     Performance counter stats for './three':
    
               4858  instructions
    
        0.001274523  seconds time elapsed
    
    After:
    
    $ perf stat -e 0:1:u ./three
    
     Performance counter stats for './three':
    
                 92  instructions
    
        0.000468153  seconds time elapsed
    
    Reported-by: Vince Weaver <vince at deater.net>
    Signed-off-by: Paul Mackerras <paulus at samba.org>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <19016.41425.814043.870352 at cargo.ozlabs.ibm.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit aa221cb61792b941234ab458020c93ed97810161
Merge: 2bfdd79eaa0043346e773ba5f6cfd811ea31b73d e6ce3066010a21bde961d8f8cefe0b69cae78a0f
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 29 13:09:39 2009 -0700

    Merge branch 'for-linus' of git://git.infradead.org/users/eparis/notify
    
    * 'for-linus' of git://git.infradead.org/users/eparis/notify:
      fs: allow d_instantiate to be called with negative parent dentry

commit 210ad39fb7ef0bc0494483f517f42524f16bb2a7
Author: Ingo Molnar <mingo at elte.hu>
Date:   Mon Jun 29 21:50:54 2009 +0200

    perf stat: Use percentages for scaling output
    
    Peter expressed a strong preference for percentage based
    display of scaled values - so revert to that from the
    recently introduced multiplication-factor unit.
    
    Reported-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Jaswinder Singh Rajput <jaswinder at kernel.org>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 2bfdd79eaa0043346e773ba5f6cfd811ea31b73d
Merge: bb1e9b844b989fc9a4dfffbf7a064703cda2a6a6 9ea5ca75a2aebb7172094a7d77acf6ff7600cc56
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 29 09:46:12 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
      sound: OSS: mpu401, fix deadlock
      ALSA: hda - Add missing initializations for ALC268 and ALC269
      ALSA: cmi8330: fix MPU-401 PnP init copy&paste bug
      ALSA: hda - Line In for Acer Inspire 6530G model
      sound: oxygen: make mic volume control mono
      MAINTAINERS: Add entry for twl4030 series soc codec driver
      ALSA: lx6464es - configure ethersound io channels
      sound: Use PCI_VDEVICE for CREATIVE and ECTIVA
      sound: Use PCI_VDEVICE
      ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G
      ALSA: hda - Fix acer-aspire-6530g model quirk
      ALSA: hda - Add pin-sense trigger when needed for Realtek codecs
      ALSA: hda - Fix support for Samsung P50 with AD1986A codec
      ALSA: hda - Generalize the pin-detect quirk for Lenovo N100
      ALSA: hda - Simplify AD1986A mixer definitions

commit bb1e9b844b989fc9a4dfffbf7a064703cda2a6a6
Merge: e717f33e989dbe6446547d7ca97489a980056f3c 94e5d714f604d4cb4cb13163f01ede278e69258b
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 29 09:44:44 2009 -0700

    Merge branch 'bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6
    
    * 'bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
      integrity: add ima_counts_put (updated)
      integrity: ima audit hash_exists fix
      integrity: ima mq_open imbalance msg fix

commit e717f33e989dbe6446547d7ca97489a980056f3c
Merge: 1bfd4d586057e7f608501de62bacdc82974c7cfa ff8a4bae459a9b6455504127fcb78fdbc8e50e4c
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 29 09:42:01 2009 -0700

    Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      Revert "x86: cap iomem_resource to addressable physical memory"

commit 1bfd4d586057e7f608501de62bacdc82974c7cfa
Merge: 44b3615b8cb3b016a49eb7ef4236e77a77793cec 1d469c6c38c9deaa1836d2c1955330944719e4ef
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 29 09:41:12 2009 -0700

    Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight
    
    * 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight:
      backlight: Fix tdo24m crash on kmalloc

commit 44b3615b8cb3b016a49eb7ef4236e77a77793cec
Author: Ingo Molnar <mingo at elte.hu>
Date:   Mon Jun 29 10:07:54 2009 +0200

    eeepc-laptop: Fix build failure with HOTPLUG_PCI && !SYSFS
    
    FYI, there's a post-rc1 build regression with certain configs:
    
     drivers/built-in.o: In function `pci_hp_deregister':
     (.text+0xb166): undefined reference to `pci_hp_remove_module_link'
     drivers/built-in.o: In function `pci_hp_deregister':
     (.text+0xb19f): undefined reference to `pci_destroy_slot'
     drivers/built-in.o: In function `__pci_hp_register':
     (.text+0xb583): undefined reference to `pci_create_slot'
     drivers/built-in.o: In function `__pci_hp_register':
     (.text+0xb5b1): undefined reference to `pci_hp_create_module_link'
     make: *** [.tmp_vmlinux1] Error 1
    
    Caused by:
    
    | 2b121bc262fa03c94e653b2d44356c2f86c1bcdc is first bad commit
    | commit 2b121bc262fa03c94e653b2d44356c2f86c1bcdc
    | Date:   Thu Jun 25 13:25:36 2009 +0200
    |
    |     eeepc-laptop: Register as a pci-hotplug device
    
    which changed the driver to use the PCI hotplug infrastructure, but
    didn't do a good job on the Kconfig rules.
    
    Signed-off-by: Ingo Molnar <mingo at elte.hu>
    Acked-by: Randy Dunlap <randy.dunlap at oracle.com>
    Acked-by: Len Brown <len.brown at intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit aef29bc2603014cb28dfe39bab8d888546fe18e7
Author: Alan Cox <alan at linux.intel.com>
Date:   Mon Jun 29 15:21:47 2009 +0100

    tty: Fix the leak in tty_ldisc_release
    
    Currently we reinit the ldisc on final tty close which is what the old code
    did to ensure that if the device retained its termios settings then it had the
    right ldisc. tty_ldisc_reinit does that but also leaves us with the reset
    ldisc reference which is then leaked.
    
    At this point we know the port will be recycled so we can kill the ldisc
    off completely rather than try and add another ldisc free up when the kref
    count hits zero.
    
    At this point it is safe to keep the ldisc closed as tty_ldisc waiting
    methods are only used from the user side, and as the final close we are
    the last such reference. Interrupt/driver side methods will always use the
    non wait version and get back a NULL.
    
    Found with kmemleak and investigated/identified by Catalin Marinas.
    
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 12de38b186c2af97bf0b4a1f907f766df46b1def
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Mon Jun 29 17:13:55 2009 +0100

    kmemleak: Inform kmemleak about pid_hash
    
    Kmemleak does not track alloc_bootmem calls but the pid_hash allocated
    in pidhash_init() would need to be scanned as it contains pointers to
    struct pid objects.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit b6e687221eb840bacd4d4a991e5f8e7ed3ae910a
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Mon Jun 29 17:13:57 2009 +0100

    kmemleak: Do not warn if an unknown object is freed
    
    vmap'ed memory blocks are not tracked by kmemleak (yet) but they may be
    released with vfree() which is tracked. The corresponding kmemleak
    warning is only enabled in debug mode. Future patch will add support for
    ioremap and vmap.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit 17bb9e0d906b625f86e9d31740bb1c35bc0f63d7
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Mon Jun 29 17:13:56 2009 +0100

    kmemleak: Do not report new leaked objects if the scanning was stopped
    
    If the scanning was stopped with a signal, it is possible that some
    objects are left with a white colour (potential leaks) and reported. Add
    a check to avoid reporting such objects.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit 9ea5ca75a2aebb7172094a7d77acf6ff7600cc56
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Mon Jun 29 18:03:34 2009 +0200

    sound: OSS: mpu401, fix deadlock
    
    mpu401_chk_version is called with a spin lock already held. Don't take it
    again.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 580c9d373ce7ccfbc5227e985fca761f8f039af3
Merge: e2cb0d95ba9fbd4603375032d37e9c0e288897b8 0d7392e54435476243ce08ba57745ab52d639cbb
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 29 18:05:09 2009 +0200

    Merge branch 'fix/pci-vdevice' into for-linus
    
    * fix/pci-vdevice:
      sound: Use PCI_VDEVICE for CREATIVE and ECTIVA
      sound: Use PCI_VDEVICE

commit e2cb0d95ba9fbd4603375032d37e9c0e288897b8
Merge: 7d489c460ee798be16ca135276fe23262baf038c 14744d7da2e6ab5c6d8e82c84dc280e3c0dd8552
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 29 18:05:07 2009 +0200

    Merge branch 'fix/oxygen' into for-linus
    
    * fix/oxygen:
      sound: oxygen: make mic volume control mono

commit 7d489c460ee798be16ca135276fe23262baf038c
Merge: 0baddbc895a8646b8ce28473897cfb7bb212d4ef c2a30d711852e4f39c8a79135b3caa701f7a8e02
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 29 18:05:06 2009 +0200

    Merge branch 'fix/misc' into for-linus
    
    * fix/misc:
      ALSA: cmi8330: fix MPU-401 PnP init copy&paste bug

commit 0baddbc895a8646b8ce28473897cfb7bb212d4ef
Merge: cdae219cec501ae4fba60e92c7a2a3aad1625b8d 7e895cfaad51c862932ea7db0c428761076412e5
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 29 18:05:05 2009 +0200

    Merge branch 'fix/lx6464es' into for-linus
    
    * fix/lx6464es:
      ALSA: lx6464es - configure ethersound io channels

commit cdae219cec501ae4fba60e92c7a2a3aad1625b8d
Merge: ae77b4ed4fd11e67f8b02ca7ee882a636ee20a97 c912e7a58054304575fe88574c776be7e684098e
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 29 18:05:04 2009 +0200

    Merge branch 'fix/hda-samsung-p50' into for-linus
    
    * fix/hda-samsung-p50:
      ALSA: hda - Fix support for Samsung P50 with AD1986A codec
      ALSA: hda - Generalize the pin-detect quirk for Lenovo N100
      ALSA: hda - Simplify AD1986A mixer definitions

commit ae77b4ed4fd11e67f8b02ca7ee882a636ee20a97
Merge: 10121a12e2380fb34b6e646a8e367add06d036c3 1d955ebd4db7961dc4e772a23288b3d5c6f191be
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 29 18:05:02 2009 +0200

    Merge branch 'fix/hda' into for-linus
    
    * fix/hda:
      ALSA: hda - Add missing initializations for ALC268 and ALC269
      ALSA: hda - Line In for Acer Inspire 6530G model
      ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G
      ALSA: hda - Fix acer-aspire-6530g model quirk
      ALSA: hda - Add pin-sense trigger when needed for Realtek codecs

commit dfd06fe8246c0425f8d6850b8e2c872b0d691ec3
Author: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
Date:   Fri Jun 19 17:02:09 2009 +0400

    nl802154: add module license and description
    
    Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>

commit 932c1329acebc03ef5efa3647c9c3a967b59d0c4
Author: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
Date:   Fri Jun 19 17:00:08 2009 +0400

    nl802154: fix Oops in ieee802154_nl_get_dev
    
    ieee802154_nl_get_dev() lacks check for the existance of the device
    that was returned by dev_get_XXX, thus resulting in Oops for non-existing
    devices. Fix it.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>

commit e0af6062aa4f89081afb8a1a4269605775d354de
Author: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
Date:   Thu Jun 18 13:05:49 2009 +0400

    MAINTAINERS: ieee802154 lists are moderated for non-subscribers.
    
    Note that our mailing list is moderated for non-subscribers.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>

commit e6ce3066010a21bde961d8f8cefe0b69cae78a0f
Author: Jeremy Kerr <jk at ozlabs.org>
Date:   Mon Jun 29 14:31:58 2009 +0800

    fs: allow d_instantiate to be called with negative parent dentry
    
    The new fsnotify infrastructure (starting at 90586523) causes an oops in
    spufs, where we populate a directory with files before instantiating the
    directory itself. The new changes seem to have introduced an assumption
    that a dentry's parent will be positive when instantiating.
    
    This change makes it once again possible to d_instantiate a dentry
    with a negative parent, and brings __fsnotify_d_instantiate() into
    line with inotify_d_instantiate(), which already has this NULL check.
    
    Signed-off-by: Jeremy Kerr <jk at ozlabs.org>
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit 875764de6f0ddb23d270c29357d5a339232a0488
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 21:20:51 2009 +0100

    intel-iommu: Simplify __intel_alloc_iova()
    
    There's no need for the separate iommu_alloc_iova() function, and
    certainly not for it to be global. Remove the underscores while we're at
    it.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 6f6a00e40aa3fdd3b29c30e3ef1fc9690506bc03
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 20:38:49 2009 +0100

    intel-iommu: Performance improvement for domain_pfn_mapping()
    
    As with dma_pte_clear_range(), don't keep flushing a single PTE at a
    time. And also micro-optimise the setting of PTE values rather than
    using the helper functions to do all the masking.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 310a5ab93cb4ce29367238f682affd9ac352f4d0
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 18:52:20 2009 +0100

    intel-iommu: Performance improvement for dma_pte_clear_range()
    
    It's a bit silly to repeatedly call domain_flush_cache() for each PTE
    individually, as we clear it. Instead, batch them up and flush a whole
    range at a time. We might as well refrain from recalculating the PTE
    address from scratch each time round the loop too.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit c5395d5c4a82159889cb650de93b591ea51d8c56
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 16:35:56 2009 +0100

    intel-iommu: Clean up iommu_domain_identity_map()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 1a4a45516d7a57de0691352d899d7008f2e090d1
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 16:00:42 2009 +0100

    intel-iommu: Remove last use of PHYSICAL_PAGE_MASK, for reserving PCI BARs
    
    This is fairly broken anyway -- it doesn't take hotplug into account.
    We should probably be checking page_is_ram() instead.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 03d6a2461ab1704c171ce21081c5022378ef7a91
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 15:33:46 2009 +0100

    intel-iommu: Make iommu_flush_iotlb_psi() take pfn as argument
    
    Most of its callers are having to shift for themselves anyway, so we might
    as well do it in iommu_flush_iotlb_psi().
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 88cb6a7424d9465faf6caaaadff5af0766c93991
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 15:03:06 2009 +0100

    intel-iommu: Change aligned_size() to aligned_nrpages()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit b536d24d212c994a7d98469ea3a8891573d45fd4
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 14:49:31 2009 +0100

    intel-iommu: Clean up intel_map_sg(), remove domain_page_mapping()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit ad05122162b67f64d5a1c6d35e001f7a88619b88
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 14:22:28 2009 +0100

    intel-iommu: Use domain_pfn_mapping() in intel_iommu_map_range()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 0ab36de274ab094c3992b50c9c48c5c89072ec94
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 14:01:43 2009 +0100

    intel-iommu: Use domain_pfn_mapping() in __intel_map_single()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 61df744314079e8cb8cdec75f517cf0e704e41ef
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 11:55:58 2009 +0100

    intel-iommu: Introduce domain_pfn_mapping()
    
    ... and use it in the trivial cases; the other callers want individual
    (and bisectable) attention, since I screwed them up the first time...
    
    Make the BUG_ON() happen on too-large virtual address rather than
    physical address, too. That's the one we care about.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 1c5a46ed49e37f56f8aa9000bb1c2ac59670c372
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 10:53:37 2009 +0100

    intel-iommu: Clean up address handling in domain_page_mapping()
    
    No more masking and alignment; just use pfns.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit b026fd28ea23af24a3eea6e5be3f3d0193a8e87d
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 10:37:25 2009 +0100

    intel-iommu: Change addr_to_dma_pte() to pfn_to_dma_pte()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit d6d3f08b0fd998b647a05540cedd11a067b72867
Author: Jan Engelhardt <jengelh at medozas.de>
Date:   Mon Jun 29 14:31:46 2009 +0200

    netfilter: xtables: conntrack match revision 2
    
    As reported by Philip, the UNTRACKED state bit does not fit within
    the 8-bit state_mask member. Enlarge state_mask and give status_mask
    a few more bits too.
    
    Reported-by: Philip Craig <philipc at snapgear.com>
    References: http://markmail.org/thread/b7eg6aovfh4agyz7
    Signed-off-by: Jan Engelhardt <jengelh at medozas.de>
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 163cc52ccd2cc5c5ae4e1c886f6fde8547feed2a
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 00:51:17 2009 +0100

    intel-iommu: Clean up intel_iommu_unmap_range()
    
    Use unaligned address for domain->max_addr. That algorithm isn't ideal
    anyway -- we should probably just look at the last iova in the tree.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit d794dc9b302c2781c571c10dedb8094e223d31b8
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sun Jun 28 00:27:49 2009 +0100

    intel-iommu: Make dma_pte_free_pagetable() take pfns as argument
    
    With some cleanup of intel_unmap_page(), intel_unmap_sg() and
    vm_domain_exit() to no longer play with 64-bit addresses.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 6660c63a79a639b86e3a709e25a8c4fc3ab24770
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 22:41:00 2009 +0100

    intel-iommu: Make dma_pte_free_pagetable() use pfns
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 8a3af79361e85db6fec4173ef1916322471c19e3
Author: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
Date:   Mon Jun 29 14:28:27 2009 +0200

    netfilter: headers_check fix: linux/netfilter/xt_osf.h
    
    fix the following 'make headers_check' warnings:
    
      usr/include/linux/netfilter/xt_osf.h:40: found __[us]{8,16,32,64} type without #include <linux/types.h>
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 595badf5d65d50300319e6178e6df005ea501f70
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 22:09:11 2009 +0100

    intel-iommu: Make dma_pte_clear_range() take pfns as argument
    
    Noting that this is now an _inclusive_ range.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 04b18e65dd5a3e544f07f4bcfa8fb52704a1833b
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 19:15:01 2009 +0100

    intel-iommu: Make dma_pte_clear_range() use pfns
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit a3a9f79e361e864f0e9d75ebe2a0cb43d17c4272
Author: Patrick McHardy <kaber at trash.net>
Date:   Mon Jun 29 14:07:56 2009 +0200

    netfilter: tcp conntrack: fix unacknowledged data detection with NAT
    
    When NAT helpers change the TCP packet size, the highest seen sequence
    number needs to be corrected. This is currently only done upwards, when
    the packet size is reduced the sequence number is unchanged. This causes
    TCP conntrack to falsely detect unacknowledged data and decrease the
    timeout.
    
    Fix by updating the highest seen sequence number in both directions after
    packet mangling.
    
    Tested-by: Krzysztof Piotr Oledzki <ole at ans.pl>
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 66eae8469e4e4ba6f4ca7ef82103c78f6d645583
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 19:00:32 2009 +0100

    intel-iommu: Don't just mask out too-big physical addresses; BUG() instead
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit a75f7cf94f01717c5103138319b96752ee2a2be9
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 17:44:39 2009 +0100

    intel-iommu: Make dma_pte_clear_one() take pfn not address
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 90dcfb5eb2fd427b16135a14f176a6902750b6b4
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 17:14:59 2009 +0100

    intel-iommu: Change dma_addr_level_pte() to dma_pfn_level_pte()
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 77dfa56c94d2855a25ff552b74980a5538e129f8
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 16:40:08 2009 +0100

    intel-iommu: Change address_level_offset() to pfn_level_offset()
    
    We're shifting the inputs for now, but that'll change...
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit dd4e831960e4f0214480fa96a53ca9bb7dd04927
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Sat Jun 27 16:21:20 2009 +0100

    intel-iommu: Change dma_set_pte_addr() to dma_set_pte_pfn()
    
    Add some helpers for converting between VT-d and normal system pfns,
    since system pages can be larger than VT-d pages.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit c7ab48d2acaf959e4d59c3f55d12fdb7ca9afd7c
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Fri Jun 26 19:10:36 2009 +0100

    intel-iommu: Clean up identity mapping code, remove CONFIG_DMAR_GFX_WA
    
    There's no need for the GFX workaround now we have 'iommu=pt' for the
    cases where people really care about performance. There's no need to
    have a special case for just one type of device.
    
    This also speeds up the iommu=pt path and reduces memory usage by
    setting up the si_domain _once_ and then using it for all devices,
    rather than giving each device its own private page tables.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit b213203e475212a69ad6fedfb73464087e317148
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Fri Jun 26 18:50:28 2009 +0100

    intel-iommu: Create new iommu_domain_identity_map() function
    
    We'll want to do this to a _domain_ (the si_domain) rather than a PCI device.
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit bf92df30df909710c498d05620e2df1be1ef779b
Author: Yu Zhao <yu.zhao at intel.com>
Date:   Mon Jun 29 11:31:45 2009 +0800

    intel-iommu: Only avoid flushing device IOTLB for domain ID 0 in caching mode
    
    In caching mode, domain ID 0 is reserved for non-present to present
    mapping flush. Device IOTLB doesn't need to be flushed in this case.
    
    Previously we were avoiding the flush for domain zero, even if the IOMMU
    wasn't in caching mode and domain zero wasn't special.
    
    Signed-off-by: Yu Zhao <yu.zhao at intel.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 59c5fe6d848cae8fd51498d17532f5aad3866f98
Author: Nicolas Ferre <nicolas.ferre at atmel.com>
Date:   Mon Jun 29 12:11:50 2009 +0100

    [ARM] 5562/2: at91: add gpio button support for at91sam9g20ek
    
    This adds input keyboard gpio support on at91sam9g20ek board.
    It adds button 3 and 4.
    
    Signed-off-by: Nicolas Ferre <nicolas.ferre at atmel.com>
    Acked-by: Andrew Victor <linux at maxim.org.za>
    Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>

commit 1d955ebd4db7961dc4e772a23288b3d5c6f191be
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 29 11:33:53 2009 +0200

    ALSA: hda - Add missing initializations for ALC268 and ALC269
    
    During the changes to clean up / fix the realtek codec initialization
    routines in commit 4a79ba34cada6a5a4ee86ed53aa8a73ba1e6fc51,
    I forgot to add the check for ALC268 and ALC269.
    This resulted in the missing EAPD and COEF setup for these codecs.
    
    This patch adds the missing checks for these codecs.
    
    Reference: bko#13633
    	http://bugzilla.kernel.org/show_bug.cgi?id=13633
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 4078c444cf667f018c3fc7ebf141131a2b7c9480
Author: Yinghai Lu <yinghai at kernel.org>
Date:   Mon Jun 29 00:41:11 2009 -0700

    perf_counter, x86: Update x86_pmu after WARN()
    
    The print out should read the value before changing the value.
    
    Signed-off-by: Yinghai Lu <yinghai at kernel.org>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <4A487017.4090007 at kernel.org>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit ec87805c63a96e8863385d79c864801a572a4ab8
Author: Kuninori Morimoto <morimoto.kuninori at renesas.com>
Date:   Mon Jun 29 07:40:00 2009 +0000

    sh: ms7724se: Enable sh_eth in defconfig.
    
    Signed-off-by: Kuninori Morimoto <morimoto.kuninori at renesas.com>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 9a660a6e1a0ebef72cf792583777234483a40022
Author: Joe Perches <joe at perches.com>
Date:   Sun Jun 28 16:26:13 2009 +0000

    arch/sh/boards/mach-se/7206/io.c: Remove unnecessary semicolons
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit c2a30d711852e4f39c8a79135b3caa701f7a8e02
Author: Ondrej Zary <linux at rainbow-software.org>
Date:   Sat Jun 27 16:17:08 2009 +0200

    ALSA: cmi8330: fix MPU-401 PnP init copy&paste bug
    
    Fix copy&paste bug in PnP MPU-401 initialization.
    
    Signed-off-by: Ondrej Zary <linux at rainbow-software.org>
    Cc: <stable at kernel.org>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 684a88429c5ab04d8b1894de9a1ef62de6f601b7
Author: Tony Vroon <tony at linx.net>
Date:   Fri Jun 26 09:27:50 2009 +0100

    ALSA: hda - Line In for Acer Inspire 6530G model
    
    The Line In connector is set up as PIN_IN by default, using
    VREF_HIZ. It is connected to both ADCs, so add it to both
    input selectors.
    Also add the ability to use the input mix (on a SoundBlaster
    one would call this "What You Hear").
    
    Signed-off-by: Tony Vroon <tony at linx.net>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 52989765629e7d182b4f146050ebba0abf2cb0b7
Merge: 9a8fb9ee7a80f5280388b98dc7636d537866fa72 bd46cb6cf11867130a41ea9546dd65688b71f3c2
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 19:57:31 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
      be2net: Fix to avoid a crash seen on PPC with LRO and Jumbo frames.
      gro: Flush GRO packets in napi_disable_pending path
      inet: Call skb_orphan before tproxy activates
      mac80211: Use rcu_barrier() on unload.
      sunrpc: Use rcu_barrier() on unload.
      bridge: Use rcu_barrier() instead of syncronize_net() on unload.
      ipv6: Use rcu_barrier() on module unload.
      decnet: Use rcu_barrier() on module unload.
      sky2: Fix checksum endianness
      mdio add missing GPL flag
      sh_eth: remove redundant test on unsigned
      fsl_pq_mdio: Fix fsl_pq_mdio to work with modules
      ipv6: avoid wraparound for expired preferred lifetime
      tcp: missing check ACK flag of received segment in FIN-WAIT-2 state
      atl1*: add device_set_wakeup_enable to atl1*_set_wol
      Phonet: generate Netlink RTM_DELADDR when destroying a device
      Phonet: publicize the Netlink notification function
      Revert "veth: prevent oops caused by netdev destructor"
      cpmac: fix compilation failure introduced with netdev_ops conversion
      ipsec: Fix name of CAST algorithm

commit bd46cb6cf11867130a41ea9546dd65688b71f3c2
Author: Ajit Khaparde <ajitk at serverengines.com>
Date:   Fri Jun 26 02:51:07 2009 +0000

    be2net: Fix to avoid a crash seen on PPC with LRO and Jumbo frames.
    
    While testing the driver on PPC, we ran into a crash with LRO, Jumbo frames.
    With CONFIG_PPC_64K_PAGES configured (a default in PPC), MAX_SKB_FRAGS drops to 3 and we were crossing the array limits on skb_shinfo(skb)->frags[].
    Now we coalesce the frags from the same physical page into one slot in
    skb_shinfo(skb)->frags[] and go to the next index when the frag is from
    
    different physical page.
    
    This patch is against the net-2.6 tree.
    
    Signed-off-by: Ajit Khaparde <ajitk at serverengines.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 94e5d714f604d4cb4cb13163f01ede278e69258b
Author: Mimi Zohar <zohar at linux.vnet.ibm.com>
Date:   Fri Jun 26 14:05:27 2009 -0400

    integrity: add ima_counts_put (updated)
    
    This patch fixes an imbalance message as reported by J.R. Okajima.
    The IMA file counters are incremented in ima_path_check. If the
    actual open fails, such as ETXTBSY, decrement the counters to
    prevent unnecessary imbalance messages.
    
    Reported-by: J.R. Okajima <hooanon05 at yahoo.co.jp>
    Signed-off-by: Mimi Zohar <zohar at us.ibm.com>
    Signed-off-by: James Morris <jmorris at namei.org>

commit 79b854c549c62c54fa27f87e04465c01db889f8d
Author: Mimi Zohar <zohar at linux.vnet.ibm.com>
Date:   Fri Jun 26 11:25:00 2009 -0400

    integrity: ima audit hash_exists fix
    
    Audit the file name, not the template name.
    
    Signed-off-by: Mimi Zohar <zohar at us.ibm.com>
    Signed-off-by: James Morris <jmorris at namei.org>

commit 46690f3718d95e9bb712b6f2b5c869f8494521de
Author: Mimi Zohar <zohar at linux.vnet.ibm.com>
Date:   Fri Jun 26 11:24:05 2009 -0400

    integrity: ima mq_open imbalance msg fix
    
    This patch fixes an imbalance message as reported by Sanchin Sant.
    As we don't need to measure the message queue, just increment the
    counters.
    
    Reported-by: Sanchin Sant <sanchinp at in.ibm.com>
    Signed-off-by: Mimi Zohar <zohar at us.ibm.com>
    Acked-by: Serge Hallyn <serue at us.ibm.com>
    Signed-off-by: James Morris <jmorris at namei.org>

commit 9a8fb9ee7a80f5280388b98dc7636d537866fa72
Merge: 4142ac678a864972ce1dfad6d9cb22f075fee5de bde892232532ed522bb56b04576d07f91e59b3c7
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 11:12:52 2009 -0700

    Merge branch 'kvm-updates/2.6.31' of git://git.kernel.org/pub/scm/virt/kvm/kvm
    
    * 'kvm-updates/2.6.31' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      KVM: shut up uninit compiler warning in paging_tmpl.h
      KVM: Ignore reads to K7 EVNTSEL MSRs
      KVM: VMX: Handle vmx instruction vmexits
      KVM: s390: Allow stfle instruction in the guest
      KVM: kvm/x86_emulate.c toggle_interruptibility() should be static
      KVM: ia64: fix ia64 build due to missing kallsyms_lookup() and double export
      KVM: protect concurrent make_all_cpus_request
      KVM: MMU: Allow 4K ptes with bit 7 (PAT) set
      KVM: Fix dirty bit tracking for slots with large pages

commit 4142ac678a864972ce1dfad6d9cb22f075fee5de
Merge: a679128d30d0303bbf5cac839c8f6f45793ea775 f0a71eb820596bd8f6abf64beb4cb181edaa2341
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 11:08:09 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
      cifs: fix fh_mutex locking in cifs_reopen_file

commit a679128d30d0303bbf5cac839c8f6f45793ea775
Merge: 8326e284f8deb75eee3d32b973464dd96e120843 7e25a2422987a37729706b18583d177966919d2a
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 11:06:11 2009 -0700

    Merge git://git.infradead.org/iommu-2.6
    
    * git://git.infradead.org/iommu-2.6:
      intel-iommu: fix Identity Mapping to be arch independent

commit 8326e284f8deb75eee3d32b973464dd96e120843
Merge: 187dd317f0169142e4adf6263852f93c3b6f6a3c e888d7facd1f1460a638151036d15b6cfb3ccc74
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 11:05:28 2009 -0700

    Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      x86, delay: tsc based udelay should have rdtsc_barrier
      x86, setup: correct include file in <asm/boot.h>
      x86, setup: Fix typo "CONFIG_x86_64" in <asm/boot.h>
      x86, mce: percpu mcheck_timer should be pinned
      x86: Add sysctl to allow panic on IOCK NMI error
      x86: Fix uv bau sending buffer initialization
      x86, mce: Fix mce resume on 32bit
      x86: Move init_gbpages() to setup_arch()
      x86: ensure percpu lpage doesn't consume too much vmalloc space
      x86: implement percpu_alloc kernel parameter
      x86: fix pageattr handling for lpage percpu allocator and re-enable it
      x86: reorganize cpa_process_alias()
      x86: prepare setup_pcpu_lpage() for pageattr fix
      x86: rename remap percpu first chunk allocator to lpage
      x86: fix duplicate free in setup_pcpu_remap() failure path
      percpu: fix too lazy vunmap cache flushing
      x86: Set cpu_llc_id on AMD CPUs

commit 187dd317f0169142e4adf6263852f93c3b6f6a3c
Merge: 9b71272b6ad4966481d73e6abf3ae4bbc3bdabd5 507e123151149e578c9aae33eb876c49824da5f8
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 11:05:16 2009 -0700

    Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      timer stats: Optimize by adding quick check to avoid function calls
      timers: Fix timer_migration interface which accepts any number as input

commit 9b71272b6ad4966481d73e6abf3ae4bbc3bdabd5
Merge: 61abfd2df8aa43a137ae58446dd0638a2385586e 0296e4254f3318e0dcad9706fa1daf8e5addc1e9
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 11:05:04 2009 -0700

    Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      ftrace: Fix the output of profile
      ring-buffer: Make it generally available
      ftrace: Remove duplicate newline
      tracing: Fix trace_buf_size boot option
      ftrace: Fix t_hash_start()
      ftrace: Don't manipulate @pos in t_start()
      ftrace: Don't increment @pos in g_start()
      tracing: Reset iterator in t_start()
      trace_stat: Don't increment @pos in seq start()
      tracing_bprintk: Don't increment @pos in t_start()
      tracing/events: Don't increment @pos in s_start()

commit 61abfd2df8aa43a137ae58446dd0638a2385586e
Merge: 4075ea8c54a7506844a69f674990241e7766357b a1dd8c617217322614f0465ae347895c4b58e1ab
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 28 11:02:32 2009 -0700

    Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
    
    * 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
      leds: Futher document blink_set
      leds: Add options to have GPIO LEDs start on or keep their state
      leds: LED driver for National Semiconductor LP3944 Funlight Chip
      leds: pca9532 - Indent using tabs, not spaces.
      leds: Remove an orphan Kconfig entry
      leds: Further document parameters for blink_set()
      leds: alix-leds2 fixed for Award BIOS
      leds: leds-gpio - fix a section mismatch
      leds: add the sysfs interface into the leds-bd2802 driver for changing wave pattern and led current.
      leds: change the license information
      leds: fix led-bd2802 errors while resuming

commit c3043569dc8fbe9228b76174f15d1a7152c48a20
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Sat Jun 27 23:49:09 2009 +0530

    perf stat: Micro-optimize the code: memcpy is only required if no event is selected and !null_run
    
    Set attrs and nr_counters if no event is selected and !null_run.
    
    Setting of attrs should depend on number of counters,
    so we need to memcpy only for sizeof(default_attrs)
    
    Also set nr_counters as ARRAY_SIZE(default_attrs) in place of
    hardcoded value.
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1246126749.32198.16.camel at hpdv5.satnam>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit bde892232532ed522bb56b04576d07f91e59b3c7
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Wed May 20 09:59:35 2009 +0530

    KVM: shut up uninit compiler warning in paging_tmpl.h
    
    Dixes compilation warning:
      CC      arch/x86/kernel/io_delay.o
     arch/x86/kvm/paging_tmpl.h: In function ‘paging64_fetch’:
     arch/x86/kvm/paging_tmpl.h:279: warning: ‘sptep’ may be used uninitialized in this function
     arch/x86/kvm/paging_tmpl.h: In function ‘paging32_fetch’:
     arch/x86/kvm/paging_tmpl.h:279: warning: ‘sptep’ may be used uninitialized in this function
    
    warning is bogus (always have a least one level), but need to shut the compiler
    up.
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit 9e6996240afcbe61682eab8eeaeb65c34333164d
Author: Amit Shah <amit.shah at redhat.com>
Date:   Mon Jun 15 13:25:34 2009 +0530

    KVM: Ignore reads to K7 EVNTSEL MSRs
    
    In commit 7fe29e0faacb650d31b9e9f538203a157bec821d we ignored the
    reads to the P6 EVNTSEL MSRs. That fixed crashes on Intel machines.
    
    Ignore the reads to K7 EVNTSEL MSRs as well to fix this on AMD
    hosts.
    
    This fixes Kaspersky antivirus crashing Windows guests on AMD hosts.
    
    Signed-off-by: Amit Shah <amit.shah at redhat.com>
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit e3c7cb6ad7191e92ba89d00a7ae5f5dd1ca0c214
Author: Avi Kivity <avi at redhat.com>
Date:   Tue Jun 16 14:19:52 2009 +0300

    KVM: VMX: Handle vmx instruction vmexits
    
    IF a guest tries to use vmx instructions, inject a #UD to let it know the
    instruction is not implemented, rather than crashing.
    
    This prevents guest userspace from crashing the guest kernel.
    
    Cc: stable at kernel.org
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit ef50f7ac7e234f9696555e41eab3de69c3d86166
Author: Christian Borntraeger <borntraeger at de.ibm.com>
Date:   Tue Jun 23 17:24:07 2009 +0200

    KVM: s390: Allow stfle instruction in the guest
    
    2.6.31-rc introduced an architecture level set checker based on facility
    bits. e.g. if the kernel is compiled to run only on z9, several facility
    bits are checked very early and the kernel refuses to boot if a z9 specific
    facility is missing.
    Until now kvm on s390 did not implement the store facility extended (STFLE)
    instruction. A 2.6.31-rc kernel that was compiled for z9 or higher did not
    boot in kvm. This patch implements stfle.
    
    This patch should go in before 2.6.31.
    
    Signed-off-by: Christian Borntraeger <borntraeger at de.ibm.com>
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit a3f9d3981cd82d65232b733eb792382237d686bd
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Thu Jun 18 16:53:25 2009 +0530

    KVM: kvm/x86_emulate.c toggle_interruptibility() should be static
    
    toggle_interruptibility() is used only by same file, it should be static.
    
    Fixed following sparse warning :
    
      arch/x86/kvm/x86_emulate.c:1364:6: warning: symbol 'toggle_interruptibility' was not declared. Should it be static?
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit ffdfa071bd6fa8f5e5964569bef41e067540d424
Author: Jes Sorensen <jes at sgi.com>
Date:   Wed Jun 17 11:08:08 2009 +0200

    KVM: ia64: fix ia64 build due to missing kallsyms_lookup() and double export
    
    Fix problem with double export of certain symbols from vsprintf.c
    which we do not wish to export from the kvm-intel.ko module.
    
    In addition, we do not have access to kallsyms_lookup() from the
    module, so make sure to #undef CONFIG_KALLSYMS
    
    Signed-off-by: Jes Sorensen <jes at sgi.com>
    Acked-by: Xiantao Zhang <xiantao.zhang at intel.com>
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit 84261923d3dddb766736023bead6fa07b7e218d5
Author: Marcelo Tosatti <mtosatti at redhat.com>
Date:   Wed Jun 17 10:53:47 2009 -0300

    KVM: protect concurrent make_all_cpus_request
    
    make_all_cpus_request contains a race condition which can
    trigger false request completed status, as follows:
    
    CPU0                                              CPU1
    
    if (test_and_set_bit(req,&vcpu->requests))
       ....                                        	   if (test_and_set_bit(req,&vcpu->requests))
       ..                                                  return
    proceed to smp_call_function_many(wait=1)
    
    Use a spinlock to serialize concurrent CPUs.
    
    Cc: stable at kernel.org
    Signed-off-by: Andrea Arcangeli <aarcange at redhat.com>
    Signed-off-by: Marcelo Tosatti <mtosatti at redhat.com>
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit 29a4b9333bf9ffef12b3dd7cbf2e3dbe01152968
Author: Avi Kivity <avi at redhat.com>
Date:   Tue May 19 13:29:27 2009 +0300

    KVM: MMU: Allow 4K ptes with bit 7 (PAT) set
    
    Bit 7 is perfectly legal in the 4K page leve; it is used for the PAT.
    
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit e244584fe3a5c20deddeca246548ac86dbc6e1d1
Author: Izik Eidus <ieidus at redhat.com>
Date:   Wed Jun 10 19:23:24 2009 +0300

    KVM: Fix dirty bit tracking for slots with large pages
    
    When slot is already allocated and being asked to be tracked we need
    to break the large pages.
    
    This code flush the mmu when someone ask a slot to start dirty bit
    tracking.
    
    Cc: stable at kernel.org
    Signed-off-by: Izik Eidus <ieidus at redhat.com>
    Signed-off-by: Avi Kivity <avi at redhat.com>

commit c276aca46d26aa2347320096f8ecdf5016795c14
Author: vimal singh <vimalsingh at ti.com>
Date:   Sat Jun 27 11:07:06 2009 +0530

    mtd: nand: fix build failure and incorrect return from omap_wait()
    
    We need to include jiffies.h manually in some cases, and the status
    returned from omap_wait() was broken in two separate ways.
    
    Also add cond_resched() to the loop.
    
    Signed-off-by: Vimal Singh <vimalsingh at ti.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit ff8a4bae459a9b6455504127fcb78fdbc8e50e4c
Author: H. Peter Anvin <hpa at zytor.com>
Date:   Sat Jun 27 12:22:27 2009 -0700

    Revert "x86: cap iomem_resource to addressable physical memory"
    
    This reverts commit 95ee14e4379c5e19c0897c872350570402014742.
    Mikael Petterson <mikepe at it.uu.se> reported that at least one of his
    systems will not boot as a result.  We have ruled out the detection
    algorithm malfunctioning, so it is not a matter of producing the
    incorrect bitmasks; rather, something in the application of them
    fails.
    
    Revert the commit until we can root cause and correct this problem.
    
    -stable team: this means the underlying commit should be rejected.
    
    Reported-and-isolated-by: Mikael Petterson <mikpe at it.uu.se>
    Signed-off-by: H. Peter Anvin <hpa at zytor.com>
    LKML-Reference: <200906261559.n5QFxJH8027336 at pilspetsen.it.uu.se>
    Cc: stable at kernel.org
    Cc: Grant Grundler <grundler at parisc-linux.org>

commit f0a71eb820596bd8f6abf64beb4cb181edaa2341
Author: Jeff Layton <jlayton at redhat.com>
Date:   Sat Jun 27 07:04:55 2009 -0400

    cifs: fix fh_mutex locking in cifs_reopen_file
    
    Fixes a regression caused by commit a6ce4932fbdbcd8f8e8c6df76812014351c32892
    
    When this lock was converted to a mutex, the locks were turned into
    unlocks and vice-versa.
    
    Signed-off-by: Jeff Layton <jlayton at redhat.com>
    Acked-by: Shirish Pargaonkar <shirishp at us.ibm.com>
    Cc: Stable Tree <stable at kernel.org>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit a222ad1a4b2e3ca177a538482c99c519c1ce94d1
Author: Karen Xie <kxie at chelsio.com>
Date:   Fri Jun 26 15:17:29 2009 -0700

    [SCSI] cxgb3i: fix connection error when vlan is enabled
    
    There is a bug when VLAN is configured on the cxgb3 interface, the iscsi
    conn. would be denied with message "cxgb3i: NOT going through cxgbi device."
    
    This patch adds code to get the real egress net_device when vlan is configured.
    
    Signed-off-by: Karen Xie <kxie at chelsio.com>
    Reviewed-by: Mike Christie <michaelc at cs.wisc.edu>
    Signed-off-by: James Bottomley <James.Bottomley at HansenPartnership.com>

commit 6e750a8fc009fd0ae98704525d1d8e80d60e8cc9
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Sat Jun 27 03:02:07 2009 +0530

    perf stat: Improve output
    
    Increase size for event name to handle bigger names like
    'L1-d$-prefetch-misses'
    
    Changed scaled counters from percentage to a multiplicative
    factor because the latter is more expressive.
    
    Also aligned the scaling factor, otherwise sometimes it looks
    like:
    
                384  iTLB-load-misses           (4.74x scaled)
             452029  branch-loads               (8.00x scaled)
               5892  branch-load-misses         (20.39x scaled)
             972315  iTLB-loads                 (3.24x scaled)
    
    Before:
             150708  L1-d$-stores          (scaled from 23.57%)
             428804  L1-d$-prefetches      (scaled from 23.47%)
             314446  L1-d$-prefetch-misses  (scaled from 23.42%)
          252626137  L1-i$-loads           (scaled from 23.24%)
            5297550  dTLB-load-misses      (scaled from 23.96%)
          106992392  branch-loads          (scaled from 23.67%)
            5239561  branch-load-misses    (scaled from 23.43%)
    
    After:
            1731713  L1-d$-loads               (  14.25x scaled)
              44241  L1-d$-prefetches          (   3.88x scaled)
              21076  L1-d$-prefetch-misses     (   3.40x scaled)
            5789421  L1-i$-loads               (   3.78x scaled)
              29645  dTLB-load-misses          (   2.95x scaled)
             461474  branch-loads              (   6.52x scaled)
               7493  branch-load-misses        (  26.57x scaled)
    
    Reported-by: Ingo Molnar <mingo at elte.hu>
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1246051927.2988.10.camel at hpdv5.satnam>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 9a24ee03aebc55cec00cc388b6727bff24ed433f
Author: Nicolas Ferre <nicolas.ferre at atmel.com>
Date:   Wed Jun 24 17:13:48 2009 +0100

    [ARM] 5563/1: at91: at91sam9rlek lcd interface correction
    
    Here is a little update to the at91sam9rlek lcd interface.
    This will correct the power pin of the LCD.
    It will also add precision to the struct atmel_lcdfb_info
    scructure: backlight enabling  and wiring mode correction:
    RGB wiring on the -EK board.
    
    Signed-off-by: Nicolas Ferre <nicolas.ferre at atmel.com>
    Acked-by: Andrew Victor <linux at maxim.org.za>
    Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>

commit 70ec3bb8ea3f8c55b255f41d122c7d4d8c0d00b4
Author: Julia Lawall <julia at diku.dk>
Date:   Sat Jun 27 09:55:32 2009 +0200

    mtd: Use BLOCK_NIL consistently in NFTL/INFTL
    
    Use BLOCK_NIL consistently rather than sometimes 0xffff and sometimes
    BLOCK_NIL.
    
    The semantic patch that finds this issue is below
    (http://www.emn.fr/x-info/coccinelle/).  On the other hand, the changes
    were made by hand, in part because drivers/mtd/inftlcore.c contains dead
    code that causes spatch to ignore a relevant function.  Specifically, the
    function INFTL_findwriteunit contains a do-while loop, but always takes a
    return that leaves the loop on the first iteration.
    
    // <smpl>
    @r exists@
    identifier f,C;
    @@
    
    f(...) { ... return C; }
    
    @s@
    identifier r.C;
    expression E;
    @@
    
    @@
    identifier r.f,r.C,I;
    expression s.E;
    @@
    
    f(...) {
     <...
    (
      I
    |
    - E
    + C
    )
     ...>
    }
    
    // </smpl>
    
    Signed-off-by: Julia Lawall <julia at diku.dk>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 566747e6298289c5cb02d4939cb3abf1c4fe7e5a
Author: Ingo Molnar <mingo at elte.hu>
Date:   Sat Jun 27 06:24:32 2009 +0200

    perf stat: Fix multi-run stats
    
    In multi-run (-r/--repeat) printouts, print out the noise of
    the wall-clock average as well.
    
    Also, fix a bug in printing out scaled counters: if it was not
    scaled then we should not update the average with -1.
    
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 0cfb7a13b8e4e0afd4b856156ab16a182de7505b
Author: Ingo Molnar <mingo at elte.hu>
Date:   Sat Jun 27 06:10:30 2009 +0200

    perf stat: Add -n/--null option to run without counters
    
    Allow a no-counters run. This can be useful to measure just
    elapsed wall-clock time - or to assess the raw overhead of perf
    stat itself, without running any counters.
    
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit fde953c1c67986e1c381fa50d8207b1578b5cefa
Author: Ingo Molnar <mingo at elte.hu>
Date:   Sat Jun 27 06:06:39 2009 +0200

    perf_counter tools: Remove dead code
    
    Vince Weaver reported that there's a handful of #ifdef __MINGW32__
    sections in the code.
    
    Remove them as they are in essence dead code - as unlike upstream
    Git, the perf tool is unlikely to be ported to Windows.
    
    Reported-by: Vince Weaver <vince at deater.net>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit ff780cd8f2fa928b193554f593b36d1243554212
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Fri Jun 26 19:27:04 2009 -0700

    gro: Flush GRO packets in napi_disable_pending path
    
    When NAPI is disabled while we're in net_rx_action, we end up
    calling __napi_complete without flushing GRO packets.  This is
    a bug as it would cause the GRO packets to linger, of course it
    also literally BUGs to catch error like this :)
    
    This patch changes it to napi_complete, with the obligatory IRQ
    reenabling.  This should be safe because we've only just disabled
    IRQs and it does not materially affect the test conditions in
    between.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 71f9dacd2e4d233029e9e956ca3f79531f411827
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Fri Jun 26 19:22:37 2009 -0700

    inet: Call skb_orphan before tproxy activates
    
    As transparent proxying looks up the socket early and assigns
    it to the skb for later processing, we must drop any existing
    socket ownership prior to that in order to distinguish between
    the case where tproxy is active and where it is not.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 112942353992d95099fb5b71c679ff1046fccfcf
Author: Amerigo Wang <amwang at redhat.com>
Date:   Fri Jun 19 03:40:26 2009 -0400

    kbuild: finally remove the obsolete variable $TOPDIR
    
    TOPDIR is obsolete, it can be finally removed now.
    
    Signed-off-by: WANG Cong <amwang at redhat.com>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit c512d2544c688ff1fab18a530860a9c7440a71b7
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Sat Jun 20 18:25:25 2009 +0530

    gitignore: ignore scripts/ihex2fw
    
    scripts/ihex2fw is a generated binary and should be ignored
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit a8735821d198675dd326cc5847e79df79c735119
Author: Floris Kraak <randakar at gmail.com>
Date:   Mon Jun 15 08:54:02 2009 +0300

    Kbuild: Disable the -Wformat-security gcc flag
    
    Some distributions have enabled the gcc flag -Wformat-security by default.
    This results in a number of warnings about format arguments to functions,
    sometimes in cases where fixing the warning is not likely to actually fix a
    bug.  Instead of hand patching a dozens of places (possibly more) that produce
    warnings that get ignored anyway we just turn off the flag in the Makefile.
    
    Signed-off-by: Floris Kraak <randakar at gmail.com>
    Signed-off-by: Pekka Enberg <penberg at cs.helsinki.fi>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit 7a6b1f1c0c492a6bb6f778dff0f9f5facb90d1a1
Author: Amerigo Wang <xiyou.wangcong at gmail.com>
Date:   Mon Jun 22 17:18:32 2009 +0800

    gitignore: ignore gcov output files
    
    Ignore *.gcno files which are generated by gcov.
    
    Signed-off-by: WANG Cong <xiyou.wangcong at gmail.com>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit 1ab18486e4e8bf9554d8439207b97422d7466d77
Author: maximilian attems <max at stro.at>
Date:   Fri Jun 26 20:04:36 2009 +0200

    kbuild: deb-pkg ship changelog
    
    In the series for 2.6.31 it was noticed to ship the copyright,
    but the generated changelog got lost somehow.
    
    As bonus the generated linux-image deb packages are Lenny lintian clean.
    
    Cc: Frans Pop <elendil at planet.nl>
    Cc: Andres Salomon <dilinger at debian.org>
    Signed-off-by: maximilian attems <max at stro.at>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit 857eceebd2803c9a3459f784acf45e5266921e4d
Author: Tim Abbott <tabbott at ksplice.com>
Date:   Tue Jun 23 19:59:36 2009 -0400

    Add new __init_task_data macro to be used in arch init_task.c files.
    
    This patch is preparation for replacing most ".data.init_task" in the
    kernel with macros, so that the section name can later be changed
    without having to touch a lot of the kernel.
    
    The long-term goal here is to be able to change the kernel's magic
    section names to those that are compatible with -ffunction-sections
    -fdata-sections.  This requires renaming all magic sections with names
    of the form ".data.foo".
    
    Signed-off-by: Tim Abbott <tabbott at ksplice.com>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit 39a449d96ac3db9b6d498b6ffbf4c763746d5e8b
Author: Tim Abbott <tabbott at ksplice.com>
Date:   Tue Jun 23 18:53:15 2009 -0400

    asm-generic/vmlinux.lds.h: shuffle INIT_TASK* macro names in vmlinux.lds.h
    
    We recently added a INIT_TASK(align) in include/asm-generic/vmlinux.lds.h,
    but there is already a macro INIT_TASK in include/linux/init_task.h, which
    is quite confusing.  We should switch the macro in the linker script to
    INIT_TASK_DATA. (Sorry that I missed this in reviewing the patch).  Since
    the macros are new, there is only one user of the INIT_TASK in
    vmlinux.lds.h, arch/mn10300/kernel/vmlinux.lds.S.
    
    However, we are currently using INIT_TASK_DATA for laying down an entire
    .data.init_task section.  So rename that to INIT_TASK_DATA_SECTION.
    
    I would be worried about changing the meaning of INIT_TASK_DATA, but the
    old INIT_TASK_DATA implementation had no users, and in fact if anyone had
    tried to use it, it would have failed to compile because it didn't pass
    the alignment to the old INIT_TASK.
    
    Signed-off-by: Tim Abbott <tabbott at ksplice.com>
    Cc: David Howells <dhowells at redhat.com>
    Cc: Jesper Nilsson <Jesper.Nilsson at axis.com
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit d2af12aeadaedf657c9fb9c3df984d2c5ab25f4c
Author: Tim Abbott <tabbott at ksplice.com>
Date:   Tue Jun 23 19:59:35 2009 -0400

    Add new macros for page-aligned data and bss sections.
    
    This patch is preparation for replacing most uses of
    ".bss.page_aligned" and ".data.page_aligned" in the kernel with
    macros, so that the section name can later be changed without having
    to touch a lot of the kernel.
    
    The long-term goal here is to be able to change the kernel's magic
    section names to those that are compatible with -ffunction-sections
    -fdata-sections.  This requires renaming all magic sections with names
    of the form ".data.foo".
    
    Signed-off-by: Tim Abbott <tabbott at ksplice.com>
    Acked-by: David Howells <dhowells at redhat.com>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit 73f1d9391a6aa72efdcea2f302ee7bfcd313c631
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Wed Jun 24 01:04:36 2009 +0900

    asm-generic/vmlinux.lds.h: Fix up RW_DATA_SECTION definition.
    
    RW_DATA_SECTION is defined to take 4 different alignment parameters,
    while NOSAVE_DATA currently uses a fixed PAGE_SIZE alignment as noted
    in the comments.
    
    There are presently no in-tree users of this at present, and I just
    stumbled across this while implementing the simplified script on a new
    architecture port, which subsequently resulted in a syntax error.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>

commit 4a27096bbe2cad4c6e78802a0d9dfe0e598a1129
Author: Jesper Dangaard Brouer <hawk at comx.dk>
Date:   Fri Jun 26 10:45:53 2009 +0000

    mac80211: Use rcu_barrier() on unload.
    
    The mac80211 module uses rcu_call() thus it should use rcu_barrier()
    on module unload.
    
    The rcu_barrier() is placed in mech.c ieee80211_stop_mesh() which is
    invoked from ieee80211_stop() in case vif.type == NL80211_IFTYPE_MESH_POINT.
    
    Acked-by: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
    Acked-by: Johannes Berg <johannes at sipsolutions.net>
    Signed-off-by: Jesper Dangaard Brouer <hawk at comx.dk>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 75de874f5c35f679c6370fccc2bf4930e638ef3b
Author: Jesper Dangaard Brouer <hawk at comx.dk>
Date:   Fri Jun 26 10:45:58 2009 +0000

    sunrpc: Use rcu_barrier() on unload.
    
    The sunrpc module uses rcu_call() thus it should use rcu_barrier() on
    module unload.
    
    Have not verified that the possibility for new call_rcu() callbacks
    has been disabled.  As a hint for checking, the functions calling
    call_rcu() (unx_destroy_cred and generic_destroy_cred) are
    registered as crdestroy function pointer in struct rpc_credops.
    
    Acked-by: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
    Acked-by: Trond Myklebust <Trond.Myklebust at netapp.com>
    Signed-off-by: Jesper Dangaard Brouer <hawk at comx.dk>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 473c22d759e73cbbe604f41105b497817cc2ee8e
Author: Jesper Dangaard Brouer <hawk at comx.dk>
Date:   Fri Jun 26 10:45:48 2009 +0000

    bridge: Use rcu_barrier() instead of syncronize_net() on unload.
    
    When unloading modules that uses call_rcu() callbacks, then we must
    use rcu_barrier().  This module uses syncronize_net() which is not
    enough to be sure that all callback has been completed.
    
    Acked-by: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
    Signed-off-by: Jesper Dangaard Brouer <hawk at comx.dk>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 1f2ccd00f224a4e2d6d26f590f3e6851f3deef99
Author: Jesper Dangaard Brouer <hawk at comx.dk>
Date:   Fri Jun 26 10:46:03 2009 +0000

    ipv6: Use rcu_barrier() on module unload.
    
    The ipv6 module uses rcu_call() thus it should use rcu_barrier() on
    module unload.
    
    Acked-by: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
    Signed-off-by: Jesper Dangaard Brouer <hawk at comx.dk>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 10e85448019097e4fcfa535f612f51d0d31a34f4
Author: Jesper Dangaard Brouer <hawk at comx.dk>
Date:   Fri Jun 26 10:46:08 2009 +0000

    decnet: Use rcu_barrier() on module unload.
    
    The decnet module unloading as been disabled with a '#if 0' statement,
    because it have had issues.
    
    We add a rcu_barrier() anyhow for correctness.
    
    The maintainer (Chrissie Caulfield) will look into the unload issue
    when time permits.
    
    Acked-by: Paul E. McKenney <paulmck at linux.vnet.ibm.com>
    Acked-by: Chrissie Caulfield <christine.caulfield at googlemail.com>
    Signed-off-by: Jesper Dangaard Brouer <hawk at comx.dk>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 9c72ebef5aabf3532469d602a9d87beceea268b1
Author: Borislav Petkov <petkovbb at gmail.com>
Date:   Fri Jun 26 11:22:37 2009 -0700

    ide-cd: handle fragmented packet commands gracefully
    
    There are some devices in the wild that clear the DRQ bit during the
    last word of a packet command and therefore could use a "second chance"
    for that last word of data to be xferred instead of simply failing the
    request. Do that by attempting to suck in those last bytes in PIO mode.
    
    In addition, the ATA_ERR bit has to be cleared for we cannot be sure the
    data is valid otherwise.
    
    See http://bugzilla.kernel.org/show_bug.cgi?id=13399 for details.
    
    Signed-off-by: Borislav Petkov <petkovbb at gmail.com>
    Acked-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 89bb871e96cdc3d78b7f69f0bacc94b21bbaccfd
Author: Steven A. Falco <sfalco at harris.com>
Date:   Fri Jun 26 12:42:47 2009 -0400

    mtd: m25p80 timeout too short for worst-case m25p16 devices
    
    The m25p16 data sheet from numonyx lists the worst-case bulk erase time
    (tBE) as 40 seconds.
    
    Signed-off-by: Steven A. Falco <sfalco at harris.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 4075ea8c54a7506844a69f674990241e7766357b
Merge: 919a6d10fdd9e256dfcd31937fb0b18d1c066be6 37da045067b4e923190662e21029005ea53bfaa1
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Fri Jun 26 09:39:40 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
      amd64_edac: misc small cleanups
      amd64_edac: fix ecc_enable_override handling
      amd64_edac: check only ECC bit in amd64_determine_edac_cap

commit 919a6d10fdd9e256dfcd31937fb0b18d1c066be6
Merge: cf2acfb2051fc67804162eebc5ebc8f55d3b7e2c fd0cca754f3f6756bfdafe500e4f49b1b9e9723f
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Fri Jun 26 09:39:02 2009 -0700

    Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
    
    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (29 commits)
      powerpc/rtas: Fix watchdog driver temperature read functionality
      powerpc/mm: Fix potential access to freed pages when using hugetlbfs
      powerpc/440: Fix warning early debug code
      powerpc/of: Fix usage of dev_set_name() in of_device_alloc()
      powerpc/pasemi: Use raw spinlock in SMP TB sync
      powerpc: Use one common impl. of RTAS timebase sync and use raw spinlock
      powerpc/rtas: Turn rtas lock into a raw spinlock
      powerpc: Add irqtrace support for 32-bit powerpc
      powerpc/BSR: Fix BSR to allow mmap of small BSR on 64k kernel
      powerpc/BSR: add 4096 byte BSR size
      powerpc: Map more memory early on 601 processors
      powerpc/pmac: Fix DMA ops for MacIO devices
      powerpc/mm: Make k(un)map_atomic out of line
      powerpc: Fix mpic alloc warning
      powerpc: Fix output from show_regs
      powerpc/pmac: Fix issues with PowerMac "PowerSurge" SMP
      powerpc/amigaone: Limit ISA I/O range to 4k in the device tree
      powerpc/warp: Platform fix for i2c change
      powerpc: Have git ignore generated files from dtc compile
      powerpc/mpic: Fix mapping of "DCR" based MPIC variants
      ...

commit acf4968ec9dea49387ca8b3d36dfaa0850bdb2d5
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Fri Jun 26 17:38:29 2009 +0100

    kmemleak: Slightly change the policy on newly allocated objects
    
    Newly allocated objects are more likely to be reported as false
    positives. Kmemleak ignores the reporting of objects younger than 5
    seconds. However, this age was calculated after the memory scanning
    completed which usually takes longer than 5 seconds. This patch
    make the minimum object age calculation in relation to the start of the
    memory scanning.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit 4698c1f2bbe44ce852ef1a6716973c1f5401a4c4
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Fri Jun 26 17:38:27 2009 +0100

    kmemleak: Do not trigger a scan when reading the debug/kmemleak file
    
    Since there is a kernel thread for automatically scanning the memory, it
    makes sense for the debug/kmemleak file to only show its findings. This
    patch also adds support for "echo scan > debug/kmemleak" to trigger an
    intermediate memory scan and eliminates the kmemleak_mutex (scan_mutex
    covers all the cases now).
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit bab4a34afc301fdb81b6ea0e3098d96fc356e03a
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Fri Jun 26 17:38:26 2009 +0100

    kmemleak: Simplify the reports logged by the scanning thread
    
    Because of false positives, the memory scanning thread may print too
    much information. This patch changes the scanning thread to only print
    the number of newly suspected leaks. Further information can be read
    from the /sys/kernel/debug/kmemleak file.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit e0a2a1601bec01243bcad44414d06f59dae2eedb
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Fri Jun 26 17:38:25 2009 +0100

    kmemleak: Enable task stacks scanning by default
    
    This is to reduce the number of false positives reported.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit cf2acfb2051fc67804162eebc5ebc8f55d3b7e2c
Merge: aada1bc92797434cdf31e76fc2c6ab29307a5f48 412af97838828bc6d035a1902c8974f944663da6
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Fri Jun 26 09:37:52 2009 -0700

    Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
    
    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
      ACPI: video: prevent NULL deref in acpi_get_pci_dev()
      eeepc-laptop: add rfkill support for the 3G modem in Eee PC 901 Go
      eeepc-laptop: get the right value for CMSG
      eeepc-laptop: makes get_acpi() returns -ENODEV
      eeepc-laptop: right parent device
      eeepc-laptop: rfkill refactoring
      eeepc-laptop.c: use pr_fmt and pr_<level>
      eeepc-laptop: Register as a pci-hotplug device

commit aada1bc92797434cdf31e76fc2c6ab29307a5f48
Merge: 7e0d8a838834beb2cce9df48dacf67f4e8e699cb 71a394faaad07090af5de5c075ec2f5bca0fbb35
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Fri Jun 26 09:37:19 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
      [CIFS] remove unknown mount option warning message
      [CIFS] remove bkl usage from umount begin
      cifs: Fix incorrect return code being printed in cFYI messages
      [CIFS] cleanup asn handling for ntlmssp
      [CIFS] Copy struct *after* setting the port, instead of before.
      cifs: remove rw/ro options
      cifs: fix problems with earlier patches
      cifs: have cifs parse scope_id out of IPv6 addresses and use it
      [CIFS] Do not send tree disconnect if session is already disconnected
      [CIFS] Fix build break
      cifs: display scopeid in /proc/mounts
      cifs: add new routine for converting AF_INET and AF_INET6 addrs
      cifs: have cifs_show_options show forceuid/forcegid options
      cifs: remove unneeded NULL checks from cifs_show_options

commit b9389796fa4c87fbdff33816e317cdae5f36dd0b
Author: Anton Vorontsov <avorontsov at ru.mvista.com>
Date:   Fri Jun 26 09:28:42 2009 -0700

    sky2: Fix checksum endianness
    
    sky2 driver on PowerPC targets floods kernel log with following errors:
    
      eth1: hw csum failure.
      Call Trace:
      [ef84b8a0] [c00075e4] show_stack+0x50/0x160 (unreliable)
      [ef84b8d0] [c02fa178] netdev_rx_csum_fault+0x3c/0x5c
      [ef84b8f0] [c02f6920] __skb_checksum_complete_head+0x7c/0x84
      [ef84b900] [c02f693c] __skb_checksum_complete+0x14/0x24
      [ef84b910] [c0337e08] tcp_v4_rcv+0x4c8/0x6f8
      [ef84b940] [c031a9c8] ip_local_deliver+0x98/0x210
      [ef84b960] [c031a788] ip_rcv+0x38c/0x534
      [ef84b990] [c0300338] netif_receive_skb+0x260/0x36c
      [ef84b9c0] [c025de00] sky2_poll+0x5dc/0xcf8
      [ef84ba20] [c02fb7fc] net_rx_action+0xc0/0x144
    
    The NIC is Yukon-2 EC chip revision 1.
    
    Converting checksum field from le16 to CPU byte order fixes the issue.
    
    Signed-off-by: Anton Vorontsov <avorontsov at ru.mvista.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 19d2e755436054dfc2be640bffc32e427c37ac3d
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Fri Jun 26 13:10:23 2009 +0200

    perf_counter: Complete counter swap
    
    Complete the counter swap by indeed switching the times too and
    updating the userpage after modifying the counter values.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <1246014623.31755.195.camel at twins>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 7e0d8a838834beb2cce9df48dacf67f4e8e699cb
Merge: 987fed3bf6982f2627d4fa242caa9026ef61132a 8944146daa2c38dd85bc489d1b84fb9abc108837
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Fri Jun 26 08:48:42 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
      sparc32: Fix makefile not generating required files
      sparc32: Fix tftpboot.img Makefile
      sparc: fix tftpboot.img build
      sparc32: Fix obvious build issues for tftpboot.img build.
      sparc64: Fix build warnings in piggyback_64.c
      sparc64: Don't use alloc_bootmem() in init_IRQ() code paths.

commit 39562e783928e3ea9ee2cbce99a756ab48d3c06a
Author: Christof Schmitt <christof.schmitt at de.ibm.com>
Date:   Fri Jun 26 16:30:43 2009 +0200

    [SCSI] FC transport: Locking fix for common-code FC pass-through patch
    
    Fix this:
    ------------[ cut here ]------------
    Badness at block/blk-core.c:244
    CPU: 0 Tainted: G        W  2.6.31-rc1-00004-gd3a263a #3
    Process zfcp_wq (pid: 901, task: 000000002fb7a038, ksp: 000000002f02bc78)
    Krnl PSW : 0704300180000000 00000000002141ba (blk_remove_plug+0xb2/0xb8)
               R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:3 PM:0 EA:3
    Krnl GPRS: 0000000000000001 0000000000000001 0000000022811440 0000000022811798
               000000000027ff4e 0000000000000000 0000000000000000 000000002f00f000
               070000000006a0f4 000000002af70000 000000002af2a800 00000000228d1c00
               0000000022811440 000000000050c708 000000002f02bca8 000000002f02bc80
    Krnl Code: 00000000002141b0: b9140022		lgfr	%r2,%r2
               00000000002141b4: 07fe		bcr	15,%r14
               00000000002141b6: a7f40001		brc	15,2141b8
              >00000000002141ba: a7f4ffbe		brc	15,214136
               00000000002141be: 0707		bcr	0,%r7
               00000000002141c0: ebaff0680024	stmg %r10,%r15,104(%r15)
               00000000002141c6: c0d00017c2a9	larl	%r13,50c718
               00000000002141cc: a7f13fc0		tmll	%r15,16320
    Call Trace:
    ([<000000000050e7d8>] C.272.16122+0x88/0x110)
     [<00000000002141ec>] __blk_run_queue+0x2c/0x154
     [<000000000028013a>] fc_remote_port_add+0x85e/0x95c
     [<000000000037596e>] zfcp_scsi_rport_work+0xe6/0x148
     [<000000000006908c>] worker_thread+0x25c/0x318
     [<000000000006f10c>] kthread+0x94/0x9c
     [<000000000001c2b2>] kernel_thread_starter+0x6/0xc
     [<000000000001c2ac>] kernel_thread_starter+0x0/0xc
    INFO: lockdep is turned off.
    Last Breaking-Event-Address:
     [<00000000002141b6>] blk_remove_plug+0xae/0xb8
    
    The FC pass-through support triggers the WARN_ON(!irqs_disabled()) in
    blk_plug_device. Since blk_plug_device requires being called with
    disabled interrupts, use spin_lock_irqsave in fc_bsg_goose_queue to
    disable the interrupts before calling into the block layer.
    
    Signed-off-by: Christof Schmitt <christof.schmitt at de.ibm.com>
    Acked-by: James Smart <james.smart at emulex.com>
    Signed-off-by: James Bottomley <James.Bottomley at HansenPartnership.com>

commit f55c555226b1010b249730ec6b232e5470286950
Author: Frederic Weisbecker <fweisbec at gmail.com>
Date:   Fri Jun 26 16:28:01 2009 +0200

    perf report: Print sorted callchains per histogram entries
    
    Use the newly created callchains radix tree to gather the chains stats
    from the recorded events and then print the callchains for all of them,
    sorted by hits, using the "-c" parameter with perf report.
    
    Example:
    
     66.15%  [k] atm_clip_exit
                63.08%
                    0xffffffffffffff80
                    0xffffffff810196a8
                    0xffffffff810c14c8
                    0xffffffff8101a79c
                    0xffffffff810194f3
                    0xffffffff8106ab7f
                    0xffffffff8106abe5
                    0xffffffff8106acde
                    0xffffffff8100d94b
                    0xffffffff8153e7ea
                    [...]
    
                 1.54%
                    0xffffffffffffff80
                    0xffffffff810196a8
                    0xffffffff810c14c8
                    0xffffffff8101a79c
    		[...]
    
    Symbols are not yet resolved.
    
    Signed-off-by: Frederic Weisbecker <fweisbec at gmail.com>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <1246026481-8314-3-git-send-email-fweisbec at gmail.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 8cb76d99d715741637b6d0884f389e17e9cb05d2
Author: Frederic Weisbecker <fweisbec at gmail.com>
Date:   Fri Jun 26 16:28:00 2009 +0200

    perf_counter tools: Prepare a small callchain framework
    
    We plan to display the callchains depending on some user-configurable
    parameters.
    
    To gather the callchains stats from the recorded stream in a fast way,
    this patch introduces an ad hoc radix tree adapted for callchains and also
    a rbtree to sort these callchains once we have gathered every events
    from the stream.
    
    Signed-off-by: Frederic Weisbecker <fweisbec at gmail.com>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <1246026481-8314-2-git-send-email-fweisbec at gmail.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 37da045067b4e923190662e21029005ea53bfaa1
Author: Borislav Petkov <borislav.petkov at amd.com>
Date:   Wed Jun 10 17:36:57 2009 +0200

    amd64_edac: misc small cleanups
    
    - cleanup debug calls
    - shorten function names
    - cleanup error exit paths
    
    Signed-off-by: Borislav Petkov <borislav.petkov at amd.com>

commit 30c875cbc1836a03a1acc6c998fa8a04f29f8f73
Author: Borislav Petkov <borislav.petkov at amd.com>
Date:   Mon Jun 22 19:42:24 2009 +0200

    amd64_edac: fix ecc_enable_override handling
    
    amd64_check_ecc_enabled() returns non-zero status when ECC
    checking/correcting is disabled and this fails further loading of the
    driver even when 'ecc_enable_override' boot param is used.
    
    Fix that by clearing return status in that case.
    
    Signed-off-by: Borislav Petkov <borislav.petkov at amd.com>

commit 584fcff428bde3b9985ba21498764e9dba2fd3ce
Author: Borislav Petkov <borislav.petkov at amd.com>
Date:   Wed Jun 10 18:29:54 2009 +0200

    amd64_edac: check only ECC bit in amd64_determine_edac_cap
    
    Checking whether the machine is using ECC enabled DRAM is done through
    testing the DimmEccEn bit in the DRAM Cfg Low register (F2x[1,0]90). Do
    that instead of testing all bits from the DimmEccEn upwards.
    
    Also, remove mci->edac_cap assignment and use value returned from
    amd64_determine_edac_cap().
    
    Signed-off-by: Borislav Petkov <borislav.petkov at amd.com>

commit 7e25a2422987a37729706b18583d177966919d2a
Author: Chris Wright <chrisw at redhat.com>
Date:   Thu Jun 25 18:52:05 2009 -0700

    intel-iommu: fix Identity Mapping to be arch independent
    
    Drop the e820 scanning and use existing function for finding valid
    RAM regions to add to 1:1 mapping.
    
    Signed-off-by: Chris Wright <chrisw at redhat.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 0296e4254f3318e0dcad9706fa1daf8e5addc1e9
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Fri Jun 26 11:15:37 2009 +0800

    ftrace: Fix the output of profile
    
    The first entry of the ftrace profile was always skipped when
    reading trace_stat/functionX.
    
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A443D59.4080307 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit a80cad950f2a562e60db1869dd29bc007c5a4b66
Author: Kuninori Morimoto <morimoto.kuninori at renesas.com>
Date:   Fri Jun 26 07:05:39 2009 +0000

    sh: ms7724se: Add sh_eth support
    
    Signed-off-by: Kuninori Morimoto <morimoto.kuninori at renesas.com>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit fd0cca754f3f6756bfdafe500e4f49b1b9e9723f
Merge: 5ba762c9bb3ce2cc11e9e111cb3c476e84b91668 66c6b856d8738278a4a6e558d25c90e9950aa112
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Fri Jun 26 16:58:01 2009 +1000

    Merge commit 'kumar/next' into merge

commit 5e955245d6cf49c5ed26c7add7392ff5a6762bf4
Author: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
Date:   Tue Jun 23 11:27:27 2009 +0000

    ide: always kill the whole request on error
    
    * Use blk_rq_bytes() instead of obsolete ide_rq_bytes() in ide_kill_rq()
      and ide_floppy_do_request() for failed requests.
      [ bugfix part ]
    
    * Use blk_rq_bytes() instead of obsolete ide_rq_bytes() in ide_do_devset()
      and ide_complete_drive_reset().  Then remove ide_rq_bytes().
      [ cleanup part ]
    
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 789547508f22e482825f52f813b59680408ec2c7
Author: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
Date:   Tue Jun 23 11:26:06 2009 +0000

    ide: fix ide_kill_rq() for special ide-{floppy,tape} driver requests
    
    Such requests should be failed with -EIO (like all other requests
    in this function) instead of being completed successfully.
    
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 5ba762c9bb3ce2cc11e9e111cb3c476e84b91668
Author: Adrian Reber <adrian at lisas.de>
Date:   Thu Mar 26 02:05:42 2009 +0000

    powerpc/rtas: Fix watchdog driver temperature read functionality
    
    Using the RTAS watchdog driver to read out the temperature crashes
    on a PXCAB:
    
    Unable to handle kernel paging request for data at address 0xfe347b50
    Faulting instruction address: 0xc00000000001af64
    Oops: Kernel access of bad area, sig: 11 [#1]
    
    The wrong usage of "(void *)__pa(&temperature)" in rtas_call() is
    removed by using the function rtas_get_sensor() which does the
    right thing.
    
    Signed-off-by: Adrian Reber <adrian at lisas.de>
    Acked-by: Utz Bacher <utz.bacher at de.ibm.com>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 6c16a74d423f584ed80815ee7b944f5b578dd37a
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Mon Jun 15 16:53:43 2009 +0000

    powerpc/mm: Fix potential access to freed pages when using hugetlbfs
    
    When using 64k page sizes, our PTE pages are split in two halves,
    the second half containing the "extension" used to keep track of
    individual 4k pages when not using HW 64k pages.
    
    However, our page tables used for hugetlb have a slightly different
    format and don't carry that "second half".
    
    Our code that batched PTEs to be invalidated unconditionally reads
    the "second half" (to put it into the batch), which means that when
    called to invalidate hugetlb PTEs, it will access unrelated memory.
    
    It breaks when CONFIG_DEBUG_PAGEALLOC is enabled.
    
    This fixes it by only accessing the second half when the _PAGE_COMBO
    bit is set in the first half, which indicates that we are dealing with
    a "combo" page which represents 16x4k subpages. Anything else shouldn't
    have this bit set and thus not require loading from the second half.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit f694cda89250f38782a5fd0b2d32fe33a39dcf37
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Tue Jun 16 15:55:19 2009 +0000

    powerpc/440: Fix warning early debug code
    
    The function udbg_44x_as1_flush() has the wrong prototype causing
    a warning when enabling 440 early debug.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 03c01aa740d4137ea2884328f2c29956c6084834
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Tue Jun 16 15:55:18 2009 +0000

    powerpc/of: Fix usage of dev_set_name() in of_device_alloc()
    
    dev_set_name() takes a format string, so use it properly and avoid
    a warning with recent gcc's
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 6893ce6c1cdcf489b7ca8e6b6596208aa971a083
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Tue Jun 16 16:42:51 2009 +0000

    powerpc/pasemi: Use raw spinlock in SMP TB sync
    
    spin_lock() can hang if called while the timebase is frozen,
    so use a raw lock instead, also disable interrupts while
    at it.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit c4007a2fbf5f82b7e694c22b5929c87e38415a56
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Tue Jun 16 16:42:50 2009 +0000

    powerpc: Use one common impl. of RTAS timebase sync and use raw spinlock
    
    Several platforms use their own copy of what is essentially the same code,
    using RTAS to synchronize the timebases when bringing up new CPUs. This
    moves it all into a single common implementation and additionally
    turns the spinlock into a raw spinlock since the former can rely on
    the timebase not being frozen when spinlock debugging is enabled, and finally
    masks interrupts while the timebase is disabled.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit f97bb36f705da0a86b3ea77bfeee3415fee0b025
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Tue Jun 16 16:42:49 2009 +0000

    powerpc/rtas: Turn rtas lock into a raw spinlock
    
    RTAS currently uses a normal spinlock. However it can be called from
    contexts where this is not necessarily a good idea. For example, it
    can be called while syncing timebases, with the core timebase being
    frozen. Unfortunately, that will deadlock in case of lock contention
    when spinlock debugging is enabled as the spin lock debugging code
    will try to use __delay() which ... relies on the timebase being
    enabled.
    
    Also RTAS can be used in some low level IRQ handling code path so it
    may as well be a raw spinlock for -rt sake.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 5d38902c483881645ba16058cffaa478b81e5cfa
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Wed Jun 17 17:43:59 2009 +0000

    powerpc: Add irqtrace support for 32-bit powerpc
    
    Based on initial work from: Dale Farnsworth <dale at farnsworth.org>
    
    Add the low level irq tracing hooks for 32-bit powerpc needed
    to enable full lockdep functionality.
    
    The approach taken to deal with the code in entry_32.S is that
    we don't trace all the transitions of MSR:EE when we just turn
    it off to peek at TI_FLAGS without races. Only when we are
    calling into C code or returning from exceptions with a state
    that have changed from what lockdep thinks.
    
    There's a little bugger though: If we take an exception that
    keeps interrupts enabled (such as an alignment exception) while
    interrupts are enabled, we will call trace_hardirqs_on() on the
    way back spurriously. Not a big deal, but to get rid of it would
    require remembering in pt_regs that the exception was one of the
    type that kept interrupts enabled which we don't know at this
    stage. (Well, we could test all cases for regs->trap but that
    sucks too much).
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
    Tested-by: Kumar Gala <galak at kernel.crashing.org>

commit 04a85d1234d7e1682a612565e663e6b760918643
Author: Sonny Rao <sonnyrao at us.ibm.com>
Date:   Thu Jun 18 15:13:04 2009 +0000

    powerpc/BSR: Fix BSR to allow mmap of small BSR on 64k kernel
    
    On Mon, Nov 17, 2008 at 01:26:13AM -0600, Sonny Rao wrote:
    > On Fri, Nov 07, 2008 at 04:28:29PM +1100, Paul Mackerras wrote:
    > > Sonny Rao writes:
    > >
    > > > Fix the BSR driver to allow small BSR devices, which are limited to a
    > > > single 4k space, on a 64k page kernel.  Previously the driver would
    > > > reject the mmap since the size was smaller than PAGESIZE (or because
    > > > the size was greater than the size of the device).  Now, we check for
    > > > this case use remap_4k_pfn(). Also, take out code to set vm_flags,
    > > > as the remap_pfn functions will do this for us.
    > >
    > > Thanks.
    > >
    > > Do we know that the BSR size will always be 4k if it's not a multiple
    > > of 64k?  Is it possible that we could get 8k, 16k or 32k or BSRs?
    > > If it is possible, what does the user need to be able to do?  Do they
    > > just want to map 4k, or might then want to map the whole thing?
    >
    >
    > Hi Paul, I took a look at changing the driver to reject a request for
    > mapping more than a single 4k page, however the only indication we get
    > of the requested size in the mmap function is the vma size, and this
    > is always one page at minimum.  So, it's not possible to determine if
    > the user wants one 4k page or more.  As I noted in my first response,
    > there is only one case where this is even possible and I don't think
    > it is a significant concern.
    >
    > I did notice that I left out the check to see if the user is trying to
    > map more than the device length, so I fixed that.  Here's the revised
    > patch.
    
    Alright, I've reworked this now so that if we get one of these cases
    where there's a bsr that's > 4k and < 64k on a 64k kernel we'll only
    advertise that it is a 4k BSR to userspace.  I think this is the best
    solution since user programs are only supposed to look at sysfs to
    determine how much can be mapped, and libbsr does this as well.
    
    Please consider for 2.6.31 as a fix, thanks.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit e4031d52c57b17c76bbdb15fcf1a32a9f87d9756
Author: Sonny Rao <sonnyrao at us.ibm.com>
Date:   Thu Jun 18 15:14:36 2009 +0000

    powerpc/BSR: add 4096 byte BSR size
    
    Add a 4096 byte BSR size which will be used on new machines.  Also, remove
    the warning when we run into an unknown size, as this can spam the kernel
    log excessively.
    
    Signed-off-by: Sonny Rao <sonnyrao at us.ibm.com>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 4a5cbf17c49a6024a6d7baf03efdffb8ed252bb1
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Thu Jun 18 19:17:39 2009 +0000

    powerpc: Map more memory early on 601 processors
    
    The 32-bit kernel relies on some memory being mapped covering
    the kernel text,data and bss at least, early during boot before
    the full MMU setup is done. On 32-bit "classic" processors, this
    is done using BAT registers.
    
    On 601, the size of BATs is limited to 8M and we use 2 of them
    for that initial mapping. This can become quite tight when enabling
    features like lockdep, so let's use a 3rd one to bump that mapping
    from 16M to 24M. We keep the 4th BAT free as it can be useful for
    debugging early boot code to map things like serial ports.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 3514141aedc16c7344117d5bd79ec1310edf8fb3
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Thu Jun 18 19:20:51 2009 +0000

    powerpc/pmac: Fix DMA ops for MacIO devices
    
    The macio_dev's created to map devices inside the MacIO ASICs
    don't have proper dma_ops. This causes crashes on some machines
    since the SCSI code calls dma_map_* on our behalf using the
    device we hang from.
    
    This fixes it by copying the parent PCI device dma_ops into
    the macio_dev when creating it.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 850f6ac316cf84bba63fdb775c897834eccbfaa3
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Thu Jun 18 19:25:00 2009 +0000

    powerpc/mm: Make k(un)map_atomic out of line
    
    Those functions are way too big to be inline, besides, kmap_atomic()
    wants to call debug_kmap_atomic() which isn't exported for modules
    and causes module link failures.
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 85355bb272db31a3f2dd99d547eef794805e1319
Author: Kumar Gala <galak at kernel.crashing.org>
Date:   Thu Jun 18 22:01:20 2009 +0000

    powerpc: Fix mpic alloc warning
    
    Since we can use kmalloc earlier we are getting the following since the
    mpic_alloc() code calls alloc_bootmem().  Move to using kzalloc() to
    remove the warning.
    
    ------------[ cut here ]------------
    Badness at c0583248 [verbose debug info unavailable]
    NIP: c0583248 LR: c0583210 CTR: 00000004
    REGS: c0741de0 TRAP: 0700   Not tainted  (2.6.30-06736-g12a31df)
    MSR: 00021000 <ME,CE>  CR: 22024024  XER: 00000000
    TASK = c070d3b8[0] 'swapper' THREAD: c0740000 CPU: 0
    <6>GPR00: 00000001 c0741e90 c070d3b8 00000001 00000210 00000020 3fffffff 00000000
    <6>GPR08: 00000000 c0c85700 c04f8c40 0000002d 22044022 1004a388 7ffd9400 00000000
    <6>GPR16: 00000000 7ffcd100 7ffcd100 7ffcd100 c04f8c40 00000000 c059f62c c075a0c0
    <6>GPR24: c059f648 00000000 0000000f 00000210 00000020 00000000 3fffffff 00000210
    NIP [c0583248] alloc_arch_preferred_bootmem+0x50/0x80
    LR [c0583210] alloc_arch_preferred_bootmem+0x18/0x80
    Call Trace:
    [c0741e90] [c07343b0] devtree_lock+0x0/0x24 (unreliable)
    [c0741ea0] [c0583b14] ___alloc_bootmem_nopanic+0x54/0x108
    [c0741ee0] [c0583e18] ___alloc_bootmem+0x18/0x50
    [c0741ef0] [c057b9cc] mpic_alloc+0x48/0x710
    [c0741f40] [c057ecf4] mpc85xx_ds_pic_init+0x190/0x1b8
    [c0741f90] [c057633c] init_IRQ+0x24/0x34
    [c0741fa0] [c05738b8] start_kernel+0x260/0x3dc
    [c0741ff0] [c00003c8] skpinv+0x2e0/0x31c
    Instruction dump:
    409e001c 7c030378 80010014 83e1000c 38210010 7c0803a6 4e800020 3d20c0c8
    39295700 80090004 7c000034 5400d97e <0f000000> 2f800000 409e001c 38800000
    
    BenH: Changed to use GFP_KERNEL, the allocator will do the right thing
    
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit a2367194183d6ab6b05e5d7d9b40db6ba48afc06
Author: Kumar Gala <galak at kernel.crashing.org>
Date:   Thu Jun 18 22:29:55 2009 +0000

    powerpc: Fix output from show_regs
    
    For some reason we've had an explicit KERN_INFO for GPR dumps.  With
    recent changes we get output like:
    
    <6>GPR00: 00000000 ef855eb0 ef858000 00000001 000000d0 f1000000 ffbc8000 ffffffff
    
    The KERN_INFO is causing the <6>.  Don't see any reason to keep it
    around.
    
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 7ccbe504b5ee766d33211a507189a06f3079b29b
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Thu Jun 18 23:30:07 2009 +0000

    powerpc/pmac: Fix issues with PowerMac "PowerSurge" SMP
    
    The old PowerSurge SMP (ie, dual or quad 604 machines) code has
    numerous issues in modern world.
    
    One is cpu_possible_map is set too late (the device-tree is bogus)
    so we fail to allocate the interrupt stacks and crash. Another
    problem is the fact the timebase is frozen by the bringup of the
    second CPU so the delays in the generic code will hang, we need
    to move some of the calling procedure to inside the powermac code.
    
    This makes it boot again for me
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 6bb2ae535f2eee0334802724a542701bd969d055
Author: Gerhard Pircher <gerhard_pircher at gmx.net>
Date:   Fri Jun 19 11:42:36 2009 +0000

    powerpc/amigaone: Limit ISA I/O range to 4k in the device tree
    
    The kernel reserves the I/O address space from 0x0 to 0xfff for legacy
    ISA devices. Change the ranges property for the PCI2ISA bridge to match
    the kernels behavior, even if the ranges property isn't used for now.
    
    Signed-off-by: Gerhard Pircher <gerhard_pircher at gmx.net>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 3984114f056203d833251af85501721f7b00fd18
Author: Sean MacLennan <smaclennan at pikatech.com>
Date:   Fri Jun 19 19:43:59 2009 +0000

    powerpc/warp: Platform fix for i2c change
    
    A change to the i2c subsystem breaks the warp platform code. The patch
    is cleaner anyway, the old way was a bit crufty.
    
    For those with keen eyes, the gratuitous change in the string from
    PIKA to Warp is just so the logs look a bit nicer. The following two
    lines tend to be printed one after another.
    
      Warp POST OK
      Warp DTM thread running.
    
    Yeah, this will be the third patch to warp.c submitted in this
    release....
    
    Cheers,
       Sean
    
    The i2c_client struct changed, breaking the code that looked for the ad7414
    chip. Use the new of_find_i2c_device_by_node function added in 2.6.29.
    
    Signed-off-by: Sean MacLennan <smaclennan at pikatech.com>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit b810c6ec5c659c80b3641580b112db877a0f1f45
Author: Jon Smirl <jonsmirl at gmail.com>
Date:   Sun Jun 21 15:28:00 2009 +0000

    powerpc: Have git ignore generated files from dtc compile
    
    Have git ignore generated files from dtc compile
    
    Signed-off-by: Jon Smirl <jonsmirl at gmail.com>
    Acked-by: David Gibson <david at gibson.dropbear.id.au>
    Acked-by: Sean MacLennan <smaclennan at pikatech.com>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 5a2642f620eb6e40792822fa0eafe23046fbb55e
Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Date:   Mon Jun 22 16:47:59 2009 +0000

    powerpc/mpic: Fix mapping of "DCR" based MPIC variants
    
    Commit 31207dab7d2e63795eb15823947bd2f7025b08e2
    "Fix incorrect allocation of interrupt rev-map"
    introduced a regression crashing on boot on machines using
    a "DCR" based MPIC, such as the Cell blades.
    
    The reason is that the irq host data structure is initialized
    much later as a result of that patch, causing our calls to
    mpic_map() do be done before we have a host setup.
    
    Unfortunately, this breaks _mpic_map_dcr() which uses the
    mpic->irqhost to get to the device node.
    
    This fixes it by, instead, passing the device node explicitely
    to mpic_map().
    
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
    Acked-by: Akira Tsukamoto <akirat at rd.scei.sony.co.jp>

commit 6f0b1c6094b3e8eeeb13f8f16c1b2ef452a6f519
Author: Michael Ellerman <michael at ellerman.id.au>
Date:   Mon Jun 22 23:13:48 2009 +0000

    powerpc: Swiotlb breaks pseries
    
    Turning on SWIOTLB selects or enables PPC_NEED_DMA_SYNC_OPS, which means
    we get the non empty versions of dma_sync_* in asm/dma-mapping.h
    
    On my pseries machine the dma_ops have no such routines and we die with
    a null pointer - this patch gets it booting, is there a more elegant way
    to do it?
    
    Signed-off-by: Michael Ellerman <michael at ellerman.id.au>
    Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

commit 412af97838828bc6d035a1902c8974f944663da6
Author: Troy Moure <twmoure at szypr.net>
Date:   Thu Jun 25 17:05:35 2009 -0600

    ACPI: video: prevent NULL deref in acpi_get_pci_dev()
    
    ref: http://thread.gmane.org/gmane.linux.kernel/857228/focus=857468
    
    When the ACPI video driver initializes, it does a namespace walk
    looking for for supported devices. When we find an appropriate
    handle, we walk up the ACPI tree looking for a PCI root bus, and
    then walk back down the PCI bus, assuming that every device
    inbetween is a P2P bridge.
    
    This assumption is not correct, and is reported broken on at
    least:
    
    	Dell Latitude E6400
    	ThinkPad X61
    	Dell XPS M1330
    
    Add a NULL deref check to prevent boot panics.
    
    Reported-by: Alessandro Suardi <alessandro.suardi at gmail.com>
    Signed-off-by: Troy Moure <twmoure at szypr.net>
    Signed-off-by: Alex Chiang <achiang at hp.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 3cd530b5aaffd27b231f9717730f2f6684c00bda
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Thu Jun 25 13:25:42 2009 +0200

    eeepc-laptop: add rfkill support for the 3G modem in Eee PC 901 Go
    
    Signed-off-by: Janne Grunau <j at jannau.net>
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit dbfa3ba90dfe353a56e107cff5bce9fb7976f06f
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Thu Jun 25 13:25:41 2009 +0200

    eeepc-laptop: get the right value for CMSG
    
    CMSG is an ACPI method used to find features available on
    an Eee PC. But some features are never repported, even if present.
    
    If the getter of a feature is present, this patch will set
    the corresponding bit in cmsg.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit f36509e7248631671d02f48d1a88f56cdeb54ed8
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Thu Jun 25 13:25:40 2009 +0200

    eeepc-laptop: makes get_acpi() returns -ENODEV
    
    If there is there is no getter defined, get_acpi()
    will return -ENODEV.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 1ddec2f9435e77b4d3f50eced68c4c942f2bcd4b
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Thu Jun 25 13:25:39 2009 +0200

    eeepc-laptop: right parent device
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 7de39389d8f61aa517ce2a8b4d925acc62696ae5
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Thu Jun 25 13:25:38 2009 +0200

    eeepc-laptop: rfkill refactoring
    
    Refactor rfkill code, because we'll add another
    rfkill for wwan3g later.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 19b532892834b7f1c04b2940ac73177dc566fed5
Author: Joe Perches <joe at perches.com>
Date:   Thu Jun 25 13:25:37 2009 +0200

    eeepc-laptop.c: use pr_fmt and pr_<level>
    
    Convert the unusual printk(EEEPC_<level> uses to
    the more standard pr_fmt and pr_<level>(.
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 2b121bc262fa03c94e653b2d44356c2f86c1bcdc
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Thu Jun 25 13:25:36 2009 +0200

    eeepc-laptop: Register as a pci-hotplug device
    
    The eee contains a logically (but not physically) hotpluggable PCIe slot.
    Currently this is handled by adding or removing the PCI device in response
    to rfkill events, but if a user has forced pciehp to bind to it (with the
    force=1 argument) then both drivers will try to handle the event and
    hilarity (in the form of oopses) will ensue. This can be avoided by having
    eee-laptop register the slot as a hotplug slot. Only one of pciehp and
    eee-laptop will successfully register this, avoiding the problem.
    
    Signed-off-by: Matthew Garrett <mjg at redhat.com>
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Tested-by: Darren Salt <linux at youmustbejoking.demon.co.uk>
    Signed-off-by: Randy Dunlap <randy.dunlap at oracle.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 71a394faaad07090af5de5c075ec2f5bca0fbb35
Author: Steve French <sfrench at us.ibm.com>
Date:   Fri Jun 26 04:07:18 2009 +0000

    [CIFS] remove unknown mount option warning message
    
    Jeff's previous patch which removed the unneeded rw/ro
    parsing can cause a minor warning in dmesg (about the
    unknown rw or ro mount option) at mount time. This
    patch makes cifs ignore them in kernel to remove the warning
    (they are already handled in the mount helper and VFS).
    
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit ad8034f19792736db5c259103c2eaaf72887bbb4
Author: Steve French <sfrench at us.ibm.com>
Date:   Fri Jun 26 03:25:49 2009 +0000

    [CIFS] remove bkl usage from umount begin
    
    The lock_kernel call moved into the fs for umount_begin
    is not needed.  This adds a check to make sure we don't
    call umount_begin twice on the same fs.
    
    umount_begin for cifs is probably not needed and
    may eventually be able to be removed, but in
    the meantime this smaller patch is safe and
    gets rid of the bkl from this path which provides
    some benefit.
    
    Acked-by: Jeff Layton <redhat.com>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit 30767636e5896c650f33db5f7f0a9b0e82f3e8c4
Author: Nicolas Reinecke <nr at das-labor.org>
Date:   Thu Jun 25 02:55:31 2009 +0000

    mdio add missing GPL flag
    
    Add missing GPL flag and description.
    
    mdio: module license 'unspecified' taints kernel.
    Disabling lock debugging due to kernel taint
    
    Signed-off-by: Nicolas Reinecke <nr <at> das-labor.org>
    Acked-by: Ben Hutchings <bhutchings at solarflare.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 37c8ae3acf39108b3b7866897f1e3e9f277efc50
Author: roel kluin <roel.kluin at gmail.com>
Date:   Mon Jun 22 07:38:00 2009 +0000

    sh_eth: remove redundant test on unsigned
    
    Unsigned boguscnt cannot be less than 0.
    
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit e2a61fa31382b1ac2b22f76f9c439892e5dc4b86
Author: Ionut Nicu <ionut.nicu at freescale.com>
Date:   Wed Jun 24 22:23:39 2009 +0000

    fsl_pq_mdio: Fix fsl_pq_mdio to work with modules
    
    This patch fixes the case when ucc_geth or gianfar are compiled
    as modules. Without this patch the call to phy_connect() fails.
    
    Signed-off-by: Ionut Nicu <ionut.nicu at freescale.com>
    Acked-by: Andy Fleming <afleming at freescale.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit a1faa69810b2af562b70b2a71c116c7d03575dd3
Author: Jens Rosenboom <me at jayr.de>
Date:   Thu Jun 25 04:55:50 2009 +0000

    ipv6: avoid wraparound for expired preferred lifetime
    
    Avoid showing wrong high values when the preferred lifetime of an address
    is expired.
    
    Signed-off-by: Jens Rosenboom <me at jayr.de>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 1ac530b3553e0b4dc1e18a32bed57cfa84cd57cb
Author: Wei Yongjun <yjwei at cn.fujitsu.com>
Date:   Wed Jun 24 22:29:31 2009 +0000

    tcp: missing check ACK flag of received segment in FIN-WAIT-2 state
    
    RFC0793 defined that in FIN-WAIT-2 state if the ACK bit is off drop
    the segment and return[Page 72]. But this check is missing in function
    tcp_timewait_state_process(). This cause the segment with FIN flag but
    no ACK has two diffent action:
    
    Case 1:
        Node A                      Node B
                  <-------------    FIN,ACK
                                    (enter FIN-WAIT-1)
        ACK       ------------->
                                    (enter FIN-WAIT-2)
        FIN       ------------->    discard
                                    (move sk to tw list)
    
    Case 2:
        Node A                      Node B
                  <-------------    FIN,ACK
                                    (enter FIN-WAIT-1)
        ACK       ------------->
                                    (enter FIN-WAIT-2)
                                    (move sk to tw list)
        FIN       ------------->
    
                  <-------------    ACK
    
    This patch fixed the problem.
    
    Signed-off-by: Wei Yongjun <yjwei at cn.fujitsu.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 8944146daa2c38dd85bc489d1b84fb9abc108837
Author: Julian Calaby <julian.calaby at gmail.com>
Date:   Tue Jun 23 01:45:46 2009 +0000

    sparc32: Fix makefile not generating required files
    
    The tftpboot build was failing with missing file errors.
    
    It turns out that $(obj)/image wasn't being generated which was causing the a.out conversion to be skipped and hence piggyback to be called with nonexistent files.
    
    Signed-off-by: Julian Calaby <julian.calaby at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 3e05c5e2ce40066582dc34aa8335baa328815a09
Author: Julian Calaby <julian.calaby at gmail.com>
Date:   Sun Jun 21 16:45:01 2009 +0000

    sparc32: Fix tftpboot.img Makefile
    
    Signed-off-by: Julian Calaby <julian.calaby at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 52da82cfb569b44e26e15395a6727277758580fe
Author: Sam Ravnborg <sam at ravnborg.org>
Date:   Sun Jun 21 16:46:10 2009 +0000

    sparc: fix tftpboot.img build
    
    Kjetil Oftedal mentioned that piggyback_32 was failing
    when building a sparc image.
    
    I tracked this down to the fact that the kernel no longer
    provided an absolute symbol named "end".
    
    Commit 86ed40bd6fe511d26bb8f3fa65a84cb65c235366 ("sparc: unify sections.h")
    renamed end to _end but failed to update piggyback_32.
    
    Signed-off-by: Sam Ravnborg <sam at ravnborg.org>
    Cc: Kjetil Oftedal <oftedal at gmail.com>
    Cc: Robert Reif <reif at earthlink.net>
    Signed-off-by: Julian Calaby <julian.calaby at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 22b096a8907e5184f25fafd1b73f0b3633d52495
Author: Robert Reif <reif at earthlink.net>
Date:   Sun Jun 21 16:45:44 2009 +0000

    sparc32: Fix obvious build issues for tftpboot.img build.
    
    Signed-off-by: Robert Reif <reif at earthlink.net>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 413ee282a510afb2f18975a189501f39d279a906
Author: Julian Calaby <julian.calaby at gmail.com>
Date:   Sun Jun 21 16:44:13 2009 +0000

    sparc64: Fix build warnings in piggyback_64.c
    
    This patch fixes the following build warnings:
    arch/sparc/boot/piggyback_64.c: In function 'main':
    arch/sparc/boot/piggyback_64.c:44: warning: 'end' may be used uninitialized in this function
    arch/sparc/boot/piggyback_64.c:44: warning: 'start' may be used uninitialized in this function
    
    Signed-off-by: Julian Calaby <julian.calaby at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 14a2ff6ed28931f796d2c2c8a440227a5d90f441
Author: David S. Miller <davem at davemloft.net>
Date:   Thu Jun 25 19:00:47 2009 -0700

    sparc64: Don't use alloc_bootmem() in init_IRQ() code paths.
    
    The page allocator and SLAB are available at this point now,
    and if we still try to use bootmem allocations here the kernel
    spits out warnings.
    
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 987fed3bf6982f2627d4fa242caa9026ef61132a
Merge: ed4fc720e1912eb36ca654d03c88c48845ed39b2 8b169b5f1f46da8ece1ce7304cda7155fffe3892
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jun 25 17:04:37 2009 -0700

    Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
    
    * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (28 commits)
      drm: remove unused #include <linux/version.h>'s
      drm/radeon: fix driver initialization order so radeon kms can be builtin
      drm: Fix shifts which were miscalculated when converting from bitfields.
      drm/radeon: Clear surface registers at initialization time.
      drm/radeon: Don't initialize acceleration related fields of struct fb_info.
      drm/radeon: fix radeon kms framebuffer device
      drm/i915: initialize fence registers to zero when loading GEM
      drm/i915: Fix HDMI regression introduced in new chipset support
      drm/i915: fix LFP data fetch
      drm/i915: set TV detection mode when tv is already connected
      drm/i915: Catch up to obj_priv->page_list rename in disabled debug code.
      drm/i915: Fix size_t handling in off-by-default debug printfs
      drm/i915: Don't change the blank/sync width when calculating scaled modes
      drm/i915: Add support for changing LVDS panel fitting using an output property.
      drm/i915: correct suspend/resume ordering
      drm/i915: Add missing dependency on Intel AGP support.
      drm/i915: Generate 2MHz clock for display port aux channel I/O. Retry I/O.
      drm/i915: Clarify error returns from display port aux channel I/O
      drm/i915: Add CLKCFG register definition
      drm/i915: Split array of DAC limits into separate structures.
      ...

commit e888d7facd1f1460a638151036d15b6cfb3ccc74
Author: Pallipadi, Venkatesh <venkatesh.pallipadi at intel.com>
Date:   Thu Jun 25 16:44:31 2009 -0700

    x86, delay: tsc based udelay should have rdtsc_barrier
    
    delay_tsc needs rdtsc_barrier to provide proper delay.
    
    Output from a test driver using hpet to cross check delay
    provided by udelay().
    
    Before:
    [   86.794363] Expected delay 5us actual 4679ns
    [   87.154362] Expected delay 5us actual 698ns
    [   87.514162] Expected delay 5us actual 4539ns
    [   88.653716] Expected delay 5us actual 4539ns
    [   94.664106] Expected delay 10us actual 9638ns
    [   95.049351] Expected delay 10us actual 10126ns
    [   95.416110] Expected delay 10us actual 9568ns
    [   95.799216] Expected delay 10us actual 9638ns
    [  103.624104] Expected delay 10us actual 9707ns
    [  104.020619] Expected delay 10us actual 768ns
    [  104.419951] Expected delay 10us actual 9707ns
    
    After:
    [   50.983320] Expected delay 5us actual 5587ns
    [   51.261807] Expected delay 5us actual 5587ns
    [   51.565715] Expected delay 5us actual 5657ns
    [   51.861171] Expected delay 5us actual 5587ns
    [   52.164704] Expected delay 5us actual 5726ns
    [   52.487457] Expected delay 5us actual 5657ns
    [   52.789338] Expected delay 5us actual 5726ns
    [   57.119680] Expected delay 10us actual 10755ns
    [   57.893997] Expected delay 10us actual 10615ns
    [   58.261287] Expected delay 10us actual 10755ns
    [   58.620505] Expected delay 10us actual 10825ns
    [   58.941035] Expected delay 10us actual 10755ns
    [   59.320903] Expected delay 10us actual 10615ns
    [   61.306311] Expected delay 10us actual 10755ns
    [   61.520542] Expected delay 10us actual 10615ns
    
    Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi at intel.com>
    Signed-off-by: H. Peter Anvin <hpa at zytor.com>

commit 658dbfeb5e7ab35d440c665d643a6285e43fddcd
Author: H. Peter Anvin <hpa at zytor.com>
Date:   Thu Jun 25 15:16:06 2009 -0700

    x86, setup: correct include file in <asm/boot.h>
    
    <asm/boot.h> needs <asm/pgtable_types.h>, not <asm/page_types.h> in
    order to resolve PMD_SHIFT.  Also, correct a +1 which really should be
    + THREAD_ORDER.
    
    This is a build error which was masked by a typoed #ifdef.
    
    Signed-off-by: H. Peter Anvin <hpa at zytor.com>

commit 22f4319d6bc0155e6c0ae560729baa6c09dc09e7
Author: Robert P. J. Day <rpjday at crashcourse.ca>
Date:   Thu Jun 25 16:20:48 2009 -0400

    x86, setup: Fix typo "CONFIG_x86_64" in <asm/boot.h>
    
    CONFIG_X86_64 was misspelled (wrong case), which caused the x86-64
    kernel to advertise itself as more relocatable than it really is.
    This could in theory cause boot failures once bootloaders start
    support the new relocation fields.
    
    Signed-off-by: Robert P. J. Day <rpjday at crashcourse.ca>
    Signed-off-by: H. Peter Anvin <hpa at zytor.com>

commit 5be6066a7f8d917db347d94f1b359b9b70dcb572
Author: Hidetoshi Seto <seto.hidetoshi at jp.fujitsu.com>
Date:   Wed Jun 24 09:21:10 2009 +0900

    x86, mce: percpu mcheck_timer should be pinned
    
    If CONFIG_NO_HZ + CONFIG_SMP, timer added via add_timer() might
    be migrated on other cpu.  Use add_timer_on() instead.
    
    Avoids the following failure:
    
    Maciej Rutecki wrote:
    > > After normal boot I try:
    > >
    > > echo 1 > /sys/devices/system/machinecheck/machinecheck0/check_interval
    > >
    > > I found this in dmesg:
    > >
    > > [  141.704025] ------------[ cut here ]------------
    > > [  141.704039] WARNING: at arch/x86/kernel/cpu/mcheck/mce.c:1102
    > > mcheck_timer+0xf5/0x100()
    
    Reported-by: Maciej Rutecki <maciej.rutecki at gmail.com>
    Signed-off-by: Hidetoshi Seto <seto.hidetoshi at jp.fujitsu.com>
    Tested-by: Maciej Rutecki <maciej.rutecki at gmail.com>
    Acked-by: Andi Kleen <ak at linux.intel.com>
    Signed-off-by: H. Peter Anvin <hpa at zytor.com>

commit 3928ddbe994cce1da1b6365b0db04d5765f254f4
Author: Frederic Weisbecker <fweisbec at gmail.com>
Date:   Thu Jun 25 22:21:27 2009 +0200

    perf record: Fix unhandled io return value
    
    Building latest perfcounter fails on the following error:
    
     builtin-record.c: In function ‘create_counter’:
     builtin-record.c:451: erreur: ignoring return value of ‘read’, declared with attribute warn_unused_result
     make: *** [builtin-record.o] Erreur 1
    
    Just check if we successfully read the perf file descriptor.
    
    Signed-off-by: Frederic Weisbecker <fweisbec at gmail.com>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <1245961287-5327-1-git-send-email-fweisbec at gmail.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 5211a242d0cbdded372aee59da18f80552b0a80a
Author: Kurt Garloff <garloff at suse.de>
Date:   Wed Jun 24 14:32:11 2009 -0700

    x86: Add sysctl to allow panic on IOCK NMI error
    
    This patch introduces a new sysctl:
    
        /proc/sys/kernel/panic_on_io_nmi
    
    which defaults to 0 (off).
    
    When enabled, the kernel panics when the kernel receives an NMI
    caused by an IO error.
    
    The IO error triggered NMI indicates a serious system
    condition, which could result in IO data corruption. Rather
    than contiuing, panicing and dumping might be a better choice,
    so one can figure out what's causing the IO error.
    
    This could be especially important to companies running IO
    intensive applications where corruption must be avoided, e.g. a
    bank's databases.
    
    [ SuSE has been shipping it for a while, it was done at the
      request of a large database vendor, for their users. ]
    
    Signed-off-by: Kurt Garloff <garloff at suse.de>
    Signed-off-by: Roberto Angelino <robertangelino at gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
    Cc: "Eric W. Biederman" <ebiederm at xmission.com>
    LKML-Reference: <20090624213211.GA11291 at kroah.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 4418351f06d9ce73acc846158c20186965f920f3
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Thu Jun 25 21:27:42 2009 +0530

    perf_counter tools: Add alias for 'l1d' and 'l1i'
    
    Add 'l1d' and 'l1i' aliases again as shortcuts - just dont make them
    the primary display alias.
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <1245945462.9157.11.camel at hpdv5.satnam>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit e9ea2fde7a07ae60a119171a2946ed2ae778271e
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Wed Jun 24 22:46:04 2009 +0200

    perf-report: Add bare minimum PERF_EVENT_READ parsing
    
    Provide the basic infrastructure to provide per task stats.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 649c48a9e7fafcc72bfcc99471d9dea98d789d59
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Wed Jun 24 21:12:48 2009 +0200

    perf-report: Add modes for inherited stats and no-samples
    
    Now that we can collect per task statistics, add modes that
    make use of that facility.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit e6e18ec79b023d5fe84226cef533cf0e3770ce93
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Thu Jun 25 11:27:12 2009 +0200

    perf_counter: Rework the sample ABI
    
    The PERF_EVENT_READ implementation made me realize we don't
    actually need the sample_type int the output sample, since
    we already have that in the perf_counter_attr information.
    
    Therefore, remove the PERF_EVENT_MISC_OVERFLOW bit and the
    event->type overloading, and imply put counter overflow
    samples in a PERF_EVENT_SAMPLE type.
    
    This also fixes the issue that event->type was only 32-bit
    and sample_type had 64 usable bits.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit bfbd3381e63aa2a14c6706afb50ce4630aa0d9a2
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Wed Jun 24 21:11:59 2009 +0200

    perf_counter: Implement more accurate per task statistics
    
    With the introduction of PERF_EVENT_READ we have the
    possibility to provide accurate counter values for
    individual tasks in a task hierarchy.
    
    However, due to the lazy context switching used for similar
    counter contexts our current per task counts are way off.
    
    In order to maintain some of the lazy switch benefits we
    don't disable it out-right, but simply iterate the active
    counters and flip the values between the contexts.
    
    This only reads the counters but does not need to reprogram
    the full PMU.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 38b200d67636a30cb8dc1508137908e7a649b5c9
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Tue Jun 23 20:13:11 2009 +0200

    perf_counter: Add PERF_EVENT_READ
    
    Provide a read() like event which can be used to log the
    counter value at specific sites such as child->parent
    folding on exit.
    
    In order to be useful, we log the counter parent ID, not the
    actual counter ID, since userspace can only relate parent
    IDs to perf_counter_attr constructs.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 194002b274e9169a04beb1b23dcc132159bb566c
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Mon Jun 22 16:35:24 2009 +0200

    perf_counter, x86: Add mmap counter read support
    
    Update the mmap control page with the needed information to
    use the userspace RDPMC instruction for self monitoring.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 7f8b4e4e0988dadfd22330fd147ad2453e19f510
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Mon Jun 22 14:34:35 2009 +0200

    perf_counter: Add scale information to the mmap control page
    
    Add the needed time scale to the self-profile mmap information.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 41f95331b972a039f519ae0c70f051b7121f7346
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Tue Jun 23 17:55:18 2009 +0200

    perf_counter: Split the mmap control page in two parts
    
    Since there are two distinct sections to the control page,
    move them apart so that possible extentions don't overlap.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 7c6a1c65bbd3be688e581511f45818663efc1877
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Thu Jun 25 17:05:54 2009 +0200

    perf_counter tools: Rework the file format
    
    Create a structured file format that includes the full
    perf_counter_attr and all its relevant counter IDs so that
    the reporting program has full information.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit dfc2f91ac29f5ef50e74bf15a1a6b6aa6b952e62
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Fri Jun 26 04:31:57 2009 +0900

    nommu: provide follow_pfn().
    
    With the introduction of follow_pfn() as an exported symbol, modules have
    begun making use of it. Unfortunately this was not reflected on nommu at
    the time, so the in-tree users have subsequently all blown up with link
    errors there.
    
    This provides a simple follow_pfn() that just returns addr >> PAGE_SHIFT,
    which will do the right thing on nommu. There is no need to do range
    checking within the vma, as the find_vma() case will already take care of
    this.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 0f3bc09ee1b7fcadd5bfdc5ed2e1643f658fe23d
Author: Suresh Jayaraman <sjayaraman at suse.de>
Date:   Thu Jun 25 18:12:34 2009 +0530

    cifs: Fix incorrect return code being printed in cFYI messages
    
    FreeXid() along with freeing Xid does add a cifsFYI debug message that
    prints rc (return code) as well. In some code paths where we set/return
    error code after calling FreeXid(), incorrect error code is being
    printed when cifsFYI is enabled.
    
    This could be misleading in few cases. For eg.
    In cifs_open() if cifs_fill_filedata() returns a valid pointer to
    cifsFileInfo, FreeXid() prints rc=-13 whereas 0 is actually being
    returned. Fix this by setting rc before calling FreeXid().
    
    Basically convert
    
    FreeXid(xid);			rc = -ERR;
    return -ERR;		=>	FreeXid(xid);
    				return rc;
    
    [Note that Christoph would like to replace the GetXid/FreeXid
    calls, which are primarily used for debugging.  This seems
    like a good longer term goal, but although there is an
    alternative tracing facility, there are no examples yet
    available that I know of that we can use (yet) to
    convert this cifs function entry/exit logging, and for
    creating an identifier that we can use to correlate
    all dmesg log entries for a particular vfs operation
    (ie identify all log entries for a particular vfs
    request to cifs: e.g. a particular close or read or write
    or byte range lock call ... and just using the thread id
    is harder).  Eventually when a replacement
    for this is available (e.g. when NFS switches over and various
    samples to look at in other file systems) we can remove the
    GetXid/FreeXid macro but in the meantime multiple people
    use this run time configurable logging all the time
    for debugging, and Suresh's patch fixes a problem
    which made it harder to notice some low
    memory problems in the log so it is worthwhile
    to fix this problem until a better logging
    approach is able to be used]
    
    Acked-by: Jeff Layton <jlayton at redhat.com>
    Signed-off-by: Suresh Jayaraman <sjayaraman at suse.de>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit ed4fc720e1912eb36ca654d03c88c48845ed39b2
Merge: f4fa446883959c1c5f314a043e750dbfe3728c55 aa715284b4d28cabde6c25c568d769a6be712bc8
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jun 25 11:25:00 2009 -0700

    Merge branch 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      futex: request only one page from get_user_pages()

commit f4fa446883959c1c5f314a043e750dbfe3728c55
Author: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
Date:   Thu Jun 25 14:41:37 2009 +0100

    usb_serial: Fix oops when unexisting usb serial device is opened.
    
    This commit 335f8514f200e63d689113d29cb7253a5c282967 has stopped
    properly checking if there is any usb serial associated with the tty in
    the close function. It happens the close function is called by releasing
    the terminal right after opening the device fails.
    
    As an example, open fails with a non-existing device, when probe has
    never been called, because the device has never been plugged. This is
    common in systems with static modules and no udev.
    
    Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 922b13565b6a826a925f9f91f053dc9cb0d6210e
Author: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
Date:   Thu Jun 25 14:41:30 2009 +0100

    acm: Fix oops when closing ACM tty device right after open has failed.
    
    This commit 10077d4a6674f535abdbe25cdecb1202af7948f1 has stopped
    checking if there was a valid acm device associated to the tty, which is
    not true right after open fails and tty subsystem tries to close the
    device.
    
    As an example, open fails with a non-existing device, when probe has
    never been called, because the device has never been plugged. This is
    common in systems with static modules and no udev.
    
    Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 42dd2aa6496a2e87e496aac5494d2e1d6096c85b
Author: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
Date:   Thu Jun 25 14:41:24 2009 +0100

    acm: Return ENODEV instead of EINVAL when trying to open ACM device.
    
    This is required, otherwise a user will get a EINVAL while opening a
    non-existing device, instead of ENODEV.
    
    This is what I get with this patch applied now instead of an "Invalid
    argument".
    
      cascardo at vespa:~$ cat /dev/ttyACM0
      cat: /dev/ttyACM0: No such device
      cascardo at vespa:~$
    
    Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit a37f6b84c4f3d3ca61634a7b36bf64c6ea452271
Merge: 9d73777e500929b71dcfed16eec05f6760e345a6 d7e2f36d9a92284754ed5254562766cb3d61c7ca
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Thu Jun 25 11:23:37 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:
      ide cs5520: Initialize second port's interrupt number.
      ide: improve handling of Power Management requests
      ide: add QUANTUM FIREBALLct20 30 with firmware APL.090 to ivb_list[]
      ide: relax DMA info validity checking
      ide-cd: Improve "weird block size" error message
      ide-cd: Don't warn on bogus block size unless it actually matters.
      ide: fix handling of unexpected IRQs vs request_irq()

commit 9d73777e500929b71dcfed16eec05f6760e345a6
Author: Peter Zijlstra <peterz at infradead.org>
Date:   Thu Jun 25 11:58:55 2009 +0200

    clarify get_user_pages() prototype
    
    Currently the 4th parameter of get_user_pages() is called len, but its
    in pages, not bytes. Rename the thing to nr_pages to avoid future
    confusion.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit ab420e6d9c2511b862d753b70efb4e979faa0714
Author: Paul Menage <menage at google.com>
Date:   Thu Jun 25 00:17:15 2009 -0700

    UML: Fix some apparent bitrot
    
    UML: Fix some apparent bitrot
    
    - migration of net_device methods into net_device_ops
    - dma_sync_single() changes
    
    Signed-off-by: Paul Menage <menage at google.com>
    Acked-by: Amerigo Wang <xiyou.wangcong at gmail.com>
    --
    
    This version is split from my earlier patch, including just the
    portions that ar required for Linus' tree.
    
    Fixes the following compile errors:
    
    include/linux/dma-mapping.h:113: error: redefinition of 'dma_sync_single'
    arch/um/include/asm/dma-mapping.h:84: error: previous definition of 'dma_sync_single' was here
    include/linux/dma-mapping.h: In function 'dma_sync_single':
    include/linux/dma-mapping.h:117: error: implicit declaration of function 'dma_sync_single_for_cpu'
    include/linux/dma-mapping.h: At top level:
    include/linux/dma-mapping.h:120: error: redefinition of 'dma_sync_sg'
    arch/um/include/asm/dma-mapping.h:91: error: previous definition of 'dma_sync_sg' was here
    include/linux/dma-mapping.h: In function 'dma_sync_sg':
    include/linux/dma-mapping.h:124: error: implicit declaration of function 'dma_sync_sg_for_cpu'
    
    arch/um/drivers/slirp_kern.c: In function 'slirp_init':
    arch/um/drivers/slirp_kern.c:35: error: 'struct net_device' has no member named 'init'
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 47749b14e55cd167632f9a27a4fc439e591e5268
Author: Ingo Molnar <mingo at elte.hu>
Date:   Thu Jun 25 08:27:14 2009 +0200

    i2c: fix build bug in i2c-designware.c
    
    This build error triggers on x86:
    
     drivers/built-in.o: In function `i2c_dw_init':
     i2c-designware.c:(.text+0x4e37ca): undefined reference to `clk_get_rate'
     drivers/built-in.o: In function `dw_i2c_probe':
     i2c-designware.c:(.devinit.text+0x51f5e): undefined reference to `clk_get'
     i2c-designware.c:(.devinit.text+0x51f76): undefined reference to `clk_enable'
     i2c-designware.c:(.devinit.text+0x520ff): undefined reference to `clk_disable'
     i2c-designware.c:(.devinit.text+0x52108): undefined reference to `clk_put'
    
    Because this new driver uses the clk_*() facilities which is an
    ARM-only thing currently.
    
    Signed-off-by: Ingo Molnar <mingo at elte.hu>
    Acked-by: Baruch Siach <baruch at tkos.co.il>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit d3a263a8168f78874254ea9da9595cfb0f3e96d7
Author: James Bottomley <James.Bottomley at HansenPartnership.com>
Date:   Wed Jun 24 19:55:22 2009 +0000

    [SCSI] zalon: fix oops on attach failure
    
    I recently discovered on my zalon that if the attachment fails because
    of a bus misconfiguration (I scrapped my HVD array, so the card is now
    unterminated) then the system oopses.  The reason is that if
    ncr_attach() returns NULL (signalling failure) that NULL is passed by
    the goto failed straight into ncr_detach() which oopses.
    
    The fix is just to return -ENODEV in this case.
    
    Cc: Stable Tree <stable at kernel.org>
    Signed-off-by: James Bottomley <James.Bottomley at HansenPartnership.com>

commit e3f47cc74bddea8121560026185ede4770170043
Author: Abhijeet Joglekar <abjoglek at cisco.com>
Date:   Wed Jun 24 07:42:25 2009 -0700

    [SCSI] fnic: use DMA_BIT_MASK(nn) instead of deprecated DMA_nnBIT_MASK
    
    Robert Love reported warning while building fnic_main.c:
    drivers/scsi/fnic/fnic_main.c:478: warning: `DMA_nnBIT_MASK' is deprecated.
    
    Replaced use of DMA_nnBIT_MASK by DMA_BIT_MASK(nn)
    
    Signed-off-by: Abhijeet Joglekar <abjoglek at cisco.com>
    Signed-off-by: James Bottomley <James.Bottomley at HansenPartnership.com>

commit 87a2d34b0372dcf6bc4caf4d97a7889f5e62a1af
Author: Roel Kluin <roel.kluin at gmail.com>
Date:   Tue Jun 23 01:06:40 2009 +0200

    [SCSI] fnic: remove redundant BUG_ONs and fix checks on unsigned
    
    The shost sg tablesize is set to FNIC_MAX_SG_DESC_CNT and fnic uses
    scsi_dma_map, so both BUG_ONs can be removed.
    
    scsi_dma_map may return -ENOMEM, sg_count should be int to catch that.
    
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Signed-off-by: James Bottomley <James.Bottomley at HansenPartnership.com>

commit e08afeb7e69f45e4ab9fbb8530fe433484b96606
Author: Brian King <brking at linux.vnet.ibm.com>
Date:   Tue Jun 23 17:14:01 2009 -0500

    [SCSI] ibmvscsi: Fix module load hang
    
    Fixes a regression seen in the ibmvscsi driver when using the VSCSI
    server in SLES 9 and SLES 10. The VSCSI server in these releases
    has a bug in it in which it does not send responses to unknown MADs.
    Check the OS Type field in the adapter info response and do not send
    these unsupported commands when talking to an older server.
    
    Signed-off-by: Brian King <brking at linux.vnet.ibm.com>
    Signed-off-by: James Bottomley <James.Bottomley at HansenPartnership.com>

commit e5c59547791f171b280bc4c4b2c3ff171824c1a3
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Thu Jun 25 18:25:22 2009 +0530

    perf_counter tools: Shorten names for events
    
    Added new alias for events.
    
    On AMD box:
    
     $ ./perf stat -e l1d -e l1d-misses -e l1d-write -e l1d-prefetch -e l1d-prefetch-miss -e l1i -e l1i-misses -e l1i-prefetch -e l2 -e l2-misses -e l2-write -e dtlb -e dtlb-misses -e itlb -e itlb-misses -e bpu -e bpu-misses -- ls -lR /usr/include/ > /dev/null
    
    Before :
    
     Performance counter stats for 'ls -lR /usr/include/':
    
          248064467  L1-data-Cache-Load-Referencees  (scaled from 23.27%)
            1001433  L1-data-Cache-Load-Misses  (scaled from 23.34%)
             153691  L1-data-Cache-Store-Referencees  (scaled from 23.34%)
             423248  L1-data-Cache-Prefetch-Referencees  (scaled from 23.33%)
             302138  L1-data-Cache-Prefetch-Misses  (scaled from 23.25%)
          251217546  L1-instruction-Cache-Load-Referencees  (scaled from 23.25%)
            5757005  L1-instruction-Cache-Load-Misses  (scaled from 23.23%)
              93435  L1-instruction-Cache-Prefetch-Referencees  (scaled from 23.24%)
            6496073  L2-Cache-Load-Referencees  (scaled from 23.32%)
             609485  L2-Cache-Load-Misses  (scaled from 23.45%)
            6876991  L2-Cache-Store-Referencees  (scaled from 23.71%)
          248922840  Data-TLB-Cache-Load-Referencees  (scaled from 23.94%)
            5828386  Data-TLB-Cache-Load-Misses  (scaled from 24.17%)
          257613506  Instruction-TLB-Cache-Load-Referencees  (scaled from 24.20%)
               6833  Instruction-TLB-Cache-Load-Misses  (scaled from 23.88%)
          109043606  Branch-Cache-Load-Referencees  (scaled from 23.64%)
            5552296  Branch-Cache-Load-Misses  (scaled from 23.42%)
    
        0.413702461  seconds time elapsed.
    
    After :
    
     Peformance counter stats for 'ls -lR /usr/include/':
    
          266590464  L1-d$-loads           (scaled from 23.03%)
            1222273  L1-d$-load-misses     (scaled from 23.58%)
             146204  L1-d$-stores          (scaled from 23.83%)
             406344  L1-d$-prefetches      (scaled from 24.09%)
             283748  L1-d$-prefetch-misses (scaled from 24.10%)
          249650965  L1-i$-loads           (scaled from 23.80%)
            3353961  L1-i$-load-misses     (scaled from 23.82%)
             104599  L1-i$-prefetches      (scaled from 23.68%)
            4836405  LLC-loads             (scaled from 23.67%)
             498214  LLC-load-misses       (scaled from 23.66%)
            4953994  LLC-stores            (scaled from 23.64%)
          243354097  dTLB-loads            (scaled from 23.77%)
            6468584  dTLB-load-misses      (scaled from 23.74%)
          249719549  iTLB-loads            (scaled from 23.25%)
               5060  iTLB-load-misses      (scaled from 23.00%)
          112343016  branch-loads          (scaled from 22.76%)
            5528876  branch-load-misses    (scaled from 22.54%)
    
        0.427154051  seconds time elapsed.
    
    Reported-by : Ingo Molnar <mingo at elte.hu>
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245934522.5308.39.camel at hpdv5.satnam>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 308ff823ebd749a94d3b6ac26b95bc0eb114c39e
Author: Jesper Dangaard Brouer <hawk at comx.dk>
Date:   Thu Jun 25 16:32:52 2009 +0200

    nf_conntrack: Use rcu_barrier()
    
    RCU barriers, rcu_barrier(), is inserted two places.
    
     In nf_conntrack_expect.c nf_conntrack_expect_fini() before the
     kmem_cache_destroy().  Firstly to make sure the callback to the
     nf_ct_expect_free_rcu() code is still around.  Secondly because I'm
     unsure about the consequence of having in flight
     nf_ct_expect_free_rcu/kmem_cache_free() calls while doing a
     kmem_cache_destroy() slab destroy.
    
     And in nf_conntrack_extend.c nf_ct_extend_unregister(), inorder to
     wait for completion of callbacks to __nf_ct_ext_free_rcu(), which is
     invoked by __nf_ct_ext_add().  It might be more efficient to call
     rcu_barrier() in nf_conntrack_core.c nf_conntrack_cleanup_net(), but
     thats make it more difficult to read the code (as the callback code
     in located in nf_conntrack_extend.c).
    
    Signed-off-by: Jesper Dangaard Brouer <hawk at comx.dk>
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 14744d7da2e6ab5c6d8e82c84dc280e3c0dd8552
Author: Clemens Ladisch <clemens at ladisch.de>
Date:   Thu Jun 25 14:28:49 2009 +0200

    sound: oxygen: make mic volume control mono
    
    The microphone input and its volume register have only one channel, so
    we have to make the corresponding mixer control a mono control.
    
    Signed-off-by: Clemens Ladisch <clemens at ladisch.de>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 10121a12e2380fb34b6e646a8e367add06d036c3
Merge: 28d0325ce6e0a52f53d8af687e6427fee59004d3 dd5e8e6b1d4c218d2bafe002231ec460459ab5c4
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jun 25 15:28:14 2009 +0200

    Merge branch 'for-2.6.31' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into fix/asoc
    
    Conflicts:
    	MAINTAINERS

commit f6430a938dc6d77e33722aaf6a58382b3423935d
Author: Linus Walleij <linus.walleij at stericsson.com>
Date:   Wed Jun 24 23:38:56 2009 +0100

    [ARM] 5565/2: Use PAGE_SIZE and RO_DATA() in link script
    
    Update the link script for ARM to use PAGE_SIZE instead of hard-
    coded 4096. Also the old RODATA macro is deprecated
    for the RO_DATA(PAGE_SIZE) macro. As a consequence the PAGE_SIZE
    was changed from (1UL << PAGE_SHIFT) to (_AC(1,UL) << PAGE_SHIFT)
    because the linker does not understand the "UL" suffix to numeric
    constants.
    
    Signed-off-by: Linus Walleij <linus.walleij at stericsson.com>
    Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>

commit 7aa5514e7170c6179272bc638a980adc1738fd29
Author: Aaro Koskinen <aaro.koskinen at nokia.com>
Date:   Mon Jun 22 09:23:36 2009 +0100

    [ARM] 5560/1: Avoid buffer overrun in case of an invalid IRQ
    
    handle_bad_irq() expects the IRQ number to be valid (used for statistics),
    so it cannot be called with an illegal vector. The problem was reported
    by a static analysis tool.
    
    The change makes bad_irq_desc redundant, so delete it.
    
    Signed-off-by: Aaro Koskinen <aaro.koskinen at nokia.com>
    Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>

commit dd5e8e6b1d4c218d2bafe002231ec460459ab5c4
Author: Peter Ujfalusi <peter.ujfalusi at nokia.com>
Date:   Thu Jun 25 13:26:09 2009 +0300

    MAINTAINERS: Add entry for twl4030 series soc codec driver
    
    New MAINTAINERS entry for twl4030 series soc codec driver
    with Peter Ujfalusi as maintainer.
    
    Signed-off-by: Peter Ujfalusi <peter.ujfalusi at nokia.com>
    Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>

commit 8fd3ec6309dc3c8b6addc9015458bfae87592a1f
Merge: f9bfccf11df33dae874aac58b0926004ae833167 76609a6928bff29ca05a94420ae3e088fbb9c2f9
Author: Russell King <rmk at dyn-67.arm.linux.org.uk>
Date:   Thu Jun 25 13:49:07 2009 +0100

    Merge branch 's3c-fixes' of git://aeryn.fluff.org.uk/bjdooks/linux

commit f9bfccf11df33dae874aac58b0926004ae833167
Merge: 28d0325ce6e0a52f53d8af687e6427fee59004d3 503dcbeba50fd3545283594bc391b4a400fa6c48
Author: Russell King <rmk at dyn-67.arm.linux.org.uk>
Date:   Thu Jun 25 13:47:21 2009 +0100

    Merge branch 'omap-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6

commit aa715284b4d28cabde6c25c568d769a6be712bc8
Author: Thomas Gleixner <tglx at linutronix.de>
Date:   Thu Jun 25 14:27:58 2009 +0200

    futex: request only one page from get_user_pages()
    
    Yanmin noticed that fault_in_user_writeable() requests 4 pages instead
    of one.
    
    That's the result of blindly trusting Linus' proposal :) I even looked
    up the prototype to verify the correctness: the argument in question
    is confusingly enough named "len" while in reality it means number of
    pages.
    
    Pointed-out-by: Yanmin Zhang <yanmin_zhang at linux.intel.com>
    Signed-off-by: Thomas Gleixner <tglx at linutronix.de>

commit 1fbcf37128cc19bd67d9a736fb634dc444e907d7
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Thu Jun 25 21:17:19 2009 +0900

    sh: Kill off unused DEBUG_BOOTMEM symbol.
    
    This was killed off in generic code some time ago, kill off the left over
    symbol.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 06813f6c743420c16f9248ab59bd2e68a2de57ba
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Thu Jun 25 17:16:07 2009 +0530

    perf_counter tools: Check for valid cache operations
    
    Made new table for cache operartion stat 'hw_cache_stat' as:
    
     L1I : Read and prefetch only
     ITLB and BPU : Read-only
    
    introduce is_cache_op_valid() for cache operation validity
    
    And checks for valid cache operations.
    
    Reported-by : Ingo Molnar <mingo at elte.hu>
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245930367.5308.33.camel at localhost.localdomain>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit d8146bb23ea045fb75c56b4e3b53f0964eed4076
Author: Brandon Philips <brandon at ifup.org>
Date:   Wed Jun 24 14:09:14 2009 +0000

    atl1*: add device_set_wakeup_enable to atl1*_set_wol
    
    Tell PCI core that atl1* device can wakeup the system when WOL is
    enabled by calling device_set_wakeup_enable.
    
    Joerg noted that his atl1e device WOL fine after enabling it with
    ethtool and changing /sys/class/net/eth0/device/power/wakeup to enabled
    Tested on atl1e: https://bugzilla.novell.com/show_bug.cgi?id=493214
    
    Tested by: Joerg Reuter <jreuter at novell.com>
    Signed-off-by: Brandon Philips <bphilips at suse.de>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 2be6fa4c7e5731375cc5e70843a3444293c27514
Author: Rémi Denis-Courmont <remi.denis-courmont at nokia.com>
Date:   Wed Jun 24 01:07:45 2009 +0000

    Phonet: generate Netlink RTM_DELADDR when destroying a device
    
    Netlink address deletion events were not sent when a network device
    vanished neither when Phonet was unloaded.
    
    Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont at nokia.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit c7a1a4c80f873d5d6ecd173035bb80eba489f380
Author: Rémi Denis-Courmont <remi.denis-courmont at nokia.com>
Date:   Wed Jun 24 01:07:44 2009 +0000

    Phonet: publicize the Netlink notification function
    
    Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont at nokia.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 11687a1099583273a8a98ec42af62b5bb5a69e45
Author: David S. Miller <davem at davemloft.net>
Date:   Thu Jun 25 02:45:42 2009 -0700

    Revert "veth: prevent oops caused by netdev destructor"
    
    This reverts commit ae0e8e82205c903978a79ebf5e31c670b61fa5b4.
    
    This change had two problems:
    
    1) Since it frees the stats in the drivers' close method, we
       can OOPS in the transmit routine.
    
    2) stats are no longer remembered across ifdown/ifup which
       disagrees with how every other device operates.
    
    Thanks to analysis and test patch from Serge E. Hallyn
    and initial OOPS report by Sachin Sant.
    
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 76c64c5e4c47b6d28deb3cae8dfa07a93c2229dc
Author: Johannes Weiner <hannes at cmpxchg.org>
Date:   Wed Jun 24 21:08:36 2009 +0200

    perf record: Fix filemap pathname parsing in /proc/pid/maps
    
    Looking backward for the first space from the end of a line in
    /proc/pid/maps does not find the start of the pathname of the mapped
    file if it contains a space.
    
    Since the only slashes we have in this file occur in the (absolute!)
    pathname column of file mappings, looking for the first slash in a
    line is a safe method to find the name.
    
    Signed-off-by: Johannes Weiner <hannes at cmpxchg.org>
    Cc: Stefani Seibold <stefani at seibold.net>
    Cc: Andrew Morton <akpm at linux-foundation.org>
    Cc: "Eric W. Biederman" <ebiederm at xmission.com>
    Cc: Alexey Dobriyan <adobriyan at gmail.com>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <20090624190835.GA25548 at cmpxchg.org>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit a9d9058abab4ac17b79d500506e6c74bd16cecdc
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Thu Jun 25 10:16:11 2009 +0100

    kmemleak: Allow the early log buffer to be configurable.
    
    (feature suggested by Sergey Senozhatsky)
    
    Kmemleak needs to track all the memory allocations but some of these
    happen before kmemleak is initialised. These are stored in an internal
    buffer which may be exceeded in some kernel configurations. This patch
    adds a configuration option with a default value of 400 and also removes
    the stack dump when the early log buffer is exceeded.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>
    Acked-by: Sergey Senozhatsky <sergey.senozhatsky at mail.by>

commit 1155de47cd66d0c496d5a6fb2223e980ef1285b2
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Thu Jun 25 14:30:12 2009 +0900

    ring-buffer: Make it generally available
    
    In hunting down the cause for the hwlat_detector ring buffer spew in
    my failed -next builds it became obvious that folks are now treating
    ring_buffer as something that is generic independent of tracing and thus,
    suitable for public driver consumption.
    
    Given that there are only a few minor areas in ring_buffer that have any
    reliance on CONFIG_TRACING or CONFIG_FUNCTION_TRACER, provide stubs for
    those and make it generally available.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>
    Cc: Jon Masters <jcm at jonmasters.org>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    LKML-Reference: <20090625053012.GB19944 at linux-sh.org>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 00e54d087afb3867b0b461aef6c1ff433d0df564
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Thu Jun 25 14:05:27 2009 +0800

    ftrace: Remove duplicate newline
    
    Before:
      # echo 'sys_open:traceon:' > set_ftrace_filter
      # echo 'sys_close:traceoff:5' > set_ftrace_filter
      # cat set_ftrace_filter
      #### all functions enabled ####
      sys_open:traceon:unlimited
    
      sys_close:traceoff:count=0
    
    After:
      # cat set_ftrace_filter
      #### all functions enabled ####
      sys_open:traceon:unlimited
      sys_close:traceoff:count=0
    
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A4313A7.7030105 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 7e895cfaad51c862932ea7db0c428761076412e5
Author: Tim Blechmann <tim at klingt.org>
Date:   Thu Jun 25 09:41:46 2009 +0200

    ALSA: lx6464es - configure ethersound io channels
    
    as long as the io channel number is not set by the driver, the card
    is not visible from the ethersound network
    
    Signed-off-by: Tim Blechmann <tim at klingt.org>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit ae27a7ab2c74f9c075e03730c5f493163d048c62
Author: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
Date:   Wed Jun 24 18:40:46 2009 -0300

    mtd: atmel_nand: Fix typo s/parititions/partitions/
    
    Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 342ba1039ad7cf464c7927ddf1ddc10d48a3716b
Author: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
Date:   Wed Jun 24 18:39:09 2009 -0300

    mtd: cmdlineparts: Use 64-bit format when printing a debug message.
    
    Commit 69423d99fc182a81f3c5db3eb5c140acc6fc64be ("[MTD] update internal
    API to support 64-bit device size") has changed some structure values
    to 64-bit and has not updated this debug message, since it's not built
    by default.
    
    Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo at holoscopio.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 0d7392e54435476243ce08ba57745ab52d639cbb
Author: Joe Perches <joe at perches.com>
Date:   Wed Jun 24 23:18:02 2009 -0700

    sound: Use PCI_VDEVICE for CREATIVE and ECTIVA
    
    Here's a patch on top of the others to use CREATIVE and ECTIVA
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 28d27aae9432c300857722a917be4065c6d7abff
Author: Joe Perches <joe at perches.com>
Date:   Wed Jun 24 22:13:35 2009 -0700

    sound: Use PCI_VDEVICE
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit dde6535686aa4e78e8b85850d1f3fccd8a581622
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jun 25 08:25:35 2009 +0200

    ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G
    
    For Acer Aspire 6930G (1025:015e), acre-aspire-6530g model matches
    obviously better.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 320d592001acbfd76bf856b5370319f144285489
Author: Emilio López <buhitoescolar at gmail.com>
Date:   Thu Jun 25 08:18:44 2009 +0200

    ALSA: hda - Fix acer-aspire-6530g model quirk
    
    Fix the following bugs of acer-aspire-6530g model with ALC888:
    - HP jack to mute all speaker outputs including LFE
    - Make digital built-in mic working
    
    Signed-off-by: Emilio López <buhitoescolar at gmail.com>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 261c2407401ca26fa17f05667ea68f51e12c5303
Author: Takashi Iwai <tiwai at suse.de>
Date:   Thu Jun 25 08:13:40 2009 +0200

    ALSA: hda - Add pin-sense trigger when needed for Realtek codecs
    
    Realtek codecs require the pin-sense trigger call before actually
    reading the pin-sense.  Without this, the pin-detection might not be
    done accurately.
    
    This patch adds the pin-capability check and issues the trigger call
    if required.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit febe8345353e8873e43f2c2c9792d062c770b22b
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Thu Jun 25 14:41:57 2009 +0900

    perf_counter tools: add cpu_relax()/rmb() definitions for sh.
    
    Simple cpu_relax()/rmb() stubs that perf needs, which were inadvertently
    omitted from the sh HAVE_PERF_COUNTERS patch.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit f46c7234e472ceee39afea4fb5a4365843e1850a
Author: Steve French <sfrench at us.ibm.com>
Date:   Thu Jun 25 03:04:20 2009 +0000

    [CIFS] cleanup asn handling for ntlmssp
    
    Also removes obsolete distinction between rawntlmssp and ntlmssp (in asn/SPNEGO)
    since as jra noted we can always send raw ntlmssp in session setup now.
    
    remove check for experimental runtime flag (/proc/fs/cifs/Experimental) in
    ntlmssp path.
    
    Reviewed-by: Jeff Layton <jlayton at redhat.com>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit 6debdbc0ba6253ac519cd5a3d22e30f1f9f1dd12
Author: Simo Leone <simo at archlinux.org>
Date:   Thu Jun 25 02:44:43 2009 +0000

    [CIFS] Copy struct *after* setting the port, instead of before.
    
    Acked-by: Jeff Layton <jlayton at redhat.com>
    Signed-off-by: Simo Leone <simo at archlinux.org>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit 6459340cfcc6f6d165b27c3dd955aeb55a1b73d3
Author: Jeff Layton <jlayton at redhat.com>
Date:   Thu Jun 25 00:56:55 2009 -0400

    cifs: remove rw/ro options
    
    cifs: remove rw/ro options
    
    These options are handled at the VFS layer. They only ever set the
    option in the smb_vol struct. Nothing was ever done with them afterward
    anyway.
    
    Signed-off-by: Jeff Layton <jlayton at redhat.com>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit b48a485884b5afb3e33b1871bcbd246b67491923
Author: Jeff Layton <jlayton at redhat.com>
Date:   Thu Jun 25 00:56:54 2009 -0400

    cifs: fix problems with earlier patches
    
    cifs: fix problems with earlier patches
    
    cifs_show_address hasn't been introduced yet, and fix a typo that was
    silently fixed by a later patch in the series.
    
    Signed-off-by: Jeff Layton <jlayton at redhat.com>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit 681bf72e4893a187cf6b6b62c08fc193f81c8c2f
Author: Jeff Layton <jlayton at redhat.com>
Date:   Thu Jun 11 10:27:31 2009 -0400

    cifs: have cifs parse scope_id out of IPv6 addresses and use it
    
    This patch has CIFS look for a '%' in an IPv6 address. If one is
    present then it will try to treat that value as a numeric interface
    index suitable for stuffing into the sin6_scope_id field.
    
    This should allow people to mount servers on IPv6 link-local addresses.
    
    Signed-off-by: Jeff Layton <jlayton at redhat.com>
    Acked-by: David Holder <david at erion.co.uk>
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit 6a9b6546164fb380a019f92ca4d76443202fdc4f
Author: Florian Fainelli <florian at openwrt.org>
Date:   Wed Jun 24 16:32:33 2009 -0700

    cpmac: fix compilation failure introduced with netdev_ops conversion
    
    This patch fixes and obvious typo in the netdev_ops initialization:
    ndo_so_ioctl should be ndo_do_ioctl.
    
    Signed-off-by: Florian Fainelli <florian at openwrt.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 245acb87729bc76ba65c7476665c01837e0cdccb
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Wed Jun 24 03:55:41 2009 -0700

    ipsec: Fix name of CAST algorithm
    
    Our CAST algorithm is called cast5, not cast128.  Clearly nobody
    has ever used it :)
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 268875b9d1dd1bf0b523c59e736da9bc20c8ce1f
Author: Steve French <sfrench at us.ibm.com>
Date:   Thu Jun 25 00:29:21 2009 +0000

    [CIFS] Do not send tree disconnect if session is already disconnected
    
    Noticed this when tree connect timed out (due to Samba server crash) -
    we try to send a tree disconnect for a tid that does not exist
    since we don't have a valid tree id yet. This checks that the
    session is valid before sending the tree disconnect to handle
    this case.
    
    Signed-off-by: Steve French <sfrench at us.ibm.com>

commit 28d0325ce6e0a52f53d8af687e6427fee59004d3
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 16:25:37 2009 -0700

    Linux 2.6.31-rc1

commit 236e946b53ffd5e2f5d7e6abebbe72a9f0826d15
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 16:23:03 2009 -0700

    Revert "PCI: use ACPI _CRS data by default"
    
    This reverts commit 9e9f46c44e487af0a82eb61b624553e2f7118f5b.
    
    Quoting from the commit message:
    
     "At this point, it seems to solve more problems than it causes, so let's
      try using it by default.  It's an easy revert if it ends up causing
      trouble."
    
    And guess what? The _CRS code causes trouble.
    
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit f27884aeadff9654f4a1e8a05dd92f4b140afe29
Merge: c6223048259006759237d826219f0fa4f312fb47 a35d01a5d2ac533edab94a8e3b6749ab213c91c5
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 14:35:57 2009 -0700

    Merge git://git.infradead.org/battery-2.6
    
    * git://git.infradead.org/battery-2.6:
      da9030_battery: Fix race between event handler and monitor
      Add MAX17040 Fuel Gauge driver
      w1: ds2760_battery: add support for sleep mode feature
      w1: ds2760: add support for EEPROM read and write
      ds2760_battery: cleanups in ds2760_battery_probe()

commit c6223048259006759237d826219f0fa4f312fb47
Merge: bd453cd487ac7116a269517779b83c1061debbec d5bb68adda7cc179e8efadeaa3a283cb470f13a6 3a6a6c16be78472a52f6dd7d88913373b42ad0f7
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 14:17:14 2009 -0700

    Merge branches 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/{vfs-2.6,audit-current}
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
      another race fix in jfs_check_acl()
      Get "no acls for this inode" right, fix shmem breakage
      inline functions left without protection of ifdef (acl)
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:
      audit: inode watches depend on CONFIG_AUDIT not CONFIG_AUDIT_SYSCALL

commit d5bb68adda7cc179e8efadeaa3a283cb470f13a6
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Wed Jun 24 17:02:42 2009 -0400

    another race fix in jfs_check_acl()
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 72c04902d1e27c8a324014cff1d4475c11b1cecd
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Wed Jun 24 16:58:48 2009 -0400

    Get "no acls for this inode" right, fix shmem breakage
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 3a6a6c16be78472a52f6dd7d88913373b42ad0f7
Author: Eric Paris <eparis at redhat.com>
Date:   Wed Jun 24 16:09:01 2009 -0400

    audit: inode watches depend on CONFIG_AUDIT not CONFIG_AUDIT_SYSCALL
    
    Even though one cannot make use of the audit watch code without
    CONFIG_AUDIT_SYSCALL the spaghetti nature of the audit code means that
    the audit rule filtering requires that it at least be compiled.
    
    Thus build the audit_watch code when we build auditfilter like it was
    before cfcad62c74abfef83762dc05a556d21bdf3980a2
    
    Clearly this is a point of potential future cleanup..
    
    Reported-by: Frans Pop <elendil at planet.nl>
    Signed-off-by: Eric Paris <eparis at redhat.com>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 641cf4a668e9e69d2bc061e953422ff72a91f86e
Author: Markus Trippelsdorf <markus at trippelsdorf.de>
Date:   Wed Jun 24 22:28:52 2009 +0200

    inline functions left without protection of ifdef (acl)
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit bd453cd487ac7116a269517779b83c1061debbec
Merge: ba52270d18fb17ce2cf176b35419dab1e43fe4a3 d0725992c8a6fb63a16bc9e8b2a50094cc4db3cd
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 13:33:19 2009 -0700

    Merge branch 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      futex: Fix the write access fault problem for real

commit d0725992c8a6fb63a16bc9e8b2a50094cc4db3cd
Author: Thomas Gleixner <tglx at linutronix.de>
Date:   Thu Jun 11 23:15:43 2009 +0200

    futex: Fix the write access fault problem for real
    
    commit 64d1304a64 (futex: setup writeable mapping for futex ops which
    modify user space data) did address only half of the problem of write
    access faults.
    
    The patch was made on two wrong assumptions:
    
    1) access_ok(VERIFY_WRITE,...) would actually check write access.
    
       On x86 it does _NOT_. It's a pure address range check.
    
    2) a RW mapped region can not go away under us.
    
       That's wrong as well. Nobody can prevent another thread to call
       mprotect(PROT_READ) on that region where the futex resides. If that
       call hits between the get_user_pages_fast() verification and the
       actual write access in the atomic region we are toast again.
    
    The solution is to not rely on access_ok and get_user() for any write
    access related fault on private and shared futexes. Instead we need to
    fault it in with verification of write access.
    
    There is no generic non destructive write mechanism which would fault
    the user page in trough a #PF, but as we already know that we will
    fault we can as well call get_user_pages() directly and avoid the #PF
    overhead.
    
    If get_user_pages() returns -EFAULT we know that we can not fix it
    anymore and need to bail out to user space.
    
    Remove a bunch of confusing comments on this issue as well.
    
    Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
    Cc: stable at kernel.org

commit ba52270d18fb17ce2cf176b35419dab1e43fe4a3
Author: Pekka Enberg <penberg at cs.helsinki.fi>
Date:   Wed Jun 24 21:59:51 2009 +0300

    SLUB: Don't pass __GFP_FAIL for the initial allocation
    
    SLUB uses higher order allocations by default but falls back to small
    orders under memory pressure. Make sure the GFP mask used in the initial
    allocation doesn't include __GFP_NOFAIL.
    
    Signed-off-by: Pekka Enberg <penberg at cs.helsinki.fi>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 4923abf9f1a4c1864af438a57c1f3686548230e9
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 12:16:49 2009 -0700

    Don't warn about order-1 allocations with __GFP_NOFAIL
    
    Traditionally, we never failed small orders (even regardless of any
    __GFP_NOFAIL flags), and slab will allocate order-1 allocations even for
    small allocations that could fit in a single page (in order to avoid
    excessive fragmentation).
    
    Maybe we should remove this warning entirely, but before making that
    judgement, at least limit it to bigger allocations.
    
    Acked-by: Pekka Enberg <penberg at cs.helsinki.fi>
    Cc: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 1b173f77dd0d5fd4f0ff18034aaa79e30da068b9
Author: Ingo Molnar <mingo at elte.hu>
Date:   Wed Jun 24 19:54:29 2009 +0200

    perf_counter tools: Add CREDITS file for Git contributors
    
    Much of perf's libraries comes from the Git project. I noticed
    that the files (in tools/perf/util/*.[ch] and elsewhere) are
    quite spartan wrt. credits, so lets add a CREDITS file that
    includes an (incomplete!) list of main contributors.
    
    Thanks guys, these libraries are really useful. Special thanks
    go to Johannes Schindelin and Junio C Hamano for coming up with
    this list.
    
    List-Composed-By: Johannes Schindelin <Johannes.Schindelin at gmx.de>
    Cc: Junio C Hamano <gitster at pobox.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 163b2f0ba93e9298b3d5fff2337d860c3872ec60
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Thu Jun 25 02:49:03 2009 +0900

    sh64: Hook up page fault events for software perf counters.
    
    sh64 can use these as well, so tie them up there as well.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit c82e6d450fda56cb2d4f68534173d3cd11b32f9f
Merge: c3cb5e193937c7aa50c323e7933507020bd26340 a620c1632629b42369e78448acc7b384fe1faf48
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 10:47:38 2009 -0700

    Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
    
    * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
      Staging: octeon-ethernet: Fix race freeing transmit buffers.
      Staging: octeon-ethernet: Convert to use net_device_ops.
      MIPS: Cavium: Add CPU hotplugging code.
      MIPS: SMP: Allow suspend and hibernation if CPU hotplug is available
      MIPS: Add arch generic CPU hotplug
      DMA: txx9dmac: use dma_unmap_single if DMA_COMPL_{SRC,DEST}_UNMAP_SINGLE set
      MIPS: Sibyte: Fix build error if CONFIG_SERIAL_SB1250_DUART is undefined.
      MIPS: MIPSsim: Fix build error if MSC01E_INT_BASE is undefined.
      MIPS: Hibernation: Remove SMP TLB and cacheflushing code.
      MIPS: Build fix - include <linux/smp.h> into all smp_processor_id() users.
      MIPS: bug.h Build fix - include <linux/compiler.h>.

commit a620c1632629b42369e78448acc7b384fe1faf48
Author: David Daney <ddaney at caviumnetworks.com>
Date:   Tue Jun 23 16:20:56 2009 -0700

    Staging: octeon-ethernet: Fix race freeing transmit buffers.
    
    The existing code had the following race:
    
    Thread-1                       Thread-2
    
    inc/read in_use
                                   inc/read in_use
    inc tx_free_list[qos].len
                                   inc tx_free_list[qos].len
    
    The actual in_use value was incremented twice, but thread-1 is going
    to free memory based on its stale value, and will free one too many
    times.  The result is that memory is freed back to the kernel while
    its packet is still in the transmit buffer.  If the memory is
    overwritten before it is transmitted, the hardware will put a valid
    checksum on it and send it out (just like it does with good packets).
    If by chance the TCP flags are clobbered but not the addresses or
    ports, the result can be a broken TCP stream.
    
    The fix is to track the number of freed packets in a single location
    (a Fetch-and-Add Unit register).  That way it can never get out of sync
    with itself.
    
    We try to free up to MAX_SKB_TO_FREE (currently 10) buffers at a time.
    If fewer are available we adjust the free count with the difference.
    The action of claiming buffers to free is atomic so two threads cannot
    claim the same buffers.
    
    Signed-off-by: David Daney <ddaney at caviumnetworks.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit f696a10838ffab85e5bc07e7cff0d0e1870a30d7
Author: David Daney <ddaney at caviumnetworks.com>
Date:   Tue Jun 23 11:34:08 2009 -0700

    Staging: octeon-ethernet: Convert to use net_device_ops.
    
    Convert the driver to use net_device_ops as it is now mandatory.
    
    Also compensate for the removal of struct sk_buff's dst field.
    
    The changes are mostly mechanical, the content of ethernet-common.c
    was moved to ethernet.c and ethernet-common.{c,h} are removed.
    
    Signed-off-by: David Daney <ddaney at caviumnetworks.com>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 773cb77d0e32f0a3c36edf5aaeb9642c18038cd2
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Tue Jun 23 10:36:38 2009 +0100

    MIPS: Cavium: Add CPU hotplugging code.
    
    Thanks to Cavium Inc. for the code contribution and help.
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 9801b321ecdb6708365b6825bf728c8e433fca00
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Tue Jun 23 10:20:56 2009 +0100

    MIPS: SMP: Allow suspend and hibernation if CPU hotplug is available
    
    The SMP implementation of suspend and hibernate depends on CPU hotplugging.
    In the past we didn't have CPU hotplug so suspend and hibernation were not
    possible on SMP systems.
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 1b2bc75c1bde6581d2694cb3ed7fb06b69685008
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Tue Jun 23 10:00:31 2009 +0100

    MIPS: Add arch generic CPU hotplug
    
    Each platform has to add support for CPU hotplugging itself by providing
    suitable definitions for the cpu_disable and cpu_die of the smp_ops
    methods and setting SYS_SUPPORTS_HOTPLUG_CPU.  A platform should only set
    SYS_SUPPORTS_HOTPLUG_CPU once all it's smp_ops definitions have the
    necessary changes.  This patch contains the changes to the dummy smp_ops
    definition for uni-processor systems.
    
    Parts of the code contributed by Cavium Inc.
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 4ac4aa5cc3b00cc558575065ae71043e92d1a69a
Author: Atsushi Nemoto <anemo at mba.ocn.ne.jp>
Date:   Wed Jun 17 13:08:31 2009 -0700

    DMA: txx9dmac: use dma_unmap_single if DMA_COMPL_{SRC,DEST}_UNMAP_SINGLE set
    
    This patch does not change actual behaviour since dma_unmap_page is just
    an alias of dma_unmap_single on MIPS.
    
    Signed-off-by: Atsushi Nemoto <anemo at mba.ocn.ne.jp>
    Cc: Ralf Baechle <ralf at linux-mips.org>
    Acked-by: Dan Williams <dan.j.williams at intel.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 2e25406fb878e2313a9d8e302ed7ff3c2831198f
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Mon Jun 22 16:17:52 2009 +0100

    MIPS: Sibyte: Fix build error if CONFIG_SERIAL_SB1250_DUART is undefined.
    
    This fixes kernel.org bugzilla 13596, see
    http://bugzilla.kernel.org/show_bug.cgi?id=13596
    
    Reported-by: dvice_null at yahoo.com
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit ab7f6f3010a6c5ae147541168705a446cee511e7
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Mon Jun 22 15:48:27 2009 +0100

    MIPS: MIPSsim: Fix build error if MSC01E_INT_BASE is undefined.
    
    This fixes kernel.org bugzilla 13595, see
    http://bugzilla.kernel.org/show_bug.cgi?id=13595
    
    Reported-by: dvice_null at yahoo.com
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 44eeab67416711db9b84610ef18c99a60415dff8
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Fri Jun 19 15:01:44 2009 +0100

    MIPS: Hibernation: Remove SMP TLB and cacheflushing code.
    
    We can't perform any flushes on SMP from swsusp_arch_resume because
    interrupts are disabled.  A cross-CPU flush is unnecessary anyway
    because all but the local CPU have already been disabled.  A local
    flush is not needed either because we didn't change any mappings.  So
    just delete the code.
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 631330f5847b3f8a7ea67d689e9f7c56833ccaa6
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Fri Jun 19 14:05:26 2009 +0100

    MIPS: Build fix - include <linux/smp.h> into all smp_processor_id() users.
    
    Some of the were relying into smp.h being dragged in by another header
    which of course is fragile.  <asm/cpu-info.h> uses smp_processor_id()
    only in macros and including smp.h there leads to an include loop, so
    don't change cpu-info.h.
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 0ca5921e791fb2011d4d6de787f6485b3900703d
Author: Ralf Baechle <ralf at linux-mips.org>
Date:   Fri Jun 19 13:51:28 2009 +0100

    MIPS: bug.h Build fix - include <linux/compiler.h>.
    
    In the past this file somehow used to be dragged in.
    
    Signed-off-by: Ralf Baechle <ralf at linux-mips.org>

commit 7433ab770327b471399f7b5baacad78e160b5393
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Thu Jun 25 02:30:10 2009 +0900

    sh: Hook up page fault events for software perf counters.
    
    This adds page fault instrumentation for the software performance
    counters. Follows the x86 and powerpc changes.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit c3cb5e193937c7aa50c323e7933507020bd26340
Merge: ea94b5034bbebc964115f119d6cd330757fce7f9 f40c67f0f7e2767f80f7cbcbc1ab86c4113c202e
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 10:26:54 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: (48 commits)
      dm mpath: change to be request based
      dm: disable interrupt when taking map_lock
      dm: do not set QUEUE_ORDERED_DRAIN if request based
      dm: enable request based option
      dm: prepare for request based option
      dm raid1: add userspace log
      dm: calculate queue limits during resume not load
      dm log: fix create_log_context to use logical_block_size of log device
      dm target:s introduce iterate devices fn
      dm table: establish queue limits by copying table limits
      dm table: replace struct io_restrictions with struct queue_limits
      dm table: validate device logical_block_size
      dm table: ensure targets are aligned to logical_block_size
      dm ioctl: support cookies for udev
      dm: sysfs add suspended attribute
      dm table: improve warning message when devices not freed before destruction
      dm mpath: add service time load balancer
      dm mpath: add queue length load balancer
      dm mpath: add start_io and nr_bytes to path selectors
      dm snapshot: use barrier when writing exception store
      ...

commit ea94b5034bbebc964115f119d6cd330757fce7f9
Merge: 650a10dc484f067883fc05a2d4116e1ee3f909c0 b81c087f6deb049023e41ce00717202a953f3939
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 10:26:24 2009 -0700

    Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb
    
    * 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb:
      uwb: allow WLP to be used with IPv6.
      uwb: event_size should be signed

commit 650a10dc484f067883fc05a2d4116e1ee3f909c0
Merge: 9937ac0cc087b03d6d73f46a5d6b38c43626e60e 916d75761c971b6e630a26bd4ba472e90ac9a4b9
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 10:22:57 2009 -0700

    Merge branch 'audit.b63' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current
    
    * 'audit.b63' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:
      Fix rule eviction order for AUDIT_DIR
      Audit: clean up all op= output to include string quoting
      Audit: move audit_get_nd completely into audit_watch
      audit: seperate audit inode watches into a subfile
      Audit: clean up audit_receive_skb
      Audit: cleanup netlink mesg handling
      Audit: unify the printk of an skb when auditd not around
      Audit: dereferencing krule as if it were an audit_watch
      Audit: better estimation of execve record length
      Audit: fix audit watch use after free

commit 9937ac0cc087b03d6d73f46a5d6b38c43626e60e
Author: Jesper Nilsson <jesper.nilsson at axis.com>
Date:   Wed Jun 24 09:33:19 2009 +0200

    MAINTAINERS: Change mailing list info for CRIS
    
    Posting to the dev-etrax mailing list is only allowed for subscribers,
    and the list is more geared toward user applications than kernel
    developers.
    
    Change to newly created mailing list for CRIS.
    
    Signed-off-by: Jesper Nilsson <jesper.nilsson at axis.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 0c26d7cc31cd81a82be3b9d7687217d49fe9c47e
Merge: 936940a9c7e3d99b25859bf1ff140d8c2480183a 21ab01e2fcbfcc0d1faba2b7336b3c0f7f3c1ac8
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 10:17:07 2009 -0700

    Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
    
    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (72 commits)
      asus-laptop: remove EXPERIMENTAL dependency
      asus-laptop: use pr_fmt and pr_<level>
      eeepc-laptop: cpufv updates
      eeepc-laptop: sync eeepc-laptop with asus_acpi
      asus_acpi: Deprecate in favor of asus-laptop
      acpi4asus: update MAINTAINER and KConfig links
      asus-laptop: platform dev as parent for led and backlight
      eeepc-laptop: enable camera by default
      ACPI: Rename ACPI processor device bus ID
      acerhdf: Acer Aspire One fan control
      ACPI: video: DMI workaround broken Acer 7720 BIOS enabling display brightness
      ACPI: run ACPI device hot removal in kacpi_hotplug_wq
      ACPI: Add the reference count to avoid unloading ACPI video bus twice
      ACPI: DMI to disable Vista compatibility on some Sony laptops
      ACPI: fix a deadlock in hotplug case
      Show the physical device node of backlight class device.
      ACPI: pdc init related memory leak with physical CPU hotplug
      ACPI: pci_root: remove unused dev/fn information
      ACPI: pci_root: simplify list traversals
      ACPI: pci_root: use driver data rather than list lookup
      ...

commit 936940a9c7e3d99b25859bf1ff140d8c2480183a
Merge: 09ce42d3167e3f20b501fa780c2415332330fac5 1cbd20d820c36f52543e3e4cd0067ebf52aa388f
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 10:03:12 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (23 commits)
      switch xfs to generic acl caching helpers
      helpers for acl caching + switch to those
      switch shmem to inode->i_acl
      switch reiserfs to inode->i_acl
      switch reiserfs to usual conventions for caching ACLs
      reiserfs: minimal fix for ACL caching
      switch nilfs2 to inode->i_acl
      switch btrfs to inode->i_acl
      switch jffs2 to inode->i_acl
      switch jfs to inode->i_acl
      switch ext4 to inode->i_acl
      switch ext3 to inode->i_acl
      switch ext2 to inode->i_acl
      add caching of ACLs in struct inode
      fs: Add new pre-allocation ioctls to vfs for compatibility with legacy xfs ioctls
      cleanup __writeback_single_inode
      ... and the same for vfsmount id/mount group id
      Make allocation of anon devices cheaper
      update Documentation/filesystems/Locking
      devpts: remove module-related code
      ...

commit 09ce42d3167e3f20b501fa780c2415332330fac5
Merge: d7ed9c05ebf56c04811276207d7110706debe09f 7959ea254ed18faee41160b1c50b3c9664735967
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 10:01:12 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6:
      bnx2: Fix the behavior of ethtool when ONBOOT=no
      qla3xxx: Don't sleep while holding lock.
      qla3xxx: Give the PHY time to come out of reset.
      ipv4 routing: Ensure that route cache entries are usable and reclaimable with caching is off
      net: Move rx skb_orphan call to where needed
      ipv6: Use correct data types for ICMPv6 type and code
      net: let KS8842 driver depend on HAS_IOMEM
      can: let SJA1000 driver depend on HAS_IOMEM
      netxen: fix firmware init handshake
      netxen: fix build with without CONFIG_PM
      netfilter: xt_rateest: fix comparison with self
      netfilter: xt_quota: fix incomplete initialization
      netfilter: nf_log: fix direct userspace memory access in proc handler
      netfilter: fix some sparse endianess warnings
      netfilter: nf_conntrack: fix conntrack lookup race
      netfilter: nf_conntrack: fix confirmation race condition
      netfilter: nf_conntrack: death_by_timeout() fix

commit d7ed9c05ebf56c04811276207d7110706debe09f
Merge: 4d8d4d251df8eaaa3dae71c8cfa7fbf4510d967d 3391faa4f18e4e33666d3d24e90e3086fcf9b922
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Wed Jun 24 09:57:10 2009 -0700

    Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6
    
    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:
      udf: remove redundant tests on unsigned
      udf: Use device size when drive reported bogus number of written blocks

commit 4d8d4d251df8eaaa3dae71c8cfa7fbf4510d967d
Author: Chuck Ebbert <cebbert at redhat.com>
Date:   Wed Jun 24 18:35:13 2009 +0100

    Remove low_latency flag setting from nozomi and mxser drivers
    
    The kernel oopses if this flag is set.
    
    [and neither driver should set it as they call tty_flip_buffer_push from IRQ
     paths so have always been buggy]
    
    Signed-off-by: Chuck Ebbert <cebbert at redhat.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 6af9a43d58f2ec455b752fb9534cf05c7e855dbe
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Wed Jun 24 18:35:05 2009 +0100

    tty: fix tty_port_block_til_ready waiting
    
    Since commit 3e3b5c087799e536871c8261b05bc28e4783c8da ("tty: use
    prepare/finish_wait"), tty_port_block_til_ready() is using
    prepare_to_wait()/finish_wait().  Those functions require that the
    wait_queue_t be initialised with .func=autoremove_wake_function, via
    DEFINE_WAIT().
    
    But the conversion from DECLARE_WAITQUEUE() to DEFINE_WAIT() was not made,
    so this code will oops in finish_wait().
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 24ed3abaa13a9499d7454a1ed9830bb53b689b94
Author: Arjan van de Ven <arjan at linux.intel.com>
Date:   Wed Jun 24 18:34:58 2009 +0100

    pci: use pci_ioremap_bar() in drivers/serial
    
    Use the newly introduced pci_ioremap_bar() function in drivers/serial.
    pci_ioremap_bar() just takes a pci device and a bar number, with the goal
    of making it really hard to get wrong, while also having a central place
    to stick sanity checks.
    
    Signed-off-by: Arjan van de Ven <arjan at linux.intel.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit ce89294c056805019d8369b3b74bb52ef51b4708
Author: Paul Fulghum <paulkf at microgate.com>
Date:   Wed Jun 24 18:34:51 2009 +0100

    synclink_gt: fix transmit race and timeout
    
    Fix race condition when adding transmit data to active DMA buffer ring
    that can cause transmit stall.
    
    Update transmit timeout when adding data to active DMA buffer ring.
    Base transmit timeout on amount of buffered data instead of using fixed
    value.
    
    Signed-off-by: Paul Fulghum <paulkf at microgate.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 2a13373cf84477460365c32842cda9a6374b845d
Author: Andrew Morton <akpm at linux-foundation.org>
Date:   Wed Jun 24 18:34:43 2009 +0100

    jsm: clean up "serial: jsm: correctly support 4 8 port boards"
    
    Remove unneeded casts.
    
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit a10b32db34898d0db58a58ef76a70c374931bbff
Author: Atsushi Nemoto <anemo at mba.ocn.ne.jp>
Date:   Wed Jun 24 18:34:34 2009 +0100

    kgdb: kgdboc console poll hooks for serial_txx9 uart
    
    Implement the serial polling hooks for the serial_txx9 uart for use with
    kgdboc.
    
    This patch once got SOB from Jason on Jul 2008 and (perhaps) merged into
    kgdb-next branch, but lost somewhere then.  I resend it now with Jason's
    Acked-by.
    
    Signed-off-by: Atsushi Nemoto <anemo at mba.ocn.ne.jp>
    Acked-by: Jason Wessel <jason.wessel at windriver.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 9c26f52b900f7207135bafc8789e1a4f5d43e096
Author: Cliff Wickman <cpw at sgi.com>
Date:   Wed Jun 24 09:41:59 2009 -0500

    x86: Fix uv bau sending buffer initialization
    
    The initialization of the UV Broadcast Assist Unit's sending
    buffers was making an invalid assumption about the
    initialization of an MMR that defines its address.
    
    The BIOS will not be providing that MMR.  So
    uv_activation_descriptor_init() should unconditionally set it.
    
    Tested on UV simulator.
    
    Signed-off-by: Cliff Wickman <cpw at sgi.com>
    Cc: <stable at kernel.org> # for v2.6.30.x
    LKML-Reference: <E1MJTfj-0005i1-W8 at eag09.americas.sgi.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 17659c60629618c0aa67eb3cb6a77d2c52486d2e
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Wed Jun 24 15:35:15 2009 +0100

    mtd: maps: Remove BUS_ID_SIZE from integrator_flash
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
    Tested-by: Catalin Marinas <catalin.marinas at arm.com>

commit d94d4adb7dd05b4e25f3c317a1b932ec74272a12
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Wed Jun 24 22:35:30 2009 +0900

    sh: make set_perf_counter_pending() static inline.
    
    Fixes up a recently introduced build error.
    
    Reported-by: Kyle McMartin <kyle at mcmartin.ca>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 3d63259583278262d9153316094e315f73ebfcb5
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Wed Jun 24 18:19:34 2009 +0530

    perf stat: Remove dead code
    
    Remove dead code and do some code alignment.
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245847774.2681.2.camel at ht.satnam>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 1cbd20d820c36f52543e3e4cd0067ebf52aa388f
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Tue Jun 9 13:29:39 2009 -0400

    switch xfs to generic acl caching helpers
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 073aaa1b142461d91f83da66db1184d7c1b1edea
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Tue Jun 9 12:11:54 2009 -0400

    helpers for acl caching + switch to those
    
    helpers: get_cached_acl(inode, type), set_cached_acl(inode, type, acl),
    forget_cached_acl(inode, type).
    
    ubifs/xattr.c needed includes reordered, the rest is a plain switchover.
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 06b16e9f68edaa1e71aee943d3c030bcf7380af1
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:56:00 2009 -0400

    switch shmem to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 281eede0328c84a8f20e0e85b807d5b51c3de4f2
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 21:07:04 2009 -0400

    switch reiserfs to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 7a77b15d9294749809de918e24bebc39e0fbc9ab
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 21:01:13 2009 -0400

    switch reiserfs to usual conventions for caching ACLs
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit e68888bcb60ccba4dc21df9f2d8cd7325b64dce7
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 20:46:54 2009 -0400

    reiserfs: minimal fix for ACL caching
    
    reiserfs uses NULL as "unknown" and ERR_PTR(-ENODATA) as "no ACL";
    several codepaths store the former instead of the latter.
    
    All those codepaths go through iset_acl() and all cases when it's
    called with NULL acl are for the second variety, so the minimal
    fix is to teach iset_acl() to deal with that.
    
    Proper fix is to switch to more usual conventions and avoid back
    and forth between internally used ERR_PTR(-ENODATA) and NULL
    expected by the rest of the kernel.
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit d441b1c293149212045de00f346c8ea6cd41cce4
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:56:34 2009 -0400

    switch nilfs2 to inode->i_acl
    
    Actually, get rid of private analog, since nothing in there is
    using ACLs at all so far.
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 5affd88a104af43f0063a12ad1ee4c7a587945dc
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:55:32 2009 -0400

    switch btrfs to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 290c263bf83cd78e53b1aa3b42165f588163f2be
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:55:12 2009 -0400

    switch jffs2 to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 05fc0790b6c9c611129f2f712d00b6a8a364e8d2
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:54:52 2009 -0400

    switch jfs to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit d4bfe2f76d785cc77611a4bda8cedaff358d8c7d
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:54:26 2009 -0400

    switch ext4 to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 6582a0e6f6bc7bf64817b9e1a424782855292ab0
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:53:58 2009 -0400

    switch ext3 to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 5e78b435683daaaacadad1b2aeefb8904cf6acfb
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:52:55 2009 -0400

    switch ext2 to inode->i_acl
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit f19d4a8fa6f9b6ccf54df0971c97ffcaa390b7b0
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Mon Jun 8 19:50:45 2009 -0400

    add caching of ACLs in struct inode
    
    No helpers, no conversions yet.
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 3e63cbb1efca7dd3137de1bb475e2e068e38ef23
Author: Ankit Jain <me at ankitjain.org>
Date:   Fri Jun 19 14:28:07 2009 -0400

    fs: Add new pre-allocation ioctls to vfs for compatibility with legacy xfs ioctls
    
    This patch adds ioctls to vfs for compatibility with legacy XFS
    pre-allocation ioctls (XFS_IOC_*RESVP*). The implementation
    effectively invokes sys_fallocate for the new ioctls.
    Also handles the compat_ioctl case.
    Note: These legacy ioctls are also implemented by OCFS2.
    
    [AV: folded fixes from hch]
    
    Signed-off-by: Ankit Jain <me at ankitjain.org>
    Signed-off-by: Christoph Hellwig <hch at lst.de>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 01c031945f2755c7afaaf456088543312f2b72ea
Author: Christoph Hellwig <hch at lst.de>
Date:   Mon Jun 8 13:35:40 2009 +0200

    cleanup __writeback_single_inode
    
    There is no reason to for the split between __writeback_single_inode and
    __sync_single_inode, the former just does a couple of checks before
    tail-calling the latter.  So merge the two, and while we're at it split
    out the I_SYNC waiting case for data integrity writers, as it's
    logically separate function.  Finally rename __writeback_single_inode to
    writeback_single_inode.
    
    Signed-off-by: Christoph Hellwig <hch at lst.de>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit f21f62208a6f60e2e05440b2e438d9541822dc4d
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Wed Jun 24 03:12:00 2009 -0400

    ... and the same for vfsmount id/mount group id
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit c63e09ecccb50f930e899d7005edc5411ee86d4f
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Wed Jun 24 02:05:18 2009 -0400

    Make allocation of anon devices cheaper
    
    Standard trick - add a new variable (start) such that
    for each n < start n is known to be busy.  Allocation can
    skip checking everything in [0..start) and if it returns
    n, we can set start to n + 1.  Freeing below start sets
    start to what we'd just freed.
    
    Of course, it still sucks if we do something like
    	free 0
    	allocate
    	allocate
    in a loop - still O(n^2) time.  However, on saner loads it
    improves the things a lot and the entire thing is not worth
    the trouble of switching to something with better worst-case
    behaviour.
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 7e325d3a6b117c7288bfc0755410e9d9d2b71326
Author: Christoph Hellwig <hch at lst.de>
Date:   Fri Jun 19 20:22:37 2009 +0200

    update Documentation/filesystems/Locking
    
    The rules for locking in many superblock operations has changed
    significantly, so update the documentation for it.  Also correct some
    older updates and ommissions.
    
    Signed-off-by: Christoph Hellwig <hch at lst.de>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit f6cc746bbb3b8a8ceb8514a7906ba582607a8cf7
Author: H. Peter Anvin <hpa at zytor.com>
Date:   Tue Jun 16 21:15:04 2009 -0700

    devpts: remove module-related code
    
    These days, the devpts filesystem is closely integrated with the pty
    memory management, and cannot be built as a module, even less removed
    from the kernel.  Accordingly, remove all module-related stuff from
    this filesystem.
    
    [ v2: only remove code that's actually dead ]
    
    Signed-off-by: H. Peter Anvin <hpa at zytor.com>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 3b22edc5730b87d360ee7dd7143397ba09b73a47
Author: Trond Myklebust <Trond.Myklebust at netapp.com>
Date:   Tue Jun 23 17:29:49 2009 -0400

    VFS: Switch init_mount_tree() to use the new create_mnt_ns() helper
    
    Eliminates some duplicated code...
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust at netapp.com>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 654f562c526cf9dfb8d453f687341fe0777ee454
Author: J. R. Okajima <hooanon05 at yahoo.co.jp>
Date:   Thu Jun 18 23:30:15 2009 +0900

    vfs: fix nd->root leak in do_filp_open()
    
    commit 2a737871108de9ba8930f7650d549f1383767f8b "Cache root in nameidata"
    introduced a new member nd->root, but forgot to put it in do_filp_open().
    
    Signed-off-by: J. R. Okajima <hooanon05 at yahoo.co.jp>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit b5450d9c84bdd38b261922057cd167da51dfae93
Author: Christoph Hellwig <hch at lst.de>
Date:   Fri Jun 19 10:30:07 2009 +0200

    reiserfs: remove stray unlock_super in reiserfs_resize
    
    Reiserfs doesn't use lock_super anywhere internally, and ->remount_fs
    which calls reiserfs_resize does have it currently but also expects it
    to be held on return, so there's no business for the unlock_super here.
    
    Signed-off-by: Christoph Hellwig <hch at lst.de>
    Acked by Edward Shishkin <edward.shishkin at gmail.com>
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit c912e7a58054304575fe88574c776be7e684098e
Author: Takashi Iwai <tiwai at suse.de>
Date:   Wed Jun 24 14:14:34 2009 +0200

    ALSA: hda - Fix support for Samsung P50 with AD1986A codec
    
    Samsung P50 requires the HP auto-muting unlike other Samsung models.
    Added a new model=samsung-p50 to support this.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 03c405ad314d3c4e049b8d04500e54e833d16747
Author: Takashi Iwai <tiwai at suse.de>
Date:   Wed Jun 24 14:10:15 2009 +0200

    ALSA: hda - Generalize the pin-detect quirk for Lenovo N100
    
    Add a new flag to ad_spec struct so that the same hack can be used for
    any other models (if any).  This also allows other models to reuse the
    auto-mute functions.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 6f4b67b8ff707147e14ee71045ab25aa286520f2
Author: Shin-ichiro KAWASAKI <kawasaki at juno.dti.ne.jp>
Date:   Sun Jun 21 10:56:22 2009 +0000

    clocksource: sh_tmu: Make undefined TCOR behaviour less undefined.
    
    Avoid undocumented vague TMU behavior when zero value is set to TCOR.
    
    This primarily fixes up issues encountered under qemu with a zero-length
    period, while the hardware itself is fairly ambivalent one way or the
    other.
    
    Signed-off-by: Shin-ichiro KAWASAKI <kawasaki at juno.dti.ne.jp>
    Acked-by: Magnus Damm <damm at igel.co.jp>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 16d11a829ed197b719723f81d82e7f1a42f5c681
Author: Takashi Iwai <tiwai at suse.de>
Date:   Wed Jun 24 14:07:53 2009 +0200

    ALSA: hda - Simplify AD1986A mixer definitions
    
    Split mixer element arrays of AD1986A models to several pieces so that
    each model can share the same mixer arrays.
    This removes lots of duplicated data.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 3391faa4f18e4e33666d3d24e90e3086fcf9b922
Author: Roel Kluin <roel.kluin at gmail.com>
Date:   Mon Jun 22 23:12:29 2009 +0200

    udf: remove redundant tests on unsigned
    
    first_block and goal are unsigned. When negative they are wrapped and caught by
    the other test.
    
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Signed-off-by: Jan Kara <jack at suse.cz>

commit 9d612beff5089b89a295a2331883a8ce3fff08c1
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 17:33:15 2009 +0800

    tracing: Fix trace_buf_size boot option
    
    We should be able to specify [KMG] when setting trace_buf_size
    boot option, as documented in kernel-parameters.txt
    
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A41F2DB.4020102 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit d7e2f36d9a92284754ed5254562766cb3d61c7ca
Author: David S. Miller <davem at davemloft.net>
Date:   Wed Jun 24 02:36:17 2009 -0700

    ide cs5520: Initialize second port's interrupt number.
    
    In 86ccf37c6acd74cf7e4b7751ee045de19943c5a0 the driver was modified
    to deal with the removal of the pciirq argument to ide_pci_setup_ports().
    
    But in the conversion only the first port's IRQ gets setup.
    
    Inspired by a patch by Bartlomiej Zolnierkiewicz., and with help from
    Alan Cox.
    
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 507e123151149e578c9aae33eb876c49824da5f8
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Tue Jun 23 17:38:15 2009 +0200

    timer stats: Optimize by adding quick check to avoid function calls
    
    When the kernel is configured with CONFIG_TIMER_STATS but timer
    stats are runtime disabled we still get calls to
    __timer_stats_timer_set_start_info which initializes some
    fields in the corresponding struct timer_list.
    
    So add some quick checks in the the timer stats setup functions
    to avoid function calls to __timer_stats_timer_set_start_info
    when timer stats are disabled.
    
    In an artificial workload that does nothing but playing ping
    pong with a single tcp packet via loopback this decreases cpu
    consumption by 1 - 1.5%.
    
    This is part of a modified function trace output on SLES11:
    
     perl-2497  [00] 28630647177732388 [+  125]: sk_reset_timer <-tcp_v4_rcv
     perl-2497  [00] 28630647177732513 [+  125]: mod_timer <-sk_reset_timer
     perl-2497  [00] 28630647177732638 [+  125]: __timer_stats_timer_set_start_info <-mod_timer
     perl-2497  [00] 28630647177732763 [+  125]: __mod_timer <-mod_timer
     perl-2497  [00] 28630647177732888 [+  125]: __timer_stats_timer_set_start_info <-__mod_timer
     perl-2497  [00] 28630647177733013 [+   93]: lock_timer_base <-__mod_timer
    
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Cc: Andrew Morton <akpm at linux-foundation.org>
    Cc: Martin Schwidefsky <schwidefsky at de.ibm.com>
    Cc: Mustafa Mesanovic <mustafa.mesanovic at de.ibm.com>
    Cc: Arjan van de Ven <arjan at infradead.org>
    LKML-Reference: <20090623153811.GA4641 at osiris.boeblingen.de.ibm.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit d82d62444f87e5993af2fa82ed636b2206e052ea
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 09:54:54 2009 +0800

    ftrace: Fix t_hash_start()
    
    When the output of set_ftrace_filter is larger than PAGE_SIZE,
    t_hash_start() will be called the 2nd time, and then we start
    from the head of a hlist, which is wrong and causes some entries
    to be outputed twice.
    
    The worse is, if the hlist is large enough, reading set_ftrace_filter
    won't stop but in a dead loop.
    
    Reviewed-by: Liming Wang <liming.wang at windriver.com>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A41876E.2060407 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 694ce0a544fba37a60025a6803ee6265be8a2a22
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 09:54:19 2009 +0800

    ftrace: Don't manipulate @pos in t_start()
    
    It's rather confusing that in t_start(), in some cases @pos is
    incremented, and in some cases it's decremented and then incremented.
    
    This patch rewrites t_start() in a much more general way.
    
    Thus we fix a bug that if ftrace_filtered == 1, functions have tracer
    hooks won't be printed, because the branch is always unreachable:
    
    static void *t_start(...)
    {
    	...
    	if (!p)
    		return t_hash_start(m, pos);
    	return p;
    }
    
    Before:
      # echo 'sys_open' > /mnt/tracing/set_ftrace_filter
      # echo 'sys_write:traceon:4' >> /mnt/tracing/set_ftrace_filter
      sys_open
    
    After:
      # echo 'sys_open' > /mnt/tracing/set_ftrace_filter
      # echo 'sys_write:traceon:4' >> /mnt/tracing/set_ftrace_filter
      sys_open
      sys_write:traceon:count=4
    
    Reviewed-by: Liming Wang <liming.wang at windriver.com>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A41874B.4090507 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 85951842a1020669f0a9eb0f0d1853b41341f097
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 09:54:00 2009 +0800

    ftrace: Don't increment @pos in g_start()
    
    It's wrong to increment @pos in g_start(). It causes some entries
    lost when reading set_graph_function, if the output of the file
    is larger than PAGE_SIZE.
    
    Reviewed-by: Liming Wang <liming.wang at windriver.com>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A418738.7090401 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit f129e965bef40c6153e4fe505f1e408286213424
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 09:53:44 2009 +0800

    tracing: Reset iterator in t_start()
    
    The iterator is m->private, but it's not reset to trace_types in
    t_start(). If the output is larger than PAGE_SIZE and t_start()
    is called the 2nd time, things will go wrong.
    
    Reviewed-by: Liming Wang <liming.wang at windriver.com>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A418728.5020506 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 2961bf345fd1b736c3db46cad0f69855f67fbe9c
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 09:53:26 2009 +0800

    trace_stat: Don't increment @pos in seq start()
    
    It's wrong to increment @pos in stat_seq_start(). It causes some
    stat entries lost when reading stat file, if the output of the file
    is larger than PAGE_SIZE.
    
    Reviewed-by: Liming Wang <liming.wang at windriver.com>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A418716.90209 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit c8961ec6da22ea010bf4470a8e0fb3fdad0f11c4
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 09:52:58 2009 +0800

    tracing_bprintk: Don't increment @pos in t_start()
    
    It's wrong to increment @pos in t_start(), otherwise we'll lose
    some entries when reading printk_formats, if the output is larger
    than PAGE_SIZE.
    
    Reported-by: Lai Jiangshan <laijs at cn.fujitsu.com>
    Reviewed-by: Liming Wang <liming.wang at windriver.com>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A4186FA.1020106 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit e1c7e2a6e67fe9db19dd15e71614526a31b5fdb1
Author: Li Zefan <lizf at cn.fujitsu.com>
Date:   Wed Jun 24 09:52:29 2009 +0800

    tracing/events: Don't increment @pos in s_start()
    
    While testing syscall tracepoints posted by Jason, I found 3 entries
    were missing when reading available_events. The output size of
    available_events is < 4 pages, which means we lost 1 entry per page.
    
    The cause is, it's wrong to increment @pos in s_start().
    
    Actually there's another bug here -- reading avaiable_events/set_events
    can race with module unload:
    
      # cat available_events               |
          s_start()                        |
          s_stop()                         |
                                           | # rmmod foo.ko
          s_start()                        |
            call = list_entry(m->private)  |
    
    @call might be freed and accessing it will lead to crash.
    
    Reviewed-by: Liming Wang <liming.wang at windriver.com>
    Signed-off-by: Li Zefan <lizf at cn.fujitsu.com>
    Cc: Steven Rostedt <rostedt at goodmis.org>
    Cc: Frederic Weisbecker <fweisbec at gmail.com>
    LKML-Reference: <4A4186DD.6090405 at cn.fujitsu.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit c14dab5c0782ef632742963a66276a195418a63c
Author: Yong Wang <yong.y.wang at linux.intel.com>
Date:   Wed Jun 24 10:13:24 2009 +0800

    perf_counter, x86: Set global control MSR correctly
    
    Previous code made an assumption that the power on value of global
    control MSR has enabled all fixed and general purpose counters properly.
    
    However, this is not the case for certain Intel processors, such as
    Atom - and it might also be firmware dependent.
    
    Each enable bit in IA32_PERF_GLOBAL_CTRL is AND'ed with the
    enable bits for all privilege levels in the respective IA32_PERFEVTSELx
    or IA32_PERF_FIXED_CTR_CTRL MSRs to start/stop the counting of
    respective counters. Counting is enabled if the AND'ed results is true;
    counting is disabled when the result is false.
    
    The end result is that all fixed counters are always disabled on Atom
    processors because the assumption is just invalid.
    
    Fix this by not initializing the ctrl-mask out of the global MSR,
    but setting it to perf_counter_mask.
    
    Reported-by: Stephane Eranian <eranian at googlemail.com>
    Signed-off-by: Yong Wang <yong.y.wang at intel.com>
    Cc: Arjan van de Ven <arjan at infradead.org>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    LKML-Reference: <20090624021324.GA2788 at ywang-moblin2.bj.intel.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit f7679dabfaf69840b000d238a020cee7157aca17
Author: Roel Kluin <roel.kluin at gmail.com>
Date:   Mon Jun 22 18:42:33 2009 +0200

    perf_counter tools: Fix strbuf_fread() error path handling
    
    size_t res cannot be less than 0 - fread returns 0 on error.
    
    [ Updated by: René Scharfe <rene.scharfe at lsrfire.ath.cx> ]
    
    Reported-by: Ingo Molnar <mingo at elte.hu>
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Cc: Andrew Morton <akpm at linux-foundation.org>
    Cc: Junio C Hamano <gitster at pobox.com>
    LKML-Reference: <4A3FB479.2090902 at lsrfire.ath.cx>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit a1317f714af7aed60ddc182d0122477cbe36ee9b
Author: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
Date:   Tue Jun 23 23:52:17 2009 -0700

    ide: improve handling of Power Management requests
    
    Make hwif->rq point to PM request during PM sequence and do not allow
    any other types of requests to slip in (the old comment was never correct
    as there should be no such requests generated during PM sequence).
    
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit ba9413bd284e79ea43b0ae406a7a29526aaf82b3
Author: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
Date:   Tue Jun 23 16:11:10 2009 -0700

    ide: add QUANTUM FIREBALLct20 30 with firmware APL.090 to ivb_list[]
    
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 346c17a6cf60375323adfaa4b8a9d841049f890e
Author: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
Date:   Mon Jun 22 07:38:26 2009 +0000

    ide: relax DMA info validity checking
    
    There are some broken devices that report multiple DMA xfer modes
    enabled at once (ATA spec doesn't allow it) but otherwise work fine
    with DMA so just delete ide_id_dma_bug().
    
    [ As discovered by detective work by Frans and Bart, due to how
      handling of the ID block was handled before commit c419993
      ("ide-iops: only clear DMA words on setting DMA mode") this
      check was always seeing zeros in the fields or other similar
      garbage.  Therefore this check wasn't actually checking anything.
      Now that the tests actually check the real bits, all we see are
      devices that trigger the check yet work perfectly fine, therefore
      killing this useless check is the best thing to do. -DaveM ]
    
    Reported-by: Frans Pop <elendil at planet.nl>
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit d9ae62433e46909fc9e7d97ce74202c2851667b8
Author: Frans Pop <elendil at planet.nl>
Date:   Tue Jun 23 16:02:58 2009 -0700

    ide-cd: Improve "weird block size" error message
    
    Currently the error gets repeated too frequently, for example each
    time HAL polls the device when a disc is present. Avoid that by using
    printk_once instead of printk.
    
    Also join the error and corrective action messages into a single line.
    
    Signed-off-by: Frans Pop <elendil at planet.nl>
    Acked-by: Borislav Petkov <petkovbb at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit af054ed0018f0a69f8ea6f7546cbf34385edf13b
Author: David S. Miller <davem at davemloft.net>
Date:   Tue Jun 23 16:01:06 2009 -0700

    ide-cd: Don't warn on bogus block size unless it actually matters.
    
    Frans Pop reported that his CDROM drive reports a blocksize of 2352,
    and this causes new warnings due to commit
    e8e7b9eb11c34ee18bde8b7011af41938d1ad667 ("ide-cd: fix oops when using
    growisofs").
    
    What we're trying to do is make sure that "blocklen >> SECTOR_BITS"
    is something the block layer won't choke on.
    
    And for Frans' case "2352 >> SECTOR_BITS" is equal to
    "2048 >> SECTOR_BITS", and thats "4".
    
    So warning in this case gives no real benefit.
    
    Reported-by: Frans Pop <elendil at planet.nl>
    Tested-by: Frans Pop <elendil at planet.nl>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit ffc36c7610731115c77700dcc53901920361c235
Author: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
Date:   Tue Jun 23 03:43:00 2009 -0700

    ide: fix handling of unexpected IRQs vs request_irq()
    
    Add ide_host_enable_irqs() helper and use it in ide_host_register()
    before registering ports.  Then remove no longer needed IRQ unmasking
    from in init_irq().
    
    This should fix the problem with "screaming" shared IRQ on the first
    port (after request_irq() call while we have the unexpected IRQ pending
    on the second port) which was uncovered by my rework of the serialized
    interfaces support.
    
    Reported-by: Frans Pop <elendil at planet.nl>
    Tested-by: Frans Pop <elendil at planet.nl>
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier at gmail.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 7959ea254ed18faee41160b1c50b3c9664735967
Author: Ooiwa Naohiro <nooiwa at miraclelinux.com>
Date:   Wed Jun 24 00:19:06 2009 -0700

    bnx2: Fix the behavior of ethtool when ONBOOT=no
    
    I found a little bug.
    
    When configure in ifcfg-eth* is ONBOOT=no,
    the behavior of ethtool command is wrong.
    
        # grep ONBOOT /etc/sysconfig/network-scripts/ifcfg-eth2
        ONBOOT=no
        # ethtool eth2 | tail -n1
                Link detected: yes
    
    I think "Link detected" should be "no".
    
    Signed-off-by: Ooiwa Naohiro <nooiwa at miraclelinux.com>
    Acked-by: Michael Chan <mchan at broadcom.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 8b169b5f1f46da8ece1ce7304cda7155fffe3892
Author: Huang Weiyi <weiyi.huang at gmail.com>
Date:   Wed Jun 24 16:31:50 2009 +1000

    drm: remove unused #include <linux/version.h>'s
    
    Remove unused #include <linux/version.h>('s) in
     drivers/gpu/drm/ttm/ttm_bo_util.c
     drivers/gpu/drm/ttm/ttm_bo_vm.c
     drivers/gpu/drm/ttm/ttm_tt.c
    
    Signed-off-by: Huang Weiyi <weiyi.huang at gmail.com>
    Signed-off-by: Dave Airlie <airlied at redhat.com>

commit 5b6345be1b41db5e70f90c3559c3b40c8abcde8b
Merge: 176f613e60b63f2d77e6c69f036cfc754f3aaac6 b5aa8a0fc132dd512c33e7c2621d075e3b77a65e
Author: Dave Airlie <airlied at linux.ie>
Date:   Wed Jun 24 16:20:19 2009 +1000

    Merge remote branch 'origin/drm-intel-next' of ../drm-intel into drm-fixes

commit 176f613e60b63f2d77e6c69f036cfc754f3aaac6
Author: Jerome Glisse <jglisse at redhat.com>
Date:   Mon Jun 22 18:16:13 2009 +0200

    drm/radeon: fix driver initialization order so radeon kms can be builtin
    
    TTM need to be initialized before radeon if KMS is enabled otherwise
    the kernel will crash hard.
    
    Signed-off-by: Jerome Glisse <jglisse at redhat.com>
    Signed-off-by: Dave Airlie <airlied at linux.ie>

commit e14cbee401cd00779a5267128371506b22c77bc9
Author: Michel Dänzer <michel at daenzer.net>
Date:   Tue Jun 23 12:36:32 2009 +0200

    drm: Fix shifts which were miscalculated when converting from bitfields.
    
    Looks like I managed to mess up most shifts when converting from bitfields. :(
    
    The patch below works on my Thinkpad T500 (as well as on my PowerBook,
    where the previous change worked as well, maybe out of luck...). I'd
    appreciate more testing and eyes looking over it though.
    
    Signed-off-by: Michel Dänzer <daenzer at vmware.com>
    Tested-by: Michael Pyne <mpyne at kde.org>
    Signed-off-by: Dave Airlie <airlied at linux.ie>

commit b1e3a6d1c4d0ac75ad8289bcfd69efcc9b1bc6e5
Author: Michel Dänzer <daenzer at vmware.com>
Date:   Tue Jun 23 16:12:54 2009 +0200

    drm/radeon: Clear surface registers at initialization time.
    
    Some PowerMac firmwares set up a tiling surface at the beginning of VRAM
    which messes us up otherwise.
    
    Signed-off-by: Michel Dänzer <daenzer at vmware.com>
    Signed-off-by: Dave Airlie <airlied at linux.ie>

commit 696d4df1dbfe0b054e94c1990b49c1727ffc1ff0
Author: Michel Dänzer <daenzer at vmware.com>
Date:   Tue Jun 23 16:12:53 2009 +0200

    drm/radeon: Don't initialize acceleration related fields of struct fb_info.
    
    Might lure userspace into trying silly things otherwise.
    
    Signed-off-by: Michel Dänzer <daenzer at vmware.com>
    Signed-off-by: Dave Airlie <airlied at linux.ie>

commit f92e93eb5f4d56d73215f089580d53597bacd468
Author: Jerome Glisse <jglisse at redhat.com>
Date:   Mon Jun 22 18:15:58 2009 +0200

    drm/radeon: fix radeon kms framebuffer device
    
    smem.start is a physical address which kernel can remap to access
    video memory of the fb buffer. We now pin the fb buffer into vram
    by doing so we are loosing vram but fbdev need to be reworked to
    allow change in framebuffer address.
    
    Signed-off-by: Jerome Glisse <jglisse at redhat.com>
    Signed-off-by: Dave Airlie <airlied at linux.ie>

commit 21ab01e2fcbfcc0d1faba2b7336b3c0f7f3c1ac8
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Fri Jun 19 14:52:11 2009 +0200

    asus-laptop: remove EXPERIMENTAL dependency
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 2fcc23da5522b89677fb0af6043a88e88fdd09a2
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Fri Jun 19 14:52:03 2009 +0200

    asus-laptop: use pr_fmt and pr_<level>
    
    Convert the unusual printk(ASUS_<level> uses to
    the more standard pr_fmt and pr_<level>(.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit b31d0fde89c905673ceed0404d5ae24f2261d7c7
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Tue Jun 16 19:28:56 2009 +0000

    eeepc-laptop: cpufv updates
    
    Limit cpufv input to acceptables values.
    Add an available_cpufv file to show available
    presets.
    Change cpufv ouput format from %d to %#x, it won't
    break compatibility with existing userspace tools, but
    it provide a more human readable output.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit b7b700d4a473d56103e87e341ad555e8a7cce06d
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Tue Jun 16 19:28:52 2009 +0000

    eeepc-laptop: sync eeepc-laptop with asus_acpi
    
    In the default Eee PC distribution, there is a modified
    asus_acpi driver. eeepc-laptop is a cleaned version of this
    driver. Sync ASL enum and getter/setters with asus_acpi.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 6122af3743a48dddae19810626dd7c9c8e6c1df8
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Tue Jun 16 19:28:48 2009 +0000

    asus_acpi: Deprecate in favor of asus-laptop
    
    asus-laptop have been merged in the kernel two years ago,
    it is now stable and used by most distribution instead of
    the old asus_acpi driver.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 76593d6fb0a51cb0d666f37d91a990e36c068365
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Tue Jun 16 19:28:47 2009 +0000

    acpi4asus: update MAINTAINER and KConfig links
    
    The bug tracker have moved from sourceforge to
    http://dev.iksaif.net . The homepage of the project
    is now http://acpi4asus.sf.net with links to the new
    bug tracker. No change for the mailing list.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 116bf2e010a0600371aede450351973821dfd9e2
Author: Corentin Chary <corentincj at iksaif.net>
Date:   Tue Jun 16 19:28:46 2009 +0000

    asus-laptop: platform dev as parent for led and backlight
    
    Makes asus-laptop platform device the parent device of
    backlight and led classes.
    
    With this patch, leds and backlight are also available in
    /sys/devices/platform/asus-laptop/ like thinkpad_acpi.
    
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit cede2cb6ee9b0ddaa3dbc9939418ff177a831600
Author: Pekka Enberg <penberg at cs.helsinki.fi>
Date:   Tue Jun 16 19:28:45 2009 +0000

    eeepc-laptop: enable camera by default
    
    If we leave the camera disabled by default, userspace programs (e.g.
    Skype, Cheese) leave the user out in the cold saying that the machine
    "has no camera." Therefore, it's better to enable camera by default and
    let people who really don't want it just disable the thing.
    
    To reduce power usage you should enable USB autosuspend:
    echo -n auto > /sys/bus/usb/drivers/uvcvideo/*:*/../power/level
    
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Pekka Enberg <penberg at cs.helsinki.fi>
    Signed-off-by: Corentin Chary <corentincj at iksaif.net>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 57599cc997b81a7c4f764693a7316886a72067fe
Merge: fbe8cddd2d85979d273d7937a2b8a47498694d91 586caae36cece718ff46b3a59b88af79e9f7a2e0
Author: Len Brown <len.brown at intel.com>
Date:   Wed Jun 24 01:22:20 2009 -0400

    Merge branch 'bjorn-notify' into release
    
    Conflicts:
    	drivers/platform/x86/eeepc-laptop.c
    
    Signed-off-by: Len Brown <len.brown at intel.com>

commit fbe8cddd2d85979d273d7937a2b8a47498694d91
Merge: 4e8a2372f9255a1464ef488ed925455f53fbdaa1 e86435eb91b2bff114c5a02e46e16ce21b647ebe 7fe2a6c275a5bcec52fb3ef643daaf8265b7af0d 0705495d9010048e293013d9d129cf723363a0a8 35a7c64fbc77bab4ca8ae477e8ab278ccd679ce2 152a4e630f7ffdd7ff64427c4ba488dc0bce76af 86e437f077c68112edcb6854ec036ed7e3f9a7f3 c8d72a5e76988140bfdfd8722f2228d94e7fa10f 7a04b8491a077471a34938b8ca060c37220953be ee1ca48fae7e575d5e399d4fdcfe0afc1212a64c 9eccbc2f67efd0d19c47f40182abf2965c287add 7e275cc4e8e20f82740bf40ae2f5695e9e35ff09 7b768f07dce463a054c9dd84862d15ccc3d2b712 8cb24c8fd70ea8431744de1ca0ca34ab45fbbdaa 113b3a2b901573961509e81a28e9546cf9defef0 d73772474f6ebbacbe820c31c0fa1cffa7160246 056c308d3e4859334b519033d62ef050f0e0e261 871043bc463e7d191e7b5b00436a8852921dd833
Author: Len Brown <len.brown at intel.com>
Date:   Wed Jun 24 01:19:50 2009 -0400

    Merge branches 'acerhdf', 'acpi-pci-bind', 'bjorn-pci-root', 'bugzilla-12904', 'bugzilla-13121', 'bugzilla-13396', 'bugzilla-13533', 'bugzilla-13612', 'c3_lock', 'hid-cleanups', 'misc-2.6.31', 'pdc-leak-fix', 'pnpacpi', 'power_nocheck', 'thinkpad_acpi', 'video' and 'wmi' into release

commit 7a04b8491a077471a34938b8ca060c37220953be
Author: Zhao Yakui <yakui.zhao at intel.com>
Date:   Wed Jun 24 11:46:44 2009 +0800

    ACPI: Rename ACPI processor device bus ID
    
    Some BIOS re-use the same processor bus id
    in different scope:
    
    	\_SB.SCK0.CPU0
    	\_SB.SCK1.CPU0
    
    But the (deprecated) /proc/acpi/ interface
    assumes the bus-id's are unique, resulting in an OOPS
    when the processor driver is loaded:
    
    WARNING: at fs/proc/generic.c:590 proc_register+0x148/0x180()
    Hardware name: Sunrise Ridge
    proc_dir_entry 'processor/CPU0' already registered
    Call Trace:
     [<ffffffff8023f7ef>] warn_slowpath+0xb1/0xe5
     [<ffffffff8036243b>] ? ida_get_new_above+0x190/0x1b1
     [<ffffffff803625a8>] ? idr_pre_get+0x5f/0x75
     [<ffffffff8030b2f6>] proc_register+0x148/0x180
     [<ffffffff8030b4ff>] proc_mkdir_mode+0x3d/0x52
     [<ffffffff8030b525>] proc_mkdir+0x11/0x13
     [<ffffffffa0014b89>] acpi_processor_start+0x755/0x9bc [processor]
    
    Rename the processor device bus id. And the new bus id will be
    generated as the following format:
    	CPU+ CPU ID
    
    For example: If the cpu ID is 5, then the bus ID will be "CPU5".
    	If the CPU ID is 10, then the bus ID will be "CPUA".
    
    Yes, this will change the directory names seen
    in /proc/acpi/processor/* on some systems.
    Before this patch, those directory names where
    totally arbitrary strings based on the interal AML device strings.
    
    http://bugzilla.kernel.org/show_bug.cgi?id=13612
    
    Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit e86435eb91b2bff114c5a02e46e16ce21b647ebe
Author: Peter Feuerer <peter at piie.net>
Date:   Sun Jun 21 18:53:03 2009 +0200

    acerhdf: Acer Aspire One fan control
    
    Acerhdf is a driver for Acer Aspire One netbooks. It allows
    to access the temperature sensor and to control the fan.
    
    Signed-off-by: Peter Feuerer <peter at piie.net>
    Signed-off-by: Andreas Mohr <andi at lisas.de>
    Signed-off-by: Borislav Petkov <petkovbb at gmail.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 916d75761c971b6e630a26bd4ba472e90ac9a4b9
Author: Al Viro <viro at zeniv.linux.org.uk>
Date:   Wed Jun 24 00:02:38 2009 -0400

    Fix rule eviction order for AUDIT_DIR
    
    If syscall removes the root of subtree being watched, we
    definitely do not want the rules refering that subtree
    to be destroyed without the syscall in question having
    a chance to match them.
    
    Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>

commit 9d9609851003ebed15957f0f2ce18492739ee124
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:37 2009 -0400

    Audit: clean up all op= output to include string quoting
    
    A number of places in the audit system we send an op= followed by a string
    that includes spaces.  Somehow this works but it's just wrong.  This patch
    moves all of those that I could find to be quoted.
    
    Example:
    
    Change From: type=CONFIG_CHANGE msg=audit(1244666690.117:31): auid=0 ses=1
    subj=unconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op=remove rule
    key="number2" list=4 res=0
    
    Change To: type=CONFIG_CHANGE msg=audit(1244666690.117:31): auid=0 ses=1
    subj=unconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op="remove rule"
    key="number2" list=4 res=0
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit 35fe4d0b1b12286a81938e9c5fdfaf639ac0ce5b
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:36 2009 -0400

    Audit: move audit_get_nd completely into audit_watch
    
    audit_get_nd() is only used  by audit_watch and could be more cleanly
    implemented by having the audit watch functions call it when needed rather
    than making the generic audit rule parsing code deal with those objects.
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit cfcad62c74abfef83762dc05a556d21bdf3980a2
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:36 2009 -0400

    audit: seperate audit inode watches into a subfile
    
    In preparation for converting audit to use fsnotify instead of inotify we
    seperate the inode watching code into it's own file.  This is similar to
    how the audit tree watching code is already seperated into audit_tree.c
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit ea7ae60bfe39aeedfb29571c47280bf0067ee5f3
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:35 2009 -0400

    Audit: clean up audit_receive_skb
    
    audit_receive_skb is hard to clearly parse what it is doing to the netlink
    message.  Clean the function up so it is easy and clear to see what is going
    on.
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit ee080e6ce93d5993390bccf68c1df5efd9351276
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:35 2009 -0400

    Audit: cleanup netlink mesg handling
    
    The audit handling of netlink messages is all over the place.  Clean things
    up, use predetermined macros, generally make it more readable.
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit 038cbcf65fd6a30c79e3917690b8c46321a27915
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:35 2009 -0400

    Audit: unify the printk of an skb when auditd not around
    
    Remove code duplication of skb printk when auditd is not around in userspace
    to deal with this message.
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit e85188f424c8eec7f311deed9a70bec57aeed741
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:34 2009 -0400

    Audit: dereferencing krule as if it were an audit_watch
    
    audit_update_watch() runs all of the rules for a given watch and duplicates
    them, attaches a new watch to them, and then when it finishes that process
    and has called free on all of the old rules (ok maybe still inside the rcu
    grace period) it proceeds to use the last element from list_for_each_entry_safe()
    as if it were a krule rather than being the audit_watch which was anchoring
    the list to output a message about audit rules changing.
    
    This patch unfies the audit message from two different places into a helper
    function and calls it from the correct location in audit_update_rules().  We
    will now get an audit message about the config changing for each rule (with
    each rules filterkey) rather than the previous garbage.
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit b87ce6e4187c24b06483c8266822ce5e6b7fa7f3
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:34 2009 -0400

    Audit: better estimation of execve record length
    
    The audit execve record splitting code estimates the length of the message
    generated.  But it forgot to include the "" that wrap each string in its
    estimation.  This means that execve messages with lots of tiny (1-2 byte)
    arguments could still cause records greater than 8k to be emitted.  Simply
    fix the estimate.
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit 35aa901c0b66cb3c2eeee23f13624014825a44a8
Author: Eric Paris <eparis at redhat.com>
Date:   Thu Jun 11 14:31:33 2009 -0400

    Audit: fix audit watch use after free
    
    When an audit watch is added to a parent the temporary watch inside the
    original krule from userspace is freed.  Yet the original watch is used after
    the real watch was created in audit_add_rules()
    
    Signed-off-by: Eric Paris <eparis at redhat.com>

commit 152a4e630f7ffdd7ff64427c4ba488dc0bce76af
Author: Zhang Rui <rui.zhang at intel.com>
Date:   Mon Jun 22 11:31:18 2009 +0800

    ACPI: video: DMI workaround broken Acer 7720 BIOS enabling display brightness
    
    http://bugzilla.kernel.org/show_bug.cgi?id=13121
    
    Signed-off-by: Zhang Rui <rui.zhang at intel.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit c8d72a5e76988140bfdfd8722f2228d94e7fa10f
Author: Zhang Rui <rui.zhang at intel.com>
Date:   Mon Jun 22 11:31:16 2009 +0800

    ACPI: run ACPI device hot removal in kacpi_hotplug_wq
    
    Now that new interface is available,
    convert to using it rather than creating a new kernel thread.
    
    Signed-off-by: Zhang Rui <rui.zhang at intel.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 86e437f077c68112edcb6854ec036ed7e3f9a7f3
Author: Zhao Yakui <yakui.zhao at intel.com>
Date:   Tue Jun 16 11:23:13 2009 +0800

    ACPI: Add the reference count to avoid unloading ACPI video bus twice
    
    Sometimes both acpi video and i915 driver are compiled as modules.
    And there exists the strict dependency between the two drivers.
    The acpi video bus will be unloaded in course of unloading the i915 driver.
    If we unload the acpi video driver, then the kernel oops will be triggered.
    
    Add the reference count to avoid unloading the ACPI video bus twice.
    The reference count should be checked before unregistering the acpi video bus.
    If the reference count is already zero, it won't unregister it again.
    And after the acpi video bus is already unregistered, the reference count
    will be set to zero.
    
    http://bugzilla.kernel.org/show_bug.cgi?id=13396
    
    Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
    Acked-by: Zhang Rui <rui.zhang at intel.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 35a7c64fbc77bab4ca8ae477e8ab278ccd679ce2
Author: Zhang Rui <rui.zhang at intel.com>
Date:   Mon Jun 22 11:31:17 2009 +0800

    ACPI: DMI to disable Vista compatibility on some Sony laptops
    
    Linux claims Vista compatibility to the BIOS for a number of
    reasons, but this brings hard lockup on some Sony laptops.
    
    Disable Vista compatibility via DMI for these laptops unless
    we can figure out what Vista is doing for this platform.
    http://bugzilla.kernel.org/show_bug.cgi?id=12904
    
    Signed-off-by: Zhang Rui <rui.zhang at intel.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit c02256be79a1a3557332ac51e653d574a2a7d2b5
Author: Zhang Rui <rui.zhang at intel.com>
Date:   Tue Jun 23 10:20:29 2009 +0800

    ACPI: fix a deadlock in hotplug case
    
    we used to run the hotplug code in keventd_wq.
    But when hot removing the ACPI battery device,
    power_supply_unregister invokes flush_scheduled_work.
    This causes a deadlock. i.e
    1. When dock is unplugged, all the hotplug code is run on kevent_wq.
    2. the hotplug code removes all the child devices of dock device.
    3. removing the child device may invoke flush_scheduled_work
    4. flush_scheduled_work waits until all the work on kevent_wq to be
       finished, while this will never be true because the hotplug code
       is running on keventd_wq...
    
    Introduce a new workqueue for hotplug in this patch.
    http://bugzilla.kernel.org/show_bug.cgi?id=13533
    
    Tested-by: Paul Martin <pm at debian.org>
    Tested-by: Vojtech Gondzala <vojtech.gondzala at gmail.com>
    Signed-off-by: Zhang Rui <rui.zhang at intel.com>
    Reviewed-by: Bjorn Helgaas <bjorn.helgaas at hp.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit 056c308d3e4859334b519033d62ef050f0e0e261
Author: Zhang Rui <rui.zhang at intel.com>
Date:   Mon Jun 22 11:31:14 2009 +0800

    Show the physical device node of backlight class device.
    
    Create symbol link from backlight class device to ACPI video device.
    
    More and more laptops are shipped with multiple ACPI
    video devices, while we export only one of them to userspace.
    
    With this patch applied, we can know which ACPI video device
    is used by "cat /sys/class/backlight/acpi_video0/device/path".
    
    Signed-off-by: Zhang Rui <rui.zhang at intel.com>
    Signed-off-by: Len Brown <len.brown at intel.com>

commit be98eb2c2fc88d9d61cfeab5c11ab1118ca0bba9
Merge: cf5434e894a17bb8385997adc6d56642055a85d6 f007e99c8e2e322b8331aba72414715119a2920d
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 19:49:24 2009 -0700

    Merge git://git.infradead.org/iommu-2.6
    
    * git://git.infradead.org/iommu-2.6:
      Intel-IOMMU, intr-remap: source-id checking
      Intel-IOMMU, intr-remap: set the whole 128bits of irte when modify/free it
      IOMMU Identity Mapping Support (drivers/pci/intel_iommu.c)

commit cf5434e894a17bb8385997adc6d56642055a85d6
Merge: 7b58fc21847950db8fcc6a142288b042564ffb76 d246ab307d1d003c80fe279897dea22bf52b6e41
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 19:36:02 2009 -0700

    Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2
    
    * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:
      ocfs2/trivial: Wrap ocfs2_sysfile_cluster_lock_key within define.
      ocfs2: Add lockdep annotations
      vfs: Set special lockdep map for dirs only if not set by fs
      ocfs2: Disable orphan scanning for local and hard-ro mounts
      ocfs2: Do not initialize lvb in ocfs2_orphan_scan_lock_res_init()
      ocfs2: Stop orphan scan as early as possible during umount
      ocfs2: Fix ocfs2_osb_dump()
      ocfs2: Pin journal head before accessing jh->b_committed_data
      ocfs2: Update atime in splice read if necessary.
      ocfs2: Provide the ocfs2_dlm_lvb_valid() stack API.

commit 7b58fc21847950db8fcc6a142288b042564ffb76
Merge: 4e8a2372f9255a1464ef488ed925455f53fbdaa1 1ab52cf910bbbee92861227e6ed77c56b1dc233c
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 19:35:42 2009 -0700

    Merge branch 'next-i2c' of git://aeryn.fluff.org.uk/bjdooks/linux
    
    * 'next-i2c' of git://aeryn.fluff.org.uk/bjdooks/linux:
      i2c: driver for the Synopsys DesignWare I2C controller

commit 0f77ca928b5d1ea17afc7a95682b6534611a719c
Author: Ron Mercer <ron.mercer at qlogic.com>
Date:   Tue Jun 23 09:00:02 2009 +0000

    qla3xxx: Don't sleep while holding lock.
    
    Signed-off-by: Ron Mercer <ron.mercer at qlogic.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit e5a673742e34eca8ecb13c3e54ceee2c268351a0
Author: Ron Mercer <ron.mercer at qlogic.com>
Date:   Tue Jun 23 09:00:01 2009 +0000

    qla3xxx: Give the PHY time to come out of reset.
    
    Signed-off-by: Ron Mercer <ron.mercer at qlogic.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit b6280b47a7a42970d098a3059f4ebe7e55e90d8d
Author: Neil Horman <nhorman at tuxdriver.com>
Date:   Mon Jun 22 10:18:53 2009 +0000

    ipv4 routing: Ensure that route cache entries are usable and reclaimable with caching is off
    
    When route caching is disabled (rt_caching returns false), We still use route
    cache entries that are created and passed into rt_intern_hash once.  These
    routes need to be made usable for the one call path that holds a reference to
    them, and they need to be reclaimed when they're finished with their use.  To be
    made usable, they need to be associated with a neighbor table entry (which they
    currently are not), otherwise iproute_finish2 just discards the packet, since we
    don't know which L2 peer to send the packet to.  To do this binding, we need to
    follow the path a bit higher up in rt_intern_hash, which calls
    arp_bind_neighbour, but not assign the route entry to the hash table.
    Currently, if caching is off, we simply assign the route to the rp pointer and
    are reutrn success.  This patch associates us with a neighbor entry first.
    
    Secondly, we need to make sure that any single use routes like this are known to
    the garbage collector when caching is off.  If caching is off, and we try to
    hash in a route, it will leak when its refcount reaches zero.  To avoid this,
    this patch calls rt_free on the route cache entry passed into rt_intern_hash.
    This places us on the gc list for the route cache garbage collector, so that
    when its refcount reaches zero, it will be reclaimed (Thanks to Alexey for this
    suggestion).
    
    I've tested this on a local system here, and with these patches in place, I'm
    able to maintain routed connectivity to remote systems, even if I set
    /proc/sys/net/ipv4/rt_cache_rebuild_count to -1, which forces rt_caching to
    return false.
    
    Signed-off-by: Neil Horman <nhorman at redhat.com>
    Reported-by: Jarek Poplawski <jarkao2 at gmail.com>
    Reported-by: Maxime Bizon <mbizon at freebox.fr>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit d55d87fdff8252d0e2f7c28c2d443aee17e9d70f
Author: Herbert Xu <herbert at gondor.apana.org.au>
Date:   Mon Jun 22 02:25:25 2009 +0000

    net: Move rx skb_orphan call to where needed
    
    In order to get the tun driver to account packets, we need to be
    able to receive packets with destructors set.  To be on the safe
    side, I added an skb_orphan call for all protocols by default since
    some of them (IP in particular) cannot handle receiving packets
    destructors properly.
    
    Now it seems that at least one protocol (CAN) expects to be able
    to pass skb->sk through the rx path without getting clobbered.
    
    So this patch attempts to fix this properly by moving the skb_orphan
    call to where it's actually needed.  In particular, I've added it
    to skb_set_owner_[rw] which is what most users of skb->destructor
    call.
    
    This is actually an improvement for tun too since it means that
    we only give back the amount charged to the socket when the skb
    is passed to another socket that will also be charged accordingly.
    
    Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au>
    Tested-by: Oliver Hartkopp <olver at hartkopp.net>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 1ab52cf910bbbee92861227e6ed77c56b1dc233c
Author: Baruch Siach <baruch at tkos.co.il>
Date:   Mon Jun 22 16:36:29 2009 +0300

    i2c: driver for the Synopsys DesignWare I2C controller
    
    The i2c Linux driver for the DesignWare i2c block of Synopsys, which is meant
    for AMBA Peripheral Bus. This i2c block is used on SoC chips like the ARM9
    based PVG610.
    
    Signed-off-by: Baruch Siach <baruch at tkos.co.il>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 76609a6928bff29ca05a94420ae3e088fbb9c2f9
Author: Nelson Castillo <arhuaco at freaks-unidos.net>
Date:   Tue Jun 23 13:54:32 2009 -0500

    [ARM] GTA02: build fixes (s3c2410_nand_set usage)
    
    This patch fixes two errors we get when building GTA02 kernel.
    
    ~ use_bbt is incorrect, we need flash_bbt.
    
    ~ We do not need .force_soft_ecc because we can unset
      CONFIG_MTD_NAND_S3C2410_HWECC.
    
    Signed-off-by: Nelson Castillo <arhuaco at freaks-unidos.net>
    [ben-linux at fluff.org: updated patch description]
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit f007e99c8e2e322b8331aba72414715119a2920d
Author: Weidong Han <weidong.han at intel.com>
Date:   Sat May 23 00:41:15 2009 +0800

    Intel-IOMMU, intr-remap: source-id checking
    
    To support domain-isolation usages, the platform hardware must be
    capable of uniquely identifying the requestor (source-id) for each
    interrupt message. Without source-id checking for interrupt remapping
    , a rouge guest/VM with assigned devices can launch interrupt attacks
    to bring down anothe guest/VM or the VMM itself.
    
    This patch adds source-id checking for interrupt remapping, and then
    really isolates interrupts for guests/VMs with assigned devices.
    
    Because PCI subsystem is not initialized yet when set up IOAPIC
    entries, use read_pci_config_byte to access PCI config space directly.
    
    Signed-off-by: Weidong Han <weidong.han at intel.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit c4658b4e777bebf69884f4884a9bfb2f84dd71d9
Author: Weidong Han <weidong.han at intel.com>
Date:   Sat May 23 00:41:14 2009 +0800

    Intel-IOMMU, intr-remap: set the whole 128bits of irte when modify/free it
    
    Interrupt remapping table entry is 128bits. Currently, it only sets low
    64bits of irte in modify_irte and free_irte. This ignores high 64bits
    setting of irte, that means source-id setting will be ignored. This patch
    sets the whole 128bits of irte when modify/free it. Following source-id
    checking patch depends on this.
    
    Signed-off-by: Weidong Han <weidong.han at intel.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 2c2e2c389d03bb16b8cdf9db3ac615385fac100f
Author: Fenghua Yu <fenghua.yu at intel.com>
Date:   Fri Jun 19 13:47:29 2009 -0700

    IOMMU Identity Mapping Support (drivers/pci/intel_iommu.c)
    
    Identity mapping for IOMMU defines a single domain to 1:1 map all PCI
    devices to all usable memory.
    
    This reduces map/unmap overhead in DMA API's and improve IOMMU
    performance. On 10Gb network cards, Netperf shows no performance
    degradation compared to non-IOMMU performance.
    
    This method may lose some of DMA remapping benefits like isolation.
    
    The patch sets up identity mapping for all PCI devices to all usable
    memory. In the DMA API, there is no overhead to maintain page tables,
    invalidate iotlb, flush cache etc.
    
    32 bit DMA devices don't use identity mapping domain, in order to access
    memory beyond 4GiB.
    
    When kernel option iommu=pt, pass through is first tried. If pass
    through succeeds, IOMMU goes to pass through. If pass through is not
    supported in hw or fail for whatever reason, IOMMU goes to identity
    mapping.
    
    Signed-off-by: Fenghua Yu <fenghua.yu at intel.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit 7262b6e4a4cc18d0f67df145d032c843e4bc382b
Author: Hidetoshi Seto <seto.hidetoshi at jp.fujitsu.com>
Date:   Tue Jun 23 12:40:54 2009 +0900

    x86, mce: Fix mce resume on 32bit
    
    Calling mcheck_init() on resume is required only with
    CONFIG_X86_OLD_MCE=y.
    
    Signed-off-by: Hidetoshi Seto <seto.hidetoshi at jp.fujitsu.com>
    Acked-by: Andi Kleen <andi at firstfloor.org>
    Signed-off-by: H. Peter Anvin <hpa at zytor.com>

commit cca03c0aeb18a975abec28df518a2b64ae3e6964
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Tue Jun 23 17:12:49 2009 +0530

    perf stat: Fix verbose for perf stat
    
    Error message should use stderr for verbose (-v), otherwise
    message will be lost for:
    
     $ ./perf stat -v <cmd>  > /dev/null
    
    For example on AMD bus-cycles event is not available so now
    it looks like:
    
     $ ./perf stat -v -e bus-cycles ls > /dev/null
    Error: counter 0, sys_perf_counter_open() syscall returned with -1 (Invalid argument)
    
     Performance counter stats for 'ls':
    
      <not counted>  bus-cycles
    
        0.006765877  seconds time elapsed.
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245757369.3776.1.camel at localhost.localdomain>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 4e8a2372f9255a1464ef488ed925455f53fbdaa1
Author: Mikael Pettersson <mikpe at it.uu.se>
Date:   Tue Jun 23 12:37:07 2009 -0700

    nvidiafb: fix boot-time printk string
    
    On bootup nvidiafb prints the following on my Apple G5:
    
    	nvidiafb: CRTC 1appears to have a CRT attached
    
    There should be a space between the '1' and the 'appears'.  Add it.
    
    Signed-off-by: Mikael Pettersson <mikpe at it.uu.se>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 840c516f9c395c64240ad35f858f37ea16270afa
Author: Robert P. J. Day <rpjday at crashcourse.ca>
Date:   Tue Jun 23 12:37:06 2009 -0700

    h8/300: fix incorrect "select" directives in arch/h8300/Kconfig.cpu.
    
    Fix the incorrect "select" directives by dropping the "CONFIG_"
    prefixes, and correcting the typo "H8S2768" to "H8S2678".
    
    Signed-off-by: Robert P. J. Day <rpjday at crashcourse.ca>
    Acked-by: Yoshinori Sato <ysato at users.sourceforge.jp>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 364df0ebfbbb1330bfc6ca159f4d6020efc15a12
Author: Dimitri Sivanich <sivanich at sgi.com>
Date:   Tue Jun 23 12:37:04 2009 -0700

    mm: fix handling of pagesets for downed cpus
    
    After downing/upping a cpu, an attempt to set
    /proc/sys/vm/percpu_pagelist_fraction results in an oops in
    percpu_pagelist_fraction_sysctl_handler().
    
    If a processor is downed then we need to set the pageset pointer back to
    the boot pageset.
    
    Updates of the high water marks should not access pagesets of unpopulated
    zones (those pointer go to the boot pagesets which would be no longer
    functional if their size would be increased beyond zero).
    
    Signed-off-by: Dimitri Sivanich <sivanich at sgi.com>
    Signed-off-by: Christoph Lameter <cl at linux-foundation.org>
    Reviewed-by: KOSAKI Motohiro <kosaki.motohiro at jp.fujitsu.com>
    Cc: Nick Piggin <nickpiggin at yahoo.com.au>
    Cc: Mel Gorman <mel at csn.ul.ie>
    Cc: <stable at kernel.org>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 01ff53f416757da416413bc32229770a8448b6ef
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Tue Jun 23 12:37:01 2009 -0700

    rmap: fixup page_referenced() for nommu systems
    
    After the recent changes that went into mm/vmscan.c to overhaul stuff, we
    ended up with these warnings on no-mmu systems:
    
      mm/vmscan.c: In function `shrink_page_list':
      mm/vmscan.c:580: warning: unused variable `vm_flags'
      mm/vmscan.c: In function `shrink_active_list':
      mm/vmscan.c:1294: warning: `vm_flags' may be used uninitialized in this function
      mm/vmscan.c:1242: note: `vm_flags' was declared here
    
    This is because the no-mmu function defines page_referenced() to work on
    the first argument only (the page).  It does not clear the vm_flags given
    to it because for no-mmu systems, they never actually get utilized.  Since
    that is no longer strictly true, we need to set vm_flags to 0 like
    everyone else so gcc can do proper dead code elimination without annoying
    us with unused warnings.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>
    Cc: David Howells <dhowells at redhat.com>
    Acked-by: David McCullough <davidm at snapgear.com>
    Cc: Greg Ungerer <gerg at uclinux.org>
    Cc: Paul Mundt <lethal at linux-sh.org>
    Cc: Wu Fengguang <fengguang.wu at intel.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit a5c9b696ec109bb54d547fdb437a7a0c2d514670
Author: Hugh Dickins <hugh.dickins at tiscali.co.uk>
Date:   Tue Jun 23 12:36:58 2009 -0700

    mm: pass mm to grab_swap_token
    
    If a kthread happens to use get_user_pages() on an mm (as KSM does),
    there's a chance that it will end up trying to read in a swap page, then
    oops in grab_swap_token() because the kthread has no mm: GUP passes down
    the right mm, so grab_swap_token() ought to be using it.
    
    We have not identified a stronger case than KSM's daemon (not yet in
    mainline), but the issue must have come up before, since RHEL has included
    a fix for this for years (though a different fix, they just back out of
    grab_swap_token if current->mm is unset: which is what we first proposed,
    but using the right mm here seems more correct).
    
    Reported-by: Izik Eidus <ieidus at redhat.com>
    Signed-off-by: Johannes Weiner <hannes at cmpxchg.org>
    Signed-off-by: Hugh Dickins <hugh.dickins at tiscali.co.uk>
    Acked-by: Rik van Riel <riel at redhat.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 1d469c6c38c9deaa1836d2c1955330944719e4ef
Author: Aviv Laufer <aviv.laufer at gmail.com>
Date:   Tue Jun 23 16:28:36 2009 +0300

    backlight: Fix tdo24m crash on kmalloc
    
    There is  a crash in tdo24m module caused by a call to kmalloc with
    the second parameter sizeof(flag) instead of flag.
    
    Signed-off-by: Aviv Laufer <aviv.laufer at gmail.com>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit a1dd8c617217322614f0465ae347895c4b58e1ab
Author: Richard Purdie <rpurdie at linux.intel.com>
Date:   Mon Jun 22 14:54:13 2009 +0100

    leds: Futher document blink_set
    
    Futher document blink_set function pointer
    
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit ed88bae6918fa990cbfe47316bd0f790121aaf00
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Tue May 12 15:33:12 2009 -0700

    leds: Add options to have GPIO LEDs start on or keep their state
    
    There already is a "default-on" trigger but there are problems with it.
    
    For one, it's a inefficient way to do it and requires led trigger support
    to be compiled in.
    
    But the real reason is that is produces a glitch on the LED.  The GPIO is
    allocate with the LED *off*, then *later* when the trigger runs it is
    turned back on.  If the LED was already on via the GPIO's reset default or
    action of the firmware, this produces a glitch where the LED goes from on
    to off to on.  While normally this is fast enough that it wouldn't be
    noticeable to a human observer, there are still serious problems.
    
    One is that there may be something else on the GPIO line, like a hardware
    alarm or watchdog, that is fast enough to notice the glitch.
    
    Another is that the kernel may panic before the LED is turned back on, thus
    hanging with the LED in the wrong state.  This is not just speculation, but
    actually happened to me with an embedded system that has an LED which
    should turn off when the kernel finishes booting, which was left in the
    incorrect state due to a bug in the OF LED binding code.
    
    We also let GPIO LEDs get their initial value from whatever the current
    state of the GPIO line is.  On some systems the LEDs are put into some
    state by the firmware or hardware before Linux boots, and it is desired to
    have them keep this state which is otherwise unknown to Linux.
    
    This requires that the underlying GPIO driver support reading the value of
    output GPIOs.  Some drivers support this and some do not.
    
    The platform device binding gains a field in the platform data
    "default_state" that controls this.  There are three constants defined to
    select from on, off, or keeping the current state.  The OpenFirmware
    binding uses a property named "default-state" that can be set to "on",
    "off", or "keep".  The default if the property isn't present is off.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Acked-by: Grant Likely <grant.likely at secretlab.ca>
    Acked-by: Wolfram Sang <w.sang at pengutronix.de>
    Acked-by: Sean MacLennan <smaclennan at pikatech.com>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 5054d39e327f76df022163a2ebd02e444c5d65f9
Author: Antonio Ospite <ospite at studenti.unina.it>
Date:   Fri Jun 19 13:55:42 2009 +0200

    leds: LED driver for National Semiconductor LP3944 Funlight Chip
    
    LEDs driver for National Semiconductor LP3944 Funlight Chip
    http://www.national.com/pf/LP/LP3944.html
    
    This helper chip can drive up to 8 leds, with two programmable DIM
    modes; it could even be used as a gpio expander but this driver assumes
    it is used as a led controller.
    
    The DIM modes are used to set _blink_ patterns for leds, the pattern is
    specified supplying two parameters:
      - period: from 0s to 1.6s
      - duty cycle: percentage of the period the led is on, from 0 to 100
    
    LP3944 can be found on Motorola A910 smartphone, where it drives the rgb
    leds, the camera flash light and the displays backlights.
    
    Signed-off-by: Antonio Ospite <ospite at studenti.unina.it>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 07172d2bfa339d6c150d8cdd7c02128177feffbb
Author: Antonio Ospite <ospite at studenti.unina.it>
Date:   Fri Jun 19 13:53:07 2009 +0200

    leds: pca9532 - Indent using tabs, not spaces.
    
    Indent using tabs, not spaces.
    
    Signed-off-by: Antonio Ospite <ospite at studenti.unina.it>
    Acked-by: Riku Voipio <riku.voipio at iki.fi>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 34abdf252699ebc549fad54c1db481612f22a826
Author: Richard Purdie <rpurdie at linux.intel.com>
Date:   Wed Jun 17 13:05:27 2009 +0100

    leds: Remove an orphan Kconfig entry
    
    Remove an orphan Kconfig entry (LEDS_LP5521)
    
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 92722b1bb1ebcba767f9c6ee499992ee33367268
Author: Mark Brown <broonie at opensource.wolfsonmicro.com>
Date:   Thu Jun 11 14:17:48 2009 +0100

    leds: Further document parameters for blink_set()
    
    The documentation for the parameters of blink_set() was a bit hard
    to find so put some where I'd expected to find it.
    
    Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 2216c6e83ccbc9d34f541621ff23f510cd8a256f
Author: Tobias Mueller <Tobias_Mueller at twam.info>
Date:   Wed Jun 10 12:48:52 2009 -0700

    leds: alix-leds2 fixed for Award BIOS
    
    Add initialisation of GPIO ports for compatibility with boards with Award
    BIOS (e.g.  ALIX.3D3).
    
    Signed-off-by: Tobias Mueller <Tobias_Mueller at twam.info>
    Reviewed-by: Constantin Baranov <const at mimas.ru>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 7fd02170e25b3b60fc21cd7b64bf1ed42e6a7cbe
Author: Zhenwen Xu <helight.xu at gmail.com>
Date:   Wed Jun 10 12:48:51 2009 -0700

    leds: leds-gpio - fix a section mismatch
    
    WARNING: drivers/leds/leds-gpio.o(.text+0x153): Section mismatch in reference from the function gpio_led_probe() to the function .devinit.text:create_gpio_led()
    
    The function gpio_led_probe() references the function __devinit
    create_gpio_led().  This is often because gpio_led_probe lacks a __devinit
    annotation or the annotation of create_gpio_led is wrong.
    
    Signed-off-by: Zhenwen Xu <helight.xu at gmail.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 8792f7cf4368f9bc337eee65851d8e7abbbf946c
Author: Kim Kyuwon <chammoru at gmail.com>
Date:   Wed Jun 10 12:48:50 2009 -0700

    leds: add the sysfs interface into the leds-bd2802 driver for changing wave pattern and led current.
    
    Allow the user application to change the wave pattern and led current by
    'wave_pattern' and 'rgb_current' sysfs files.
    
    Signed-off-by: Kim Kyuwon <q1.kim at samsung.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 1b18cf413f63ff6de5ba3e5028e869c21322a4df
Author: Kim Kyuwon <chammoru at gmail.com>
Date:   Wed Jun 10 12:48:50 2009 -0700

    leds: change the license information
    
    Change the license to 'GPL v2'
    
    Signed-off-by: Kim Kyuwon <q1.kim at samsung.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit b8389018212e8c4e03ede4df5405796100ef4390
Author: Kim Kyuwon <chammoru at gmail.com>
Date:   Wed Jun 10 12:48:48 2009 -0700

    leds: fix led-bd2802 errors while resuming
    
    LED_CORE_SUSPENDRESUME flag is not needed in the bd2802 driver, because
    all works for suspend/resume is done in bd2802_suspend and bd2802_suspend
    functions.  And this patch allows bd2802 to be configured again when it
    resumes from suspend.
    
    Signed-off-by: Kim Kyuwon <q1.kim at samsung.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

commit 626f380d0b264a1e40237f5a2a3dffc5d14f256e
Merge: 32708e8e95265505d9627b3bc9ed16566e0dca1c bb38c222e07cbe252cfbd99cd6a9c834b0a2639a
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 11:52:16 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:
      sh: Fix up HAVE_PERF_COUNTERS typo.
      sh: Fix up more dma-mapping fallout.
      sh: SH7786 SMP support.
      sh: Wire up the uncached fixmap on sh64 as well.
      sh: Use local TLB flush in set_pte_phys().
      sh: Provide cpu_idle_wait() to fix up cpuidle/SMP build.

commit 32708e8e95265505d9627b3bc9ed16566e0dca1c
Merge: f5bcf5f44796bf30a058a01c10a61b19784f0540 4a7eca824cec51168dcd5e0c9bf9edbc809fb975
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 11:36:01 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
      RDMA: Add __init/__exit macros to addr.c and cma.c
      IB/ehca: Bump version number
      mlx4_core: Fix dma_sync_single_for_cpu() with matching for_device() calls
      IB/mthca: Replace dma_sync_single() use with proper functions
      RDMA/nes: Fix FIN state handling under error conditions
      RDMA/nes: Fix max_qp_init_rd_atom returned from query device
      IB/ehca: Ensure that guid_entry index is not negative
      IB/ehca: Tolerate dynamic memory operations before driver load

commit f5bcf5f44796bf30a058a01c10a61b19784f0540
Merge: defe9104833b5ad309447bbc1fcb8e5981b2d3e1 129dd98194747a3b8ac1ff876d8d1f2440660d01
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 11:35:37 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (38 commits)
      fusion: mptsas, fix lock imbalance
      [SCSI] scsi_transport_fc: replace BUS_ID_SIZE by fixed count
      sd, sr: fix Driver 'sd' needs updating message
      scsi_transport_iscsi: return -EOVERFLOW for Too many iscsi targets
      fc_transport: Selective return value from BSG timeout function
      fc_transport: The softirq_done function registration for BSG request
      sym53c8xx: ratelimit parity errors
      explain the hidden scsi_wait_scan Kconfig variable
      ibmvfc: Fix endless PRLI loop in discovery
      ibmvfc: Process async events before command responses
      libfc: Add runtime debugging with debug_logging module parameter
      libfcoe: Add runtime debugging with module param debug_logging
      fcoe: Add runtime debug logging with module parameter debug_logging
      scsi_debug: Add support for physical block exponent and alignment
      cnic: add NETDEV_1000 and NETDEVICES to Kconfig select
      cnic: Fix __symbol_get() build error.
      Revert "[SCSI] cnic: fix error: implicit declaration of function ‘__symbol_get’"
      ipr: differentiate pci-x and pci-e based adapters
      ipr: add test for MSI interrupt support
      scsi_transport_spi: Blacklist Ultrium-3 tape for IU transfers
      ...

commit defe9104833b5ad309447bbc1fcb8e5981b2d3e1
Merge: 95b3692d9c22c659312acb466d0608bf8509f296 0634a632f5dea8281ae7c9a96800582ff9eb1475
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 11:34:24 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
      asm-generic: add dummy pgprot_noncached()
      lib/checksum.c: fix endianess bug
      asm-generic: hook up new system calls
      asm-generic: list Arnd as asm-generic maintainer
      asm-generic: drop HARDIRQ_BITS definition from hardirq.h
      asm-generic: uaccess: fix up local access_ok() usage
      asm-generic: uaccess: add missing access_ok() check to strnlen_user()

commit 95b3692d9c22c659312acb466d0608bf8509f296
Merge: d26ed650d9947a786bbda8de9cd914dbeebc1a68 bf96d1e3e7a35a17cea255048ffb3243bd9c8123
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 11:25:04 2009 -0700

    Merge branch 'kmemleak' of git://linux-arm.org/linux-2.6
    
    * 'kmemleak' of git://linux-arm.org/linux-2.6:
      kmemleak: Do not force the slab debugging Kconfig options
      kmemleak: use pr_fmt

commit d26ed650d9947a786bbda8de9cd914dbeebc1a68
Author: Hugh Dickins <hugh.dickins at tiscali.co.uk>
Date:   Tue Jun 23 13:52:49 2009 +0100

    mm: don't rely on flags coincidence
    
    Indeed FOLL_WRITE matches FAULT_FLAG_WRITE, matches GUP_FLAGS_WRITE,
    and it's tempting to devise a set of Grand Unified Paging flags;
    but not today.  So until then, let's rely upon the compiler to spot
    the coincidence, "rather than have that subtle dependency and a
    comment for it" - as you remarked in another context yesterday.
    
    Signed-off-by: Hugh Dickins <hugh.dickins at tiscali.co.uk>
    Acked-by: Wu Fengguang <fengguang.wu at intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 788c7df451467df71638dd79a2d63d78c6e13b9c
Author: Hugh Dickins <hugh.dickins at tiscali.co.uk>
Date:   Tue Jun 23 13:49:05 2009 +0100

    hugetlb: fault flags instead of write_access
    
    handle_mm_fault() is now passing fault flags rather than write_access
    down to hugetlb_fault(), so better recognize that in hugetlb_fault(),
    and in hugetlb_no_page().
    
    Signed-off-by: Hugh Dickins <hugh.dickins at tiscali.co.uk>
    Acked-by: Wu Fengguang <fengguang.wu at intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit a800faec1b21d7133b5f0c8c6dac593b7c4e118d
Merge: c488eef8154b36cce905624577183dc1fa8f6da0 7b994836f09fc3ce7d073ad6f8259a1a84003e02
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 10:47:01 2009 -0700

    Merge branch 'for-linus' of git://www.jni.nu/cris
    
    * 'for-linus' of git://www.jni.nu/cris:
      CRISv10: remove redundant tests on unsigned
      CRISv32: irq.c - Move end brace outside #endif
      CRISv32: Fix potential null reference in cryptocop driver.
      CRISv32: Add arch optimized strcmp.
      CRIS: assignment/is equal confusion

commit c488eef8154b36cce905624577183dc1fa8f6da0
Merge: cf9c1b92ae62ce71a8e861f02476724348defc6a 3f67f6693c82f1cb8edb233f9bd10fa06d27a193
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 10:45:39 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
      ALSA: hda - Make jack-plug notification selectable
      ALSA: ctxfi - Add PM support
      sound: seq_midi_event: fix decoding of (N)RPN events
      ALSA: hda - Add digital-mic support to ALC262 auto model
      ALSA: hda - Fix check of input source type for realtek codecs
      ALSA: hda - Add quirk for Sony VAIO Z21MN
      ALSA: hda - Get back Input Source for ALC262 toshiba-s06 model
      ALSA: hda - Fix unsigned comparison in patch_sigmatel.c
      ALSA: via82xx: add option to disable 500ms delay in snd_via82xx_codec_wait
      sound: fix check for return value in snd_pcm_hw_refine
      ALSA: ctxfi - Allow unknown PCI SSIDs
      ASoC: Blackfin: update the bf5xx_i2s_resume parameters
      ASoC: Blackfin: keep better track of SPORT configuration state

commit cf9c1b92ae62ce71a8e861f02476724348defc6a
Merge: 135aae340d66c5e273af297bbd5178a5e5c458ee 9b901ee0cb007eb4e2ee056e5b1c5c2837d53bdb
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 10:41:17 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
      [WATCHDOG] wdt_pci.c: remove #ifdef CONFIG_WDT_501_PCI
      [WATCHDOG] hpwdt: Add NMI priority option
      [WATCHDOG] OMAP fixes: enable clock in probe, trigger timer reload
      [WATCHDOG] add bcm47xx watchdog driver
      [WATCHDOG] Freescale STMP: watchdog driver
      [WATCHDOG] twl4030 watchdog driver
      [WATCHDOG] U300 COH 901 327 watchdog driver
      [WATCHDOG] Add pnx833x_wdt

commit 135aae340d66c5e273af297bbd5178a5e5c458ee
Merge: 811e42cfba334d27797989ac8b0bea4981cb9581 eebf8d86acf0db974dfaad8e8285f4e12ca488e2
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 10:40:19 2009 -0700

    Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6
    
    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (62 commits)
      V4L/DVB (12131): BUGFIX: An incorrect Carrier Recovery Loop optimization table was being
      V4L/DVB (12130): Fix a redundant compiler warning
      V4L/DVB (12003): v4l2: Move bounding code outside I2C ifdef block
      V4L/DVB (11913): cx231xx: TRY_FMT should not actually set anything
      V4L/DVB (11912): em28xx: Use v4l bounding/alignment function
      V4L/DVB (11911): cx231xx: Use v4l bounding/alignment function
      V4L/DVB (11910): mt9: Use v4l bounding/alignment function
      V4L/DVB (11909): cx23885: Use v4l bounding/alignment function
      V4L/DVB (11908): w8968cf: Use v4l bounding/alignment function
      V4L/DVB (11907): cx88: Use v4l bounding/alignment function
      V4L/DVB (11906): saa7134: Use v4l bounding/alignment function
      V4L/DVB (11905): vivi: Use v4l bounding/alignment function
      V4L/DVB (11904): zoran: Use v4l bounding/alignment functiob
      V4L/DVB (11903): sh_mobile_ceu_camera: Use v4l bounding/alignment function
      V4L/DVB (11902): pxa-camera: Use v4l bounding/alignment function
      V4L/DVB (11901): v4l2: Create helper function for bounding and aligning images
      V4L/DVB (12128): v4l2: update framework documentation.
      V4L/DVB (12125): v4l2: add new s_config subdev ops and v4l2_i2c_new_subdev_cfg/board calls
      V4L/DVB (12122): pvrusb2: De-obfuscate code which handles routing schemes
      V4L/DVB (12121): pvrusb2: Improve handling of routing schemes
      ...

commit 811e42cfba334d27797989ac8b0bea4981cb9581
Merge: 4843a3baf20059a7ac5b55582672705d9e61e274 0d9e6659a1bde3733cfd0072adbb3514b579e383
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 10:39:36 2009 -0700

    Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev
    
    * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
      libata: don't set IORDY for reset
      sata_fsl: Add power mgmt support
      [libata] PATA driver for CF interface on AT91SAM9260 SoC
      [libata] beautify module parameters

commit 4843a3baf20059a7ac5b55582672705d9e61e274
Merge: cb4cbcf6b3cf79f80c157afdc8dd8221643d8481 e01698aed04811b9a9c4f8d54b73cb182757063d
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Tue Jun 23 10:39:00 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:
      ide cmd64x: Remove serialize setting.
      ide: Take over as maintainer.

commit 4a7eca824cec51168dcd5e0c9bf9edbc809fb975
Merge: 1d4d6da535be97b710e87a33c4828c97c36eee21 716abb1fdf3274ac81dc404f3659cc05d8cdf606 e727f5cde90d5a8b92a1ffa49c636a3790301469 99987bea474ceca8ec6fb05f81d7d188634cdffd 68237a0ff84503270373c39229be83e865ea08d4
Author: Roland Dreier <rolandd at cisco.com>
Date:   Tue Jun 23 10:38:47 2009 -0700

    Merge branches 'ehca', 'misc', 'mlx4', 'mthca' and 'nes' into for-linus

commit 716abb1fdf3274ac81dc404f3659cc05d8cdf606
Author: Peter Huewe <peterhuewe at gmx.de>
Date:   Tue Jun 23 10:38:42 2009 -0700

    RDMA: Add __init/__exit macros to addr.c and cma.c
    
    Add __init and __exit annotations to the module_init/module_exit
    functions from drivers/infiniband/core/addr.c and cma.c.
    
    Signed-off-by: Peter Huewe <peterhuewe at gmx.de>
    Acked-by: Sean Hefty <sean.hefty at intel.com>
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit 1d4d6da535be97b710e87a33c4828c97c36eee21
Author: Alexander Schmidt <alexs at linux.vnet.ibm.com>
Date:   Tue Jun 23 10:30:04 2009 -0700

    IB/ehca: Bump version number
    
    Increment version number for DMEM toleration.
    
    Signed-off-by: Alexander Schmidt <alexs at linux.vnet.ibm.com>
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit 084da8949766f24c6a6fb21e2659c7de045fc618
Merge: 51af243c631d9d03376d1454a24cf0a96e6f17cb b21477f9d257cd8d45f7df32a9ebed45dbdfa4b5
Author: Ben Dooks <ben-linux at fluff.org>
Date:   Tue Jun 23 18:27:15 2009 +0100

    [ARM] S3C maintainer updates merge branch maintainers-updates into s3c-fixes
    
    Merge branch 'maintainers-update' into s3c-fixes

commit 51af243c631d9d03376d1454a24cf0a96e6f17cb
Author: Ben Dooks <ben-linux at fluff.org>
Date:   Tue Jun 23 18:23:27 2009 +0100

    [ARM] MINI2440: Add missing flash_bbt flat to NAND
    
    The commit 9db41f9edcb87ae050fcb171c44be7f212728d54 added
    the .flash_bbt flag to the nand set, so add this back into
    the mach-mini2440.c file (taken out on initial commit to
    allow build).
    
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 622a8f5f7bf160507861cf05309020049f42976d
Author: Ben Dooks <ben-linux at fluff.org>
Date:   Tue Jun 23 18:20:10 2009 +0100

    [ARM] s3c2410_defconfig: add MINI2440 machine to build
    
    Add the MINI2440 to the list of machines built by the
    central defconfig.
    
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit cb4cbcf6b3cf79f80c157afdc8dd8221643d8481
Author: KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com>
Date:   Tue Jun 23 08:57:55 2009 +0900

    mm: fix incorrect page removal from LRU
    
    The isolated page is "cursor_page" not "page".
    
    This could cause LRU list corruption under memory pressure, caught by
    CONFIG_DEBUG_LIST.
    
    Reported-by: Ingo Molnar <mingo at elte.hu>
    Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com>
    Reviewed-by: Balbir Singh <balbir at linux.vnet.ibm.com>
    Tested-by: Daisuke Nishimura <nishimura at mxp.nes.nec.co.jp>
    Cc: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit bb38c222e07cbe252cfbd99cd6a9c834b0a2639a
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Wed Jun 24 01:41:05 2009 +0900

    sh: Fix up HAVE_PERF_COUNTERS typo.
    
    That's HAVE_PERF_COUNTERS not HAVE_PERF_COUNTER. This was right
    initially but I seem to have screwed it up while re-typing it out
    by hand on another machine when I checked it in. Hmph.
    
    Reported-by: Robert P. J. Day <rpjday at crashcourse.ca>
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit b5aa8a0fc132dd512c33e7c2621d075e3b77a65e
Author: Grégoire Henry <Gregoire.Henry at pps.jussieu.fr>
Date:   Tue Jun 23 15:41:02 2009 +0200

    drm/i915: initialize fence registers to zero when loading GEM
    
    Unitialized fence register could leads to corrupted display. Problem
    encountered on MacBooks (revision 1 and 2), directly booting from EFI
    or through BIOS emulation.
    
    (bug #21710 at freedestop.org)
    
    Signed-off-by: Grégoire Henry <henry at pps.jussieu.fr>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit b647712f669f4fadf428a14ab45ab4c03558cdf5
Author: Ben Dooks <ben-linux at fluff.org>
Date:   Tue Jun 23 16:34:35 2009 +0100

    [ARM] S3C: Fix S3C24XX build to not include s3c64xx IIS devices
    
    Commit 52da219e9664e537a745877b0efa7cf2b1ff2996 added IIS
    platform devices, but these do not build on s3c24xx systems
    and the file depends on SND_S3C24XX_SOC, which is selected
    for all S3C64XX/S3C24XX systems.
    
    As a quick fix, make the dev-audio.o file depends on
    SND_S3C64XX_SOC_I2S instead.
    
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit a3c79901170aba0d3717c2602326bab639eb1344
Author: Ben Dooks <ben-linux at fluff.org>
Date:   Tue Jun 23 16:30:02 2009 +0100

    [ARM] S3C24XX: Fix missing s3c_iis_device.
    
    Commit 52da219e9664e537a745877b0efa7cf2b1ff2996 removed
    the s3c_device_iis, but didn't replace it with anything
    so a number of s3c24xx machines are currently failing
    to build.
    
    As a temporary fix, re-instate s3c_device_iis until a
    proper replacement can be done for it.
    
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit ffd14417bdf2a1650bcb16d37c7e658535d1681a
Author: Huang Weiyi <weiyi.huang at gmail.com>
Date:   Tue Jun 23 20:58:57 2009 +0800

    [ARM] MINI2440: remove duplicated #include
    
    Remove duplicated #include('s) in
      arch/arm/mach-s3c2440/mach-mini2440.c
    
    Signed-off-by: Huang Weiyi <weiyi.huang at gmail.com>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 927dbcd668ede8d2210cc59bea548ca9ff45b240
Author: Ben Dooks <ben at simtec.co.uk>
Date:   Tue Jun 23 16:15:38 2009 +0100

    [ARM] S3C24XX: Fix spi-bus configuration build errors
    
    The commit ec976d6eb021dc8f2994248c310a41540f4756bd
    removed a number of gpio definitions from <mach/hardware.h>
    but misssed updating these two files:
    
    Fix the following build errors by including <linux/gpio.h>:
    arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c: In function 's3c24xx_spi_gpiocfg_bus1_gpg5_6_7':
    arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c:25: error: implicit declaration of function 's3c2410_gpio_cfgpin'
    arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c:28: error: implicit declaration of function 's3c2410_gpio_pullup'
    arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c: In function 's3c24xx_spi_gpiocfg_bus0_gpe11_12_13':
    arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c:25: error: implicit declaration of function 's3c2410_gpio_cfgpin'
    arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c:28: error: implicit declaration of function 's3c2410_gpio_pullup'
    
    Signed-off-by: Ben Dooks <ben at simtec.co.uk>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit b0a28589b2fc9bee8ed83dee006a497d1ce93841
Author: Ingo Molnar <mingo at elte.hu>
Date:   Tue Jun 23 16:39:53 2009 +0200

    perf report: Fix help text typo
    
    Reported-by: Brice Goglin <Brice.Goglin at inria.fr>
    Cc: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 503dcbeba50fd3545283594bc391b4a400fa6c48
Author: Tony Lindgren <tony at atomide.com>
Date:   Tue Jun 23 16:55:30 2009 +0300

    OMAP: Fix IOMEM macro for assembly
    
    Otherwise IOMEM calculations can fail.
    
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit bf96d1e3e7a35a17cea255048ffb3243bd9c8123
Author: Catalin Marinas <catalin.marinas at arm.com>
Date:   Tue Jun 23 14:40:27 2009 +0100

    kmemleak: Do not force the slab debugging Kconfig options
    
    Selecting DEBUG_SLAB or SLUB_DEBUG by the KMEMLEAK menu entry may cause
    issues with other dependencies (KMEMCHECK). These configuration options
    aren't strictly needed by kmemleak but they may increase the chances of
    finding leaks. This patch also updates the KMEMLEAK config entry help
    text.
    
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>
    Acked-by: Pekka Enberg <penberg at cs.helsinki.fi>

commit ae281064be164342554b34f4ca5c4af33dce3de1
Author: Joe Perches <joe at perches.com>
Date:   Tue Jun 23 14:40:26 2009 +0100

    kmemleak: use pr_fmt
    
    Signed-off-by: Joe Perches <joe at perches.com>
    Signed-off-by: Catalin Marinas <catalin.marinas at arm.com>

commit 66c6b856d8738278a4a6e558d25c90e9950aa112
Author: Anton Vorontsov <avorontsov at ru.mvista.com>
Date:   Fri Jun 19 03:37:52 2009 +0400

    powerpc/85xx: Make eSDHC 1-bit only transfer mode default for MPC8569E-MDS
    
    For yet unknown reason 4-bit mode doesn't work on MPC8569E-MDS boards,
    so make 1-bit mode default. When we resolve the issue, u-boot will
    remove sdhci,1-bit-only property from the device tree, while SDHCI
    will still work with older u-boots.
    
    Signed-off-by: Anton Vorontsov <avorontsov at ru.mvista.com>
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit 6cc7959f385abc77abdeda5462f96407a556265a
Author: Huang Weiyi <weiyi.huang at gmail.com>
Date:   Sat Jun 20 19:16:59 2009 +0800

    powerpc/85xx: remove duplicated #include
    
    Remove duplicated #include in arch/powerpc/platforms/85xx/xes_mpc85xx.c.
    
    Signed-off-by: Huang Weiyi <weiyi.huang at gmail.com>
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit b053dc5a722eade28514f2cc922caf7a4baad987
Author: Kumar Gala <galak at kernel.crashing.org>
Date:   Fri Jun 19 08:31:05 2009 -0500

    powerpc: Refactor device tree binding
    
    Split device tree binding out of booting-without-of.txt and put them
    into their own files per binding.
    
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit cb1ffb6204712b04396ae0a9f3d1bf93cd8df8fb
Author: Kumar Gala <galak at kernel.crashing.org>
Date:   Fri Jun 19 03:30:42 2009 -0500

    powerpc/85xx: Fix issue found by lockdep trace in smp_85xx_kick_cpu
    
    lockdep trace found the following:
    
    ------------[ cut here ]------------
    Badness at c007baf0 [verbose debug info unavailable]
    NIP: c007baf0 LR: c007bad8 CTR: 00000000
    REGS: ef855e00 TRAP: 0700   Tainted: G        W
    (2.6.30-06736-g12a31df-dirty)
    MSR: 00021000 <ME,CE>  CR: 24044022  XER: 20000000
    TASK = ef858000[1] 'swapper' THREAD: ef854000 CPU: 0
    GPR00: 00000000 ef855eb0 ef858000 00000001 000000d0 f1000000 ffbc8000 ffffffff
    GPR08: 000000d0 c0760000 c0710000 00000007 2fffffff 1004a388 7ffd9400 00000000
    GPR16: 00000000 7ffcd100 7ffcd100 7ffcd100 c059cd78 c075c498 c057da7c ffffffff
    GPR24: ffbc8000 f1000000 00000001 c00bf8b0 c07595d4 000000d0 00021000 000000d0
    NIP [c007baf0] lockdep_trace_alloc+0xc0/0xf0
    LR [c007bad8] lockdep_trace_alloc+0xa8/0xf0
    Call Trace:
    [ef855eb0] [c007ba60] lockdep_trace_alloc+0x30/0xf0 (unreliable)
    [ef855ec0] [c00cb3ac] kmem_cache_alloc+0x2c/0xf0
    [ef855ee0] [c00bf8b0] __get_vm_area_node+0x80/0x1c0
    [ef855f10] [c0017580] __ioremap_caller+0x1d0/0x1e0
    [ef855f40] [c057da7c] smp_85xx_kick_cpu+0x64/0x124
    [ef855f60] [c0599180] __cpu_up+0xd0/0x1a4
    [ef855f80] [c05997c4] cpu_up+0x14c/0x1e0
    [ef855fc0] [c05732a0] kernel_init+0x100/0x1c4
    [ef855ff0] [c0011524] kernel_thread+0x4c/0x68
    Instruction dump:
    8009c174 2f800000 409e0048 73c08000 40820040 4818980d 2f830000 419effa0
    3d20c076 8009c388 2f800000 409eff90 <0fe00000> 4bffff88 60000000 60000000
    
    We were calling ioremap after we local_irq_restore(flags).  A simple
    reorder fixes the problem.
    
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit fa874618c3155e4f255387987d630a203578b5ae
Author: Randy Vinson <rvinson at mvista.com>
Date:   Fri Jun 19 03:22:08 2009 +0400

    powerpc/85xx: Fix FSL RapidIO probing on MDS boards
    
    FSL RapidIO won't probe without a proper compatible entry. This
    patch fixes the issue by adding fsl,rapidio-delta compatible to
    mpc85xx_ids.
    
    Signed-off-by: Randy Vinson <rvinson at mvista.com>
    Signed-off-by: Anton Vorontsov <avorontsov at ru.mvista.com>
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit a44a23ed4d144e4fb83d256b32021b732bda4787
Author: Kumar Gala <galak at kernel.crashing.org>
Date:   Thu Jun 18 23:28:34 2009 -0500

    powerpc/85xx: Stop using ppc_md.init on socrates
    
    Match what other 85xx platforms do for of_platform_bus_probe and use
    machine_device_initcall.  This is one small step in killing of
    ppc_md.init.
    
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit 5e10cf587a7b1aa34099cbfc244e6f04e96dc835
Author: Kumar Gala <galak at kernel.crashing.org>
Date:   Tue May 19 00:52:20 2009 -0500

    powerpc/cpm1: Remove IMAP_ADDR
    
    We no longer user IMAP_ADDR for anything so kill it off.
    
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit f49156ea1bf3bccf45a01351cf3db2b5f6a8597e
Author: Timur Tabi <timur at freescale.com>
Date:   Tue May 26 10:21:42 2009 -0500

    powerpc/qe: add polling timeout to qe_issue_cmd()
    
    The qe_issue_cmd() function (Freescale PowerPC QUICC Engine library) polls
    on a register until a status bit changes, but does not include a timeout
    to handle the situation if the bit never changes.  Change the code to use
    the new spin_event_timeout() macro, which simplifies polling on a register
    without a timeout.
    
    Signed-off-by: Timur Tabi <timur at freescale.com>
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>

commit 0634a632f5dea8281ae7c9a96800582ff9eb1475
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Tue Jun 23 13:51:19 2009 +0200

    asm-generic: add dummy pgprot_noncached()
    
    Most architectures now provide a pgprot_noncached(), the
    remaining ones can simply use an dummy default implementation,
    except for cris and xtensa, which should override the
    default appropriately.
    
    Signed-off-by: Arnd Bergmann <arnd at arndb.de>
    Cc: Jesper Nilsson <jesper.nilsson at axis.com>
    Cc: Chris Zankel <chris at zankel.net>
    Cc: Magnus Damm <magnus.damm at gmail.com>

commit d5fdd6babcfc2b0e6a8da1acf492a69fb54b4c47
Author: Brian Haley <brian.haley at hp.com>
Date:   Tue Jun 23 04:31:07 2009 -0700

    ipv6: Use correct data types for ICMPv6 type and code
    
    Change all the code that deals directly with ICMPv6 type and code
    values to use u8 instead of a signed int as that's the actual data
    type.
    
    Signed-off-by: Brian Haley <brian.haley at hp.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit a18327f35a879a6467c3e901da7f68944b191732
Author: Ben Dooks <ben-linux at fluff.org>
Date:   Mon May 4 09:53:12 2009 +0100

    [ARM] S3C: Remove unused CONFIG_DEBUG_S3C_PORT
    
    Remove the unused CONFIG_DEBUG_S3C_PORT as we currently only have
    support for using the S3C UARTs via the low-level debug code.
    
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 291e99a112f9bf34c027031de7ef8b94a2692937
Author: Ben Dooks <ben-linux at fluff.org>
Date:   Mon May 4 09:30:51 2009 +0100

    [ARM] S3C24XX: Fix use of CONFIG_S3C24XX_PWM
    
    CONFIG_S3C24XX_PWM was defined in arch/arm/plat-s3c24xx/Kconfig but
    not used anywhere else as the corresponding makefile used
    CONFIG_HAVE_PWM (selected by CONFIG_S3C24XX_PWM) to compile the PWM
    driver.
    
    Change the makefile to use CONFIG_S3C24XX_PWM to compile this driver
    to ensure it is only build when needed.
    
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 0cf08dcb78e8d61b6d4b2eb5cdb296d969971626
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 21:32:18 2009 +0000

    net: let KS8842 driver depend on HAS_IOMEM
    
    Fixes this compile error on s390:
    
      CC      drivers/net/ks8842.o
    drivers/net/ks8842.c: In function 'ks8842_select_bank':
    drivers/net/ks8842.c:124: error: implicit declaration of function 'iowrite16'
    drivers/net/ks8842.c: In function 'ks8842_write8':
    drivers/net/ks8842.c:131: error: implicit declaration of function 'iowrite8'
    
    Cc: Richard Rojfors <richard.rojfors.ext at mocean-labs.com>
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit fec37ab56f5b86b413f71258f36b181f57180d9c
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 21:31:20 2009 +0000

    can: let SJA1000 driver depend on HAS_IOMEM
    
    Fixes this compile error on s390:
    
    drivers/net/can/sja1000/sja1000_platform.c: In function 'sp_read_reg':
    drivers/net/can/sja1000/sja1000_platform.c:42: error: implicit declaration of function 'ioread8'
    drivers/net/can/sja1000/sja1000_platform.c: In function 'sp_write_reg':
    drivers/net/can/sja1000/sja1000_platform.c:47: error: implicit declaration of function 'iowrite8'
    drivers/net/can/sja1000/sja1000_platform.c: In function 'sp_probe':
    drivers/net/can/sja1000/sja1000_platform.c:79: error: implicit declaration of function 'ioremap_nocache'
    
    Cc: Wolfgang Grandegger <wg at grandegger.com>
    Cc: Oliver Hartkopp <oliver.hartkopp at volkswagen.de>
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 96f2ebd2e10417da151202c750d8664767a2194b
Author: Dhananjay Phadke <dhananjay at netxen.com>
Date:   Mon Jun 22 20:26:21 2009 +0000

    netxen: fix firmware init handshake
    
    Make sure all functions run firmware init handshake.
    
    If PCI function 0 fails to initialize firmware, mark the
    state failed so that other functions on the same board
    bail out quickly instead of waiting 30s for firmware
    handshake.
    
    Signed-off-by: Dhananjay Phadke <dhananjay at netxen.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 01542cd1bbf995f951e2c2383d7911e96b12bec6
Author: Dhananjay Phadke <dhananjay at netxen.com>
Date:   Mon Jun 22 20:26:20 2009 +0000

    netxen: fix build with without CONFIG_PM
    
    wrap pci suspend() and resume() with CONFIG_PM check.
    
    Signed-off-by: Dhananjay Phadke <dhananjay at netxen.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit cb5793db5ecf108594d8006ae838e47996a76a19
Author: janboe <janboe.ye at gmail.com>
Date:   Tue Jun 23 13:30:25 2009 +0300

    OMAP2/3: Initialize gpio debounce register
    
    Some bootloader may initialize debounce register and this will make
    dbclk not consist with the debounce register after linux kernel boot
    up.
    
    Signed-off-by: janboe <janboe.ye at gmail.com>
    Signed-off-by: Kevin Hilman <khilman at deeprootsystems.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit f48ef99ca14577f3ea0a48c0e05ed7f5f6d211e9
Author: Fernando Guzman Lugo <x0095840 at ti.com>
Date:   Tue Jun 23 13:30:25 2009 +0300

    OMAP: IOMMU: function flush_iotlb_page is not flushing correct entry
    
    The function flush_iotlb_page is not loading the CAM register with
    the correct entry to be flushed, so it is flushing other entry
    
    Signed-off-by: Fernando Guzman Lugo <x0095840 at ti.com>
    Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU at nokia.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit c8e6488f7b56d82453fc7d526118e9f1c2df133a
Author: Adrian Hunter <adrian.hunter at nokia.com>
Date:   Tue Jun 23 13:30:25 2009 +0300

    OMAP3: RX51: Use OneNAND sync read / write
    
    Use OneNAND sync read / write
    
    Signed-off-by: Adrian Hunter <adrian.hunter at nokia.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit 6d453e84b587f38e4197bb2c6a37296c4a80cbac
Author: Adrian Hunter <adrian.hunter at nokia.com>
Date:   Tue Jun 23 13:30:24 2009 +0300

    OMAP2/3: gpmc-onenand: correct use of async timings
    
    Use async timings when sync timings are not requested.
    
    Also ensure that OneNAND is in async mode when async
    timings are used.
    
    Signed-off-by: Adrian Hunter <adrian.hunter at nokia.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit aecedb94b366d6fb5e2a17ca18a5dc78e593198e
Author: Kalle Jokiniemi <ext-kalle.jokiniemi at nokia.com>
Date:   Tue Jun 23 13:30:24 2009 +0300

    OMAP3: DMA: Enable idlemodes for DMA OCP
    
    This patch enables MStandby smart-idle mode, autoidle smartidle mode,
    and the autoidle bit for DMA4_OCP_SYSCONFIG.
    
    Signed-off-by: Kalle Jokiniemi <ext-kalle.jokiniemi at nokia.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>
    Signed-off-by: Kevin Hilman <khilman at ti.deeprootsystems.com>

commit 5b0acc59d1bc5c310dfd6976555664f9dcf4dacd
Author: Tero Kristo <tero.kristo at nokia.com>
Date:   Tue Jun 23 13:30:23 2009 +0300

    OMAP3: SRAM size fix for HS/EMU devices
    
    SRAM size fix for HS/EMU devices
    
    Signed-off-by: Tero Kristo <tero.kristo at nokia.com>
    Signed-off-by: Kevin Hilman <khilman at deeprootsystems.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit 8e25ad964aac0bf6b30dd013303750089f819679
Author: Kevin Hilman <khilman at deeprootsystems.com>
Date:   Tue Jun 23 13:30:23 2009 +0300

    OMAP2/3: Add omap_type() for determining GP/EMU/HS
    
    The omap_type() function is added and returns the DEVICETYPE field of
    the CONTROL_STATUS register.  The result can be used for conditional
    code based on whether device is GP (general purpose), EMU or
    HS (high security). Also move the type defines so omap1 code
    compile does not require ifdefs for sections using these defines.
    
    This code is needed for the following fix to set the SRAM
    size correctly for HS omaps.  Also at least PM and watchdog
    code will need this function.
    
    Signed-off-by: Kevin Hilman <khilman at ti.deeprootsystems.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit 091a58af0ba1765d80b1e74382c7572baceb1bdc
Author: Roel Kluin <roel.kluin at gmail.com>
Date:   Tue Jun 23 13:30:22 2009 +0300

    OMAP2/3: omap mailbox: platform_get_irq() error ignored
    
    platform_get_irq may return -ENXIO. but struct omap_mbox mbox_dsp_info.irq
    is unsigned, so the error was not noticed.
    
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU at nokia.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit 762ad3a476baa1831f732488e80960f4aa024393
Author: Grazvydas Ignotas <notasas at gmail.com>
Date:   Tue Jun 23 13:30:22 2009 +0300

    OMAP2/3: mmc-twl4030: use correct controller in twl_mmc23_set_power
    
    twl_mmc23_set_power() has MMC2 twl_mmc_controller hardcoded in it, which
    breaks MMC3. Find the right controller to use instead.
    
    Signed-off-by: Grazvydas Ignotas <notasas at gmail.com>
    Cc: David Brownell <david-b at pacbell.net>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit d376f89701b0aa5b45d25fbfbeb1a0040399ad30
Author: Huang Weiyi <weiyi.huang at gmail.com>
Date:   Tue Jun 23 13:30:22 2009 +0300

    OMAP1: remove duplicated #include
    
    Remove duplicated #include in arch/arm/mach-omap1/board-nokia770.c.
    
    Signed-off-by: Huang Weiyi <weiyi.huang at gmail.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit e4d24ec39c98cdc9cd97c26fdd426bbab0034fbe
Author: Andrew de Quincey <adq_dvb at lidskialf.net>
Date:   Tue Jun 23 13:30:21 2009 +0300

    OMAP1: Fix N770 MMC support
    
    Some of the N770's MMC configuration options seem to have been
    dropped. This patch adds them back in again.
    
    Note that only the .ocr_mask change was /critical/, but I've added the
    .max_freq setting back as well, as the original sources had it. Can
    anyone confirm if this is unnecessary?
    
    Secondly, there is support in the original code for a 4wire/higher
    speed mode. As I don't have the requisite N770 hardware (I think it
    was a rev2 N770?) to test this, I can't really add it back.
    
    Signed-off-by: Andrew de Quincey <adq at lidskialf.net>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit 0c405b3346ea08098a82a1ee82912b018dfa9f96
Author: Jonathan McDowell <noodles at earth.li>
Date:   Tue Jun 23 13:30:21 2009 +0300

    OMAP1: Fix compilation of arch/arm/mach-omap1/mailbox.c
    
    This fixes the positioning of " in MODULE_AUTHOR, which is currently
    causing a build failure on latest git with CONFIG_OMAP_MBOX_FWK=m; the
    original breakage appears to date from the end of last year in
    a5abbbe52b7e89a7633319c5417bd4331f7ac8ed
    
    Signed-Off-By: Jonathan McDowell <noodles at earth.li>
    Acked-by: Hiroshi DOYU <Hiroshi.DOYU at nokia.com>
    Signed-off-by: Tony Lindgren <tony at atomide.com>

commit f344011ccb85469445369153c3d27c4ee4bc2ac8
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Mon Jun 22 13:58:35 2009 +0200

    perf_counter: Optimize perf_counter_alloc()'s inherit case
    
    We don't need to add usage counts for swcounter and attr usage
    models for inherited counters since the parent counter will
    always have one, which suffices to generate the needed output.
    
    This avoids up to 3 global atomic increments per inherited
    counter.
    
    LKML-Reference: <new-submission>
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit b84fbc9fb1d943e2c5f4efe52ed0e3c93a4bdb6a
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Mon Jun 22 13:57:40 2009 +0200

    perf_counter: Push inherit into perf_counter_alloc()
    
    Teach perf_counter_alloc() about inheritance so that we can
    optimize the inherit path in the next patch.
    
    Remove the child_counter->atrr.inherit = 1 line because the
    only way to get there is if parent_counter->attr.inherit == 1
    and we copy the attrs.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit f29ac756a40d0f1bb07d682ea521e7b666ff06d5
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Fri Jun 19 18:27:26 2009 +0200

    perf_counter: Optimize perf_swcounter_event()
    
    Similar to tracepoints, use an enable variable to reduce
    overhead when unused.
    
    Only look for a counter of a particular event type when we know
    there is at least one in the system.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    LKML-Reference: <new-submission>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 3d906ef10a539ff336010afab8f6f9c4fe379695
Author: Peter Zijlstra <a.p.zijlstra at chello.nl>
Date:   Tue Jun 23 11:23:07 2009 +0200

    perf_counter tools: Handle overlapping MMAP events
    
    Martin Schwidefsky reported "perf report" symbol resolution
    problems on S390.
    
    Since we only report MMAP, not MUNMAP, we have to deal with
    overlapping maps.
    
    We used to simply throw out the old map on the assumption whole
    maps got unmapped. This obviously doesn't deal with partial
    unmaps. However it appears some dynamic linkers do fancy
    partial unmaps (s390), so do something more elaborate and
    truncate the old maps, only removing them when they've been
    fully covered.
    
    This resolves (part of) the S390 symbol resolution problems.
    
    Reported-by: Martin Schwidefsky <schwidefsky at de.ibm.com>
    Tested-by: Martin Schwidefsky <schwidefsky at de.ibm.com>
    Signed-off-by: Peter Zijlstra <a.p.zijlstra at chello.nl>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit bfdb4d9f0f611687d71cf6a460efc9e755f4a462
Author: Arun R Bharadwaj <arun at linux.vnet.ibm.com>
Date:   Tue Jun 23 10:00:58 2009 +0530

    timers: Fix timer_migration interface which accepts any number as input
    
    Poornima Nayek reported:
    
    | Timer migration interface /proc/sys/kernel/timer_migration in
    | 2.6.30-git9 accepts any numerical value as input.
    |
    | Steps to reproduce:
    | 1. echo -6666666 > /proc/sys/kernel/timer_migration
    | 2. cat /proc/sys/kernel/timer_migration
    | -6666666
    |
    | 1. echo 44444444444444444444444444444444444444444444444444444444444 > /proc/sys/kernel/timer_migration
    | 2. cat /proc/sys/kernel/timer_migration
    | -1357789412
    |
    | Expected behavior: Should 'echo: write error: Invalid argument' while
    | setting any value other then 0 & 1
    
    Restrict valid values to 0 and 1.
    
    Reported-by: Poornima Nayak <mpnayak at linux.vnet.ibm.com>
    Tested-by: Poornima Nayak <mpnayak at linux.vnet.ibm.com>
    Signed-off-by: Arun R Bharadwaj <arun at linux.vnet.ibm.com>
    Cc: poornima nayak <mpnayak at linux.vnet.ibm.com>
    Cc: Arun Bharadwaj <arun at linux.vnet.ibm.com>
    LKML-Reference: <20090623043058.GA3249 at linux.vnet.ibm.com>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 971121f27179508beb18b86b84e1f8399d7b3875
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Tue Jun 23 17:36:23 2009 +0900

    sh: Fix up more dma-mapping fallout.
    
    commit dbe6f1869188b6e04e38aa861dd198befb08bcd7
    ("dma-mapping: mark dma_sync_single and dma_sync_sg as deprecated"
    conveniently broke every single SH build.
    
    In the future it would be great if people could at least bother
    figuring out how to use grep.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 854c879f5abf309ebd378bea1ee41acf4ddf7194
Author: Pekka J Enberg <penberg at cs.helsinki.fi>
Date:   Mon Jun 22 17:39:41 2009 +0300

    x86: Move init_gbpages() to setup_arch()
    
    The init_gbpages() function is conditionally called from
    init_memory_mapping() function. There are two call-sites where
    this 'after_bootmem' condition can be true: setup_arch() and
    mem_init() via pci_iommu_alloc().
    
    Therefore, it's safe to move the call to init_gbpages() to
    setup_arch() as it's always called before mem_init().
    
    This removes an after_bootmem use - paving the way to remove
    all uses of that state variable.
    
    Signed-off-by: Pekka Enberg <penberg at cs.helsinki.fi>
    Acked-by: Yinghai Lu <yinghai at kernel.org>
    LKML-Reference: <Pine.LNX.4.64.0906221731210.19474 at melkki.cs.Helsinki.FI>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 2eb2a4368273e123d2716a704c86f3130aa14c22
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Fri Jun 19 16:00:00 2009 +0900

    sh: SH7786 SMP support.
    
    SH7786 is roughly identical to SH-X3 proto SMP, though there are only 2
    CPUs. This just wraps in to the existing SH-X3 SMP code with some minor
    changes for SH7786, including wiring up the IPIs properly, enabling
    IRQ_PER_CPU, and so forth.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit b29fa1fbc210a51103c7a16af44df42cadce0361
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Fri Jun 19 15:39:47 2009 +0900

    sh: Wire up the uncached fixmap on sh64 as well.
    
    Now that sh64 also can use the uncached section, wire up the fixmap for
    it as well.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 997d0030934f7722d81e5b1cdd7af85ac7ed960b
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Fri Jun 19 15:37:11 2009 +0900

    sh: Use local TLB flush in set_pte_phys().
    
    set_pte_phys() presently uses the global flush_tlb_one(), which locks on
    SMP trying to do the IPI. As we have not even initialized the other CPUs
    at this point, switch to the local_ variant so the flush happens on the
    boot CPU.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit 2e046b9487dcc60707cac77fb8f744ec830209cd
Author: Paul Mundt <lethal at linux-sh.org>
Date:   Fri Jun 19 14:40:51 2009 +0900

    sh: Provide cpu_idle_wait() to fix up cpuidle/SMP build.
    
    Crib the x86 cpu_idle_wait() implementation and shove it in with the
    idle code, subsequently enabling ARCH_HAS_CPU_IDLE_WAIT.
    
    Signed-off-by: Paul Mundt <lethal at linux-sh.org>

commit dee412066aeb16c43cf31599948c1a1de385df56
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Tue Jun 23 02:22:39 2009 +0530

    perf stat: Fix command option / manpage
    
    -l is not supported, it should be -S for scale.
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245703959.6167.16.camel at localhost.localdomain>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 7b994836f09fc3ce7d073ad6f8259a1a84003e02
Author: Roel Kluin <[mailto:roel.kluin at gmail.com]>
Date:   Tue Jun 23 10:04:14 2009 +0200

    CRISv10: remove redundant tests on unsigned
    
    Since dmanr is unsigned, negatives are wrapped and caught by the other test.
    
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Acked-by: Jesper Nilsson <jesper.nilsson at axis.com>

commit 9b901ee0cb007eb4e2ee056e5b1c5c2837d53bdb
Author: Wim Van Sebroeck <wim at iguana.be>
Date:   Fri Jun 19 09:32:57 2009 +0000

    [WATCHDOG] wdt_pci.c: remove #ifdef CONFIG_WDT_501_PCI
    
    Change the wdt_pci.c watchdog driver so that the code is the same for
    both the PCI-WDT500 as the PCI-WDT501 card. The selection of the card
    is now being done via the module parameter: 'type' instead of the
    config option CONFIG_WDT_501_PCI.
    
    Signed-off-by: Wim Van Sebroeck <wim at iguana.be>

commit 44df75353bc8f32e26e049284053a61d4f1047d6
Author: Tom Mingarelli <thomas.mingarelli at hp.com>
Date:   Thu Jun 18 23:28:57 2009 +0000

    [WATCHDOG] hpwdt: Add NMI priority option
    
    Add a priority option so that the user can choose if we do the NMI
    first or last.
    
    Signed-off-by: Thomas Mingarelli <thomas.mingarelli at hp.com>
    Signed-off-by: Wim Van Sebroeck <wim at iguana.be>

commit 789cd4702bf830416d2e1794495407be42fe95ad
Author: Ulrik Bech Hald <ubh at ti.com>
Date:   Fri Jun 12 16:18:32 2009 -0500

    [WATCHDOG] OMAP fixes: enable clock in probe, trigger timer reload
    
    This patch contains two fixes:
    
    1)In omap_wdt_probe() the watchdog is reset and disabled. This
    requires register access and the clks needs to be enabled temporarily
    
    2)In omap_wdt_open() the timer register needs to be reloaded
    to trigger a new timer value (the default of 60s)
    
    Tested on OMAP34xx platform (Zoom1)
    
    Reviewed-by: Kevin Hilman <khilman at ti.deeprootsystems.com>
    Signed-off-by: Ulrik Bech Hald <ubh at ti.com>
    Signed-off-by: Wim Van Sebroeck <wim at iguana.be>

commit eebf8d86acf0db974dfaad8e8285f4e12ca488e2
Author: Manu Abraham <abraham.manu at gmail.com>
Date:   Thu Jun 18 04:50:53 2009 -0300

    V4L/DVB (12131): BUGFIX: An incorrect Carrier Recovery Loop optimization table was being
    
    loaded for a given chip version. This would cause the optimization in
    tuning not to be applied and thus a failed expectation, in tuning speed
    increment. The patch swaps the tables in use. It also fixes a possible
    one in a million condition where state->dev_ver implies an older Cut
    (Cut < 2.0, eventhough the driver doesn't attach to any Cut older than
    2.0) or even negative (due to a bad I2C bus master driver) for the card
    combination.
    
    Thanks to Mauro Carvalho Chehab <mchehab at infradead.org> for pointing
    out the issue at large.
    
    Signed-off-by: Manu Abraham <manu at linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 0a5ded56fd3f4096681f8e6a249fb058485f4e46
Author: Manu Abraham <abraham.manu at gmail.com>
Date:   Wed Jun 17 16:48:17 2009 -0300

    V4L/DVB (12130): Fix a redundant compiler warning
    
    drivers/media/dvb/frontends/stv090x.c: In function ‘stv090x_optimize_carloop_short’:
    drivers/media/dvb/frontends/stv090x.c:2677: warning: ‘short_crl’ may be used uninitialized in this function
    
    Signed-off-by: Manu Abraham <manu at linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit d8b2996607d492ffa99628bafc80da14d3a5482d
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Fri Jun 12 16:31:29 2009 -0300

    V4L/DVB (12003): v4l2: Move bounding code outside I2C ifdef block
    
    On Fri, 12 Jun 2009, Randy Dunlap wrote:
    > From: Randy Dunlap <randy.dunlap at oracle.com>
    >
    > Move v4l_bound_align_image() outside of an #ifdef CONFIG_I2C block
    > so that it is always built.  Fixes a build error:
    
    clamp_align() should be moved as well, since it's only used by
    v4l_bound_align_image().  I'm attaching an alternate version that fixes
    this.  Labeled the endif too.
    
    Reported-by: Randy Dunlap <randy.dunlap at oracle.com>
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 1ca27379f3673b40edbd2fec53b93c993fdb4f0c
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11913): cx231xx: TRY_FMT should not actually set anything
    
    In the TRY_FMT handler the function get_scale() is called to find what the
    scaler hardware will produce for a requested size.
    
    The problem is that get_scale(struct cx231xx *dev, ..., unsigned int *vscale,
    unsigned int *hscale) saves the calculated scale values into both the
    pointer arguments and into dev's hscale and vscale fields.  TRY_FMT shouldn't
    actually change anything in the device state.
    
    The code to in get_scale() that writes to dev->[hv]scale can just be
    deleted.  In all cases when dev's fields should be modified, get_scale()
    was called with get_scale(dev, ..., &dev->hscale, &dev->vscale), so dev was
    getting updated anyway.
    
    This didn't actually cause a problem because nothing ever actually made use
    of the hscale and vscale fields.  I changed cx231xx_resolution_set() to use
    those fields rather than re-calculate them with a call to get_scale().
    
    Updating [hv]scale in cx231xx_resolution_set() isn't necessary because
    every call of cx231xx_resolution_set() was already preceded by a call to
    get_scale() or setting the [hv]scale fields, so they will be always be
    up-to-date w.r.t. width and height.
    
    Removing the call to get_scale() from cx231xx_resolution_set() allowed
    making get_scale() a static function, which is a good thing for something
    with such a short name.  There is already another function with the same
    name in the em28xx driver, but that one is static.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit ccb83408b258f7e9f9fe763f9a7d06ebcc21134f
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11912): em28xx: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    It appears that the em2800 can only scale by 50% or 100%, i.e. the only
    heights supported might be 240 and 480.  In that case the old code would
    set any height other than 240 to 480.  Request 240 get 240, but request 239
    and then you get 480.  Change it to round to the nearest supported value.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 9bd0e8d7d1bf0dc586bad905c7878b611da3acdc
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11911): cx231xx: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    Cc: Srinivasa Deevi <srinivasa.deevi at conexant.com>
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 653dc59b6468c2ba51f3b4aee609daa8f67d3e3a
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11910): mt9: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    Cc: Guennadi Liakhovetski <g.liakhovetski at gmx.de>
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 2449afcbcc654dbaa9dabeda9daecb69719b0aaa
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11909): cx23885: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 1c657a99fd655c0daa7450854a914d21c1da805c
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11908): w8968cf: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    The existing code was casting pointers to u32 and to unsigned int into
    pointers to u16.  This could mess up if someone passed in an image size
    greater than 65,535 and on big-endian platforms it won't work at all.
    
    The existing bounding code would shrink an image if it was too big, but
    returned ERANGE if it was too small.  The code will not shrink or expand as
    necessary.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 4b89945e590f94e82a6e7f33e21cbd0d83774b9e
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11907): cx88: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit bc52d6eb44de8f19934768d4d10d19fdbdc99950
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11906): saa7134: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 3adbbb8e2a87d58401466c825e9ff191e3b5a7b6
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11905): vivi: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 728f5b93f48cbfebd8e939bec2be1252fce7dae1
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11904): zoran: Use v4l bounding/alignment functiob
    
    The v4l function has a better algorithm for aligning image size.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit bc44fc061ea1f2b7918ec0bb55013b8054c81752
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11903): sh_mobile_ceu_camera: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 4a6b8df2133c1f218a503e0432a9e6cc3d461a30
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11902): pxa-camera: Use v4l bounding/alignment function
    
    The v4l function has a better algorithm for aligning image size.
    
    For instance the old code would change 159x243 into 156x240 to meet the
    alignment requirements.  The new function will use 160x243, which is a lot
    closer to what was asked for originally.
    
    Cc: Robert Jarzmik <robert.jarzmik at free.fr>
    Cc: Guennadi Liakhovetski <g.liakhovetski at gmx.de>
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit b0d3159be9a36fd8b7b1cf88b812d951add53d11
Author: Trent Piepho <xyzzy at speakeasy.org>
Date:   Sat May 30 21:45:46 2009 -0300

    V4L/DVB (11901): v4l2: Create helper function for bounding and aligning images
    
    Most hardware has limits on minimum and maximum image dimensions and also
    requirements about alignment.  For example, image width must be even or a
    multiple of four.  Some hardware has requirements that the total image size
    (width * height) be a multiple of some power of two.
    
    v4l_bound_align_image() will enforce min and max width and height, power of
    two alignment on width and height, and power of two alignment on total
    image size.
    
    It uses an efficient algorithm that will try to find the "closest" image
    size that meets the requirements.
    
    Signed-off-by: Trent Piepho <xyzzy at speakeasy.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 2c0b19ac3b73199fe7b3fbff884051046554c048
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Tue Jun 9 17:29:29 2009 -0300

    V4L/DVB (12128): v4l2: update framework documentation.
    
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit f0222c7d860f09a61bec5e500539f28db0184b38
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Tue Jun 9 17:12:33 2009 -0300

    V4L/DVB (12125): v4l2: add new s_config subdev ops and v4l2_i2c_new_subdev_cfg/board calls
    
    Add a new s_config core ops call: this is called with the irq and platform
    data to be used to initialize the subdev.
    
    Added new v4l2_i2c_new_subdev_cfg and v4l2_i2c_new_subdev_board calls
    that allows you to pass these new arguments.
    
    The existing v4l2_i2c_new_subdev functions were modified to also call
    s_config.
    
    In the future the existing v4l2_i2c_new_subdev functions will be replaced
    by a single v4l2_i2c_new_subdev function similar to v4l2_i2c_new_subdev_cfg
    but without the irq and platform_data arguments.
    
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 90135c96869fa0ef3182282b2a661b57fcdb7230
Author: Mike Isely <isely at pobox.com>
Date:   Sat Jun 20 14:57:24 2009 -0300

    V4L/DVB (12122): pvrusb2: De-obfuscate code which handles routing schemes
    
    This change does not change any outward behavior; it merely chops down
    some large if-conditions with embedded assignments into something a
    little more maintainable for others (I of course never had a problem
    with this...).
    
    Signed-off-by: Mike Isely <isely at pobox.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 81e804c9c2e38431c1c01165d06076776c6fcbd6
Author: Mike Isely <isely at pobox.com>
Date:   Sat Jun 20 14:55:31 2009 -0300

    V4L/DVB (12121): pvrusb2: Improve handling of routing schemes
    
    The pvrusb2 driver has a concept of "routing scheme" which defines
    which physical inputs should be connected based on application's
    choice of logical input.  The correct "routing scheme" depends on the
    specific device since different devices might wire up their muxes
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 6f441ed78e28ea02940e58ffa89fbbc734ab6da3
Author: Mike Isely <isely at pobox.com>
Date:   Sat Jun 20 14:51:29 2009 -0300

    V4L/DVB (12120): pvrusb2: Change initial default frequency setting
    
    Change default frequency to be US Broadcast channel 3 - with the
    transition to d igital the previous value has now become useless.
    This change is PURELY to help with my testing (I need to set some kind
    of default so it might as well be some thing usable).
    
    Signed-off-by: Mike Isely <isely at pobox.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit a6862da2f3c7ce3ec6644958bc8937b630b9e2c1
Author: Mike Isely <isely at pobox.com>
Date:   Sat Jun 20 14:50:14 2009 -0300

    V4L/DVB (12119): pvrusb2: Re-fix hardware scaling on video standard change
    
    The cx25840 module's VBI initialization logic uses the current video
    standard as part of its internal algorithm.  This therefore means that
    we probably need to make sure that the correct video standard has been
    set before initializing VBI.  (Normally we would not care about VBI,
    but as described in an earlier changeset, VBI must be initialized
    correctly on the cx25840 in order for the chip's hardware scaler to
    operate correctly.)
    
    It's kind of messy to force the video standard to be set before
    initializing VBI (mainly because we can't know what the app really
    wants that early in the initialization process).  So this patch does
    the next best thing: VBI is re-initialized after any point where the
    video standard has been set.
    
    Signed-off-by: Mike Isely <isely at pobox.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit e17d787c513f41f59969247062561fff6340f211
Author: Mike Isely <isely at pobox.com>
Date:   Sat Jun 20 14:45:52 2009 -0300

    V4L/DVB (12118): pvrusb2: Fix hardware scaling when used with cx25840
    
    The cx25840 module requires that its VBI initialization entry point be
    called in order for hardware-scaled video capture to work properly -
    even if we don't care about VBI.  Making this behavior even more
    subtle is that if the capture resolution is set to 720x480 - which is
    the default that the pvrusb2 driver sets up - then the cx25840
    bypasses the hardware scaler.  Therefore this problem does not
    manifest itself until some other resolution, e.g. 640x480, is tried.
    MythTV typically defaults to 640x480 or 480x480, which means that
    things break whenever the driver is used with MythTV.
    
    This all has been known for a while (since at least Nov 2006), but
    recent changes in the pvrusb2 driver (specifically in regards to
    sub-device support) caused this to break again.  VBI initialization
    must happen *after* the chip's firmware is loaded, not before.  With
    this fix, 24xxx devices work correctly again.
    
    A related fix that is part of this changeset is that now we
    re-initialize VBI any time after we issue a reset to the cx25840
    driver.  Issuing a chip reset erases the state that the VBI setup
    previously did.  Until the HVR-1950 came along this subtlety went
    unnoticed, because the pvrusb2 driver previously never issued such a
    reset.  But with the HVR-1950 we have to do that reset in order to
    correctly transition from digital back to analog mode - and since the
    HVR-1950 always starts in digital mode (required for the DVB side to
    initialize correctly) then this device has never had a chance to work
    correctly in analog mode!  Analog capture on the HVR-1950 has been
    broken this *ENTIRE* time.  I had missed it until now because I've
    usually been testing at the default 720x480 resolution which does not
    require scaling...  What fun.  By re-initializing VBI after a cx25840
    chip reset, correct behavior is restored.
    
    Signed-off-by: Mike Isely <isely at pobox.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit b34cdc36c4aad10cf4eaadacf067835d6a622f1b
Author: Michael Krufky <mkrufky at kernellabs.com>
Date:   Thu May 21 12:49:28 2009 -0300

    V4L/DVB (12116): cx23885: ensure correct IF freq is used on HVR1200 & HVR1700
    
    Ensure that we're programming the tda18271 tuner with the correct
    IF frequencies to match the programming of the TDA10048 DVB-T demod
    for the HVR1200 and HVR1700 products.
    
    Signed-off-by: Michael Krufky <mkrufky at kernellabs.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 9d68fc0ad40b852470026ee58a07e1d662571d04
Author: Michael Krufky <mkrufky at kernellabs.com>
Date:   Fri Jun 19 16:21:37 2009 -0300

    V4L/DVB (12115): tda10048: add missing entry to pll_tab for 3.8 MHz IF
    
    Thanks for Terry Wu for pointing out the missing entry.
    
    Cc: Terry Wu <terrywu2009 at gmail.com>
    Signed-off-by: Michael Krufky <mkrufky at kernellabs.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit aad40d3d0cd9b679e83f6a902ad1e2b8f7b4c9bb
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Sat Jun 20 09:21:37 2009 -0300

    V4L/DVB (12112): cx231xx: fix uninitialized variable.
    
    The variable 'rc' could be used uninitialized in the cx231xx_capture_start
    function. Sri informed me that it should be initialized to -1.
    
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 54bb501c069bbe34cf8becf0a9985fc6873d6b21
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Sat Jun 20 09:18:34 2009 -0300

    V4L/DVB (12111): tcm825x: remove incorrect __exit_p wrapper
    
    tcm825x_remove is not necessarily called on module exit, it can also be
    called when the i2c_adapter is removed. While the i2c adapter might never
    be removed on an embedded system, in practice this sensor driver can also
    be used in e.g. a USB webcam where this is a perfectly acceptable thing
    to do.
    
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 5543e2b4c495714e5f1b2dbbe250df15239af1cd
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Sat Jun 20 06:29:12 2009 -0300

    V4L/DVB (12109): radio-tea5764: fix incorrect rxsubchans value
    
    rxsubchans was only set when stereo was detected, otherwise it was
    left to 0 instead of setting it to mono.
    
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 719cd4ab9695059e00f5248d1dceb534381fccb3
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Sun Jun 14 07:12:11 2009 -0300

    V4L/DVB (12108): v4l2-i2c-drv.h: add comment describing when not to use this header.
    
    Make it very clear that this header should not be used for i2c drivers that
    do not need to be compiled for pre-2.6.26 kernels.
    
    As soon as the minimum supported kernel in the v4l-dvb repository becomes
    2.6.26 or up, then this header should be removed entirely.
    
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit be5daa9bd220d384c7010aee6d3886279a61a183
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Sun Jun 14 06:47:35 2009 -0300

    V4L/DVB (12107): smscoreapi: fix compile warning
    
    gcc 4.3.1 generates this warning:
    
    v4l/smscoreapi.c: In function 'smscore_gpio_configure':
    v4l/smscoreapi.c:1481: warning: 'GroupNum' may be used uninitialized in this function
    v4l/smscoreapi.c:1480: warning: 'TranslatedPinNum' may be used uninitialized in this function
    
    While in practice this will not happen, it is something that the compiler
    can't determine. Initializing these two local variables to 0 suppresses
    this warning.
    
    Cc: Udi Atar <udi.linuxtv at gmail.com>
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit c6711c3e6d4976716633047c0f6bbd953d6831fb
Author: Hans Verkuil <hverkuil at xs4all.nl>
Date:   Sun Jun 14 05:20:21 2009 -0300

    V4L/DVB (12104): ivtv/cx18: fix regression: class controls are no longer seen
    
    A previous change (v4l2-common: remove v4l2_ctrl_query_fill_std) broke
    the handling of class controls in VIDIOC_QUERYCTRL. The MPEG class control
    was broken for all drivers that use the cx2341x module and the USER class
    control was broken for ivtv and cx18.
    
    This change adds back proper class control support.
    
    Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit a4c473033b6a100773a4fd8b7ba1e45baeb1e692
Author: Devin Heitmueller <dheitmueller at kernellabs.com>
Date:   Sat Jun 20 21:34:42 2009 -0300

    V4L/DVB (12102): em28xx: add Remote control support for EVGA inDtube
    
    Add an IR profile for the EVGA inDtube remote control (which is an NEC type
    remote)
    
    Signed-off-by: Devin Heitmueller <dheitmueller at kernellabs.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 19859229d7d98bc2d582ff45045dd7f73d649383
Author: Devin Heitmueller <dheitmueller at kernellabs.com>
Date:   Fri Jun 19 00:33:54 2009 -0300

    V4L/DVB (12101): em28xx: add support for EVGA inDtube
    
    Add support for the EVGA inDtube.  Both ATSC and analog side validated as
    fully functional.
    
    Thanks to Jake Crimmins from EVGA for providing the correct GPIO info.
    Thanks to Alan Hagge for doing all the device testing.
    Thanks to Greg Williamson for providing hardware for testing.
    
    Cc: Jake Crimmins <jcrimmins at evga.com>
    Cc: Alan Hagge <ahagge at gmail.com>
    Cc: Greg Williamson <cheeseboy16 at gmail.com>
    Signed-off-by: Devin Heitmueller <dheitmueller at kernellabs.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit cdf7bfa8926fb26d5900103ae09eb5f3eddb95cc
Author: Devin Heitmueller <dheitmueller at kernellabs.com>
Date:   Fri Jun 19 00:20:28 2009 -0300

    V4L/DVB (12100): em28xx: make sure the analog GPIOs are set if we used a card hint
    
    In cases where the board had a default USB ID, we would not indentify the
    board until after the call to em28xx_set_mode().  As a result, for those
    boards the analog GPIOs were not being set before probing the i2c bus for
    devices (the probe would occur with the GPIOs being all high).
    
    Make a call to em28xx_set_mode() so that the GPIOs are set properly before
    probing the i2c bus for devices.
    
    This problem was detected with the EVGA inDtube, where the tvp5150 is not
    powered on unless GPIO1 is pulled low.
    
    Signed-off-by: Devin Heitmueller <dheitmueller at kernellabs.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit f867c3f4eab1d5006df4f3734fab1134feffbeba
Author: Igor M. Liplianin <liplianin at netup.ru>
Date:   Fri Jun 19 05:45:23 2009 -0300

    V4L/DVB (12098): Create table for customize stv0900 ts registers.
    
    Signed-off-by: Igor M. Liplianin <liplianin at netup.ru>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit ee1ebcfea6ee16491f88e8023554dd214e1ba85c
Author: Abylay Ospan <aospan at netup.ru>
Date:   Mon Jun 8 04:31:26 2009 -0300

    V4L/DVB (12097): Implement reading uncorrected blocks for stv0900
    
    Signed-off-by: Abylay Ospan <aospan at netup.ru>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 68191edeb50773993f4a05651b0a085bd110fbeb
Author: Abylay Ospan <aospan at netup.ru>
Date:   Sun Jun 14 14:10:05 2009 -0300

    V4L/DVB (12096): Bug fix: stv0900 register read must using i2c in one transaction
    
    Signed-off-by: Abylay Ospan <aospan at netup.ru>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 0cde9b2533d6fe79307173f24209228aaf34bc98
Author: Igor M. Liplianin <liplianin at netup.ru>
Date:   Sun Jun 14 13:17:15 2009 -0300

    V4L/DVB (12095): Change lnbh24 configure bits for NetUP card.
    
    Signed-off-by: Igor M. Liplianin <liplianin at netup.ru>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 3fb4a57b494e05dba4d1305e2347c6633b76c20e
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 14:31:36 2009 -0300

    V4L/DVB (12093): gspca_sonixj: Name saturation control saturation, not color
    
    Name saturation control saturation, not color and make the default
    less saturated (the old default was overdoing it).
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit f800952c21157f11a5510d9cf700c9a7ba30800d
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 14:29:20 2009 -0300

    V4L/DVB (12092): gspca_sonixj + ov7630: invert vflip control instead of changing default
    
    gspca_sonixj + ov7630 had the default value for flip enabled, as otherwise
    the picture is upside down. It is better to instead invert the meaning
    of the control in the set function, and have the default be no vflip,
    as one would expect vflip enabled to be upside down.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 37c6dbe290c05023b47f52528e30ce51336b93eb
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 07:35:36 2009 -0300

    V4L/DVB (12091): gspca_sonixj: Add light frequency control
    
    gspca_sonixj: Add light frequency control
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 1fec747cd389b4812a9932a1416d76e8a53596b2
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 06:05:07 2009 -0300

    V4L/DVB (12090): gspca_sonixj: enable autogain control for the ov7620
    
    gspca_sonixj: enable autogain control for the ov7620, and not only
    make it enable autogain but also auto exposure (and do the
    same for the ov7648).
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit a5d1cc39fee739cf4fc2a1f43da812c50de9d3d6
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 06:03:20 2009 -0300

    V4L/DVB (12089): gspca_sonixj: increase 640x480 frame-buffersize
    
    gspca_sonixj: increase 640x480 frame-buffersize, as I was getting buffer
    overflows during my testing of a "Premier" 0c45:613e cam
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 119893b2dfb18515bfdcc5edb83422e6aa126a86
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 05:20:51 2009 -0300

    V4L/DVB (12088): Mark the v4l1 uvcvideo quickcam messenger driver as deprecated
    
    Mark the v4l1 uvcvideo quickcam messenger driver as deprecated, the one
    cam it supports, is now also supported by the v4l2 gspca stv06xx driver.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit cc7b5b573feb5edfe68c028bc1ea383dab37dde2
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 05:14:42 2009 -0300

    V4L/DVB (12087): gspca_sonixj: enable support for 0c45:613e camera
    
    gspca_sonixj: enable support for 0c45:613e camera, and slightly tweak
    the ov7630 register init values for a much better picture.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 9764398bdeef49414b37ef8bd35abfec1f44bd3e
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 05:08:11 2009 -0300

    V4L/DVB (12086): gspca_sonixj: Fix control index numbering
    
    The control index defines for the gspca_sonixj driver were numbered
    wrong, causing us to disable the wrong controls on various sensors
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit e080fcd9298d544f3233d8c45304990be1920b3d
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Thu Jun 18 05:03:16 2009 -0300

    V4L/DVB (12085): gspca_ov519: constify ov518 inititial register value tables
    
    gspca_ov519: constify ov518 inititial register value tables
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 0220f8870e66628f19c36bad813e881ebfaae7a6
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Wed Jun 17 18:50:10 2009 -0300

    V4L/DVB (12084): ov511: mark as deprecated
    
    Mark the v4l1 ov511 as deprecated as we now have ov511 support in
    the gspca ov519 driver. Note we should really also keep track of this
    in Documentation/feature-removal-schedule.txt, but that is not
    part of the v4l-dvb tree.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 98b1e9be882eff0f00bb5770ced9d9b24eb0238c
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Wed Jun 17 18:41:01 2009 -0300

    V4L/DVB (12083): ov511: remove ov518 usb id's from the driver
    
    ov511: remove ov518 usb id's from the driver, as they have not been working
    ever since the decompression code got removed from the kernel, and they
    are no supported by the gspca_ov519 module.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 8668d504d72c384fbfb6ab6f5d02a9fe4d813554
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Wed Jun 17 18:37:57 2009 -0300

    V4L/DVB (12082): gspca_stv06xx: Add support for st6422 bridge and sensor
    
    Add support for st6422 bridge and sensor to the stv06xx gspca sub driver,
    tested with:
    Logitech QuickCam Messenger     046d:08f0       ST6422  integrated
    Logitech QuickCam Mess. Plus    046d:08f6       ST6422  integrated
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit ae49c40461d8981b232e3fec28234d492067f0e1
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 19:15:07 2009 -0300

    V4L/DVB (12081): gspca_ov519: Cleanup some sensor special cases
    
    gspca_ov519: Cleanup some sensor special cases
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit b282d87332f5b3c2ac2e289f772b33067e4be77b
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 19:10:40 2009 -0300

    V4L/DVB (12080): gspca_ov519: Fix ov518+ with OV7620AE (Trust spacecam 320)
    
    gspca_ov519: Fix ov518+ with OV7620AE (Trust spacecam 320)
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 1876bb923c98c605eca69f0bfe295f7b5f5eba28
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 06:45:50 2009 -0300

    V4L/DVB (12079): gspca_ov519: add support for the ov511 bridge
    
    gspca_ov519: add support for the ov511 bridge
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit f5cee95c2e4c56b50cdb8edd33cf04902946cd25
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 06:32:52 2009 -0300

    V4L/DVB (12078): gspca_ov519: Better default contrast for ov6630
    
    Hmm, another one with an extra if (life sucks) the
    default contrast really is no good for the ov6630, it
    isn't even high enough in full daylight, this gives
    the ov6630 a different initial value for a better out
    of the box experience.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 80142efa715581c06d01b37f299a240309699ff4
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 06:26:49 2009 -0300

    V4L/DVB (12077): gspca_ov519: Fix 320x240 with ov7660 sensor
    
    As reported on the ov51x-jpeg list, and as I can confirm with my own cam
    the ov7670 in 320x240 has a number of broken columns of pixels
    at the left of the picture. This was not present in the old
    driver as it always used 640x480 and did software
    downscaling (took me a while to figure that one out).
    The fix adds a sensor specific if in so far sensor
    neutral code :( But this is the only way to fix this,
    this cannot be fixed by only changing sensor registers.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 9e4d82588174e68abe8e3568202f0b530415661f
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 06:25:06 2009 -0300

    V4L/DVB (12076): gspca_ov519: Fix led inversion with some cams
    
    My ov519 cam has it led inverted, the same has been
    reported on the ov51x-jpeg list for another
    creative cam. This patch fixes this without changing
    the behaviour for other cams.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 92918a53ee74bb326430aaa958caa0cf111b54b1
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 06:21:35 2009 -0300

    V4L/DVB (12075): gspca_ov519: check ov518 packet numbers
    
    Check ov518 packet numbers to detect dropped packets.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 124cc9c0c8acc77ac2f1114ee7eea961334020ba
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 05:48:00 2009 -0300

    V4L/DVB (12074): gspca_ov519: Add 320x240 and 160x120 support for cif sensor cams
    
    gspca_ov519: Add 320x240 and 160x120 support for cif sensor cams
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 7d9713735d7537baf2b00be806a8de08a5c9f11b
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 05:28:17 2009 -0300

    V4L/DVB (12073): gspca_ov519: limit ov6630 qvif uv swap fix to ov66308AF
    
    The fix for the UV swapping in qcif mode with the ov6630, which I did
    to fix this issue on a ov518 cam with an ov66308AF, causes UV swapping in
    qcif with another cam of mine with the ov518 and an ov66308AE, so this
    patch changes the code to differentiate between the ov66308AF and other
    ov6630 versions, and restricts the UV swap fix to the ov66308AF.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 02ab18b0f497bed623814677577b76cc97234085
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sun Jun 14 04:32:04 2009 -0300

    V4L/DVB (12072): gspca-ov519: add extra controls
    
    This patch adds autobrightness (so that it can
    be turned off to make the already present brightness
    control work) and light frequency filtering controls.
    
    The lightfreq control needed 2 different entries
    in the ctrls array, as the number of options differs
    depending on the sensor. Always one of the 2 entires is
    disabled ofcourse.
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit b8bfb5fb348d939a96fc8f71996a2e5e48b4544b
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Sat Jun 13 18:56:22 2009 -0300

    V4L/DVB (12071): gspca: fix NULL pointer deref in query_ctrl
    
    gspca: fix NULL pointer deref in query_ctrl
    
    Signed-off-by: Hans de Goede <hdegoede at redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit 14422f9dd8515bfbe6fdbde37eadf59e2980f104
Author: Mauro Carvalho Chehab <mchehab at redhat.com>
Date:   Tue Jun 16 23:55:44 2009 -0300

    V4L/DVB (12010): cx88: Properly support Leadtek TV2000 XP Global
    
    Fix Leadtek TV2000 XP Global entries and add missing PCI ID's.
    
    Thanks to Terry Wu <terrywu2009 at gmail.com> for pointing us for the proper settings.
    
    Cc: Terry Wu <terrywu2009 at gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at redhat.com>

commit e727f5cde90d5a8b92a1ffa49c636a3790301469
Author: Roland Dreier <rolandd at cisco.com>
Date:   Mon Jun 22 23:07:56 2009 -0700

    mlx4_core: Fix dma_sync_single_for_cpu() with matching for_device() calls
    
    Commit 5d23a1d2 ("net: replace dma_sync_single with
    dma_sync_single_for_cpu") replaced uses of the deprectated function
    dma_sync_single() with calls to dma_sync_single_for_cpu().  However,
    to be correct, the code should do a sync for_cpu() before touching the
    memory and for_device() after it's done.
    
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit 99987bea474ceca8ec6fb05f81d7d188634cdffd
Author: Roland Dreier <rolandd at cisco.com>
Date:   Mon Jun 22 23:04:13 2009 -0700

    IB/mthca: Replace dma_sync_single() use with proper functions
    
    dma_sync_single() is deprecated now, and the use in mthca is wrong:
    there should be a dma_sync_single_for_cpu() before touching the memory
    from the CPU, and a dma_sync_single_for_device() afterwards.  Fix
    this, prompted by a kick in the pants from a patch from FUJITA
    Tomonori <fujita.tomonori at lab.ntt.co.jp>.
    
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit 0d9e6659a1bde3733cfd0072adbb3514b579e383
Author: Tejun Heo <tj at kernel.org>
Date:   Thu Jun 11 11:04:45 2009 +0900

    libata: don't set IORDY for reset
    
    Before issuing reset, libata configures xfermode to PIO0 which makes
    some drivers turn on IORDY which may cause the controller to lock up
    if the port is not occupied.  IORDY isn't necessary at this point
    anyway.  Make ata_pio_need_iordy() return zero if it's being called
    for reset.
    
    This fixes bko#11703.  Reported and tracked down by Daniel Gnoutcheff
    and Constantine Gavrilov.
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Reported-by: Daniel Gnoutcheff <gnoutchd at union.edu>
    Cc: Constantine Gavrilov <constantine.gavrilov at gmail.com>
    Cc: Alan Cox <alan at lxorguk.ukuu.org.uk>
    Signed-off-by: Jeff Garzik <jgarzik at redhat.com>

commit dc77ad4c8727d3a1c23eadcb287501dab480d634
Author: Dave Liu <daveliu at freescale.com>
Date:   Wed Jun 10 22:53:37 2009 -0500

    sata_fsl: Add power mgmt support
    
    Signed-off-by: Dave Liu <daveliu at freescale.com>
    Signed-off-by: Liu Yu <yu.liu at freescale.com>
    Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
    Signed-off-by: Jeff Garzik <jgarzik at redhat.com>

commit 918d7b7c330f8afe18cb1b8692fc5f45a798634e
Author: Sergey Matyukevich <geomatsi at gmail.com>
Date:   Fri Jun 19 08:27:40 2009 +0400

    [libata] PATA driver for CF interface on AT91SAM9260 SoC
    
    This patch provides PATA driver for CompactFlash interface in True IDE
    mode on AT91SAM9260 SoC.
    
    Signed-off-by: Sergey Matyukevich <geomatsi at gmail.com>
    Signed-off-by: Jeff Garzik <jgarzik at redhat.com>

commit ad5d8eac91bb04533e49bbb6434791758300711d
Author: Evgeni Golov <sargentd at die-welt.net>
Date:   Mon Jun 22 09:46:20 2009 +0200

    [libata] beautify module parameters
    
    1. add defaults to description where possible
    2. add value definition (off=0, on=1) where missing
    
    v2: reformatted as per request by Jeff Garzik <jgarzik at pobox.com>
        "Enable foo (0=off, 1=on [default])"
    
    Signed-off-by: Evgeni Golov <sargentd at die-welt.net>
    Signed-off-by: Jeff Garzik <jgarzik at redhat.com>

commit 68237a0ff84503270373c39229be83e865ea08d4
Author: Faisal Latif <faisal.latif at intel.com>
Date:   Mon Jun 22 22:53:28 2009 -0700

    RDMA/nes: Fix FIN state handling under error conditions
    
    During cluster testing, one QP was not closed, as FIN is not handled
    properly when its rexmit count expires or in some cases when RST is is
    received after sending FIN.  The reason is that the cm_id does not get
    decremented under these conditions.
    
    Signed-off-by: Faisal Latif <faisal.latif at intel.com>
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit 66388d67a0d7bf39735650de54e42064d1af8b62
Author: Faisal Latif <faisal.latif at intel.com>
Date:   Mon Jun 22 22:52:30 2009 -0700

    RDMA/nes: Fix max_qp_init_rd_atom returned from query device
    
    In nes_query_device(), max_qp_init_rd_atom is incorrectly set to
    max_qp_wr.  This was found when a test application had a dapl async
    event error.
    
    Signed-off-by: Faisal Latif <faisal.latif at intel.com>
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit af04662b4d80de5797a595bc9855d09ef4fe55cc
Author: Roel Kluin <roel.kluin at gmail.com>
Date:   Mon Jun 22 22:23:48 2009 -0700

    IB/ehca: Ensure that guid_entry index is not negative
    
    This prevents the memcpy() of a guid_entries element using a negative index.
    
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit 0cf89dcdbc53f2b43e4ce7419b6ff47f4309c2eb
Author: Hannes Hering <hering2 at de.ibm.com>
Date:   Mon Jun 22 22:18:51 2009 -0700

    IB/ehca: Tolerate dynamic memory operations before driver load
    
    Implement toleration of dynamic memory operations and 16 GB gigantic
    pages, where "toleration" means that the driver can cope with dynamic
    memory operations that happen before the driver is loaded.  While the
    ehca driver is loaded, dynamic memory operations are still prohibited
    by returning NOTIFY_BAD from the memory notifier.
    
    On module load the driver walks through available system memory,
    checks for available memory ranges and then registers the kernel
    internal memory region accordingly.  The translation of address ranges
    is implemented via a 3-level busmap.
    
    Signed-off-by: Hannes Hering <hering2 at de.ibm.com>
    Signed-off-by: Roland Dreier <rolandd at cisco.com>

commit d888a4c76c51092993643f8992bf55b3c28da483
Merge: 687d680985b1438360a9ba470ece8b57cd205c3b 42b86e06c7db365f1947dda9b75317cbb3c9fb5b
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 21:49:16 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: (27 commits)
      Blackfin: fix dma-mapping build errors
      Blackfin: hook up new perf_counter_open syscall
      Blackfin: drop BF535-specific text for exception 0x2A (unaligned instruction)
      Blackfin: fix early crash when booting on wrong cpu
      Blackfin: fix GPTMR0_CLOCKSOURCE dependency on BFIN_GPTIMERS
      Blackfin: drop unused ISP1760 port1_disable from board resources
      Blackfin: bf526-ezbrd: handle different SDRAM chips
      Blackfin: fix typo in TRAS define in mem_init.h header
      Blackfin: unify memory map headers
      Blackfin: stick the CPU name into boot image name
      Blackfin: update defconfigs
      Blackfin: decouple unrelated cache settings to get exact behavior
      Blackfin: update I-pipe patch level
      Blackfin: remove obsolete mcount support from I-pipe code
      Blackfin: allow CONFIG_TICKSOURCE_GPTMR0 with interrupt pipeline
      Blackfin: convert interrupt pipeline to irqflags
      Blackfin: allow people to select BF51x-0.1 silicon rev
      Blackfin: bf526-ezbrd: set SPI flash resources to SST device
      Blackfin: fix accidental reset in some boot modes
      Blackfin: abstract irq14 lowering in do_irq
      ...

commit 687d680985b1438360a9ba470ece8b57cd205c3b
Merge: 1053414068bad659479e6efa62a67403b8b1ec0a 008fe148cb0fb51d266baabe2c09997b21cf90c6
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 21:38:22 2009 -0700

    Merge git://git.infradead.org/~dwmw2/iommu-2.6.31
    
    * git://git.infradead.org/~dwmw2/iommu-2.6.31:
      intel-iommu: Fix one last ia64 build problem in Pass Through Support
      VT-d: support the device IOTLB
      VT-d: cleanup iommu_flush_iotlb_psi and flush_unmaps
      VT-d: add device IOTLB invalidation support
      VT-d: parse ATSR in DMA Remapping Reporting Structure
      PCI: handle Virtual Function ATS enabling
      PCI: support the ATS capability
      intel-iommu: dmar_set_interrupt return error value
      intel-iommu: Tidy up iommu->gcmd handling
      intel-iommu: Fix tiny theoretical race in write-buffer flush.
      intel-iommu: Clean up handling of "caching mode" vs. IOTLB flushing.
      intel-iommu: Clean up handling of "caching mode" vs. context flushing.
      VT-d: fix invalid domain id for KVM context flush
      Fix !CONFIG_DMAR build failure introduced by Intel IOMMU Pass Through Support
      Intel IOMMU Pass Through Support
    
    Fix up trivial conflicts in drivers/pci/{intel-iommu.c,intr_remapping.c}

commit 1053414068bad659479e6efa62a67403b8b1ec0a
Merge: b88f8a546f5dba213938fdfc11e66bc5c2421623 0c53decdd0a9f9c459ccabe0b5f79660bde5375b
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 21:29:52 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
      firewire: new stack is no longer experimental
      firewire: net: better FIFO address range check and rcodes
      firewire: net: fix card driver reloading
      firewire: core: fix iso context shutdown on card removal
      firewire: core: fix DMA unmapping in iso buffer removal
      firewire: net: adjust net_device ops
      firewire: net: remove unused code
      firewire: net: allow for unordered unit discovery
      firewire: net: style changes
      firewire: net: add Kconfig item, rename driver
      firewire: add IPv4 support

commit b88f8a546f5dba213938fdfc11e66bc5c2421623
Author: Trond Myklebust <Trond.Myklebust at netapp.com>
Date:   Mon Jun 22 15:09:14 2009 -0400

    NFS: Correct the NFS mount path when following a referral
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust at netapp.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 0b75b35c7cad33e7613f5adf28fa10fe8b09b1c3
Author: Trond Myklebust <Trond.Myklebust at netapp.com>
Date:   Mon Jun 22 15:09:14 2009 -0400

    NFS: Fix nfs_path() to always return a '/' at the beginning of the path
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust at netapp.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit c02d7adf8c5429727a98bad1d039bccad4c61c50
Author: Trond Myklebust <Trond.Myklebust at netapp.com>
Date:   Mon Jun 22 15:09:14 2009 -0400

    NFSv4: Replace nfs4_path_walk() with VFS path lookup in a private namespace
    
    As noted in the previous patch, the NFSv4 client mount code currently
    has several limitations. If the mount path contains symlinks, or
    referrals, or even if it just contains a '..', then the client code in
    nfs4_path_walk() will fail with an error.
    
    This patch replaces the nfs4_path_walk()-based lookup with a helper
    function that sets up a private namespace to represent the namespace on the
    server, then uses the ordinary VFS and NFS path lookup code to walk down the
    mount path in that namespace.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust at netapp.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit cf8d2c11cb77f129675478792122f50827e5b0ae
Author: Trond Myklebust <Trond.Myklebust at netapp.com>
Date:   Mon Jun 22 15:09:13 2009 -0400

    VFS: Add VFS helper functions for setting up private namespaces
    
    The purpose of this patch is to improve the remote mount path lookup
    support for distributed filesystems such as the NFSv4 client.
    
    When given a mount command of the form "mount server:/foo/bar /mnt", the
    NFSv4 client is required to look up the filehandle for "server:/", and
    then look up each component of the remote mount path "foo/bar" in order
    to find the directory that is actually going to be mounted on /mnt.
    Following that remote mount path may involve following symlinks,
    crossing server-side mount points and even following referrals to
    filesystem volumes on other servers.
    
    Since the standard VFS path lookup code already supports walking paths
    that contain all these features (using in-kernel automounts for
    following referrals) we would like to be able to reuse that rather than
    duplicate the full path traversal functionality in the NFSv4 client code.
    
    This patch therefore defines a VFS helper function create_mnt_ns(), that
    sets up a temporary filesystem namespace and attaches a root filesystem to
    it. It exports the create_mnt_ns() and put_mnt_ns() function for use by
    filesystem modules.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust at netapp.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 616511d039af402670de8500d0e24495113a9cab
Author: Trond Myklebust <Trond.Myklebust at netapp.com>
Date:   Mon Jun 22 15:09:13 2009 -0400

    VFS: Uninline the function put_mnt_ns()
    
    In order to allow modules to use it without having to export vfsmount_lock.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust at netapp.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 31950eb66ff47c946fd9c65c2f8c94b6b7ba13fc
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 21:18:12 2009 -0700

    mm/init: cpu_hotplug_init() must be initialized before SLAB
    
    SLAB uses get/put_online_cpus() which use a mutex which is itself only
    initialized when cpu_hotplug_init() is called.  Currently we hang suring
    boot in SLAB due to doing that too late.
    
    Reported by James Bottomley and Sachin Sant (and possibly others).
    Debugged by Benjamin Herrenschmidt.
    
    This just removes the dynamic initialization of the data structures, and
    replaces it with a static one, avoiding this dependency entirely, and
    removing one unnecessary special initcall.
    
    Tested-by: Sachin Sant <sachinp at in.ibm.com>
    Tested-by: James Bottomley <James.Bottomley at HansenPartnership.com>
    Tested-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 56d21b07d44e0a33ab846f4f08e9e33bd87e5d4b
Author: Zhenyu Wang <zhenyuw at linux.intel.com>
Date:   Wed Jun 17 09:43:25 2009 +0800

    drm/i915: Fix HDMI regression introduced in new chipset support
    
    Remove wrongly added NULL_PACKETS_DURING_VSYNC setting for HDMI.
    
    Signed-off-by: Zhenyu Wang <zhenyuw at linux.intel.com>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit 1b16de0b070dc6fa29b7a99980eabe3325ee5983
Author: Jesse Barnes <jbarnes at virtuousgeek.org>
Date:   Mon Jun 22 11:30:30 2009 -0700

    drm/i915: fix LFP data fetch
    
    Apparently the proper way to do this is to use the LFP data pointer
    block to figure out the LFP data block entry size, then use that plus
    the panel index to calculate an offset into the LFP data block array.
    
    Similar fix has already been pushed to the 2D driver to fix fdo bug
    applied to the VBIOS reader, and things look sane).
    
    Signed-off-by: Jesse Barnes <jbarnes at virtuousgeek.org>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit 8ed9a5bc9c9425ef93a1b03b418300a5e18b2361
Author: ling.ma at intel.com <ling.ma at intel.com>
Date:   Mon Jun 22 22:08:35 2009 +0800

    drm/i915: set TV detection mode when tv is already connected
    
    We used load_detect_temp flag to determine whether to set tv to the test
    mode. However if the TV already has a mode set, we still need to set the
    test mode to determine connection.  This results in blinking, but there is
    no other reliable way to determine TV connection.
    
    freedesktop.org bug #22035
    
    Signed-off-by: Ma Ling <ling.ma at intel.com>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit 921809a5831821eaf86e799c4b3d7c666ee352b1
Author: Krzysztof Halasa <khc at pm.waw.pl>
Date:   Fri Jun 19 22:35:09 2009 +0200

    drm/i915: Catch up to obj_priv->page_list rename in disabled debug code.
    
    Signed-off-by:  Krzysztof Halasa <khc at pm.waw.pl>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit cfd43c025ddef0b1c723bb9811d2bde52b285710
Author: Krzysztof Halasa <khc at pm.waw.pl>
Date:   Sat Jun 20 00:31:28 2009 +0200

    drm/i915: Fix size_t handling in off-by-default debug printfs
    
    Signed-off-by: Krzysztof Halasa <khc at pm.waw.pl>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit aa0261f230105b86409e29bbe851b09830d93d50
Author: Zhao Yakui <yakui.zhao at intel.com>
Date:   Mon Jun 22 15:31:26 2009 +0800

    drm/i915: Don't change the blank/sync width when calculating scaled modes
    
    Also, use the border instead of border minus one.
    
    At the same time, make sure the horizontal border and hsync are even for
    the LVDS that works in dual-channel mode. So both horizontal border and hsync
    start are also changed to be even, even for the LVDS in single-channel mode.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=20951
    
    Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit 3fbe18d65d66054667aaee849bed74674bb50062
Author: Zhao Yakui <yakui.zhao at intel.com>
Date:   Mon Jun 22 15:31:25 2009 +0800

    drm/i915: Add support for changing LVDS panel fitting using an output property.
    
    Previously the driver would always scale the chosen video mode to fill the
    panel.  This adds 1:1 and maintain-aspect-ratio scaling modes.
    
    v2: the drm_calloc/drm_free is replaced by kzalloc/kfree based
    on Eric's suggestion.
    
    Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit 42b86e06c7db365f1947dda9b75317cbb3c9fb5b
Author: FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp>
Date:   Mon Jun 22 21:48:37 2009 -0400

    Blackfin: fix dma-mapping build errors
    
    The recent deprecation of dma_sync_{sg,single} ironically broke Blackfin
    systems.  This is because we don't define dma_sync_sg_for_cpu at all, so
    until the DMA asm-generic conversion/cleanup is done after the next
    release, simply stub out the dma_sync_sg_for_{cpu,device} functions.
    
    Signed-off-by: FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 9e06dd39f2b6d7e35981e0d7aded618686b32ccb
Author: Jesse Barnes <jbarnes at virtuousgeek.org>
Date:   Mon Jun 22 18:05:12 2009 -0700

    drm/i915: correct suspend/resume ordering
    
    We need to save register state *after* idling GEM, clearing the ring,
    and uninstalling the IRQ handler, or we might end up saving bogus
    fence regs, for one.  Our restore ordering should already be correct,
    since we do GEM, ring and IRQ init after restoring the last register
    state, which prevents us from clobbering things.
    
    I put this together to potentially address a bug, but I haven't heard
    back if it fixes it yet.  However I think it stands on its own, so I'm
    sending it in.
    
    Signed-off-by: Jesse Barnes <jbarnes at virtuousgeek.org>
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit 5ecf3e03cd513e8dba080d389b56bac11a2b0d8a
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Fri Jun 19 18:56:57 2009 -0400

    Blackfin: hook up new perf_counter_open syscall
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 986d6c1e05642edac81cb8cc99f36a26d16ef220
Author: Yi Li <yi.li at analog.com>
Date:   Fri Jun 19 08:51:11 2009 +0000

    Blackfin: drop BF535-specific text for exception 0x2A (unaligned instruction)
    
    We don't support the BF535 at all, and the exception 0x2A text specific to
    it is pretty verbose and confusing (since the behavior is simply odd), so
    punt it to keep the noise down.
    
    Signed-off-by: Yi Li <yi.li at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit bd854c077e660b5f44b5049219645042bcba61ac
Author: Robin Getz <robin.getz at analog.com>
Date:   Thu Jun 18 22:53:43 2009 +0000

    Blackfin: fix early crash when booting on wrong cpu
    
    Make sure we process the kernel command line before poking the hardware,
    so that we can process early printk.  This helps ensure that if you boot
    a kernel configured for a different processor, something will be left in
    the log buffer.
    
    Signed-off-by: Robin Getz <robin.getz at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 3aca47c02097a78a566f67e7ec5fa3e0f2583a73
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Thu Jun 18 19:40:47 2009 +0000

    Blackfin: fix GPTMR0_CLOCKSOURCE dependency on BFIN_GPTIMERS
    
    The GPTMR0_CLOCKSOURCE Kconfig option requires the gptimers framework, so
    make sure it is selected when this option is enabled.
    
    Reported-by: Peter Meerwald <pmeerw at pmeerw.net>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 3a7f5b1605570f5259e71d1846be27588a00bbaf
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Thu Jun 18 19:13:03 2009 +0000

    Blackfin: drop unused ISP1760 port1_disable from board resources
    
    The port1 disable stuff was dropped from the USB ISP1760, so update the
    Blackfin boards accordingly.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit ee48efb5dc45aeb9786dea6469d3e1bea5105036
Author: Graf Yang <graf.yang at analog.com>
Date:   Thu Jun 18 04:32:04 2009 +0000

    Blackfin: bf526-ezbrd: handle different SDRAM chips
    
    The BF526-EZBRD changed SDRAM chips between board revisions, so create a
    timing table that can accommodate both.
    
    Signed-off-by: Graf Yang <graf.yang at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 8f580f7c82ed9edeb3629568aabcde2caff3f236
Author: Graf Yang <graf.yang at analog.com>
Date:   Thu Jun 18 04:21:39 2009 +0000

    Blackfin: fix typo in TRAS define in mem_init.h header
    
    We defined SDRAM_tRAS to TRAS_4, but then wrongly defined SDRAM_tRAS_num
    to 3.
    
    Signed-off-by: Graf Yang <graf.yang at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit fa48f84a8cc722ca48b32fa0c338b6c3b358717d
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Wed Jun 17 11:25:06 2009 -0400

    Blackfin: unify memory map headers
    
    Many aspects of the Blackfin memory map is exactly the same across all
    variants.  Rather than copy and paste all of these duplicated values in
    each header, unify all of these into the common Blackfin memory map header
    file.  In the process, push down BF561 SMP specific stuff to the BF561
    specific header to keep the noise down.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 985895bd8d1e41079b41da32cdc57876a4a74126
Author: Robin Getz <rgetz at blackfin.uclinux.org>
Date:   Wed Jun 17 08:12:54 2009 -0400

    Blackfin: stick the CPU name into boot image name
    
    Rather than use "Linux" in the boot image name (as this is redundant --
    the image type is already set to "linux"), use the CPU name.  This makes
    it fairly obvious when a wrong image is accidentally booted.  Otherwise
    there is no kernel output and you waste time scratching your head
    wondering wtf just happened.
    
    Signed-off-by: Robin Getz <rgetz at blackfin.uclinux.org>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 841a534367c2cfdc325a11958c51406da17686c7
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Wed Jun 17 07:11:42 2009 +0000

    Blackfin: update defconfigs
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 41ba653f24a39a0e6a4afe9b2763a95a57e042c2
Author: Jie Zhang <jie.zhang at analog.com>
Date:   Tue Jun 16 09:48:33 2009 +0000

    Blackfin: decouple unrelated cache settings to get exact behavior
    
    The current cache options don't really represent the hardware features.
    They end up setting different aspects of the hardware so that the end
    result is to turn on/off the cache.  Unfortunately, when we hit cache
    problems with the hardware, it's difficult to test different settings to
    root cause the problem.  The current settings also don't cleanly allow for
    different caching behaviors with different regions of memory.
    
    So split the configure options such that they properly reflect the settings
    that are applied to the hardware.
    
    Signed-off-by: Jie Zhang <jie.zhang at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 7c039a90f02c3fdcab8d3ca170c05ad37014189e
Author: Philippe Gerum <rpm at xenomai.org>
Date:   Tue Jun 16 05:25:54 2009 +0200

    Blackfin: update I-pipe patch level
    
    Signed-off-by: Philippe Gerum <rpm at xenomai.org>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 5ba3b249c9e08100b0822f17276348b3447d6ee3
Author: Philippe Gerum <rpm at xenomai.org>
Date:   Tue Jun 16 05:25:50 2009 +0200

    Blackfin: remove obsolete mcount support from I-pipe code
    
    Signed-off-by: Philippe Gerum <rpm at xenomai.org>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit a40494a62a11dbaf326397aa94b2018ead09884d
Author: Philippe Gerum <rpm at xenomai.org>
Date:   Tue Jun 16 05:25:42 2009 +0200

    Blackfin: allow CONFIG_TICKSOURCE_GPTMR0 with interrupt pipeline
    
    Signed-off-by: Philippe Gerum <rpm at xenomai.org>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 06ecc190f3928850cb77c498f745fc8e9a7e2fd7
Author: Philippe Gerum <rpm at xenomai.org>
Date:   Tue Jun 16 05:25:37 2009 +0200

    Blackfin: convert interrupt pipeline to irqflags
    
    Signed-off-by: Philippe Gerum <rpm at xenomai.org>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 3d15f302d089d0583463745cbece077c1e8294b1
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 15 16:21:44 2009 +0000

    Blackfin: allow people to select BF51x-0.1 silicon rev
    
    Now that 0.1 of the BF51x is coming out, allow people to build for it.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit dc2c46bb702629d20a3786e10b540c7dcf2c017f
Author: Graf Yang <graf.yang at analog.com>
Date:   Mon Jun 15 08:23:41 2009 +0000

    Blackfin: bf526-ezbrd: set SPI flash resources to SST device
    
    The BF526-EZBRD has a SST SPI flash on it, not a ST Micro.
    
    Signed-off-by: Graf Yang <graf.yang at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 0de4adfb8c9674fa1572b0ff1371acc94b0be901
Author: Sonic Zhang <sonic.zhang at analog.com>
Date:   Mon Jun 15 07:39:19 2009 +0000

    Blackfin: fix accidental reset in some boot modes
    
    We read the SWRST (Software Reset) register to get at the last reset
    state, and then we may configure the DOUBLE_FAULT bit to control behavior
    when a double fault occurs.  But if the lower bits of the register is
    already set (like UART boot mode on a BF54x), we inadvertently make the
    system reset by writing to the SYSTEM_RESET field at the same time.  So
    make sure the lower 4 bits are always cleared.
    
    Signed-off-by: Sonic Zhang <sonic.zhang at analog.com>
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 81b79c213d0200fdd16951a9fb18748fd511d810
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 15 06:22:08 2009 -0400

    Blackfin: abstract irq14 lowering in do_irq
    
    Split out the optional IRQ14 lowering code to further simplify the
    asm_do_IRQ() function and keep the ifdef nest under control.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 6f10fdabdce356aac3c948e659f39b6f1e2f7382
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 15 06:18:38 2009 -0400

    Blackfin: simplify irq stack overflow checking
    
    Take a page from x86 and abstract the stack checking out of the
    asm_do_IRQ() function so that the result is easier to digest.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 46f288a0f983401ebadb918751d342cbf819cde5
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 15 06:13:58 2009 -0400

    Blackfin: only build show_interrupts() when procfs is enabled
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 26579216f3cdf1ae05f0af8412b444870a167510
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 15 06:10:03 2009 -0400

    Blackfin: redo handling of bad irqs
    
    With the common IRQ code initializing much more of the irq_desc state, we
    can't blindly initialize it ourselves to the local bad_irq state.  If we
    do, we end up wrongly clobbering many fields.  So punt most of the bad irq
    code as the common layers will handle the default state, and simply call
    handle_bad_irq() directly when the IRQ we are processing is invalid.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit a200ad22bb15fe01cf222fa631687876baad5e01
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Sat Jun 13 06:37:14 2009 -0400

    Blackfin: update anomaly lists
    
    Update anomaly headers to match latest released anomaly sheets.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 4d5e6fd42c137dad3b1aced073c6fcb494a8e507
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Sat Jun 13 06:34:49 2009 -0400

    Blackfin: bf533-ezkit: add resources for FISP devices
    
    The BF533-EZKIT has two Flash In-System Programming devices hooked up to
    the async memory bus, so add resources for the primary flashes and the
    SRAMs on the devices.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 2780cd64346782a6116e316c559d70a7655ab6e5
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Thu Jun 11 09:22:02 2009 -0400

    Blackfin: bf518f-ezbrd: update DSA resources
    
    The common DSA code changed structure layout, so update the BF518F-EZBRD
    resources accordingly.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit e56e03b0cfeb997a4be9ad874c193824364942e0
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Sun Jun 7 16:31:52 2009 -0400

    Blackfin: unify memory region checks between kgdb and traps
    
    The kgdb (in multiple places) and traps code developed pretty much
    identical checks for how to access different regions of the Blackfin
    memory map, but each wasn't 100%, so unify them to avoid duplication,
    bitrot, and bugs with edge cases.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>

commit 4839641333d4593bfc4fb29aa3af10d36f607d5b
Author: David Woodhouse <David.Woodhouse at intel.com>
Date:   Tue Jun 23 01:34:19 2009 +0100

    jffs2: fix another potential leak on error path in scan.c
    
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>

commit ac1b7c378ef26fba6694d5f118fe7fc16fee2fe2
Merge: 9e268beb92ee3a853b3946e84b10358207e2085f c90173f0907486fe4010c2a8cef534e2473db43f
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 16:56:22 2009 -0700

    Merge git://git.infradead.org/mtd-2.6
    
    * git://git.infradead.org/mtd-2.6: (63 commits)
      mtd: OneNAND: Allow setting of boundary information when built as module
      jffs2: leaking jffs2_summary in function jffs2_scan_medium
      mtd: nand: Fix memory leak on txx9ndfmc probe failure.
      mtd: orion_nand: use burst reads with double word accesses
      mtd/nand: s3c6400 support for s3c2410 driver
      [MTD] [NAND] S3C2410: Use DIV_ROUND_UP
      [MTD] [NAND] S3C2410: Deal with unaligned lengths in S3C2440 buffer read/write
      [MTD] [NAND] S3C2410: Allow the machine code to get the BBT table from NAND
      [MTD] [NAND] S3C2410: Added a kerneldoc for s3c2410_nand_set
      mtd: physmap_of: Add multiple regions and concatenation support
      mtd: nand: max_retries off by one in mxc_nand
      mtd: nand: s3c2410_nand_setrate(): use correct macros for 2412/2440
      mtd: onenand: add bbt_wait & unlock_all as replaceable for some platform
      mtd: Flex-OneNAND support
      mtd: nand: add OMAP2/OMAP3 NAND driver
      mtd: maps: Blackfin async: fix memory leaks in probe/remove funcs
      mtd: uclinux: mark local stuff static
      mtd: uclinux: do not allow to be built as a module
      mtd: uclinux: allow systems to override map addr/size
      mtd: blackfin NFC: fix hang when using NAND on BF527-EZKITs
      ...

commit 9e268beb92ee3a853b3946e84b10358207e2085f
Merge: 2e8b5a09ebf1f98f02c1988a48415e89d4c25168 9ccdac3662dbf3c75e8f8851a214bdf7d365a4bd
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 14:56:13 2009 -0700

    Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm
    
    * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (49 commits)
      [ARM] idle: clean up pm_idle calling, obey hlt_counter
      [ARM] S3C: Fix gpio-config off-by-one bug
      [ARM] S3C64XX: add to_irq() support for EINT() GPIO
      [ARM] S3C64XX: clock.c: fix typo in usb-host clock ctrlbit
      [ARM] S3C64XX: fix HCLK gate defines
      [ARM] Update mach-types
      [ARM] wire up rt_tgsigqueueinfo and perf_counter_open
      OMAP2 clock/powerdomain: off by 1 error in loop timeout comparisons
      OMAP3 SDRC: set FIXEDDELAY when disabling SDRC DLL
      OMAP3: Add support for DPLL3 divisor values higher than 2
      OMAP3 SRAM: convert SRAM code to use macros rather than magic numbers
      OMAP3 SRAM: add more comments on the SRAM code
      OMAP3 clock/SDRC: program SDRC_MR register during SDRC clock change
      OMAP3 clock: add a short delay when lowering CORE clk rate
      OMAP3 clock: initialize SDRC timings at kernel start
      OMAP3 clock: remove wait for DPLL3 M2 clock to stabilize
      [ARM] Add old Feroceon support to compressed/head.S
      [ARM] 5559/1: Limit the stack unwinding caused by a kthread exit
      [ARM] 5558/1: Add extra checks to ARM unwinder to avoid tracing corrupt stacks
      [ARM] 5557/1: Discard some ARM.ex*.*exit.text sections when !HOTPLUG or !HOTPLUG_CPU
      ...

commit 9ccdac3662dbf3c75e8f8851a214bdf7d365a4bd
Author: Russell King <rmk at dyn-67.arm.linux.org.uk>
Date:   Mon Jun 22 22:34:55 2009 +0100

    [ARM] idle: clean up pm_idle calling, obey hlt_counter
    
    pm_idle is used by infrastructure (eg, cpuidle) which expects architectures
    to call it in a certain way.  Arrange for ARM to follow x86's lead on this
    and call pm_idle() with interrupts already disabled.  However, we expect
    pm_idle() to enable interrupts before it returns.
    
    Also, OMAP wants to be able to disable hlt-ing, so allow hlt_counter to
    prevent all calls to pm_idle.
    
    Signed-off-by: Russell King <rmk+kernel at arm.linux.org.uk>

commit d246ab307d1d003c80fe279897dea22bf52b6e41
Author: Tao Ma <tao.ma at oracle.com>
Date:   Thu Jun 18 13:12:06 2009 +0800

    ocfs2/trivial: Wrap ocfs2_sysfile_cluster_lock_key within define.
    
    Actually ocfs2_sysfile_cluster_lock_key is only used if we enable
    CONFIG_DEBUG_LOCK_ALLOC. Wrap it so that we can avoid a building
    warning.
    fs/ocfs2/sysfile.c:53: warning: ‘ocfs2_sysfile_cluster_lock_key’
    defined but not used
    
    Signed-off-by: Tao Ma <tao.ma at oracle.com>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit cb25797d451dc774d9dbc402a65f16a0e32199fe
Author: Jan Kara <jack at suse.cz>
Date:   Thu Jun 4 15:26:50 2009 +0200

    ocfs2: Add lockdep annotations
    
    Add lockdep support to OCFS2. The support also covers all of the cluster
    locks except for open locks, journal locks, and local quotafile locks. These
    are special because they are acquired for a node, not for a particular process
    and lockdep cannot deal with such type of locking.
    
    Signed-off-by: Jan Kara <jack at suse.cz>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit 9a7aa12f3911853a3574d47d567b81a2a5df7208
Author: Jan Kara <jack at suse.cz>
Date:   Thu Jun 4 15:26:49 2009 +0200

    vfs: Set special lockdep map for dirs only if not set by fs
    
    Some filesystems need to set lockdep map for i_mutex differently for
    different directories. For example OCFS2 has system directories (for
    orphan inode tracking and for gathering all system files like journal
    or quota files into a single place) which have different locking
    locking rules than standard directories. For a filesystem setting
    lockdep map is naturaly done when the inode is read but we have to
    modify unlock_new_inode() not to overwrite the lockdep map the filesystem
    has set.
    
    Acked-by: peterz at infradead.org
    CC: mingo at redhat.com
    Signed-off-by: Jan Kara <jack at suse.cz>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit df152c241df9e9d2b9a65d37bd02961abe7f591a
Author: Sunil Mushran <sunil.mushran at oracle.com>
Date:   Mon Jun 22 11:40:07 2009 -0700

    ocfs2: Disable orphan scanning for local and hard-ro mounts
    
    Local and Hard-RO mounts do not need orphan scanning.
    
    Signed-off-by: Sunil Mushran <sunil.mushran at oracle.com>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit 3211949f8998dde71d9fe2e063de045ece5e0473
Author: Sunil Mushran <sunil.mushran at oracle.com>
Date:   Fri Jun 19 16:53:18 2009 -0700

    ocfs2: Do not initialize lvb in ocfs2_orphan_scan_lock_res_init()
    
    We don't access the LVB in our ocfs2_*_lock_res_init() functions.
    
    Since the LVB can become invalid during some cluster recovery
    operations, the dlmglue must be able to handle an uninitialized
    LVB.
    
    For the orphan scan lock, we initialized an uninitialzed LVB with our
    scan sequence number plus one.  This starts a normal orphan scan
    cycle.
    
    Signed-off-by: Sunil Mushran <sunil.mushran at oracle.com>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit 692684e19e317a374c18e70a44d6413e51f71c11
Author: Sunil Mushran <sunil.mushran at oracle.com>
Date:   Fri Jun 19 16:53:17 2009 -0700

    ocfs2: Stop orphan scan as early as possible during umount
    
    Currently if the orphan scan fires a tick before the user issues the umount,
    the umount will wait for the queued orphan scan tasks to complete.
    
    This patch makes the umount stop the orphan scan as early as possible so as
    to reduce the probability of the queued tasks slowing down the umount.
    
    Signed-off-by: Sunil Mushran <sunil.mushran at oracle.com>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit c3d38840abaa45c1c5a5fabbb8ffc9a0d1a764d1
Author: Sunil Mushran <sunil.mushran at oracle.com>
Date:   Fri Jun 19 14:45:55 2009 -0700

    ocfs2: Fix ocfs2_osb_dump()
    
    Skip printing information that is not valid for local mounts.
    
    Signed-off-by: Sunil Mushran <sunil.mushran at oracle.com>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit 94e41ecfe0f202df948fdbb19a53308a58cf2184
Author: Sunil Mushran <sunil.mushran at oracle.com>
Date:   Fri Jun 19 14:45:54 2009 -0700

    ocfs2: Pin journal head before accessing jh->b_committed_data
    
    This patch adds jbd_lock_bh_state() and jbd_unlock_bh_state() around accessses
    to jh->b_committed_data.
    
    Fixes oss bugzilla#1131
    http://oss.oracle.com/bugzilla/show_bug.cgi?id=1131
    
    Signed-off-by: Sunil Mushran <sunil.mushran at oracle.com>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit 1962f39abbb2d5643a7d59169422661a2d58793d
Author: Tao Ma <tao.ma at oracle.com>
Date:   Fri Jun 19 15:36:52 2009 +0800

    ocfs2: Update atime in splice read if necessary.
    
    We should call ocfs2_inode_lock_atime instead of ocfs2_inode_lock
    in ocfs2_file_splice_read like we do in ocfs2_file_aio_read so
    that we can update atime in splice read if necessary.
    
    Signed-off-by: Tao Ma <tao.ma at oracle.com>
    Signed-off-by: Joel Becker <joel.becker at oracle.com>

commit 1c520dfbf391e1617ef61553f815b8006a066c44
Author: Joel Becker <joel.becker at oracle.com>
Date:   Fri Jun 19 15:14:13 2009 -0700

    ocfs2: Provide the ocfs2_dlm_lvb_valid() stack API.
    
    The Lock Value Block (LVB) of a DLM lock can be lost when nodes die and
    the DLM cannot reconstruct its state.  Clients of the DLM need to know
    this.
    
    ocfs2's internal DLM, o2dlm, explicitly zeroes out the LVB when it loses
    track of the state.  This is not a standard behavior, but ocfs2 has
    always relied on it.  Thus, an o2dlm LVB is always "valid".
    
    ocfs2 now supports both o2dlm and fs/dlm via the stack glue.  When
    fs/dlm loses track of an LVBs state, it sets a flag
    (DLM_SBF_VALNOTVALID) on the Lock Status Block (LKSB).  The contents of
    the LVB may be garbage or merely stale.
    
    ocfs2 doesn't want to try to guess at the validity of the stale LVB.
    Instead, it should be checking the VALNOTVALID flag.  As this is the
    'standard' way of treating LVBs, we will promote this behavior.
    
    We add a stack glue API ocfs2_dlm_lvb_valid().  It returns non-zero when
    the LVB is valid.  o2dlm will always return valid, while fs/dlm will
    check VALNOTVALID.
    
    Signed-off-by: Joel Becker <joel.becker at oracle.com>
    Acked-by: Mark Fasheh <mfasheh at suse.com>

commit 2e8b5a09ebf1f98f02c1988a48415e89d4c25168
Author: David Howells <dhowells at redhat.com>
Date:   Mon Jun 22 15:32:36 2009 +0100

    MN10300: Fix the vmlinux ldscript
    
    Fix the MN10300 vmlinux ldscript.  It needs to use various macros from
    asm-generic/vmlinux.lds.h to correctly include all that it needs to.
    
    Signed-off-by: David Howells <dhowells at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit eadfe21989d728b5af936487627b4e288bd805f8
Author: David Howells <dhowells at redhat.com>
Date:   Mon Jun 22 15:32:31 2009 +0100

    LDSCRIPT: Name INIT_RAM_FS consistently
    
    In asm-generic/vmlinux.lds.h, name INIT_RAM_FS consistently, no matter the
    setting of CONFIG_BLK_DEV_INITRD.  This corrects:
    
    	commit ef53dae8658cf0e93d380983824a661067948d87
    	Author: Sam Ravnborg <sam at ravnborg.org>
    	Date:   Sun Jun 7 20:46:37 2009 +0200
    	Subject: Improve vmlinux.lds.h support for arch specific linker scripts
    
    Signed-off-by: David Howells <dhowells at redhat.com>
    Acked-by: Sam Ravnborg <sam at ravnborg.org>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 7e0338c0de18c50f09aea1fbef45110cf7d64a3c
Merge: df36b439c5fedefe013d4449cb6a50d15e2f4d70 47fcb03fefee2501e79176932a4184fc24d6f8ec
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 12:55:50 2009 -0700

    Merge branch 'for-2.6.31' of git://fieldses.org/git/linux-nfsd
    
    * 'for-2.6.31' of git://fieldses.org/git/linux-nfsd: (60 commits)
      SUNRPC: Fix the TCP server's send buffer accounting
      nfsd41: Backchannel: minorversion support for the back channel
      nfsd41: Backchannel: cleanup nfs4.0 callback encode routines
      nfsd41: Remove ip address collision detection case
      nfsd: optimise the starting of zero threads when none are running.
      nfsd: don't take nfsd_mutex twice when setting number of threads.
      nfsd41: sanity check client drc maxreqs
      nfsd41: move channel attributes from nfsd4_session to a nfsd4_channel_attr struct
      NFS: kill off complicated macro 'PROC'
      sunrpc: potential memory leak in function rdma_read_xdr
      nfsd: minor nfsd_vfs_write cleanup
      nfsd: Pull write-gathering code out of nfsd_vfs_write
      nfsd: track last inode only in use_wgather case
      sunrpc: align cache_clean work's timer
      nfsd: Use write gathering only with NFSv2
      NFSv4: kill off complicated macro 'PROC'
      NFSv4: do exact check about attribute specified
      knfsd: remove unreported filehandle stats counters
      knfsd: fix reply cache memory corruption
      knfsd: reply cache cleanups
      ...

commit df36b439c5fedefe013d4449cb6a50d15e2f4d70
Merge: a9b011f5ac57cbaedb32a8149f3d39d7b2c1f0e0 e9f029855865e917821ef6034b31e340a4cfc815
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 12:53:06 2009 -0700

    Merge branch 'for-2.6.31' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6
    
    * 'for-2.6.31' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (128 commits)
      nfs41: sunrpc: xprt_alloc_bc_request() should not use spin_lock_bh()
      nfs41: Move initialization of nfs4_opendata seq_res to nfs4_init_opendata_res
      nfs: remove unnecessary NFS_INO_INVALID_ACL checks
      NFS: More "sloppy" parsing problems
      NFS: Invalid mount option values should always fail, even with "sloppy"
      NFS: Remove unused XDR decoder functions
      NFS: Update MNT and MNT3 reply decoding functions
      NFS: add XDR decoder for mountd version 3 auth-flavor lists
      NFS: add new file handle decoders to in-kernel mountd client
      NFS: Add separate mountd status code decoders for each mountd version
      NFS: remove unused function in fs/nfs/mount_clnt.c
      NFS: Use xdr_stream-based XDR encoder for MNT's dirpath argument
      NFS: Clean up MNT program definitions
      lockd: Don't bother with RPC ping for NSM upcalls
      lockd: Update NSM state from SM_MON replies
      NFS: Fix false error return from nfs_callback_up() if ipv6.ko is not available
      NFS: Return error code from nfs_callback_up() to user space
      NFS: Do not display the setting of the "intr" mount option
      NFS: add support for splice writes
      nfs41: Backchannel: CB_SEQUENCE validation
      ...

commit a9b011f5ac57cbaedb32a8149f3d39d7b2c1f0e0
Merge: b5bdd43876e475724c662f99206f0349c67e33e6 da6330fccc251db73945ee3eb6248985cf2574de
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 12:51:28 2009 -0700

    Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
    
    * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (22 commits)
      [S390] Update default configuration.
      [S390] kprobes: defer setting of ctlblk state
      [S390] Enable tick based perf_counter on s390.
      [S390] dasd: fix refcounting in dasd_change_state
      [S390] lockless idle time accounting
      [S390] driver_data access
      [S390] pm: fix build error for !SMP
      [S390] dasd_pm: fix stop flag handling
      [S390] ap/zcrypt: Suspend/Resume ap bus and zcrypt
      [S390] qdio: Sanitize do_QDIO sanity checks
      [S390] qdio: leave inbound SBALs primed
      [S390] qdio: merge AI tasklet into interrupt handler
      [S390] qdio: extract all primed SBALs at once
      [S390] qdio: fix check for running under z/VM
      [S390] qdio: move adapter interrupt tasklet code
      [S390] Use del_timer instead of del_timer_sync
      [S390] s390: remove DEBUG_MALLOC
      [S390] vt220 console: convert from bootmem to slab
      [S390] sclp console: convert from bootmem to slab
      [S390] 3270 console: convert from bootmem to slab
      ...

commit b5bdd43876e475724c662f99206f0349c67e33e6
Merge: f39cf0b783b3f402ddf1eb6a09234b5bfe34bb2a dc1972d02747d2170fb1d78d114801f5ecb27506
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 12:44:14 2009 -0700

    Merge branch 'next-i2c' of git://aeryn.fluff.org.uk/bjdooks/linux
    
    * 'next-i2c' of git://aeryn.fluff.org.uk/bjdooks/linux:
      i2c: Fix stuck transaction on cpm-i2c driver
      i2c-omap: Fix build breaking typo cpu_is_omap_2430

commit f39cf0b783b3f402ddf1eb6a09234b5bfe34bb2a
Merge: 59ef7a83f1127038a433464597df02e2dc9540e7 aafd1255d08fb26cab87d1b28ff35a15bdb2ed68
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 12:38:31 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/czankel/xtensa-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/czankel/xtensa-2.6:
      xtensa: enable m41t80 driver in s6105_defconfig
      xtensa: add m41t62 rtc to s6105 platform
      xtensa: enable s6gmac in s6105_defconfig
      xtensa: s6105 specific configuration for s6gmac
      s6gmac: xtensa s6000 on-chip ethernet driver
      xtensa: support s6000 gpio irqs and alternate function selection
      xtensa: s6000 dma engine support
      xtensa: allow variant to initialize own irq chips
      xtensa: cache inquiry and unaligned cache handling functions

commit 59ef7a83f1127038a433464597df02e2dc9540e7
Merge: 5165aece0efac6574fc3e32b6f1c2a964820d1c6 2af5066f664cb011cf17d2e4414491fe24597e07
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 11:59:51 2009 -0700

    Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6
    
    * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (74 commits)
      PCI: make msi_free_irqs() to use msix_mask_irq() instead of open coded write
      PCI: Fix the NIU MSI-X problem in a better way
      PCI ASPM: remove get_root_port_link
      PCI ASPM: cleanup pcie_aspm_sanity_check
      PCI ASPM: remove has_switch field
      PCI ASPM: cleanup calc_Lx_latency
      PCI ASPM: cleanup pcie_aspm_get_cap_device
      PCI ASPM: cleanup clkpm checks
      PCI ASPM: cleanup __pcie_aspm_check_state_one
      PCI ASPM: cleanup initialization
      PCI ASPM: cleanup change input argument of aspm functions
      PCI ASPM: cleanup misc in struct pcie_link_state
      PCI ASPM: cleanup clkpm state in struct pcie_link_state
      PCI ASPM: cleanup latency field in struct pcie_link_state
      PCI ASPM: cleanup aspm state field in struct pcie_link_state
      PCI ASPM: fix typo in struct pcie_link_state
      PCI: drivers/pci/slot.c should depend on CONFIG_SYSFS
      PCI: remove redundant __msi_set_enable()
      PCI PM: consistently use type bool for wake enable variable
      x86/ACPI: Correct maximum allowed _CRS returned resources and warn if exceeded
      ...

commit 5165aece0efac6574fc3e32b6f1c2a964820d1c6
Merge: e38be994b9cad09b0d8d78a1875d7e8a2e115d29 f6b24caaf933a466397915a08e30e885a32f905a
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 11:57:09 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (43 commits)
      via-velocity: Fix velocity driver unmapping incorrect size.
      mlx4_en: Remove redundant refill code on RX
      mlx4_en: Removed redundant check on lso header size
      mlx4_en: Cancel port_up check in transmit function
      mlx4_en: using stop/start_all_queues
      mlx4_en: Removed redundant skb->len check
      mlx4_en: Counting all the dropped packets on the TX side
      usbnet cdc_subset: fix issues talking to PXA gadgets
      Net: qla3xxx, remove sleeping in atomic
      ipv4: fix NULL pointer + success return in route lookup path
      isdn: clean up documentation index
      cfg80211: validate station settings
      cfg80211: allow setting station parameters in mesh
      cfg80211: allow adding/deleting stations on mesh
      ath5k: fix beacon_int handling
      MAINTAINERS: Fix Atheros pattern paths
      ath9k: restore PS mode, before we put the chip into FULL SLEEP state.
      ath9k: wait for beacon frame along with CAB
      acer-wmi: fix rfkill conversion
      ath5k: avoid PCI FATAL interrupts by restoring RETRY_TIMEOUT disabling
      ...

commit e38be994b9cad09b0d8d78a1875d7e8a2e115d29
Author: Hitoshi Mitake <mitake at dcl.info.waseda.ac.jp>
Date:   Mon Jun 22 11:11:20 2009 +0900

    Making fs/minix/minix.h double including safe
    
    I happened to find that fs/minix/minix.h doesn't guard double include.
    
    Yes, I know this never cause something destructive because this is
    self-evidence that no source file includes minix.h twice, but I think
    fixing this is better than disregarding it.
    
    Signed-off-by: Hitoshi Mitake <mitake at dcl.info.waseda.ac.jp>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 44da59e4006fbf7c4cc9b54485a37a40726091ee
Author: Alan Cox <alan at linux.intel.com>
Date:   Mon Jun 22 18:43:18 2009 +0100

    msm: fixups to match current code
    
    The tty layer is now a bit more fussy about reporting the right baud rate
    back. Make the msm driver match the current state of affairs.
    
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 04896a77a97b87e1611dedd61be88264ef4ac96c
Author: Robert Love <rlove at google.com>
Date:   Mon Jun 22 18:43:11 2009 +0100

    msm_serial: serial driver for MSM7K onboard serial peripheral.
    
    Signed-off-by: Brian Swetland <swetland at google.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 2421c48bd74debb537de94c1bd15cbabab272aa1
Author: Richard Röjfors <richard.rojfors.ext at mocean-labs.com>
Date:   Mon Jun 22 18:43:03 2009 +0100

    timbuart: Fix for tx_empty
    
    Hardware updated to support TX FIFO empty.
    
    Signed-off-by: Richard Röjfors <richard.rojfors.ext at mocean-labs.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit be10eb7589337e5defbe214dae038a53dd21add8
Author: Paul Fulghum <paulkf at microgate.com>
Date:   Mon Jun 22 18:42:56 2009 +0100

    tty: n_hdlc add buffer flushing
    
    Add flush_buffer tty callback to flush rx buffers.
    Add TCFLSH ioctl processing to flush tx buffers.
    Increase default tx buffers from 1 to 3.
    Remove unneeded flush_buffer call in open callback.
    Remove vendor specific CVS version string.
    
    Signed-off-by: Paul Fulghum <paulkf at microgate.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 90ceb9644d7cdec00a90255473359a7e2bb537a9
Author: Peter Korsgaard <jacmet at sunsite.dk>
Date:   Mon Jun 22 18:42:49 2009 +0100

    serial: samsung.c: mark s3c24xx_serial_remove as __devexit
    
    Mark the remove function as __devexit so it gets eliminated in
    CONFIG_HOTPLUG=n builds.  Saves ~100 bytes.
    
    Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
    Acked-by: Ben Dooks <ben-linux at fluff.org>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 099d5270897606473d63091afcc63f53ee1894bc
Author: Kevin Hilman <khilman at deeprootsystems.com>
Date:   Mon Jun 22 18:42:42 2009 +0100

    serial@ add OMAP wakeup-enable register
    
    Add the wakeup enable register to the list of OMAP-specific UART
    registers.  This is to support forthcoming OMAP PM enhancements which
    use the wakeup feature of the OMAP's 8250-based UART.
    
    Signed-off-by: Kevin Hilman <khilman at deeprootsystems.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 94362fd7fbad653c9517efa4aa7cd8fdadd527b1
Author: Alan Cox <alan at linux.intel.com>
Date:   Mon Jun 22 18:42:36 2009 +0100

    tty: fix some bogns in the serqt_usb2 driver
    
    Remove the replicated urban legends from the comments and fix a couple of
    other silly calls
    
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit a6540f731d506d9e82444cf0020e716613d4c46c
Author: Alan Cox <alan at linux.intel.com>
Date:   Mon Jun 22 18:42:29 2009 +0100

    ppp: Fix throttling bugs
    
    The ppp layer goes around calling the unthrottle method from non sleeping
    paths. This isn't safe because the unthrottle methods in the tty layer need
    to be able to sleep (consider a USB dongle).
    
    Until now this didn't show up because the ppp layer never actually throttled
    a port so the unthrottle was always a no-op. Currently it's a mutex taking
    path so warnings are spewed if the unthrottle occurs via certain paths.
    
    Fix this by removing the unneccessary unthrottle calls.
    
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit a115902f67ef51fbbe83e214fb761aaa9734c1ce
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Mon Jun 22 18:42:18 2009 +0100

    vt_ioctl: fix lock imbalance
    
    Don't return from switch/case directly in vt_ioctl. Set ret and break
    instead so that we unlock BKL.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Cc: stable at kernel.org
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 69ae59d7d8df14413cf0a97b3e372d7dc8352563
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Mon Jun 22 18:42:10 2009 +0100

    pcmcia/cm4000: fix lock imbalance
    
    Don't return from switch/case, break instead, so that we unlock BKL.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Cc: stable at kernel.org
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit eca41044268887838fa122aa24475df8f23d614c
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Mon Jun 22 18:42:03 2009 +0100

    n_r3964: fix lock imbalance
    
    There is omitted BKunL in r3964_read.
    
    Centralize the paths to one point with one unlock.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Cc: stable at kernel.org
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 52e3632ea603ef92757d5d0dedcd9fc8643445e3
Author: Roel Kluin <roel.kluin at gmail.com>
Date:   Mon Jun 22 18:41:56 2009 +0100

    serial: fix off by one errors
    
    In zs_console_putchar() occurs:
    
    	if (zs_transmit_drain(zport, irq))
    		write_zsdata(zport, ch);
    
    However if in zs_transmit_drain() no empty Tx Buffer occurs, limit reaches
    -1 => true, and the write still occurs.
    
    This patch changes postfix to prefix decrements in this and similar
    functions to prevent similar mistakes in the future.  This decreases the
    iterations with one but the chosen loop count was arbitrary anyway.
    
    In sunhv limit reaches -1, not 0, so the test is off by one.
    
    Signed-off-by: Roel Kluin <roel.kluin at gmail.com>
    Acked-by: David S. Miller <davem at davemloft.net>
    Acked-by: Maciej W. Rozycki <macro at linux-mips.org>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 607c268ef9a4675287e77f732071e426e62c2d86
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 22 18:41:47 2009 +0100

    serial: bfin_5xx: fix building as module when early printk is enabled
    
    Since early printk only makes sense/works when the serial driver is built
    into the kernel, disable the option for this driver when it is going to be
    built as a module.  Otherwise we get build failures due to the ifdef
    handling.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 9c529a3d76dffae943868ebad07b042d15764712
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 22 18:37:24 2009 +0100

    serial: bfin_5xx: add missing spin_lock init
    
    The Blackfin serial driver never initialized the spin_lock that is part of
    the serial core structure, but we never noticed because spin_lock's are
    rarely enabled on UP systems.  Yeah lockdep and friends.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 56578abfd16a1a7554f64000d5fc0a377d4dda6a
Author: Mike Frysinger <vapier at gentoo.org>
Date:   Mon Jun 22 18:31:10 2009 +0100

    bfin_jtag_comm: clean up printk usage
    
    The original patch garned some feedback and a v2 was posted, but that
    version seems to have been missed when merging the driver.
    
    At any rate, this cleans up the printk usage as suggested by Jiri Slaby.
    
    Signed-off-by: Mike Frysinger <vapier at gentoo.org>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit dfa7c4d869b7d3d37b70f1de856f2901b6ebfcf0
Author: FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp>
Date:   Mon Jun 22 16:54:27 2009 +0100

    parport_pc: set properly the dma_mask for parport_pc device
    
    parport_pc_probe_port() creates the own 'parport_pc' device if the
    device argument is NULL. Then parport_pc_probe_port() doesn't
    initialize the dma_mask and coherent_dma_mask of the device and calls
    dma_alloc_coherent with it. dma_alloc_coherent fails because
    dma_alloc_coherent() doesn't accept the uninitialized dma_mask:
    
    http://lkml.org/lkml/2009/6/16/150
    
    Long ago, X86_32 and X86_64 had the own dma_alloc_coherent
    implementations; X86_32 accepted a device having dma_mask that is not
    initialized however X86_64 didn't. When we merged them, we chose to
    prohibit a device having dma_mask that is not initialized. I think
    that it's good to require drivers to set up dma_mask (and
    coherent_dma_mask) properly if the drivers want DMA.
    
    Signed-off-by: FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp>
    Reported-by: Malcom Blaney <malcolm.blaney at maptek.com.au>
    Tested-by: Malcom Blaney <malcolm.blaney at maptek.com.au>
    Cc: stable at kernel.org
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Acked-by: Jeff Garzik <jgarzik at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit e2434dc1c19412639dd047a4d4eff8ed0e5d0d50
Author: Jens Rottmann <JRottmann at LiPPERTEmbedded.de>
Date:   Mon Jun 22 16:51:49 2009 +0100

    parport_pc: after superio probing restore original register values
    
    CONFIG_PARPORT_PC_SUPERIO probes for various superio chips by writing
    byte sequences to a set of different potential I/O ranges.  But the
    probed ranges are not exclusive to parallel ports.  Some of our boards
    just happen to have a watchdog in one of them.  Took us almost a week
    to figure out why some distros reboot without warning after running
    flawlessly for 3 hours.  For exactly 170 = 0xAA minutes, that is ...
    
    Fixed by restoring original values after probing.  Also fixed too small
    request_region() in detect_and_report_it87().
    
    Signed-off-by: Jens Rottmann <JRottmann at LiPPERTEmbedded.de>
    Signed-off-by: Alan Cox <alan at linux.intel.com>
    Cc: <stable at kernel.org>
    Acked-by: Jeff Garzik <jgarzik at redhat.com>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 752a4787511bf7515f99609ff4ae52341b5bfcde
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Mon Jun 22 11:24:43 2009 -0700

    Revert "char: moxa, prevent opening unavailable ports"
    
    This reverts commit a90b037583d5f1ae3e54e9c687c79df82d1d34a4, which
    already got fixed as commit f0e8527726b9e56649b9eafde3bc0fbc4dd2dd47:
    the same patch (trivial differences) got applied twice.
    
    Requested-by: Alan Cox <alan at lxorguk.ukuu.org.uk>
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit c0c22dbfa8ba3c5045eeb9c76d2822ffc44fefc3
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Mon Jun 22 20:47:26 2009 +0530

    perf_counter tools: Set alias for page-faults
    
    "faults" should be alias for "page-faults"
    
    Also fixed alignment and 80 characters issue
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245683846.12092.1.camel at localhost.localdomain>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 3f67f6693c82f1cb8edb233f9bd10fa06d27a193
Merge: 12bc738596ffe4e7f566e13856a0d37ba229b539 6423f9ea8035138d70bae1a278d3b57b743f8b3e
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 17:03:56 2009 +0200

    Merge branch 'topic/seq-midi-fix' into for-linus
    
    * topic/seq-midi-fix:
      sound: seq_midi_event: fix decoding of (N)RPN events

commit 12bc738596ffe4e7f566e13856a0d37ba229b539
Merge: b61eaa924c320821469caa0cd2bf89e7a1ec8bd0 8bd9bca3c1a214350e2f2f1e2fd493ed24c06f7e
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 17:03:54 2009 +0200

    Merge branch 'topic/pcm-jiffies-check' into for-linus
    
    * topic/pcm-jiffies-check:
      sound: fix check for return value in snd_pcm_hw_refine

commit b61eaa924c320821469caa0cd2bf89e7a1ec8bd0
Merge: 11a93fd9402ce47e4dc652837b1374ecdb750aba 115551d98e4c05bb982bd940f08a489fa9b0a4a1
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 17:03:52 2009 +0200

    Merge branch 'topic/misc' into for-linus
    
    * topic/misc:
      ALSA: via82xx: add option to disable 500ms delay in snd_via82xx_codec_wait

commit 11a93fd9402ce47e4dc652837b1374ecdb750aba
Merge: 366890df46c2fd9492c04fe3a8775447b7b053e4 8c8145b8734028f6deb487f7d64748da4c6c39ac
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 17:03:48 2009 +0200

    Merge branch 'topic/hda' into for-linus
    
    * topic/hda:
      ALSA: hda - Make jack-plug notification selectable
      ALSA: hda - Add digital-mic support to ALC262 auto model
      ALSA: hda - Fix check of input source type for realtek codecs
      ALSA: hda - Add quirk for Sony VAIO Z21MN
      ALSA: hda - Get back Input Source for ALC262 toshiba-s06 model
      ALSA: hda - Fix unsigned comparison in patch_sigmatel.c

commit 366890df46c2fd9492c04fe3a8775447b7b053e4
Merge: 70052413e7b432ccef8ee82340fc01831a1a290c 29959a09cc1aabd2d5f4f03afc0305de6bd29248
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 17:03:44 2009 +0200

    Merge branch 'topic/ctxfi' into for-linus
    
    * topic/ctxfi:
      ALSA: ctxfi - Add PM support
      ALSA: ctxfi - Allow unknown PCI SSIDs

commit 70052413e7b432ccef8ee82340fc01831a1a290c
Merge: 47166281d2dc9daf7da9a5ad88491ae94366e852 92a6ad34282f8403c4eb83025a2790af86cdb6bd
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 17:03:39 2009 +0200

    Merge branch 'topic/asoc' into for-linus
    
    * topic/asoc:
      ASoC: Blackfin: update the bf5xx_i2s_resume parameters
      ASoC: Blackfin: keep better track of SPORT configuration state

commit 520f2c346af463fa00924b236e092da482b344cc
Author: Peter Zijlstra <peterz at infradead.org>
Date:   Mon Jun 22 16:52:51 2009 +0200

    perf report: Output more symbol related debug data
    
    Print more symbol relocation related info under -vv.
    
    Signed-off-by: Peter Zijlstra <peterz at infradead.org>
    Cc: Mike Galbraith <efault at gmx.de>
    Cc: Paul Mackerras <paulus at samba.org>
    Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 8c8145b8734028f6deb487f7d64748da4c6c39ac
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 17:00:38 2009 +0200

    ALSA: hda - Make jack-plug notification selectable
    
    Make the jack-plug notification via input layer selectable via Kconfig.
    This is often unnecessary, and the similr function will be provided
    using the ALSA control API in near future anyway.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 129dd98194747a3b8ac1ff876d8d1f2440660d01
Author: Jiri Slaby <jirislaby at gmail.com>
Date:   Sun Jun 21 23:59:01 2009 +0200

    fusion: mptsas, fix lock imbalance
    
    Fix two typos in mptsas_not_responding_devices. It was mutex_lock instead
    of unlock.
    
    Signed-off-by: Jiri Slaby <jirislaby at gmail.com>
    Acked-by: "Desai, Kashyap" <Kashyap.Desai at lsi.com>
    Signed-off-by: James Bottomley <James.Bottomley at HansenPartnership.com>

commit 915166d96f5cab90b6f39f37da1139e5eab516b2
Merge: 3eadd3b21cec340dacdc24dd1f9735344290ca62 49fb88af23f3344ba53d6dbe34ac0b1426d81006
Author: Russell King <rmk at dyn-67.arm.linux.org.uk>
Date:   Mon Jun 22 14:31:57 2009 +0100

    Merge branch 'next-s3c' of git://aeryn.fluff.org.uk/bjdooks/linux into devel

commit 49fb88af23f3344ba53d6dbe34ac0b1426d81006
Author: Marek Szyprowski <m.szyprowski at samsung.com>
Date:   Thu Jun 18 13:30:16 2009 +0200

    [ARM] S3C: Fix gpio-config off-by-one bug
    
    Fix gpio-config off-by-one bug. Without this patch, touching GPA0 pin on
    S3C64XX platform causes kernel oops.
    
    Reviewed-by: Kyungmin Park <kyungmin.park at samsung.com>
    Signed-off-by: Marek Szyprowski <m.szyprowski at samsung.com>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 0b495737f311cb8eb5e66404309ea16e4d7ded8a
Author: Marek Szyprowski <m.szyprowski at samsung.com>
Date:   Thu Jun 18 13:30:27 2009 +0200

    [ARM] S3C64XX: add to_irq() support for EINT() GPIO
    N group
    
    Add to_irq() function to onvert gpio to irq for external interrupt
    group (GPN).
    
    Signed-off-by: Marek Szyprowski <m.szyprowski at samsung.com>
    Signed-off-by: Kyungmin Park <kyungmin.park at samsung.com>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 386f43517f8bf026320fd4b9e077140681d7e595
Author: Peter Korsgaard <jacmet at sunsite.dk>
Date:   Thu Jun 18 23:54:44 2009 +0200

    [ARM] S3C64XX: clock.c: fix typo in usb-host clock ctrlbit
    
    The usb-host clock was using the wrong define (the SCLK enable for the
    usb-host-bus) to change the HCLK register instead of the HCLK_UHOST bit.
    
    Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 6ade7fa7bb4484b4dc78e55700d0f62bacd491e9
Author: Peter Korsgaard <jacmet at sunsite.dk>
Date:   Thu Jun 18 23:54:43 2009 +0200

    [ARM] S3C64XX: fix HCLK gate defines
    
    A few typos seems to have sneaked into the HCLK gate defines, causing the
    usb host clock to not get enabled. Fix them according to the reference
    manual and throw in the 3d accel bit for good measure.
    
    Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 29959a09cc1aabd2d5f4f03afc0305de6bd29248
Author: Wai Yew CHAY <wychay at ctl.creative.com>
Date:   Mon Jun 22 14:52:34 2009 +0200

    ALSA: ctxfi - Add PM support
    
    Added the suspend/resume support to ctxfi driver.
    
    The team tested on the following seems ok:
      AMD Athlon 64 3500+ / ASUS A8N-E / 512MB DDR ATI / Radeon X1300
      20k1 & 20k2 cards
    
    Signed-off-by: Wai Yew CHAY <wychay at ctl.creative.com>
    Singed-off-by: Ryan RICHARDS <ryan_richards at creativelabs.com>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 4d900f9df5f0569c2dc536701e2c11b6d50ebebf
Author: Patrick McHardy <kaber at trash.net>
Date:   Mon Jun 22 14:17:12 2009 +0200

    netfilter: xt_rateest: fix comparison with self
    
    As noticed by Török Edwin <edwintorok at gmail.com>:
    
    Compiling the kernel with clang has shown this warning:
    
    net/netfilter/xt_rateest.c:69:16: warning: self-comparison always results in a
    constant value
                            ret &= pps2 == pps2;
                                        ^
    Looking at the code:
    if (info->flags & XT_RATEEST_MATCH_BPS)
                ret &= bps1 == bps2;
            if (info->flags & XT_RATEEST_MATCH_PPS)
                ret &= pps2 == pps2;
    
    Judging from the MATCH_BPS case it seems to be a typo, with the intention of
    comparing pps1 with pps2.
    
    http://bugzilla.kernel.org/show_bug.cgi?id=13535
    
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 6d62182fea6cc6bbc8d82a691ad0608d68a54aeb
Author: Jan Engelhardt <jengelh at medozas.de>
Date:   Mon Jun 22 14:16:45 2009 +0200

    netfilter: xt_quota: fix incomplete initialization
    
    Commit v2.6.29-rc5-872-gacc738f ("xtables: avoid pointer to self")
    forgot to copy the initial quota value supplied by iptables into the
    private structure, thus counting from whatever was in the memory
    kmalloc returned.
    
    Signed-off-by: Jan Engelhardt <jengelh at medozas.de>
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 249556192859490b6280552d4b877064f9f5ee48
Author: Patrick McHardy <kaber at trash.net>
Date:   Mon Jun 22 14:15:30 2009 +0200

    netfilter: nf_log: fix direct userspace memory access in proc handler
    
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit f9ffc31251c2caa11962c9b74ce650e2167fa8d1
Author: Patrick McHardy <kaber at trash.net>
Date:   Mon Jun 22 14:15:02 2009 +0200

    netfilter: fix some sparse endianess warnings
    
    net/netfilter/xt_NFQUEUE.c:46:9: warning: incorrect type in assignment (different base types)
    net/netfilter/xt_NFQUEUE.c:46:9:    expected unsigned int [unsigned] [usertype] ipaddr
    net/netfilter/xt_NFQUEUE.c:46:9:    got restricted unsigned int
    net/netfilter/xt_NFQUEUE.c:68:10: warning: incorrect type in assignment (different base types)
    net/netfilter/xt_NFQUEUE.c:68:10:    expected unsigned int [unsigned] <noident>
    net/netfilter/xt_NFQUEUE.c:68:10:    got restricted unsigned int
    net/netfilter/xt_NFQUEUE.c:69:10: warning: incorrect type in assignment (different base types)
    net/netfilter/xt_NFQUEUE.c:69:10:    expected unsigned int [unsigned] <noident>
    net/netfilter/xt_NFQUEUE.c:69:10:    got restricted unsigned int
    net/netfilter/xt_NFQUEUE.c:70:10: warning: incorrect type in assignment (different base types)
    net/netfilter/xt_NFQUEUE.c:70:10:    expected unsigned int [unsigned] <noident>
    net/netfilter/xt_NFQUEUE.c:70:10:    got restricted unsigned int
    net/netfilter/xt_NFQUEUE.c:71:10: warning: incorrect type in assignment (different base types)
    net/netfilter/xt_NFQUEUE.c:71:10:    expected unsigned int [unsigned] <noident>
    net/netfilter/xt_NFQUEUE.c:71:10:    got restricted unsigned int
    
    net/netfilter/xt_cluster.c:20:55: warning: incorrect type in return expression (different base types)
    net/netfilter/xt_cluster.c:20:55:    expected unsigned int
    net/netfilter/xt_cluster.c:20:55:    got restricted unsigned int const [usertype] ip
    net/netfilter/xt_cluster.c:20:55: warning: incorrect type in return expression (different base types)
    net/netfilter/xt_cluster.c:20:55:    expected unsigned int
    net/netfilter/xt_cluster.c:20:55:    got restricted unsigned int const [usertype] ip
    
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 8d8890b7751387f58ce0a6428773de2fbc0fd596
Author: Patrick McHardy <kaber at trash.net>
Date:   Mon Jun 22 14:14:41 2009 +0200

    netfilter: nf_conntrack: fix conntrack lookup race
    
    The RCU protected conntrack hash lookup only checks whether the entry
    has a refcount of zero to decide whether it is stale. This is not
    sufficient, entries are explicitly removed while there is at least
    one reference left, possibly more. Explicitly check whether the entry
    has been marked as dying to fix this.
    
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 5c8ec910e789a92229978d8fd1fce7b62e8ac711
Author: Patrick McHardy <kaber at trash.net>
Date:   Mon Jun 22 14:14:16 2009 +0200

    netfilter: nf_conntrack: fix confirmation race condition
    
    New connection tracking entries are inserted into the hash before they
    are fully set up, namely the CONFIRMED bit is not set and the timer not
    started yet. This can theoretically lead to a race with timer, which
    would set the timeout value to a relative value, most likely already in
    the past.
    
    Perform hash insertion as the final step to fix this.
    
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 8cc20198cfccd06cef705c14fd50bde603e2e306
Author: Eric Dumazet <eric.dumazet at gmail.com>
Date:   Mon Jun 22 14:13:55 2009 +0200

    netfilter: nf_conntrack: death_by_timeout() fix
    
    death_by_timeout() might delete a conntrack from hash list
    and insert it in dying list.
    
     nf_ct_delete_from_lists(ct);
     nf_ct_insert_dying_list(ct);
    
    I believe a (lockless) reader could *catch* ct while doing a lookup
    and miss the end of its chain.
    (nulls lookup algo must check the null value at the end of lookup and
    should restart if the null value is not the expected one.
    cf Documentation/RCU/rculist_nulls.txt for details)
    
    We need to change nf_conntrack_init_net() and use a different "null" value,
    guaranteed not being used in regular lists. Choose very large values, since
    hash table uses [0..size-1] null values.
    
    Signed-off-by: Eric Dumazet <eric.dumazet at gmail.com>
    Acked-by: Pablo Neira Ayuso <pablo at netfilter.org>
    Signed-off-by: Patrick McHardy <kaber at trash.net>

commit 74d5b5889ea71a95d8924c08f8a7c6e2bdcbc0ba
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Mon Jun 22 16:44:28 2009 +0530

    perf_counter tools: Introduce alias member in event_symbol
    
    By introducing alias member in event_symbol :
    
    1. duplicate lines are removed, like:
       cpu-cycles and cycles
       branch-instructions and branches
       context-switches and cs
       cpu-migrations and migrations
    
    2. We can also add alias for another events.
    
    Now ./perf list looks like :
    
    List of pre-defined events (to be used in -e):
    
      cpu-cycles OR cycles                     [Hardware event]
      instructions                             [Hardware event]
      cache-references                         [Hardware event]
      cache-misses                             [Hardware event]
      branch-instructions OR branches          [Hardware event]
      branch-misses                            [Hardware event]
      bus-cycles                               [Hardware event]
    
      cpu-clock                                [Software event]
      task-clock                               [Software event]
      page-faults                              [Software event]
      faults                                   [Software event]
      minor-faults                             [Software event]
      major-faults                             [Software event]
      context-switches OR cs                   [Software event]
      cpu-migrations OR migrations             [Software event]
    
      rNNN                                     [raw hardware event descriptor]
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245669268.17153.8.camel at localhost.localdomain>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit 51e268423151fc7bb41945bde7843160b6a14c32
Author: Jaswinder Singh Rajput <jaswinder at kernel.org>
Date:   Mon Jun 22 16:43:14 2009 +0530

    perf_counter tools: Define separate declarations for H/W and S/W events
    
    Define separate declarations for H/W and S/W events to:
    
     1. Shorten name to save some space so that we can add more members
     2. Fix alignment
     3. Avoid declaring HARDWARE/SOFTWARE again and again.
    
    Removed unused CR(x, y)
    
    Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput at gmail.com>
    Cc: Peter Zijlstra <peterz at infradead.org>
    LKML-Reference: <1245669194.17153.6.camel at localhost.localdomain>
    Signed-off-by: Ingo Molnar <mingo at elte.hu>

commit da6330fccc251db73945ee3eb6248985cf2574de
Author: Martin Schwidefsky <schwidefsky at de.ibm.com>
Date:   Mon Jun 22 12:08:24 2009 +0200

    [S390] Update default configuration.
    
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit acf018004f76617dbab36ef4b5480d4351f9cdff
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 12:08:23 2009 +0200

    [S390] kprobes: defer setting of ctlblk state
    
    get_krobe_ctlblk returns a per cpu kprobe control block which holds
    the state of the current cpu wrt to kprobe.
    When inserting/removing a kprobe the state of the cpu which replaces
    the code is changed to KPROBE_SWAP_INST. This however is done when
    preemption is still enabled. So the state of the current cpu doesn't
    necessarily reflect the real state.
    To fix this move the code that changes the state to non-preemptible
    context.
    
    Reported-by: Ananth N Mavinakayanahalli <ananth at in.ibm.com>
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 12310e9c1b9a53896e4df0459039dd125f62aa9b
Author: Martin Schwidefsky <schwidefsky at de.ibm.com>
Date:   Mon Jun 22 12:08:22 2009 +0200

    [S390] Enable tick based perf_counter on s390.
    
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 181d95229b0931ee2ce6aad7348079cbc10e8d05
Author: Sebastian Ott <sebott at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:21 2009 +0200

    [S390] dasd: fix refcounting in dasd_change_state
    
    To set a dasd online dasd_change_state is called twice. The first
    cycle will schedule initial analysis of the device, set the rc to
    -EAGAIN and will not touch the device state any more.
    The initial analysis will in turn call dasd_change_state to increase
    the state to the final DASD_STATE_ONLINE.
    
    If the dasd_change_state on the second thread outruns the other one
    both finish with the state set to DASD_STATE_ONLINE and the device
    refcount will be decreased by 2.
    
    Fix this by leaving dasd_change_state on rc == -EAGAIN so that the
    refcount will always be decreased by 1.
    
    Signed-off-by: Sebastian Ott <sebott at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit e98bbaafcd1c47d30f3245517fb585f1aaaca4db
Author: Martin Schwidefsky <schwidefsky at de.ibm.com>
Date:   Mon Jun 22 12:08:20 2009 +0200

    [S390] lockless idle time accounting
    
    Replace the spinlock used in the idle time accounting with a sequence
    counter mechanism analog to seqlock.
    
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 4f0076f77fb64889d4e5e425b63333e5764b446d
Author: Martin Schwidefsky <schwidefsky at de.ibm.com>
Date:   Mon Jun 22 12:08:19 2009 +0200

    [S390] driver_data access
    
    Replace the remaining direct accesses to the driver_data pointer
    with calls to the dev_get_drvdata() and dev_set_drvdata() functions.
    
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 4a9c75255e1fef4247cf960d3c3eb528c8cd8409
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 12:08:18 2009 +0200

    [S390] pm: fix build error for !SMP
    
    Fix build error for !SMP:
    
    arch/s390/power/built-in.o: In function `swsusp_arch_resume':
    (.text+0x1b4): undefined reference to `smp_get_phys_cpu_id'
    arch/s390/power/built-in.o: In function `swsusp_arch_resume':
    (.text+0x288): undefined reference to `smp_switch_boot_cpu_in_resume'
    make: *** [.tmp_vmlinux1] Error 1
    
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit e6125fba81e362d9b314d10893af1d9dc5658f33
Author: Stefan Haberland <stefan.haberland at de.ibm.com>
Date:   Mon Jun 22 12:08:17 2009 +0200

    [S390] dasd_pm: fix stop flag handling
    
    The stop flags are handled in the generic restore function so the
    stop flag is removed also for FBA and DIAG devices.
    
    Signed-off-by: Stefan Haberland <stefan.haberland at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 772f54720ab82a6e88f0a8a84d76e7af15ca1f0c
Author: Felix Beck <felix.beck at de.ibm.com>
Date:   Mon Jun 22 12:08:16 2009 +0200

    [S390] ap/zcrypt: Suspend/Resume ap bus and zcrypt
    
    Add Suspend/Resume support to ap bus and zcrypt. All enhancements are
    done in the ap bus. No changes in the crypto card specific part are
    necessary.
    
    Signed-off-by: Felix Beck <felix.beck at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 6618241b47cd131503610d8df68dd6f4948e5c1a
Author: Jan Glauber <jang at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:15 2009 +0200

    [S390] qdio: Sanitize do_QDIO sanity checks
    
    Remove unneeded sanity checks from do_QDIO since this is the hot path.
    Change the type of bufnr and count to unsigned int so the check for the
    maximum value works.
    
    Reported-by: Roel Kluin <roel.kluin at gmail.com>
    Signed-off-by: Jan Glauber <jang at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit f0a0b15e0f3aff0a25f21f58bef8e40e80b16dc6
Author: Jan Glauber <jang at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:14 2009 +0200

    [S390] qdio: leave inbound SBALs primed
    
    It is not required to change the state of primed SBALs. Leaving them
    primed saves a SQBS instruction under z/VM.
    
    Signed-off-by: Jan Glauber <jang at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit cf9a031c2cc881e9873ab9ccf5e1f59f5b5167aa
Author: Jan Glauber <jang at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:13 2009 +0200

    [S390] qdio: merge AI tasklet into interrupt handler
    
    Since the adapter interrupt tasklet only schedules the queue tasklets
    and contains no code that requires serialization in can be merged
    with the adapter interrupt handler. That possibly safes some CPU
    cycles.
    
    Signed-off-by: Jan Glauber <jang at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 36e3e72120e27939233e4bd88a8d74b3a2377428
Author: Jan Glauber <jang at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:12 2009 +0200

    [S390] qdio: extract all primed SBALs at once
    
    For devices without QIOASSIST primed SBALS were extracted in a loop.
    Remove the loop since get_buf_states can already return more than
    one primed SBAL.
    
    Signed-off-by: Jan Glauber <jang at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 9a2c160a8cbd5b3253672b3bac462c64d0d2eef7
Author: Jan Glauber <jang at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:11 2009 +0200

    [S390] qdio: fix check for running under z/VM
    
    The check whether qdio runs under z/VM was incorrect since SIGA-Sync is not
    set if the device runs with QIOASSIST. Use MACHINE_IS_VM instead to prevent
    polling under z/VM.
    
    Merge qdio_inbound_q_done and tiqdio_is_inbound_q_done.
    
    Signed-off-by: Jan Glauber <jang at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 60b5df2f12f2ab54bfa7c1f0f0ce3f5953e73c0b
Author: Jan Glauber <jang at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:10 2009 +0200

    [S390] qdio: move adapter interrupt tasklet code
    
    Move the adapter interrupt tasklet function to the qdio main code
    since all the functions used by the tasklet are located there.
    
    Signed-off-by: Jan Glauber <jang at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit f3dfa86caa4a54aceb2b235bf28a6f6ad73b2716
Author: Michael Holzheu <holzheu at linux.vnet.ibm.com>
Date:   Mon Jun 22 12:08:09 2009 +0200

    [S390] Use del_timer instead of del_timer_sync
    
    When syncing the sclp console queue, we call del_timer_sync() while holding
    the "sclp_con_lock" spinlock. This lock is also taken in the timer function
    "sclp_console_timeout". Therefore the sync version of del_timer() cannot be
    used here. Because the synchronous deletion of the timer is only needed
    in the suspend callback and in that case only one CPU is remaining and
    therefore it is not possible that the timer function is running in parallel,
    we can safely use del_timer() instead of del_timer_sync().
    
    Signed-off-by: Michael Holzheu <holzheu at linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 66d51f3e81b1067bdc836b3aba609eec957c693c
Author: Pekka Enberg <penberg at cs.helsinki.fi>
Date:   Mon Jun 22 12:08:08 2009 +0200

    [S390] s390: remove DEBUG_MALLOC
    
    The kernel now has kmemleak and kmemtrace so there's no reason to keep
    this ugly s390 hack around. I am not sure how it's supposed to work on
    SMP anyway as it uses a global variable to temporarily store the return
    value of all kmalloc() calls:
    
      void *b;
    
      #define kmalloc(x...) (PRINT_INFO(" kmalloc %p\n",b=kmalloc(x)),b)
    
    Cc: <linux-s390 at vger.kernel.org>
    Cc: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Pekka Enberg <penberg at cs.helsinki.fi>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 5c0792f6924333290ec3ca31c02e6555d73dba04
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 12:08:07 2009 +0200

    [S390] vt220 console: convert from bootmem to slab
    
    The slab allocator is earlier available so convert the
    bootmem allocations to slab/gfp allocations.
    
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 4c8f4794b61e89dd68f96cfc23a9d9b6c25be420
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 12:08:06 2009 +0200

    [S390] sclp console: convert from bootmem to slab
    
    The slab allocator is earlier available so convert the
    bootmem allocations to slab/gfp allocations.
    
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 33403dcfcdfd097d80213a715604eab2dca93b2e
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 12:08:05 2009 +0200

    [S390] 3270 console: convert from bootmem to slab
    
    The slab allocator is earlier available so convert the
    bootmem allocations to slab/gfp allocations.
    
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit 6d56eee2c016b0b131e444d02a66b0fef7df3ef0
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 12:08:04 2009 +0200

    [S390] 3215 console: convert from bootmem to slab
    
    The slab allocator is earlier available so convert the
    bootmem allocations to slab/gfp allocations.
    
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit d7d1104fa40f66dbe50840f05b34268144f8a17a
Author: Heiko Carstens <heiko.carstens at de.ibm.com>
Date:   Mon Jun 22 12:08:03 2009 +0200

    [S390] time: convert from bootmem to slab
    
    The slab allocator is earlier available so convert the
    bootmem allocations to slab/gfp allocations.
    
    Signed-off-by: Heiko Carstens <heiko.carstens at de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky at de.ibm.com>

commit aafd1255d08fb26cab87d1b28ff35a15bdb2ed68
Author: Daniel Glockner <dg at emlix.com>
Date:   Wed Jun 10 12:58:51 2009 -0700

    xtensa: enable m41t80 driver in s6105_defconfig
    
    Signed-off-by: Daniel Glockner <dg at emlix.com>
    Cc: David Brownell <david-b at pacbell.net>
    Cc: Alessandro Zummo <a.zummo at towertech.it>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>

commit 759c67e87bce54bd08e5fee1fdca975cebe5d3c2
Author: Daniel Glockner <dg at emlix.com>
Date:   Wed Jun 10 12:58:50 2009 -0700

    xtensa: add m41t62 rtc to s6105 platform
    
    Signed-off-by: Daniel Glockner <dg at emlix.com>
    Cc: David Brownell <david-b at pacbell.net>
    Cc: Alessandro Zummo <a.zummo at towertech.it>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>

commit 607c2add0f3b2cc12567f658e9dfdb07df2b106e
Author: Daniel Glockner <dg at emlix.com>
Date:   Wed Jun 10 12:58:49 2009 -0700

    xtensa: enable s6gmac in s6105_defconfig
    
    Signed-off-by: Daniel Glockner <dg at emlix.com>
    Cc: "David S. Miller" <davem at davemloft.net>
    Cc: Johannes Weiner <jw at emlix.com>
    Cc: Oskar Schirmer <os at emlix.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>

commit 059cafe6df5d3b078c4b1be42623c62ab32de6fd
Author: Oskar Schirmer <os at emlix.com>
Date:   Wed Jun 10 12:58:48 2009 -0700

    xtensa: s6105 specific configuration for s6gmac
    
    Platform-specific configuration for the s6gmac driver, including the
    PHY interrupt line.
    
    Signed-off-by: Daniel Glockner <dg at emlix.com>
    Signed-off-by: Oskar Schirmer <os at emlix.com>
    Cc: "David S. Miller" <davem at davemloft.net>
    Cc: Johannes Weiner <jw at emlix.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>

commit 8b0215aa5b01eb3cb54ca57bfa36e94a0d039ed9
Author: Oskar Schirmer <os at emlix.com>
Date:   Wed Jun 10 12:58:48 2009 -0700

    s6gmac: xtensa s6000 on-chip ethernet driver
    
    The s6000 on-chip MAC supports 10/100/1000Mbit and is connected to an
    external PHY via MII or RGMII interface.
    
    [jw at emlix.com: don't use device->bus_id directly]
    Signed-off-by: Oskar Schirmer <os at emlix.com>
    Signed-off-by: Daniel Glockner <dg at emlix.com>
    Acked-by: "David S. Miller" <davem at davemloft.net>
    Signed-off-by: Johannes Weiner <jw at emlix.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Chris Zankel <chris at zankel.net>

commit 0b3eb21b2f2222c4c1e3e21fc3cd427404d3991a
Author: Daniel Glöckner <dg at emlix.com>
Date:   Tue May 5 15:03:22 2009 +0000

    xtensa: support s6000 gpio irqs and alternate function selection
    
    Implement an irq chip to handle interrupts via gpio.  The GPIO chip
    initialization function now takes a bitmask denoting pins that should
    be configured for their alternate function.
    
    changes compared to v1:
    - fixed bug on edge interrupt configuration
    - accommodated to function name change
    - moved definition of VARIANT_NR_IRQS to this patch
    - renamed __XTENSA_S6000_IRQ_H to _XTENSA_S6000_IRQ_H as requested
    
    Signed-off-by: Daniel Glöckner <dg at emlix.com>
    Signed-off-by: Johannes Weiner <jw at emlix.com>
    Signed-off-by: Chris Zankel <chris at zankel.net>

commit f24e552c2dc3221dc7bd2296fd8a705283c4b2d7
Author: Oskar Schirmer <os at emlix.com>
Date:   Wed Jun 10 12:58:45 2009 -0700

    xtensa: s6000 dma engine support
    
    There are four slightly different dma engines on the s6000 family.
    One for memory-memory transfers, the other three for memory-device.
    
    This patch implements a platform-specific kernel-API to control these
    engines.  It is needed for the network, video, audio peripherals on
    s6000.
    
    Signed-off-by: Oskar Schirmer <os at emlix.com>
    Signed-off-by: Daniel Glockner <dg at emlix.com>
    Signed-off-by: Fabian Godehardt <fg at emlix.com>
    Cc: Daniel Glockner <dg at emlix.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Chris Zankel <chris at zankel.net>

commit 1beee21030ed3dc39a41c7b524dbc1a318b518bd
Author: Daniel Glöckner <dg at emlix.com>
Date:   Tue May 5 15:03:21 2009 +0000

    xtensa: allow variant to initialize own irq chips
    
    There was already a PLATFORM_NR_IRQS define, which is now accompanied
    by a VARIANT_NR_IRQS. To be able to initialize these interrupts,
    init_IRQ now calls a variant specific hook.
    
    Changes compared to v1:
    - adapted to new CONFIG_VARIANT_IRQ_EXT
    - removed definition and call of platform_init_IRQ as there already
      is a platform_init_irq defined in asm/platform.h with a weak default
      in kernel/platform.c
    - renamed variant_init_IRQ to variant_init_irq
    
    Note that I could not find the call site of platform_init_irq although
    it is stated in platform.h that it is called from init_IRQ.
    
    Signed-off-by: Daniel Glöckner <dg at emlix.com>
    Signed-off-by: Chris Zankel <chris at zankel.net>

commit bd974240c9a7c6c560504bf390cd8985a16b68f6
Author: Oskar Schirmer <os at emlix.com>
Date:   Wed Jun 10 12:58:45 2009 -0700

    xtensa: cache inquiry and unaligned cache handling functions
    
    The existing xtensa cache handling functions work on page-aligned
    memory regions.
    
    These functions are needed for the s6000 dma engine which can work on
    a byte-granularity.
    
    Signed-off-by: Oskar Schirmer <os at emlix.com>
    Cc: Johannes Weiner <jw at emlix.com>
    Cc: Daniel Glockner <dg at emlix.com>
    Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
    Signed-off-by: Chris Zankel <chris at zankel.net>

commit f40c67f0f7e2767f80f7cbcbc1ab86c4113c202e
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:37 2009 +0100

    dm mpath: change to be request based
    
    This patch converts dm-multipath target to request-based from bio-based.
    
    Basically, the patch just converts the I/O unit from struct bio
    to struct request.
    In the course of the conversion, it also changes the I/O queueing
    mechanism.  The change in the I/O queueing is described in details
    as follows.
    
    I/O queueing mechanism change
    -----------------------------
    In I/O submission, map_io(), there is no mechanism change from
    bio-based, since the clone request is ready for retry as it is.
    However, in I/O complition, do_end_io(), there is a mechanism change
    from bio-based, since the clone request is not ready for retry.
    
    In do_end_io() of bio-based, the clone bio has all needed memory
    for resubmission.  So the target driver can queue it and resubmit
    it later without memory allocations.
    The mechanism has almost no overhead.
    
    On the other hand, in do_end_io() of request-based, the clone request
    doesn't have clone bios, so the target driver can't resubmit it
    as it is.  To resubmit the clone request, memory allocation for
    clone bios is needed, and it takes some overheads.
    To avoid the overheads just for queueing, the target driver doesn't
    queue the clone request inside itself.
    Instead, the target driver asks dm core for queueing and remapping
    the original request of the clone request, since the overhead for
    queueing is just a freeing memory for the clone request.
    
    As a result, the target driver doesn't need to record/restore
    the information of the original request for resubmitting
    the clone request.  So dm_bio_details in dm_mpath_io is removed.
    
    multipath_busy()
    ---------------------
    The target driver returns "busy", only when the following case:
      o The target driver will map I/Os, if map() function is called
      and
      o The mapped I/Os will wait on underlying device's queue due to
        their congestions, if map() function is called now.
    
    In other cases, the target driver doesn't return "busy".
    Otherwise, dm core will keep the I/Os and the target driver can't
    do what it wants.
    (e.g. the target driver can't map I/Os now, so wants to kill I/Os.)
    
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Acked-by: Hannes Reinecke <hare at suse.de>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 523d9297d43cce3fa6de6474b7674329e98743b1
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:37 2009 +0100

    dm: disable interrupt when taking map_lock
    
    This patch disables interrupt when taking map_lock to avoid
    lockdep warnings in request-based dm.
    
    request-based dm takes map_lock after taking queue_lock with
    disabling interrupt:
      spin_lock_irqsave(queue_lock)
      q->request_fn() == dm_request_fn()
        => dm_get_table()
             => read_lock(map_lock)
    while queue_lock could be (but isn't) taken in interrupt context.
    
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Acked-by: Christof Schmitt <christof.schmitt at de.ibm.com>
    Acked-by: Hannes Reinecke <hare at suse.de>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 5d67aa2366ccb8257d103d0b43df855605c3c086
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:36 2009 +0100

    dm: do not set QUEUE_ORDERED_DRAIN if request based
    
    Request-based dm doesn't have barrier support yet.
    So we need to set QUEUE_ORDERED_DRAIN only for bio-based dm.
    Since the device type is decided at the first table loading time,
    the flag set is deferred until then.
    
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Acked-by: Hannes Reinecke <hare at suse.de>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit e6ee8c0b767540f59e20da3ced282601db8aa502
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:36 2009 +0100

    dm: enable request based option
    
    This patch enables request-based dm.
    
    o Request-based dm and bio-based dm coexist, since there are
      some target drivers which are more fitting to bio-based dm.
      Also, there are other bio-based devices in the kernel
      (e.g. md, loop).
      Since bio-based device can't receive struct request,
      there are some limitations on device stacking between
      bio-based and request-based.
    
                         type of underlying device
                       bio-based      request-based
       ----------------------------------------------
        bio-based         OK                OK
        request-based     --                OK
    
      The device type is recognized by the queue flag in the kernel,
      so dm follows that.
    
    o The type of a dm device is decided at the first table binding time.
      Once the type of a dm device is decided, the type can't be changed.
    
    o Mempool allocations are deferred to at the table loading time, since
      mempools for request-based dm are different from those for bio-based
      dm and needed mempool type is fixed by the type of table.
    
    o Currently, request-based dm supports only tables that have a single
      target.  To support multiple targets, we need to support request
      splitting or prevent bio/request from spanning multiple targets.
      The former needs lots of changes in the block layer, and the latter
      needs that all target drivers support merge() function.
      Both will take a time.
    
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit cec47e3d4a861e1d942b3a580d0bbef2700d2bb2
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:35 2009 +0100

    dm: prepare for request based option
    
    This patch adds core functions for request-based dm.
    
    When struct mapped device (md) is initialized, md->queue has
    an I/O scheduler and the following functions are used for
    request-based dm as the queue functions:
        make_request_fn: dm_make_request()
        pref_fn:         dm_prep_fn()
        request_fn:      dm_request_fn()
        softirq_done_fn: dm_softirq_done()
        lld_busy_fn:     dm_lld_busy()
    Actual initializations are done in another patch (PATCH 2).
    
    Below is a brief summary of how request-based dm behaves, including:
      - making request from bio
      - cloning, mapping and dispatching request
      - completing request and bio
      - suspending md
      - resuming md
    
      bio to request
      ==============
      md->queue->make_request_fn() (dm_make_request()) calls __make_request()
      for a bio submitted to the md.
      Then, the bio is kept in the queue as a new request or merged into
      another request in the queue if possible.
    
      Cloning and Mapping
      ===================
      Cloning and mapping are done in md->queue->request_fn() (dm_request_fn()),
      when requests are dispatched after they are sorted by the I/O scheduler.
    
      dm_request_fn() checks busy state of underlying devices using
      target's busy() function and stops dispatching requests to keep them
      on the dm device's queue if busy.
      It helps better I/O merging, since no merge is done for a request
      once it is dispatched to underlying devices.
    
      Actual cloning and mapping are done in dm_prep_fn() and map_request()
      called from dm_request_fn().
      dm_prep_fn() clones not only request but also bios of the request
      so that dm can hold bio completion in error cases and prevent
      the bio submitter from noticing the error.
      (See the "Completion" section below for details.)
    
      After the cloning, the clone is mapped by target's map_rq() function
        and inserted to underlying device's queue using
        blk_insert_cloned_request().
    
      Completion
      ==========
      Request completion can be hooked by rq->end_io(), but then, all bios
      in the request will have been completed even error cases, and the bio
      submitter will have noticed the error.
      To prevent the bio completion in error cases, request-based dm clones
      both bio and request and hooks both bio->bi_end_io() and rq->end_io():
          bio->bi_end_io(): end_clone_bio()
          rq->end_io():     end_clone_request()
    
      Summary of the request completion flow is below:
      blk_end_request() for a clone request
        => blk_update_request()
           => bio->bi_end_io() == end_clone_bio() for each clone bio
              => Free the clone bio
              => Success: Complete the original bio (blk_update_request())
                 Error:   Don't complete the original bio
        => blk_finish_request()
           => rq->end_io() == end_clone_request()
              => blk_complete_request()
                 => dm_softirq_done()
                    => Free the clone request
                    => Success: Complete the original request (blk_end_request())
                       Error:   Requeue the original request
    
      end_clone_bio() completes the original request on the size of
      the original bio in successful cases.
      Even if all bios in the original request are completed by that
      completion, the original request must not be completed yet to keep
      the ordering of request completion for the stacking.
      So end_clone_bio() uses blk_update_request() instead of
      blk_end_request().
      In error cases, end_clone_bio() doesn't complete the original bio.
      It just frees the cloned bio and gives over the error handling to
      end_clone_request().
    
      end_clone_request(), which is called with queue lock held, completes
      the clone request and the original request in a softirq context
      (dm_softirq_done()), which has no queue lock, to avoid a deadlock
      issue on submission of another request during the completion:
          - The submitted request may be mapped to the same device
          - Request submission requires queue lock, but the queue lock
            has been held by itself and it doesn't know that
    
      The clone request has no clone bio when dm_softirq_done() is called.
      So target drivers can't resubmit it again even error cases.
      Instead, they can ask dm core for requeueing and remapping
      the original request in that cases.
    
      suspend
      =======
      Request-based dm uses stopping md->queue as suspend of the md.
      For noflush suspend, just stops md->queue.
    
      For flush suspend, inserts a marker request to the tail of md->queue.
      And dispatches all requests in md->queue until the marker comes to
      the front of md->queue.  Then, stops dispatching request and waits
      for the all dispatched requests to complete.
      After that, completes the marker request, stops md->queue and
      wake up the waiter on the suspend queue, md->wait.
    
      resume
      ======
      Starts md->queue.
    
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit f5db4af466e2dca0fe822019812d586ca910b00c
Author: Jonthan Brassow <jbrassow at redhat.com>
Date:   Mon Jun 22 10:12:35 2009 +0100

    dm raid1: add userspace log
    
    This patch contains a device-mapper mirror log module that forwards
    requests to userspace for processing.
    
    The structures used for communication between kernel and userspace are
    located in include/linux/dm-log-userspace.h.  Due to the frequency,
    diversity, and 2-way communication nature of the exchanges between
    kernel and userspace, 'connector' was chosen as the interface for
    communication.
    
    The first log implementations written in userspace - "clustered-disk"
    and "clustered-core" - support clustered shared storage.   A userspace
    daemon (in the LVM2 source code repository) uses openAIS/corosync to
    process requests in an ordered fashion with the rest of the nodes in the
    cluster so as to prevent log state corruption.  Other implementations
    with no association to LVM or openAIS/corosync, are certainly possible.
    
    (Imagine if two machines are writing to the same region of a mirror.
    They would both mark the region dirty, but you need a cluster-aware
    entity that can handle properly marking the region clean when they are
    done.  Otherwise, you might clear the region when the first machine is
    done, not the second.)
    
    Signed-off-by: Jonathan Brassow <jbrassow at redhat.com>
    Cc: Evgeniy Polyakov <johnpol at 2ka.mipt.ru>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 754c5fc7ebb417b23601a6222a6005cc2e7f2913
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Mon Jun 22 10:12:34 2009 +0100

    dm: calculate queue limits during resume not load
    
    Currently, device-mapper maintains a separate instance of 'struct
    queue_limits' for each table of each device.  When the configuration of
    a device is to be changed, first its table is loaded and this structure
    is populated, then the device is 'resumed' and the calculated
    queue_limits are applied.
    
    This places restrictions on how userspace may process related devices,
    where it is often advantageous to 'load' tables for several devices
    at once before 'resuming' them together.  As the new queue_limits
    only take effect after the 'resume', if they are changing and one
    device uses another, the latter must be 'resumed' before the former
    may be 'loaded'.
    
    This patch moves the calculation of these queue_limits out of
    the 'load' operation into 'resume'.  Since we are no longer
    pre-calculating this struct, we no longer need to maintain copies
    within our dm structs.
    
    dm_set_device_limits() now passes the 'start' of the device's
    data area (aka pe_start) as the 'offset' to blk_stack_limits().
    
    init_valid_queue_limits() is replaced by blk_set_default_limits().
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Cc: martin.petersen at oracle.com
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 18d8594dd93a1ae2fafd591ec026e87d743292bf
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Mon Jun 22 10:12:33 2009 +0100

    dm log: fix create_log_context to use logical_block_size of log device
    
    create_log_context() must use the logical_block_size from the log disk,
    where the I/O happens, not the target's logical_block_size.
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit af4874e03ed82f050d5872d8c39ce64bf16b5c38
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Mon Jun 22 10:12:33 2009 +0100

    dm target:s introduce iterate devices fn
    
    Add .iterate_devices to 'struct target_type' to allow a function to be
    called for all devices in a DM target.  Implemented it for all targets
    except those in dm-snap.c (origin and snapshot).
    
    (The raid1 version number jumps to 1.12 because we originally reserved
    1.1 to 1.11 for 'block_on_error' but ended up using 'handle_errors'
    instead.)
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>
    Cc: martin.petersen at oracle.com

commit 1197764e403d97231eb6da2b1e16f511a7fd3101
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Mon Jun 22 10:12:32 2009 +0100

    dm table: establish queue limits by copying table limits
    
    Copy the table's queue_limits to the DM device's request_queue.  This
    properly initializes the queue's topology limits and also avoids having
    to track the evolution of 'struct queue_limits' in
    dm_table_set_restrictions()
    
    Also fixes a bug that was introduced in dm_table_set_restrictions() via
    commit ae03bf639a5027d27270123f5f6e3ee6a412781d.  In addition to
    establishing 'bounce_pfn' in the queue's limits blk_queue_bounce_limit()
    also performs an allocation to setup the ISA DMA pool.  This allocation
    resulted in "sleeping function called from invalid context" when called
    from dm_table_set_restrictions().
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 5ab97588fb266187b88d1ad893251c94388f18ba
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Mon Jun 22 10:12:32 2009 +0100

    dm table: replace struct io_restrictions with struct queue_limits
    
    Use blk_stack_limits() to stack block limits (including topology) rather
    than duplicate the equivalent within Device Mapper.
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit be6d4305db093ad1cc623f7dd3d2470b7bd73fa4
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Mon Jun 22 10:12:31 2009 +0100

    dm table: validate device logical_block_size
    
    Impose necessary and sufficient conditions on a devices's table such
    that any incoming bio which respects its logical_block_size can be
    processed successfully.
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 02acc3a4fa0a6c2a5ccc4fb722b55fb710265882
Author: Mike Snitzer <snitzer at redhat.com>
Date:   Mon Jun 22 10:12:30 2009 +0100

    dm table: ensure targets are aligned to logical_block_size
    
    Ensure I/O is aligned to the logical block size of target devices.
    
    Rename check_device_area() to device_area_is_valid() for clarity and
    establish the device limits including the logical block size prior to
    calling it.
    
    Signed-off-by: Mike Snitzer <snitzer at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 60935eb21d3c5bac79618000f38f92c249d153c4
Author: Milan Broz <mbroz at redhat.com>
Date:   Mon Jun 22 10:12:30 2009 +0100

    dm ioctl: support cookies for udev
    
    Add support for passing a 32 bit "cookie" into the kernel with the
    DM_SUSPEND, DM_DEV_RENAME and DM_DEV_REMOVE ioctls.  The (unsigned)
    value of this cookie is returned to userspace alongside the uevents
    issued by these ioctls in the variable DM_COOKIE.
    
    This means the userspace process issuing these ioctls can be notified
    by udev after udev has completed any actions triggered.
    
    To minimise the interface extension, we pass the cookie into the
    kernel in the event_nr field which is otherwise unused when calling
    these ioctls.  Incrementing the version number allows userspace to
    determine in advance whether or not the kernel supports the cookie.
    If the kernel does support this but userspace does not, there should
    be no impact as the new variable will just get ignored.
    
    Signed-off-by: Milan Broz <mbroz at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 486d220fe4909b5745c4faa67faddd30a707abe2
Author: Peter Rajnoha <prajnoha at redhat.com>
Date:   Mon Jun 22 10:12:29 2009 +0100

    dm: sysfs add suspended attribute
    
    Add a file named 'suspended' to each device-mapper device directory in
    sysfs.  It holds the value 1 while the device is suspended.  Otherwise
    it holds 0.
    
    Signed-off-by: Peter Rajnoha <prajnoha at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 1b6da754594e6e26c24e6fbc1a34f9c03e4617a3
Author: Jonthan Brassow <jbrassow at redhat.com>
Date:   Mon Jun 22 10:12:29 2009 +0100

    dm table: improve warning message when devices not freed before destruction
    
    Report any devices forgotten to be freed before a table is destroyed.
    
    Signed-off-by: Jonathan Brassow <jbrassow at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit f392ba889b019602976082bfe7bf486c2594f85c
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:28 2009 +0100

    dm mpath: add service time load balancer
    
    This patch adds a service time oriented dynamic load balancer,
    dm-service-time, which selects the path with the shortest estimated
    service time for the incoming I/O.
    The service time is estimated by dividing the in-flight I/O size
    by a performance value of each path.
    
    The performance value can be given as a table argument at the table
    loading time.  If no performance value is given, all paths are
    considered equal.
    
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit fd5e033908b7b743b5650790f196761dd930f988
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:27 2009 +0100

    dm mpath: add queue length load balancer
    
    This patch adds a dynamic load balancer, dm-queue-length, which
    balances the number of in-flight I/Os across the paths.
    
    The code is based on the patch posted by Stefan Bader:
    https://www.redhat.com/archives/dm-devel/2005-October/msg00050.html
    
    Signed-off-by: Stefan Bader <stefan.bader at canonical.com>
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 02ab823fd1a27d193bda06b74fdad685a20a3e5e
Author: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
Date:   Mon Jun 22 10:12:27 2009 +0100

    dm mpath: add start_io and nr_bytes to path selectors
    
    This patch makes two additions to the dm path selector interface for
    dynamic load balancers:
      o a new hook, start_io()
      o a new parameter 'nr_bytes' to select_path()/start_io()/end_io()
        to pass the size of the I/O
    
    start_io() is called when a target driver actually submits I/O
    to the selected path.
    Path selectors can use it to start accounting of the I/O.
    (e.g. counting the number of in-flight I/Os.)
    The start_io hook is based on the patch posted by Stefan Bader:
    https://www.redhat.com/archives/dm-devel/2005-October/msg00050.html
    
    nr_bytes, the size of the I/O, is so path selectors can take the
    size of the I/O into account when deciding which path to use.
    dm-service-time uses it to estimate service time, for example.
    (Added the nr_bytes member to dm_mpath_io instead of using existing
     details.bi_size, since request-based dm patch deletes it.)
    
    Signed-off-by: Stefan Bader <stefan.bader at canonical.com>
    Signed-off-by: Kiyoshi Ueda <k-ueda at ct.jp.nec.com>
    Signed-off-by: Jun'ichi Nomura <j-nomura at ce.jp.nec.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 2bd023452592e5f5cf90dd426cc39b7632b15b76
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:26 2009 +0100

    dm snapshot: use barrier when writing exception store
    
    Send barrier requests when updating the exception area.
    
    Exception area updates need to be ordered w.r.t. data writes, so that
    the writes are not reordered in hardware disk cache.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 51aa322849581f1a73594e48ea0df63f914ee6a2
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:26 2009 +0100

    dm io: retry after barrier error
    
    If -EOPNOTSUPP was returned and the request was a barrier request, retry it
    without barrier.
    
    Retry all regions for now. Barriers are submitted only for one-region requests,
    so it doesn't matter.  (In the future, retries can be limited to the actual
    regions that failed.)
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 5af443a7e1c0864100cc44525a9821aa2a2f4719
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:25 2009 +0100

    dm io: record eopnotsupp
    
    Add another field, eopnotsupp_bits. It is subset of error_bits, representing
    regions that returned -EOPNOTSUPP.  (The bit is set in both error_bits and
    eopnotsupp_bits).
    
    This value will be used in further patches.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 494b3ee7d4f69210def80aecce28d08c3f0755d5
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:25 2009 +0100

    dm snapshot: support barriers
    
    Flush support for dm-snapshot target.
    
    This patch just forwards the flush request to either the origin or the snapshot
    device.  (It doesn't flush exception store metadata.)
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 8627921fa2ef6d40fd9b787e163ba3a9ff8f471d
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:24 2009 +0100

    dm mpath: support barriers
    
    Flush support for dm-multipath target.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit c927259e34e518d913d86f51c71b786a513f94d6
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:23 2009 +0100

    dm delay: support barriers
    
    Flush support for dm-delay target.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 647c7db14ef9cacc4ccb3683e206b61f0de6dc2b
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:23 2009 +0100

    dm crypt: support flush
    
    Flush support for dm-crypt target.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 374bf7e7f6cc38b0483351a2029a97910eadde1b
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:22 2009 +0100

    dm: stripe support flush
    
    Flush support for the stripe target.
    
    This sets ti->num_flush_requests to the number of stripes and
    remaps individual flush requests to the appropriate stripe devices.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 433bcac5645508b71eab2710b6817c3ef937eba8
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:22 2009 +0100

    dm: linear support flush
    
    Flush support for the linear target.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 52b1fd5a27c625c78373e024bf570af3c9d44a79
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:21 2009 +0100

    dm: send empty barriers to targets in dm_flush
    
    Pass empty barrier flushes to the targets in dm_flush().
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 9015df24a8008d7bea2bd3df881783ebe0dcb9af
Author: Alasdair G Kergon <agk at redhat.com>
Date:   Mon Jun 22 10:12:21 2009 +0100

    dm: initialise tio in alloc_tio
    
    Move repeated dm_target_io initialisation inside alloc_tio().
    
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit f9ab94cee313746573b2d693bc2afb807ebb0998
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:20 2009 +0100

    dm: introduce num_flush_requests
    
    Introduce num_flush_requests for a target to set to say how many flush
    instructions (empty barriers) it wants to receive.  These are sent by
    __clone_and_map_empty_barrier with map_info->flush_request going from 0
    to (num_flush_requests - 1).
    
    Old targets without flush support won't receive any flush requests.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 27eaa14975d8b53f0bad422e53cdf8e5f6dd44ec
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:20 2009 +0100

    dm: remove check that prevents mapping empty bios
    
    Remove the check that the size of the cloned bio is not zero because a
    subsequent patch needs to send zero-sized barriers down this path.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit fdb9572b73abd008b80931c3b1f157dac3888bb9
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:19 2009 +0100

    dm: remove EOPNOTSUPP for barriers
    
    If the underlying device doesn't support barriers and dm receives a
    barrier, it waits until all requests on that device drain so it no
    longer needs to report -EOPNOTSUPP to the caller.
    
    This patch deals with the confusing situation when moving a volume from
    one physical device to another triggers an EOPNOTSUPP on a volume that
    didn't report it before.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 5aa2781d964e9835c441932110484bc454b5c207
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:18 2009 +0100

    dm: store only first barrier error
    
    With the following patches, more than one error can occur during
    processing.  Change md->barrier_error so that only the first one is
    recorded and returned to the caller.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 2761e95fe40ca0d01864310fa4d488d7c5e34e18
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:18 2009 +0100

    dm: process requeue in dm_wq_work
    
    If barrier request was returned with DM_ENDIO_REQUEUE,
    requeue it in dm_wq_work instead of dec_pending.
    
    This allows us to correctly handle a situation when some targets
    are asking for a requeue and other targets signal an error.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 531fe96364f30879753d46c1f52ab839e12d2e5d
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:17 2009 +0100

    dm: make dm_flush return void
    
    Make dm_flush return void.
    
    The first error during flush is stored in md->barrier_error instead.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 32a926da5a16c01a8213331e5764472ce2f14a8d
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:17 2009 +0100

    dm: always hold bdev reference
    
    Fix a potential deadlock when creating multiple snapshots by holding a
    reference to struct block_device for the whole lifecycle of every dm
    device instead of obtaining it independently at each point it is needed.
    
    bdget_disk() was called while the device was being suspended, in
    dm_suspend().  However there could be other devices already suspended,
    for example when creating additional snapshots of a device. bdget_disk()
    can wait for IO and allocate memory resulting in waiting for the
    already-suspended device - deadlock.
    
    This patch changes the code so that it gets the reference to struct
    block_device when struct mapped_device is allocated and initialized in
    alloc_dev() where it is always OK to allocate memory or wait for I/O.
    It drops the reference when it is destroyed in free_dev().  Thus there
    is no call to bdget_disk() while any device is suspended.
    
    Previously unlock_fs() was called only if bdev was held.  Now it is
    called unconditionally, but the superfluous calls are harmless because
    it returns immediately if the filesystem was not previously frozen.
    
    This patch also now allows the device size to be changed in a
    noflush suspend because the bdev is held.  This has no adverse effect.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit db8fef4fabe4a546ce74f80bff64fd43776e5912
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:15 2009 +0100

    dm: rename suspended_bdev to bdev
    
    Rename suspended_bdev to bdev.
    
    This patch doesn't change any functionality, just renames the variable.
    In the next patch, the variable will be used even for non-suspended device.
    
    (Pre-requisite for the per-target barrier support patches.)
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit f6bd4eb73cdf2a5bf954e497972842f39cabb7e3
Author: Jonathan Brassow <jbrassow at redhat.com>
Date:   Mon Jun 22 10:12:15 2009 +0100

    dm exception store: fix exstore lookup to be case insensitive
    
    When snapshots are created using 'p' instead of 'P' as the
    exception store type, the device-mapper table loading fails.
    
    This patch makes the code case insensitive as intended and fixes some
    regressions reported with device-mapper snapshots.
    
    Signed-off-by: Jonathan Brassow <jbrassow at redhat.com>
    Cc: stable at kernel.org
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 5657e8fa45cf230df278040c420fb80e06309d8f
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:14 2009 +0100

    dm: use i_size_read
    
    Use i_size_read() instead of reading i_size.
    
    If someone changes the size of the device simultaneously, i_size_read
    is guaranteed to return a valid value (either the old one or the new one).
    
    i_size can return some intermediate invalid value (on 32-bit computers
    with 64-bit i_size, the reads to both halves of i_size can be interleaved
    with updates to i_size, resulting in garbage being returned).
    
    Cc: stable at kernel.org
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 8cbeb67ad50f7d68e5e83be2cb2284de8f9c03b5
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:14 2009 +0100

    dm: avoid unsupported spanning of md stripe boundaries
    
    A bio that has two or more vector entries, size less than or equal to
    page size, that crosses a stripe boundary of an underlying md device is
    accepted by device mapper (it conforms to all its limits) but not by the
    underlying device.
    
    The fix is: If device mapper selects the one-page maximum request size,
    it also needs to set its own q->merge_bvec_fn to reject any bios with
    multiple vector entries that span more pages.
    
    The problem was discovered in the following scenario:
      * MD - RAID-0
      * LV on the top of it (raid1, snapshot or striped with chunk
    size/stripe larger than RAID-0 stripe)
      * one of the logical volumes is exported to xen domU
      * inside xen domU it is partitioned, the key point is that the partition
    must be unaligned on page boundary (fdisk normally aligns the partition to
    63 sectors which will trigger it)
      * install the system on the partitioned disk in domU
    This causes I/O failures in dom0.
    Reference: https://bugzilla.redhat.com/show_bug.cgi?id=223947
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 53b351f972a882ea8b6cdb19602535f1057c884a
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:13 2009 +0100

    dm mpath: flush keventd queue in destructor
    
    The commit fe9cf30eb8186ef267d1868dc9f12f2d0f40835a moves dm table event
    submission from kmultipath queue to kernel kevent queue to avoid a
    deadlock.
    
    There is a possibility of race condition because kevent queue is not flushed
    in the multipath destructor. The scenario is:
    - some event happens and is queued to keventd
    - keventd thread is delayed due to scheuling latency or some other work
    - multipath device is destroyed
    - keventd now attempts to process work_struct that is residing in already
      released memory.
    
    The patch flushes the keventd queue in multipath constructor.
    I've already fixed similar bug in dm-raid1.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>
    Cc: stable at kernel.org

commit a72986c562eeec3f7b992198c168f0f41606fe53
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:13 2009 +0100

    dm raid1: keep retrying alloc if mempool_alloc failed
    
    If the code can't handle allocation failures, use __GFP_NOFAIL so that
    in case of memory pressure the allocator will retry indefinitely and
    won't return NULL which would cause a crash in the function.
    
    This is still not a correct fix, it may cause a classic deadlock when
    memory manager waits for I/O being done and I/O waits for some free memory.
    I/O code shouldn't allocate any memory. But in this case it probably
    doesn't matter much in practice, people usually do not swap on RAID.
    
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit e54f77ddda72781ec1c1696b21aabd6a30cbb7c6
Author: Chandra Seetharaman <sekharan at us.ibm.com>
Date:   Mon Jun 22 10:12:12 2009 +0100

    dm mpath: call activate fn for each path in pg_init
    
    Fixed a problem affecting reinstatement of passive paths.
    
    Before we moved the hardware handler from dm to SCSI, it performed a pg_init
    for a path group and didn't maintain any state about each path in hardware
    handler code.
    
    But in SCSI dh, such state is now maintained, as we want to fail I/O early on a
    path if it is not the active path.
    
    All the hardware handlers have a state now and set to active or some form of
    inactive.  They have prep_fn() which uses this state to fail the I/O without
    it ever being sent to the device.
    
    So in effect when dm-multipath calls scsi_dh_activate(), activate is
    sent to only one path and the "state" of that path is changed appropriately
    to "active" while other paths in the same path group are never changed
    as they never got an "activate".
    
    In order make sure all the paths in a path group gets their state set
    properly when a pg_init happens, we need to call scsi_dh_activate() on
    all paths in a path group.
    
    Doing this at the hardware handler layer is not a good option as we
    want the multipath layer to define the relationship between path and path
    groups and not the hardware handler.
    
    Attached patch sends an "activate" on each path in a path group when a
    path group is switched. It also sends an activate when a path is reinstated.
    
    Signed-off-by: Chandra Seetharaman <sekharan at us.ibm.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit a0cf7ea9549ec60988369f90e5c0f855f08abac9
Author: Hannes Reinecke <hare at suse.de>
Date:   Mon Jun 22 10:12:11 2009 +0100

    dm mpath: change attached scsi_dh
    
    When specifying a different hardware handler via multipath
    features we should be able to override the built-in defaults.
    
    The problem here is the hardware table from scsi_dh is compiled
    in and cannot be changed from userland. The multipath.conf OTOH
    is purely user-defined and, what's more, the user might have a valid
    reason for modifying it.
    (EG EMC Clariion can well be run in PNR mode even though ALUA is
    active, or the user might want to try ALUA on any as-of-yet unknown
    devices)
    
    So _not_ allowing multipath to override the device handler setting
    will just add to the confusion and makes error tracking even more
    difficult.
    
    Signed-off-by: Hannes Reinecke <hare at suse.de>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 4d89b7b4e4726893453d0fb4ddbb5b3e16353994
Author: Milan Broz <mbroz at redhat.com>
Date:   Mon Jun 22 10:12:11 2009 +0100

    dm: sysfs skip output when device is being destroyed
    
    Do not process sysfs attributes when device is being destroyed.
    
    Otherwise code can cause
      BUG_ON(test_bit(DMF_FREEING, &md->flags));
    in dm_put() call.
    
    Cc: stable at kernel.org
    Signed-off-by: Milan Broz <mbroz at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit e094f4f15f5169526c7200b9bde44b900548a81e
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:12:10 2009 +0100

    dm mpath: validate hw_handler argument count
    
    Fix arg count parsing error in hw handlers.
    
    Cc: stable at kernel.org
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 6423f9ea8035138d70bae1a278d3b57b743f8b3e
Author: Clemens Ladisch <clemens at ladisch.de>
Date:   Mon Jun 22 10:01:59 2009 +0200

    sound: seq_midi_event: fix decoding of (N)RPN events
    
    When decoding (N)RPN sequencer events into raw MIDI commands, the
    extra_decode_xrpn() function had accidentally swapped the MSB and LSB
    controller values of both the parameter number and the data value.
    
    Signed-off-by: Clemens Ladisch <clemens at ladisch.de>
    Cc: <stable at kernel.org>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 0e0497c0c017664994819f4602dc07fd95896c52
Author: Mikulas Patocka <mpatocka at redhat.com>
Date:   Mon Jun 22 10:08:02 2009 +0100

    dm mpath: validate table argument count
    
    The parser reads the argument count as a number but doesn't check that
    sufficient arguments are supplied. This command triggers the bug:
    
    dmsetup create mpath --table "0 `blockdev --getsize /dev/mapper/cr0`
        multipath 0 0 2 1 round-robin 1000 0 1 1 /dev/mapper/cr0
        round-robin 0 1 1 /dev/mapper/cr1 1000"
    kernel BUG at drivers/md/dm-mpath.c:530!
    
    Cc: stable at kernel.org
    Signed-off-by: Mikulas Patocka <mpatocka at redhat.com>
    Signed-off-by: Alasdair G Kergon <agk at redhat.com>

commit 8c927b4acf819ed0170bff991bc9eaec4c85deb8
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 10:56:54 2009 +0200

    ALSA: hda - Add digital-mic support to ALC262 auto model
    
    Add the digital-mic support with ALC262 auto model.
    The new ALC262 models have the digital mic at NID 0x12.  This widget
    isn't checked in the current alc262_auto_create_analog_input_ctls()
    since it's under 0x18.  So, just reuse the routine for alc269 to fix
    the behavior.
    
    But, it doesn't suffice: the digital mic is supported only with the
    ADC0, we have to exclude other ADCs when d-mic is detected.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 0169b6b33b2b4d9e66e98afc56272e5fbd350df4
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 10:50:19 2009 +0200

    ALSA: hda - Fix check of input source type for realtek codecs
    
    Fix the check of the input-source type by checking the widget type of
    each capture-source item.  Since some codecs can have both the mixer
    and selector types depending on the ADC, alc_mux_enum_put() needs to
    check each widget.
    
    With this change, spec->capture_style gets unneeded, so it's removed,
    too.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 376b508ffde3b17e105265f89b83bdb044b1c1ae
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 11:03:13 2009 +0200

    ALSA: hda - Add quirk for Sony VAIO Z21MN
    
    It needs model=toshiba-s06 to work with the digital-mic.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>
    Cc: <stable at kernel.org>

commit b7f797cb600fa88de04903be4df3c8a6cb1cb35c
Merge: 99bd0c0fc4b04da54cb311953ef9489931c19c63 0017c869ddcb73069905d09f9e98e68627466237
Author: Ingo Molnar <mingo at elte.hu>
Date:   Mon Jun 22 10:24:43 2009 +0200

    Merge branch 'for-tip' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu into x86/urgent

commit ae14ef68e8e67ca5b8b29f0eb640f7c106617f4e
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 08:16:56 2009 +0200

    ALSA: hda - Get back Input Source for ALC262 toshiba-s06 model
    
    The commit f9e336f65b666b8f1764d17e9b7c21c90748a37e
        ALSA: hda - Unify capture mixer creation in realtek codes
    removed the "Input Source" mixer element creation for toshiba-s06 model
    because it contains a digital-mic input.
    
    This patch take the control back.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>
    Cc: <stable at kernel.org>

commit b8621516cc7dd22fe4ad4c2fd8f7d852a33212df
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 08:00:10 2009 +0200

    ALSA: hda - Fix unsigned comparison in patch_sigmatel.c
    
    Fix the comparison of unsigned int that causes a compile warning below
    by changing to the right signed type:
      patch_sigmatel.c: In function ‘stac92xx_vref_set’:
      patch_sigmatel.c:658: warning: comparison of unsigned expression < 0 is always false
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 115551d98e4c05bb982bd940f08a489fa9b0a4a1
Author: Simon Arlott <simon at fire.lp0.eu>
Date:   Sun Jun 21 19:50:48 2009 +0100

    ALSA: via82xx: add option to disable 500ms delay in snd_via82xx_codec_wait
    
    There's a large 500ms delay in snd_via82xx_codec_wait() that, at least
    on my hardware, appears to be unnecessary. The rest of the init of
    the card works without logging any warnings or errors and both audio
    and mixer settings work.
    
    This adds an "nodelay" parameter to disable this (undocumented in the
    code) large delay improving bootup time by 489-500ms.
    
    [    1.034217] initcall alsa_card_via82xx_init+0x0/0x16 returned 0 after 505757 usecs
    vs.
    [    0.533136] initcall alsa_card_via82xx_init+0x0/0x16 returned 0 after 15915 usecs
    
    Signed-off-by: Simon Arlott <simon at fire.lp0.eu>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit 8bd9bca3c1a214350e2f2f1e2fd493ed24c06f7e
Author: Mariusz Kozlowski <m.kozlowski at tuxland.pl>
Date:   Sun Jun 21 20:26:59 2009 +0200

    sound: fix check for return value in snd_pcm_hw_refine
    
    'params' is a pointer and looking at the code this probably should be a check
    for ioctl return value.
    
    Signed-off-by: Mariusz Kozlowski <m.kozlowski at tuxland.pl>
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit e01698aed04811b9a9c4f8d54b73cb182757063d
Author: David S. Miller <davem at davemloft.net>
Date:   Sun Jun 21 22:48:03 2009 -0700

    ide cmd64x: Remove serialize setting.
    
    This begins to fix regressions reported by Frans Pop on his Ultra-10.
    
    There are still some funnies left that we are investigating.
    
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit f6b24caaf933a466397915a08e30e885a32f905a
Author: Dave Jones <davej at redhat.com>
Date:   Sun Jun 21 22:42:30 2009 -0700

    via-velocity: Fix velocity driver unmapping incorrect size.
    
    When a packet is greater than ETH_ZLEN, we end up assigning the
    boolean result of a comparison to the size we unmap.
    
    Signed-off-by: Dave Jones <davej at redhat.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit a8f4310be59a2e7fc80fba945bcb32b18f4ad54f
Author: Takashi Iwai <tiwai at suse.de>
Date:   Mon Jun 22 07:36:52 2009 +0200

    ALSA: ctxfi - Allow unknown PCI SSIDs
    
    Allow unknown PCI SSIDs for emu20k1 and emu20k2 as "unknown" model.
    Also, add a black-list check in case any device has to be listed
    as "unsupported".  It has a negative value in the pci quirk entry.
    
    Signed-off-by: Takashi Iwai <tiwai at suse.de>

commit be9f1c4f738a715abbd8ea742f3ec60a1ce73f4b
Merge: 8c52da503b7e4cf961807f11824e3258ef9f7f1c fb0f8fbf97e8a25074c81c629500d94cafa9e366
Author: Eric Anholt <eric at anholt.net>
Date:   Sun Jun 21 22:14:55 2009 -0700

    Merge commit 'keithp/drm-intel-next' into drm-intel-next

commit 8c52da503b7e4cf961807f11824e3258ef9f7f1c
Author: Eric Anholt <eric at anholt.net>
Date:   Thu Jun 18 20:22:19 2009 -0700

    drm/i915: Add missing dependency on Intel AGP support.
    
    Users could accidentally enable AGP but not the Intel AGP support, and get
    a DRM that doesn't probe as a result.
    
    Bug #22358.
    
    Signed-off-by: Eric Anholt <eric at anholt.net>

commit 0017c869ddcb73069905d09f9e98e68627466237
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:24 2009 +0900

    x86: ensure percpu lpage doesn't consume too much vmalloc space
    
    On extreme configuration (e.g. 32bit 32-way NUMA machine), lpage
    percpu first chunk allocator can consume too much of vmalloc space.
    Make it fall back to 4k allocator if the consumption goes over 20%.
    
    [ Impact: add sanity check for lpage percpu first chunk allocator ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Reported-by: Jan Beulich <JBeulich at novell.com>
    Cc: Andi Kleen <andi at firstfloor.org>
    Cc: Ingo Molnar <mingo at elte.hu>

commit fa8a7094ba1679b4b9b443e0ac9f5e046c79ee8d
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:24 2009 +0900

    x86: implement percpu_alloc kernel parameter
    
    According to Andi, it isn't clear whether lpage allocator is worth the
    trouble as there are many processors where PMD TLB is far scarcer than
    PTE TLB.  The advantage or disadvantage probably depends on the actual
    size of percpu area and specific processor.  As performance
    degradation due to TLB pressure tends to be highly workload specific
    and subtle, it is difficult to decide which way to go without more
    data.
    
    This patch implements percpu_alloc kernel parameter to allow selecting
    which first chunk allocator to use to ease debugging and testing.
    
    While at it, make sure all the failure paths report why something
    failed to help determining why certain allocator isn't working.  Also,
    kill the "Great future plan" comment which had already been realized
    quite some time ago.
    
    [ Impact: allow explicit percpu first chunk allocator selection ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Reported-by: Jan Beulich <JBeulich at novell.com>
    Cc: Andi Kleen <andi at firstfloor.org>
    Cc: Ingo Molnar <mingo at elte.hu>

commit e59a1bb2fdfb745c685f5b40ffbed126331d3223
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:24 2009 +0900

    x86: fix pageattr handling for lpage percpu allocator and re-enable it
    
    lpage allocator aliases a PMD page for each cpu and returns whatever
    is unused to the page allocator.  When the pageattr of the recycled
    pages are changed, this makes the two aliases point to the overlapping
    regions with different attributes which isn't allowed and known to
    cause subtle data corruption in certain cases.
    
    This can be handled in simliar manner to the x86_64 highmap alias.
    pageattr code should detect if the target pages have PMD alias and
    split the PMD alias and synchronize the attributes.
    
    pcpur allocator is updated to keep the allocated PMD pages map sorted
    in ascending address order and provide pcpu_lpage_remapped() function
    which binary searches the array to determine whether the given address
    is aliased and if so to which address.  pageattr is updated to use
    pcpu_lpage_remapped() to detect the PMD alias and split it up as
    necessary from cpa_process_alias().
    
    Jan Beulich spotted the original problem and incorrect usage of vaddr
    instead of laddr for lookup.
    
    With this, lpage percpu allocator should work correctly.  Re-enable
    it.
    
    [ Impact: fix subtle lpage pageattr bug and re-enable lpage ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Reported-by: Jan Beulich <JBeulich at novell.com>
    Cc: Andi Kleen <andi at firstfloor.org>
    Cc: Ingo Molnar <mingo at elte.hu>

commit 992f4c1c2c1583cef3296ec4bf5205843a9a5f3d
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:24 2009 +0900

    x86: reorganize cpa_process_alias()
    
    Reorganize cpa_process_alias() so that new alias condition can be
    added easily.
    
    Jan Beulich spotted problem in the original cleanup thread which
    incorrectly assumed the two existing conditions were mutially
    exclusive.
    
    [ Impact: code reorganization ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Cc: Jan Beulich <JBeulich at novell.com>
    Cc: Andi Kleen <andi at firstfloor.org>
    Cc: Ingo Molnar <mingo at elte.hu>

commit 0ff2587fd54bd6f66bc6914ada4eb77a7e819a5b
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:24 2009 +0900

    x86: prepare setup_pcpu_lpage() for pageattr fix
    
    Make the following changes in preparation of coming pageattr updates.
    
    * Define and use array of struct pcpul_ent instead of array of
      pointers.  The only difference is ->cpu field which is set but
      unused yet.
    
    * Rename variables according to the above change.
    
    * Rename local variable vm to pcpul_vm and move it out of the
      function.
    
    [ Impact: no functional difference ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Cc: Jan Beulich <JBeulich at novell.com>
    Cc: Andi Kleen <andi at firstfloor.org>
    Cc: Ingo Molnar <mingo at elte.hu>

commit 97c9bf0618cd40b05b4859c1f8a90d8ad97fefb2
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:24 2009 +0900

    x86: rename remap percpu first chunk allocator to lpage
    
    The "remap" allocator remaps large pages to build the first chunk;
    however, the name isn't very good because 4k allocator remaps too and
    the whole point of the remap allocator is using large page mapping.
    The allocator will be generalized and exported outside of x86, rename
    it to lpage before that happens.
    
    percpu_alloc kernel parameter is updated to accept both "remap" and
    "lpage" for lpage allocator.
    
    [ Impact: code cleanup, kernel parameter argument updated ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Cc: Ingo Molnar <mingo at elte.hu>

commit c5806df9232d2a7f554b4839b57cac2e664fc256
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:24 2009 +0900

    x86: fix duplicate free in setup_pcpu_remap() failure path
    
    In the failure path, setup_pcpu_remap() tries to free the area which
    has already been freed to make holes in the large page.  Fix it.
    
    [ Impact: fix duplicate free in failure path ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Cc: Ingo Molnar <mingo at elte.hu>

commit 85ae87c1ad8e18a421e7448a99a42ecda183f29f
Author: Tejun Heo <tj at kernel.org>
Date:   Mon Jun 22 11:56:23 2009 +0900

    percpu: fix too lazy vunmap cache flushing
    
    In pcpu_unmap(), flushing virtual cache on vunmap can't be delayed as
    the page is going to be returned to the page allocator.  Only TLB
    flushing can be put off such that vmalloc code can handle it lazily.
    Fix it.
    
    [ Impact: fix subtle virtual cache flush bug ]
    
    Signed-off-by: Tejun Heo <tj at kernel.org>
    Cc: Nick Piggin <npiggin at suse.de>
    Cc: Ingo Molnar <mingo at elte.hu>

commit 0314db69d7564859890ff75e3f71cb4079b29869
Author: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
Date:   Sat Jun 20 22:16:10 2009 +0000

    mlx4_en: Remove redundant refill code on RX
    
    Our RX rings are always full, there is no need to check whether
    we need to fill them or not. If we fail to allocate a new socket
    buffer, the incoming packet is dropped an the ring remains full.
    
    Signed-off-by: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 7237b400554c9bb5ba0091b5e39f4620f3dd5637
Author: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
Date:   Sat Jun 20 22:16:02 2009 +0000

    mlx4_en: Removed redundant check on lso header size
    
    This check that verifies that the LSO header along with control
    segment and first data segment do not cross 128 bytes is no longer
    required.
    
    Signed-off-by: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 3c05f5ef7c09291e51ae327e854bf43cb8e55a55
Author: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
Date:   Sat Jun 20 22:15:52 2009 +0000

    mlx4_en: Cancel port_up check in transmit function
    
    When closing the port, we stop all transmit queues under the transmit
    lock. It ensures that we will not attempt to transmit new packets after
    the physical port was closed.
    
    Signed-off-by: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit a11faac79fdbf771ed1ab310f6ef44b389423fe7
Author: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
Date:   Sat Jun 20 22:15:46 2009 +0000

    mlx4_en: using stop/start_all_queues
    
    After we moved to be a multi queue device, need to stop/start
    all of our transmit queues.
    
    Signed-off-by: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit d4ddbaa6a9a09c019fc1a7fed5a0fa403ac437b9
Author: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
Date:   Sat Jun 20 22:15:39 2009 +0000

    mlx4_en: Removed redundant skb->len check
    
    We don't need this check in the transmit function
    
    Signed-off-by: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit 7e23091347664bf357ca651545c93e99fafc7b40
Author: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
Date:   Sat Jun 20 22:15:31 2009 +0000

    mlx4_en: Counting all the dropped packets on the TX side
    
    Reporting the counter's value through 'ethtool -S'
    
    Signed-off-by: Yevgeny Petrilin <yevgenyp at mellanox.co.il>
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit dc1972d02747d2170fb1d78d114801f5ecb27506
Author: Michael Trimarchi <michael at evidence.eu.com>
Date:   Fri Jun 19 14:50:02 2009 +0200

    i2c: Fix stuck transaction on cpm-i2c driver
    
    When a process tries to read/write a disconnected i2c device, it receives a signal (e.g. ctrl-c) and the kernel gets stuck.
    
    BUG: soft lockup - CPU#0 stuck for 61s! [I2CEEpromTest:392]
    NIP: c01628f8 LR: c01628f0 CTR: c00177cc
    REGS: c39abd70 TRAP: 0901   Not tainted  (2.6.25.7-alcore)
    MSR: 00009032 <EE,ME,IR,DR>  CR: 42042048  XER: 20000000
    TASK = c3889bd0[392] 'I2CEEpromTest' THREAD: c39aa000
    GPR00: 00009000 c39abe20 c3889bd0 c39075c8 c39abe28 00000001 00000000 00000001
    GPR08: c3889bd0 c39075c8 00009032 c39abe34 00002437
    NIP [c01628f8] cpm_i2c_xfer+0x5fc/0x6d0
    LR [c01628f0] cpm_i2c_xfer+0x5f4/0x6d0
    Call Trace:
    [c39abe20] [c0162924] cpm_i2c_xfer+0x628/0x6d0 (unreliable)
    [c39abe90] [c015f6a0] i2c_transfer+0x88/0xb4
    [c39abeb0] [c0160164] i2c_master_recv+0x48/0x6c
    [c39abed0] [c01618dc] i2cdev_read+0x50/0xe4
    [c39abef0] [c0068b24] vfs_read+0xc4/0x108
    [c39abf10] [c0068f4c] sys_read+0x4c/0x90
    [c39abf40] [c000d348] ret_from_syscall+0x0/0x38
    Instruction dump:
    3bc00064 92610010 3bf201c8 92810014 3b61
    
    This happen because though the wait_event_interruptible_timeout takes the
    signals into account, the driver does not handle them.
    We propose to change the wait_event_interruptible_timeout with
    wait_event_timeout, leaving the signals to be handled in other points
    on the upper layers.
    
    Signed-off-by: Bruno Morelli <bruno at evidence.eu.com>
    Signed-off-by: Michael Trimarchi <michael at evidence.eu.com>
    Acked-by: Jochen Friedrich <jochen at scram.de>
    [ben-linux at fluff.org: fix title for patch]
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit ff0f242626313f3544254cb882039794b7b70e4b
Author: Tony Lindgren <tony at atomide.com>
Date:   Wed Jun 17 03:20:21 2009 -0700

    i2c-omap: Fix build breaking typo cpu_is_omap_2430
    
    Hi Ben,
    
    Can you please queue this fix?
    
    Thanks,
    
    Tony
    
    >From ffe2b2cdf6283770b70a197e3748c6b40a1006be Mon Sep 17 00:00:00 2001
    From: Tony Lindgren <tony at atomide.com>
    Date: Wed, 17 Jun 2009 13:14:23 +0300
    Subject: [PATCH] i2c-omap: Fix build breaking typo in cpu_is_omap_2430
    
    Commit 84bf2c86 introduced a typo, it should be cpu_is_omap2430
    instead. The typo was probably caused by a mismerge.
    
    Without this patch all omaps fail to build with:
    error: implicit declaration of function 'cpu_is_omap_2430'
    
    Signed-off-by: Tony Lindgren <tony at atomide.com>
    Signed-off-by: Ben Dooks <ben-linux at fluff.org>

commit 920d44ed965b1fb842ae65fad1a51fc7570e1181
Author: David S. Miller <davem at davemloft.net>
Date:   Sun Jun 21 16:11:33 2009 -0700

    ide: Take over as maintainer.
    
    Signed-off-by: David S. Miller <davem at davemloft.net>

commit f234012f52a37e48f2330e1ca2df69800e797c3b
Merge: 00d94a6a5e3d6a44818e2911a4d606e28e29fecb 11a2f1b78a43d0c2bd026d79b952742c7588f529
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 21 13:14:22 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:
      sdhci: remove needless double parenthesis
      sdhci: Specific quirk vor VIA SDHCI controller in VX855ES
      s3cmci: fix dma configuration call
      mmc: Add new via-sdmmc host controller driver
      sdhci: Add support for hosts that are only capable of 1-bit transfers
      MAINTAINERS: add myself as atmel-mci maintainer (sd/mmc interface)
      sdhci: Add SDHCI_QUIRK_NO_MULTIBLOCK quirk
      sdhci: Add better ADMA error reporting
      sdhci-s3c: Samsung S3C based SDHCI controller glue

commit 00d94a6a5e3d6a44818e2911a4d606e28e29fecb
Merge: 8b12e2505ad8c5010922e45f896d908fd1436709 b6f34d44cb341ad32f08717d1a2c418e6053a031
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 21 13:14:07 2009 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
      crypto: aes-ni - Remove CRYPTO_TFM_REQ_MAY_SLEEP from fpu template
      crypto: aes-ni - Do not sleep when using the FPU
      crypto: aes-ni - Fix cbc mode IV saving
      crypto: padlock-aes - work around Nano CPU errata in CBC mode
      crypto: padlock-aes - work around Nano CPU errata in ECB mode

commit 8b12e2505ad8c5010922e45f896d908fd1436709
Merge: 413318444fd5351f9858b9deb4e8ecaf8898ee05 00540e5d54be972a94a3b2ce6da8621bebe731a2
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 21 13:13:53 2009 -0700

    Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      lockdep: Select frame pointers on x86
      dma-debug: be more careful when building reference entries
      dma-debug: check for sg_call_ents in best-fit algorithm too

commit 413318444fd5351f9858b9deb4e8ecaf8898ee05
Merge: d06063cc221fdefcab86589e79ddfdb7c0e14b63 47166281d2dc9daf7da9a5ad88491ae94366e852
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Sun Jun 21 13:13:08 2009 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
      ALSA: hda - Add model=6530g option
      ALSA: hda - Acer Inspire 6530G model for Realtek ALC888
      ALSA: snd_usb_caiaq: fix legacy input streaming
      ASoC: Kill BUS_ID_SIZE
      ALSA: HDA - Correct trivial typos in comments.
      ALSA: HDA - Name-fixes in code (tagra/targa)
      ALSA: HDA - Add pci-quirk for MSI MS-7350 motherboard.
      ALSA: hda - Fix memory leak at codec creation

commit d06063cc221fdefcab86589e79ddfdb7c0e14b63
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Fri Apr 10 09:01:23 2009 -0700

    Move FAULT_FLAG_xyz into handle_mm_fault() callers
    
    This allows the callers to now pass down the full set of FAULT_FLAG_xyz
    flags to handle_mm_fault().  All callers have been (mechanically)
    converted to the new calling convention, there's almost certainly room
    for architectures to clean up their code and then add FAULT_FLAG_RETRY
    when that support is added.
    
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 30c9f3a9fae79517bca595826a19c6855fbb6d32
Author: Linus Torvalds <torvalds at linux-foundation.org>
Date:   Fri Apr 10 08:43:11 2009 -0700

    Remove internal use of 'write_access' in mm/memory.c
    
    The fault handling routines really want more fine-grained flags than a
    single "was it a write fault" boolean - the callers will want to set
    flags like "you can return a retry error" etc.
    
    And that's actually how the VM works internally, but right now the
    top-level fault handling functions in mm/memory.c all pass just the
    'write_access' boolean around.
    
    This switches them over to pass around the FAULT_FLAG_xyzzy 'flags'
    variable instead.  The 'write_access' calling convention still exists
    for the exported 'handle_mm_fault()' function, but that is next.
    
    Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>

commit 232086b19964d0e13359d30d74b11ca31b0751cb
Author: Johannes Weiner <hannes at cmpxchg.org>
Date:   Sat Jun 20 02:23:29 2009 +0200

    ipc: unbreak 32-bit shmctl/semctl/msgctl
    
    31a985f "ipc: use __ARCH_WANT_IPC_PARSE_VERSION in ipc/util.h" would
    choose the implementation of ipc_parse_version() based on a symbol
    defined in <asm/unistd.h>.
    
    But it failed to also include this header and thus broke
    IPC_64-passing 32-bit userspace because the flag wasn't masked out
    properly anymore and the command not understood.
    
    Include <linux/unistd.h> to give the architecture a chance to ask for
    the no-no-op ipc_parse_version().
    
    Signed-off-by: Johannes Weiner <