27 May, 2011

3 commits

  • * 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    gfs2: Drop __TIME__ usage
    isdn/diva: Drop __TIME__ usage
    atm: Drop __TIME__ usage
    dlm: Drop __TIME__ usage
    wan/pc300: Drop __TIME__ usage
    parport: Drop __TIME__ usage
    hdlcdrv: Drop __TIME__ usage
    baycom: Drop __TIME__ usage
    pmcraid: Drop __DATE__ usage
    edac: Drop __DATE__ usage
    rio: Drop __DATE__ usage
    scsi/wd33c93: Drop __TIME__ usage
    scsi/in2000: Drop __TIME__ usage
    aacraid: Drop __TIME__ usage
    media/cx231xx: Drop __TIME__ usage
    media/radio-maxiradio: Drop __TIME__ usage
    nozomi: Drop __TIME__ usage
    cyclades: Drop __TIME__ usage

    Linus Torvalds
     
  • …nel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

    * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    seqlock: Get rid of SEQLOCK_UNLOCKED

    * 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    irq: Remove smp_affinity_list when unregister irq proc

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
    RDMA/cma: Save PID of ID's owner
    RDMA/cma: Add support for netlink statistics export
    RDMA/cma: Pass QP type into rdma_create_id()
    RDMA: Update exported headers list
    RDMA/cma: Export enum cma_state in
    RDMA/nes: Add a check for strict_strtoul()
    RDMA/cxgb3: Don't post zero-byte read if endpoint is going away
    RDMA/cxgb4: Use completion objects for event blocking
    IB/srp: Fix integer -> pointer cast warnings
    IB: Add devnode methods to cm_class and umad_class
    IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required
    IB/uverbs: Add devnode method to set path/mode
    RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node
    RDMA: Add netlink infrastructure
    RDMA: Add error handling to ib_core_init()

    Linus Torvalds
     

26 May, 2011

12 commits

  • The kernel already prints its build timestamp during boot, no need to
    repeat it in random drivers and produce different object files each
    time.

    Acked-by: David S. Miller
    Cc: netdev@vger.kernel.org
    Signed-off-by: Michal Marek

    Michal Marek
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/linux-2.6-nsfd:
    net: fix get_net_ns_by_fd for !CONFIG_NET_NS
    ns proc: Return -ENOENT for a nonexistent /proc/self/ns/ entry.
    ns: Declare sys_setns in syscalls.h
    net: Allow setting the network namespace by fd
    ns proc: Add support for the ipc namespace
    ns proc: Add support for the uts namespace
    ns proc: Add support for the network namespace.
    ns: Introduce the setns syscall
    ns: proc files for namespace naming policy.

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (89 commits)
    bonding: documentation and code cleanup for resend_igmp
    bonding: prevent deadlock on slave store with alb mode (v3)
    net: hold rtnl again in dump callbacks
    Add Fujitsu 1000base-SX PCI ID to tg3
    bnx2x: protect sequence increment with mutex
    sch_sfq: fix peek() implementation
    isdn: netjet - blacklist Digium TDM400P
    via-velocity: don't annotate MAC registers as packed
    xen: netfront: hold RTNL when updating features.
    sctp: fix memory leak of the ASCONF queue when free asoc
    net: make dev_disable_lro use physical device if passed a vlan dev (v2)
    net: move is_vlan_dev into public header file (v2)
    bug.h: Fix build with CONFIG_PRINTK disabled.
    wireless: fix fatal kernel-doc error + warning in mac80211.h
    wireless: fix cfg80211.h new kernel-doc warnings
    iwlagn: dbg_fixed_rate only used when CONFIG_MAC80211_DEBUGFS enabled
    dst: catch uninitialized metrics
    be2net: hash key for rss-config cmd not set
    bridge: initialize fake_rtable metrics
    net: fix __dst_destroy_metrics_generic()
    ...

    Fix up trivial conflicts in drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c

    Linus Torvalds
     
  • Commit e67f88dd12f6 (dont hold rtnl mutex during netlink dump callbacks)
    missed fact that rtnl_fill_ifinfo() must be called with rtnl held.

    Because of possible deadlocks between two mutexes (cb_mutex and rtnl),
    its not easy to solve this problem, so revert this part of the patch.

    It also forgot one rcu_read_unlock() in FIB dump_rules()

    Add one ASSERT_RTNL() in rtnl_fill_ifinfo() to remind us the rule.

    Signed-off-by: Eric Dumazet
    CC: Patrick McHardy
    CC: Stephen Hemminger
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Since commit eeaeb068f139 (sch_sfq: allow big packets and be fair),
    sfq_peek() can return a different skb that would be normally dequeued by
    sfq_dequeue() [ if current slot->allot is negative ]

    Use generic qdisc_peek_dequeued() instead of custom implementation, to
    get consistent result.

    Signed-off-by: Eric Dumazet
    CC: Jarek Poplawski
    CC: Patrick McHardy
    CC: Jesper Dangaard Brouer
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • If an ASCONF chunk is outstanding, then the following ASCONF
    chunk will be queued for later transmission. But when we free
    the asoc, we forget to free the ASCONF queue at the same time,
    this will cause memory leak.

    Signed-off-by: Wei Yongjun
    Signed-off-by: David S. Miller

    Wei Yongjun
     
  • If the device passed into dev_disable_lro is a vlan, then repoint the dev
    poniter so that we actually modify the underlying physical device.

    Signed-of-by: Neil Horman
    CC: davem@davemloft.net
    CC: bhutchings@solarflare.com

    Signed-off-by: David S. Miller

    Neil Horman
     
  • Migrate is_vlan_dev() to if_vlan.h so that core networkig can use it

    Signed-off-by: Neil Horman
    CC: davem@davemloft.net
    CC: bhutchings@solarflare.com
    Signed-off-by: David S. Miller

    Neil Horman
     
  • The RDMA CM currently infers the QP type from the port space selected
    by the user. In the future (eg with RDMA_PS_IB or XRC), there may not
    be a 1-1 correspondence between port space and QP type. For netlink
    export of RDMA CM state, we want to export the QP type to userspace,
    so it is cleaner to explicitly associate a QP type to an ID.

    Modify rdma_create_id() to allow the user to specify the QP type, and
    use it to make our selections of datagram versus connected mode.

    Signed-off-by: Sean Hefty
    Signed-off-by: Roland Dreier

    Sean Hefty
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (23 commits)
    ceph: fix cap flush race reentrancy
    libceph: subscribe to osdmap when cluster is full
    libceph: handle new osdmap down/state change encoding
    rbd: handle online resize of underlying rbd image
    ceph: avoid inode lookup on nfs fh reconnect
    ceph: use LOOKUPINO to make unconnected nfs fh more reliable
    rbd: use snprintf for disk->disk_name
    rbd: cleanup: make kfree match kmalloc
    rbd: warn on update_snaps failure on notify
    ceph: check return value for start_request in writepages
    ceph: remove useless check
    libceph: add missing breaks in addr_set_port
    libceph: fix TAG_WAIT case
    ceph: fix broken comparison in readdir loop
    libceph: fix osdmap timestamp assignment
    ceph: fix rare potential cap leak
    libceph: use snprintf for unknown addrs
    libceph: use snprintf for formatting object name
    ceph: use snprintf for dirstat content
    libceph: fix uninitialized value when no get_authorizer method is set
    ...

    Linus Torvalds
     
  • …ville/wireless-next-2.6

    David S. Miller
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
    9p: update Documentation pointers
    net/9p: enable 9p to work in non-default network namespace
    net/9p: p9_idpool_get return -1 on error
    fs/9p: Don't clunk dentry fid when we fail to get a writeback inode
    9p: Small cleanup in
    9p: remove experimental tag from tested configurations
    9p: typo fixes and minor cleanups
    net/9p: Change linuxdoc names to match functions.

    Linus Torvalds
     

25 May, 2011

14 commits

  • Change each shrinker's API by consolidating the existing parameters into
    shrink_control struct. This will simplify any further features added w/o
    touching each file of shrinker.

    [akpm@linux-foundation.org: fix build]
    [akpm@linux-foundation.org: fix warning]
    [kosaki.motohiro@jp.fujitsu.com: fix up new shrinker API]
    [akpm@linux-foundation.org: fix xfs warning]
    [akpm@linux-foundation.org: update gfs2]
    Signed-off-by: Ying Han
    Cc: KOSAKI Motohiro
    Cc: Minchan Kim
    Acked-by: Pavel Emelyanov
    Cc: KAMEZAWA Hiroyuki
    Cc: Mel Gorman
    Acked-by: Rik van Riel
    Cc: Johannes Weiner
    Cc: Hugh Dickins
    Cc: Dave Hansen
    Cc: Steven Whitehouse
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ying Han
     
  • Teach 9p filesystem to work in container with non-default network namespace.
    (Note: I also patched the unix domain socket code but don't have a test case
    for that. It's the same fix, I just don't have a server for it...)

    To test, run diod server (http://code.google.com/p/diod):
    diod -n -f -L stderr -l 172.23.255.1:9999 -c /dev/null -e /root
    and then mount like so:
    mount -t 9p -o port=9999,aname=/root,version=9p2000.L 172.23.255.1 /mnt

    A container test environment is described at http://landley.net/lxc

    Signed-off-by: Rob Landley
    Signed-off-by: Eric Van Hensbergen

    Rob Landley
     
  • We need to return -1 on error. Also handle error properly

    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Eric Van Hensbergen

    Aneesh Kumar K.V
     
  • The 9p client is currently undergoing regular regresssion and
    stress testing as a by-product of the virtfs work. I think its
    finally time to take off the experimental tags from the well-tested
    code paths.

    Signed-off-by: Eric Van Hensbergen

    Eric Van Hensbergen
     
  • Typo fixes and minor cleanups for v9fs

    Signed-off-by: Rob Landley
    Reviewed-by: Venkateswararao Jujjuri (JV)
    Signed-off-by: Eric Van Hensbergen

    Rob Landley
     
  • As on Jeopardy, my question is in the form of a patch: Does this have
    some special meaning, or is it an accident? (I looked at other
    filesystems but they didn't bother having doc entries for their
    init/exit function that I could find.)

    Signed-off-by: Rob Landley
    Signed-off-by: Eric Van Hensbergen

    Rob Landley
     
  • After merging the final tree, today's linux-next build (powerpc
    ppc44x_defconfig) failed like this:

    net/built-in.o: In function `get_net_ns_by_fd':
    (.text+0x11976): undefined reference to `netns_operations'
    net/built-in.o: In function `get_net_ns_by_fd':
    (.text+0x1197a): undefined reference to `netns_operations'

    netns_operations is only available if CONFIG_NET_NS is set ...

    Caused by commit f063052947f7 ("net: Allow setting the network namespace
    by fd").

    Signed-off-by: Stephen Rothwell
    Signed-off-by: Eric W. Biederman

    Stephen Rothwell
     
  • John W. Linville
     
  • When the cluster is marked full, subscribe to subsequent map updates to
    ensure we find out promptly when it is no longer full. This will prevent
    us from spewing ENOSPC for (much) longer than necessary.

    Signed-off-by: Sage Weil

    Sage Weil
     
  • Old incrementals encode a 0 value (nearly always) when an osd goes down.
    Change that to allow any state bit(s) to be flipped. Special case 0 to
    mean flip the CEPH_OSD_UP bit to mimic the old behavior.

    Signed-off-by: Sage Weil

    Sage Weil
     
  • bridge netfilter code uses a fake_rtable, and we must init its _metric
    field or risk NULL dereference later.

    Ref: https://bugzilla.kernel.org/show_bug.cgi?id=35672

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • dst_default_metrics is readonly, we dont want to kfree() it later.

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • In igmp_group_dropped() we call ip_mc_clear_src(), which resets the number
    of source filters per mulitcast. However, igmp_group_dropped() is also
    called on NETDEV_DOWN, NETDEV_PRE_TYPE_CHANGE and NETDEV_UNREGISTER, which
    means that the group might get added back on NETDEV_UP, NETDEV_REGISTER and
    NETDEV_POST_TYPE_CHANGE respectively, leaving us with broken source
    filters.

    To fix that, we must clear the source filters only when there are no users
    in the ip_mc_list, i.e. in ip_mc_dec_group() and on device destroy.

    Acked-by: David L Stevens
    Signed-off-by: Veaceslav Falico
    Signed-off-by: David S. Miller

    Veaceslav Falico
     
  • synchronize_rcu() is very slow in various situations (HZ=100,
    CONFIG_NO_HZ=y, CONFIG_PREEMPT=n)

    Extract from my (mostly idle) 8 core machine :

    synchronize_rcu() in 99985 us
    synchronize_rcu() in 79982 us
    synchronize_rcu() in 87612 us
    synchronize_rcu() in 79827 us
    synchronize_rcu() in 109860 us
    synchronize_rcu() in 98039 us
    synchronize_rcu() in 89841 us
    synchronize_rcu() in 79842 us
    synchronize_rcu() in 80151 us
    synchronize_rcu() in 119833 us
    synchronize_rcu() in 99858 us
    synchronize_rcu() in 73999 us
    synchronize_rcu() in 79855 us
    synchronize_rcu() in 79853 us

    When we hold RTNL mutex, we would like to spend some cpu cycles but not
    block too long other processes waiting for this mutex.

    We also want to setup/dismantle network features as fast as possible at
    boot/shutdown time.

    This patch makes synchronize_net() call the expedited version if RTNL is
    locked.

    synchronize_rcu_expedited() typical delay is about 20 us on my machine.

    synchronize_rcu_expedited() in 18 us
    synchronize_rcu_expedited() in 18 us
    synchronize_rcu_expedited() in 18 us
    synchronize_rcu_expedited() in 18 us
    synchronize_rcu_expedited() in 20 us
    synchronize_rcu_expedited() in 16 us
    synchronize_rcu_expedited() in 20 us
    synchronize_rcu_expedited() in 18 us
    synchronize_rcu_expedited() in 18 us

    Signed-off-by: Eric Dumazet
    CC: Paul E. McKenney
    CC: Ben Greear
    Reviewed-by: Paul E. McKenney
    Signed-off-by: David S. Miller

    Eric Dumazet
     

24 May, 2011

10 commits

  • All static seqlock should be initialized with the lockdep friendly
    __SEQLOCK_UNLOCKED() macro.

    Remove legacy SEQLOCK_UNLOCKED() macro.

    Signed-off-by: Eric Dumazet
    Cc: David Miller
    Link: http://lkml.kernel.org/r/%3C1306238888.3026.31.camel%40edumazet-laptop%3E
    Signed-off-by: Thomas Gleixner

    Eric Dumazet
     
  • James Morris
     
  • The %pK format specifier is designed to hide exposed kernel pointers,
    specifically via /proc interfaces. Exposing these pointers provides an
    easy target for kernel write vulnerabilities, since they reveal the
    locations of writable structures containing easily triggerable function
    pointers. The behavior of %pK depends on the kptr_restrict sysctl.

    If kptr_restrict is set to 0, no deviation from the standard %p behavior
    occurs. If kptr_restrict is set to 1, the default, if the current user
    (intended to be a reader via seq_printf(), etc.) does not have CAP_SYSLOG
    (currently in the LSM tree), kernel pointers using %pK are printed as 0's.
    If kptr_restrict is set to 2, kernel pointers using %pK are printed as
    0's regardless of privileges. Replacing with 0's was chosen over the
    default "(null)", which cannot be parsed by userland %p, which expects
    "(nil)".

    The supporting code for kptr_restrict and %pK are currently in the -mm
    tree. This patch converts users of %p in net/ to %pK. Cases of printing
    pointers to the syslog are not covered, since this would eliminate useful
    information for postmortem debugging and the reading of the syslog is
    already optionally protected by the dmesg_restrict sysctl.

    Signed-off-by: Dan Rosenberg
    Cc: James Morris
    Cc: Eric Dumazet
    Cc: Thomas Graf
    Cc: Eugene Teo
    Cc: Kees Cook
    Cc: Ingo Molnar
    Cc: David S. Miller
    Cc: Peter Zijlstra
    Cc: Eric Paris
    Signed-off-by: Andrew Morton
    Signed-off-by: David S. Miller

    Dan Rosenberg
     
  • Like ipv4, just return xfrm6_rcv_spi()'s return value directly.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • A mis-configured filter can spam the logs with lots of stack traces.

    Rate-limit the warnings and add printout of the bogus filter information.

    Original-patch-by: Ben Greear
    Signed-off-by: Joe Perches
    Signed-off-by: David S. Miller

    Joe Perches
     
  • While chasing a possible net_sched bug, I found that IP fragments have
    litle chance to pass a congestioned SFQ qdisc :

    - Say SFQ qdisc is full because one flow is non responsive.
    - ip_fragment() wants to send two fragments belonging to an idle flow.
    - sfq_enqueue() queues first packet, but see queue limit reached :
    - sfq_enqueue() drops one packet from 'big consumer', and returns
    NET_XMIT_CN.
    - ip_fragment() cancel remaining fragments.

    This patch restores fairness, making sure we return NET_XMIT_CN only if
    we dropped a packet from the same flow.

    Signed-off-by: Eric Dumazet
    CC: Patrick McHardy
    CC: Jarek Poplawski
    CC: Jamal Hadi Salim
    CC: Stephen Hemminger
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • No need to wait for a rcu grace period after list insertion.

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • net/ipv4/ping.c: In function ‘ping_v4_unhash’:
    net/ipv4/ping.c:140:28: warning: variable ‘hslot’ set but not used

    Signed-off-by: Eric Dumazet
    CC: Vasiliy Kulikov
    Acked-by: Vasiliy Kulikov
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)
    b43: fix comment typo reqest -> request
    Haavard Skinnemoen has left Atmel
    cris: typo in mach-fs Makefile
    Kconfig: fix copy/paste-ism for dell-wmi-aio driver
    doc: timers-howto: fix a typo ("unsgined")
    perf: Only include annotate.h once in tools/perf/util/ui/browsers/annotate.c
    md, raid5: Fix spelling error in comment ('Ofcourse' --> 'Of course').
    treewide: fix a few typos in comments
    regulator: change debug statement be consistent with the style of the rest
    Revert "arm: mach-u300/gpio: Fix mem_region resource size miscalculations"
    audit: acquire creds selectively to reduce atomic op overhead
    rtlwifi: don't touch with treewide double semicolon removal
    treewide: cleanup continuations and remove logging message whitespace
    ath9k_hw: don't touch with treewide double semicolon removal
    include/linux/leds-regulator.h: fix syntax in example code
    tty: fix typo in descripton of tty_termios_encode_baud_rate
    xtensa: remove obsolete BKL kernel option from defconfig
    m68k: fix comment typo 'occcured'
    arch:Kconfig.locks Remove unused config option.
    treewide: remove extra semicolons
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (36 commits)
    HID: hid-multitouch: cosmetic changes, sort classes and devices
    HID: hid-multitouch: class MT_CLS_STANTUM is redundant with MT_CLS_CONFIDENCE
    HID: hid-multitouch: add support for Unitec panels
    HID: hid-multitouch: add support for Touch International panels
    HID: hid-multitouch: add support for GoodTouch panels
    HID: hid-multitouch: add support for CVTouch panels
    HID: hid-multitouch: add support for ActionStar panels
    HID: hiddev: fix race between hiddev_disconnect and hiddev_release
    HID: magicmouse: ignore 'ivalid report id' while switching modes
    HID: fix a crash in hid_report_raw_event() function.
    HID: hid-multitouch: add support for Elo TouchSystems 2515 IntelliTouch Plus
    HID: assorted usage updates from hut 1.12
    HID: roccat: fix actual/startup profile sysfs attribute in koneplus
    HID: hid-multitouch: Add support for Lumio panels
    HID: 'name' and 'phys' in 'struct hid_device' can never be NULL
    HID: hid-multitouch: add support for Ilitek dual-touch panel
    HID: picolcd: Avoid compile warning/error triggered by copy_from_user()
    HID: add support for Logitech G27 wheel
    HID: hiddev: fix error path in hiddev_read when interrupted
    HID: add support for Sony Navigation Controller
    ...

    Linus Torvalds
     

23 May, 2011

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (27 commits)
    bnx2x: allow device properly initialize after hotplug
    bnx2x: fix DMAE timeout according to hw specifications
    bnx2x: properly handle CFC DEL in cnic flow
    bnx2x: call dev_kfree_skb_any instead of dev_kfree_skb
    net: filter: move forward declarations to avoid compile warnings
    pktgen: refactor pg_init() code
    pktgen: use vzalloc_node() instead of vmalloc_node() + memset()
    net: skb_trim explicitely check the linearity instead of data_len
    ipv4: Give backtrace in ip_rt_bug().
    net: avoid synchronize_rcu() in dev_deactivate_many
    net: remove synchronize_net() from netdev_set_master()
    rtnetlink: ignore NETDEV_RELEASE and NETDEV_JOIN event
    net: rename NETDEV_BONDING_DESLAVE to NETDEV_RELEASE
    bridge: call NETDEV_JOIN notifiers when add a slave
    netpoll: disable netpoll when enslave a device
    macvlan: Forward unicast frames in bridge mode to lowerdev
    net: Remove linux/prefetch.h include from linux/skbuff.h
    ipv4: Include linux/prefetch.h in fib_trie.c
    netlabel: Remove prefetches from list handlers.
    drivers/net: add prefetch header for prefetch users
    ...

    Fixed up prefetch parts: removed a few duplicate prefetch.h includes,
    fixed the location of the igb prefetch.h, took my version of the
    skbuff.h code without the extra parentheses etc.

    Linus Torvalds