]> Git Repo - linux.git/log
linux.git
12 years agoipv6: release reference of ip6_null_entry's dst entry in __ip6_del_rt
Gao feng [Wed, 19 Sep 2012 19:25:34 +0000 (19:25 +0000)]
ipv6: release reference of ip6_null_entry's dst entry in __ip6_del_rt

as we hold dst_entry before we call __ip6_del_rt,
so we should alse call dst_release not only return
-ENOENT when the rt6_info is ip6_null_entry.

and we already hold the dst entry, so I think it's
safe to call dst_release out of the write-read lock.

Signed-off-by: Gao feng <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agoRemove noisy printks from llcp_sock_connect
Dave Jones [Thu, 4 Oct 2012 09:51:11 +0000 (09:51 +0000)]
Remove noisy printks from llcp_sock_connect

Validation of userspace input shouldn't trigger dmesg spamming.

Signed-off-by: Dave Jones <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agoMerge branch 'fixes-for-3.7' of git://gitorious.org/linux-can/linux-can
David S. Miller [Thu, 4 Oct 2012 19:56:19 +0000 (15:56 -0400)]
Merge branch 'fixes-for-3.7' of git://gitorious.org/linux-can/linux-can

Marc Kleine-Budde says:

====================
here are three patches for the v3.7 release cycle. Two patches by Peter Senna
Tschudin which fix the return values in the error handling path of the sja1000
peak pci and pcmcia driver. And one patch by myself that fixes a compile
breakage of the mpc5xxx_can mscan driver due to a section conflict.
====================

Signed-off-by: David S. Miller <[email protected]>
12 years agotipc: prevent dropped connections due to rcvbuf overflow
Erik Hugne [Thu, 4 Oct 2012 05:00:43 +0000 (05:00 +0000)]
tipc: prevent dropped connections due to rcvbuf overflow

When large buffers are sent over connected TIPC sockets, it
is likely that the sk_backlog will be filled up on the
receiver side, but the TIPC flow control mechanism is happily
unaware of this since that is based on message count.

The sender will receive a TIPC_ERR_OVERLOAD message when this occurs
and drop it's side of the connection, leaving it stale on
the receiver end.

By increasing the sk_rcvbuf to a 'worst case' value, we avoid the
overload caused by a full backlog queue and the flow control
will work properly.

This worst case value is the max TIPC message size times
the flow control window, multiplied by two because a sender
will transmit up to double the window size before a port is marked
congested.
We multiply this by 2 to account for the sk_buff and other overheads.

Signed-off-by: Erik Hugne <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agosilence some noisy printks in irda
Dave Jones [Thu, 4 Oct 2012 03:36:13 +0000 (03:36 +0000)]
silence some noisy printks in irda

Fuzzing causes these printks to spew constantly.
Changing them to DEBUG statements is consistent with other usage in the file,
and makes them disappear when CONFIG_IRDA_DEBUG is disabled.

Signed-off-by: Dave Jones <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agoteam: set qdisc_tx_busylock to avoid LOCKDEP splat
Eric Dumazet [Wed, 3 Oct 2012 23:18:39 +0000 (23:18 +0000)]
team: set qdisc_tx_busylock to avoid LOCKDEP splat

If a qdisc is installed on a team device, its possible to get
a lockdep splat under stress, because nested dev_queue_xmit() can
lock busylock a second time (on a different device, so its a false
positive)

Avoid this problem using a distinct lock_class_key for team
devices.

Signed-off-by: Eric Dumazet <[email protected]>
Cc: Jiri Pirko <[email protected]>
Acked-by: Jiri Pirko <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agobonding: set qdisc_tx_busylock to avoid LOCKDEP splat
Eric Dumazet [Wed, 3 Oct 2012 23:05:26 +0000 (23:05 +0000)]
bonding: set qdisc_tx_busylock to avoid LOCKDEP splat

If a qdisc is installed on a bonding device, its possible to get
following lockdep splat under stress :

 =============================================
 [ INFO: possible recursive locking detected ]
 3.6.0+ #211 Not tainted
 ---------------------------------------------
 ping/4876 is trying to acquire lock:
  (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+.-...}, at: [<ffffffff8157a191>] dev_queue_xmit+0xe1/0x830

 but task is already holding lock:
  (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+.-...}, at: [<ffffffff8157a191>] dev_queue_xmit+0xe1/0x830

 other info that might help us debug this:
  Possible unsafe locking scenario:

        CPU0
        ----
   lock(dev->qdisc_tx_busylock ?: &qdisc_tx_busylock);
   lock(dev->qdisc_tx_busylock ?: &qdisc_tx_busylock);

  *** DEADLOCK ***

  May be due to missing lock nesting notation

 6 locks held by ping/4876:
  #0:  (sk_lock-AF_INET){+.+.+.}, at: [<ffffffff815e5030>] raw_sendmsg+0x600/0xc30
  #1:  (rcu_read_lock_bh){.+....}, at: [<ffffffff815ba4bd>] ip_finish_output+0x12d/0x870
  #2:  (rcu_read_lock_bh){.+....}, at: [<ffffffff8157a0b0>] dev_queue_xmit+0x0/0x830
  #3:  (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+.-...}, at: [<ffffffff8157a191>] dev_queue_xmit+0xe1/0x830
  #4:  (&bond->lock){++.?..}, at: [<ffffffffa02128c1>] bond_start_xmit+0x31/0x4b0 [bonding]
  #5:  (rcu_read_lock_bh){.+....}, at: [<ffffffff8157a0b0>] dev_queue_xmit+0x0/0x830

 stack backtrace:
 Pid: 4876, comm: ping Not tainted 3.6.0+ #211
 Call Trace:
  [<ffffffff810a0145>] __lock_acquire+0x715/0x1b80
  [<ffffffff810a256b>] ? mark_held_locks+0x9b/0x100
  [<ffffffff810a1bf2>] lock_acquire+0x92/0x1d0
  [<ffffffff8157a191>] ? dev_queue_xmit+0xe1/0x830
  [<ffffffff81726b7c>] _raw_spin_lock+0x3c/0x50
  [<ffffffff8157a191>] ? dev_queue_xmit+0xe1/0x830
  [<ffffffff8106264d>] ? rcu_read_lock_bh_held+0x5d/0x90
  [<ffffffff8157a191>] dev_queue_xmit+0xe1/0x830
  [<ffffffff8157a0b0>] ? netdev_pick_tx+0x570/0x570
  [<ffffffffa0212a6a>] bond_start_xmit+0x1da/0x4b0 [bonding]
  [<ffffffff815796d0>] dev_hard_start_xmit+0x240/0x6b0
  [<ffffffff81597c6e>] sch_direct_xmit+0xfe/0x2a0
  [<ffffffff8157a249>] dev_queue_xmit+0x199/0x830
  [<ffffffff8157a0b0>] ? netdev_pick_tx+0x570/0x570
  [<ffffffff815ba96f>] ip_finish_output+0x5df/0x870
  [<ffffffff815ba4bd>] ? ip_finish_output+0x12d/0x870
  [<ffffffff815bb964>] ip_output+0x54/0xf0
  [<ffffffff815bad48>] ip_local_out+0x28/0x90
  [<ffffffff815bc444>] ip_send_skb+0x14/0x50
  [<ffffffff815bc4b2>] ip_push_pending_frames+0x32/0x40
  [<ffffffff815e536a>] raw_sendmsg+0x93a/0xc30
  [<ffffffff8128d570>] ? selinux_file_send_sigiotask+0x1f0/0x1f0
  [<ffffffff8109ddb4>] ? __lock_is_held+0x54/0x80
  [<ffffffff815f6730>] ? inet_recvmsg+0x220/0x220
  [<ffffffff8109ddb4>] ? __lock_is_held+0x54/0x80
  [<ffffffff815f6855>] inet_sendmsg+0x125/0x240
  [<ffffffff815f6730>] ? inet_recvmsg+0x220/0x220
  [<ffffffff8155cddb>] sock_sendmsg+0xab/0xe0
  [<ffffffff810a1650>] ? lock_release_non_nested+0xa0/0x2e0
  [<ffffffff810a1650>] ? lock_release_non_nested+0xa0/0x2e0
  [<ffffffff8155d18c>] __sys_sendmsg+0x37c/0x390
  [<ffffffff81195b2a>] ? fsnotify+0x2ca/0x7e0
  [<ffffffff811958e8>] ? fsnotify+0x88/0x7e0
  [<ffffffff81361f36>] ? put_ldisc+0x56/0xd0
  [<ffffffff8116f98a>] ? fget_light+0x3da/0x510
  [<ffffffff8155f6c4>] sys_sendmsg+0x44/0x80
  [<ffffffff8172fc22>] system_call_fastpath+0x16/0x1b

Avoid this problem using a distinct lock_class_key for bonding
devices.

Signed-off-by: Eric Dumazet <[email protected]>
Cc: Jay Vosburgh <[email protected]>
Cc: Andy Gospodarek <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agosctp: check src addr when processing SACK to update transport state
Nicolas Dichtel [Wed, 3 Oct 2012 05:43:22 +0000 (05:43 +0000)]
sctp: check src addr when processing SACK to update transport state

Suppose we have an SCTP connection with two paths. After connection is
established, path1 is not available, thus this path is marked as inactive. Then
traffic goes through path2, but for some reasons packets are delayed (after
rto.max). Because packets are delayed, the retransmit mechanism will switch
again to path1. At this time, we receive a delayed SACK from path2. When we
update the state of the path in sctp_check_transmitted(), we do not take into
account the source address of the SACK, hence we update the wrong path.

Signed-off-by: Nicolas Dichtel <[email protected]>
Acked-by: Vlad Yasevich <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agosctp: fix a typo in prototype of __sctp_rcv_lookup()
Nicolas Dichtel [Wed, 3 Oct 2012 05:43:21 +0000 (05:43 +0000)]
sctp: fix a typo in prototype of __sctp_rcv_lookup()

Just to avoid confusion when people only reads this prototype.

Signed-off-by: Nicolas Dichtel <[email protected]>
Acked-by: Vlad Yasevich <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net
David S. Miller [Thu, 4 Oct 2012 19:49:16 +0000 (15:49 -0400)]
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net

Jeff Kirsher says:

====================
This series contains fixes/updates to ixgbe only.  There are three
PTP fixes, polling loop fix and the addition of a device id (X540-AT1).
====================

Signed-off-by: David S. Miller <[email protected]>
12 years agoipv4: add a fib_type to fib_info
Eric Dumazet [Thu, 4 Oct 2012 01:25:26 +0000 (01:25 +0000)]
ipv4: add a fib_type to fib_info

commit d2d68ba9fe8 (ipv4: Cache input routes in fib_info nexthops.)
introduced a regression for forwarding.

This was hard to reproduce but the symptom was that packets were
delivered to local host instead of being forwarded.

David suggested to add fib_type to fib_info so that we dont
inadvertently share same fib_info for different purposes.

With help from Julian Anastasov who provided very helpful
hints, reproduced here :

<quote>
        Can it be a problem related to fib_info reuse
from different routes. For example, when local IP address
is created for subnet we have:

broadcast 192.168.0.255 dev DEV  proto kernel  scope link  src
192.168.0.1
192.168.0.0/24 dev DEV  proto kernel  scope link  src 192.168.0.1
local 192.168.0.1 dev DEV  proto kernel  scope host  src 192.168.0.1

        The "dev DEV  proto kernel  scope link  src 192.168.0.1" is
a reused fib_info structure where we put cached routes.
The result can be same fib_info for 192.168.0.255 and
192.168.0.0/24. RTN_BROADCAST is cached only for input
routes. Incoming broadcast to 192.168.0.255 can be cached
and can cause problems for traffic forwarded to 192.168.0.0/24.
So, this patch should solve the problem because it
separates the broadcast from unicast traffic.

        And the ip_route_input_slow caching will work for
local and broadcast input routes (above routes 1 and 3) just
because they differ in scope and use different fib_info.

</quote>

Many thanks to Chris Clayton for his patience and help.

Reported-by: Chris Clayton <[email protected]>
Bisected-by: Chris Clayton <[email protected]>
Reported-by: Dave Jones <[email protected]>
Signed-off-by: Eric Dumazet <[email protected]>
Cc: Julian Anastasov <[email protected]>
Tested-by: Chris Clayton <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agocan: mpc5xxx_can: fix section type conflict
Marc Kleine-Budde [Thu, 4 Oct 2012 14:22:13 +0000 (16:22 +0200)]
can: mpc5xxx_can: fix section type conflict

Since commit:
    6d99c4c can: mpc5xxx_can: make data used as *of_device_id.data const

both "struct mpc5xxx_can_data mpc5200_can_data" and "mpc5121_can_data" are
marked as "const" but also as "__devinitdata". This leads to the following
compile error:

drivers/net/can/mscan/mpc5xxx_can.c:383: error: mpc5200_can_data causes a section type conflict
drivers/net/can/mscan/mpc5xxx_can.c:383: error: mpc5200_can_data causes a section type conflict
drivers/net/can/mscan/mpc5xxx_can.c:388: error: mpc5121_can_data causes a section type conflict
drivers/net/can/mscan/mpc5xxx_can.c:388: error: mpc5121_can_data causes a section type conflict

This patch changes the "__devinitdata" to "__devinitconst" and marks the
"struct of_device_id mpc5xxx_can_table" as "const" and "__devinitconst", too.

Acked-by: Uwe Kleine-König <[email protected]>
Acked-by: Arnd Bergmann <[email protected]>
Signed-off-by: Marc Kleine-Budde <[email protected]>
12 years agocan: peak_pcmcia: fix error return code
Peter Senna Tschudin [Wed, 3 Oct 2012 16:17:53 +0000 (18:17 +0200)]
can: peak_pcmcia: fix error return code

Convert a nonnegative error return code to a negative one, as returned
elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}
// </smpl>

Signed-off-by: Peter Senna Tschudin <[email protected]>
Signed-off-by: Marc Kleine-Budde <[email protected]>
12 years agocan: peak_pci: fix error return code
Peter Senna Tschudin [Wed, 3 Oct 2012 16:17:54 +0000 (18:17 +0200)]
can: peak_pci: fix error return code

Convert a nonnegative error return code to a negative one, as returned
elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}
// </smpl>

Signed-off-by: Peter Senna Tschudin <[email protected]>
Signed-off-by: Marc Kleine-Budde <[email protected]>
12 years agoUAPI: (Scripted) Disintegrate include/drm
David Howells [Thu, 4 Oct 2012 17:21:50 +0000 (18:21 +0100)]
UAPI: (Scripted) Disintegrate include/drm

Signed-off-by: David Howells <[email protected]>
Acked-by: Arnd Bergmann <[email protected]>
Acked-by: Thomas Gleixner <[email protected]>
Acked-by: Michael Kerrisk <[email protected]>
Acked-by: Paul E. McKenney <[email protected]>
Acked-by: Dave Jones <[email protected]>
12 years agoUAPI: Fix conditional header installation handling (notably kvm_para.h on m68k)
David Howells [Thu, 4 Oct 2012 17:16:47 +0000 (18:16 +0100)]
UAPI: Fix conditional header installation handling (notably kvm_para.h on m68k)

The m68k arch doesn't have a kvm_para.h (unlike most or maybe all other
arches), but there is one in asm-generic.  This means that:

ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/asm/kvm_para.h \
  $(srctree)/include/asm-$(SRCARCH)/kvm_para.h \
  $(INSTALL_HDR_PATH)/include/asm-*/kvm_para.h),)
header-y += kvm_para.h
endif

gets it wrong because it is invoked twice during the header installation - and
on the second occasion, asm-generic/kvm_para.h has been installed in usr/,
thus triggering a attempt to install asm-m68k/kvm_para.h which will fail.

There are three headers with this sort of conditional logic: a.out.h, kvm.h
and kvm_para.h.  For all three of them, change the logic to be something like:

ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/include/asm/kvm_para.h \
  $(srctree)/arch/$(SRCARCH)/include/uapi/asm/kvm_para.h),)

which finds the header in only the two places it should be found, and doesn't
get incorrectly triggered by the installation of asm-generic's version.

Signed-off-by: David Howells <[email protected]>
12 years agoRevert "microblaze_mmu_v2: Update signal returning address"
Michal Simek [Mon, 23 May 2011 09:38:19 +0000 (11:38 +0200)]
Revert "microblaze_mmu_v2: Update signal returning address"

This reverts commit 8b28626a6b1522b39f75d0bf80d5dec23c931f5a.

Offset -8 is wrong because when it is applied then one instruction
before brki r14, 8 is called again when we return.
Offset -4 is correct and brki instruction is called again.

This change came from ancient MMU kernel.

Signed-off-by: Michal Simek <[email protected]>
12 years agodrm/i915: Fix GT_MODE default value
Ben Widawsky [Thu, 4 Oct 2012 02:34:24 +0000 (19:34 -0700)]
drm/i915: Fix GT_MODE default value

I can't even find how I figured this might be needed anymore. But sure
enough, the value I'm reading back on platforms doesn't match what the
docs recommends.

It seemed to fix Chris' GT1 in limited testing as well.

Tested-by: Chris Wilson <[email protected]>
Cc: [email protected]
Signed-off-by: Ben Widawsky <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
12 years agoMerge remote-tracking branch 'c6x/for-linux-next' into uapi-prep
David Howells [Thu, 4 Oct 2012 16:37:01 +0000 (17:37 +0100)]
Merge remote-tracking branch 'c6x/for-linux-next' into uapi-prep

Avoid later problems with c6x's asm/signal.h lacking __KERNEL__ guards.

Signed-off-by: David Howells <[email protected]>
12 years agoMerge tag 'kvm-3.7-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm
Linus Torvalds [Thu, 4 Oct 2012 16:30:33 +0000 (09:30 -0700)]
Merge tag 'kvm-3.7-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull KVM updates from Avi Kivity:
 "Highlights of the changes for this release include support for vfio
  level triggered interrupts, improved big real mode support on older
  Intels, a streamlines guest page table walker, guest APIC speedups,
  PIO optimizations, better overcommit handling, and read-only memory."

* tag 'kvm-3.7-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (138 commits)
  KVM: s390: Fix vcpu_load handling in interrupt code
  KVM: x86: Fix guest debug across vcpu INIT reset
  KVM: Add resampling irqfds for level triggered interrupts
  KVM: optimize apic interrupt delivery
  KVM: MMU: Eliminate pointless temporary 'ac'
  KVM: MMU: Avoid access/dirty update loop if all is well
  KVM: MMU: Eliminate eperm temporary
  KVM: MMU: Optimize is_last_gpte()
  KVM: MMU: Simplify walk_addr_generic() loop
  KVM: MMU: Optimize pte permission checks
  KVM: MMU: Update accessed and dirty bits after guest pagetable walk
  KVM: MMU: Move gpte_access() out of paging_tmpl.h
  KVM: MMU: Optimize gpte_access() slightly
  KVM: MMU: Push clean gpte write protection out of gpte_access()
  KVM: clarify kvmclock documentation
  KVM: make processes waiting on vcpu mutex killable
  KVM: SVM: Make use of asm.h
  KVM: VMX: Make use of asm.h
  KVM: VMX: Make lto-friendly
  KVM: x86: lapic: Clean up find_highest_vector() and count_vectors()
  ...

Conflicts:
arch/s390/include/asm/processor.h
arch/x86/kvm/i8259.c

12 years agoc6x: remove c6x signal.h
Mark Salter [Thu, 4 Oct 2012 16:22:08 +0000 (12:22 -0400)]
c6x: remove c6x signal.h

The c6x signal.h includes the asm-generic version and provides
a couple of extern declarations. David Howells pointed out that
the externs needed to be protected by ifdef __KERNEL__. As it
turns out, the externs aren't really needed since the functions
are only called from asm code. So this patch gets rid of the
c6x signal.h and uses just the asm-generic version.

Signed-off-by: Mark Salter <[email protected]>
12 years agofirmware: use 'kernel_read()' to read firmware into kernel buffer
Linus Torvalds [Thu, 4 Oct 2012 16:19:02 +0000 (09:19 -0700)]
firmware: use 'kernel_read()' to read firmware into kernel buffer

Fengguang correctly points out that the firmware reading should not use
vfs_read(), since the buffer is in kernel space.

The vfs_read() just happened to work for kernel threads, but sparse
warns about the incorrect address spaces, and it's definitely incorrect
and could fail for other users of the firmware loading.

Reported-by: Fengguang Wu <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
12 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
Linus Torvalds [Thu, 4 Oct 2012 16:14:01 +0000 (09:14 -0700)]
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs

Pull ext3 & udf fixes from Jan Kara:
 "Shortlog pretty much says it all.

  The interesting bits are UDF support for direct IO and ext3 fix for a
  long standing oops in data=journal mode."

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
  jbd: Fix assertion failure in commit code due to lacking transaction credits
  UDF: Add support for O_DIRECT
  ext3: Replace 0 with NULL for pointer in super.c file
  udf: add writepages support for udf
  ext3: don't clear orphan list on ro mount with errors
  reiserfs: Make reiserfs_xattr_handlers static

12 years agoMerge tag 'remoteproc-for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad...
Linus Torvalds [Thu, 4 Oct 2012 16:11:57 +0000 (09:11 -0700)]
Merge tag 'remoteproc-for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc

Pull remoteproc update from Ohad Ben-Cohen:

 - Remoteproc Recovery - by Fernando Guzman Lugo

   When a remote processor crash is detected, this mechanism will remove
   all virtio children devices, wait until their drivers let go, hard
   reset the remote processor and reload the firmware (resulting in the
   relevant virtio children devices re-added).  Essentially the entire
   software stack is reset, together with the relevant hardware, so
   users don't have to reset the entire phone.

 - STE Modem driver is added - by Sjur Brændeland

 - OMAP DSP boot address support is added - by Juan Gutierrez

 - A handful of fixes/cleanups - Sjur Brændeland, Dan Carpenter, Emil
   Goode

* tag 'remoteproc-for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/remoteproc:
  remoteproc: Fix use of format specifyer
  remoteproc: fix a potential NULL-dereference on cleanup
  remoteproc: select VIRTIO to avoid build breakage
  remoteproc: return -EFAULT on copy_from_user failure
  remoteproc: snprintf() can return more than was printed
  remoteproc: Add STE modem driver
  remtoteproc: maintain max notifyid
  remoteproc: create a 'recovery' debugfs entry
  remoteproc: add actual recovery implementation
  remoteproc: add rproc_report_crash function to notify rproc crashes
  remoteproc: Add dependency to HAS_DMA
  remoteproc/omap: set bootaddr support

12 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Linus Torvalds [Thu, 4 Oct 2012 16:06:34 +0000 (09:06 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

Pull crypto update from Herbert Xu:
 - Optimised AES/SHA1 for ARM.
 - IPsec ESN support in talitos and caam.
 - x86_64/avx implementation of cast5/cast6.
 - Add/use multi-algorithm registration helpers where possible.
 - Added IBM Power7+ in-Nest support.
 - Misc fixes.

Fix up trivial conflicts in crypto/Kconfig due to the sparc64 crypto
config options being added next to the new ARM ones.

[ Side note: cut-and-paste duplicate help texts make those conflicts
  harder to read than necessary, thanks to git being smart about
  minimizing conflicts and maximizing the common parts... ]

* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (71 commits)
  crypto: x86/glue_helper - fix storing of new IV in CBC encryption
  crypto: cast5/avx - fix storing of new IV in CBC encryption
  crypto: tcrypt - add missing tests for camellia and ghash
  crypto: testmgr - make test_aead also test 'dst != src' code paths
  crypto: testmgr - make test_skcipher also test 'dst != src' code paths
  crypto: testmgr - add test vectors for CTR mode IV increasement
  crypto: testmgr - add test vectors for partial ctr(cast5) and ctr(cast6)
  crypto: testmgr - allow non-multi page and multi page skcipher tests from same test template
  crypto: caam - increase TRNG clocks per sample
  crypto, tcrypt: remove local_bh_disable/enable() around local_irq_disable/enable()
  crypto: tegra-aes - fix error return code
  crypto: crypto4xx - fix error return code
  crypto: hifn_795x - fix error return code
  crypto: ux500 - fix error return code
  crypto: caam - fix error IDs for SEC v5.x RNG4
  hwrng: mxc-rnga - Access data via structure
  hwrng: mxc-rnga - Adapt clocks to new i.mx clock framework
  crypto: caam - add IPsec ESN support
  crypto: 842 - remove .cra_list initialization
  Revert "[CRYPTO] cast6: inline bloat--"
  ...

12 years agomicroblaze: Added more support for PCI
John Linn [Wed, 24 Feb 2010 19:55:02 +0000 (12:55 -0700)]
microblaze: Added more support for PCI

In order to use an off the shelf nic, like the intel pro card,
changes are needed to support pci dma interfaces and other
small changes.

Signed-off-by: John Linn <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Prefer to use pr_XXX instead of printk(KERN_XX)
Michal Simek [Thu, 4 Oct 2012 12:24:58 +0000 (14:24 +0200)]
microblaze: Prefer to use pr_XXX instead of printk(KERN_XX)

Fix reset.c, timer.c, setup.c file.

Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Fix bug with passing command line
Michal Simek [Thu, 16 Aug 2012 13:53:35 +0000 (15:53 +0200)]
microblaze: Fix bug with passing command line

When u-boot passes control over to Linux it places the Linux command
line between to the end of __init_end. When space between
__init_end and __bss_start is not COMMAND_LINE_SIZE then
the part of cmdline can be lost.
In extreme case if __init_end == __bss_start u-boot can't pass
any cmdline to Linux kernel.

This patch fix this issue by copying cmd line directly to
cmd_line char array which is placed in data section.

Reported-by: David Mc Andrew <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Remove PAGE properties duplication
Michal Simek [Tue, 31 Jul 2012 10:03:20 +0000 (12:03 +0200)]
microblaze: Remove PAGE properties duplication

HWEXEC and HWWRITE is define above. Remove them.

Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Remove additional andi which has been already done
Michal Simek [Wed, 1 Aug 2012 08:09:28 +0000 (10:09 +0200)]
microblaze: Remove additional andi which has been already done

Remove one additional step.

Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Use predefined macro for ESR_DIZ
Michal Simek [Tue, 31 Jul 2012 10:01:00 +0000 (12:01 +0200)]
microblaze: Use predefined macro for ESR_DIZ

Just use macro instead of hardcoded value.

Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Support 4k/16k/64k pages
Michal Simek [Wed, 1 Aug 2012 08:29:28 +0000 (10:29 +0200)]
microblaze: Support 4k/16k/64k pages

Add support for page size which is supported by MMU.
Remove 8k and 32k page size because they are not supported
by MMU.

Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Do not used hardcoded value in exception handler
Michal Simek [Tue, 31 Jul 2012 09:30:57 +0000 (11:30 +0200)]
microblaze: Do not used hardcoded value in exception handler

Use predefined macros to support more page sizes.

Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Added fdt chosen capability for timer
Michal Simek [Mon, 12 Dec 2011 13:02:47 +0000 (14:02 +0100)]
microblaze: Added fdt chosen capability for timer

This lets a dts author flag a particular timer in the system as the system timer.
If the chosen node contains a "system-timer=<&foo>" entry than that handle will
be used to determine the system timer. In no such entry exists then the first
found timer will be used (current behaviour).

Signed-off-by: Peter A. G. Crosthwaite <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Add support for ioreadXX/iowriteXX_rep
Michal Simek [Tue, 3 May 2011 08:33:07 +0000 (10:33 +0200)]
microblaze: Add support for ioreadXX/iowriteXX_rep

Reuse versions from asm-generic functions.

Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: Improve failure handling for GPIO reset
Stephan Linz [Wed, 20 Jun 2012 20:36:37 +0000 (22:36 +0200)]
microblaze: Improve failure handling for GPIO reset

Early exit from of_platform_reset_gpio_probe() if there
was no GPIO reset line configured.

Avoid kernel oops in gpio_system_reset():

[   27.413294] Restarting system.
[   27.415674] Machine restart...
[   27.418787] Oops: kernel access of bad area, sig: 11
[   27.423252]  Registers dump: mode=83871D1C
[   27.427428]  r1=00000000, r2=00000000, r3=FFFFFEF8, r4=00000000
[   27.433310]  r5=C026AED0, r6=00000001, r7=00000068, r8=00000000
[   27.439189]  r9=C3871DAC, r10=000011A5, r11=00000000, r12=0000000A
[   27.445318]  r13=00000000, r14=0000000F, r15=C00029BC, r16=00000000
[   27.451558]  r17=C011DE8C, r18=80000115, r19=0000000F, r20=48184ED8
[   27.457770]  r21=00000000, r22=FFFFFFEA, r23=00000001, r24=FEE1DEAD
[   27.463982]  r25=00000054, r26=1000B1C8, r27=00000000, r28=00000000
[   27.470208]  r29=00000000, r30=00000000, r31=C32D30C0, rPC=C011DE8C
[   27.476433]  msr=000042A2, ear=0000004B, esr=00000872, fsr=342E3732

And remove useless dump_stack from machine_restart.

Signed-off-by: Stephan Linz <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
12 years agomicroblaze: clinkage.h
Paul Bolle [Sun, 10 Jun 2012 18:42:20 +0000 (20:42 +0200)]
microblaze: clinkage.h

Nothing includes <asm/clinkage.h>. It has actually never been included
since it was added to the tree in commit
9981cd94d526a300dbef58048b1d281386b7289c ("microblaze_v8: clinkage.h
linkage.h sections.h kmap_types.h"). That's not surprising, since
including it is indistinguishable from including <linux/linkage.h>. It
can safely be removed.

Signed-off-by: Paul Bolle <[email protected]>
12 years agoUAPI: Split compound conditionals containing __KERNEL__ in Arm64
David Howells [Thu, 4 Oct 2012 11:10:18 +0000 (12:10 +0100)]
UAPI: Split compound conditionals containing __KERNEL__ in Arm64

Split compound conditionals containing __KERNEL__ in Arm64 where possible to
make it easier for the UAPI disintegration scripts to handle them.

Signed-off-by: David Howells <[email protected]>
Acked-by: Catalin Marinas <[email protected]>
12 years agoUAPI: Fix the guards on various asm/unistd.h files
David Howells [Thu, 4 Oct 2012 11:10:18 +0000 (12:10 +0100)]
UAPI: Fix the guards on various asm/unistd.h files

asm-generic/unistd.h and a number of asm/unistd.h files have been given
reinclusion guards that allow the guard to be overridden if __SYSCALL is
defined.  Unfortunately, these files define __SYSCALL and don't undefine it
when they've finished with it, thus rendering the guard ineffective.

The reason for this override is to allow the file to be #included multiple
times with different settings on __SYSCALL for purposes like generating syscall
tables.

The following guards are problematic:

arch/arm64/include/asm/unistd.h:#if !defined(__ASM_UNISTD_H) || defined(__SYSCALL)
arch/arm64/include/asm/unistd32.h:#if !defined(__ASM_UNISTD32_H) || defined(__SYSCALL)
arch/c6x/include/asm/unistd.h:#if !defined(_ASM_C6X_UNISTD_H) || defined(__SYSCALL)
arch/hexagon/include/asm/unistd.h:#if !defined(_ASM_HEXAGON_UNISTD_H) || defined(__SYSCALL)
arch/openrisc/include/asm/unistd.h:#if !defined(__ASM_OPENRISC_UNISTD_H) || defined(__SYSCALL)
arch/score/include/asm/unistd.h:#if !defined(_ASM_SCORE_UNISTD_H) || defined(__SYSCALL)
arch/tile/include/asm/unistd.h:#if !defined(_ASM_TILE_UNISTD_H) || defined(__SYSCALL)
arch/unicore32/include/asm/unistd.h:#if !defined(__UNICORE_UNISTD_H__) || defined(__SYSCALL)
include/asm-generic/unistd.h:#if !defined(_ASM_GENERIC_UNISTD_H) || defined(__SYSCALL)

On the assumption that the guards' ineffectiveness has passed unnoticed, just
remove these guards entirely.

Signed-off-by: David Howells <[email protected]>
Acked-by: Arnd Bergmann <[email protected]>
Acked-by: Catalin Marinas <[email protected]>
12 years agocrypto: x86/glue_helper - fix storing of new IV in CBC encryption
Jussi Kivilinna [Wed, 19 Sep 2012 06:40:30 +0000 (09:40 +0300)]
crypto: x86/glue_helper - fix storing of new IV in CBC encryption

Glue_helper incorrectly XORs new IV over old IV at end of CBC encryption
function when it should store. This causes CBC encryption to give
incorrect output on multi-page encryption requests.

Signed-off-by: Jussi Kivilinna <[email protected]>
Signed-off-by: Herbert Xu <[email protected]>
12 years agodrm/i915: don't frob the vblank ts in finish_page_flip
Daniel Vetter [Tue, 2 Oct 2012 18:10:37 +0000 (20:10 +0200)]
drm/i915: don't frob the vblank ts in finish_page_flip

Now that we correctly generate it, this hack is no longer required (and
might actually paper over a serious bug).

pageflip timestamps are sanity check in the latest version of the flip-test
in intel-gpu-tools.

v2: Also remove the gettimeofday(&now) which is no longer used.
Noticed by Mario Kleiner.

Reviewed-by: [email protected]
Tested-by: Imre Deak <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
12 years agodrm/i915: call drm_handle_vblank before finish_page_flip
Daniel Vetter [Tue, 2 Oct 2012 15:54:35 +0000 (17:54 +0200)]
drm/i915: call drm_handle_vblank before finish_page_flip

... since finish_page_flip needs the vblank timestamp generated
in drm_handle_vblank. Somehow all the gmch platforms get it right,
but all the pch platform irq handlers get is wrong. Hooray for copy&
pasting!

Currently this gets papered over by a gross hack in finish_page_flip.
A second patch will remove that.

Note that without this, the new timestamp sanity checks in flip_test
occasionally get tripped up, hence the cc: stable tag.

Cc: [email protected]
Reviewed-by: [email protected]
Tested-by: Imre Deak <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
12 years agodrm/i915: print warning if vmi915_gem_fault error is not handled
Mika Kuoppala [Wed, 3 Oct 2012 14:15:27 +0000 (17:15 +0300)]
drm/i915: print warning if vmi915_gem_fault error is not handled

Falling into default case in vmi915_gem_fault is a bug. Be more
verbose about it.

Signed-off-by: Mika Kuoppala <[email protected]>
Reviewed-by: Chris Wilson <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
12 years agodrm/i915: EBUSY status handling added to i915_gem_fault().
Dmitry Rogozhkin [Wed, 3 Oct 2012 14:15:26 +0000 (17:15 +0300)]
drm/i915: EBUSY status handling added to i915_gem_fault().

Subsequent threads returning EBUSY from vm_insert_pfn() was not handled
correctly. As a result concurrent access from new threads to
mmapped data caused SIGBUS.

Note that this fixes i-g-t/tests/gem_threaded_tiled_access.

Tested-by: Mika Kuoppala <[email protected]>
Signed-off-by: Dmitry Rogozhkin <[email protected]>
Reviewed-by: Chris Wilson <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
12 years agodrm/i915: Try harder to complete DP training pattern 1
Chris Wilson [Wed, 26 Sep 2012 15:48:30 +0000 (16:48 +0100)]
drm/i915: Try harder to complete DP training pattern 1

In commit cdb0e95bf571dccc1f75fef9bdad21b167ef0b37
Author: Keith Packard <[email protected]>
Date:   Tue Nov 1 20:00:06 2011 -0700

    drm/i915: Try harder during dp pattern 1 link training

extra passes were made to retry the same voltage and then retry a full
clock reset. However, as coverity pointed out, we never tried the full
clock reset as we broke out of the loop early.

Signed-off-by: Chris Wilson <[email protected]>
Reviewed-by: Damien Lespiau <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
12 years agopowerpc/iommu: Fix multiple issues with IOMMU pools code
Anton Blanchard [Wed, 3 Oct 2012 18:57:10 +0000 (18:57 +0000)]
powerpc/iommu: Fix multiple issues with IOMMU pools code

There are a number of issues in the recent IOMMU pools code:

- On a preempt kernel we might switch CPUs in the middle of building
  a scatter gather list. When this happens the handle hint passed in
  no longer falls within the local CPU's pool. Check for this and
  fall back to the pool hint.

- We were missing a spin_unlock/spin_lock in one spot where we
  switch pools.

- We need to provide locking around dart_tlb_invalidate_all and
  dart_tlb_invalidate_one now that the global lock is gone.

Reported-by: Alexander Graf <[email protected]>
Signed-off-by: Anton Blanchard <[email protected]>
Signed-off-by: Benjamin Herrenschmidt <[email protected]>
CC: <[email protected]> [v3.6]
12 years agopowerpc: Fix VMX fix for memcpy case
Nishanth Aravamudan [Mon, 1 Oct 2012 14:59:13 +0000 (14:59 +0000)]
powerpc: Fix VMX fix for memcpy case

In 2fae7cdb60240e2e2d9b378afbf6d9fcce8a3890 ("powerpc: Fix VMX in
interrupt check in POWER7 copy loops"), Anton inadvertently
introduced a regression for memcpy on POWER7 machines. copyuser and
memcpy diverge slightly in their use of cr1 (copyuser doesn't use it,
but memcpy does) and you end up clobbering that register with your fix.
That results in (taken from an FC18 kernel):

[   18.824604] Unrecoverable VMX/Altivec Unavailable Exception f20 at c000000000052f40
[   18.824618] Oops: Unrecoverable VMX/Altivec Unavailable Exception, sig: 6 [#1]
[   18.824623] SMP NR_CPUS=1024 NUMA pSeries
[   18.824633] Modules linked in: tg3(+) be2net(+) cxgb4(+) ipr(+) sunrpc xts lrw gf128mul dm_crypt dm_round_robin dm_multipath linear raid10 raid456 async_raid6_recov async_memcpy async_pq raid6_pq async_xor xor async_tx raid1 raid0 scsi_dh_rdac scsi_dh_hp_sw scsi_dh_emc scsi_dh_alua squashfs cramfs
[   18.824705] NIP: c000000000052f40 LR: c00000000020b874 CTR: 0000000000000512
[   18.824709] REGS: c000001f1fef7790 TRAP: 0f20   Not tainted  (3.6.0-0.rc6.git0.2.fc18.ppc64)
[   18.824713] MSR: 8000000000009032 <SF,EE,ME,IR,DR,RI>  CR: 4802802e  XER: 20000010
[   18.824726] SOFTE: 0
[   18.824728] CFAR: 0000000000000f20
[   18.824731] TASK = c000000fa7128400[0] 'swapper/24' THREAD: c000000fa7480000 CPU: 24
GPR00: 00000000ffffffc0 c000001f1fef7a10 c00000000164edc0 c000000f9b9a8120
GPR04: c000000f9b9a8124 0000000000001438 0000000000000060 03ffffff064657ee
GPR08: 0000000080000000 0000000000000010 0000000000000020 0000000000000030
GPR12: 0000000028028022 c00000000ff25400 0000000000000001 0000000000000000
GPR16: 0000000000000000 7fffffffffffffff c0000000016b2180 c00000000156a500
GPR20: c000000f968c7a90 c0000000131c31d8 c000001f1fef4000 c000000001561d00
GPR24: 000000000000000a 0000000000000000 0000000000000001 0000000000000012
GPR28: c000000fa5c04f80 00000000000008bc c0000000015c0a28 000000000000022e
[   18.824792] NIP [c000000000052f40] .memcpy_power7+0x5a0/0x7c4
[   18.824797] LR [c00000000020b874] .pcpu_free_area+0x174/0x2d0
[   18.824800] Call Trace:
[   18.824803] [c000001f1fef7a10] [c000000000052c14] .memcpy_power7+0x274/0x7c4 (unreliable)
[   18.824809] [c000001f1fef7b10] [c00000000020b874] .pcpu_free_area+0x174/0x2d0
[   18.824813] [c000001f1fef7bb0] [c00000000020ba88] .free_percpu+0xb8/0x1b0
[   18.824819] [c000001f1fef7c50] [c00000000043d144] .throtl_pd_exit+0x94/0xd0
[   18.824824] [c000001f1fef7cf0] [c00000000043acf8] .blkg_free+0x88/0xe0
[   18.824829] [c000001f1fef7d90] [c00000000018c048] .rcu_process_callbacks+0x2e8/0x8a0
[   18.824835] [c000001f1fef7e90] [c0000000000a8ce8] .__do_softirq+0x158/0x4d0
[   18.824840] [c000001f1fef7f90] [c000000000025ecc] .call_do_softirq+0x14/0x24
[   18.824845] [c000000fa7483650] [c000000000010e80] .do_softirq+0x160/0x1a0
[   18.824850] [c000000fa74836f0] [c0000000000a94a4] .irq_exit+0xf4/0x120
[   18.824854] [c000000fa7483780] [c000000000020c44] .timer_interrupt+0x154/0x4d0
[   18.824859] [c000000fa7483830] [c000000000003be0] decrementer_common+0x160/0x180
[   18.824866] --- Exception: 901 at .plpar_hcall_norets+0x84/0xd4
[   18.824866]     LR = .check_and_cede_processor+0x48/0x80
[   18.824871] [c000000fa7483b20] [c00000000007f018] .check_and_cede_processor+0x18/0x80 (unreliable)
[   18.824877] [c000000fa7483b90] [c00000000007f104] .dedicated_cede_loop+0x84/0x150
[   18.824883] [c000000fa7483c50] [c0000000006bc030] .cpuidle_enter+0x30/0x50
[   18.824887] [c000000fa7483cc0] [c0000000006bc9f4] .cpuidle_idle_call+0x104/0x720
[   18.824892] [c000000fa7483d80] [c000000000070af8] .pSeries_idle+0x18/0x40
[   18.824897] [c000000fa7483df0] [c000000000019084] .cpu_idle+0x1a4/0x380
[   18.824902] [c000000fa7483ec0] [c0000000008a4c18] .start_secondary+0x520/0x528
[   18.824907] [c000000fa7483f90] [c0000000000093f0] .start_secondary_prolog+0x10/0x14
[   18.824911] Instruction dump:
[   18.824914] 38840008 90030000 90e30004 38630008 7ca62850 7cc300d0 78c7e102 7cf01120
[   18.824923] 78c60660 39200010 39400020 39600030 <7e00200c7c0020ce 38840010 409f001c
[   18.824935] ---[ end trace 0bb95124affaaa45 ]---
[   18.825046] Unrecoverable VMX/Altivec Unavailable Exception f20 at c000000000052d08

I believe the right fix is to make memcpy match usercopy and not use
cr1.

Signed-off-by: Nishanth Aravamudan <[email protected]>
Signed-off-by: Benjamin Herrenschmidt <[email protected]>
CC: <[email protected]> [v3.6]
12 years agoMerge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
Linus Torvalds [Thu, 4 Oct 2012 06:29:23 +0000 (23:29 -0700)]
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux

Pull drm merge (part 1) from Dave Airlie:
 "So first of all my tree and uapi stuff has a conflict mess, its my
  fault as the nouveau stuff didn't hit -next as were trying to rebase
  regressions out of it before we merged.

  Highlights:
   - SH mobile modesetting driver and associated helpers
   - some DRM core documentation
   - i915 modesetting rework, haswell hdmi, haswell and vlv fixes, write
     combined pte writing, ilk rc6 support,
   - nouveau: major driver rework into a hw core driver, makes features
     like SLI a lot saner to implement,
   - psb: add eDP/DP support for Cedarview
   - radeon: 2 layer page tables, async VM pte updates, better PLL
     selection for > 2 screens, better ACPI interactions

  The rest is general grab bag of fixes.

  So why part 1? well I have the exynos pull req which came in a bit
  late but was waiting for me to do something they shouldn't have and it
  looks fairly safe, and David Howells has some more header cleanups
  he'd like me to pull, that seem like a good idea, but I'd like to get
  this merge out of the way so -next dosen't get blocked."

Tons of conflicts mostly due to silly include line changes, but mostly
mindless.  A few other small semantic conflicts too, noted from Dave's
pre-merged branch.

* 'drm-next' of git://people.freedesktop.org/~airlied/linux: (447 commits)
  drm/nv98/crypt: fix fuc build with latest envyas
  drm/nouveau/devinit: fixup various issues with subdev ctor/init ordering
  drm/nv41/vm: fix and enable use of "real" pciegart
  drm/nv44/vm: fix and enable use of "real" pciegart
  drm/nv04/dmaobj: fixup vm target handling in preparation for nv4x pcie
  drm/nouveau: store supported dma mask in vmmgr
  drm/nvc0/ibus: initial implementation of subdev
  drm/nouveau/therm: add support for fan-control modes
  drm/nouveau/hwmon: rename pwm0* to pmw1* to follow hwmon's rules
  drm/nouveau/therm: calculate the pwm divisor on nv50+
  drm/nouveau/fan: rewrite the fan tachometer driver to get more precision, faster
  drm/nouveau/therm: move thermal-related functions to the therm subdev
  drm/nouveau/bios: parse the pwm divisor from the perf table
  drm/nouveau/therm: use the EXTDEV table to detect i2c monitoring devices
  drm/nouveau/therm: rework thermal table parsing
  drm/nouveau/gpio: expose the PWM/TOGGLE parameter found in the gpio vbios table
  drm/nouveau: fix pm initialization order
  drm/nouveau/bios: check that fixed tvdac gpio data is valid before using it
  drm/nouveau: log channel debug/error messages from client object rather than drm client
  drm/nouveau: have drm debugging macros build on top of core macros
  ...

12 years agoIB/iser: Add more RX CQs to scale out processing of SCSI responses
Alex Tabachnik [Sun, 23 Sep 2012 15:17:44 +0000 (15:17 +0000)]
IB/iser: Add more RX CQs to scale out processing of SCSI responses

RX/TX CQs will now be selected from a per HCA pool.  For the RX flow
this has the effect of using different interrupt vectors when using
low level drivers (such as mlx4) that map the "vector" param provided
by the ULP on CQ creation to a dedicated IRQ/MSI-X vector.  This
allows the RX flow processing of IO responses to be distributed across
multiple CPUs.

QPs (--> iSER sessions) are assigned to CQs in round robin order using
the CQ with the minimum number of sessions attached to it.

Signed-off-by: Or Gerlitz <[email protected]>
Signed-off-by: Alex Tabachnik <[email protected]>
Signed-off-by: Roland Dreier <[email protected]>
12 years agolguest: fix occasional crash in example launcher.
Rusty Russell [Thu, 4 Oct 2012 02:33:25 +0000 (12:03 +0930)]
lguest: fix occasional crash in example launcher.

We usually got away with ->next on the final entry being NULL, but it
finally bit me.

Signed-off-by: Rusty Russell <[email protected]>
Cc: [email protected]
12 years agodrm/exynos: fix kcalloc size of g2d cmdlist node
Joonyoung Shim [Thu, 27 Sep 2012 10:26:03 +0000 (19:26 +0900)]
drm/exynos: fix kcalloc size of g2d cmdlist node

The size argument means just one element size when we call kcalloc, so
G2D_CMDLIST_NUM * sizeof(*node) is wrong.

Signed-off-by: Joonyoung Shim <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Signed-off-by: Inki Dae <[email protected]>
12 years agodrm/exynos: fix to calculate CRTC shown via screen
Joonyoung Shim [Thu, 27 Sep 2012 10:25:21 +0000 (19:25 +0900)]
drm/exynos: fix to calculate CRTC shown via screen

This patch is to exactly calculate CRTC shown via screen for all cases.
Refer exynos_plane_get_size() function for this. Also source position of
fb is fixed when start position of CRTC is negative number.

Signed-off-by: Joonyoung Shim <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
Signed-off-by: Inki Dae <[email protected]>
12 years agodrm/exynos: fix display power call issue.
Inki Dae [Mon, 24 Sep 2012 11:04:24 +0000 (20:04 +0900)]
drm/exynos: fix display power call issue.

Changelog v3:
make exynos_drm_display_power function use exynos_drm_best_encoder
function instead of connector->encoder to get a valid encoder.
connector->encoder could be NULL because with DRM_IOCTL_MODE_RMFB
request, connector->encoder is NULL so fix this issue.

Changelog v2:
remove static prefix so that exynos_drm_best_encoder function
could be called by other modules.

Changelog v1:
this patch fixes the issue that display power callback isn't called.
with DRM_IOCTL_MODE_RMFB request, encoder->connector becomes NULL
so display_ops->power_on() wouldn't be called so this patch makes
exynos_drm_best_encoder function to be used to get a valid encoder
of each connector.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: add platform_device_id table and driver data for drm fimd
Leela Krishna Amudala [Fri, 21 Sep 2012 11:22:15 +0000 (16:52 +0530)]
drm/exynos: add platform_device_id table and driver data for drm fimd

Two device ids are created for exynos4-fb and exynos5-fb.
Also, added driver data for exynos4 and exynos5 to pick the timing base address
at runtime to write data into appropriate register address.

Signed-off-by: Leela Krishna Amudala <[email protected]>
Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: Fix potential NULL pointer dereference
Sachin Kamat [Tue, 18 Sep 2012 10:21:30 +0000 (15:51 +0530)]
drm/exynos: Fix potential NULL pointer dereference

drm_mode_create() returns NULL if it fails to create
a new display mode. Check the value returned to avoid NULL
pointer deferencing later.

Signed-off-by: Sachin Kamat <[email protected]>
Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: support drm_wait_vblank feature for VIDI
Inki Dae [Wed, 19 Sep 2012 02:02:43 +0000 (11:02 +0900)]
drm/exynos: support drm_wait_vblank feature for VIDI

this patch adds drm_wait_vblank support to Virtual Display module
so user can use DRM_IOCT_WAIT_VBLANK ioctl with this patch.
for this, you should set _DRM_VBLANK_EXYNOS_VIDI flags to
vblwait->request.type

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: check crtc's dpms mode at SetCrtc
Inki Dae [Fri, 14 Sep 2012 04:29:47 +0000 (13:29 +0900)]
drm/exynos: check crtc's dpms mode at SetCrtc

when fb changing is requested, crtc's dpms mode should be on.
if not on, return -EPERM so that the hardware can't be accessed.
if user requesed dpms off and next SetCrtc with an another fb
then the hardware can be accessed with dpms off to write overlay
data onto some registers so this patch will prevent from accessing
the hardware with dpms off.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: check crtc's dpms mode at page flip
Inki Dae [Tue, 11 Sep 2012 09:25:21 +0000 (18:25 +0900)]
drm/exynos: check crtc's dpms mode at page flip

when page flip is requested, crtc's dpms mode should be on.
if not on, return -EINVAL so that it doesn't access hardware.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: fix duplicated mutex lock issue
Inki Dae [Tue, 11 Sep 2012 07:35:23 +0000 (16:35 +0900)]
drm/exynos: fix duplicated mutex lock issue

exynos_drm_crtc_dpms function doesn't need mutex lock
because mutex lock was called by drm framework so this
patch removes mutex lock call from that function to avoid
duplicated mutex locking.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: add pid to g2d_runqueue_node
Inki Dae [Tue, 11 Sep 2012 01:45:36 +0000 (10:45 +0900)]
drm/exynos: add pid to g2d_runqueue_node

this patch adds pid to g2d_runqueue_node as member to identify
which process owns this node.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: Disable plane when released
Inki Dae [Fri, 24 Aug 2012 17:54:12 +0000 (10:54 -0700)]
drm/exynos: Disable plane when released

this patch ensures that each plane connected to encoder is disabled
when released, by adding disable callback function of encoder helper

we had faced with one issue that invalid memory is accessed by dma
once drm is released and then the dma is turned on again. actually,
in our case, page fault was incurred with iommu. the reason is that
a gem buffer accessed by the dma is also released once drm is released.

so this patch would fix this issue ensuring the dma is disabled
when released.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: update crtc to plane safely
Inki Dae [Fri, 17 Aug 2012 08:58:38 +0000 (17:58 +0900)]
drm/exynos: update crtc to plane safely

if old_crtc isn't same as encoder->crtc then it means that
user changed crtc id to another one so a plane to old_crtc
should be disabled so that current plane can be updated safely
and plane->crtc should be set to new crtc(encoder->crtc)

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: check NV12M format specific to Exynos properly
Inki Dae [Mon, 20 Aug 2012 11:05:56 +0000 (20:05 +0900)]
drm/exynos: check NV12M format specific to Exynos properly

this patch adds buf_cnt variable in exynos_drm_fb structure and
that means a buffer count to drm framebuffer and also adds two
functions to get/set the buffer count from/to exynos_drm_fb structure.
if pixel format is not DRM_FORMAT_NV12MT then it gets a buffer count
to drm framebuffer refering to mode_cmd->handles and offsets.
but when booted, the buffer count will always be 1 because pixel
format of console framebuffer is RGB format.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: make sure that hardware overlay for hdmi is disabled
Inki Dae [Fri, 17 Aug 2012 09:35:47 +0000 (18:35 +0900)]
drm/exynos: make sure that hardware overlay for hdmi is disabled

the values set to registers will be updated into real registers
at vsync so dma operation could be malfunctioned when accessed
to memory after gem buffer was released. this patch makes sure
that hw overlay is disabled before the gem buffer is released.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: make sure that hardware overlay for fimd is disabled
Inki Dae [Mon, 20 Aug 2012 10:58:05 +0000 (19:58 +0900)]
drm/exynos: make sure that hardware overlay for fimd is disabled

Changelog v2:
wait for VSYNC instead of BACKPORCH.

Changelog v1:
the values set to registers will be updated into real registers
at vsync so dma operation could be malfunctioned when accessed
to memory after gem buffer was released. this patch makes sure
that hw overlay is disabled before the gem buffer is released.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: add wait_for_vblank callback interface.
Inki Dae [Mon, 20 Aug 2012 10:55:14 +0000 (19:55 +0900)]
drm/exynos: add wait_for_vblank callback interface.

Changelog v2:
fixed comments.

Changelog v1:
this interface can be used to make sure that hardware overlay is disabled
to avoid that memory region is accessed by dma after gem buffer was released.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: fixed duplicated mode setting.
Inki Dae [Mon, 20 Aug 2012 12:29:25 +0000 (21:29 +0900)]
drm/exynos: fixed duplicated mode setting.

this patch fixes that when drm_crtc_helper_set_mode() is called,
mode data for hardware overlay and conntroller are updated two times.
for example, in case that drm_crtc_helper_set_mode() is called,
overlay_ops->commit() and manager_ops->commit() callbacks can be called
two times, first at drm_crtc_helper_set_mode() and second
at drm_helper_connector_dpms().

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: separeated fimd_power_on into some parts.
Inki Dae [Fri, 17 Aug 2012 08:08:04 +0000 (17:08 +0900)]
drm/exynos: separeated fimd_power_on into some parts.

Changelog v2:
fix pm operation when resume.

Changelog v1:
this patch separetes fimd_power_on into fimd_activate and fimd_clock and
fimd_activate function will call fimd_clock to control fimd power and
vsync interrupt.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: separated subdrv_probe function into two parts.
Inki Dae [Fri, 17 Aug 2012 04:23:25 +0000 (13:23 +0900)]
drm/exynos: separated subdrv_probe function into two parts.

Changelog v2:
fixed the issue that when sub driver is probed, no kms drivers such as
fimd or hdmi are failed. no kms drivers have no manager so if manager is
null then encoder and connector creation should be ignored.

Changelog v1:
this patch separates exynos_drm_subdrv_probe function into sub driver's probe call
and encoder/connector creation so that exynos drm core module can take exception
when some operation was failed properly.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agodrm/exynos: added device object to subdrv's remove callback as argument
Inki Dae [Wed, 5 Sep 2012 05:12:06 +0000 (14:12 +0900)]
drm/exynos: added device object to subdrv's remove callback as argument

when remove callback of exynos_drm_subdrv is called, it could need
device object for sub driver to control things specific to hw such as
runtime pm.

Signed-off-by: Inki Dae <[email protected]>
Signed-off-by: Kyungmin Park <[email protected]>
12 years agocxgb4: Fix build error due to missing linux/vmalloc.h include.
David S. Miller [Thu, 4 Oct 2012 00:50:08 +0000 (20:50 -0400)]
cxgb4: Fix build error due to missing linux/vmalloc.h include.

Reported-by: Stephen Rothwell <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm...
Linus Torvalds [Wed, 3 Oct 2012 23:09:09 +0000 (16:09 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace

Pull user namespace compile fix from Eric W Biederman:
 "This tree contains a trivial build fix for one of the staging drivers
  when user namespace support is enabled"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
  userns: Fix build of drivers/staging/dgrp

12 years agofirmware: teach the kernel to load firmware files directly from the filesystem
Linus Torvalds [Wed, 3 Oct 2012 22:58:32 +0000 (15:58 -0700)]
firmware: teach the kernel to load firmware files directly from the filesystem

This is a first step in allowing people to by-pass udev for loading
device firmware.  Current versions of udev will deadlock (causing us to
block for the 30 second timeout) under some circumstances if the
firmware is loaded as part of the module initialization path, and this
is causing problems for media drivers in particular.

The current patch hardcodes the firmware path that udev uses by default,
and will fall back to the legacy udev mode if the firmware cannot be
found there.  We'd like to add support for both configuring the paths
and the fallback behaviour, but in the meantime this hopefully fixes the
immediate problem, while also giving us a way forward.

[ v2: Some VFS layer interface cleanups suggested by Al Viro ]
[ v3: use the default udev paths suggested by Kay Sievers ]

Suggested-by: Ivan Kalvachev <[email protected]>
Acked-by: Greg KH <[email protected]>
Acked-by: Al Viro <[email protected]>
Cc: Mauro Carvalho Chehab <[email protected]>
Cc: Kay Sievers <[email protected]>
Cc: Ming Lei <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
12 years agoc6x: make dsk6455 the default config
Mark Salter [Wed, 3 Oct 2012 21:39:12 +0000 (17:39 -0400)]
c6x: make dsk6455 the default config

C6X had no defconfig, so DSK6455 is as good as any.

Signed-off-by: Mark Salter <[email protected]>
12 years agoRDMA/nes: Bump the version number of nes driver
Tatyana Nikolova [Tue, 2 Oct 2012 20:32:15 +0000 (20:32 +0000)]
RDMA/nes: Bump the version number of nes driver

Bumpthe version of the nes driver to reflect recent fixes.

Signed-off-by: Tatyana Nikolova <[email protected]>
Signed-off-by: Roland Dreier <[email protected]>
12 years agoRDMA/nes: Remove unused module parameter "send_first"
Tatyana Nikolova [Tue, 2 Oct 2012 20:38:16 +0000 (20:38 +0000)]
RDMA/nes: Remove unused module parameter "send_first"

Signed-off-by: Tatyana Nikolova <[email protected]>
Signed-off-by: Roland Dreier <[email protected]>
12 years agoRDMA/nes: Remove unnecessary if-else statement
Tatyana Nikolova [Tue, 2 Oct 2012 16:40:33 +0000 (16:40 +0000)]
RDMA/nes: Remove unnecessary if-else statement

Remove unnecessary if-else statement -- we do the same thing either way.

Signed-off-by: Tatyana Nikolova <[email protected]>
Signed-off-by: Roland Dreier <[email protected]>
12 years agoRDMA/nes: Add missing break to switch.
Tatyana Nikolova [Tue, 2 Oct 2012 16:38:12 +0000 (16:38 +0000)]
RDMA/nes: Add missing break to switch.

Static code analyzer cppcheck points out a missing break.

Reported-by: David Binderman <[email protected]>
Addresses: <https://bugzilla.kernel.org/show_bug.cgi?id=47671>
Signed-off-by: Tatyana Nikolova <[email protected]>
Signed-off-by: Roland Dreier <[email protected]>
12 years agomlx4_core: Adjust flow steering attach wrapper so that IB works on SR-IOV VFs
Jack Morgenstein [Wed, 3 Oct 2012 15:38:48 +0000 (15:38 +0000)]
mlx4_core: Adjust flow steering attach wrapper so that IB works on SR-IOV VFs

Currently, the InfiniBand stack does not support flow steering at the
verbs level -- the only usage of flow steering in the IB driver is for
L2 multicast attaches.  We need to add the IB case to procedure
mlx4_QP_FLOW_STEERING_ATTACH_wrapper() to allow IPoIB to work on VFs
on ConnectX-3 when flow steering is enabled.

Currently, the IB case in mlx4_QP_FLOW_STEERING_ATTACH_wrapper() is missing,
so the procedure returns -EINVAL and IPoIB on VFs breaks.

Signed-off-by: Jack Morgenstein <[email protected]>
Signed-off-by: Or Gerlitz <[email protected]>
Signed-off-by: Roland Dreier <[email protected]>
12 years agoMerge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee139...
Linus Torvalds [Wed, 3 Oct 2012 20:55:12 +0000 (13:55 -0700)]
Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394

Pull firewire updates from Stefan Richter:
  - feed GUIDs of FireWire nodes to the random pool
  - more complete quirk handling of a TI S400B phy
  - avoid holding a core lock while calling into highlevel drivers

* tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
  firewire: addendum to address handler RCU conversion
  firewire: remove global lock around address handlers, convert to RCU
  firewire: ohci: get IR bit from TSB41BA3D phy
  firewire: core: feed /dev/random with devices' GUIDs

12 years agoMerge tag 'uapi-prep-20121002' of git://git.infradead.org/users/dhowells/linux-headers
Linus Torvalds [Wed, 3 Oct 2012 20:45:43 +0000 (13:45 -0700)]
Merge tag 'uapi-prep-20121002' of git://git.infradead.org/users/dhowells/linux-headers

Pull preparatory patches for user API disintegration from David Howells:
 "The patches herein prepare for the extraction of the Userspace API
  bits from the various header files named in the Kbuild files.

  New subdirectories are created under either include/uapi/ or
  arch/x/include/uapi/ that correspond to the subdirectory containing
  that file under include/ or arch/x/include/.

  The new subdirs under the uapi/ directory are populated with Kbuild
  files that mostly do nothing at this time.  Further patches will
  disintegrate the headers in each original directory and fill in the
  Kbuild files as they do it.

  These patches also:

   (1) fix up #inclusions of "foo.h" rather than <foo.h>.

   (2) Remove some redundant #includes from the DRM code.

   (3) Make the kernel build infrastructure handle Kbuild files both in
       the old places and the new UAPI place that both specify headers
       to be exported.

   (4) Fix some kernel tools that #include kernel headers during their
       build.

  I have compile tested this with allyesconfig against x86_64,
  allmodconfig against i386 and a scattering of additional defconfigs of
  other arches.  Prepared for main script

Signed-off-by: David Howells <[email protected]>
Acked-by: Arnd Bergmann <[email protected]>
Acked-by: Thomas Gleixner <[email protected]>
Acked-by: Michael Kerrisk <[email protected]>
Acked-by: Paul E. McKenney <[email protected]>
Acked-by: Dave Jones <[email protected]>
Acked-by: H. Peter Anvin <[email protected]>"
* tag 'uapi-prep-20121002' of git://git.infradead.org/users/dhowells/linux-headers:
  UAPI: Plumb the UAPI Kbuilds into the user header installation and checking
  UAPI: x86: Differentiate the generated UAPI and internal headers
  UAPI: Remove the objhdr-y export list
  UAPI: Move linux/version.h
  UAPI: Set up uapi/asm/Kbuild.asm
  UAPI: x86: Fix insn_sanity build failure after UAPI split
  UAPI: x86: Fix the test_get_len tool
  UAPI: (Scripted) Set up UAPI Kbuild files
  UAPI: Partition the header include path sets and add uapi/ header directories
  UAPI: (Scripted) Convert #include "..." to #include <path/...> in kernel system headers
  UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/
  UAPI: (Scripted) Remove redundant DRM UAPI header #inclusions from drivers/gpu/.
  UAPI: Refer to the DRM UAPI headers with <...> and from certain headers only

12 years agobnx2x: fix ring size for 10G functions
Yuval Mintz [Wed, 3 Oct 2012 04:22:59 +0000 (04:22 +0000)]
bnx2x: fix ring size for 10G functions

Commit d760fc37b0f74502b3f748951f22c6683b079a8e caused
1G functions to allocate rx rings which were 1/10 of the
size of 10G functions' rx rings.

However, it also caused 10G functions on 5771x boards to
allocate small rings, which limits their possible (default)
rx throughput. This patch causes all 10G functions to use
rings of intended length by default.

Signed-off-by: Yuval Mintz <[email protected]>
Signed-off-by: Ariel Elior <[email protected]>
Signed-off-by: Eilon Greenstein <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agocxgb4: Dynamically allocate memory in t4_memory_rw() and get_vpd_params()
Vipul Pandya [Wed, 3 Oct 2012 03:22:32 +0000 (03:22 +0000)]
cxgb4: Dynamically allocate memory in t4_memory_rw() and get_vpd_params()

This patch changes memory allocation to reduce stack footprint

Signed-off-by: Jay Hernandez <[email protected]>
Signed-off-by: Vipul Pandya <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
12 years agoxen/xen_initial_domain: check that xen_start_info is initialized
Stefano Stabellini [Wed, 3 Oct 2012 17:08:52 +0000 (18:08 +0100)]
xen/xen_initial_domain: check that xen_start_info is initialized

Since commit commit 4c071ee5268f7234c3d084b6093bebccc28cdcba ("arm:
initial Xen support") PV on HVM guests can be xen_initial_domain.
However PV on HVM guests might have an unitialized xen_start_info, so
check before accessing its fields.

Signed-off-by: Stefano Stabellini <[email protected]>
Acked-by: Ian Campbell <[email protected]>
Reported-by: Konrad Rzeszutek Wilk <[email protected]>
Signed-off-by: Konrad Rzeszutek Wilk <[email protected]>
12 years agouserns: Fix build of drivers/staging/dgrp
Eric W. Biederman [Tue, 2 Oct 2012 22:37:37 +0000 (15:37 -0700)]
userns: Fix build of drivers/staging/dgrp

Explicitly test for GLOBAL_ROOT_UID and GLOBAL_ROOT_GID
instead of using 0, allowing dgrp to compile and work
properly when user namespace support is enabled.

Cc: Bill Pemberton <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Signed-off-by: "Eric W. Biederman" <[email protected]>
12 years agoMerge tag 'dt-for-3.7' of git://sources.calxeda.com/kernel/linux
Linus Torvalds [Wed, 3 Oct 2012 16:44:08 +0000 (09:44 -0700)]
Merge tag 'dt-for-3.7' of git://sources.calxeda.com/kernel/linux

Pull devicetree updates from Rob Herring:
 - Import of latest upstream device tree compiler (dtc)
 - New function of_get_child_by_name
 - Support for #size-cells of 0 and #addr-cells of >2
 - Couple of DT binding documentation updates

Fix up trivial conflicts due to of_get_child_by_name() having been added
next to the new of_get_next_available_child().

* tag 'dt-for-3.7' of git://sources.calxeda.com/kernel/linux:
  MAINTAINERS: add scripts/dtc under Devicetree maintainers
  dtc: import latest upstream dtc
  dt: Document general interrupt controller bindings
  dt/s3c64xx/spi: Use of_get_child_by_name to get a named child
  dt: introduce of_get_child_by_name to get child node by name
  of: i2c: add support for wakeup-source property
  of/address: Handle #address-cells > 2 specially
  DT: export of_irq_to_resource_table()
  devicetree: serial: Add documentation for imx serial
  devicetree: pwm: mxs-pwm.txt: Fix reg field annotation
  of: Allow busses with #size-cells=0

12 years agoceph: avoid 32-bit page index overflow
Alex Elder [Tue, 2 Oct 2012 15:25:51 +0000 (10:25 -0500)]
ceph: avoid 32-bit page index overflow

A pgoff_t is defined (by default) to have type (unsigned long).  On
architectures such as i686 that's a 32-bit type.  The ceph address
space code was attempting to produce 64 bit offsets by shifting a
page's index by PAGE_CACHE_SHIFT, but the result was not what was
desired because the shift occurred before the result got promoted
to 64 bits.

Fix this by converting all uses of page->index used in this way to
use the page_offset() macro, which ensures the 64-bit result has the
intended value.

This fixes http://tracker.newdream.net/issues/3112

Reported-by: Mohamed Pakkeer <[email protected]>
Signed-off-by: Alex Elder <[email protected]>
Reviewed-by: Sage Weil <[email protected]>
12 years agoceph: return EIO on invalid layout on GET_DATALOC ioctl
Sage Weil [Tue, 25 Sep 2012 04:04:57 +0000 (21:04 -0700)]
ceph: return EIO on invalid layout on GET_DATALOC ioctl

If the user calls GET_DATALOC on a file with an invalid (e.g.,
zeroed) layout, return EIO to userland.

Signed-off-by: Sage Weil <[email protected]>
Reviewed-by: Alex Elder <[email protected]>
12 years agoMerge tag 'jfs-3.7' of git://github.com/kleikamp/linux-shaggy
Linus Torvalds [Wed, 3 Oct 2012 15:48:21 +0000 (08:48 -0700)]
Merge tag 'jfs-3.7' of git://github.com/kleikamp/linux-shaggy

Pull JFS update from Dave Kleikamp:
 "JFS TRIM support and some minor fixes"

* tag 'jfs-3.7' of git://github.com/kleikamp/linux-shaggy:
  jfs: Fix do_div precision in commit b40c2e66
  JFS: use list_move instead of list_del/list_add
  jfs: Remove obsolete email address
  fs/jfs: TRIM support for JFS Filesystem

12 years agoixgbe: add support for X540-AT1
[email protected] [Fri, 21 Sep 2012 00:08:21 +0000 (00:08 +0000)]
ixgbe: add support for X540-AT1

This patch adds device support for Ethernet Controller X540-AT1.

Signed-off-by: Josh Hay <[email protected]>
Tested-by: Phil Schmitt <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
12 years agoixgbe: fix poll loop for FDIRCTRL.INIT_DONE bit
Emil Tantilov [Thu, 20 Sep 2012 03:33:51 +0000 (03:33 +0000)]
ixgbe: fix poll loop for FDIRCTRL.INIT_DONE bit

The loop in ixgbe_reinit_fdir_tables_82599() only polls for up to 100us
resulting in failures to update the FDIR filter table at 1Gbps and 10Gbps
when under load.

The poll times for FDIRCTRL.INIT_DONE are 55us, 550us and 5.5ms for 10Gbps,
1Gbps and 100Mbps respectively.

This patch sets the wait time to be the same as in ixgbe_fdir_enable_82599()

Reported-by: Bhushan <[email protected]>
Signed-off-by: Emil Tantilov <[email protected]>
Tested-by: Phil Schmitt <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
12 years agoixgbe: fix PTP ethtool timestamping function
Jacob Keller [Fri, 21 Sep 2012 07:23:20 +0000 (07:23 +0000)]
ixgbe: fix PTP ethtool timestamping function

This patch fixes a development issue that occurred due to invalid modes reported
in the ethtool get_ts_info function. The issue is resolved by removing
unsupported modes from the Rx supported list.

CC: stable <[email protected]> [3.5]
Signed-off-by: Jacob Keller <[email protected]>
Tested-by: Phil Schmitt <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
12 years agoixgbe: (PTP) Fix PPS interrupt code
Jacob Keller [Fri, 24 Aug 2012 07:46:54 +0000 (07:46 +0000)]
ixgbe: (PTP) Fix PPS interrupt code

Driver was enabling PPS interrupt even when user wasn't enabling it via the
ptp core. This patch fixes the PPS so that it is only enabled explicitly, and
moves the interrupt enabling code into the correct location in the driver

Signed-off-by: Jacob Keller <[email protected]>
Cc: Stable <[email protected]> [3.5]
Tested-by: Phil Schmitt <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
12 years agoixgbe: Fix PTP X540 SDP alignment code for PPS signal
Jacob Keller [Wed, 1 Aug 2012 07:12:25 +0000 (07:12 +0000)]
ixgbe: Fix PTP X540 SDP alignment code for PPS signal

This patch fixes a bug in the method used for calculating the trigger
alignment for SDP0 when enabling a PPS output on the X540. The alignment math
wasn't properly taking into account the overflow cyclecounter, and was
misaligning the pin triggers so that two X540 devices synced properly had
mis-aligned SDP pins. This patch fixes the math to calculate the correct
seconds alignment for the PPS signal.

Signed-off-by: Jacob Keller <[email protected]>
Tested-by: Phil Schmitt <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
12 years agoMAINTAINERS: Add EFI maintainer entry
Matt Fleming [Wed, 3 Oct 2012 09:04:02 +0000 (10:04 +0100)]
MAINTAINERS: Add EFI maintainer entry

We're starting to need a channel through which we can funnel EFI
patches to make sure they get merged in a timely fashion. Matthew and
Peter seem happy enough for me to take that bullet.

Signed-off-by: Matt Fleming <[email protected]>
Acked-by: H. Peter Anvin <[email protected]>
Acked-by: Ingo Molnar <[email protected]>
Cc: Matthew Garrett <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Tony Luck <[email protected]>
Cc: Len Brown <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
12 years agoMerge tag 'cris-for-linus-3.7' of git://jni.nu/cris
Linus Torvalds [Wed, 3 Oct 2012 14:36:36 +0000 (07:36 -0700)]
Merge tag 'cris-for-linus-3.7' of git://jni.nu/cris

Pull CRIS changes from Jesper Nilsson:
 "Removal of some unused code from the CRIS port"

* tag 'cris-for-linus-3.7' of git://jni.nu/cris:
  CRIS: Remove VCS simulator specific code
  cris/PCI: remove pcibios_assign_resources()

12 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
Linus Torvalds [Wed, 3 Oct 2012 14:33:17 +0000 (07:33 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc

Pull sparc fixes from David Miller:
 "Some quick fixes after today's merge-window pull"

 1) Add missing dependency on Sparc DES driver, oops.  From Dave Jones.

 2) Tell GCC that prom_printf() is printf-like and fix the few
    resultiing warnings.  From Akinobu Mita.

 3) Niagara-2 memcpy doesn't provide it's return value correctly in some
    circumstances.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
  sparc: fix format string argument for prom_printf()
  crypto: Build SPARC DES algorithms on SPARC only.
  sparc64: Fix return value of Niagara-2 memcpy.

12 years agoUBI: Wire-up fastmap
Richard Weinberger [Wed, 26 Sep 2012 15:51:50 +0000 (17:51 +0200)]
UBI: Wire-up fastmap

Make fastmap known to Kconfig, UBI Makefile and MAINTAINERS.

Signed-off-by: Richard Weinberger <[email protected]>
Signed-off-by: Artem Bityutskiy <[email protected]>
12 years agoUBI: Add fastmap core
Richard Weinberger [Wed, 26 Sep 2012 15:51:49 +0000 (17:51 +0200)]
UBI: Add fastmap core

Signed-off-by: Richard Weinberger <[email protected]>
Signed-off-by: Artem Bityutskiy <[email protected]>
12 years agoUBI: Add fastmap support to the WL sub-system
Richard Weinberger [Wed, 26 Sep 2012 15:51:48 +0000 (17:51 +0200)]
UBI: Add fastmap support to the WL sub-system

To make fastmap possible the WL sub-system needs some
changes.
Mostly to support fastmaps pools.

Signed-off-by: Richard Weinberger <[email protected]>
Signed-off-by: Artem Bityutskiy <[email protected]>
This page took 0.131428 seconds and 4 git commands to generate.