1. 21 Sep, 2013 1 commit
  2. 18 Sep, 2013 1 commit
  3. 17 Sep, 2013 1 commit
  4. 11 Sep, 2013 3 commits
    • Tejun Heo's avatar
      blkcg: relocate root_blkg setting and clearing · 577cee1e
      Tejun Heo authored
      Hello, Jens.
      
      The original thread can be read from
      
       http://thread.gmane.org/gmane.linux.kernel.cgroups/8937
      
      While it leads to oops, given that it only triggers under specific
      configurations which aren't common.  I don't think it's necessary to
      backport it through -stable and merging it during the coming merge
      window should be enough.
      
      Thanks!
      
      ----- 8< -----
      Currently, q->root_blkg and q->root_rl.blkg are set from
      blkcg_activate_policy() and cleared from blkg_destroy_all().  This
      doesn't necessarily coincide with the lifetime of the root blkcg_gq
      leading to the following oops when blkcg is enabled but no policy is
      activated because __blk_queue_next_rl() malfunctions expecting the
      root_blkg pointers to be set.
      
        BUG: unable to handle kernel NULL pointer dereference at           (null)
        IP: [<ffffffff810c58cb>] __wake_up_common+0x2b/0x90
        PGD 60f7a9067 PUD 60f4c9067 PMD 0
        Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
        gsmi: Log Shutdown Reason 0x03
        Modules linked in: act_mirred cls_tcindex cls_prioshift sch_dsmark xt_multiport iptable_mangle sata_mv elephant elephant_dev_num cdc_acm uhci_hcd ehci_hcd i2c_d
        CPU: 9 PID: 41382 Comm: iSCSI-write- Not tainted 3.11.0-dbg-DEV #19
        Hardware name: Intel XXX
        task: ffff88060d16eec0 ti: ffff88060d170000 task.ti: ffff88060d170000
        RIP: 0010:[<ffffffff810c58cb>] [<ffffffff810c58cb>] __wake_up_common+0x2b/0x90
        RSP: 0000:ffff88060d171818  EFLAGS: 00010096
        RAX: 0000000000000082 RBX: ffff880baa3dee60 RCX: 0000000000000000
        RDX: 0000000000000000 RSI: 0000000000000003 RDI: ffff880baa3dee60
        RBP: ffff88060d171858 R08: 0000000000000000 R09: 0000000000000000
        R10: 0000000000000000 R11: 0000000000000002 R12: ffff880baa3dee98
        R13: 0000000000000003 R14: 0000000000000000 R15: 0000000000000003
        FS:  00007f977cba6700(0000) GS:ffff880c79c60000(0000) knlGS:0000000000000000
        CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
        CR2: 0000000000000000 CR3: 000000060f7a5000 CR4: 00000000000007e0
        Stack:
         0000000000000082 0000000000000000 ffff88060d171858 ffff880baa3dee60
         0000000000000082 0000000000000003 0000000000000000 0000000000000000
         ffff88060d171898 ffffffff810c7848 ffff88060d171888 ffff880bde4bc4b8
        Call Trace:
         [<ffffffff810c7848>] __wake_up+0x48/0x70
         [<ffffffff8131da53>] __blk_drain_queue+0x123/0x190
         [<ffffffff8131dbb5>] blk_cleanup_queue+0xf5/0x210
         [<ffffffff8141877a>] __scsi_remove_device+0x5a/0xd0
         [<ffffffff81418824>] scsi_remove_device+0x34/0x50
         [<ffffffff814189cb>] scsi_remove_target+0x16b/0x220
         [<ffffffff814210f1>] __iscsi_unbind_session+0xd1/0x1b0
         [<ffffffff814212b2>] iscsi_remove_session+0xe2/0x1c0
         [<ffffffff814213a6>] iscsi_destroy_session+0x16/0x60
         [<ffffffff81423a59>] iscsi_session_teardown+0xd9/0x100
         [<ffffffff8142b75a>] iscsi_sw_tcp_session_destroy+0x5a/0xb0
         [<ffffffff81420948>] iscsi_if_rx+0x10e8/0x1560
         [<ffffffff81573335>] netlink_unicast+0x145/0x200
         [<ffffffff815736f3>] netlink_sendmsg+0x303/0x410
         [<ffffffff81528196>] sock_sendmsg+0xa6/0xd0
         [<ffffffff815294bc>] ___sys_sendmsg+0x38c/0x3a0
         [<ffffffff811ea840>] ? fget_light+0x40/0x160
         [<ffffffff811ea899>] ? fget_light+0x99/0x160
         [<ffffffff811ea840>] ? fget_light+0x40/0x160
         [<ffffffff8152bc79>] __sys_sendmsg+0x49/0x90
         [<ffffffff8152bcd2>] SyS_sendmsg+0x12/0x20
         [<ffffffff815fb642>] system_call_fastpath+0x16/0x1b
        Code: 66 66 66 66 90 55 48 89 e5 41 57 41 89 f7 41 56 41 89 ce 41 55 41 54 4c 8d 67 38 53 48 83 ec 18 89 55 c4 48 8b 57 38 4c 89 45 c8 <4c> 8b 2a 48 8d 42 e8 49
      
      Fix it by moving r->root_blkg and q->root_rl.blkg setting to
      blkg_create() and clearing to blkg_destroy() so that they area
      initialized when a root blkg is created and cleared when destroyed.
      Reported-and-tested-by: default avatarAnatol Pomozov <anatol.pomozov@gmail.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      577cee1e
    • Joe Perches's avatar
      block: Convert kmalloc_node(...GFP_ZERO...) to kzalloc_node(...) · c1b511eb
      Joe Perches authored
      Use the helper function instead of __GFP_ZERO.
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      c1b511eb
    • Jianpeng Ma's avatar
      block: trace all devices plug operation · 7aef2e78
      Jianpeng Ma authored
      In func blk_queue_bio, if list of plug is empty,it will call
      blk_trace_plug.
      If process deal with a single device,it't ok.But if process deal with
      multi devices,it only trace the first device.
      Using request_count to judge, it can soleve this problem.
      
      In addition, i modify the comment.
      Signed-off-by: default avatarJianpeng Ma <majianpeng@gmail.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      7aef2e78
  5. 02 Sep, 2013 4 commits
  6. 31 Aug, 2013 3 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · a8787645
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) There was a simplification in the ipv6 ndisc packet sending
          attempted here, which avoided using memory accounting on the
          per-netns ndisc socket for sending NDISC packets.  It did fix some
          important issues, but it causes regressions so it gets reverted here
          too.  Specifically, the problem with this change is that the IPV6
          output path really depends upon there being a valid skb->sk
          attached.
      
          The reason we want to do this change in some form when we figure out
          how to do it right, is that if a device goes down the ndisc_sk
          socket send queue will fill up and block NDISC packets that we want
          to send to other devices too.  That's really bad behavior.
      
          Hopefully Thomas can come up with a better version of this change.
      
       2) Fix a severe TCP performance regression by reverting a change made
          to dev_pick_tx() quite some time ago.  From Eric Dumazet.
      
       3) TIPC returns wrongly signed error codes, fix from Erik Hugne.
      
       4) Fix OOPS when doing IPSEC over ipv4 tunnels due to orphaning the
          skb->sk too early.  Fix from Li Hongjun.
      
       5) RAW ipv4 sockets can use the wrong routing key during lookup, from
          Chris Clark.
      
       6) Similar to #1 revert an older change that tried to use plain
          alloc_skb() for SYN/ACK TCP packets, this broke the netfilter owner
          mark which needs to see the skb->sk for such frames.  From Phil
          Oester.
      
       7) BNX2x driver bug fixes from Ariel Elior and Yuval Mintz,
          specifically in the handling of virtual functions.
      
       8) IPSEC path error propagations to sockets is not done properly when
          we have v4 in v6, and v6 in v4 type rules.  Fix from Hannes Frederic
          Sowa.
      
       9) Fix missing channel context release in mac80211, from Johannes Berg.
      
      10) Fix network namespace handing wrt.  SCM_RIGHTS, from Andy
          Lutomirski.
      
      11) Fix usage of bogus NAPI weight in jme, netxen, and ps3_gelic
          drivers.  From Michal Schmidt.
      
      12) Hopefully a complete and correct fix for the genetlink dump locking
          and module reference counting.  From Pravin B Shelar.
      
      13) sk_busy_loop() must do a cpu_relax(), from Eliezer Tamir.
      
      14) Fix handling of timestamp offset when restoring a snapshotted TCP
          socket.  From Andrew Vagin.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (44 commits)
        net: fec: fix time stamping logic after napi conversion
        net: bridge: convert MLDv2 Query MRC into msecs_to_jiffies for max_delay
        mISDN: return -EINVAL on error in dsp_control_req()
        net: revert 8728c544 ("net: dev_pick_tx() fix")
        Revert "ipv6: Don't depend on per socket memory for neighbour discovery messages"
        ipv4 tunnels: fix an oops when using ipip/sit with IPsec
        tipc: set sk_err correctly when connection fails
        tcp: tcp_make_synack() should use sock_wmalloc
        bridge: separate querier and query timer into IGMP/IPv4 and MLD/IPv6 ones
        ipv6: Don't depend on per socket memory for neighbour discovery messages
        ipv4: sendto/hdrincl: don't use destination address found in header
        tcp: don't apply tsoffset if rcv_tsecr is zero
        tcp: initialize rcv_tstamp for restored sockets
        net: xilinx: fix memleak
        net: usb: Add HP hs2434 device to ZLP exception table
        net: add cpu_relax to busy poll loop
        net: stmmac: fixed the pbl setting with DT
        genl: Hold reference on correct module while netlink-dump.
        genl: Fix genl dumpit() locking.
        xfrm: Fix potential null pointer dereference in xdst_queue_output
        ...
      a8787645
    • Ian Campbell's avatar
      MAINTAINERS: change my DT related maintainer address · de80963e
      Ian Campbell authored
      Filtering capabilities on my work email are pretty much non-existent and this
      has turned out to be something of a firehose...
      
      Cc: Stephen Warren <swarren@wwwdotorg.org>
      Cc: Rob Herring <rob.herring@calxeda.com>
      Cc: Olof Johansson <olof@lixom.net>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarIan Campbell <ian.campbell@citrix.com>
      Acked-by: default avatarPawel Moll <pawel.moll@arm.com>
      Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      de80963e
    • Linus Torvalds's avatar
      Merge tag 'sound-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 936dbcc3
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "This contains two Oops fixes (opti9xx and HD-audio) and a simple fixup
        for an Acer laptop.  All marked as stable patches"
      
      * tag 'sound-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: opti9xx: Fix conflicting driver object name
        ALSA: hda - Fix NULL dereference with CONFIG_SND_DYNAMIC_MINORS=n
        ALSA: hda - Add inverted digital mic fixup for Acer Aspire One
      936dbcc3
  7. 30 Aug, 2013 15 commits
  8. 29 Aug, 2013 12 commits