24 May, 2011

3 commits

  • James Morris
     
  • * '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

16 commits

  • * 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
     
  • Commit e66eed651fd1 ("list: remove prefetching from regular list
    iterators") removed the include of prefetch.h from list.h. The skbuff
    list traversal still had them.

    Quoth David Miller:
    "Please just remove the prefetches.

    Those are modelled after list.h as I intend to eventually convert
    SKB list handling to "struct list_head" but we're not there yet.

    Therefore if we kill prefetches from list.h we should kill it from
    these things in skbuff.h too."

    Requested-by: David Miller
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • After discovering that wide use of prefetch on modern CPUs
    could be a net loss instead of a win, net drivers which were
    relying on the implicit inclusion of prefetch.h via the list
    headers showed up in the resulting cleanup fallout. Give
    them an explicit include via the following $0.02 script.

    =========================================
    #!/bin/bash
    MANUAL=""
    for i in `git grep -l 'prefetch(.*)' .` ; do
    grep -q '' $i
    if [ $? = 0 ] ; then
    continue
    fi

    ( echo '?^#include '
    echo .
    echo w
    echo q
    ) | ed -s $i > /dev/null 2>&1
    if [ $? != 0 ]; then
    echo $i needs manual fixup
    MANUAL="$i $MANUAL"
    fi
    done
    echo ------------------- 8\
    [ Fixed up some incorrect #include placements, and added some
    non-network drivers and the fib_trie.c case - Linus ]
    Signed-off-by: Linus Torvalds

    Paul Gortmaker
     
  • This also shrinks the object size a little.

    text data bss dec hex filename
    28834 186 8 29028 7164 net/core/pktgen.o
    28816 186 8 29010 7152 net/core/pktgen.o.AFTER

    Signed-off-by: WANG Cong
    Cc: "David Miller" ,
    Signed-off-by: David S. Miller

    WANG Cong
     
  • Signed-off-by: WANG Cong
    Cc: "David S. Miller"
    Signed-off-by: David S. Miller

    WANG Cong
     
  • Add a stack backtrace to the ip_rt_bug path for debugging

    Signed-off-by: Dave Jones
    Signed-off-by: David S. Miller

    Dave Jones
     
  • dev_deactivate_many() issues one synchronize_rcu() call after qdiscs set
    to noop_qdisc.

    This call is here to make sure they are no outstanding qdisc-less
    dev_queue_xmit calls before returning to caller.

    But in dismantle phase, we dont have to wait, because we wont activate
    again the device, and we are going to wait one rcu grace period later in
    rollback_registered_many().

    After this patch, device dismantle uses one synchronize_net() and one
    rcu_barrier() call only, so we have a ~30% speedup and a smaller RTNL
    latency.

    Signed-off-by: Eric Dumazet
    CC: Patrick McHardy ,
    CC: Ben Greear
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • In the old days, we used to access dev->master in __netif_receive_skb()
    in a rcu_read_lock section.

    So one synchronize_net() call was needed in netdev_set_master() to make
    sure another cpu could not use old master while/after we release it.

    We now use netdev_rx_handler infrastructure and added one
    synchronize_net() call in bond_release()/bond_release_all()

    Remove the obsolete synchronize_net() from netdev_set_master() and add
    one in bridge del_nbp() after its netdev_rx_handler_unregister() call.

    This makes enslave -d a bit faster.

    Signed-off-by: Eric Dumazet
    CC: Jiri Pirko
    CC: Stephen Hemminger
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • These two events are not expected to be caught by userspace.

    Signed-off-by: WANG Cong
    Signed-off-by: David S. Miller

    Amerigo Wang
     
  • In the previous patch I added NETDEV_JOIN, now
    we can notify netconsole when adding a device to a bridge too.

    Signed-off-by: WANG Cong
    Cc: Neil Horman
    Signed-off-by: David S. Miller

    Amerigo Wang
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • In case of checksum error, the framing layer returns -EILSEQ, but
    does not free the packet. Plug this hole by freeing the packet if
    -EILSEQ is returned.

    Signed-off-by: Sjur Brændeland
    Signed-off-by: David S. Miller

    sjur.brandeland@stericsson.com
     
  • Fix spinlock bugs when running out of link-ids in loopback tests and
    avoid allocating link-id when error is set in link-setup-response.

    Signed-off-by: Sjur Brændeland
    Signed-off-by: David S. Miller

    sjur.brandeland@stericsson.com
     
  • CAIF Socket layer - caif_socket.c:
    - Plug mem-leak at reconnect.
    - Always call disconnect to cleanup CAIF stack.
    - Disconnect will always report success.

    CAIF configuration layer - cfcnfg.c
    - Disconnect must dismantle the caif stack correctly
    - Protect against faulty removals (check on id zero)

    CAIF mux layer - cfmuxl.c
    - When inserting new service layer in the MUX remove
    any old entries with the same ID.
    - When removing CAIF Link layer, remove the associated
    service layers before notifying service layers.

    Signed-off-by: Sjur Brændeland
    Signed-off-by: David S. Miller

    sjur.brandeland@stericsson.com
     
  • Add check on layer->dn != NULL before calling functions in
    layer below.

    Signed-off-by: Sjur Brændeland
    Signed-off-by: David S. Miller

    sjur.brandeland@stericsson.com
     

21 May, 2011

5 commits

  • Commit c182f90bc1f22ce5039b8722e45621d5f96862c2 ("SCTP: fix race
    between sctp_bind_addr_free() and sctp_bind_addr_conflict()") and
    commit 1231f0baa547a541a7481119323b7f964dda4788 ("net,rcu: convert
    call_rcu(sctp_local_addr_free) to kfree_rcu()"), happening in
    different trees, introduced a build failure.

    Simply make the SCTP race fix use kfree_rcu() too.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Use kfree_rcu() instead of call_rcu(), remove garp_cleanup_module()

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

    Eric Dumazet
     
  • commit c3968a857a6b6c3d2ef4ead35776b055fb664d74
    ('ipv6: RTA_PREFSRC support for ipv6 route source address selection')
    added support for ipv6 prefsrc as an alternative to ipv6 addrlabels,
    but it did not work because the prefsrc entry was not copied.

    Cc: Daniel Walter
    Signed-off-by: Florian Westphal
    Signed-off-by: David S. Miller

    Florian Westphal
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)
    macvlan: fix panic if lowerdev in a bond
    tg3: Add braces around 5906 workaround.
    tg3: Fix NETIF_F_LOOPBACK error
    macvlan: remove one synchronize_rcu() call
    networking: NET_CLS_ROUTE4 depends on INET
    irda: Fix error propagation in ircomm_lmp_connect_response()
    irda: Kill set but unused variable 'bytes' in irlan_check_command_param()
    irda: Kill set but unused variable 'clen' in ircomm_connect_indication()
    rxrpc: Fix set but unused variable 'usage' in rxrpc_get_transport()
    be2net: Kill set but unused variable 'req' in lancer_fw_download()
    irda: Kill set but unused vars 'saddr' and 'daddr' in irlan_provider_connect_indication()
    atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.
    rxrpc: Fix set but unused variable 'usage' in rxrpc_get_peer().
    rxrpc: Kill set but unused variable 'local' in rxrpc_UDP_error_handler()
    rxrpc: Kill set but unused variable 'sp' in rxrpc_process_connection()
    rxrpc: Kill set but unused variable 'sp' in rxrpc_rotate_tx_window()
    pkt_sched: Kill set but unused variable 'protocol' in tc_classify()
    isdn: capi: Use pr_debug() instead of ifdefs.
    tg3: Update version to 3.119
    tg3: Apply rx_discards fix to 5719/5720
    ...

    Fix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c
    as per Davem.

    Linus Torvalds
     
  • Commit e66eed651fd1 ("list: remove prefetching from regular list
    iterators") removed the include of prefetch.h from list.h, which
    uncovered several cases that had apparently relied on that rather
    obscure header file dependency.

    So this fixes things up a bit, using

    grep -L linux/prefetch.h $(git grep -l '[^a-z_]prefetchw*(' -- '*.[ch]')
    grep -L 'prefetchw*(' $(git grep -l 'linux/prefetch.h' -- '*.[ch]')

    to guide us in finding files that either need
    inclusion, or have it despite not needing it.

    There are more of them around (mostly network drivers), but this gets
    many core ones.

    Reported-by: Stephen Rothwell
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

20 May, 2011

16 commits