1. 19 Feb, 2012 16 commits
  2. 18 Feb, 2012 15 commits
  3. 13 Feb, 2012 1 commit
  4. 11 Feb, 2012 2 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 3ec1e88b
      Linus Torvalds authored
      Says Jens:
      
       "Time to push off some of the pending items.  I really wanted to wait
        until we had the regression nailed, but alas it's not quite there yet.
        But I'm very confident that it's "just" a missing expire on exit, so
        fix from Tejun should be fairly trivial.  I'm headed out for a week on
        the slopes.
      
        - Killing the barrier part of mtip32xx.  It doesn't really support
          barriers, and it doesn't need them (writes are fully ordered).
      
        - A few fixes from Dan Carpenter, preventing overflows of integer
          multiplication.
      
        - A fixup for loop, fixing a previous commit that didn't quite solve
          the partial read problem from Dave Young.
      
        - A bio integer overflow fix from Kent Overstreet.
      
        - Improvement/fix of the door "keep locked" part of the cdrom shared
          code from Paolo Benzini.
      
        - A few cfq fixes from Shaohua Li.
      
        - A fix for bsg sysfs warning when removing a file it did not create
          from Stanislaw Gruszka.
      
        - Two fixes for floppy from Vivek, preventing a crash.
      
        - A few block core fixes from Tejun.  One killing the over-optimized
          ioc exit path, cleaning that up nicely.  Two others fixing an oops
          on elevator switch, due to calling into the scheduler merge check
          code without holding the queue lock."
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: fix lockdep warning on io_context release put_io_context()
        relay: prevent integer overflow in relay_open()
        loop: zero fill bio instead of return -EIO for partial read
        bio: don't overflow in bio_get_nr_vecs()
        floppy: Fix a crash during rmmod
        floppy: Cleanup disk->queue before caling put_disk() if add_disk() was never called
        cdrom: move shared static to cdrom_device_info
        bsg: fix sysfs link remove warning
        block: don't call elevator callbacks for plug merges
        block: separate out blk_rq_merge_ok() and blk_try_merge() from elevator functions
        mtip32xx: removed the irrelevant argument of mtip_hw_submit_io() and the unused member of struct driver_data
        block: strip out locking optimization in put_io_context()
        cdrom: use copy_to_user() without the underscores
        block: fix ioc locking warning
        block: fix NULL icq_cache reference
        block,cfq: change code order
      3ec1e88b
    • Tejun Heo's avatar
      block: fix lockdep warning on io_context release put_io_context() · d8c66c5d
      Tejun Heo authored
      11a3122f "block: strip out locking optimization in put_io_context()"
      removed ioc_lock depth lockdep annoation along with locking
      optimization; however, while recursing from put_io_context() is no
      longer possible, ioc_release_fn() may still end up putting the last
      reference of another ioc through elevator, which wlil grab ioc->lock
      triggering spurious (as the ioc is always different one) A-A deadlock
      warning.
      
      As this can only happen one time from ioc_release_fn(), using non-zero
      subclass from ioc_release_fn() is enough.  Use subclass 1.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      d8c66c5d
  5. 10 Feb, 2012 6 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 8df54d62
      Linus Torvalds authored
      Quoth David:
      
      1) GRO MAC header comparisons were ethernet specific, breaking other
         link types.  This required a multi-faceted fix to cure the originally
         noted case (Infiniband), because IPoIB was lying about it's actual
         hard header length.  Thanks to Eric Dumazet, Roland Dreier, and
         others.
      
      2) Fix build failure when INET_UDP_DIAG is built in and ipv6 is modular.
         From Anisse Astier.
      
      3) Off by ones and other bug fixes in netprio_cgroup from Neil Horman.
      
      4) ipv4 TCP reset generation needs to respect any network interface
         binding from the socket, otherwise route lookups might give a
         different result than all the other segments received.  From Shawn
         Lu.
      
      5) Fix unintended regression in ipv4 proxy ARP responses, from Thomas
         Graf.
      
      6) Fix SKB under-allocation bug in sh_eth, from Yoshihiro Shimoda.
      
      7) Revert skge PCI mapping changes that are causing crashes for some
         folks, from Stephen Hemminger.
      
      8) IPV4 route lookups fill in the wildcarded fields of the given flow
         lookup key passed in, which is fine most of the time as this is
         exactly what the caller's want.  However there are a few cases that
         want to retain the original flow key values afterwards, so handle
         those cases properly.  Fix from Julian Anastasov.
      
      9) IGB/IXGBE VF lookup bug fixes from Greg Rose.
      
      10) Properly null terminate filename passed to ethtool flash device
          method, from Ben Hutchings.
      
      11) S3 resume fix in via-velocity from David Lv.
      
      12) Fix double SKB free during xmit failure in CAIF, from Dmitry
          Tarnyagin.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (72 commits)
        net: Don't proxy arp respond if iif == rt->dst.dev if private VLAN is disabled
        ipv4: Fix wrong order of ip_rt_get_source() and update iph->daddr.
        netprio_cgroup: fix wrong memory access when NETPRIO_CGROUP=m
        netprio_cgroup: don't allocate prio table when a device is registered
        netprio_cgroup: fix an off-by-one bug
        bna: fix error handling of bnad_get_flash_partition_by_offset()
        isdn: type bug in isdn_net_header()
        net: Make qdisc_skb_cb upper size bound explicit.
        ixgbe: ethtool: stats user buffer overrun
        ixgbe: dcb: up2tc mapping lost on disable/enable CEE DCB state
        ixgbe: do not update real num queues when netdev is going away
        ixgbe: Fix broken dependency on MAX_SKB_FRAGS being related to page size
        ixgbe: Fix case of Tx Hang in PF with 32 VFs
        ixgbe: fix vf lookup
        igb: fix vf lookup
        e1000: add dropped DMA receive enable back in for WoL
        gro: more generic L2 header check
        IPoIB: Stop lying about hard_header_len and use skb->cb to stash LL addresses
        zd1211rw: firmware needs duration_id set to zero for non-pspoll frames
        net: enable TC35815 for MIPS again
        ...
      8df54d62
    • Thomas Graf's avatar
      net: Don't proxy arp respond if iif == rt->dst.dev if private VLAN is disabled · 70620c46
      Thomas Graf authored
      Commit 653241 (net: RFC3069, private VLAN proxy arp support) changed
      the behavior of arp proxy to send arp replies back out on the interface
      the request came in even if the private VLAN feature is disabled.
      
      Previously we checked rt->dst.dev != skb->dev for in scenarios, when
      proxy arp is enabled on for the netdevice and also when individual proxy
      neighbour entries have been added.
      
      This patch adds the check back for the pneigh_lookup() scenario.
      Signed-off-by: default avatarThomas Graf <tgraf@suug.ch>
      Acked-by: default avatarJesper Dangaard Brouer <hawk@comx.dk>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      70620c46
    • Li Wei's avatar
      ipv4: Fix wrong order of ip_rt_get_source() and update iph->daddr. · 5dc7883f
      Li Wei authored
      This patch fix a bug which introduced by commit ac8a4810 (ipv4: Save
      nexthop address of LSRR/SSRR option to IPCB.).In that patch, we saved
      the nexthop of SRR in ip_option->nexthop and update iph->daddr until
      we get to ip_forward_options(), but we need to update it before
      ip_rt_get_source(), otherwise we may get a wrong src.
      Signed-off-by: default avatarLi Wei <lw@cn.fujitsu.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5dc7883f
    • Neil Horman's avatar
      netprio_cgroup: fix wrong memory access when NETPRIO_CGROUP=m · 2b73bc65
      Neil Horman authored
      When the netprio_cgroup module is not loaded, net_prio_subsys_id
      is -1, and so sock_update_prioidx() accesses cgroup_subsys array
      with negative index subsys[-1].
      
      Make the code resembles cls_cgroup code, which is bug free.
      Origionally-authored-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      CC: "David S. Miller" <davem@davemloft.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      2b73bc65
    • Neil Horman's avatar
      netprio_cgroup: don't allocate prio table when a device is registered · f5c38208
      Neil Horman authored
      So we delay the allocation till the priority is set through cgroup,
      and this makes skb_update_priority() faster when it's not set.
      
      This also eliminates an off-by-one bug similar with the one fixed
      in the previous patch.
      Origionally-authored-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      CC: "David S. Miller" <davem@davemloft.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f5c38208
    • Neil Horman's avatar
      netprio_cgroup: fix an off-by-one bug · a87dfe14
      Neil Horman authored
      # mount -t cgroup xxx /mnt
        # mkdir /mnt/tmp
        # cat /mnt/tmp/net_prio.ifpriomap
        lo 0
        eth0 0
        virbr0 0
        # echo 'lo 999' > /mnt/tmp/net_prio.ifpriomap
        # cat /mnt/tmp/net_prio.ifpriomap
        lo 999
        eth0 0
        virbr0 4101267344
      
      We got weired output, because we exceeded the boundary of the array.
      We may even crash the kernel..
      Origionally-authored-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      CC: "David S. Miller" <davem@davemloft.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a87dfe14