06 May, 2011

1 commit

  • This patch adds a multiple message send syscall and is the send
    version of the existing recvmmsg syscall. This is heavily
    based on the patch by Arnaldo that added recvmmsg.

    I wrote a microbenchmark to test the performance gains of using
    this new syscall:

    http://ozlabs.org/~anton/junkcode/sendmmsg_test.c

    The test was run on a ppc64 box with a 10 Gbit network card. The
    benchmark can send both UDP and RAW ethernet packets.

    64B UDP

    batch pkts/sec
    1 804570
    2 872800 (+ 8 %)
    4 916556 (+14 %)
    8 939712 (+17 %)
    16 952688 (+18 %)
    32 956448 (+19 %)
    64 964800 (+20 %)

    64B raw socket

    batch pkts/sec
    1 1201449
    2 1350028 (+12 %)
    4 1461416 (+22 %)
    8 1513080 (+26 %)
    16 1541216 (+28 %)
    32 1553440 (+29 %)
    64 1557888 (+30 %)

    We see a 20% improvement in throughput on UDP send and 30%
    on raw socket send.

    [ Add sparc syscall entries. -DaveM ]

    Signed-off-by: Anton Blanchard
    Signed-off-by: David S. Miller

    Anton Blanchard
     

22 Apr, 2011

1 commit

  • mac-fec.c was setting individual UDP address registers instead of multicast
    group address registers when joining a multicast group.
    This prevented from correctly receiving UDP multicast packets.
    According to datasheet, replaced hash_table_high and hash_table_low
    with grp_hash_table_high and grp_hash_table_low respectively.
    Also renamed hash_table_* with grp_hash_table_* in struct fec declaration
    for 8xx: these registers are used only for multicast there.

    Tested on a MPC5121 based board.
    Build tested also against mpc866_ads_defconfig.

    Signed-off-by: Andrea Galbusera
    Signed-off-by: David S. Miller

    Andrea Galbusera
     

08 Apr, 2011

1 commit


05 Apr, 2011

6 commits


04 Apr, 2011

1 commit


01 Apr, 2011

17 commits


31 Mar, 2011

2 commits

  • Fixes generated by 'codespell' and manually reviewed.

    Signed-off-by: Lucas De Marchi

    Lucas De Marchi
     
  • …git/tip/linux-2.6-tip

    * 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    avr32: Fix missing irq namespace conversion
    powerpc: qe_ic: Rename get_irq_desc_data and get_irq_desc_chip
    genirq: Remove the now obsolete config options and select statements
    arm: versatile : Fix typo introduced in irq namespace cleanup
    sound: Fixup the last user of the old irq functions
    genirq: Remove obsolete comment
    genirq: Remove now obsolete set_irq_wake()
    sh: Fix irq cleanup fallout
    x86: apb_timer: Fixup genirq fallout
    genirq: Fix misnamed label in handle_edge_eoi_irq

    Fix up crazy conflict in arch/powerpc/include/asm/qe_ic.h:

    - commit eead4d5c63ff ("powerpc: qe_ic: Rename get_irq_desc_data and
    get_irq_desc_chip") made the helper functions use
    irq_desc_get_handler_data() instead of the legacy (and no longer
    existing) get_irq_desc_data.

    - commit d4db35e8dc96 ("powerpc/qe_ic: Fix another breakage from the
    irq_data conversion") used irq_desc_get_chip_data() instead.

    According to Thomas, the former is the correct direct conversion, but it
    does look like both should work (arch/powerpc/sysdev/qe_lib/qe_ic.c
    seems to initialize both to the same thing), and the chip data in some
    ways is the more logical. Somebody should really decide on one of the
    other.

    This merge picks irq_desc_get_handler_data() as the straightforward pure
    conversion to new names, as per Thomas.

    Linus Torvalds
     

30 Mar, 2011

11 commits