1. 09 Jan, 2012 4 commits
  2. 07 Jan, 2012 14 commits
    • Dan Carpenter's avatar
      pktgen: set correct max and min in pktgen_setup_inject() · 26e29eed
      Dan Carpenter authored
      In 88271660 "pktgen: fix multiple queue warning" we added special
      logic to handle the case where ntxq is zero.  It's not clear to me that
      ntxq can actually be zero.  But if it were then we would set
      ->queue_map_min and ->queue_map_max to USHRT_MAX when probably we want
      to set them to zero?
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      26e29eed
    • David S. Miller's avatar
      smsc911x: Unconditionally include linux/smscphy.h in smsc911x.h · 96dab45f
      David S. Miller authored
      The energy detect enable/disable code in the driver uses some
      register defines in this header unconditionally, so guarding
      the smscphy.h header include with CONFIG_SMSC_PHY leads to
      build failures in some configurations.
      Reported-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      96dab45f
    • Aurelien Jacobs's avatar
      asix: fix infinite loop in rx_fixup() · 6c15d74d
      Aurelien Jacobs authored
      At this point if skb->len happens to be 2, the subsequant skb_pull(skb, 4)
      call won't work and the skb->len won't be decreased and won't ever reach 0,
      resulting in an infinite loop.
      
      With an ASIX 88772 under heavy load, without this patch, rx_fixup() reaches
      an infinite loop in less than a minute. With this patch applied,
      no infinite loop even after hours of heavy load.
      Signed-off-by: default avatarAurelien Jacobs <aurel@gnuage.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6c15d74d
    • David S. Miller's avatar
      6d62a66e
    • Cesar Eduardo Barros's avatar
      r6040: fix typo in use of MCR0 register bits · 77e1e438
      Cesar Eduardo Barros authored
      Commit 4e16d6eb (r6040: define more MCR0
      register bits) added #define values for MCR0 register bits and converted
      uses of hardcoded magic values to uses of these defines.
      
      However, one of the conversions looks suspicious:
      
       #define MCR0		0x00	/* Control register 0 */
      +#define  MCR0_RCVEN	0x0002	/* Receive enable */
      +#define  MCR0_XMTEN	0x1000	/* Transmission enable */
      
       	/* Init RDC private data */
      -	lp->mcr0 = 0x1002;
      +	lp->mcr0 = MCR0_XMTEN | MCR0;
      
      I believe what was meant here was MCR0_XMTEN | MCR0_RCVEN, which makes
      sense and matches the original values.
      Signed-off-by: default avatarCesar Eduardo Barros <cesarb@cesarb.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      77e1e438
    • Glauber Costa's avatar
      net: fix sock_clone reference mismatch with tcp memcontrol · f3f511e1
      Glauber Costa authored
      Sockets can also be created through sock_clone. Because it copies
      all data in the sock structure, it also copies the memcg-related pointer,
      and all should be fine. However, since we now use reference counts in
      socket creation, we are left with some sockets that have no reference
      counts. It matters when we destroy them, since it leads to a mismatch.
      Signed-off-by: default avatarGlauber Costa <glommer@parallels.com>
      CC: David S. Miller <davem@davemloft.net>
      CC: Greg Thelen <gthelen@google.com>
      CC: Hiroyouki Kamezawa <kamezawa.hiroyu@jp.fujitsu.com>
      CC: Laurent Chavey <chavey@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f3f511e1
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · 356b9542
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: (21 commits)
        m68k/mac: Make CONFIG_HEARTBEAT unavailable on Mac
        m68k/serial: Remove references to obsolete serial config options
        m68k/net: Remove obsolete IRQ_FLG_* users
        m68k: Don't comment out syscalls used by glibc
        m68k/atari: Move declaration of atari_SCC_reset_done to header file
        m68k/serial: Remove references to obsolete CONFIG_SERIAL167
        m68k/hp300: Export hp300_ledstate
        m68k: Initconst section fixes
        m68k/mac: cleanup macro case
        mac_scsi: fix mac_scsi on some powerbooks
        m68k/mac: fix powerbook 150 adb_type
        m68k/mac: fix baboon irq disable and shutdown
        m68k/mac: oss irq fixes
        m68k/mac: fix nubus slot irq disable and shutdown
        m68k/mac: enable via_alt_mapping on performa 580
        m68k/mac: cleanup forward declarations
        m68k/mac: cleanup mac_irq_pending
        m68k/mac: cleanup mac_clear_irq
        m68k/mac: early console
        m68k/mvme16x: Add support for EARLY_PRINTK
        ...
      
      Fix up trivial conflict in arch/m68k/Kconfig.debug due to new
      EARLY_PRINTK config option addition clashing with movement of the
      BOOTPARAM options.
      356b9542
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm · 770e1b03
      Linus Torvalds authored
      * 'for-linus' of git://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (207 commits)
        ARM: 7267/1: Remove BUILD_BUG_ON from asm/bug.h
        ARM: 7269/1: mach-sa1100: fix sched_clock breakage
        ARM: 7198/1: arm/imx6: add restart support for imx6q
        ARM: restart: remove the now empty arch_reset()
        ARM: restart: remove comments about adding code to arch_reset()
        ARM: restart: lpc32xx & u300: remove unnecessary printk
        ARM: restart: plat-samsung: remove plat/reset.h and s5p_reset_hook
        ARM: restart: w90x900: use new restart hook
        ARM: restart: Versatile Express: use new restart hook
        ARM: restart: versatile: use new restart hook
        ARM: restart: u300: use new restart hook
        ARM: restart: tegra: use new restart hook
        ARM: restart: spear: use new restart hook
        ARM: restart: shark: use new restart hook
        ARM: restart: sa1100: use new restart hook
        ARM: 7252/1: restart: S5PV210: use new restart hook
        ARM: 7251/1: restart: S5PC100: use new restart hook
        ARM: 7250/1: restart: S5P64X0: use new restart hook
        ARM: 7266/1: restart: S3C64XX: use new restart hook
        ARM: 7265/1: restart: S3C24XX: use new restart hook
        ...
      
      Fix up trivial conflict in arch/arm/mm/init.c due to removal of
      memblock_init() clashing with the movement of the sorting of the meminfo
      array.
      770e1b03
    • Linus Torvalds's avatar
      Merge branch 'amba-modalias' of... · d3d0b024
      Linus Torvalds authored
      Merge branch 'amba-modalias' of git://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm
      
      * 'amba-modalias' of git://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm:
        sound: aaci: Enable module alias autogeneration for AMBA drivers
        watchdog: sp805: Enable module alias autogeneration for AMBA drivers
        fbdev: amba: Enable module alias autogeneration for AMBA drivers
        serial: pl011: Enable module alias autogeneration for AMBA drivers
        serial: pl010: Enable module alias autogeneration for AMBA drivers
        spi: pl022: Enable module alias autogeneration for AMBA drivers
        rtc: pl031: Enable module alias autogeneration for AMBA drivers
        rtc: pl030: Enable module alias autogeneration for AMBA drivers
        mmc: mmci: Enable module alias autogeneration for AMBA drivers
        input: ambakmi: Enable module alias autogeneration for AMBA drivers
        gpio: pl061: Enable module alias autogeneration for AMBA drivers
        dmaengine: pl330: Enable module alias autogeneration for AMBA drivers
        dmaengine: pl08x: Enable module alias autogeneration for AMBA drivers
        hwrng: nomadik: Enable module alias autogeneration for AMBA drivers
        ARM: amba: Auto-generate AMBA driver module aliases during modpost
        ARM: amba: Move definition of struct amba_id to mod_devicetable.h
      d3d0b024
    • Linus Torvalds's avatar
      Merge branch 'pstore' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · 6ed23fd6
      Linus Torvalds authored
      * 'pstore' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        pstore: gracefully handle NULL pstore_info functions
        pstore: pass reason to backend write callback
      6ed23fd6
    • Linus Torvalds's avatar
      Merge branch 'misc-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · 5ee354a0
      Linus Torvalds authored
      * 'misc-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        ia64: pcibr: Use kmemdup rather than duplicating its implementation
        ia64: sn: Use kmemdup rather than duplicating its implementation
        ia64: tioca: Use kmemdup rather than duplicating its implementation
        [IA64] Merge overlapping reserved regions at boot
      5ee354a0
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu · c7741713
      Linus Torvalds authored
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: (56 commits)
        m68k: allow ColdFire 547x and 548x CPUs to be built with MMU enabled
        m68k/Kconfig: Separate classic m68k and coldfire early
        m68k: add ColdFire with MMU enabled support to the m68k mem init code
        m68k: do not use m68k startup or interrupt code for ColdFire CPUs
        m68k: add ColdFire FPU support for the V4e ColdFire CPUs
        m68k: adjustments to stack frame for ColdFire with MMU enabled
        m68k: use non-MMU linker script for ColdFire MMU builds
        m68k: ColdFire with MMU enabled uses same clocking code as non-MMU
        m68k: add code to setup a ColdFire 54xx platform when MMU enabled
        m68k: use non-MMU entry.S code when compiling for ColdFire CPU
        m68k: create ColdFire MMU pgalloc code
        m68k: compile appropriate mm arch files for ColdFire MMU support
        m68k: ColdFire V4e MMU paging init code and miss handler
        m68k: use ColdFire MMU read/write bit flags when ioremapping
        m68k: modify cache push and clear code for ColdFire with MMU enable
        m68k: use tracehook_report_syscall_entry/exit for ColdFire MMU ptrace path
        m68k: ColdFire V4e MMU context support code
        m68k: MMU enabled ColdFire needs 8k ELF alignment
        m68k: set ColdFire MMU page size
        m68k: define PAGE_OFFSET_RAW for ColdFire CPU with MMU enabled
        ...
      c7741713
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · e4e88f31
      Linus Torvalds authored
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (185 commits)
        powerpc: fix compile error with 85xx/p1010rdb.c
        powerpc: fix compile error with 85xx/p1023_rds.c
        powerpc/fsl: add MSI support for the Freescale hypervisor
        arch/powerpc/sysdev/fsl_rmu.c: introduce missing kfree
        powerpc/fsl: Add support for Integrated Flash Controller
        powerpc/fsl: update compatiable on fsl 16550 uart nodes
        powerpc/85xx: fix PCI and localbus properties in p1022ds.dts
        powerpc/85xx: re-enable ePAPR byte channel driver in corenet32_smp_defconfig
        powerpc/fsl: Update defconfigs to enable some standard FSL HW features
        powerpc: Add TBI PHY node to first MDIO bus
        sbc834x: put full compat string in board match check
        powerpc/fsl-pci: Allow 64-bit PCIe devices to DMA to any memory address
        powerpc: Fix unpaired probe_hcall_entry and probe_hcall_exit
        offb: Fix setting of the pseudo-palette for >8bpp
        offb: Add palette hack for qemu "standard vga" framebuffer
        offb: Fix bug in calculating requested vram size
        powerpc/boot: Change the WARN to INFO for boot wrapper overlap message
        powerpc/44x: Fix build error on currituck platform
        powerpc/boot: Change the load address for the wrapper to fit the kernel
        powerpc/44x: Enable CRASH_DUMP for 440x
        ...
      
      Fix up a trivial conflict in arch/powerpc/include/asm/cputime.h due to
      the additional sparse-checking code for cputime_t.
      e4e88f31
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next · 9753dfe1
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1958 commits)
        net: pack skb_shared_info more efficiently
        net_sched: red: split red_parms into parms and vars
        net_sched: sfq: extend limits
        cnic: Improve error recovery on bnx2x devices
        cnic: Re-init dev->stats_addr after chip reset
        net_sched: Bug in netem reordering
        bna: fix sparse warnings/errors
        bna: make ethtool_ops and strings const
        xgmac: cleanups
        net: make ethtool_ops const
        vmxnet3" make ethtool ops const
        xen-netback: make ops structs const
        virtio_net: Pass gfp flags when allocating rx buffers.
        ixgbe: FCoE: Add support for ndo_get_fcoe_hbainfo() call
        netdev: FCoE: Add new ndo_get_fcoe_hbainfo() call
        igb: reset PHY after recovering from PHY power down
        igb: add basic runtime PM support
        igb: Add support for byte queue limits.
        e1000: cleanup CE4100 MDIO registers access
        e1000: unmap ce4100_gbe_mdio_base_virt in e1000_remove
        ...
      9753dfe1
  3. 06 Jan, 2012 15 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · edf7c814
      Linus Torvalds authored
      * 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: add IRQ context simulation in module mce-inject
        x86, mce, therm_throt: Don't report power limit and package level thermal throttle events in mcelog
        x86, MCE: Drain mcelog buffer
        x86, mce: Add wrappers for registering on the decode chain
      edf7c814
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 82406da4
      Linus Torvalds authored
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, microcode, AMD: Update copyrights
        x86, microcode, AMD: Exit early on success
        x86, microcode, AMD: Simplify ucode verification
        x86, microcode, AMD: Add a reusable buffer
        x86, microcode, AMD: Add a vendor-specific exit function
      82406da4
    • Linus Torvalds's avatar
      Merge branch 'x86-rdrand-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7a222156
      Linus Torvalds authored
      * 'x86-rdrand-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        random: Use arch_get_random_int instead of cycle counter if avail
      7a222156
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2c364faa
      Linus Torvalds authored
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, centaur: Enable cx8 for VIA Eden too
      2c364faa
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cf3f3355
      Linus Torvalds authored
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Use "do { } while(0)" for empty lock_cmos()/unlock_cmos() macros
        x86: Use "do { } while(0)" for empty flush_tlb_fix_spurious_fault() macro
        x86, CPU: Drop superfluous get_cpu_cap() prototype
        arch/x86/mm/pageattr.c: Quiet sparse noise; local functions should be static
        arch/x86/kernel/ptrace.c: Quiet sparse noise
        x86: Use kmemdup() in copy_thread(), rather than duplicating its implementation
        x86: Replace the EVT_TO_HPET_DEV() macro with an inline function
      cf3f3355
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 69734b64
      Linus Torvalds authored
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
        x86: Fix atomic64_xxx_cx8() functions
        x86: Fix and improve cmpxchg_double{,_local}()
        x86_64, asm: Optimise fls(), ffs() and fls64()
        x86, bitops: Move fls64.h inside __KERNEL__
        x86: Fix and improve percpu_cmpxchg{8,16}b_double()
        x86: Report cpb and eff_freq_ro flags correctly
        x86/i386: Use less assembly in strlen(), speed things up a bit
        x86: Use the same node_distance for 32 and 64-bit
        x86: Fix rflags in FAKE_STACK_FRAME
        x86: Clean up and extend do_int3()
        x86: Call do_notify_resume() with interrupts enabled
        x86/div64: Add a micro-optimization shortcut if base is power of two
        x86-64: Cleanup some assembly entry points
        x86-64: Slightly shorten line system call entry and exit paths
        x86-64: Reduce amount of redundant code generated for invalidate_interruptNN
        x86-64: Slightly shorten int_ret_from_sys_call
        x86, efi: Convert efi_phys_get_time() args to physical addresses
        x86: Default to vsyscall=emulate
        x86-64: Set siginfo and context on vsyscall emulation faults
        x86: consolidate xchg and xadd macros
        ...
      69734b64
    • Linus Torvalds's avatar
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 67b02431
      Linus Torvalds authored
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Skip cpus with apic-ids >= 255 in !x2apic_mode
        x86, x2apic: Allow "nox2apic" to disable x2apic mode setup by BIOS
        x86, x2apic: Fallback to xapic when BIOS doesn't setup interrupt-remapping
        x86, acpi: Skip acpi x2apic entries if the x2apic feature is not present
        x86, apic: Add probe() for apic_flat
        x86: Simplify code by removing a !SMP #ifdefs from 'struct cpuinfo_x86'
        x86: Convert per-cpu counter icr_read_retry_count into a member of irq_stat
        x86: Add per-cpu stat counter for APIC ICR read tries
        pci, x86/io-apic: Allow PCI_IOAPIC to be user configurable on x86
        x86: Fix the !CONFIG_NUMA build of the new CPU ID fixup code support
        x86: Add NumaChip support
        x86: Add x86_init platform override to fix up NUMA core numbering
        x86: Make flat_init_apic_ldr() available
      67b02431
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 376613e8
      Linus Torvalds authored
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, tsc: Skip TSC synchronization checks for tsc=reliable
        clocksource: Convert tcb_clksrc to use clocksource_register_hz/khz
        clocksource: cris: Convert to clocksource_register_khz
        clocksource: xtensa: Convert to clocksource_register_hz/khz
        clocksource: um: Convert to clocksource_register_hz/khz
        clocksource: parisc: Convert to clocksource_register_hz/khz
        clocksource: m86k: Convert to clocksource_register_hz/khz
        time: x86: Replace LATCH with PIT_LATCH in i8253 clocksource driver
        time: x86: Remove CLOCK_TICK_RATE from acpi_pm clocksource driver
        time: x86: Remove CLOCK_TICK_RATE from mach_timer.h
        time: x86: Remove CLOCK_TICK_RATE from tsc code
        time: Fix spelling mistakes in new comments
        time: fix bogus comment in timekeeping_get_ns_raw
      376613e8
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0db49b72
      Linus Torvalds authored
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)
        sched/tracing: Add a new tracepoint for sleeptime
        sched: Disable scheduler warnings during oopses
        sched: Fix cgroup movement of waking process
        sched: Fix cgroup movement of newly created process
        sched: Fix cgroup movement of forking process
        sched: Remove cfs bandwidth period check in tg_set_cfs_period()
        sched: Fix load-balance lock-breaking
        sched: Replace all_pinned with a generic flags field
        sched: Only queue remote wakeups when crossing cache boundaries
        sched: Add missing rcu_dereference() around ->real_parent usage
        [S390] fix cputime overflow in uptime_proc_show
        [S390] cputime: add sparse checking and cleanup
        sched: Mark parent and real_parent as __rcu
        sched, nohz: Fix missing RCU read lock
        sched, nohz: Set the NOHZ_BALANCE_KICK flag for idle load balancer
        sched, nohz: Fix the idle cpu check in nohz_idle_balance
        sched: Use jump_labels for sched_feat
        sched/accounting: Fix parameter passing in task_group_account_field
        sched/accounting: Fix user/system tick double accounting
        sched/accounting: Re-use scheduler statistics for the root cgroup
        ...
      
      Fix up conflicts in
       - arch/ia64/include/asm/cputime.h, include/asm-generic/cputime.h
      	usecs_to_cputime64() vs the sparse cleanups
       - kernel/sched/fair.c, kernel/time/tick-sched.c
      	scheduler changes in multiple branches
      0db49b72
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 35b740e4
      Linus Torvalds authored
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (106 commits)
        perf kvm: Fix copy & paste error in description
        perf script: Kill script_spec__delete
        perf top: Fix a memory leak
        perf stat: Introduce get_ratio_color() helper
        perf session: Remove impossible condition check
        perf tools: Fix feature-bits rework fallout, remove unused variable
        perf script: Add generic perl handler to process events
        perf tools: Use for_each_set_bit() to iterate over feature flags
        perf tools: Unify handling of features when writing feature section
        perf report: Accept fifos as input file
        perf tools: Moving code in some files
        perf tools: Fix out-of-bound access to struct perf_session
        perf tools: Continue processing header on unknown features
        perf tools: Improve macros for struct feature_ops
        perf: builtin-record: Document and check that mmap_pages must be a power of two.
        perf: builtin-record: Provide advice if mmap'ing fails with EPERM.
        perf tools: Fix truncated annotation
        perf script: look up thread using tid instead of pid
        perf tools: Look up thread names for system wide profiling
        perf tools: Fix comm for processes with named threads
        ...
      35b740e4
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 423d091d
      Linus Torvalds authored
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (64 commits)
        cpu: Export cpu_up()
        rcu: Apply ACCESS_ONCE() to rcu_boost() return value
        Revert "rcu: Permit rt_mutex_unlock() with irqs disabled"
        docs: Additional LWN links to RCU API
        rcu: Augment rcu_batch_end tracing for idle and callback state
        rcu: Add rcutorture tests for srcu_read_lock_raw()
        rcu: Make rcutorture test for hotpluggability before offlining CPUs
        driver-core/cpu: Expose hotpluggability to the rest of the kernel
        rcu: Remove redundant rcu_cpu_stall_suppress declaration
        rcu: Adaptive dyntick-idle preparation
        rcu: Keep invoking callbacks if CPU otherwise idle
        rcu: Irq nesting is always 0 on rcu_enter_idle_common
        rcu: Don't check irq nesting from rcu idle entry/exit
        rcu: Permit dyntick-idle with callbacks pending
        rcu: Document same-context read-side constraints
        rcu: Identify dyntick-idle CPUs on first force_quiescent_state() pass
        rcu: Remove dynticks false positives and RCU failures
        rcu: Reduce latency of rcu_prepare_for_idle()
        rcu: Eliminate RCU_FAST_NO_HZ grace-period hang
        rcu: Avoid needlessly IPIing CPUs at GP end
        ...
      423d091d
    • Linus Torvalds's avatar
      Merge branch 'core-printk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1483b382
      Linus Torvalds authored
      * 'core-printk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        printk, lockdep: Switch to tracked irq ops
        printk, lockdep: Remove superfluous preempt_disable()
        printk, lockdep: Disable lock debugging on zap_locks()
      1483b382
    • Linus Torvalds's avatar
      Merge branch 'core-memblock-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4a2164a7
      Linus Torvalds authored
      * 'core-memblock-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (52 commits)
        memblock: Reimplement memblock allocation using reverse free area iterator
        memblock: Kill early_node_map[]
        score: Use HAVE_MEMBLOCK_NODE_MAP
        s390: Use HAVE_MEMBLOCK_NODE_MAP
        mips: Use HAVE_MEMBLOCK_NODE_MAP
        ia64: Use HAVE_MEMBLOCK_NODE_MAP
        SuperH: Use HAVE_MEMBLOCK_NODE_MAP
        sparc: Use HAVE_MEMBLOCK_NODE_MAP
        powerpc: Use HAVE_MEMBLOCK_NODE_MAP
        memblock: Implement memblock_add_node()
        memblock: s/memblock_analyze()/memblock_allow_resize()/ and update users
        memblock: Track total size of regions automatically
        powerpc: Cleanup memblock usage
        memblock: Reimplement memblock_enforce_memory_limit() using __memblock_remove()
        memblock: Make memblock functions handle overflowing range @size
        memblock: Reimplement __memblock_remove() using memblock_isolate_range()
        memblock: Separate out memblock_isolate_range() from memblock_set_node()
        memblock: Kill memblock_init()
        memblock: Kill sentinel entries at the end of static region arrays
        memblock: Add __memblock_dump_all()
        ...
      4a2164a7
    • Linus Torvalds's avatar
      Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 15f043a6
      Linus Torvalds authored
      * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        lockdep/waitqueues: Add better annotation
        lockdep, bug: Exclude TAINT_OOT_MODULE from disabling lock debugging
        lockdep: Print lock name in lockdep_init_error()
        init/main.c: Execute lockdep_init() as early as possible
        lockdep, kmemcheck: Annotate ->lock in lockdep_init_map()
        lockdep, rtmutex, bug: Show taint flags on error
        lockdep, bug: Exclude TAINT_FIRMWARE_WORKAROUND from disabling lockdep
        lockdep: Always try to set ->class_cache in register_lock_class() lockdep_init_map()
      15f043a6
    • Linus Torvalds's avatar
      Merge branch 'core-debugobjects-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8c717b72
      Linus Torvalds authored
      * 'core-debugobjects-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timer: Use debugobjects to catch deletion of uninitialized timers
        timer: Setup uninitialized timer with a stub callback
        debugobjects: Extend to assert that an object is initialized
        debugobjects: Be smarter about static objects
      8c717b72
  4. 05 Jan, 2012 7 commits
    • Linus Torvalds's avatar
      vfs: fix up ENOIOCTLCMD error handling · 07d106d0
      Linus Torvalds authored
      We're doing some odd things there, which already messes up various users
      (see the net/socket.c code that this removes), and it was going to add
      yet more crud to the block layer because of the incorrect error code
      translation.
      
      ENOIOCTLCMD is not an error return that should be returned to user mode
      from the "ioctl()" system call, but it should *not* be translated as
      EINVAL ("Invalid argument").  It should be translated as ENOTTY
      ("Inappropriate ioctl for device").
      
      That EINVAL confusion has apparently so permeated some code that the
      block layer actually checks for it, which is sad.  We continue to do so
      for now, but add a big comment about how wrong that is, and we should
      remove it entirely eventually.  In the meantime, this tries to keep the
      changes localized to just the EINVAL -> ENOTTY fix, and removing code
      that makes it harder to do the right thing.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      07d106d0
    • Ian Campbell's avatar
      net: pack skb_shared_info more efficiently · 9f42f126
      Ian Campbell authored
      nr_frags can be 8 bits since 256 is plenty of fragments. This allows it to be
      packed with tx_flags.
      
      Also by moving ip6_frag_id and dataref (both 4 bytes) next to each other we can
      avoid a hole between ip6_frag_id and frag_list on 64 bit systems.
      Signed-off-by: default avatarIan Campbell <ian.campbell@citrix.com>
      Acked-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9f42f126
    • Eric Dumazet's avatar
      net_sched: red: split red_parms into parms and vars · eeca6688
      Eric Dumazet authored
      This patch splits the red_parms structure into two components.
      
      One holding the RED 'constant' parameters, and one containing the
      variables.
      
      This permits a size reduction of GRED qdisc, and is a preliminary step
      to add an optional RED unit to SFQ.
      
      SFQRED will have a single red_parms structure shared by all flows, and a
      private red_vars per flow.
      Signed-off-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
      CC: Dave Taht <dave.taht@gmail.com>
      CC: Stephen Hemminger <shemminger@vyatta.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      eeca6688
    • Eric Dumazet's avatar
      net_sched: sfq: extend limits · 18cb8098
      Eric Dumazet authored
      SFQ as implemented in Linux is very limited, with at most 127 flows
      and limit of 127 packets. [ So if 127 flows are active, we have one
      packet per flow ]
      
      This patch brings to SFQ following features to cope with modern needs.
      
      - Ability to specify a smaller per flow limit of inflight packets.
          (default value being at 127 packets)
      
      - Ability to have up to 65408 active flows (instead of 127)
      
      - Ability to have head drops instead of tail drops
        (to drop old packets from a flow)
      
      Example of use : No more than 20 packets per flow, max 8000 flows, max
      20000 packets in SFQ qdisc, hash table of 65536 slots.
      
      tc qdisc add ... sfq \
              flows 8000 \
              depth 20 \
              headdrop \
              limit 20000 \
      	divisor 65536
      
      Ram usage :
      
      2 bytes per hash table entry (instead of previous 1 byte/entry)
      32 bytes per flow on 64bit arches, instead of 384 for QFQ, so much
      better cache hit ratio.
      Signed-off-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
      CC: Dave Taht <dave.taht@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      18cb8098
    • Michael Chan's avatar
      cnic: Improve error recovery on bnx2x devices · 23021c21
      Michael Chan authored
      When a bnx2x device encounters parity errors, it will not respond to all
      SPQ messages.  As a result, the shutdown sequence before reset can take
      a long time as the ulp drivers (bnx2i/bnx2fc) have to wait for timeout
      of all such messages.
      
      To improve this scenario, when bnx2x returns error on the SPQ, we'll send
      an immediate response to the ulp drivers to avoid such lengthy timeouts.
      
      Adjust the return code of relevant functions to return error only if
      the message cannot be sent on the SPQ so that we'll generate an error
      completion to the ulp drivers.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      23021c21
    • Michael Chan's avatar
      cnic: Re-init dev->stats_addr after chip reset · a9e0a4f2
      Michael Chan authored
      because bnx2x frees the old and allocates new memory during chip reset.
      Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a9e0a4f2
    • Hagen Paul Pfeifer's avatar
      net_sched: Bug in netem reordering · eb101924
      Hagen Paul Pfeifer authored
      Not now, but it looks you are correct. q->qdisc is NULL until another
      additional qdisc is attached (beside tfifo). See 50612537.
      The following patch should work.
      
      From: Hagen Paul Pfeifer <hagen@jauu.net>
      
      netem: catch NULL pointer by updating the real qdisc statistic
      Reported-by: default avatarVijay Subramanian <subramanian.vijay@gmail.com>
      Signed-off-by: default avatarHagen Paul Pfeifer <hagen@jauu.net>
      Acked-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      eb101924