commit 3c92ec8ae91ecf59d88c798301833d7cf83f2179 Merge: c4c9f01... ca9153a... Author: Linus Torvalds Date: Sun Dec 28 16:54:33 2008 -0800 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (144 commits) powerpc/44x: Support 16K/64K base page sizes on 44x powerpc: Force memory size to be a multiple of PAGE_SIZE powerpc/32: Wire up the trampoline code for kdump powerpc/32: Add the ability for a classic ppc kernel to be loaded at 32M powerpc/32: Allow __ioremap on RAM addresses for kdump kernel powerpc/32: Setup OF properties for kdump powerpc/32/kdump: Implement crash_setup_regs() using ppc_save_regs() powerpc: Prepare xmon_save_regs for use with kdump powerpc: Remove default kexec/crash_kernel ops assignments powerpc: Make default kexec/crash_kernel ops implicit powerpc: Setup OF properties for ppc32 kexec powerpc/pseries: Fix cpu hotplug powerpc: Fix KVM build on ppc440 powerpc/cell: add QPACE as a separate Cell platform powerpc/cell: fix build breakage with CONFIG_SPUFS disabled powerpc/mpc5200: fix error paths in PSC UART probe function powerpc/mpc5200: add rts/cts handling in PSC UART driver powerpc/mpc5200: Make PSC UART driver update serial errors counters powerpc/mpc5200: Remove obsolete code from mpc5200 MDIO driver powerpc/mpc5200: Add MDMA/UDMA support to MPC5200 ATA driver ... Fix trivial conflict in drivers/char/Makefile as per Paul's directions commit c4c9f0183b7c4e97836e8fecbb67898b06c47e78 Author: Stephen Rothwell Date: Mon Dec 29 10:46:13 2008 +1100 net: ehea NAPI interface cleanup fix Commit 908a7a16b852ffd618a9127be8d62432182d81b4 ("net: Remove unused netdev arg from some NAPI interfaces") missed two spots. Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit bf66542bef3771a42ad3b1d5dc503c804bc22b33 Author: Stephen Rothwell Date: Wed Dec 3 13:49:23 2008 +1100 cifs: update for new IP4/6 address printing Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit d05a788f2279056a518d412c6391322ef11366e0 Merge: 96faec9... 54d2f64... Author: Linus Torvalds Date: Sun Dec 28 15:15:08 2008 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: smackfs: check for allocation failures in smk_set_access() commit 96faec945f39cab38403f60f515bff43660b4dab Merge: 2926328... 9bb4824... Author: Linus Torvalds Date: Sun Dec 28 15:13:48 2008 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (25 commits) allow stripping of generated symbols under CONFIG_KALLSYMS_ALL kbuild: strip generated symbols from *.ko kbuild: simplify use of genksyms kernel-doc: check for extra kernel-doc notations kbuild: add headerdep used to detect inclusion cycles in header files kbuild: fix string equality testing in tags.sh kbuild: fix make tags/cscope kbuild: fix make incompatibility kbuild: remove TAR_IGNORE setlocalversion: add git-svn support setlocalversion: print correct subversion revision scripts: improve the decodecode script scripts/package: allow custom options to rpm genksyms: allow to ignore symbol checksum changes genksyms: track symbol checksum changes tags and cscope support really belongs in a shell script kconfig: fix options to check-lxdialog.sh kbuild: gen_init_cpio expands shell variables in file names remove bashisms from scripts/extract-ikconfig kbuild: teach mkmakfile to be silent ... commit 2926328554fa740518e2a6585b2cefb01e5f65f3 Merge: 541ef5c... 8587b33f... Author: Linus Torvalds Date: Sun Dec 28 15:12:35 2008 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-nvram * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-nvram: [PATCH] nvram - convert PRINT_PROC to seq_file [PATCH] nvram - CodingStyle commit 54d2f649a67109d877ca143c09cdeba61fe51bcf Merge: 541ef5c... 81ea714... Author: James Morris Date: Mon Dec 29 09:57:38 2008 +1100 Merge branch 'next' into for-linus commit ca9153a3a2a7556d091dfe080e42b0e67881fff6 Author: Ilya Yanok Date: Thu Dec 11 04:55:41 2008 +0300 powerpc/44x: Support 16K/64K base page sizes on 44x This adds support for 16k and 64k page sizes on PowerPC 44x processors. The PGDIR table is much smaller than a page when using 16k or 64k pages (512 and 32 bytes respectively) so we allocate the PGDIR with kzalloc() instead of __get_free_pages(). One PTE table covers rather a large memory area when using 16k or 64k pages (32MB or 512MB respectively), so we can easily put FIXMAP and PKMAP in the area covered by one PTE table. Signed-off-by: Yuri Tikhonov Signed-off-by: Vladimir Panfilov Signed-off-by: Ilya Yanok Acked-by: Josh Boyer Signed-off-by: Paul Mackerras commit 6ca4f7494bde078b2b730e28e4ea1dc36a772f70 Author: Hollis Blanchard Date: Wed Nov 26 10:19:26 2008 -0600 powerpc: Force memory size to be a multiple of PAGE_SIZE Ensure that total memory size is page-aligned, because otherwise mark_bootmem() gets upset. This error case was triggered by using 64 KiB pages in the kernel while arch/powerpc/boot/4xx.c arbitrarily reduced the amount of memory by 4096 (to work around a chip bug that affects the last 256 bytes of physical memory). Signed-off-by: Hollis Blanchard Signed-off-by: Paul Mackerras commit 541ef5cbb8e68189d47272cea52a69abc30259bc Merge: 0191b62... aa6eeee... Author: Linus Torvalds Date: Sun Dec 28 12:54:07 2008 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: m68k: use the new byteorder headers fbcon: Protect free_irq() by MACH_IS_ATARI check fbcon: remove broken mac vbl handler m68k: fix trigraph ignored warning in setox.S macfb annotations and compiler warning fix m68k: mac baboon interrupt enable/disable m68k: machw.h cleanup m68k: Mac via cleanup and commentry m68k: Reinstate mac rtc commit 0191b625ca5a46206d2fb862bb08f36f2fcb3b31 Merge: 54a696b... eb56092... Author: Linus Torvalds Date: Sun Dec 28 12:49:40 2008 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1429 commits) net: Allow dependancies of FDDI & Tokenring to be modular. igb: Fix build warning when DCA is disabled. net: Fix warning fallout from recent NAPI interface changes. gro: Fix potential use after free sfc: If AN is enabled, always read speed/duplex from the AN advertising bits sfc: When disabling the NIC, close the device rather than unregistering it sfc: SFT9001: Add cable diagnostics sfc: Add support for multiple PHY self-tests sfc: Merge top-level functions for self-tests sfc: Clean up PHY mode management in loopback self-test sfc: Fix unreliable link detection in some loopback modes sfc: Generate unique names for per-NIC workqueues 802.3ad: use standard ethhdr instead of ad_header 802.3ad: generalize out mac address initializer 802.3ad: initialize ports LACPDU from const initializer 802.3ad: remove typedef around ad_system 802.3ad: turn ports is_individual into a bool 802.3ad: turn ports is_enabled into a bool 802.3ad: make ntt bool ixgbe: Fix set_ringparam in ixgbe to use the same memory pools. ... Fixed trivial IPv4/6 address printing conflicts in fs/cifs/connect.c due to the conversion to %pI (in this networking merge) and the addition of doing IPv6 addresses (from the earlier merge of CIFS). commit 54a696bd07c14d3b1192d03ce7269bc59b45209a Merge: 1d248b2... 359d67d... Author: Linus Torvalds Date: Sun Dec 28 12:37:14 2008 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: (31 commits) [CIFS] Remove redundant test [CIFS] make sure that DFS pathnames are properly formed Remove an already-checked error condition in SendReceiveBlockingLock Streamline SendReceiveBlockingLock: Use "goto out:" in an error condition Streamline SendReceiveBlockingLock: Use "goto out:" in an error condition [CIFS] Streamline SendReceive[2] by using "goto out:" in an error condition Slightly streamline SendReceive[2] Check the return value of cifs_sign_smb[2] [CIFS] Cleanup: Move the check for too large R/W requests [CIFS] Slightly simplify wait_for_free_request(), remove an unnecessary "else" branch Simplify allocate_mid() slightly: Remove some unnecessary "else" branches [CIFS] In SendReceive, move consistency check out of the mutexed region cifs: store password in tcon cifs: have calc_lanman_hash take more granular args cifs: zero out session password before freeing it cifs: fix wait_for_response to time out sleeping processes correctly [CIFS] Can not mount with prefixpath if root directory of share is inaccessible [CIFS] various minor cleanups pointed out by checkpatch script [CIFS] fix typo [CIFS] remove sparse warning ... Fix trivial conflict in fs/cifs/cifs_fs_sb.h due to comment changes for the CIFS_MOUNT_xyz bit definitions between cifs updates and security updates. commit 1d248b2593e92db6c51ca07235985a95c625a93f Merge: 1db2a5c... 2a0d836... Author: Linus Torvalds Date: Sun Dec 28 12:33:59 2008 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (26 commits) IB/mlx4: Set ownership bit correctly when copying CQEs during CQ resize RDMA/nes: Remove tx_free_list RDMA/cma: Add IPv6 support RDMA/addr: Add support for translating IPv6 addresses mlx4_core: Delete incorrect comment mlx4_core: Add support for multiple completion event vectors IB/iser: Avoid recv buffer exhaustion caused by unexpected PDUs IB/ehca: Remove redundant test of vpage IB/ehca: Replace modulus operations in flush error completion path IB/ipath: Add locking for interrupt use of ipath_pd contexts vs free IB/ipath: Fix spi_pioindex value IB/ipath: Only do 1X workaround on rev1 chips IB/ipath: Don't count IB symbol and link errors unless link is UP IB/ipath: Check return value of dma_map_single() IB/ipath: Fix PSN of send WQEs after an RDMA read resend RDMA/nes: Cleanup warnings RDMA/nes: Add loopback check to make_cm_node() RDMA/nes: Check cqp_avail_reqs is empty after locking the list RDMA/nes: Fix TCP compliance test failures RDMA/nes: Forward packets for a new connection with stale APBVT entry ... commit 1db2a5c11e495366bff35cf7445d494703f7febe Merge: a39b863... cef7125... Author: Linus Torvalds Date: Sun Dec 28 12:33:21 2008 -0800 Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: (85 commits) [S390] provide documentation for hvc_iucv kernel parameter. [S390] convert ctcm printks to dev_xxx and pr_xxx macros. [S390] convert zfcp printks to pr_xxx macros. [S390] convert vmlogrdr printks to pr_xxx macros. [S390] convert zfcp dumper printks to pr_xxx macros. [S390] convert cpu related printks to pr_xxx macros. [S390] convert qeth printks to dev_xxx and pr_xxx macros. [S390] convert sclp printks to pr_xxx macros. [S390] convert iucv printks to dev_xxx and pr_xxx macros. [S390] convert ap_bus printks to pr_xxx macros. [S390] convert dcssblk and extmem printks messages to pr_xxx macros. [S390] convert monwriter printks to pr_xxx macros. [S390] convert s390 debug feature printks to pr_xxx macros. [S390] convert monreader printks to pr_xxx macros. [S390] convert appldata printks to pr_xxx macros. [S390] convert setup printks to pr_xxx macros. [S390] convert hypfs printks to pr_xxx macros. [S390] convert time printks to pr_xxx macros. [S390] convert cpacf printks to pr_xxx macros. [S390] convert cio printks to pr_xxx macros. ... commit a39b863342b8aba52390092be95db58f6ed56061 Merge: b0f4b28... 4e20228... Author: Linus Torvalds Date: Sun Dec 28 12:27:58 2008 -0800 Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (31 commits) sched: fix warning in fs/proc/base.c schedstat: consolidate per-task cpu runtime stats sched: use RCU variant of list traversal in for_each_leaf_rt_rq() sched, cpuacct: export percpu cpuacct cgroup stats sched, cpuacct: refactoring cpuusage_read / cpuusage_write sched: optimize update_curr() sched: fix wakeup preemption clock sched: add missing arch_update_cpu_topology() call sched: let arch_update_cpu_topology indicate if topology changed sched: idle_balance() does not call load_balance_newidle() sched: fix sd_parent_degenerate on non-numa smp machine sched: add uid information to sched_debug for CONFIG_USER_SCHED sched: move double_unlock_balance() higher sched: update comment for move_task_off_dead_cpu sched: fix inconsistency when redistribute per-cpu tg->cfs_rq shares sched/rt: removed unneeded defintion sched: add hierarchical accounting to cpu accounting controller sched: include group statistics in /proc/sched_debug sched: rename SCHED_NO_NO_OMIT_FRAME_POINTER => SCHED_OMIT_FRAME_POINTER sched: clean up SCHED_CPUMASK_ALLOC ... commit b0f4b285d7ed174804658539129a834270f4829a Merge: be9c5ae... 5250d32... Author: Linus Torvalds Date: Sun Dec 28 12:21:10 2008 -0800 Merge branch 'tracing-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'tracing-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (241 commits) sched, trace: update trace_sched_wakeup() tracing/ftrace: don't trace on early stage of a secondary cpu boot, v3 Revert "x86: disable X86_PTRACE_BTS" ring-buffer: prevent false positive warning ring-buffer: fix dangling commit race ftrace: enable format arguments checking x86, bts: memory accounting x86, bts: add fork and exit handling ftrace: introduce tracing_reset_online_cpus() helper tracing: fix warnings in kernel/trace/trace_sched_switch.c tracing: fix warning in kernel/trace/trace.c tracing/ring-buffer: remove unused ring_buffer size trace: fix task state printout ftrace: add not to regex on filtering functions trace: better use of stack_trace_enabled for boot up code trace: add a way to enable or disable the stack tracer x86: entry_64 - introduce FTRACE_ frame macro v2 tracing/ftrace: add the printk-msg-only option tracing/ftrace: use preempt_enable_no_resched_notrace in ring_buffer_time_stamp() x86, bts: correctly report invalid bts records ... Fixed up trivial conflict in scripts/recordmcount.pl due to SH bits being already partly merged by the SH merge. commit be9c5ae4eeec2e85527e95647348b8ea4eb25128 Merge: bb26c6c... 79a66b9... Author: Linus Torvalds Date: Sun Dec 28 12:07:57 2008 -0800 Merge branch 'x86-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (246 commits) x86: traps.c replace #if CONFIG_X86_32 with #ifdef CONFIG_X86_32 x86: PAT: fix address types in track_pfn_vma_new() x86: prioritize the FPU traps for the error code x86: PAT: pfnmap documentation update changes x86: PAT: move track untrack pfnmap stubs to asm-generic x86: PAT: remove follow_pfnmap_pte in favor of follow_phys x86: PAT: modify follow_phys to return phys_addr prot and return value x86: PAT: clarify is_linear_pfn_mapping() interface x86: ia32_signal: remove unnecessary declaration x86: common.c boot_cpu_stack and boot_exception_stacks should be static x86: fix intel x86_64 llc_shared_map/cpu_llc_id anomolies x86: fix warning in arch/x86/kernel/microcode_amd.c x86: ia32.h: remove unused struct sigfram32 and rt_sigframe32 x86: asm-offset_64: use rt_sigframe_ia32 x86: sigframe.h: include headers for dependency x86: traps.c declare functions before they get used x86: PAT: update documentation to cover pgprot and remap_pfn related changes - v3 x86: PAT: add pgprot_writecombine() interface for drivers - v3 x86: PAT: change pgprot_noncached to uc_minus instead of strong uc - v3 x86: PAT: implement track/untrack of pfnmap regions for x86 - v3 ... commit bb26c6c29b7cc9f39e491b074b09f3c284738d36 Merge: e14e61e... cbacc2c... Author: Linus Torvalds Date: Sun Dec 28 11:43:54 2008 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (105 commits) SELinux: don't check permissions for kernel mounts security: pass mount flags to security_sb_kern_mount() SELinux: correctly detect proc filesystems of the form "proc/foo" Audit: Log TIOCSTI user namespaces: document CFS behavior user namespaces: require cap_set{ug}id for CLONE_NEWUSER user namespaces: let user_ns be cloned with fairsched CRED: fix sparse warnings User namespaces: use the current_user_ns() macro User namespaces: set of cleanups (v2) nfsctl: add headers for credentials coda: fix creds reference capabilities: define get_vfs_caps_from_disk when file caps are not enabled CRED: Allow kernel services to override LSM settings for task actions CRED: Add a kernel_service object class to SELinux CRED: Differentiate objective and effective subjective credentials on a task CRED: Documentation CRED: Use creds in file structs CRED: Prettify commoncap.c CRED: Make execve() take advantage of copy-on-write credentials ... commit e14e61e967f2b3bdf23f05e4ae5b9aa830151a44 Merge: cb10ea5... 0ee4a96... Author: Linus Torvalds Date: Sun Dec 28 11:43:22 2008 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (57 commits) crypto: aes - Precompute tables crypto: talitos - Ack done interrupt in isr instead of tasklet crypto: testmgr - Correct comment about deflate parameters crypto: salsa20 - Remove private wrappers around various operations crypto: des3_ede - permit weak keys unless REQ_WEAK_KEY set crypto: sha512 - Switch to shash crypto: sha512 - Move message schedule W[80] to static percpu area crypto: michael_mic - Switch to shash crypto: wp512 - Switch to shash crypto: tgr192 - Switch to shash crypto: sha256 - Switch to shash crypto: md5 - Switch to shash crypto: md4 - Switch to shash crypto: sha1 - Switch to shash crypto: rmd320 - Switch to shash crypto: rmd256 - Switch to shash crypto: rmd160 - Switch to shash crypto: rmd128 - Switch to shash crypto: null - Switch to shash crypto: hash - Make setkey optional ... commit cb10ea549fdc0ab2dd8988adab5bf40b4fa642f3 Merge: 81d6e59... 5ce442f... Author: Linus Torvalds Date: Sun Dec 28 11:41:32 2008 -0800 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (367 commits) ALSA: ASoC: fix a typo in omp-pcm.c ASoC: Fix DSP formats in SSM2602 audio codec ASoC: Fix incorrect DSP format in OMAP McBSP DAI and affected drivers ALSA: hda: fix incorrect mixer index values for 92hd83xx ALSA: hda: dinput_mux check ALSA: hda - Add quirk for another HP dv7 ALSA: ASoC - Add missing __devexit annotation to wm8350.c ALSA: ASoc: DaVinci: davinci-evm use dsp_b mode ALSA: ASoC: DaVinci: i2s, evm, pass same value to codec and cpu_dai ALSA: ASoC: tlv320aic3x add dsp_a ALSA: ASoC: DaVinci: document I2S limitations ALSA: ASoC: DaVinci: davinci-i2s clean up ALSA: ASoC: DaVinci: davinci-i2s clean up ALSA: ASoC: DaVinci: davinci-i2s add comments to explain polarity ALSA: ASoC: DaVinci: davinvi-evm, make requests explicit ALSA: ca0106 - disable 44.1kHz capture ALSA: ca0106 - Add missing card->private_data initialization ALSA: ca0106 - Check ac97 availability at PM ALSA: hda - Power up always when no jack detection is available ALSA: hda - Fix unused variable warnings in patch_sigmatel.c ... commit 81d6e59dabb1ae0c782e9eb7e3d88f699d25b314 Merge: 4a6908a... 59de580... Author: Linus Torvalds Date: Sun Dec 28 11:39:19 2008 -0800 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (132 commits) sh: oprofile: Fix up the module build. sh: add UIO support for JPU on SH7722. serial: sh-sci: Fix up port pinmux for SH7366. sh: mach-rsk: Use uImage generation by default for rsk7201/7203. sh: mach-sh03: Fix up pata_platform build breakage. sh: enable deferred io LCDC on Migo-R video: sh_mobile_lcdcfb deferred io support video: deferred io with physically contiguous memory video: deferred io cleanup video: fix deferred io fsync() sh: add LCDC interrupt configuration to AP325 and Migo-R sh_mobile_lcdc: use FB_SYS helpers instead of FB_CFB sh: split coherent pages sh: dma: Kill off ISA DMA wrapper. sh: Conditionalize the code dumper on CONFIG_DUMP_CODE. sh: Kill off the unused SH_ALPHANUMERIC debug option. sh: Enable skipping of bss on debug platforms for sh32 also. doc: Update sh cpufreq documentation. sh: mrshpc_setup_windows() needs to be inline. serial: sh-sci: sci_poll_get_char() is only used by CONFIG_CONSOLE_POLL. ... commit aa6eeeef78263e9891185c6cfaaf64808460a54a Author: Harvey Harrison Date: Tue Nov 18 20:45:23 2008 +0100 m68k: use the new byteorder headers Signed-off-by: Harvey Harrison Signed-off-by: Geert Uytterhoeven commit 7f877ebb32ac9a4b0783e825cef84c6ace87fe90 Author: Geert Uytterhoeven Date: Tue Nov 18 20:45:23 2008 +0100 fbcon: Protect free_irq() by MACH_IS_ATARI check Add missing check for Atari in free_irq() call, which could cause problems on multi-platform m68k kernels. Reported-by: Brad Boyer Signed-off-by: Geert Uytterhoeven commit 79f0c9a0479060e3a8607d93bc8d81ff962acc87 Author: Finn Thain Date: Tue Nov 18 20:45:23 2008 +0100 fbcon: remove broken mac vbl handler Remove the Mac VBL interrupt code as it doesn't work properly and doesn't bring any benefit when fixed. Also remove unused DEFAULT_CURSOR_BLINK_RATE macro and irqres variable. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven commit 646819e86222cc06b85ed2a8dafbbb361a05ea2d Author: Finn Thain Date: Tue Nov 18 20:45:22 2008 +0100 m68k: fix trigraph ignored warning in setox.S Fix the warning: trigraph ??/ ignored, use -trigraphs to enable caused by the recent removal of -traditional option. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven commit 3839d01d61195d76d53943ac36b603d7e7ca4b6e Author: Finn Thain Date: Tue Nov 18 20:45:22 2008 +0100 macfb annotations and compiler warning fix Add some __iomem annotations. Remove some volatile qualifiers to fix several compiler warnings: "passing arg 1 of `iounmap' discards qualifiers from pointer target type". Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven commit 746e8d3b223281f0e5472ab0ad8f59af2221ea9b Author: Finn Thain Date: Tue Nov 18 20:45:21 2008 +0100 m68k: mac baboon interrupt enable/disable No-one seems to know how to mask individual baboon interrupts, so we just mask the umbrella IRQ. This will work as long as only the IDE driver uses the baboon chip (it can't deadlock). Use mac_enable_irq/mac_disable_irq rather than enable_irq/disable_irq because the latter routines count the depth of nested calls which triggers a warning and call trace because IRQ_NUBUS_C is enabled twice in a row (once when the baboon handler is registered, and once when the IDE IRQ is registered). Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven commit 429dbf53bca49b110f1058f0d9417a59115c41b8 Author: Finn Thain Date: Tue Nov 18 20:45:20 2008 +0100 m68k: machw.h cleanup Remove some more cruft from machw.h and drop the #include where it isn't needed. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven commit 4a973592d67ccc240bca694e48ce88facd764043 Author: Finn Thain Date: Tue Nov 18 20:45:20 2008 +0100 m68k: Mac via cleanup and commentry No behavioural changes, just cleanups and better documentation. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven commit 40f7f9c1c22aef049ed7339d9e45624aa980a1a0 Author: Finn Thain Date: Tue Nov 18 20:45:20 2008 +0100 m68k: Reinstate mac rtc Reinstate the Mac hardware clock for CUDA ADB and Mac II ADB models. It doesn't work properly on Mac IIsi ADB and PMU ADB yet, so leave them out. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven commit eb56092fc168bf5af199d47af50c0d84a96db898 Author: Dave Jones Date: Sat Dec 27 20:43:48 2008 -0800 net: Allow dependancies of FDDI & Tokenring to be modular. I noticed it isn't possible to build token ring & fddi drivers without causing LLC, and a bunch of other things to be forced built-in. For distro kernels, this means carrying a chunk of code in the vmlinuz, even if the user doesn't use those protocols. Signed-off-by: Dave Jones Signed-off-by: David S. Miller commit 8d25332081d87491e3b12fa130539fe9e2ba4a94 Author: David S. Miller Date: Fri Dec 26 15:13:55 2008 -0800 igb: Fix build warning when DCA is disabled. Signed-off-by: David S. Miller commit 2d5451d2614583de0c9aaf61cf5f77faf5694105 Author: David S. Miller Date: Fri Dec 26 15:10:00 2008 -0800 net: Fix warning fallout from recent NAPI interface changes. When we removed the network device argument from several NAPI interfaces in 908a7a16b852ffd618a9127be8d62432182d81b4 ("net: Remove unused netdev arg from some NAPI interfaces.") several drivers now started getting unused variable warnings. This fixes those up. Signed-off-by: David S. Miller commit 0da2afd59653d2edf5c8e0f09b23f367ab5bc80f Author: Herbert Xu Date: Fri Dec 26 14:57:42 2008 -0800 gro: Fix potential use after free The initial skb may have been freed after napi_gro_complete in napi_gro_receive if it was merged into an existing packet. Thus we cannot check same_flow (which indicates whether it was merged) after calling napi_gro_complete. This patch fixes this by saving the same_flow status before the call to napi_gro_complete. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 843813453f52e3378fc988c8364063fd4cb9d0e3 Author: Ben Hutchings Date: Fri Dec 26 13:49:25 2008 -0800 sfc: If AN is enabled, always read speed/duplex from the AN advertising bits When AN is enabled and the link is down the speed/duplex control bits will not be meaningful. Use the advertising bits instead, and mask them with the LPA bits if and only if AN is complete (as before). Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit f4bd954e7c24063b15fa9abc8b4b1242772928ed Author: Ben Hutchings Date: Fri Dec 26 13:48:51 2008 -0800 sfc: When disabling the NIC, close the device rather than unregistering it This should reduce user confusion and may also aid recovery (ioctls will still be available). Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 307505e9a4ce0b13b2f996385669039806e07390 Author: Ben Hutchings Date: Fri Dec 26 13:48:00 2008 -0800 sfc: SFT9001: Add cable diagnostics The SFT9001 firmware implements cable diagnostics; run those and include their results in a self-test. In case of a cable fault, do not fail the self-test as a whole; only faults in the NIC should cause that. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 1796721a5a691a5d392abf8070ad40a0b787b667 Author: Ben Hutchings Date: Fri Dec 26 13:47:25 2008 -0800 sfc: Add support for multiple PHY self-tests Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 2ef3068e6c40ec44d27f6f8027616e284d1b0466 Author: Ben Hutchings Date: Fri Dec 26 13:47:04 2008 -0800 sfc: Merge top-level functions for self-tests Pass in ethtool test flags to determine which tests to run. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit a5692e49cd9e6512c48ebf61e52991cbe643c12d Author: Ben Hutchings Date: Fri Dec 26 13:46:38 2008 -0800 sfc: Clean up PHY mode management in loopback self-test Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit caa8d8bbddc9157cb8f34465be98fc83faf37155 Author: Ben Hutchings Date: Fri Dec 26 13:46:12 2008 -0800 sfc: Fix unreliable link detection in some loopback modes Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 6977dc6309ea8bbcb24c0a1356c33969e4a07410 Author: Ben Hutchings Date: Fri Dec 26 13:44:39 2008 -0800 sfc: Generate unique names for per-NIC workqueues Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit e727149e26b08550269a7786fda977aed65578f6 Author: Holger Eitzenberger Date: Fri Dec 26 13:41:53 2008 -0800 802.3ad: use standard ethhdr instead of ad_header 802.3ad has its own ethhdr-like structure in the form of an ad_header, which is at the start of both the LACPDU and marker PDU. Both are the same from the struct values, both are packed as well. It's therefore perfectly fine to replace the ad_header by the ethhdr and to remove its definition. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit e4ac43200fd6b8b8de3b487e74e74d3742f70d79 Author: Holger Eitzenberger Date: Fri Dec 26 13:40:48 2008 -0800 802.3ad: generalize out mac address initializer Generalize out mac address initializer for the LACPDU multicast address and use in two places. Remove the now unused AD_MULTICAST_LACPDU_ADDR. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 7addeef6b15c9b7cffaaf40ec5b5b0940145ec16 Author: Holger Eitzenberger Date: Fri Dec 26 13:28:33 2008 -0800 802.3ad: initialize ports LACPDU from const initializer Save some text by initializing ports LACPDU from const initializer, then get rid of ad_initialize_lacpdu(). Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 87f422f8618c541db0f96194cca9465817f76b89 Author: Holger Eitzenberger Date: Fri Dec 26 13:27:57 2008 -0800 802.3ad: remove typedef around ad_system As typedefs are considered a bad thing most of the time remove the typedef around ad_system. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 1624db7be0d9f77f5494efe1b066d1d44b46c96c Author: Holger Eitzenberger Date: Fri Dec 26 13:27:21 2008 -0800 802.3ad: turn ports is_individual into a bool Turn ports is_individual into a bool. There is no functional change. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit f48127b6f3270cf7234a7a9f770533332e85e8ae Author: Holger Eitzenberger Date: Fri Dec 26 13:26:54 2008 -0800 802.3ad: turn ports is_enabled into a bool Turn ports is_enabled into a bool. There is no functional change. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit d238d458a70ad134cb421c3ffc66242277f30dda Author: Holger Eitzenberger Date: Fri Dec 26 11:18:15 2008 -0800 802.3ad: make ntt bool Turn Need-To-Transmit port variable into a bool. There is no functional change. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit d3fa4721456226d77475181a4bfbe5b3d899d65c Author: Peter P Waskiewicz Jr Date: Fri Dec 26 01:36:33 2008 -0800 ixgbe: Fix set_ringparam in ixgbe to use the same memory pools. The adapter rings are kcalloc()'d, but in set_ringparam() in ixgbe_ethtool, we replace that memory from the vmalloc() pool. This can result in a NULL pointer reference when trying to modify the rings at a later time, or on device removal. Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 7adf1525befb5606462431eb1a4ea40ded5baef4 Author: Peter P Waskiewicz Jr Date: Fri Dec 26 01:36:05 2008 -0800 ixgbe: Fix NAPI enable/disable path when using DCB This change allows DCB mode to change the number of queues, and presumably the number of NAPI instances, safely. Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d7b06636be162d3f74c9ce5d6d0d9ea4e5d362c8 Author: Peter P Waskiewicz Jr Date: Fri Dec 26 01:35:35 2008 -0800 net: Init NAPI dev_list on napi_del The recent GRO patches introduced the NAPI removal of devices in free_netdev. For drivers that can change the number of queues during driver operation, the NAPI infrastructure doesn't allow the freeing and re-addition of NAPI entities without reloading the driver. This change reinitializes the dev_list in each NAPI struct on delete, instead of just deleting it (and assigning the list pointers to POISON). Drivers that wish to remove/re-add NAPI will need to re-initialize the netdev napi_list after removing all NAPI instances, before re-adding NAPI devices again. Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 26bc19ecf6c077c926827c25631340fd2e8fb16e Author: Alexander Duyck Date: Fri Dec 26 01:34:11 2008 -0800 igb: re-order queues to support cleaner use of ivar on 82576 The 82576 adapter orders the queues in pairs when virtualization is in use. The queue ordering previously conflicted with the ordering when sr-iov was enabled. This new ordering allows a PF to allocate 2 queues without using any VF resources. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 0e014cb16234c3797aa518d46fe7e1fe91ebcca9 Author: Alexander Duyck Date: Fri Dec 26 01:33:18 2008 -0800 igb: defeature tx head writeback This patch removes tx head writeback as it was found to not provide a significant improvement in tx performance and on some systems has been seen to cause a performance degredation due to partial cache line writes. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit f2712fd0b4097e8385bdb75c0ebd285a057fe299 Author: Herbert Xu Date: Fri Dec 26 01:31:18 2008 -0800 ipsec: Remove useless ret variable This patch removes a useless ret variable from the IPv4 ESP/UDP decapsulation code. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit fdb614c28487df41f7bf2c98e85f29f31885561e Author: Anton Vorontsov Date: Tue Dec 23 06:59:25 2008 +0000 ucc_geth: Eliminate the need for forward references This patch simply reorders some functions to eliminate the need for forward references. No other changes than that. Suggested-by: Timur Tabi Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 9c54004ea717116a10886e254e26502ffb1136e9 Author: David Woodhouse Date: Tue Dec 23 04:09:02 2008 +0000 atm: Driver for Solos PCI ADSL2+ card. This adds basic support for the 'Solos' PCI ADSL2+ cards being developed by Traverse Technologies and Xrio Ltd: http://www.traverse.com.au/productview.php?product_id=116 Signed-off-by: Nathan Williams Signed-off-by: David Woodhouse Signed-off-by: David S. Miller commit 236b87c29953a87a6817e96e311b0efd00e95dc7 Author: Tilman Schmidt Date: Fri Dec 26 01:22:03 2008 -0800 gigaset: ifdef cleanup Remove unnecessary #ifdef-s and #if-0-ed code sections. Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit c8770dcabd6a615b155c25dc4d57251d3e7f151c Author: Tilman Schmidt Date: Fri Dec 26 01:21:29 2008 -0800 gigaset: use pr_err() and pr_info() Switch from private printk wrapper macros to using pr_err() and pr_info() from linux/kernel.h, at the same time unifying a few error messages. Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit 4d8cd002602987ddc9507b5390800343f820ac92 Author: Divy Le Ray Date: Fri Dec 26 01:16:39 2008 -0800 cxgb3: add control to access embedded images Update contol path between cxgb3 and ULP modules (iWARP, iSCSI) to provide access to firware and protocol engine info. Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit 6dd014808f91ad99d4d794cf7c7c69610c10f904 Author: Hannes Eder Date: Fri Dec 26 00:15:03 2008 -0800 drivers/net/wireless/prism54: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/wireless/prism54/islpci_hotplug.c:97:1: warning: symbol 'prism54_probe' was not declared. Should it be static? drivers/net/wireless/prism54/islpci_hotplug.c:220:1: warning: symbol 'prism54_remove' was not declared. Should it be static? drivers/net/wireless/prism54/islpci_hotplug.c:263:1: warning: symbol 'prism54_suspend' was not declared. Should it be static? drivers/net/wireless/prism54/islpci_hotplug.c:286:1: warning: symbol 'prism54_resume' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit a3d1fd23e1ff2deeda0415805cf9a044dda7f55c Author: Hannes Eder Date: Fri Dec 26 00:14:41 2008 -0800 drivers/net/wireless/ipw2x00: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/wireless/ipw2x00/ipw2100.c:5271:6: warning: symbol 'ipw2100_queues_initialize' was not declared. Should it be static? drivers/net/wireless/ipw2x00/ipw2100.c:5278:6: warning: symbol 'ipw2100_queues_free' was not declared. Should it be static? drivers/net/wireless/ipw2x00/ipw2100.c:5285:5: warning: symbol 'ipw2100_queues_allocate' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 11ab72a7c94f3ccac05b85928875fdc4f1ed5e9b Author: Hannes Eder Date: Fri Dec 26 00:13:46 2008 -0800 drivers/net/wireless/b43: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/wireless/b43/phy_a.c:80:6: warning: symbol 'b43_radio_set_tx_iq' was not declared. Should it be static? drivers/net/wireless/b43/phy_a.c:150:6: warning: symbol 'b43_radio_init2060' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:57:10: warning: symbol 'b43_radio_channel_codes_bg' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:218:6: warning: symbol 'b43_set_txpower_g' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:386:6: warning: symbol 'b43_nrssi_hw_write' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:393:5: warning: symbol 'b43_nrssi_hw_read' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:404:6: warning: symbol 'b43_nrssi_hw_update' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:418:6: warning: symbol 'b43_nrssi_mem_update' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:592:6: warning: symbol 'b43_calc_nrssi_slope' was not declared. Should it be static? drivers/net/wireless/b43/phy_g.c:1357:5: warning: symbol 'b43_radio_init2050' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit bf512bc827c84f77553538834fffe71604079f23 Author: Hannes Eder Date: Fri Dec 26 00:13:29 2008 -0800 drivers/net/wireless/ath9k: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/wireless/ath9k/eeprom.c:195:6: warning: symbol 'ath9k_fill_eeprom' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:463:5: warning: symbol 'ath9k_check_eeprom' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:1219:6: warning: symbol 'ath9k_hw_set_def_power_per_rate_table' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:1510:6: warning: symbol 'ath9k_hw_set_4k_power_per_rate_table' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2007:5: warning: symbol 'ath9k_set_txpower' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2106:6: warning: symbol 'ath9k_set_addac' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2543:6: warning: symbol 'ath9k_eeprom_set_board_values' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2606:5: warning: symbol 'ath9k_get_eeprom_antenna_cfg' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2622:4: warning: symbol 'ath9k_hw_get_4k_num_ant_config' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2628:4: warning: symbol 'ath9k_hw_get_def_num_ant_config' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2647:4: warning: symbol 'ath9k_get_num_ant_config' was not declared. Should it be static? drivers/net/wireless/ath9k/eeprom.c:2790:5: warning: symbol 'ath9k_get_eeprom' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 2ed5ba890e1e8dda89557e4ea233a26ab8bf3d58 Author: Hannes Eder Date: Fri Dec 26 00:12:59 2008 -0800 drivers/net/wireless: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/wireless/airo.c:3610:6: warning: symbol 'mpi_receive_802_11' was not declared. Should it be static? drivers/net/wireless/atmel.c:3183:6: warning: symbol 'atmel_join_bss' was not declared. Should it be static? drivers/net/wireless/ray_cs.c:831:5: warning: symbol 'ray_dev_init' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 62c5345db704c912b485f6b60dab381c9cebf268 Author: Hannes Eder Date: Fri Dec 26 00:12:08 2008 -0800 drivers/net/wan/z85230.c: fix sparse warnings: un-EXPORT symbols The symbols are only references within the translation unit they are defined in, so un-EXPORT them und make them 'static'. Fix this sparse warnings: drivers/net/wan/z85230.c:604:25: warning: symbol 'z8530_dma_sync' was not declared. Should it be static? drivers/net/wan/z85230.c:613:25: warning: symbol 'z8530_txdma_sync' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 7b3dfa11cdef38bda07b99991f2f88c86df67ed2 Author: Hannes Eder Date: Fri Dec 26 00:11:21 2008 -0800 drivers/net/wan: fix sparse warning: make symbol static Fix this sparse warning: drivers/net/wan/x25_asy.c:623:5: warning: symbol 'x25_asy_esc' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit d157e0230f205f5dd646c4e0985030367de7aa4c Author: Hannes Eder Date: Mon Dec 22 09:17:55 2008 +0000 drivers/net/wan: fix sparse warnings: make do-while a compound statement Fix this sparse warnings: drivers/net/wan/wanxl.c:414:3: warning: do-while statement is not a compound statement drivers/net/wan/wanxl.c:441:3: warning: do-while statement is not a compound statement Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit ec1d1ebbb3bdc9807474be28c29efa155d15b850 Author: Hannes Eder Date: Fri Dec 26 00:07:45 2008 -0800 drivers/net/tulip: fix sparse warnings: make do-while a compound statement Fix this sparse warnings: drivers/net/tulip/de2104x.c:1695:4: warning: do-while statement is not a compound statement drivers/net/tulip/tulip_core.c:1433:5: warning: do-while statement is not a compound statement Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 27cd6ae5619084f363630683e77d70be38075afe Author: Hannes Eder Date: Fri Dec 26 00:07:15 2008 -0800 drivers/net/tokenring: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/tokenring/ibmtr.c:1840:6: warning: symbol 'tok_rerun' was not declared. Should it be static? drivers/net/tokenring/madgemc.c:469:16: warning: symbol 'madgemc_setnselout_pins' was not declared. Should it be static? drivers/net/tokenring/proteon.c:286:16: warning: symbol 'proteon_setnselout_pins' was not declared. Should it be static? drivers/net/tokenring/skisa.c:303:16: warning: symbol 'sk_isa_setnselout_pins' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 409b204435b85f7e159230c216f334a862cb3b95 Author: Hannes Eder Date: Fri Dec 26 00:06:28 2008 -0800 drivers/net/skfp: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/skfp/skfddi.c:620:13: warning: symbol 'skfp_interrupt' was not declared. Should it be static? drivers/net/skfp/skfddi.c:687:25: warning: symbol 'skfp_ctl_get_stats' was not declared. Should it be static? drivers/net/skfp/skfddi.c:1232:6: warning: symbol 'CheckSourceAddress' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 2f22d22ea7e95d45353b790ac52975a42e3a8558 Author: Hannes Eder Date: Fri Dec 26 00:04:53 2008 -0800 drivers/net/qlge: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/qlge/qlge_ethtool.c:100:6: warning: symbol 'ql_update_stats' was not declared. Should it be static? drivers/net/qlge/qlge_mpi.c:22:5: warning: symbol 'ql_get_mb_sts' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit f8057b7fefea1daca6928cbb95751d01fc934a41 Author: Hannes Eder Date: Fri Dec 26 00:04:26 2008 -0800 drivers/net/netxen: fix sparse warnings: use NULL pointer instead of plain integer Fix this sparse warnings: drivers/net/netxen/netxen_nic_hw.c:1462:18: warning: Using plain integer as NULL pointer drivers/net/netxen/netxen_nic_hw.c:1536:18: warning: Using plain integer as NULL pointer Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit e855aac805dd9c68b6fabe395cbc8e05f0eda6e4 Author: Hannes Eder Date: Fri Dec 26 00:03:59 2008 -0800 drivers/net/ixgbe: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/ixgbe/ixgbe_82598.c:180:5: warning: symbol 'ixgbe_get_copper_link_capabilities_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_82598.c:245:5: warning: symbol 'ixgbe_setup_fc_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_82598.c:729:5: warning: symbol 'ixgbe_set_vmdq_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_82598.c:773:5: warning: symbol 'ixgbe_set_vfta_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_82598.c:897:5: warning: symbol 'ixgbe_read_analog_reg8_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_82598.c:919:5: warning: symbol 'ixgbe_write_analog_reg8_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_82598.c:940:5: warning: symbol 'ixgbe_read_i2c_eeprom_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_82598.c:1000:5: warning: symbol 'ixgbe_get_supported_physical_layer_82598' was not declared. Should it be static? drivers/net/ixgbe/ixgbe_dcb_82598.c:100:5: warning: symbol 'ixgbe_dcb_config_packet_buffers_82598' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 0e49e64526ccd8cb78d7c4b4a732024ff221d4d0 Author: Hannes Eder Date: Fri Dec 26 00:03:19 2008 -0800 drivers/net/irda: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/irda/ma600-sir.c:239:5: warning: symbol 'ma600_reset' was not declared. Should it be static? drivers/net/irda/smsc-ircc2.c:875:5: warning: symbol 'smsc_ircc_hard_xmit_sir' was not declared. Should it be static? drivers/net/irda/smsc-ircc2.c:1131:6: warning: symbol 'smsc_ircc_set_sir_speed' was not declared. Should it be static? drivers/net/irda/smsc-ircc2.c:1897:6: warning: symbol 'smsc_ircc_sir_start' was not declared. Should it be static? drivers/net/irda/w83977af_ir.c:150:5: warning: symbol 'w83977af_open' was not declared. Should it be static? drivers/net/irda/w83977af_ir.c:313:5: warning: symbol 'w83977af_probe' was not declared. Should it be static? drivers/net/irda/w83977af_ir.c:412:6: warning: symbol 'w83977af_change_speed' was not declared. Should it be static? drivers/net/irda/w83977af_ir.c:492:5: warning: symbol 'w83977af_hard_xmit' was not declared. Should it be static? drivers/net/irda/w83977af_ir.c:734:5: warning: symbol 'w83977af_dma_receive' was not declared. Should it be static? drivers/net/irda/w83977af_ir.c:806:5: warning: symbol 'w83977af_dma_receive_complete' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 678c610b5a069a0a76c3189dd9aa801e5d5cd7e0 Author: Hannes Eder Date: Fri Dec 26 00:02:49 2008 -0800 drivers/net/igb: remove dead code (function 'igb_read_pci_cfg') Fix this warning: drivers/net/igb/e1000_mac.c:54: warning: 'igb_read_pci_cfg' defined but not used Signed-off-by: Hannes Eder Acked-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5e4232ee5d7a1d2b2399e9080bf2f1a28444c80b Author: Hannes Eder Date: Fri Dec 26 00:01:18 2008 -0800 drivers/net/enic: fix sparse warning: make symbol static Fix this sparse warning: drivers/net/enic/vnic_dev.c:288:5: warning: symbol 'vnic_dev_capable' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit fa4c16da738952882d51b265adbef1d8d329d50f Author: Hannes Eder Date: Mon Dec 22 09:16:13 2008 +0000 drivers/net/e1000e: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/e1000e/es2lan.c:1265:5: warning: symbol 'e1000_read_kmrn_reg_80003es2lan' was not declared. Should it be static? drivers/net/e1000e/es2lan.c:1298:5: warning: symbol 'e1000_write_kmrn_reg_80003es2lan' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit af8eca5cbbc8f991ec14c8d7e3350bbe2ea49655 Author: Hannes Eder Date: Thu Dec 25 23:59:28 2008 -0800 drivers/net/cxgb3: comment out dead code The function 'vsc8211_set_speed_duplex' is not used, so comment it out. For 'vsc8211_set_automdi' the function 'vsc8211_set_speed_duplex' is the only caller, so comment it out as well. Fix this (sparse) warning: drivers/net/cxgb3/vsc8211.c:269: warning: 'vsc8211_set_automdi' defined but not used drivers/net/cxgb3/vsc8211.c:295:5: warning: symbol 'vsc8211_set_speed_duplex' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit b06715b7a3db551dcf4706f05e8d2285a66fe05f Author: Hannes Eder Date: Thu Dec 25 23:58:57 2008 -0800 drivers/net/bonding: fix sparse warnings: move decls to header file Fix this sparse warnings: drivers/net/bonding/bond_main.c:104:20: warning: symbol 'bonding_defaults' was not declared. Should it be static? drivers/net/bonding/bond_main.c:204:22: warning: symbol 'ad_select_tbl' was not declared. Should it be static? drivers/net/bonding/bond_sysfs.c:60:21: warning: symbol 'bonding_rwsem' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 9dc20f553f8cb548feaba9dae0cb4905327ecbac Author: Hannes Eder Date: Thu Dec 25 23:58:35 2008 -0800 drivers/net/atlx: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/atlx/atl1.c:198:16: warning: symbol 'atl1_check_options' was not declared. Should it be static? drivers/net/atlx/atl1.c:526:5: warning: symbol 'atl1_read_mac_addr' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 888432f6720bec93ddae93c4d1483a18198a1b3b Author: Hannes Eder Date: Thu Dec 25 23:57:21 2008 -0800 drivers/net/arcnet: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/arcnet/capmode.c:64:6: warning: symbol 'arcnet_cap_init' was not declared. Should it be static? drivers/net/arcnet/com90xx.c:586:5: warning: symbol 'com90xx_reset' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit dac499f912abd5838fa3501efdcd0f23d5f4fc29 Author: Hannes Eder Date: Thu Dec 25 23:56:45 2008 -0800 drivers/net: fix sparse warnings: make symbols static Fix this sparse warnings: drivers/net/3c523.c:350:6: warning: symbol 'alloc586' was not declared. Should it be static? drivers/net/cs89x0.c:1029:14: warning: symbol 'reset_chip' was not declared. Should it be static? drivers/net/eepro.c:1399:1: warning: symbol 'read_eeprom' was not declared. Should it be static? drivers/net/plip.c:1020:5: warning: symbol 'plip_hard_header_cache' was not declared. Should it be static? drivers/net/s2io.c:5116:6: warning: symbol 'do_s2io_store_unicast_mc' was not declared. Should it be static? drivers/net/smc9194.c:767:12: warning: symbol 'smc_findirq' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit a08b32df1417146b1a4c43e641ec1177da51896c Author: Hannes Eder Date: Thu Dec 25 23:56:04 2008 -0800 drivers/net: fix sparse warning: returning void-valued expression Fix this sparse warning: drivers/net/niu.c:8850:2: warning: returning void-valued expression Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit e4c3c13cb4c4985cb62cf28677fc0ace69a8d69f Author: Hannes Eder Date: Thu Dec 25 23:55:35 2008 -0800 drivers/net: fix sparse warnings: make do-while a compound statement While at it insert some extra curly braces and fix formatting. Fix this sparse warnings: drivers/net/atp.c:811:8: warning: do-while statement is not a compound statement drivers/net/atp.c:813:8: warning: do-while statement is not a compound statement drivers/net/atp.c:815:11: warning: do-while statement is not a compound statement drivers/net/atp.c:817:11: warning: do-while statement is not a compound statement drivers/net/plip.c:642:4: warning: do-while statement is not a compound statement drivers/net/plip.c:647:4: warning: do-while statement is not a compound statement drivers/net/plip.c:820:4: warning: do-while statement is not a compound statement drivers/net/plip.c:825:4: warning: do-while statement is not a compound statement drivers/net/starfire.c:886:3: warning: do-while statement is not a compound statement Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 2705d4f87c068552f45e5d6feaa5c468a312f761 Author: Hannes Eder Date: Thu Dec 25 23:52:57 2008 -0800 drivers/net: fix sparse warning: use ANSI-style function declaration Fix this sparse warning: drivers/net/ne.c:932:24: warning: non-ANSI function declaration of function 'init_module' Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit d76e56b4c620c959fa8346c08d24ee4b2783a564 Author: Nathan Lynch Date: Mon Dec 22 08:42:11 2008 +0000 ehea: use get_zeroed_page for alignment-sensitive allocation With slub debug enabled, I see the following errors and crash with 2.6.28-rc9: IBM eHEA ethernet device driver (Release EHEA_0095) ehea: Error in ehea_h_register_rpage_mr: not on pageboundary ehea: Error in ehea_reg_mr_section: register_rpage_mr failed ehea: Error in ehea_reg_kernel_mr: registering mr failed ehea: Error in ehea_setup_ports: creating MR failed ehea 23c00100.lhea: setup_ports failed Unable to handle kernel paging request for data at address 0x6b6b6b6b6b6bbdcb Faulting instruction address: 0xd000000000064a24 cpu 0x0: Vector: 300 (Data Access) at [c0000000740e7190] pc: d000000000064a24: .ehea_update_firmware_handles+0x84/0x47c [ehea] lr: d00000000006df34: .ehea_probe_adapter+0x35c/0x39c [ehea] sp: c0000000740e7410 msr: 8000000000009032 dar: 6b6b6b6b6b6bbdcb dsisr: 40000000 current = 0xc000000074233780 paca = 0xc0000000008a3300 pid = 2046, comm = modprobe enter ? for help [c0000000740e74f0] d00000000006df34 .ehea_probe_adapter+0x35c/0x39c [ehea] [c0000000740e75a0] c00000000041d5a4 .of_platform_device_probe+0x78/0xb0 [c0000000740e7630] c0000000002d8b38 .driver_probe_device+0x13c/0x200 [c0000000740e76c0] c0000000002d8c90 .__driver_attach+0x94/0xd8 [c0000000740e7750] c0000000002d7d64 .bus_for_each_dev+0x80/0xd8 [c0000000740e7800] c0000000002d889c .driver_attach+0x28/0x40 [c0000000740e7880] c0000000002d8340 .bus_add_driver+0xd4/0x284 [c0000000740e7920] c0000000002d90a0 .driver_register+0xc4/0x198 [c0000000740e79d0] c00000000041d45c .of_register_driver+0x4c/0x60 [c0000000740e7a50] c000000000020ef8 .ibmebus_register_driver+0x30/0x4c [c0000000740e7ae0] d00000000006e108 .ehea_module_init+0x194/0x208c [ehea] [c0000000740e7b90] c000000000009028 .do_one_initcall+0x90/0x1ac [c0000000740e7d90] c00000000008619c .sys_init_module+0xc4/0x200 [c0000000740e7e30] c0000000000084ac syscall_exit+0x0/0x40 (When slub debug is disabled it works fine.) PAGE_SIZE allocations via slab are not guaranteed to be page-aligned; use get_zeroed_page for the 'pt' buffer (I don't really know what this is, only that it is passed to firmware and that the first error message complains about its alignment). This allows the system to boot. Signed-off-by: Nathan Lynch Signed-off-by: David S. Miller commit 359d67d6ad054ae11ad459665fdfb883aca87782 Author: Julia Lawall Date: Mon Dec 22 21:53:40 2008 +0000 [CIFS] Remove redundant test In fs/cifs/cifssmb.c, pLockData is tested for being NULL at the beginning of the function, and not reassigned subsequently. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) Signed-off-by: Julia Lawall Signed-off-by: Steve French commit c6fbba0546d3ead18d4a623e76e28bcbaa66a325 Author: Steve French Date: Thu Dec 18 01:41:20 2008 +0000 [CIFS] make sure that DFS pathnames are properly formed The paths in a DFS request are supposed to only have a single preceding backslash, but we are sending them with a double backslash. This is exposing a bug in Windows where it also sends a path in the response that has a double backslash. The existing code that builds the mount option string however expects a double backslash prefix in a couple of places when it tries to use the path returned by build_path_from_dentry. Fix compose_mount_options to expect properly formed DFS paths (single backslash at front). Also clean up error handling in that function. There was a possible NULL pointer dereference and situations where a partially built option string would be returned. Tested against Samba 3.0.28-ish server and Samba 3.3 and Win2k8. CC: Stable Signed-off-by: Jeff Layton Signed-off-by: Steve French commit ac6a3ef405f314c206906463ca9913a826a577ee Author: Volker Lendecke Date: Sat Dec 6 16:40:40 2008 +0100 Remove an already-checked error condition in SendReceiveBlockingLock Remove an already-checked error condition in SendReceiveBlockingLock Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 698e96a826939bb24063f6a61801c174e19c32b1 Author: Volker Lendecke Date: Sat Dec 6 16:39:31 2008 +0100 Streamline SendReceiveBlockingLock: Use "goto out:" in an error condition Streamline SendReceiveBlockingLock: Use "goto out:" in an error condition Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 17c8bfed8abbbed82937a751abfc40d2866e3196 Author: Volker Lendecke Date: Sat Dec 6 16:38:19 2008 +0100 Streamline SendReceiveBlockingLock: Use "goto out:" in an error condition Streamline SendReceiveBlockingLock: Use "goto out:" in an error condition Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 2b2bdfba7a3679f67b7c3aca4a4b08b24bb675a8 Author: Steve French Date: Thu Dec 11 17:26:54 2008 +0000 [CIFS] Streamline SendReceive[2] by using "goto out:" in an error condition Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 8e4f2e8a1e5cfa07c5b2731accee0e6eb4c64575 Author: Volker Lendecke Date: Sat Dec 6 16:22:15 2008 +0100 Slightly streamline SendReceive[2] Slightly streamline SendReceive[2] Remove an else branch by naming the error condition what it is Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 829049cbb1d2ddda2be17ea008b6b3c457808d91 Author: Volker Lendecke Date: Sat Dec 6 16:00:53 2008 +0100 Check the return value of cifs_sign_smb[2] Check the return value of cifs_sign_smb[2] Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 4c3130efda1ef4f28d5f26819fae2e58c3945f0b Author: Steve French Date: Tue Dec 9 00:28:16 2008 +0000 [CIFS] Cleanup: Move the check for too large R/W requests This avoids an unnecessary else branch Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 27a97a613b96688e59dd116cae3f0c94107b434c Author: Volker Lendecke Date: Mon Dec 8 20:59:39 2008 +0000 [CIFS] Slightly simplify wait_for_free_request(), remove an unnecessary "else" branch This is no functional change, because in the "if" branch we do an early "return 0;". Signed-off-by: Volker Lendecke Signed-off-by: Steve French commit 8fbbd365cc700e288fb6f9780b092c5afa4946e5 Author: Volker Lendecke Date: Sat Dec 6 13:12:34 2008 +0100 Simplify allocate_mid() slightly: Remove some unnecessary "else" branches Simplify allocate_mid() slightly: Remove some unnecessary "else" branches Signed-off-by: Volker Lendecke Acked-by: Jeff Layton Signed-off-by: Steve French commit 6d9c6d543165d1d492602c1371cb019040093584 Author: Volker Lendecke Date: Mon Dec 8 20:50:24 2008 +0000 [CIFS] In SendReceive, move consistency check out of the mutexed region inbuf->smb_buf_length does not change in in wait_for_free_request() or in allocate_mid(), so we can check it early. Signed-off-by: Volker Lendecke Acked-by: Jeff Layton Signed-off-by: Steve French commit 00e485b0198ea4f509341373f1d9adb0a5977a2f Author: Jeff Layton Date: Fri Dec 5 20:41:21 2008 -0500 cifs: store password in tcon cifs: store password in tcon Each tcon has its own password for share-level security. Store it in the tcon and wipe it clean and free it when freeing the tcon. When doing the tree connect with share-level security, use the tcon password instead of the session password. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 4e53a3fb98d3d5c2941d2e7199dab317a9d4ead3 Author: Jeff Layton Date: Fri Dec 5 20:41:21 2008 -0500 cifs: have calc_lanman_hash take more granular args cifs: have calc_lanman_hash take more granular args We need to use this routine to encrypt passwords associated with the tcon too. Don't assume that the password will be attached to the smb_session. Also, make some of the values in the lower encryption functions const since they aren't changed. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 55162dec9371a6f6ac63ff546c182cc6144a649e Author: Jeff Layton Date: Fri Dec 5 20:41:21 2008 -0500 cifs: zero out session password before freeing it cifs: zero out session password before freeing it ...just to be on the safe side. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 85705524258f93a6086c3247a58f34a661b82b3d Author: Jeff Layton Date: Fri Dec 5 20:41:21 2008 -0500 cifs: fix wait_for_response to time out sleeping processes correctly cifs: fix wait_for_response to time out sleeping processes correctly The current scheme that CIFS uses to sleep and wait for a response is not quite what we want. After sending a request, wait_for_response puts the task to sleep with wait_event(). One of the conditions for wait_event is a timeout (using time_after()). The problem with this is that there is no guarantee that the process will ever be woken back up. If the server stops sending data, then cifs_demultiplex_thread will leave its response queue sleeping. I think the only thing that saves us here is the fact that cifs_dnotify_thread periodically (every 15s) wakes up sleeping processes on all response_q's that have calls in flight. This makes for unnecessary wakeups of some processes. It also means large variability in the timeouts since they're all woken up at once. Instead of this, put the tasks to sleep with wait_event_timeout. This makes them wake up on their own if they time out. With this change, cifs_dnotify_thread should no longer be needed. I've been testing this in conjunction with some other patches that I'm working on. It doesn't seem to affect performance at all with with heavy I/O. Identical iozone -ac runs complete in almost exactly the same time (<1% difference in times). Thanks to Wasrshi Nimara for initially pointing this out. Wasrshi, it would be nice to know whether this patch also helps your testcase. Signed-off-by: Jeff Layton Cc: Wasrshi Nimara Signed-off-by: Steve French commit 8be0ed44c2fa4afcf2c6d2fb3102c926e9f989df Author: Steve French Date: Fri Dec 5 19:14:12 2008 +0000 [CIFS] Can not mount with prefixpath if root directory of share is inaccessible Windows allows you to deny access to the top of a share, but permit access to a directory lower in the path. With the prefixpath feature of cifs (ie mounting \\server\share\directory\subdirectory\etc.) this should have worked if the user specified a prefixpath which put the root of the mount at a directory to which he had access, but we still were doing a lookup on the root of the share (null path) when we should have been doing it on the prefixpath subdirectory. This fixes Samba bug # 5925 Acked-by: Jeff Layton Signed-off-by: Steve French commit 61e748015866e48aff91284e3d300c6e3035a87a Author: Steve French Date: Wed Dec 3 00:57:54 2008 +0000 [CIFS] various minor cleanups pointed out by checkpatch script Signed-off-by: Steve French commit 3de2091ac722e7dbc37d87d9112ab19ec6a871de Author: Steve French Date: Tue Dec 2 20:52:28 2008 +0000 [CIFS] fix typo Signed-off-by: Steve French commit acc18aa1e643519035abdab5e72dc75e534b5198 Author: Steve French Date: Tue Dec 2 18:53:55 2008 +0000 [CIFS] remove sparse warning Signed-off-by: Steve French commit 13a6e42af8d90e2e8eb7fa50adf862a525b70518 Author: Steve French Date: Tue Dec 2 17:24:33 2008 +0000 [CIFS] add mount option to send mandatory rather than advisory locks Some applications/subsystems require mandatory byte range locks (as is used for Windows/DOS/OS2 etc). Sending advisory (posix style) byte range lock requests (instead of mandatory byte range locks) can lead to problems for these applications (which expect that other clients be prevented from writing to portions of the file which they have locked and are updating). This mount option allows mounting cifs with the new mount option "forcemand" (or "forcemandatorylock") in order to have the cifs client use mandatory byte range locks (ie SMB/CIFS/Windows/NTFS style locks) rather than posix byte range lock requests, even if the server would support posix byte range lock requests. This has no effect if the server does not support the CIFS Unix Extensions (since posix style locks require support for the CIFS Unix Extensions), but for mounts to Samba servers this can be helpful for Wine and applications that require mandatory byte range locks. Acked-by: Jeff Layton CC: Alexander Bokovoy Signed-off-by: Steve French commit d5c5605c27c92dac6de1a7a658af5b030847f949 Author: Jeff Layton Date: Mon Dec 1 18:42:33 2008 -0500 cifs: make ipv6_connect take a TCP_Server_Info arg Signed-off-by: Jeff Layton Signed-off-by: Steve French commit bcf4b1063db246a90b9e09e0556f635d632eef36 Author: Jeff Layton Date: Mon Dec 1 18:42:15 2008 -0500 cifs: make ipv4_connect take a TCP_Server_Info arg In order to unify the smb_send routines, we need to reorganize the routines that connect the sockets. Have ipv4_connect take a TCP_Server_Info pointer and get the necessary fields from that. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 7586b76585d15db767c19255ba0ecfb164df99f7 Author: Jeff Layton Date: Mon Dec 1 18:41:49 2008 -0500 cifs: don't declare smb_vol info on the stack struct smb_vol is fairly large, it's probably best to kzalloc it... Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 63c038c29774476c5dae759e348c269342b4dbef Author: Jeff Layton Date: Mon Dec 1 18:41:46 2008 -0500 cifs: move allocation of new TCP_Server_Info into separate function Clean up cifs_mount a bit by moving the code that creates new TCP sessions into a separate function. Have that function search for an existing socket and then create a new one if one isn't found. Also reorganize the initializion of TCP_Server_Info a bit to prepare for cleanup of the socket connection code. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 8ecaf67a8ea58c8f131ff045475c74e9538d6b7a Author: Jeff Layton Date: Mon Dec 1 15:23:50 2008 -0500 cifs: account for IPv6 in ses->serverName and clean up netbios name handling The current code for setting the session serverName is IPv4-specific. Allow it to be an IPv6 address as well. Use NIP* macros to set the format. This also entails increasing the length of the serverName field, so declare a new macro for RFC1001 name length and use it in the appropriate places. Finally, drop the unicode_server_Name field from TCP_Server_Info since it's not used. We can add it back later if needed, but for now it just wastes memory. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 954d7a1cf12158fed23dd8b0f3f563d5a5c97f28 Author: Jeff Layton Date: Mon Dec 1 15:23:50 2008 -0500 cifs: make dnotify thread experimental code Now that tasks sleeping in wait_for_response will time out on their own, we're not reliant on the dnotify thread to do this. Mark it as experimental code for now. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 72ca545b2d83ac7de671bf66d2dbc214528b4c0c Author: Jeff Layton Date: Mon Dec 1 07:09:36 2008 -0500 cifs: convert tcpSem to a mutex Mutexes are preferred for single-holder semaphores... Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 0468a2cf914e79442b8309ce62e3f861599d8cab Author: Jeff Layton Date: Mon Dec 1 07:09:35 2008 -0500 cifs: take module reference when starting cifsd cifsd can outlive the last cifs mount. We need to hold a module reference until it exits to prevent someone from unplugging the module until we're ready. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 80909022ce966191e6140fcc15d8aff57a7df32e Author: Jeff Layton Date: Mon Dec 1 07:09:35 2008 -0500 cifs: display addr and prefixpath options in /proc/mounts Have cifs_show_options display the addr and prefixpath options in /proc/mounts. Reduce struct dereferencing by adding some local variables. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 24b9b06ba7ea53aa0c4d0b1c8c1e93aa1bd9fe72 Author: Jeff Layton Date: Mon Dec 1 07:09:34 2008 -0500 cifs: remove unused SMB session pointer from struct mid_q_entry Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 26c743bed9b0dc83dc736c68d2a3e7494a9790ad Author: Yevgeny Petrilin Date: Thu Dec 25 18:20:13 2008 -0800 mlx4_en: Remove pauses module parameters. They are controlled through Ethtool interface. Signed-off-by: Yevgeny Petrilin Signed-off-by: David S. Miller commit 60b9f9e5588a9e37c35abc2051d57ef12171f916 Author: Yevgeny Petrilin Date: Thu Dec 25 18:19:47 2008 -0800 mlx4_en: Removed Interrupt moderation module parameters They are controlled through Ethtool interface, no need to have two ways to modify them. Signed-off-by: Yevgeny Petrilin Signed-off-by: David S. Miller commit c03ea21fcf549eed42de7aaa965ced8bee17aa76 Author: Yevgeny Petrilin Date: Thu Dec 25 18:14:04 2008 -0800 mlx4_en: Removed redundant cq->armed flag Signed-off-by: Yevgeny Petrilin Signed-off-by: David S. Miller commit 48374ddce72e278e29080e3177e74a13c034d8b4 Author: Yevgeny Petrilin Date: Thu Dec 25 18:13:45 2008 -0800 mlx4_en: Removed TX locking when polling TX cq There is no need to synchronize the polling with the transmit function. The only place to synchronize is when we process the cq from the transmit function. Also removed spin_lock_irq, and using spin_trylock, if somebody else is already processing the cq, no need to wait for it to finish. Signed-off-by: Yevgeny Petrilin Signed-off-by: David S. Miller commit b51968d676db1c4e541b4c84de7ce7af812c9e9f Author: Yevgeny Petrilin Date: Thu Dec 25 18:13:20 2008 -0800 mlx4_en: Memory leak on completion queue free If port is being destroyed without being activated before, CQ resources are not freed. Signed-off-by: Yevgeny Petrilin Signed-off-by: David S. Miller commit e74b3f7d568a62d21a76885438d7351948e7355a Merge: 13e620e... 59f8500... Author: David S. Miller Date: Thu Dec 25 18:10:12 2008 -0800 Merge branch 'for-david' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6 commit 13e620e0e6c609ccc9882ea280f4f077500d51a0 Author: Brice Goglin Date: Thu Dec 25 18:09:16 2008 -0800 myri10ge: update driver version to 1.4.4-1.395 Update myri10ge driver version to 1.4.4-1.395. Signed-off-by: Brice Goglin Signed-off-by: David S. Miller commit e92df2820d2d8de4be3dcbad96eb144ce6fd550d Author: Brice Goglin Date: Thu Dec 25 18:08:59 2008 -0800 myri10ge: update firmware headers to 1.4.37 Update myri10ge firmware headers to 1.4.37: * Make each member of the error/cmd enum an initialized one, so there is a convenient numerical reference to look for reverse conversion. * Add new MXGEFW_CMD_RELAX_RXBUFFER_ALIGNMENT command. * Add new "features" field to mcp_header. Signed-off-by: Brice Goglin Signed-off-by: David S. Miller commit 36994a0a7004fd4777cd93a4b658b5f84bf4c93e Author: Johannes Berg Date: Thu Dec 25 18:07:50 2008 -0800 forcedeth: don't poll NV event 36 Polling doesn't seem to be necessary on my hardware, at least I haven't seen any bad effects testing it a while. Remove the polling so the CPU doesn't have to wake up a hundred times per second. Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit 88a44e51e9a5202f8856f72400fc87a39205186d Author: Julia Lawall Date: Thu Dec 25 18:04:51 2008 -0800 net/appletalk: Remove redundant test atif is tested for being NULL twice, with the same effect in each case. I have kept the second test, as it seems to fit well with the comment above it. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit c14ea0ca659d378dd377e417162ebd908d1da4ce Author: Julia Lawall Date: Thu Dec 25 18:03:44 2008 -0800 drivers/net/wan: Remove redundant test arg is checked not to be NULL a few lines before. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 90f5dfcc6afafcc3e1c18298143c1213b071990d Author: Julia Lawall Date: Thu Dec 25 18:03:28 2008 -0800 drivers/net: Remove redundant test In each case, ap is checked not to be NULL a few lines before. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 662f44af635f6bde366d44abacaeec7916d9f168 Author: Julia Lawall Date: Thu Dec 25 18:03:09 2008 -0800 drivers/net/ehea: Remove redundant test In each case, vpage is checked not to be NULL just after it is initialized at the beginning of each loop iteration. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit b0fd0d235df2b3cf8e5e244e301614092a9c317c Author: Julia Lawall Date: Thu Dec 25 18:02:49 2008 -0800 drivers/net/au1000_eth.c: Remove redundant test phydev is checked to be not NULL a few lines above. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit c062076cc999795af19ff61d8c76f33e5ceb9ca0 Author: Roel Kluin Date: Thu Dec 25 17:23:50 2008 -0800 qlge: ql_adapter_down() typo Signed-off-by: Roel Kluin Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit 619e803d3c1b7bcc17c45e81f309d0b9b3df2d5d Author: Vegard Nossum Date: Thu Dec 25 17:21:17 2008 -0800 netlink: fix (theoretical) overrun in message iteration See commit 1045b03e07d85f3545118510a587035536030c1c ("netlink: fix overrun in attribute iteration") for a detailed explanation of why this patch is necessary. In short, nlmsg_next() can make "remaining" go negative, and the remaining >= sizeof(...) comparison will promote "remaining" to an unsigned type, which means that the expression will evaluate to true for negative numbers, even though it was not intended. I put "theoretical" in the title because I have no evidence that this can actually happen, but I suspect that a crafted netlink packet can trigger some badness. Note that the last test, which seemingly has the exact same problem (also true for nla_ok()), is perfectly OK, since we already know that remaining is positive. Signed-off-by: Vegard Nossum Signed-off-by: David S. Miller commit 64ff3b938ec6782e6585a83d5459b98b0c3f6eb8 Author: Herbert Xu Date: Thu Dec 25 17:12:58 2008 -0800 tcp: Always set urgent pointer if it's beyond snd_nxt Our TCP stack does not set the urgent flag if the urgent pointer does not fit in 16 bits, i.e., if it is more than 64K from the sequence number of a packet. This behaviour is different from the BSDs, and clearly contradicts the purpose of urgent mode, which is to send the notification (though not necessarily the associated data) as soon as possible. Our current behaviour may in fact delay the urgent notification indefinitely if the receiver window does not open up. Simply matching BSD however may break legacy applications which incorrectly rely on the out-of-band delivery of urgent data, and conversely the in-band delivery of non-urgent data. Alexey Kuznetsov suggested a safe solution of following BSD only if the urgent pointer itself has not yet been transmitted. This way we guarantee that when the remote end sees the packet with non-urgent data marked as urgent due to wrap-around we would have advanced the urgent pointer beyond, either to the actual urgent data or to an as-yet untransmitted packet. The only potential downside is that applications on the remote end may see multiple SIGURG notifications. However, this would occur anyway with other TCP stacks. More importantly, the outcome of such a duplicate notification is likely to be harmless since the signal itself does not carry any information other than the fact that we're in urgent mode. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 8510b937ae1e23583abdeb828cad5c518295c61d Author: Wei Yongjun Date: Thu Dec 25 16:59:03 2008 -0800 sctp: Add validity check for SCTP_PARTIAL_DELIVERY_POINT socket option The latest ietf socket extensions API draft said: 8.1.21. Set or Get the SCTP Partial Delivery Point Note also that the call will fail if the user attempts to set this value larger than the socket receive buffer size. This patch add this validity check for SCTP_PARTIAL_DELIVERY_POINT socket option. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit 9fcb95a105758b81ef0131cd18e2db5149f13e95 Author: Wei Yongjun Date: Thu Dec 25 16:58:11 2008 -0800 sctp: Avoid memory overflow while FWD-TSN chunk is received with bad stream ID If FWD-TSN chunk is received with bad stream ID, the sctp will not do the validity check, this may cause memory overflow when overwrite the TSN of the stream ID. The FORWARD-TSN chunk is like this: FORWARD-TSN chunk Type = 192 Flags = 0 Length = 172 NewTSN = 99 Stream = 10000 StreamSequence = 0xFFFF This patch fix this problem by discard the chunk if stream ID is not less than MIS. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit aea3c5c05d2c409e93bfa80dcedc06af7da6c13b Author: Wei Yongjun Date: Thu Dec 25 16:57:24 2008 -0800 sctp: Implement socket option SCTP_GET_ASSOC_NUMBER Implement socket option SCTP_GET_ASSOC_NUMBER of the latest ietf socket extensions API draft. 8.2.5. Get the Current Number of Associations (SCTP_GET_ASSOC_NUMBER) This option gets the current number of associations that are attached to a one-to-many style socket. The option value is an uint32_t. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit ea686a2653c5586b1c7192958b9d521abde66e92 Author: Wei Yongjun Date: Thu Dec 25 16:56:45 2008 -0800 sctp: Fix a typo in socket.c Just fix a typo in socket.c. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit e89c2095815d82eaa9fb85eff42f8b65b67a59cf Author: Wei Yongjun Date: Thu Dec 25 16:54:58 2008 -0800 sctp: Bring SCTP_MAXSEG socket option into ietf API extension compliance Brings maxseg socket option set/get into line with the latest ietf socket extensions API draft, while maintaining backwards compatibility. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit 161c8d2f50109b44b664eaf23831ea1587979a61 Author: Krzysztof Halasa Date: Thu Dec 25 16:50:41 2008 -0800 net: PHYLIB mdio fixes #2 The PHYLIB mdio code has more problems in error paths: - mdiobus_release can be called before bus->state is set to MDIOBUS_REGISTERED - mdiobus_scan allocates resources which need to be freed - the comment is wrong, the resistors used are actually pull-ups. Signed-off-by: Krzysztof Halasa Signed-off-by: David S. Miller commit f7d1b9f5aafa371d7f51f644aa3c38bc914e9205 Author: Eric Dumazet Date: Thu Dec 25 16:45:19 2008 -0800 vlan: fix convertion to net_device_ops commit 656299f706e52e0409733d704c2761f1b12d6954 (vlan: convert to net_device_ops) added a net_device_ops with a NULL ndo_start_xmit field. This gives a crash in dev_hard_start_xmit() Fix it using two net_device_ops structures, one for hwaccel vlan, one for non hwaccel vlan. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit d45227391c70ea12ec129ebfa97841e9b7ff34fd Author: Steve Glendinning Date: Thu Dec 25 16:44:01 2008 -0800 smsc911x: fix platform resource call during module unload This patch fixes a typo, the platform_get_resource calls in smsc911x_drv_remove are supposed to look the same as those in smsc911x_drv_probe. Reported and fixed by dfoley@telus.net. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit dc26977f77dd3486b59516d2cc03627009c0d4c6 Author: Steve Glendinning Date: Thu Dec 25 16:43:34 2008 -0800 smsc911x: don't clobber driver_data smsc911x uses driver_data to store our net_device, don't overwrite this with the mii_bus. Reported and fixed by dfoley@telus.net. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit 7091e728c570157496e52296d2dbe816a6916836 Author: Alexey Dobriyan Date: Thu Dec 25 16:42:51 2008 -0800 netns: igmp: make /proc/net/{igmp,mcfilter} per netns This patch makes the followinf proc entries per-netns: /proc/net/igmp /proc/net/mcfilter Signed-off-by: Alexey Dobriyan Acked-by: Daniel Lezcano Acked-by: Benjamin Thery Signed-off-by: David S. Miller commit b4ee07df3d8121060200dbe1c6686a4e0682bee2 Author: Alexey Dobriyan Date: Thu Dec 25 16:42:23 2008 -0800 netns: igmp: allow IPPROTO_IGMP sockets in netns Looks like everything is already ready. Required for ebtables(8) for one thing. Also, required for ipmr per-netns (coming soon). (Benjamin) Signed-off-by: Alexey Dobriyan Acked-by: Benjamin Thery Signed-off-by: David S. Miller commit cb5b04fe14394a93eb9a3523f5af9f77480a5a04 Author: Steve Glendinning Date: Thu Dec 25 16:41:09 2008 -0800 smsc911x: make smsc911x_ethtool_ops constant Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit 631b7568c7d8f0222773e1beb2460a86541ae394 Author: Steve Glendinning Date: Thu Dec 25 16:40:47 2008 -0800 smsc911x: convert driver to use net_device_ops Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit dd0451938815d8b901488b1058f52023892c6cde Author: Steve Glendinning Date: Thu Dec 25 16:40:19 2008 -0800 smsc911x: fix BUG if module is removed while interface is up If the module is removed while its interface is up, smsc911x_stop is not called until after smsc911x_drv_remove has disposed of phy_dev. This patch changes the stop method to handle this situation. This is a different problem to the one reported by dfoley@telus.net. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit 4e202284e6ac1695df3eb4a0e549ea78addfb663 Merge: 826e08b... 80f40ee... 4a6908a... Author: Ingo Molnar Date: Thu Dec 25 13:42:23 2008 +0100 Merge branch 'sched/urgent'; commit 'v2.6.28' into sched/core commit cef7125def4dd104769f400c941199614da0aca1 Author: Hendrik Brueckner Date: Thu Dec 25 13:39:55 2008 +0100 [S390] provide documentation for hvc_iucv kernel parameter. Signed-off-by: Hendrik Brueckner Signed-off-by: Martin Schwidefsky commit 2a7c6f2c39d1291e55403676b25fcfbff78fc5fb Author: Peter Tiedemann Date: Thu Dec 25 13:39:54 2008 +0100 [S390] convert ctcm printks to dev_xxx and pr_xxx macros. Signed-off-by: Peter Tiedemann Signed-off-by: Martin Schwidefsky commit ecf39d42129767c0b4b4a6cf4997c1219c860934 Author: Christof Schmitt Date: Thu Dec 25 13:39:53 2008 +0100 [S390] convert zfcp printks to pr_xxx macros. Signed-off-by: Christof Schmitt Signed-off-by: Martin Schwidefsky commit 5466c2e43e78068cfe634b07fe36dd7a6a7af535 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:52 2008 +0100 [S390] convert vmlogrdr printks to pr_xxx macros. Signed-off-by: Martin Schwidefsky commit 17159dc6fb8769e52edb23d138c2b6bc634397a3 Author: Michael Holzheu Date: Thu Dec 25 13:39:51 2008 +0100 [S390] convert zfcp dumper printks to pr_xxx macros. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 395d31d40cc38270dd7c024691404e2eddf0678d Author: Martin Schwidefsky Date: Thu Dec 25 13:39:50 2008 +0100 [S390] convert cpu related printks to pr_xxx macros. Signed-off-by: Martin Schwidefsky commit 74eacdb9c2bf9fc6e8c6785013b5dd0e551a9dfa Author: Frank Blaschka Date: Thu Dec 25 13:39:49 2008 +0100 [S390] convert qeth printks to dev_xxx and pr_xxx macros. Signed-off-by: Frank Blaschka Signed-off-by: Martin Schwidefsky commit b3ff088b3025c3583194edd7576215b61333111f Author: Martin Schwidefsky Date: Thu Dec 25 13:39:48 2008 +0100 [S390] convert sclp printks to pr_xxx macros. Signed-off-by: Martin Schwidefsky commit 8f7c502c267c0e5e2dbbbdea9f3e7e85bbc95694 Author: Ursula Braun Date: Thu Dec 25 13:39:47 2008 +0100 [S390] convert iucv printks to dev_xxx and pr_xxx macros. Signed-off-by: Ursula Braun Signed-off-by: Martin Schwidefsky commit 136f7a1c4239be91e3e0f53532944b9aab7b58f8 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:46 2008 +0100 [S390] convert ap_bus printks to pr_xxx macros. Signed-off-by: Martin Schwidefsky commit 93098bf01578763bb84b627fe893f219cc44b995 Author: Hongjie Yang Date: Thu Dec 25 13:39:45 2008 +0100 [S390] convert dcssblk and extmem printks messages to pr_xxx macros. Signed-off-by: Hongjie Yang Signed-off-by: Martin Schwidefsky commit 1519c0c6ebd2bfd29bae762a1741963a1d06bca2 Author: Melissa Howland Date: Thu Dec 25 13:39:44 2008 +0100 [S390] convert monwriter printks to pr_xxx macros. Signed-off-by: Melissa Howland Signed-off-by: Martin Schwidefsky commit c5612c1956597687e4bdf59f2649d20d60f5a2b6 Author: Michael Holzheu Date: Thu Dec 25 13:39:43 2008 +0100 [S390] convert s390 debug feature printks to pr_xxx macros. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit a4f5a299cf8468619dc17f0711017c6d72d6ab94 Author: Gerald Schaefer Date: Thu Dec 25 13:39:42 2008 +0100 [S390] convert monreader printks to pr_xxx macros. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit e7534b0ec9a28c53a7bcc874e818a24d3b49680f Author: Gerald Schaefer Date: Thu Dec 25 13:39:41 2008 +0100 [S390] convert appldata printks to pr_xxx macros. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 3b6ed4ab48be2110aa93d9828783bfe86193331d Author: Martin Schwidefsky Date: Thu Dec 25 13:39:40 2008 +0100 [S390] convert setup printks to pr_xxx macros. Signed-off-by: Martin Schwidefsky commit f55495ba1a56adba57ea7d3164a766d83a631c58 Author: Michael Holzheu Date: Thu Dec 25 13:39:39 2008 +0100 [S390] convert hypfs printks to pr_xxx macros. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit feab6501d84f7e2f75cf0f5c7d43341431904374 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:38 2008 +0100 [S390] convert time printks to pr_xxx macros. Signed-off-by: Martin Schwidefsky commit 39f09392498d8ee876bea3ad34f26c447924c818 Author: Jan Glauber Date: Thu Dec 25 13:39:37 2008 +0100 [S390] convert cpacf printks to pr_xxx macros. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit e6d5a428e01b1387852f17b3dd7934239a0be0d4 Author: Michael Ernst Date: Thu Dec 25 13:39:36 2008 +0100 [S390] convert cio printks to pr_xxx macros. Signed-off-by: Michael Ernst Signed-off-by: Martin Schwidefsky commit 80a5c36d1dae15520aa0df0eff713c6c41c46035 Author: Frank Munzert Date: Thu Dec 25 13:39:35 2008 +0100 [S390] convert vmur printks to pr_xxx macros. Signed-off-by: Frank Munzert Signed-off-by: Martin Schwidefsky commit 2f526e5acbf1179d30bc9fa1d20b69ec4c0bb689 Author: Christian Borntraeger Date: Thu Dec 25 13:39:34 2008 +0100 [S390] convert cpcmd printks to pr_xxx macros. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit c99fc5dadcd87e8b97613f50c48407678b731cfb Author: Klaus-D. Wacker Date: Thu Dec 25 13:39:33 2008 +0100 [S390] convert lcs printks to dev_xxx and pr_xxx macros. Signed-off-by: Klaus-D. Wacker Signed-off-by: Martin Schwidefsky commit 8988e58f8b7d4b5e8b64435bedf84e4b3987a63d Author: Christian Borntraeger Date: Thu Dec 25 13:39:32 2008 +0100 [S390] convert vmcp printks to pr_xxx macros. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit d1c2f8928a2feab56a181bb7e9afe8f804fd26cd Author: Martin Schwidefsky Date: Thu Dec 25 13:39:31 2008 +0100 [S390] convert xpram printks to pr_xxx macros. Signed-off-by: Martin Schwidefsky commit acfa922c5a00eca0abac0e2b6d6666c606c27345 Author: Julia Lawall Date: Thu Dec 25 13:39:30 2008 +0100 [S390] s390: Remove redundant test The loop above the modified code only terminates when rc is a valid pointer. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: Martin Schwidefsky commit 0946100f566d04cc93e86654f3ba588ee94b3f4c Author: Hendrik Brueckner Date: Thu Dec 25 13:39:29 2008 +0100 [S390] s390/setup: set default preferred console device "ttyS" This patch sets the default console device for s390. The console= kernel parameter can be still used to switch the preferred console to some other device. In that case, console messages are also printed on the default console device (ttyS0). Signed-off-by: Hendrik Brueckner Signed-off-by: Martin Schwidefsky commit 21e7b2c4d59e5d6631b25e71e777cb0160997d6a Author: Julia Lawall Date: Thu Dec 25 13:39:28 2008 +0100 [S390] drivers/s390/crypto: Move dereference to after IS_ERR test If reply is ERR_PTR(...), then it should not be dereferenced, so I have moved the dereference from the declaration to after the IS_ERR test. The semantic match that finds the problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @match exists@ expression x, E; identifier fld; position p1,p2; @@ ( x = E; | x = E | x@p1->fld ... when != x = E IS_ERR(x@p2) ... when any ) @other_match exists@ expression match.x, E1, E2; position match.p1,match.p2; @@ x = E1 ... when != x = E2 when != x@p1 x@p2 @ script:python depends on !other_match@ p1 << match.p1; p2 << match.p2; @@ print "* file %s dereference %s test %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Julia Lawall Signed-off-by: Martin Schwidefsky commit 33b1d09ef317d64c58b135c2e811bb55b3f15b19 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:27 2008 +0100 [S390] panic_stack leak in smp_alloc_lowcore Fix freeing of the panic_stack if the allocation of async_stack failed. Signed-off-by: Martin Schwidefsky commit 4f7e90d6d61fa0e56821787521c12f8a626c4037 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:26 2008 +0100 [S390] clear_table inline assembly contraints Tell the compile that the clear_table inline assembly writes to the memory referenced by *s. Signed-off-by: Martin Schwidefsky commit c185b783b0993c294ca22ad0a55e6cdf8df4f9d3 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:25 2008 +0100 [S390] Remove config options. On s390 we always want to run with precise cputime accounting. Remove the config options VIRT_TIMER and VIRT_CPU_ACCOUNTING. Signed-off-by: Martin Schwidefsky commit 349f1b671a4b2612c1355612bedadc81f86d26f1 Author: Heiko Carstens Date: Thu Dec 25 13:39:24 2008 +0100 [S390] cpu topology: remove dead code Interrupts haven't been implemented. So remove the dead code. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 2b1a61f0a8c714c96277bf16a823a84bafa1397d Author: Heiko Carstens Date: Thu Dec 25 13:39:23 2008 +0100 [S390] cpu topology: introduce kernel parameter Introduce a topology=[on|off] kernel parameter which allows to switch cpu topology on/off. Default will be off, since it looks like that for some workloards this doesn't behave very well (on s390). Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 9fee8db222a344b9ee407fad9c652ed823690788 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:22 2008 +0100 [S390] add new machine types to setup_hwcaps. Add the machine types for z9-bc, z10-ec and z10-bc to the elf_platform detection in setup_hwcaps. Signed-off-by: Martin Schwidefsky commit c58d92b233a41b81fbbea6add4ba1b512784f837 Author: Heiko Carstens Date: Thu Dec 25 13:39:21 2008 +0100 [S390] Remove initial kernel stack backchain initialization. Early init code clears the backchain of the initial kernel stack frame. This is not necessary since it is pre initialized with zeros. Plus it was broken on 64 bit since it cleared only four of eight bytes. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 64253acbf189085fb0ceb9a3fbe43b40f4a0a932 Author: Harvey Harrison Date: Thu Dec 25 13:39:20 2008 +0100 [S390] s390: use the new byteorder headers Signed-off-by: Harvey Harrison Signed-off-by: Andrew Morton Signed-off-by: Martin Schwidefsky commit e37f50e1811d68170e4d58a087cf634b2bf1cef9 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:19 2008 +0100 [S390] Add processor type march=z10 and a processor type safety check. This patch adds the code generation option for IBM System z10 and adds a check in head[31,64].S to prevents the execution of a kernel compiled for a new processor type on an old machine. Signed-off-by: Martin Schwidefsky commit b3b59d3339c907b1dec3ce19f62b2a7f120d142d Author: Heiko Carstens Date: Thu Dec 25 13:39:18 2008 +0100 [S390] sclp vt220: fix compile warning get rid of this one: CC drivers/s390/char/sclp_vt220.o drivers/s390/char/sclp_vt220.c:588: warning: '__sclp_vt220_flush_buffer' defined but not used Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 2d6cd2a5908adecd06c8cee2a73814463ed71493 Author: Martin Schwidefsky Date: Thu Dec 25 13:39:17 2008 +0100 [S390] remove warnings with functions ending in BUG Functions which end in a BUG() statement and skip the return statement cause compile warnings on s390, e.g.: mm/bootmem.c: In function 'mark_bootmem': mm/bootmem.c:321: warning: control reaches end of non-void function To avoid the warning add an endless loop to the BUG() macro. Signed-off-by: Martin Schwidefsky Signed-off-by: Martin Schwidefsky commit edd5378740fe7717b1377ee04e593cfad8d29650 Author: Heiko Carstens Date: Thu Dec 25 13:39:16 2008 +0100 [S390] mark disabled_wait as noreturn function disabled_wait() won't return, so add an __attribute__((noreturn)). This will remove a false positive finding which our internal code checker reports. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit d36f0c66389eb5e4dbd9b095eea252230ba3273e Author: Sebastian Ott Date: Thu Dec 25 13:39:15 2008 +0100 [S390] cio: use pim to check for multipath. To check if multipath is available we count the bits set in lpm, which could change over time (via configure [on|off] of a path). The following patch uses the pim (which is persistent) for this decision. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky commit f444cc0e52523560a8dfc12f5374e5d5ecf5375b Author: Sebastian Ott Date: Thu Dec 25 13:39:14 2008 +0100 [S390] cio: commit all pmcw changes. Sometimes we change the pmcw configuration but don't call msch to transmit these changes to the channel subsystem. The patch fixes this by calling cio_commit_config in such cases. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky commit 13952ec12dfeea793ff83c2a96139ed57eb0b897 Author: Sebastian Ott Date: Thu Dec 25 13:39:13 2008 +0100 [S390] cio: introduce cio_commit_config To change the configuration of a subchannel we alter the modifiable bits of the subchannel's schib field and issue a modify subchannel. There can be the case that not all changes were applied -or worse- quietly overwritten by the hardware. With the next store subchannel we obtain the current state of the hardware but lose our target configuration. With this patch we introduce a subchannel_config structure which contains the target subchannel configuration. Additionally the msch wrapper cio_modify is replaced with cio_commit_config which copies the desired changes to a temporary schib. msch is then called with the temporary schib. This schib is only written back to the subchannel if all changes were applied. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky commit cdb912a40df8b8507ab60b3d52f9980c0ba1f44d Author: Sebastian Ott Date: Thu Dec 25 13:39:12 2008 +0100 [S390] cio: introduce cio_update_schib There is the chance that we get condition code 0 for a stsch but the resulting schib is not vaild. In the current code there are 2 cases: * we do a check for validity of the schib after stsch, but at this time we have already stored the invaild schib in the subchannel structure. This may lead to problems. * we don't do a check for validity, which is not that good either. The patch addresses both issues by introducing the stsch wrapper cio_update_schib which performs stsch on a local schib. This schib is only written back to the subchannel if it's valid. side note: For some functions (chp_events) the return codes are different now (-ENXIO vs -ENODEV) but this shouldn't do harm since the caller doesn't check for _specific_ errors. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky commit d6a30761d8116b8de8a5b5e79e68cce81d36414b Author: Cornelia Huck Date: Thu Dec 25 13:39:11 2008 +0100 [S390] cio: Use device_is_registered(). Check if a ccw device is registered via device_is_registered() and not via the old kludge of checking the membership in driver core internal klists. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 283fdd0b8ab102080dbffe4bcaae245f9ceda184 Author: Cornelia Huck Date: Thu Dec 25 13:39:10 2008 +0100 [S390] cio: Dont call ->release directly. Just put the cdev's reference count to give up our reference. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 90ed2b692fa75272d7395c4e4c2de4423d52f506 Author: Cornelia Huck Date: Thu Dec 25 13:39:09 2008 +0100 [S390] cio: Dont fail probe for I/O subchannels. If we fail the probe for an I/O subchannel, we won't be able to unregister it again since there are no sch_event() callbacks for unbound subchannels. Just succeed the probe in any case and schedule unregistering the subchannel. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 5fb6b8544d9ccd2ed478af777f9e99e342eb8886 Author: Cornelia Huck Date: Thu Dec 25 13:39:08 2008 +0100 [S390] cio: Only register ccw_device for registered subchannel. There is a race between io_subchannel_register() and io_subchannel_sch_event() which may cause a subchannel to be unregistered because it is no longer operational before io_subchannel_register() had run. We need to check whether the subchannel is still registered before the ccw device can be registered and just bail out if it is not. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 6eff208f479d6fe99fd92c0e6bf7e930bb45cd30 Author: Cornelia Huck Date: Thu Dec 25 13:39:07 2008 +0100 [S390] cio: Fix I/O subchannel refcounting. Subchannel refcounting was incorrect in some places, especially a refcount was missing when ccw_device_call_sch_unregister() was called and the refcount was not correctly switched after moving devices. Fix this by establishing the following rules: - The ccw_device obtains a reference on its parent subchannel when dev.parent is set and gives it up in its release function. This is needed because we need a parent reference for correct refcounting even before the ccw device is (if at all) registered. - When calling device_move(), obtain a reference on the new subchannel before moving the ccw device and give up the reference on the old parent after moving. This brings the refcount in line with the first rule. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 9cd67421977a701272820987ff9e6f197b1b97b7 Author: Cornelia Huck Date: Thu Dec 25 13:39:06 2008 +0100 [S390] cio: Fix reference counting for online/offline. The current code attempts to get an extra reference count for online devices by doing a get_device() in ccw_device_online() and a put_device() in ccw_device_done(). However, this - incorrectly obtains an extra reference for disconnected devices becoming available again (since they are already online) - needs special checks for css_init_done in order to handle the console device - is not obvious and - may incorretly drop a reference count in ccw_device_done() if that function is called after path verification for a device that just became not operational. So let's just get the reference in ccw_device_set_online() and drop it in ccw_device_set_offline(). (Unfortunately, we still need the special case in io_subchannel_probe().) Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 97166f52fc84c0bc49c7dbba2a26720110acb458 Author: Cornelia Huck Date: Thu Dec 25 13:39:05 2008 +0100 [S390] cio: Put referernce on correct device after moving. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit c619d4223eaa063dd15ce44235b04487235f8cb7 Author: Peter Oberparleiter Date: Thu Dec 25 13:39:04 2008 +0100 [S390] cio: fix ccwgroup online vs. ungroup race condition Ensure atomicity of ungroup operation to prevent concurrent ungroup and online processing which may lead to use-after-release situations. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 111e95a4cae01d6dadbbd1d8ab28dcd10fa5619c Author: Sebastian Ott Date: Thu Dec 25 13:39:03 2008 +0100 [S390] cio: move irritating comment. Due to former patches a comment and device id initialization were split from the addressed function call in io_subchannel_probe. Move it back to where it belongs. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky commit d7b604891b7ce7de93e3758ec6b3b7b7964e1884 Author: Peter Oberparleiter Date: Thu Dec 25 13:39:02 2008 +0100 [S390] cio: update sac values Values for the sac field have changed - update code accordingly. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit 191fd44c11e10daf9d2cabd16935952e9c735949 Author: Heiko Carstens Date: Thu Dec 25 13:39:01 2008 +0100 [S390] cio: get rid of compile warning Move cio_tpi() to the rest of the CONFIG_CCW_CONSOLE functions to get rid of this one: drivers/s390/cio/cio.c:115: warning: 'cio_tpi' defined but not used Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 547e3cec4f7a4846707db19cba43aa58eb07f48f Author: Martin Schwidefsky Date: Thu Dec 25 13:39:00 2008 +0100 [S390] remove ptrace warning on 31 bit. A kernel compile on 31 bit gives the following warnings in ptrace.c: arch/s390/kernel/ptrace.c: In function 'peek_user': arch/s390/kernel/ptrace.c:207: warning: unused variable 'dummy' arch/s390/kernel/ptrace.c: In function 'poke_user': arch/s390/kernel/ptrace.c:315: warning: unused variable 'dummy' Getting rid of the dummy variables removes the warnings. Signed-off-by: Martin Schwidefsky commit 32272a26974d2027384fd4010cd1780fca425d94 Author: Martin Schwidefsky Date: Thu Dec 25 13:38:59 2008 +0100 [S390] __page_to_pfn warnings For CONFIG_SPARSEMEM_VMEMMAP=y on s390 I get warnings like init/main.c: In function 'start_kernel': init/main.c:641: warning: format '%08lx' expects type 'long unsigned int', but argument 2 has type 'int' The warning can be suppressed with a cast to unsigned long in the CONFIG_SPARSEMEM_VMEMMAP=y version of __page_to_pfn. Signed-off-by: Martin Schwidefsky commit 91d5d45ee0a8978870fd12e5c3fe394a530ec2ed Author: Hendrik Brueckner Date: Thu Dec 25 13:38:58 2008 +0100 [S390] iucv: Locking free version of iucv_message_(receive|send) Provide a locking free version of iucv_message_receive and iucv_message_send that do not call local_bh_enable in a spin_lock_(bh|irqsave)() context. Signed-off-by: Hendrik Brueckner commit 44a01d5ba8a4d543694461cd3e178cfa6b3f221b Author: Hendrik Brueckner Date: Thu Dec 25 13:38:57 2008 +0100 [S390] s390/hvc_console: z/VM IUCV hypervisor console support This patch introduces a new hypervisor console (HVC) back-end that provides terminal access over the z/VM inter-user communication vehicle (IUCV). The z/VM IUCV communication is independent of the regular tcp/ip network and allows access even if there is no network connection between two z/VM guest virtual machines. The z/VM IUCV hypervisor console back-end helps the user to access a z/VM guest virtual machine that lacks of network connectivity; and thus, provides a "full-screen" terminal alternative to 3215/3270 terminal sessions. Use the hvc_iucv=[0..8] kernel boot parameter to specify the number of HVC terminals using a z/VM IUCV back-end. A recent version of the s390-tools package is required to establish a terminal connection to a z/VM IUCV hypervisor console back-end. Signed-off-by: Hendrik Brueckner Signed-off-by: Martin Schwidefsky commit 5d360a75f87f288e9a25d56cca503a7c7939e490 Author: Heiko Carstens Date: Thu Dec 25 13:38:56 2008 +0100 [S390] ftrace: function tracer backend for s390 This implements just the basic function tracer (_mcount) backend for s390. The dynamic variant will come later. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 98df67b324a2a986987ce29986e44ae9156b6698 Author: Kay Sievers Date: Thu Dec 25 13:38:55 2008 +0100 [S390] struct device - replace bus_id with dev_name(), dev_set_name() Acked-by: Cornelia Huck Acked-by: Greg Kroah-Hartman Signed-off-by: Kay Sievers Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 0cd4bd4754d51bdc8f9cd880c29910d0d52337bb Author: Stefan Haberland Date: Thu Dec 25 13:38:54 2008 +0100 [S390] dasd: call cleanup_cqr with request_queue_lock __dasd_cleanup_cqr should be called with request_queue_lock held and __dasd_block_process_erp with queue_lock Signed-off-by: Stefan Haberland Signed-off-by: Martin Schwidefsky commit 50afd20f8c3ce23994a21c389e7250e54a93bf55 Author: Stefan Haberland Date: Thu Dec 25 13:38:53 2008 +0100 [S390] dasd: correct sense byte condition for SIM SIM sense data are always 32 bit sense data so sense byte 27 bit 0 has not to be set. Signed-off-by: Stefan Haberland Signed-off-by: Martin Schwidefsky commit faf16aa9b368d48a0efbd0920718d68ec7a72542 Author: Cornelia Huck Date: Thu Dec 25 13:38:52 2008 +0100 [S390] dasd: Use accessors instead of using driver_data directly. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 2bf373b3e3691d5cb57089a3897316a1b7d5ffa7 Author: Stefan Haberland Date: Thu Dec 25 13:38:51 2008 +0100 [S390] dasd: improve dasd statistics proc interface For a large number of I/O requests the values were shifted binary. The shift was not transparent for the user because the shift value was not displayed. To make this interface more human readable the values are shifted decimal and the scale factor is displayed. Signed-off-by: Stefan Haberland Signed-off-by: Martin Schwidefsky commit bd43a42b7e9880f426ed715f18bb4f963b7352af Author: Christof Schmitt Date: Thu Dec 25 13:38:50 2008 +0100 [S390] zfcp: Report microcode level through service level interface Register zfcp with the new /proc/service_level interface to report the FCP microcode level. When the adapter goes offline or a channel path disappears, zfcp unregisters, since the microcode version might change and zfcp does not know about it. Signed-off-by: Christof Schmitt Signed-off-by: Martin Schwidefsky commit 6bcac508fbebdca52f5a55d69a4316997ecb5391 Author: Martin Schwidefsky Date: Thu Dec 25 13:38:49 2008 +0100 [S390] service level interface. Add a new proc interface /proc/service_levels that allows any code to report a relevant service level, e.g. the microcode level of devices, the service level of the hypervisor, etc. Signed-off-by: Martin Schwidefsky commit 7a0b4cbc7d7d99763511b488b08bbc2607ddd1e3 Author: Jan Glauber Date: Thu Dec 25 13:38:48 2008 +0100 [S390] qdio: fix error reporting for hipersockets Hipersocket connections can encounter temporary busy conditions. In case of the busy bit set we retry the SIGA operation immediatelly. If the busy condition still persists after 100 ms we fail and report the error to the upper layer. The second stage retry logic is removed. In case of ongoing busy conditions the upper layer needs to reset the connection. The reporting of a SIGA error is now done synchronously to allow the network driver to requeue the buffers. Also no error trace is created for the temporary SIGA errors so the error message view is not flooded. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 50f769df1c4bea766c4eb927eae35728fb93e305 Author: Jan Glauber Date: Thu Dec 25 13:38:47 2008 +0100 [S390] qdio: improve inbound buffer acknowledgement - Use automatic acknowledgement of incoming buffers in QEBSM mode - Move ACK for non-QEBSM mode always to the newest buffer to prevent a race with qdio_stop_polling - Remove the polling spinlock, the upper layer drivers return new buffers in the same code path and could not run in parallel - Don't flood the error log in case of no-target-buffer-empty - In handle_inbound we check if we would overwrite an ACK'ed buffer, if so advance the pointer to the oldest ACK'ed buffer so we don't overwrite an empty buffer in qdio_stop_polling Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 22f9934767f49012ffbae753b28b8055bd28348f Author: Jan Glauber Date: Thu Dec 25 13:38:46 2008 +0100 [S390] qdio: rework debug feature logging - make qdio_trace a per device view - remove s390dbf exceptions - remove CONFIG_QDIO_DEBUG, not needed anymore if we check for the level before calling sprintf - use snprintf for dbf entries - add start markers to see if the dbf view wrapped - add a global error view for all queues Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 9a1ce28aeb7a8b1666eaa9f104c1a2f5a149f9df Author: Jan Glauber Date: Thu Dec 25 13:38:45 2008 +0100 [S390] qdio: fix compile warning under 31 bit The QEBSM instructions are only available for CONFIG_64BIT, they are not used under 31 bit. Make compiler happy about the false positive: drivers/s390/cio/qdio_main.c: In function ?qdio_inbound_q_done?: drivers/s390/cio/qdio_main.c:532: warning: ?state? may be used uninitialized in this function Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 23589d057ac2da81e456d4a9dcdd9135fd96f493 Author: Jan Glauber Date: Thu Dec 25 13:38:44 2008 +0100 [S390] qdio: add eqbs/sqbs instruction counters Add counters for the eqbs and sqbs instructions that indicate how often we issued the instructions and how often the instructions returned with less buffers than specified. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit bbd50e172f75b1d12ef9b1bcf593b51a44199016 Author: Jan Glauber Date: Thu Dec 25 13:38:43 2008 +0100 [S390] qdio: fix qeth port count detection qeth needs to get the port count information before qdio has allocated a page for the chsc operation. Extend qdio_get_ssqd_desc() to store the data in the specified structure. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 43c207e6e5b7e591b59294ee4fc9860b0e3de3b8 Author: Christian Maaser Date: Thu Dec 25 13:38:42 2008 +0100 [S390] ap: Minor code beautification. Changed some symbol names for a better and clearer code. Signed-off-by: Christian Maaser Signed-off-by: Felix Beck Signed-off-by: Martin Schwidefsky commit cb17a6364a29b4dfe5bbb00696032fb63d780157 Author: Felix Beck Date: Thu Dec 25 13:38:41 2008 +0100 [S390] zcrypt: Use of Thin Interrupts When the machine supports AP adapter interrupts polling will be switched off at module initialization and the driver will work in interrupt mode. Signed-off-by: Felix Beck Signed-off-by: Martin Schwidefsky commit 320c04c068c62b71fe9ea55e06e4968b4edc9e48 Author: Heiko Carstens Date: Thu Dec 25 13:38:40 2008 +0100 [S390] Move stfle to header file. stfle will be needed by the ap_bus module to figure out wether the AP queue adapter interruption facility is installed. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit ca9fc75a68ee98812bb6d212405fea039421910b Author: Heiko Carstens Date: Thu Dec 25 13:38:39 2008 +0100 [S390] convert s390 to generic IPI infrastructure Since etr/stp don't need the old smp_call_function semantics anymore we can convert s390 to the generic IPI infrastructure. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 0b3016b781abeabc502042c942cbc611e31250c7 Author: Martin Schwidefsky Date: Thu Dec 25 13:38:38 2008 +0100 [S390] serialize stp/etr work The work function dispatched with schedule_work() can be run twice on different cpus because run_workqueue clears the WORK_STRUCT_PENDING bit and then executes the function. Another cpu can call schedule_work() again and run the work function a second time before the first call is completed. This patch serialized the etr and stp work function with a mutex. Signed-off-by: Martin Schwidefsky commit 750887dedc088d28198b170bcae83695247797d1 Author: Heiko Carstens Date: Thu Dec 25 13:38:37 2008 +0100 [S390] convert etr/stp to stop_machine interface This converts the etr and stp code to the new stop_machine interface which allows to synchronize all cpus without allocating any memory. This way we get rid of the only reason why we haven't converted s390 to the generic IPI interface yet. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit b020632e40c3ed5e8c0c066d022672907e8401cf Author: Martin Schwidefsky Date: Thu Dec 25 13:38:36 2008 +0100 [S390] introduce vdso on s390 Add a vdso to speed up gettimeofday and clock_getres/clock_gettime for CLOCK_REALTIME/CLOCK_MONOTONIC. Signed-off-by: Martin Schwidefsky commit fc5243d98ac2575ad14a974b3c097e9ba874c03d Author: Martin Schwidefsky Date: Thu Dec 25 13:38:35 2008 +0100 [S390] arch_setup_additional_pages arguments arch_setup_additional_pages currently gets two arguments, the binary format descripton and an indication if the process uses an executable stack or not. The second argument is not used by anybody, it could be removed without replacement. What actually does make sense is to pass an indication if the process uses the elf interpreter or not. The glibc code will not use anything from the vdso if the process does not use the dynamic linker, so for statically linked binaries the architecture backend can choose not to map the vdso. Acked-by: Ingo Molnar Signed-off-by: Martin Schwidefsky commit a114a9d69d1362546b9dda651028acb311ddb7af Author: Christian Borntraeger Date: Thu Dec 25 13:38:34 2008 +0100 [S390] vmcp: remove BKL The vmcp driver uses the session->mutex for concurrent access of the data structures. Therefore, the BKL in vmcp_open does not protect against any other function in the driver. The BLK in vmcp_open would protect concurrent access to the module init but all necessary steps ave finished before misc_register is called. We can safely remove the lock_kernel from vcmp. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit f414f5f15376764d68a31dc568d9e814d3fcb58a Author: Heiko Carstens Date: Thu Dec 25 13:37:59 2008 +0100 [S390] cpu topology: dont destroy cpu sets on topology change Call rebuild_sched_domains instead of arch_reinit_sched_domains if cpu topology changes. This leaves cpu sets alone which otherwise would be destroyed. If and how it makes sense to define cpu sets on a virtualized architecture is another question. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 8f2961c39eacd5d450048d8a3e91675486f3a015 Author: Al Viro Date: Thu Dec 25 13:37:58 2008 +0100 [S390] audit: get s390 ret_from_fork in sync with other architectures On s390 we have ret_from_fork jump not to the "do all work we normally do on return from syscall" as on x86, ppc, etc., but to the "do all such work except audit". Historical reasons - the codepath triggered when we have AUDIT process flag set is separated from the normall one and they converge at sysc_return, which is the common part of post-syscall work. And does not include calling audit_syscall_exit() - that's done in the end of sysc_tracesys path, just before that path jumps to sysc_return. IOW, the child returning from fork()/clone()/vfork() doesn't call audit_syscall_exit() at all, so no matter what we do with its audit context, we are not going to see the audit entry. The fix is simple: have ret_from_fork go to the point just past the call of sys_.... in the 'we have AUDIT flag set' path. There we have (64bit variant; for 31bit the situation is the same): sysc_tracenogo: tm __TI_flags+7(%r9),(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT) jz sysc_return la %r2,SP_PTREGS(%r15) # load pt_regs larl %r14,sysc_return # return point is sysc_return jg do_syscall_trace_exit which is precisely what we need - check the flag, bugger off to sysc_return if not set, otherwise call do_syscall_trace_exit() and bugger off to sysc_return. r9 has just been properly set by ret_from_fork itself, so we are fine. Tested on s390x, seems to work fine. WARNING: it's been about 16 years since my last contact with 3X0 assembler[1], so additional review would be very welcome. I don't think I've managed to screw it up, but... [1] that *was* in another country and besides, the box is dead... Signed-off-by: Al Viro Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 5439050f9f1aa92381ab9beccbea6ddf0c687c2b Author: Heiko Carstens Date: Thu Dec 25 13:37:57 2008 +0100 [S390] cpu topology: fix cpu_core_map initialization Common code doesn't call arch_update_cpu_topology() anymore on cpu hotplug. But our architecture backend relied on that in order to update the cpu_core_map. For machines without cpu topology support this leads uninitialized cpu_core_maps for later on added cpus. To solve this just initialize the maps with cpu_possible_map, since that will be always valid for machines without topology support. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 5250d329e38cdf7580faeb9c53c17d3588d7d19c Merge: a3eeeef... 468a15b... 67be403... 98db8df... 4a6908a... Author: Ingo Molnar Date: Thu Dec 25 13:11:00 2008 +0100 Merge branches 'tracing/ftrace', 'tracing/hw-branch-tracing' and 'tracing/ring-buffer'; commit 'v2.6.28' into tracing/core commit 468a15bb4cc61694495cc5ed7ffca29e87c79b69 Author: Peter Zijlstra Date: Tue Dec 16 08:07:03 2008 +0100 sched, trace: update trace_sched_wakeup() Impact: extend the wakeup tracepoint with the info whether the wakeup was real Add the information needed to distinguish 'real' wakeups from 'false' wakeups. Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit a3eeeefbf1cd1d142c52238cc19c75d14c3bc8d5 Merge: 30cd324... 7e3cbc3... Author: Ingo Molnar Date: Thu Dec 25 12:48:18 2008 +0100 Merge branch 'x86/tsc' into tracing/core Merge it to resolve this incidental conflict between the BTS fixes/cleanups and changes in x86/tsc: Conflicts: arch/x86/kernel/cpu/intel.c commit 79a66b96c339626a3e4b226fefc0e45244cfe6ff Merge: bed4f13... c1c15b6... 1fcccb0... 4a6908a... Author: Ingo Molnar Date: Thu Dec 25 11:50:41 2008 +0100 Merge branches 'x86/pat2' and 'x86/fpu'; commit 'v2.6.28' into x86/core commit 1fcccb008be12ea823aaa392758e1e41fb82de9a Author: Jaswinder Singh Date: Tue Dec 23 21:50:11 2008 +0530 x86: traps.c replace #if CONFIG_X86_32 with #ifdef CONFIG_X86_32 Impact: cleanup, avoid warning on X86_64 Fixes this warning on X86_64: CC arch/x86/kernel/traps.o arch/x86/kernel/traps.c:695:5: warning: "CONFIG_X86_32" is not defined Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit 5ce442fe2c9423ec5451222aee6f9b2127bb8311 Merge: 60cda2b... 2af7529... Author: Takashi Iwai Date: Thu Dec 25 11:40:34 2008 +0100 Merge branch 'topic/udev-id-rename' into to-push commit 60cda2b53a7826d273198f668cd124f0eeda0e4a Merge: 9649745... 3d1ee37... Author: Takashi Iwai Date: Thu Dec 25 11:40:33 2008 +0100 Merge branch 'topic/sound-core-fix' into to-push commit 9649745c8670eacc671e9cff72c5c1e346e13036 Merge: a9c3c7e... 5e03c54... Author: Takashi Iwai Date: Thu Dec 25 11:40:32 2008 +0100 Merge branch 'topic/snd-hrtimer' into to-push commit a9c3c7e04b9a744eafb2e87c770e7300bbffa375 Merge: cc49108... ade9b2f... Author: Takashi Iwai Date: Thu Dec 25 11:40:31 2008 +0100 Merge branch 'topic/pcxhr-update' into to-push commit cc4910850f93a8bb1cbafad038fd40f6da68c783 Merge: a802269... de04b10... Author: Takashi Iwai Date: Thu Dec 25 11:40:30 2008 +0100 Merge branch 'topic/oxygen' into to-push commit a8022697811c3f2271df5ec14fa6f518b731b46a Merge: a650562... cdc6936... Author: Takashi Iwai Date: Thu Dec 25 11:40:29 2008 +0100 Merge branch 'topic/jack-mechanical' into to-push commit a65056205cdf7efb96fb2558e4f1ec6bae2582ed Merge: 313769d... 7645c4b... Author: Takashi Iwai Date: Thu Dec 25 11:40:28 2008 +0100 Merge branch 'topic/hda' into to-push commit 313769d9edb1bbd59d2e94f5069950eecfe6fa44 Merge: 8afabfa... f144b7f... Author: Takashi Iwai Date: Thu Dec 25 11:40:28 2008 +0100 Merge branch 'topic/cs5535audio' into to-push commit 8afabfa74bbe81ac496e66f7f0ed8943dff5fdb5 Merge: 86b3aa3... 1f04128... Author: Takashi Iwai Date: Thu Dec 25 11:40:27 2008 +0100 Merge branch 'topic/convert-tasklet' into to-push commit 86b3aa390b4b9925f16a21b98441fd7abdb9fff2 Merge: e4456e7... ebef7cf... Author: Takashi Iwai Date: Thu Dec 25 11:40:26 2008 +0100 Merge branch 'topic/ca0106' into to-push commit e4456e71618ec2c98084c15824d93e997955b60c Merge: 5c8261e... 16950e0... Author: Takashi Iwai Date: Thu Dec 25 11:40:26 2008 +0100 Merge branch 'topic/audigy-capture-boost' into to-push commit 5c8261e44eaebbc91f9fc1bbd3f3167e91a50a57 Merge: facef86... 472346d... Author: Takashi Iwai Date: Thu Dec 25 11:40:25 2008 +0100 Merge branch 'topic/asoc' into to-push commit facef8685b3ff95c01c33d9d836401d0dd26211d Merge: 4a6908a... 888dcb7... Author: Takashi Iwai Date: Thu Dec 25 11:40:24 2008 +0100 Merge branch 'topic/aoa' into to-push commit 0ca59dd948a51c95d5a366d35f897bc5ef9df55d Author: Frederic Weisbecker Date: Wed Dec 24 23:30:02 2008 +0100 tracing/ftrace: don't trace on early stage of a secondary cpu boot, v3 Impact: fix a crash/hard-reboot on certain configs while enabling cpu runtime On some archs, the boot of a secondary cpu can have an early fragile state. On x86-64, the pda is not initialized on the first stage of a cpu boot but it is needed to get the cpu number and the current task pointer. This data is needed during tracing. As they were dereferenced at this stage, we got a crash while tracing a cpu being enabled at runtime. Some other archs like ia64 can have such kind of issue too. Changes on v2: We dropped the previous solution of a per-arch called function to guess the current state of a cpu. That could slow down the tracing. This patch removes the -pg flag on arch/x86/kernel/cpu/common.c where the low level cpu boot functions exist, on start_secondary() and a helper function used at this stage. Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 2a0d8366dde9c66d8f481bee56828b661e5c8bf1 Merge: 1f5175a... 139cdab... 3d08909... bba7ebb... 7798dbf... e189062... Author: Roland Dreier Date: Wed Dec 24 20:35:42 2008 -0800 Merge branches 'cma', 'ehca', 'ipath', 'iser', 'mlx4' and 'nes' into for-next commit 7798dbf40ad9d295aa3a02eca700168e4327239a Author: Jack Morgenstein Date: Wed Dec 24 20:32:42 2008 -0800 IB/mlx4: Set ownership bit correctly when copying CQEs during CQ resize When resizing a CQ, when copying over unpolled CQEs from the old CQE buffer to the new buffer, the ownership bit must be set appropriately for the new buffer, or the ownership bit in the new buffer gets corrupted. Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit e189062a8ca55b0a1843f0346c3fae1a47297c34 Author: Faisal Latif Date: Wed Dec 24 20:30:04 2008 -0800 RDMA/nes: Remove tx_free_list There is no lock protecting tx_free_list thus causing a system crash when skb_dequeue() is called and the list is empty. Since it did not give any performance boost under heavy load, remove it to simplify the code. Replace get_free_pkt() with dev_alloc_skb() to allocate MAX_CM_BUFFER skb for connection establishment/teardown as well as MPA request/response. Signed-off-by: Faisal Latif Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 81ea714bf148fce35e931edcbdfd3aedda20d1dc Author: Sergio Luis Date: Mon Dec 22 01:16:15 2008 -0300 smackfs: check for allocation failures in smk_set_access() smackfs: check for allocation failures in smk_set_access() While adding a new subject/object pair to smack_list, smk_set_access() didn't check the return of kzalloc(). This patch changes smk_set_access() to return 0 or -ENOMEM, based on kzalloc()'s return. It also updates its caller, smk_write_load(), to check for smk_set_access()'s return, given it is no longer a void return function. Signed-off-by: Sergio Luis To: Casey Schaufler Cc: Ahmed S. Darwish Cc: LSM Cc: LKLM Acked-by: Casey Schaufler commit cbacc2c7f066a1e01b33b0e27ae5efbf534bc2db Merge: 4a6908a... 7419224... Author: James Morris Date: Thu Dec 25 11:40:09 2008 +1100 Merge branch 'next' into for-linus commit 0ee4a96902dd7858e65f378c86f428a0355bd841 Author: Herbert Xu Date: Thu Dec 25 11:05:13 2008 +1100 crypto: aes - Precompute tables The tables used by the various AES algorithms are currently computed at run-time. This has created an init ordering problem because some AES algorithms may be registered before the tables have been initialised. This patch gets around this whole thing by precomputing the tables. Signed-off-by: Herbert Xu commit ca38a814c6f86db0aa58884a31093d4f096e20aa Author: Lee Nipper Date: Sat Dec 20 17:09:25 2008 +1100 crypto: talitos - Ack done interrupt in isr instead of tasklet Previous commit for interrupt mitigation moved the done interrupt acknowlegement from the isr to the talitos_done tasklet. This patch moves the done interrupt acknowledgement back into the isr so that done interrupts will always be acknowledged. This covers the case for acknowledging interrupts for channel done processing that has actually already been completed by the tasklet prior to fielding a pending interrupt. Signed-off-by: Lee Nipper Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit bcf84a38f05c55180bc1225901950c7e715c0d55 Author: Geert Uytterhoeven Date: Thu Dec 18 17:17:46 2008 +1100 crypto: testmgr - Correct comment about deflate parameters The comment for the deflate test vectors says the winbits parameter is 11, while the deflate module actually uses -11 (a negative window bits parameter enables the raw deflate format instead of the zlib format). Correct this, to avoid confusion about the format used. Signed-off-by: Geert Uytterhoeven Signed-off-by: Herbert Xu commit f0d1ec3a227e01a27ce20719bf7b58de86d44f0f Author: Harvey Harrison Date: Wed Dec 17 16:53:49 2008 +1100 crypto: salsa20 - Remove private wrappers around various operations ROTATE -> rol32 XOR was always used with the same destination, use ^= PLUS/PLUSONE use ++ or += Signed-off-by: Harvey Harrison Signed-off-by: Herbert Xu commit ad79cdd77fc1466e45cf923890f66bcfe7c43f12 Author: Jarod Wilson Date: Wed Dec 17 16:51:13 2008 +1100 crypto: des3_ede - permit weak keys unless REQ_WEAK_KEY set While its a slightly insane to bypass the key1 == key2 || key2 == key3 check in triple-des, since it reduces it to the same strength as des, some folks do need to do this from time to time for backwards compatibility with des. My own case is FIPS CAVS test vectors. Many triple-des test vectors use a single key, replicated 3x. In order to get the expected results, des3_ede_setkey() needs to only reject weak keys if the CRYPTO_TFM_REQ_WEAK_KEY flag is set. Also sets a more appropriate RES flag when a weak key is found. Signed-off-by: Jarod Wilson Signed-off-by: Herbert Xu commit bd9d20dba182ce4541b16b083eccd30fb252b9f4 Author: Adrian-Ken Rueegsegger Date: Wed Dec 17 16:49:02 2008 +1100 crypto: sha512 - Switch to shash This patch changes sha512 and sha384 to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit f9e2bca6c22d75a289a349f869701214d63b5060 Author: Adrian-Ken Rueegsegger Date: Wed Dec 17 16:47:52 2008 +1100 crypto: sha512 - Move message schedule W[80] to static percpu area The message schedule W (u64[80]) is too big for the stack. In order for this algorithm to be used with shash it is moved to a static percpu area. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 19e2bf146759aea38fd6c2daea08cb7a6367149b Author: Adrian-Ken Rueegsegger Date: Sun Dec 7 19:35:38 2008 +0800 crypto: michael_mic - Switch to shash This patch changes michael_mic to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 4946510baac6aaa8658528e3deefc7e9ba2951a9 Author: Adrian-Ken Rueegsegger Date: Sun Dec 7 19:34:37 2008 +0800 crypto: wp512 - Switch to shash This patch changes wp512, wp384 and wp256 to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit f63fbd3d501b4283e1551e195cb74434a838064f Author: Adrian-Ken Rueegsegger Date: Wed Dec 3 19:58:32 2008 +0800 crypto: tgr192 - Switch to shash This patch changes tgr192, tgr160 and tgr128 to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 50e109b5b9c1f734e91a6e9b557bce48c9a88654 Author: Adrian-Ken Rueegsegger Date: Wed Dec 3 19:57:49 2008 +0800 crypto: sha256 - Switch to shash This patch changes sha256 and sha224 to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 14b75ba70da925a9f040a7575cb46ad7d394b117 Author: Adrian-Ken Rueegsegger Date: Wed Dec 3 19:57:12 2008 +0800 crypto: md5 - Switch to shash This patch changes md5 to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 808a1763cef93bf0f740d7e10dd9a2dfc4065b1a Author: Adrian-Ken Rueegsegger Date: Wed Dec 3 19:55:27 2008 +0800 crypto: md4 - Switch to shash This patch changes md4 to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 54ccb36776eb7e03b592bfab60393c7800851a0b Author: Adrian-Ken Rueegsegger Date: Tue Dec 2 21:08:20 2008 +0800 crypto: sha1 - Switch to shash This patch changes sha1 to the new shash interface. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 3b8efb4c4147094652570d7791a516d07b7df8c2 Author: Herbert Xu Date: Sat Nov 8 10:11:09 2008 +0800 crypto: rmd320 - Switch to shash This patch changes rmd320 to the new shash interface. Signed-off-by: Herbert Xu commit d8a5e2e9f4e70ade136c67ce8242f0db4c2cddc7 Author: Herbert Xu Date: Sat Nov 8 09:58:10 2008 +0800 crypto: rmd256 - Switch to shash This patch changes rmd256 to the new shash interface. Signed-off-by: Herbert Xu commit e5835fba0206a331bdefdf5d805d1a384af37c44 Author: Herbert Xu Date: Sat Nov 8 09:18:51 2008 +0800 crypto: rmd160 - Switch to shash This patch changes rmd160 to the new shash interface. Signed-off-by: Herbert Xu commit 7c4468bc011131e77d0a872d6d9942390f8217ea Author: Herbert Xu Date: Sat Nov 8 09:10:40 2008 +0800 crypto: rmd128 - Switch to shash This patch changes rmd128 to the new shash interface. Signed-off-by: Herbert Xu commit d35d2454ce2175be77d2a366c2648597fd33a98f Author: Herbert Xu Date: Sat Nov 8 08:09:56 2008 +0800 crypto: null - Switch to shash This patch changes digest_null to the new shash interface. Signed-off-by: Herbert Xu commit 3751f402e099893c34089ed303dca6f5f92dbfd1 Author: Herbert Xu Date: Sat Nov 8 08:56:57 2008 +0800 crypto: hash - Make setkey optional Since most cryptographic hash algorithms have no keys, this patch makes the setkey function optional for ahash and shash. Signed-off-by: Herbert Xu commit b812eb0076235743872b5c9d18714d2324cc668d Author: Geert Uytterhoeven Date: Fri Nov 28 20:51:28 2008 +0800 crypto: testmgr - Validate output length in (de)compression tests When self-testing (de)compression algorithms, make sure the actual size of the (de)compressed output data matches the expected output size. Otherwise, in case the actual output size would be smaller than the expected output size, the subsequent buffer compare test would still succeed, and no error would be reported. Signed-off-by: Geert Uytterhoeven Signed-off-by: Herbert Xu commit dad3df2044b78ba68a92bf78e38a408bab80ff61 Author: Harvey Harrison Date: Fri Nov 28 20:49:19 2008 +0800 crypto: remove uses of __constant_{endian} helpers Base versions handle constant folding just fine. Signed-off-by: Harvey Harrison Signed-off-by: Herbert Xu commit 664134d2916109be76648977705a2bea3ff76427 Author: Ingo Molnar Date: Tue Nov 25 23:19:24 2008 +0800 crypto: testmgr - Fix error flow of test_comp This warning: crypto/testmgr.c: In function ‘test_comp’: crypto/testmgr.c:829: warning: ‘ret’ may be used uninitialized in this function triggers because GCC correctly notices that in the ctcount == 0 && dtcount != 0 input condition case this function can return an undefined value, if the second loop fails. Remove the shadowed 'ret' variable from the second loop that was probably unintended. Signed-off-by: Ingo Molnar Signed-off-by: Herbert Xu commit 5f459f0adc7581da01cdd9b7f84db14a4559a390 Author: Evgeniy Polyakov Date: Tue Nov 25 23:17:10 2008 +0800 crypto: hifn_795x - Use softirq kernel mapping in bh context Use KM_SOFTIRQ instead of KM_IRQ in tasklet context. Added bug_on on input no-page condition. Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit d6a10c84a2a2b08bdd637852c9cc42c41e109b25 Author: Evgeniy Polyakov Date: Mon Nov 24 22:04:39 2008 +0800 crypto: hifn_795x - Fix queue management Fix queue management. Change ring size and perform its check not one after another descriptor, but using stored pointers to the last checked descriptors. Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit 3ec858de6468e810953e41b8c154a0d605b25d68 Author: Patrick McHardy Date: Mon Nov 24 22:03:37 2008 +0800 crypto: hifn_795x - Remove some unused cruft Signed-off-by: Patrick McHardy Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit ed4f92e3723a7d73bcd179ba09529094752063b2 Author: Patrick McHardy Date: Mon Nov 24 22:02:55 2008 +0800 crypto: hifn_795x - Fix queue processing Signed-off-by: Patrick McHardy Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit 5df4c0c671bbb425e4a77dde5f51869aeebebd67 Author: Patrick McHardy Date: Mon Nov 24 22:01:42 2008 +0800 crypto: hifn_795x - Fix request context corruption HIFN uses the transform context to store per-request data, which breaks when more than one request is outstanding. Move per request members from struct hifn_context to a new struct hifn_request_context and convert the code to use this. Signed-off-by: Patrick McHardy Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit 3416158680d5ba6fdb939e5bb52a8eba1ad5c027 Author: Patrick McHardy Date: Mon Nov 24 22:00:49 2008 +0800 crypto: hifn_795x - Don't copy src sg list Signed-off-by: Patrick McHardy Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit 75741a034024f146ba5431602f3ad33a5df8363c Author: Patrick McHardy Date: Mon Nov 24 21:59:25 2008 +0800 crypto: hifn_795x - Fix DMA setup Signed-off-by: Patrick McHardy Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit 09fbf7c0f24176ef3b450c590f220ed8033dd2c3 Author: Jarod Wilson Date: Mon Nov 24 21:20:13 2008 +0800 crypto: ansi_cprng - fix inverted DT increment routine The ANSI X9.31 PRNG docs aren't particularly clear on how to increment DT, but empirical testing shows we're incrementing from the wrong end. A 10,000 iteration Monte Carlo RNG test currently winds up not getting the expected result. From http://csrc.nist.gov/groups/STM/cavp/documents/rng/RNGVS.pdf : # CAVS 4.3 # ANSI931 MCT [X9.31] [AES 128-Key] COUNT = 0 Key = 9f5b51200bf334b5d82be8c37255c848 DT = 6376bbe52902ba3b67c925fa701f11ac V = 572c8e76872647977e74fbddc49501d1 R = 48e9bd0d06ee18fbe45790d5c3fc9b73 Currently, we get 0dd08496c4f7178bfa70a2161a79459a after 10000 loops. Inverting the DT increment routine results in us obtaining the expected result of 48e9bd0d06ee18fbe45790d5c3fc9b73. Verified on both x86_64 and ppc64. Signed-off-by: Jarod Wilson Acked-by: Neil Horman Signed-off-by: Herbert Xu commit 93027354d6e8a66a12dedb89d59b21cf7c2d35ed Author: Herbert Xu Date: Thu Nov 13 22:05:13 2008 +0800 libcrc32c: Select CRYPTO in Kconfig Selecting CRYPTO_CRC32C is not enough as CRYPTO which CRYPTO_CRC32C depends on may be disabled. This patch adds the select on CRYPTO. Signed-off-by: Herbert Xu commit aa1a85dbd1d3265ca36f684026fe7689b7836bed Author: Jarod Wilson Date: Thu Nov 13 22:03:20 2008 +0800 crypto: ansi_cprng - Avoid incorrect extra call to _get_more_prng_bytes While working with some FIPS RNGVS test vectors yesterday, I discovered a little bug in the way the ansi_cprng code works right now. For example, the following test vector (complete with expected result) from http://csrc.nist.gov/groups/STM/cavp/documents/rng/RNGVS.pdf ... Key = f3b1666d13607242ed061cabb8d46202 DT = e6b3be782a23fa62d71d4afbb0e922fc V = f0000000000000000000000000000000 R = 88dda456302423e5f69da57e7b95c73a ...when run through ansi_cprng, yields an incorrect R value of e2afe0d794120103d6e86a2b503bdfaa. If I load up ansi_cprng w/dbg=1 though, it was fairly obvious what was going wrong: ----8<---- getting 16 random bytes for context ffff810033fb2b10 Calling _get_more_prng_bytes for context ffff810033fb2b10 Input DT: 00000000: e6 b3 be 78 2a 23 fa 62 d7 1d 4a fb b0 e9 22 fc Input I: 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Input V: 00000000: f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tmp stage 0: 00000000: e6 b3 be 78 2a 23 fa 62 d7 1d 4a fb b0 e9 22 fc tmp stage 1: 00000000: f4 8e cb 25 94 3e 8c 31 d6 14 cd 8a 23 f1 3f 84 tmp stage 2: 00000000: 8c 53 6f 73 a4 1a af d4 20 89 68 f4 58 64 f8 be Returning new block for context ffff810033fb2b10 Output DT: 00000000: e7 b3 be 78 2a 23 fa 62 d7 1d 4a fb b0 e9 22 fc Output I: 00000000: 04 8e cb 25 94 3e 8c 31 d6 14 cd 8a 23 f1 3f 84 Output V: 00000000: 48 89 3b 71 bc e4 00 b6 5e 21 ba 37 8a 0a d5 70 New Random Data: 00000000: 88 dd a4 56 30 24 23 e5 f6 9d a5 7e 7b 95 c7 3a Calling _get_more_prng_bytes for context ffff810033fb2b10 Input DT: 00000000: e7 b3 be 78 2a 23 fa 62 d7 1d 4a fb b0 e9 22 fc Input I: 00000000: 04 8e cb 25 94 3e 8c 31 d6 14 cd 8a 23 f1 3f 84 Input V: 00000000: 48 89 3b 71 bc e4 00 b6 5e 21 ba 37 8a 0a d5 70 tmp stage 0: 00000000: e7 b3 be 78 2a 23 fa 62 d7 1d 4a fb b0 e9 22 fc tmp stage 1: 00000000: 80 6b 3a 8c 23 ae 8f 53 be 71 4c 16 fc 13 b2 ea tmp stage 2: 00000000: 2a 4d e1 2a 0b 58 8e e6 36 b8 9c 0a 26 22 b8 30 Returning new block for context ffff810033fb2b10 Output DT: 00000000: e8 b3 be 78 2a 23 fa 62 d7 1d 4a fb b0 e9 22 fc Output I: 00000000: c8 e2 01 fd 9f 4a 8f e5 e0 50 f6 21 76 19 67 9a Output V: 00000000: ba 98 e3 75 c0 1b 81 8d 03 d6 f8 e2 0c c6 54 4b New Random Data: 00000000: e2 af e0 d7 94 12 01 03 d6 e8 6a 2b 50 3b df aa returning 16 from get_prng_bytes in context ffff810033fb2b10 ----8<---- The expected result is there, in the first "New Random Data", but we're incorrectly making a second call to _get_more_prng_bytes, due to some checks that are slightly off, which resulted in our original bytes never being returned anywhere. One approach to fixing this would be to alter some byte_count checks in get_prng_bytes, but it would mean the last DEFAULT_BLK_SZ bytes would be copied a byte at a time, rather than in a single memcpy, so a slightly more involved, equally functional, and ultimately more efficient way of fixing this was suggested to me by Neil, which I'm submitting here. All of the RNGVS ANSI X9.31 AES128 VST test vectors I've passed through ansi_cprng are now returning the expected results with this change. Signed-off-by: Jarod Wilson Acked-by: Neil Horman Signed-off-by: Herbert Xu commit 31a61bfc6e415fbd871317cbee7b8a4158d8ac5b Author: Julia Lawall Date: Thu Nov 13 21:19:04 2008 +0800 crypto: md4 - Use ARRAY_SIZE ARRAY_SIZE is more concise to use when the size of an array is divided by the size of its type or the size of its first element. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @i@ @@ #include @depends on i using "paren.iso"@ type T; T[] E; @@ - (sizeof(E)/sizeof(T)) + ARRAY_SIZE(E) // Signed-off-by: Julia Lawall Signed-off-by: Herbert Xu commit 0426c166424ea6d3d0412f47879c8ba268f874c4 Author: Herbert Xu Date: Tue Nov 11 12:20:06 2008 +0800 libcrc32c: Add crc32c_le macro The bnx2x driver actually uses the crc32c_le name so this patch restores the crc32c_le symbol through a macro. Signed-off-by: Herbert Xu commit 53b146ae598268edbe2bf7ea7dfec721d51adddd Author: Adrian-Ken Rueegsegger Date: Tue Nov 11 12:14:00 2008 +0800 libcrc32c: Fix "crc32c undefined" compilation error The latest shash changes leave crc32c undefined: [...] Building modules, stage 2. MODPOST 1381 modules ERROR: "crc32c" [net/sctp/sctp.ko] undefined! ERROR: "crc32c" [net/ipv4/netfilter/nf_nat_proto_sctp.ko] undefined! Adding EXPORT_SYMBOL(crc32c) to lib/libcrc32c.c fixes the compile error. This patch has been compile-tested only. Signed-off-by: Adrian-Ken Rueegsegger Signed-off-by: Herbert Xu commit 69c35efcf1576ab5f00cba83e8ca740923afb6c9 Author: Herbert Xu Date: Fri Nov 7 15:11:47 2008 +0800 libcrc32c: Move implementation to crypto crc32c This patch swaps the role of libcrc32c and crc32c. Previously the implementation was in libcrc32c and crc32c was a wrapper. Now the code is in crc32c and libcrc32c just calls the crypto layer. The reason for the change is to tap into the algorithm selection capability of the crypto API so that optimised implementations such as the one utilising Intel's CRC32C instruction can be used where available. Signed-off-by: Herbert Xu commit 8e3ee85e68c5d5c95451afd3e8f0997eec6f99e5 Author: Herbert Xu Date: Fri Nov 7 14:58:52 2008 +0800 crypto: crc32c - Test descriptor context format This patch adds a test for the requirement that all crc32c algorithms shall store the partial result in the first four bytes of the descriptor context. Signed-off-by: Herbert Xu commit b7e8bdadce6317eb13c13b9451d7114614aa1450 Author: Herbert Xu Date: Thu Nov 6 16:56:41 2008 +0800 crypto: crc32c-intel - Switch to shash This patch changes crc32c-intel to the new shash interface. Signed-off-by: Herbert Xu commit faccc4bba160784e834b758f23d598e500ac7108 Author: Herbert Xu Date: Tue Sep 9 17:23:07 2008 +1000 crypto: crc32c - Switch to shash This patch changes crc32c to the new shash interface. Signed-off-by: Herbert Xu commit 5f7082ed4f482f05db01d84dbf58190492ebf0ad Author: Herbert Xu Date: Sun Aug 31 22:21:09 2008 +1000 crypto: hash - Export shash through hash This patch allows shash algorithms to be used through the old hash interface. This is a transitional measure so we can convert the underlying algorithms to shash before converting the users across. Signed-off-by: Herbert Xu commit 67cd080c5070b4f17520c1385f7684206f4987b3 Author: Herbert Xu Date: Thu Nov 6 14:39:16 2008 +0800 crypto: api - Call type show function before legacy for proc This patch makes /proc/crypto call the type-specific show function if one is present before calling the legacy show functions for cipher/digest/compress. This allows us to reuse the type values for those legacy types. In particular, hash and digest will share one type value while shash is phased in as the default hash type. Signed-off-by: Herbert Xu commit dec8b78606ebd5f309c38f2fb10196ce996dd18d Author: Herbert Xu Date: Sun Nov 2 21:38:11 2008 +0800 crypto: hash - Add import/export interface It is often useful to save the partial state of a hash function so that it can be used as a base for two or more computations. The most prominent example is HMAC where all hashes start from a base determined by the key. Having an import/export interface means that we only have to compute that base once rather than for each message. Signed-off-by: Herbert Xu commit 3b2f6df08258e2875f42bd630eece7e7241a053b Author: Herbert Xu Date: Sun Aug 31 18:52:18 2008 +1000 crypto: hash - Export shash through ahash This patch allows shash algorithms to be used through the ahash interface. This is required before we can convert digest algorithms over to shash. Signed-off-by: Herbert Xu commit 7b5a080b3c46f0cac71c0d0262634c6517d4ee4f Author: Herbert Xu Date: Sun Aug 31 15:47:27 2008 +1000 crypto: hash - Add shash interface The shash interface replaces the current synchronous hash interface. It improves over hash in two ways. Firstly shash is reentrant, meaning that the same tfm may be used by two threads simultaneously as all hashing state is stored in a local descriptor. The other enhancement is that shash no longer takes scatter list entries. This is because shash is specifically designed for synchronous algorithms and as such scatter lists are unnecessary. All existing hash users will be converted to shash once the algorithms have been completely converted. There is also a new finup function that combines update with final. This will be extended to ahash once the algorithm conversion is done. This is also the first time that an algorithm type has their own registration function. Existing algorithm types will be converted to this way in due course. Signed-off-by: Herbert Xu commit 7b0bac64cd5b74d6f1147524c26216de13a501fd Author: Herbert Xu Date: Sun Sep 21 06:52:53 2008 +0900 crypto: api - Rebirth of crypto_alloc_tfm This patch reintroduces a completely revamped crypto_alloc_tfm. The biggest change is that we now take two crypto_type objects when allocating a tfm, a frontend and a backend. In fact this simply formalises what we've been doing behind the API's back. For example, as it stands crypto_alloc_ahash may use an actual ahash algorithm or a crypto_hash algorithm. Putting this in the API allows us to do this much more cleanly. The existing types will be converted across gradually. Signed-off-by: Herbert Xu commit 4a7794860ba2b56693b1d89fd485fd08cdc763e3 Author: Herbert Xu Date: Sat Sep 13 18:19:03 2008 -0700 crypto: api - Move type exit function into crypto_tfm The type exit function needs to undo any allocations done by the type init function. However, the type init function may differ depending on the upper-level type of the transform (e.g., a crypto_blkcipher instantiated as a crypto_ablkcipher). So we need to move the exit function out of the lower-level structure and into crypto_tfm itself. As it stands this is a no-op since nobody uses exit functions at all. However, all cases where a lower-level type is instantiated as a different upper-level type (such as blkcipher as ablkcipher) will be converted such that they allocate the underlying transform and use that instead of casting (e.g., crypto_ablkcipher casted into crypto_blkcipher). That will need to use a different exit function depending on the upper-level type. This patch also allows the type init/exit functions to call (or not) cra_init/cra_exit instead of always calling them from the top level. Signed-off-by: Herbert Xu commit 2566578a6feb9d9e39da41326afe8ed6022db3c5 Author: Neil Horman Date: Wed Nov 5 12:13:14 2008 +0800 crypto: ansi_cprng - Allow resetting of DT value This is a patch that was sent to me by Jarod Wilson, marking off my outstanding todo to allow the ansi cprng to set/reset the DT counter value in a cprng instance. Currently crytpo_rng_reset accepts a seed byte array which is interpreted by the ansi_cprng as a {V key} tuple. This patch extends that tuple to now be {V key DT}, with DT an optional value during reset. This patch also fixes a bug we noticed in which the offset of the key area of the seed is started at DEFAULT_PRNG_KSZ rather than DEFAULT_BLK_SZ as it should be. Signed-off-by: Neil Horman Signed-off-by: Jarod Wilson Signed-off-by: Herbert Xu commit 420a4b20c504e4674bf253601f793bdb254f99fa Author: Herbert Xu Date: Sun Aug 31 15:58:45 2008 +1000 crypto: padlock - Avoid resetting cword on successive operations Resetting the control word is quite expensive. Fortunately this isn't an issue for the common operations such as CBC and ECB as the whole operation is done through a single call. However, modes such as LRW and XTS have to call padlock over and over again for one operation which really hurts if each call resets the control word. This patch uses an idea by Sebastian Siewior to store the last control word used on a CPU and only reset the control word if that changes. Note that any task switch automatically resets the control word so we only need to be accurate with regard to the stored control word when no task switches occur. Signed-off-by: Herbert Xu commit 1c06da81a5d042d5fba67c4c533b16ae62a174ab Author: Kent Liu Date: Fri Oct 31 16:52:58 2008 +0800 crypto: crc32c-intel - Update copyright head The original copyright head for crc32c-intel.c is incorrect. Please merge the patch to update it. Signed-Off-By: Kent Liu Signed-off-by: Herbert Xu commit 4b24ea971a93f5d0bec34bf7bfd0939f70cfaae6 Author: Vishnu Suresh Date: Mon Oct 20 21:06:18 2008 +0800 crypto: talitos - Preempt overflow interrupts off-by-one fix In commit ec6644d6325b5a38525f1d5b20fd4bf7db05cf2a "crypto: talitos - Preempt overflow interrupts", the test in atomic_inc_not_zero was interpreted by the author to be applied after the increment operation (not before). This off-by-one fix prevents overflow error interrupts from occurring when requests are frequent and large enough to do so. Signed-off-by: Vishnu Suresh Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 32bd78e0a5d34cd8e34046502bddcf31aeb38e64 Author: Harvey Harrison Date: Sun Oct 12 20:40:12 2008 +0800 crypto: camellia - use kernel-provided bitops, unaligned access Remove the private implementation of 32-bit rotation and unaligned access with byteswapping. As a bonus, fixes sparse warnings: crypto/camellia.c:602:2: warning: cast to restricted __be32 crypto/camellia.c:603:2: warning: cast to restricted __be32 crypto/camellia.c:604:2: warning: cast to restricted __be32 crypto/camellia.c:605:2: warning: cast to restricted __be32 crypto/camellia.c:710:2: warning: cast to restricted __be32 crypto/camellia.c:711:2: warning: cast to restricted __be32 crypto/camellia.c:712:2: warning: cast to restricted __be32 crypto/camellia.c:713:2: warning: cast to restricted __be32 crypto/camellia.c:714:2: warning: cast to restricted __be32 crypto/camellia.c:715:2: warning: cast to restricted __be32 crypto/camellia.c:716:2: warning: cast to restricted __be32 crypto/camellia.c:717:2: warning: cast to restricted __be32 [Thanks to Tomoyuki Okazaki for spotting the typo] Tested-by: Carlo E. Prelz Signed-off-by: Harvey Harrison Signed-off-by: Herbert Xu commit d12d6b6d37cad766b390467e770eb0ab81345d78 Author: Neil Horman Date: Sun Oct 12 20:36:51 2008 +0800 crypto: testmgr - Trigger a panic when self test fails in FIPS mode The FIPS specification requires that should self test for any supported crypto algorithm fail during operation in fips mode, we need to prevent the use of any crypto functionality until such time as the system can be re-initialized. Seems like the best way to handle that would be to panic the system if we were in fips mode and failed a self test. This patch implements that functionality. I've built and run it successfully. Signed-off-by: Neil Horman Signed-off-by: Herbert Xu commit fe5720e2b7c1e8ff95d4bf18329517cf64ad1d70 Author: Kim Phillips Date: Sun Oct 12 20:33:14 2008 +0800 crypto: talitos - Perform auth check in h/w if on sec 2.1 and above SEC version 2.1 and above adds the capability to do the IPSec ICV memcmp in h/w. Results of the cmp are written back in the descriptor header, along with the done status. A new callback is added that checks these ICCR bits instead of performing the memcmp on the core, and is enabled by h/w capability. Signed-off-by: Kim Phillips After testing on different parts, another condition was added before using h/w auth check because different SEC revisions require different handling. The SEC 3.0 allows a more flexible link table where the auth data can span separate link table entries. The SEC 2.4/2.1 does not support this case. So a test was added in the decrypt routine for a fragmented case; the h/w auth check is disallowed for revisions not having the extent in the link table; in this case the hw auth check is done by software. A portion of a previous change for SEC 3.0 link table handling was removed since it became dead code with the hw auth check supported. This seems to be the best compromise for using hw auth check on supporting SEC revisions; it keeps the link table logic simpler for the fragmented cases. Signed-off-by: Lee Nipper Signed-off-by: Herbert Xu commit 1c2e8811eea5f0c5da3213ea206c2864fa4614fd Author: Lee Nipper Date: Sun Oct 12 20:29:34 2008 +0800 crypto: talitos - Implement done interrupt mitigation In talitos_interrupt, upon one done interrupt, mask further done interrupts, and ack only any error interrupt. In talitos_done, unmask done interrupts after completing processing. In flush_channel, ack each done channel processed. Keep done overflow interrupts masked because even though each pkt is ack'ed, a few done overflows still occur. Signed-off-by: Lee Nipper Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 40405f10b853ef404b395c6febca71b0de185490 Author: Kim Phillips Date: Sun Oct 12 20:19:35 2008 +0800 crypto: talitos - Pass correct interrupt status to error handler Since we ack early, the re-read interrupt status in talitos_error may be already updated with a new value. Pass the error ISR value directly in order to report and handle the error based on the correct error status. Also remove unused error tasklet. Signed-off-by: Kim Phillips Signed-off-by: Lee Nipper Signed-off-by: Herbert Xu commit a44b56cc69a5b017f396ed1daeaef6a63e086656 Author: Evgeniy Polyakov Date: Sun Oct 12 20:14:15 2008 +0800 crypto: hifn - Disable driver when physical size exceeds 32 bits On Tue, Sep 23, 2008 at 08:06:32PM +0200, Dimitri Puzin (max@psycast.de) wrote: > With this patch applied it still doesn't work as expected. The overflow > messages are gone however syslog shows > [ 120.924266] hifn0: abort: c: 0, s: 1, d: 0, r: 0. > when doing cryptsetup luksFormat as in original e-mail. At this point > cryptsetup hangs and can't be killed with -SIGKILL. I've attached > SysRq-t dump of this condition. Yes, I was wrong with the patch: HIFN does not support 64-bit addresses afaics. Attached patch should not allow HIFN to be registered on 64-bit arch, so crypto layer will fallback to the software algorithms. Signed-off-by: Evgeniy Polyakov Signed-off-by: Herbert Xu commit 67be403d897f818b1a5ecc201967b0ee6a0332f9 Author: Ingo Molnar Date: Wed Dec 24 21:08:37 2008 +0100 Revert "x86: disable X86_PTRACE_BTS" This reverts commit 40f15ad8aadff5ebb621b17a6f303ad2cd3f847d. The CONFIG_X86_PTRACE_BTS bugs have been fixed via: c5dee61: x86, bts: memory accounting bf53de9: x86, bts: add fork and exit handling Signed-off-by: Ingo Molnar commit db8862eafe8a5d030a3b02e81b8bb47447c315e3 Merge: c5dee61... c20137f... Author: Ingo Molnar Date: Wed Dec 24 21:08:26 2008 +0100 Merge branch 'linus' into tracing/hw-branch-tracing commit 1f5175adeaa1d161f603ef351785a19814dfe900 Author: Aleksey Senin Date: Wed Dec 24 10:16:45 2008 -0800 RDMA/cma: Add IPv6 support Handle AF_INET6 cases where required, and use struct sockaddr_storage wherever an IPv6 address might be stored. Signed-off-by: Aleksey Senin Signed-off-by: Roland Dreier commit 38617c64bf9a10bf20e41d95b69bb81e8560fe9d Author: Aleksey Senin Date: Wed Dec 24 10:16:37 2008 -0800 RDMA/addr: Add support for translating IPv6 addresses Add support for translating AF_INET6 addresses to the IB address translation service. This requires using struct sockaddr_storage instead of struct sockaddr wherever an IPv6 address might be stored, and adding cases to handle IPv6 in addition to IPv4 to the various translation functions. Signed-off-by: Aleksey Senin Signed-off-by: Roland Dreier commit 7645c4bfbb36f357f03815f5729c46ce8d89f008 Merge: 74b7ff4... 574f3c4... Author: Takashi Iwai Date: Wed Dec 24 11:04:08 2008 +0100 Merge branch 'fix/hda' into topic/hda commit c1c15b65ec30275575dac9322aae607075769fbc Author: H. Peter Anvin Date: Tue Dec 23 10:10:40 2008 -0800 x86: PAT: fix address types in track_pfn_vma_new() Impact: cleanup, fix warning This warning: arch/x86/mm/pat.c: In function track_pfn_vma_copy: arch/x86/mm/pat.c:701: warning: passing argument 5 of follow_phys from incompatible pointer type Triggers because physical addresses are resource_size_t, not u64. This really matters when calling an interface like follow_phys() which takes a pointer to a physical address -- although on x86, being littleendian, it would generally work anyway as long as the memory region wasn't completely uninitialized. Signed-off-by: H. Peter Anvin Signed-off-by: Ingo Molnar commit 6332178d91ca1a9dbd99bd97cabbcf965d178e9f Merge: 908a7a1... 739840d... Author: David S. Miller Date: Tue Dec 23 17:56:23 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/ppp_generic.c commit 98db8df777438e16ad0f44a0fba05ebbdb73db8d Author: Steven Rostedt Date: Tue Dec 23 11:32:25 2008 -0500 ring-buffer: prevent false positive warning Impact: eliminate false WARN_ON message If an interrupt goes off after the setting of the local variable tail_page and before incrementing the write index of that page, the interrupt could push the commit forward to the next page. Later a check is made to see if interrupts pushed the buffer around the entire ring buffer by comparing the next page to the last commited page. This can produce a false positive if the interrupt had pushed the commit page forward as stated above. Thanks to Jiaying Zhang for finding this race. Reported-by: Jiaying Zhang Signed-off-by: Steven Rostedt Cc: Signed-off-by: Ingo Molnar commit a8ccf1d6f60e3e6ae63122e02378cd4d40dd4aac Author: Steven Rostedt Date: Tue Dec 23 11:32:24 2008 -0500 ring-buffer: fix dangling commit race Impact: fix stuck trace-buffers If an interrupt comes in during the rb_set_commit_to_write and pushes the tail page forward just at the right time, the commit updates will miss the adding of the interrupt data. This will cause the commit pointer to cease from moving forward. Thanks to Jiaying Zhang for finding this race. Reported-by: Jiaying Zhang Signed-off-by: Steven Rostedt Cc: Signed-off-by: Ingo Molnar commit bed4f13065b520e564adffbfcd1c1a764a9c887e Merge: 3e5621e... bf8bd66... Author: Ingo Molnar Date: Tue Dec 23 16:30:31 2008 +0100 Merge branch 'x86/irq' into x86/core commit 3e5621edb3392b28efb260ac99b2d26fb8b44e73 Merge: be9a1d3... 181de82... Author: Ingo Molnar Date: Tue Dec 23 16:30:27 2008 +0100 Merge branch 'x86/iommu' into x86/core commit be9a1d3c2e559b267983bcf8b003997b83befb49 Merge: fa623d1... 7e3cbc3... Author: Ingo Molnar Date: Tue Dec 23 16:30:20 2008 +0100 Merge branch 'x86/tsc' into x86/core commit 7e3cbc3f774f31ecd88a51edae3d9377f60a4c00 Merge: 345077c... f4166c5... Author: Ingo Molnar Date: Tue Dec 23 16:29:31 2008 +0100 Merge branch 'x86/ptrace' into x86/tsc Conflicts: arch/x86/kernel/cpu/intel.c commit fa623d1b0222adbe8f822e53c08003b9679a410c Merge: 3d44cc3... 1ccedb7... 34945ed... d437797... c415b3d... beeb419... f269b07... 4e42ebd... e1286f2... 878719e... fd28a5b... adf77ba... 8f2466f... 93093d0... bb55746... f34a10b... b6fd6f2... 30604bb... 5b9a0e1... 67bac79... 7a9787e... f4166c5... 69b88af... 8daa190... 3e1e900... 8403295... 4db646b... 205516c... c8182f0... ecbf29c... Author: Ingo Molnar Date: Tue Dec 23 16:27:23 2008 +0100 Merge branches 'x86/apic', 'x86/cleanups', 'x86/cpufeature', 'x86/crashdump', 'x86/debug', 'x86/defconfig', 'x86/detect-hyper', 'x86/doc', 'x86/dumpstack', 'x86/early-printk', 'x86/fpu', 'x86/idle', 'x86/io', 'x86/memory-corruption-check', 'x86/microcode', 'x86/mm', 'x86/mtrr', 'x86/nmi-watchdog', 'x86/pat2', 'x86/pci-ioapic-boot-irq-quirks', 'x86/ptrace', 'x86/quirks', 'x86/reboot', 'x86/setup-memory', 'x86/signal', 'x86/sparse-fixes', 'x86/time', 'x86/uv' and 'x86/xen' into x86/core commit bf8bd66d0580f296f257d371ee41a0a137b541c7 Merge: 8ae9366... 1ccedb7... Author: Ingo Molnar Date: Tue Dec 23 16:24:15 2008 +0100 Merge branch 'x86/apic' into x86/irq Conflicts: arch/x86/kernel/apic.c commit 1ccedb7cdba6886939dd8b4c8f965a826f696e56 Merge: a98f8fd... 929096f... Author: Ingo Molnar Date: Tue Dec 23 16:23:23 2008 +0100 Merge commit 'v2.6.28-rc9' into x86/apic commit 908a7a16b852ffd618a9127be8d62432182d81b4 Author: Neil Horman Date: Mon Dec 22 20:43:12 2008 -0800 net: Remove unused netdev arg from some NAPI interfaces. When the napi api was changed to separate its 1:1 binding to the net_device struct, the netif_rx_[prep|schedule|complete] api failed to remove the now vestigual net_device structure parameter. This patch cleans up that api by properly removing it.. Signed-off-by: Neil Horman Signed-off-by: David S. Miller commit f8f50b1bddd49eb171398cfc543c957884dc6e35 Author: Dale Farnsworth Date: Wed Dec 17 10:09:26 2008 +0000 powerpc/32: Wire up the trampoline code for kdump Wire up the trampoline code for ppc32 to relay exceptions from the vectors at address 0 to vectors at address 32MB, and modify Kconfig to enable Kdump support for all classic powerpcs. Signed-off-by: Dale Farnsworth Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit ccdcef72c249c289898b164eada89a61855b9287 Author: Dale Farnsworth Date: Wed Dec 17 10:09:13 2008 +0000 powerpc/32: Add the ability for a classic ppc kernel to be loaded at 32M Add the ability for a classic ppc kernel to be loaded at an address of 32MB. This done by fixing a few places that assume we are loaded at address 0, and by changing several uses of KERNELBASE to use PAGE_OFFSET, instead. Signed-off-by: Dale Farnsworth Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 01695a9687e5a8d78589605037cc7828a5b67ac9 Author: Anton Vorontsov Date: Wed Dec 17 10:09:10 2008 +0000 powerpc/32: Allow __ioremap on RAM addresses for kdump kernel While for debugging it is good to catch bogus users of ioremap, though for kdump support it is more convenient to use __ioremap for copy_oldmem_page() (exactly as we do for PPC64 currently). Note that copy_oldmem_page() calls __ioremap with flags set to '0', so it should be safe with the regard to the caches. The other option is to use kmap_atomic_pfn()[1], but it will not work for kernels compiled without HIGHMEM. That is, on a board with 256MB RAM and crashkernel=64M@32M case, the !HIGHMEM capturing kernel maps 0-96M range, which does not include all the memory needed to capture the dump. And, obviously, accessing anything upper than 96M will cause faults. [1] http://ozlabs.org/pipermail/linuxppc-dev/2007-November/046747.html Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 6f29c3298b18216198631cbee01c349adecb225d Author: Dale Farnsworth Date: Wed Dec 17 10:09:06 2008 +0000 powerpc/32: Setup OF properties for kdump Refactor the setting of kdump OF properties, moving the common code from machine_kexec_64.c to machine_kexec.c where it can be used on both ppc64 and ppc32. This will be needed for kdump to work on ppc32 platforms. Signed-off-by: Dale Farnsworth Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 73753313884e8d063d9bf9d3e36325743ca006ba Author: Anton Vorontsov Date: Wed Dec 17 10:09:01 2008 +0000 powerpc/32/kdump: Implement crash_setup_regs() using ppc_save_regs() This replaces the dummy crash_setup_regs function with full-fledged crash_setup_regs implementation. On PPC32 we simply use the new ppc_save_regs function to dump the registers. Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 322b439455ea62e6480e300c77b258e872896381 Author: Anton Vorontsov Date: Wed Dec 17 10:08:55 2008 +0000 powerpc: Prepare xmon_save_regs for use with kdump Today the arch/powerpc/xmon/setjmp.S file contains only the xmon_save_regs function. We want to use it for kdump purposes, so let's move the file into arch/powerpc/kernel/ and give the function a more generic name (ppc_save_regs). Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 5be8554875bf3a1a42b7f04d5999b36e7c2fa88b Author: Anton Vorontsov Date: Tue Dec 16 06:23:08 2008 +0000 powerpc: Remove default kexec/crash_kernel ops assignments Default ops are implicit now. Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 77733f8a33488307e7d4b9077d174647ecea92e1 Author: Anton Vorontsov Date: Tue Dec 16 06:23:05 2008 +0000 powerpc: Make default kexec/crash_kernel ops implicit This removes the need for each platform to specify default kexec and crash kernel ops, thus effectively adds a working kexec support for most 6xx/7xx/7xxx-based boards. Platforms that can't cope with default ops will explode in some weird way (a hang or reboot is most likely), which means that the board's kexec support should be fixed or blacklisted via dummy _prepare callback returning -ENOSYS. Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 2e8e4f5b80e101da588af650de0ff6b3c475d6b3 Author: Dale Farnsworth Date: Tue Dec 16 06:22:59 2008 +0000 powerpc: Setup OF properties for ppc32 kexec Refactor the setting of kexec OF properties, moving the common code from machine_kexec_64.c to machine_kexec.c where it can be used on both ppc64 and ppc32. This is needed for kexec to work on ppc32 platforms. Signed-off-by: Dale Farnsworth Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit b906cfa397fdef8decbd36467b1f63c830a0bf2b Author: Sebastien Dugue Date: Thu Nov 27 00:59:52 2008 +0000 powerpc/pseries: Fix cpu hotplug Currently, pseries_cpu_die() calls msleep() while polling RTAS for the status of the dying cpu. However, if the cpu that is going down also happens to be the one doing the tick then we're hosed as the tick_do_timer_cpu 'baton' is only passed later on in tick_shutdown() when _cpu_down() does the CPU_DEAD notification. Therefore jiffies won't be updated anymore. This replaces that msleep() with a cpu_relax() to make sure we're not going to schedule at that point. With this patch my test box survives a 100k iterations hotplug stress test on _all_ cpus, whereas without it, it quickly dies after ~50 iterations. Signed-off-by: Sebastien Dugue Cc: Michael Ellerman Signed-off-by: Paul Mackerras commit fad7b9b51e21a97e9e2662f1b51869ed2d209097 Author: Paul Mackerras Date: Tue Dec 23 14:57:26 2008 +1100 powerpc: Fix KVM build on ppc440 Commit 2a4aca1144394653269720ffbb5a325a77abd5fa ("powerpc/mm: Split low level tlb invalidate for nohash processors") changed a call to _tlbia to _tlbil_all but didn't include the header that defines _tlbil_all, leading to a build failure on 440 if KVM is enabled. This fixes it. Signed-off-by: Paul Mackerras commit 889bd9b6dbcd426b8698c4a779dd7dbf247f57b8 Author: Oliver Neukum Date: Thu Dec 18 03:57:35 2008 +0000 net: startup race in hso driver The flag marking a device running must be set before the URBs for recption are submitted or they may complete too early and fail to resubmit. Signed-off-by: Oliver Neukum Signed-off-by: David S. Miller commit 05a8c1cbfe368df8c0d4eff710c370d2aa10245a Author: Jarek Poplawski Date: Mon Dec 22 19:44:13 2008 -0800 pkt_sched: Remove smp_wmb() in qdisc_watchdog() While implementing a TCQ_F_THROTTLED flag there was used an smp_wmb() in qdisc_watchdog(), but since this flag is practically used only in sch_netem(), and since it's not even clear what reordering is avoided here (TCQ_F_THROTTLED vs. __QDISC_STATE_SCHED?) it seems the barrier could be safely removed. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 4707470ae7441733822efcd680b0ef3971921c4d Author: Florian Fainelli Date: Mon Dec 22 19:40:38 2008 -0800 r6040: bump release number to 0.19 This patch bumps the release number of the driver. Signed-off-by: Florian Fainelli Signed-off-by: David S. Miller commit 3e7c469f07ff14cbf9a814739e1fc99a863e0943 Author: Joe Chou Date: Mon Dec 22 19:40:02 2008 -0800 r6040: save and restore MIER correctly in the interrupt routine This patch saves the MIER register contents before treating interrupts, then restores them correcty at the end of the interrupt routine. Signed-off-by: Joe Chou Signed-off-by: Florian Fainelli Signed-off-by: David S. Miller commit 11e5e8f5d14a1229706576184d2cf4c4556ed94c Author: Joe Chou Date: Mon Dec 22 19:38:17 2008 -0800 r6040: fix wrong logic in mdio code This patch fixes a reverse logic in the MDIO code. Signed-off-by: Joe Chou Signed-off-by: Florian Fainelli Signed-off-by: David S. Miller commit 5f2f6da76c429c42d54f73807f00b8fd761a7d68 Author: Jarek Poplawski Date: Mon Dec 22 19:35:28 2008 -0800 net: Fix oops in dev_ifsioc() A command like this: "brctl addif br1 eth1" issued as a user gave me an oops when bridge module wasn't loaded. It's caused by using a dev pointer before checking for NULL. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit adf77bac052bb5bf0722b2ce2af9fefc5b2d2a71 Author: H. Peter Anvin Date: Mon Dec 22 17:56:05 2008 -0800 x86: prioritize the FPU traps for the error code In the case of multiple FPU errors, prioritize the error codes, instead of returning __SI_FAULT, which ends up pushing a 0 as the error code to userspace, a POSIX violation. For i386, we will simply return if there are no errors at all; for x86-64 this is probably a "can't happen" (and the code should be unified), but for this patch, return __SI_FAULT|SI_KERNEL if this ever happens. Signed-off-by: H. Peter Anvin commit def434c2319c5a336633cd73322e0f28a7091b01 Author: Benjamin Krill Date: Thu Nov 27 16:15:44 2008 +0100 powerpc/cell: add QPACE as a separate Cell platform Since the QPACE (Chromodynamics Parallel Computing on the Cell Broadband Engine) platform doesn't use a iommu, doesn't have PCI devices and a MPIC much lesser setup and configurations are needed. So far all devices are detected as OF device. A notifier function is used to set the dma_ops for the of_platform bus. Further this patch splits the PPC_CELL_NATIVE into PPC_CELL_COMMON which are parts that are shared with the QPACE platform and the rest. Signed-off-by: Benjamin Krill Signed-off-by: Arnd Bergmann commit e68558ddcdbfa8cc2e7811bcada3bcbeef79fd4a Author: Arnd Bergmann Date: Mon Dec 22 22:08:26 2008 +0100 powerpc/cell: fix build breakage with CONFIG_SPUFS disabled CBE_THERM and OPROFILE_CELL both cannot be built without SPU_FS disabled, so make the dependency explicit. Reported-by: Milton Miller Signed-off-by: Arnd Bergmann commit 472346da9cc4231bec03ff2032e0d5fd4037232c Author: Roel Kluin Date: Mon Dec 22 17:40:45 2008 +0100 ALSA: ASoC: fix a typo in omp-pcm.c Fix a typo (& and &&) Signed-off-by: Roel Kluin Signed-off-by: Liam Girdwood Signed-off-by: Takashi Iwai commit c69134858722977a82f58cae88e7ffdb28e1e858 Author: Jarkko Nikula Date: Mon Dec 22 10:57:33 2008 +0200 ASoC: Fix DSP formats in SSM2602 audio codec Thanks to Troy Kisky for noticing. - DSP_A format has 1-bit data delay which corresponds to SSM6202 submode 2 - DSP_B has 0-bit data delay which corresponds to submode 1 - Currently driver sets them opposite so swap the submode setting Signed-off-by: Jarkko Nikula Cc: Cliff Cai Signed-off-by: Mark Brown commit bd25867a6cbe7a00ef7dbe8d9ddebc91b00b9b3f Author: Jarkko Nikula Date: Mon Dec 22 10:21:36 2008 +0200 ASoC: Fix incorrect DSP format in OMAP McBSP DAI and affected drivers - OMAP McBSP DAI driver claims to support DSP_A format which has 1-bit data delay but configures link for 0-bit data delay which is in fact DSP_B - Fix this by changing format from DSP_A to DSP_B - Fix also TLV320AIC23 codec and OSK5912 machine drivers since the same error is populated also there Signed-off-by: Jarkko Nikula Acked-by: Arun KS Signed-off-by: Mark Brown commit f5eda57f9bb17b6f09f7888dfc2c47db7aea45d4 Author: Roland Dreier Date: Mon Dec 22 07:15:05 2008 -0800 mlx4_core: Delete incorrect comment The comment about a "Conditional on hca_type" was cut-and-pasted from the mthca driver, and doesn't apply to mlx4 (since only one type of HCA is handled by mlx4). So just delete it. Signed-off-by: Roland Dreier commit b8dd786f9417e5885929bfe33a235c76a9c1c569 Author: Yevgeny Petrilin Date: Mon Dec 22 07:15:03 2008 -0800 mlx4_core: Add support for multiple completion event vectors When using MSI-X mode, create a completion event queue for each CPU. Report the number of completion EQs in a new struct mlx4_caps member, num_comp_vectors, and extend the mlx4_cq_alloc() interface with a vector parameter so that consumers can specify which completion EQ should be used to report events for the CQ being created. Signed-off-by: Yevgeny Petrilin Signed-off-by: Roland Dreier commit 59de580af1c2fd671b0cb27c41ff958859ae5288 Author: Paul Mundt Date: Mon Dec 22 19:32:27 2008 +0900 sh: oprofile: Fix up the module build. Signed-off-by: Paul Mundt commit 7d91fcfcb91dde7bc4586154942862c1724b3519 Author: Takanari Hayama Date: Mon Dec 22 11:05:03 2008 +0900 sh: add UIO support for JPU on SH7722. Add JPU support on Migo-R via UIO. This make use of Magnus's generic UIO platform driver. Chunk of contiguous memory to hold intermediate image and compressed data during encode and decode. Signed-off-by: Takanari Hayama Signed-off-by: Paul Mundt commit b0c50ad71746c4ad148f366135e3c87e32729108 Author: Paul Mundt Date: Mon Dec 22 03:40:10 2008 +0900 serial: sh-sci: Fix up port pinmux for SH7366. Signed-off-by: Paul Mundt commit 6f5cd2bd59c3bbaf073a7a52fcdefded939bd306 Author: Paul Mundt Date: Mon Dec 22 03:26:26 2008 +0900 sh: mach-rsk: Use uImage generation by default for rsk7201/7203. Signed-off-by: Paul Mundt commit 2ea40dec26da89702dface74365cd16cea9ded6c Author: Paul Mundt Date: Mon Dec 22 03:25:04 2008 +0900 sh: mach-sh03: Fix up pata_platform build breakage. Signed-off-by: Paul Mundt commit b5868e8cdeb35cd9ddc3a541f81f318b0f6772b3 Author: Magnus Damm Date: Fri Dec 19 15:34:50 2008 +0900 sh: enable deferred io LCDC on Migo-R Enable LCDC deferred io on Migo-R using 1s delay. As with other deferred io frame buffers user space code should use fsync() on the frame buffer device to trigger an update. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 8564557a03c12adb9c4b76ae1e86db4113a04d13 Author: Magnus Damm Date: Fri Dec 19 15:34:41 2008 +0900 video: sh_mobile_lcdcfb deferred io support This patch adds sh_mobile_lcdcfb deferred io support for SYS panels. The LCDC hardware block managed by the sh_mobile_lcdcfb driver supports RGB or SYS panel configurations. SYS panels come with an external display controller that is resposible for refreshing the actual LCD panel. RGB panels are controlled directly by the LCDC and they need to be refreshed by the LCDC hardware. In the case of SYS panels we can save some power by configuring the LCDC hardware block in one-shot mode. In this one-shot mode panel refresh is managed by software. This works well together with deferred io since it allows us to stop clocks for most of the time and only enable clocks when we actually want to trigger an update. When there is no fbdev activity the clocks are kept stopped which allows us to deep sleep. The refresh rate in deferred io mode is set using platform data. The same platform data can also be used to disable deferred io mode. As with other deferred io frame buffers user space code should use fsync() on the frame buffer device to trigger an update. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 37b4837959cb9aa60686ca0d85f73d819251abad Author: Magnus Damm Date: Fri Dec 19 15:34:32 2008 +0900 video: deferred io with physically contiguous memory Extend the deferred io code from only supporting vmalloc()ed frame buffer memory to support both vmalloc()ed and physically contiguous frame buffer memory. The sh_mobile_lcdcfb hardware does not support scatter gather so we need physically contiguous memory to back our frame buffer. Signed-off-by: Magnus Damm Acked-by: Jaya Kumar Signed-off-by: Paul Mundt commit 6e1038a95bebb8a1ad6066c95aa9c3af6963c9ff Author: Magnus Damm Date: Fri Dec 19 15:34:23 2008 +0900 video: deferred io cleanup Make sure the mmap callback is set to NULL in the deferred io cleanup function. This way we can enable and disable deferred io on the fly. Signed-off-by: Magnus Damm Acked-by: Jaya Kumar Signed-off-by: Paul Mundt commit 87884bd8ae42c875adbd62c84f47ed1cbb3e5090 Author: Magnus Damm Date: Fri Dec 19 15:34:09 2008 +0900 video: fix deferred io fsync() If CONFIG_FB_DEFERRED_IO is set, but there are framebuffers registered that does not make use of deferred io, then fsync() on those framebuffers will result in a crash. Fix that. This is needed for sh_mobile_lcdcfb since we always enable deferred io at compile time but we may disable deferred io for some types of hardware configurations. Signed-off-by: Magnus Damm Acked-by: Jaya Kumar Signed-off-by: Paul Mundt commit 0790555437df2b6070af8f021b8d2ef79e70e144 Author: Magnus Damm Date: Fri Dec 19 12:02:16 2008 +0900 sh: add LCDC interrupt configuration to AP325 and Migo-R Add LCDC interrupt resources for AP325 and Migo-R. The LCDC driver does not require interrupts at this point, but changes such as one-shot SYS mode using deferred io, and wait-for-vblank will both need this. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 2540c111ead82cad605ec2b14a1905ad914cc124 Author: Magnus Damm Date: Wed Dec 17 17:29:49 2008 +0900 sh_mobile_lcdc: use FB_SYS helpers instead of FB_CFB Since the sh_mobile_lcdc hardware has the framebuffer(s) in system RAM, use FB_SYS instead of FB_CFB. Also hook in read and write helpers. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit da9fdc8b44c421f14a68988ae4d1fb414d5edbf0 Author: Magnus Damm Date: Wed Dec 17 17:18:45 2008 +0900 sh: split coherent pages Split pages returned by dma_alloc_coherent() and make sure we free them one by one. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 78fb40263f34c65ade1693664db1af168d479588 Author: Paul Mundt Date: Wed Dec 17 16:23:32 2008 +0900 sh: dma: Kill off ISA DMA wrapper. There are no more users for this code, and it has been deprecated for some time, so just kill it off. Signed-off-by: Paul Mundt commit 5d2685d0b3edc51ecc92604d5b7f5ca9b29b90bb Author: Paul Mundt Date: Wed Dec 17 15:56:06 2008 +0900 sh: Conditionalize the code dumper on CONFIG_DUMP_CODE. We don't really want this enabled by default, but it is still quite useful for debugging. So, make it conditional and leave it off by default. Signed-off-by: Paul Mundt commit fe58cac35f48a9598c2a1360c2204c73f7bca2d2 Author: Paul Mundt Date: Wed Dec 17 15:36:50 2008 +0900 sh: Kill off the unused SH_ALPHANUMERIC debug option. Signed-off-by: Paul Mundt commit 740a3e677b70181d5e2b1458a27891209e3bf635 Author: Paul Mundt Date: Wed Dec 17 15:33:43 2008 +0900 sh: Enable skipping of bss on debug platforms for sh32 also. This enables the same functionality that sh64 has for sh32. When running on simulated hardware or via remote memory via the debug interface, memory is gauranteed to be zero on boot already, and skipping the zeroing of BSS has measurable boot time benefits. Signed-off-by: Paul Mundt commit 8a655053ca1593dd160dac2a4ee638fdec037d86 Author: Paul Mundt Date: Wed Dec 17 15:06:54 2008 +0900 doc: Update sh cpufreq documentation. The sh cpufreq driver is no longer limited to just the SH-3 and SH-4, update the documentation to reflect this fact accordingly. Signed-off-by: Paul Mundt commit 0146d7875976795fe364b4a3da629975ebd37671 Author: Paul Mundt Date: Wed Dec 17 14:58:04 2008 +0900 sh: mrshpc_setup_windows() needs to be inline. While no one should be including this file multiple times, flag it inline anyways just in case. Signed-off-by: Paul Mundt commit 1f6fd5c916c8416588f5797e7837b9e81b3251a5 Author: Paul Mundt Date: Wed Dec 17 14:53:24 2008 +0900 serial: sh-sci: sci_poll_get_char() is only used by CONFIG_CONSOLE_POLL. sci_poll_put_char() happens to also be used by the serial console, while sci_poll_get_char() is only used by CONFIG_CONSOLE_POLL. Add another gnarly ifdef to shut up the compiler. Signed-off-by: Paul Mundt commit 073da9c0de401e8683b6bc76c008a7e0850045d5 Author: Paul Mundt Date: Wed Dec 17 14:41:54 2008 +0900 sh: Kill off cf-enabler with extreme prejudice. Now that the rest of the boards that were using cf-enabler "generically" have switched to setting up their mappings on their own, only the mach-se boards were left using it. All of the cf-enabler using mach-se boards use a special initialization of the MRSHPC windows rather than going through the special PTE as other SH-4 platforms do. This consolidates the MRSHPC setup logic, hooks it up on the boards that care, and gets rid of any and all remaining references to cf-enabler. This has been long overdue, as cf-enabler has been the bane of arch/sh/kernel for the last 7 years. Good riddance. Signed-off-by: Paul Mundt commit 8c197c3afb4a9026973315cc6a3c189dd8434053 Author: Paul Mundt Date: Wed Dec 17 13:57:45 2008 +0900 sh: Add a simple edosk7705_defconfig for build testing. Signed-off-by: Paul Mundt commit 866ef8f48f2272ce8d84156c91964d730666ab33 Author: Paul Mundt Date: Wed Dec 17 13:57:15 2008 +0900 sh: mach-edosk7705: Fix up edosk7705 so it all builds again. Signed-off-by: Paul Mundt commit 0ef0e6ca426d28561b752e5f576932659295b928 Author: Paul Mundt Date: Wed Dec 17 13:14:22 2008 +0900 sh: mach-microdev: Split out the fdc37c93xapm initialization code. This makes the microdev code a bit more readable, and moves the setup for the SuperIO out on its own. Signed-off-by: Paul Mundt commit 43eeb0fb9f4e2aaefc4ae9dc964308ce8f55998b Author: Paul Mundt Date: Wed Dec 17 12:54:09 2008 +0900 sh: mach-sh03: Use __set_io_port_base(), kill off special ioport_map(). This also fixes up a long-standing bug for this platform where the PIO base was set to a register offset, rather than the actual PIO offset itself. Signed-off-by: Paul Mundt commit 8db806ec80ce80605005d1d558add716152a1134 Author: Paul Mundt Date: Wed Dec 17 12:48:41 2008 +0900 sh: mach-sh03: Move off of cf_enabler to pata_platform, as per landisk. This gets rid of the cf enabler use on mach-sh03 and switches to use pata_platform with the proper address directly. cf_enabler is subsequently disabled for mach-sh03. Signed-off-by: Paul Mundt commit 98a955da8525a4218c8186fba5a6b949f563bbea Author: Paul Mundt Date: Wed Dec 17 12:42:20 2008 +0900 sh: board-shmin: Convert shmin to use __set_io_port_base(). Drop the special mv_ioport_map() implementation, as this can simply use __set_io_port_base() directly. Signed-off-by: Paul Mundt commit 2125a46083dc5a9aa321c243e322638a9338cd11 Author: Paul Mundt Date: Wed Dec 17 12:31:32 2008 +0900 sh: Kill off dead mv_init_pci() from machvec. Signed-off-by: Paul Mundt commit 43f8f9b95b65dc05368cd82268895b9508b17d50 Author: Paul Mundt Date: Wed Dec 17 12:20:15 2008 +0900 sh: Simplify kernel_thread_helper() for sh32. This can use the same implementation as sh64, the generated assembly is the same between the new and old version, so there is not much point in leaving it open coded in inline assembly. This is preparatory work for future consolidation of the _32/_64 variants. Signed-off-by: Paul Mundt commit 7b80fb32b39a51ce3e1afa051f5a616eb8ecbed3 Author: Paul Mundt Date: Wed Dec 17 12:19:30 2008 +0900 sh: Kill off mv_heartbeat() from the machvec. Nothing is using this any more, so get rid of it before anyone gets the bright idea to start using it again. Signed-off-by: Paul Mundt commit b94ea27570e4ae87942e2f2ae386d4007ef7ac58 Author: Paul Mundt Date: Wed Dec 17 12:17:20 2008 +0900 sh: Kill off the cayman and microdev special heartbeat code. These can use the generic code instead. Signed-off-by: Paul Mundt commit ca0c14e447a399eb90a1c9a4357560c2a29ef499 Author: Paul Mundt Date: Wed Dec 17 11:47:59 2008 +0900 sh: Kill off sh_bios_in_gdb_mode(). With the reworked kgdb support, we always detach and reinitialize the stub. This was mostly a feature for handoffs between sh-ipl+g and the kgdb stub, but virtually no sh-ipl+g versions ever had this working right in the first place. Given that the sh-ipl+g stubs in general use today don't even support the GDB stub, and we have already killed off the special casing in the sh-sci serial driver, kill off this now unused symbol too. Signed-off-by: Paul Mundt commit a9df1ed92fc46cb7c9a9c6b74dbd8bbdc41f69ce Author: Paul Mundt Date: Wed Dec 17 11:39:33 2008 +0900 sh: export sh_bios_get_node_addr() symbol for stnic module. Signed-off-by: Paul Mundt commit 8e32018b0428038b492dad5b19e80bf7d6dc002d Author: Paul Mundt Date: Wed Dec 17 11:37:51 2008 +0900 sh: Run sh_bios through a long overdue Lindent. Signed-off-by: Paul Mundt commit d5701647f1aaaea5da20023976d86af79ab84707 Author: Paul Mundt Date: Tue Dec 16 20:07:27 2008 +0900 serial: sh-sci: Generalize port pin initialization. Signed-off-by: Paul Mundt commit d830fa4584a4015989b9b396a80779f28f277baa Author: Paul Mundt Date: Tue Dec 16 19:29:38 2008 +0900 serial: sh-sci: Tidy up fifo overrun error handling. Signed-off-by: Paul Mundt commit 762c69e3cad67a5cc5a01ba74e0b552ae4615258 Author: Paul Mundt Date: Tue Dec 16 18:55:26 2008 +0900 serial: sh-sci: pr_debug() -> dev_dbg() conversion. Signed-off-by: Paul Mundt commit 027e68724935599417faa7dd4123c117d18e2483 Author: Paul Mundt Date: Tue Dec 16 18:36:16 2008 +0900 serial: sh-sci: Fix up the cpufreq notifier to use the proper port clock. Signed-off-by: Paul Mundt commit d9341b51f28a5eb4ce231f4a3bbfa02aaecae626 Author: Paul Mundt Date: Tue Dec 16 09:36:25 2008 +0900 sh: oprofile: Convert op_model_sh7750 to new common interface. Signed-off-by: Paul Mundt commit 40a8b421b6a85f7786bf3007d316cd799efe8ea1 Author: Dave Peverley Date: Tue Dec 16 09:35:40 2008 +0900 sh: oprofile: Backtrace support. This patch improves the oprofile support on sh and adds backtrace support. Signed-off-by: Dave Peverley Signed-off-by: Chris Smith Signed-off-by: Paul Mundt commit 60a51fbe5dd2baef0f35bcf79f25ac1ee239a660 Author: Paul Mundt Date: Tue Dec 16 09:33:53 2008 +0900 sh: oprofile: Refactor common setup code for multiple driver support. This re-implements the old op_model_null code in to something more generic, where multiple drivers, backtrace, etc. can all be interfaced. Based largely on arch/mips/oprofile/common.c. Signed-off-by: Paul Mundt commit 70fe224743c11b57f9b63326313988fdcceb54df Author: Matt Fleming Date: Tue Dec 16 09:13:05 2008 +0900 sh: Enable GENERIC_HARDIRQS_NO__DO_IRQ for all SuperH machines After the recent changes to switch SuperH board support over to irq_chip it is now possible to set GENERIC_HARDIRQS_NO__DO_IRQ for all SuperH boards. Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt commit 1a94757fae2ac2a9971694b55972f65a396a2f31 Author: Matt Fleming Date: Sun Dec 14 12:02:27 2008 +0000 sh: Convert Cayman boards from hw_interrupt_type to irq_chip I've been unable to even compile-test this change because I don't have an sh5 toolchain. All uses of hw_interrupt_type for SuperH boards have now been converted to use irq_chip. Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt commit e85a47744bbdfbcc65c94b2af67499f861c6fa42 Author: Matt Fleming Date: Sun Dec 14 12:02:26 2008 +0000 sh: Convert Dreamcast support from hw_interrupt_type to irq_chip Switch the dreamcast IRQ code over to the irq_chip way of doing things, so that we can set GENERIC_HARDIRQS_NO__DO_IRQ for all SuperH boards. Also, whilst I'm here change some things to make checkpatch.pl happy: - Indent with tabs, not with spaces - Include , not - Fix the multi-line comment style - Fix some typos in the comments Tested-by: Adrian McMenamin Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt commit bd0a22d21f26864792a0e49c20f5bd25d6c335e4 Author: Matt Fleming Date: Sun Dec 14 12:02:25 2008 +0000 sh: Convert SystemH board support from hw_interrupt_type to irq_chip ... as part of the hw_interrupt_type to irq_chip crusade. Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt commit be729fd8900f0026238539de46d867d232d1e913 Author: Matt Fleming Date: Sun Dec 14 12:02:24 2008 +0000 sh: Convert Microdev boards from hw_interrupt_type to irq_chip This is part of the SH move to irq_chip. Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt commit 180ae2037f5bc33b0597ddbb76d36b08a74a238a Author: Paul Mundt Date: Fri Dec 12 16:53:14 2008 +0900 sh: Provide sdivsi3/udivsi3/udivdi3 for sh64, kill off libgcc linking. This moves in the necessary libgcc bits and kills off the libgcc linking for sh64 kernels as well. Signed-off-by: Paul Mundt commit 209aa4fdc39eacc145a7f9c32a4b9ffcc68912c6 Author: Paul Mundt Date: Fri Dec 12 16:35:40 2008 +0900 fb: SH-5 uses __raw I/O accessors now also, drop the special casing. Signed-off-by: Paul Mundt commit 4466b20cfcfa718ff515b9e3886749cc025e2005 Author: Paul Mundt Date: Fri Dec 12 16:34:44 2008 +0900 sh: Add SH-5 optimized memcpy()/memset()/strcpy()/strlen(). Adopted from the uClibc optimized string versions. Signed-off-by: Paul Mundt commit 776d6c298aad42c2b8f191fa9ad826075e4d588c Author: Paul Mundt Date: Thu Dec 11 19:15:14 2008 +0900 sh: Kill off remaining CONFIG_SH_KGDB bits. Now that we use the generic stub, kill off all of the left over references. Signed-off-by: Paul Mundt commit 07d2a1a1cd8d609a4bc320a492670de57ec6bde1 Author: Paul Mundt Date: Thu Dec 11 19:06:43 2008 +0900 serial: sh-sci: Implement CONSOLE_POLL support and kill off old kgdb console. Signed-off-by: Paul Mundt commit ab6e570ba33dbee18c2520d386e0f367a9b573c3 Author: Paul Mundt Date: Thu Dec 11 18:46:46 2008 +0900 sh: Generic kgdb stub support. This migrates from the old bitrotted kgdb stub implementation and moves to the generic stub. In the process support for SH-2/SH-2A is also added, which the old stub never provided. Signed-off-by: Paul Mundt commit d7b01f78a3ae6a3cc21a16a1a3d377adc2227537 Author: Paul Mundt Date: Wed Dec 10 20:17:15 2008 +0900 sh: Enable HAVE_ARCH_TRACEHOOK for all SH, now that SH-5 supports it too. Signed-off-by: Paul Mundt commit dd76279b47dce2c0bd7c54997938ec4cb9f16884 Author: Paul Mundt Date: Wed Dec 10 20:14:15 2008 +0900 sh: Provide linux/regset.h interface for SH-5. Plugs in general and FPU regsets. Signed-off-by: Paul Mundt commit 94e2fb3d3e1f4cb6bad2b13c572c4c99ad734a37 Author: Paul Mundt Date: Wed Dec 10 19:46:18 2008 +0900 sh: Provide asm/syscall.h for SH-5. This provides the asm/syscall.h implementation for sh64 parts. Signed-off-by: Paul Mundt commit 6ac034375fe8b4341137657adf5e6ff0dcb5a99f Author: Paul Mundt Date: Wed Dec 10 19:26:44 2008 +0900 sh: Handle cases where setup{_rt,}_frame() fail on SH-5 signal delivery. Presently these cases are not handled properly due to the return value not being passed back. This needs to be correct to get proper behaviour out of things like the tracehook signal notifier, amongst others. Signed-off-by: Paul Mundt commit f15b2dc02fef0c53aa5ffa3c4617e184f057d402 Author: Paul Mundt Date: Wed Dec 10 19:18:46 2008 +0900 sh: Fix up syscall_get_nr() comment in syscall_32.h. Residual copy-and-paste damage, fix it up. Signed-off-by: Paul Mundt commit 35724a0aed6e62bdad640e8a1b8498329708226f Author: Paul Mundt Date: Wed Dec 10 18:17:19 2008 +0900 sh: Fix up the cpu_asid() return value on nommu. This ought to be unsigned long, rather than defaulting to int. Signed-off-by: Paul Mundt commit a99d6fde69dd9c73ac0b4e42a77ed1ebc714e56a Author: Paul Mundt Date: Wed Dec 10 18:06:36 2008 +0900 sh: Convert sh64 /proc/asids to debugfs and generic sh. This converts the sh64 /proc/asids entry to debugfs and enables it for all SH parts that have debugfs enabled. On MMU systems this can be used to determine which processes are using which ASIDs which in turn can be used for finer grained cache tag analysis. Signed-off-by: Paul Mundt commit 4d1f3bbec49a080cae753aaa44dc1fc7277b3e50 Author: Paul Mundt Date: Wed Dec 10 17:16:09 2008 +0900 sh: Kill off sh64's unused alloc/free_task_struct() definitions. These were left over from some time ago, sh64 never got around to defining __HAVE_ARCH_TASK_STRUCT_ALLOCATOR during the conversion, and it has no need to. Kill these off and use the generic versions instead. Signed-off-by: Paul Mundt commit 4eec8834f085e5eaf70e64849f879068256c07c5 Author: Paul Mundt Date: Wed Dec 10 17:09:36 2008 +0900 sh: mach-migor: Kill off unused Migo-R machvec. This kills off the special Migo-R machvec, as nothing is using it. By default this will switch to using the generic machvec, which provides the same functionality. This saves us a bit of space in the machvec section. Signed-off-by: Paul Mundt commit 4545bfa00a010b619a596b3893be820935c01bb7 Author: Magnus Damm Date: Wed Dec 10 17:02:13 2008 +0900 sh: add ov772x reset delay on Migo-R Add reset delay for the ov772x device on Migo-R. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit a6bc25abc89a72a8533dbb912a4116a8349b9d8c Author: Paul Mundt Date: Wed Dec 10 13:42:14 2008 +0900 sh: Drop the special qemu defconfig. QEMU can now use rts7751r2dplus_defconfig directly, there is no more need for a neutered defconfig. Signed-off-by: Paul Mundt commit bd40e8132336fbc3f2857f24720e11b6c1c9ac26 Author: Aoi Shinkai Date: Wed Dec 10 13:30:28 2008 +0900 sh: Delete unnecessary mov in the interrupt exception entry point. The INTEVT read at interrupt exception entry is uneccessary, as the read is deferred until we are ready to enter do_IRQ(). The kgdb nmi path still requires it, so move it there. Signed-off-by: Aoi Shinkai Signed-off-by: Paul Mundt commit 06be3724548a443a99d703ff79f43d6f1e2975f0 Author: Paul Mundt Date: Mon Dec 8 17:01:40 2008 +0900 sh: Fix an off-by-1 check in __mutex_fastpath_unlock(). Signed-off-by: Paul Mundt commit a47925ffd1b1b22ee004de36e2c8b811910616ba Author: Paul Mundt Date: Mon Dec 8 14:53:28 2008 +0900 sh: Update rsk701_defconfig to reflect mach-rsk changes. Signed-off-by: Paul Mundt commit ff15b9050677b9d63959cbca4c9abe36a05c72c9 Author: Paul Mundt Date: Mon Dec 8 14:46:55 2008 +0900 sh: Enable leds-gpio in rsk7203 defconfig. Signed-off-by: Paul Mundt commit ea0aac1e1327476d2f6a38f08145281237cf1b03 Author: Paul Mundt Date: Mon Dec 8 14:32:03 2008 +0900 sh: Consolidate rsk7203/7201 in to a new mach-rsk. RSK+ platforms have quite a few characteristics in common, so roll them together in to a shiny new RSK mach-type. Signed-off-by: Paul Mundt commit b5cfeac990cc164a3d3422aab88ac5b138fa822d Author: Paul Mundt Date: Mon Dec 8 12:02:28 2008 +0900 sh: Provide ftrace_make_call()/ftrace_make_nop(). Signed-off-by: Paul Mundt commit 4bc3e7192cf9a47d9864c4e8259859be55a480b3 Author: Paul Mundt Date: Mon Dec 8 11:49:19 2008 +0900 sh: Disable -Werror for arch/sh/oprofile/. drivers/oprofile/ objects have proven to be problematic in this regard, so simply disable -Werror for now. Signed-off-by: Paul Mundt commit 3b041227f7ef7c7e97f205c68c6069c0c62e5204 Author: Takashi YOSHII Date: Mon Dec 8 11:33:06 2008 +0900 sh: Add plain udivsi3 (not _i4*) for gcc-4.1 and lower. We chan't share code for udivsi3 and udivsi3_i4, because they have a different clobber list. Copy udivsi3 from gcc-4.1.2. As shown in arch/sh/lib/udivsi3.S (and -Os.S), .global __udivsi3_i4i .global __udivsi3_i4 .global __udivsi3 __udivsi3_i4i: ... Three symbols are sharing one code, which is actually udivsi3_i4i. But, this results unwanted code with gcc 4.1. In gcc, these three are treated as pseudo instructions that have their own clobber list apart from the usual calling convention. According to sh's machine description. The clobber list is as follows: - udivsi3_i4i : t,r1,pr,mach,macl - udivsi3_i4 : t,r0,r1,r4,r5,pr,dr0,dr2,dr4 - udivsi3 : t,r4,pr The caller of udivsi3 will be left with a broken r1 and mac*. gcc-4.1.x and older(at least to 3.4) generate udivsi3. ST's gcc-4.1.1 seems to be OK because it has _i4i. Signed-off-by: Takashi YOSHII Signed-off-by: Paul Mundt commit 1fdae0e59a3fc9e391d2422ddcfbdbdec1e8f724 Author: Nick Andrew Date: Fri Dec 5 14:07:57 2008 +1100 Fix incorrect use of loose in c-checksum.c Fix incorrect use of loose in c-checksum.c It should be 'lose', not 'loose'. Signed-off-by: Nick Andrew Signed-off-by: Paul Mundt commit 77ba93a7ac5fb0d9338bffbf97c787b8efe00806 Author: Paul Mundt Date: Mon Dec 8 11:25:50 2008 +0900 sh: Fix up the SH-4A mutex fastpath semantics. This fixes up the __mutex_fastpath_xxx() routines to match the semantics noted in the comment. Previously these were looping rather than doing a single-pass, which is counter-intuitive, as the slow path takes care of the looping for us in the event of contention. Signed-off-by: Paul Mundt commit c6f17cb2272121475c87592560534b157b17544e Author: Magnus Damm Date: Thu Dec 4 22:45:20 2008 +0900 sh: allow CONFIG_CPU_IDLE Allow users to select CONFIG_CPU_IDLE regardless of processor type or board. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit af998a9a0ae3291e86ddcae8e196a1cbf82c2457 Author: Magnus Damm Date: Thu Dec 4 22:45:12 2008 +0900 sh: allow CONFIG_PM Allow users to select CONFIG_PM regardless of processor type or board. Suspend and hibernation are only allowed on supported platforms. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 3e51762759db9e26c6c3e4e1010d80a50c62ca03 Author: Magnus Damm Date: Thu Dec 4 22:45:03 2008 +0900 sh: move the hp6xx pm code Move the not-so-generic pm code from arch/sh/kernel/pm.c to the platform directory together with the rest of the hp6xx pm code. This is done to let non-hp6xx platforms enable CONFIG_PM. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 04645185d06e8b0c92f6f1f9d76ede45637afc09 Author: Magnus Damm Date: Thu Dec 4 18:00:39 2008 +0900 sh: update se7343 defconfig Update the se7343 defconfig with: - use 33MHz PCLK - increase max number of SCIFs - add serial console configuration to compiled-in kernel command line - add 8250 serial port support - add sh-mobile-i2c driver - add uio driver to export VEU and VPU - add usb support and isp1161 host controller - add dm9601 ethernet-over-usb support - remove smc91x support Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 21c601bb2ec79be5c52a99bc6f4b513aff4fa236 Author: Magnus Damm Date: Thu Dec 4 18:00:30 2008 +0900 sh: remove ioport cruft and smc91x from se7343 Remove out-of-date se7343 ioport code including some old support for unknown-ne2000-pcmcia-card, cf-over-pcmcia and a mysterical smc91x that once must have been on a special daughterboard. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 5e5aacb0de70fa80e8b1a2b803ae9e2ad40b8e52 Author: Magnus Damm Date: Thu Dec 4 18:00:22 2008 +0900 sh: add isp1161 usb host device to se7343 Add isp1161 platform data to get usb host working on se7343. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 6aacba72dbdadc1445244e366ecf0263a160409e Author: Magnus Damm Date: Thu Dec 4 18:00:11 2008 +0900 sh: add st16c2550 devices to se7343 Add 8250 platform data to setup the ST16C2550C chip on se7343. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 5727003b5d23eb852c057d25459bba27cbf754c3 Author: Magnus Damm Date: Thu Dec 4 18:00:02 2008 +0900 sh: fix number of interrupts on se7343 Fix to make sure that the on-board interrupt sources are included in the interrupt count on se7343. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 551ea2b40ecf75e0035406fe75ba995233737e76 Author: Magnus Damm Date: Thu Dec 4 17:59:54 2008 +0900 sh: sh7343 scif configuration update Fix interrupt values for the first sh7343 SCIF port and update the configuration to include the remaining 3 ones. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 0c0daec7ca4f6a67daeafc4343bb453a4a246dbd Author: Magnus Damm Date: Mon Dec 1 15:40:33 2008 +0900 sh: propagate r_clk Make sure the 32 KHz r_clk rate gets propagated correctly. Without this fix the clocks for RTC, CMT, KEYSC and RWDT are stuck at 0 Hz. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 6feb348783767e3f38d7612e6551ee8b580ac4e9 Author: Peter Griffin Date: Fri Nov 28 22:56:45 2008 +0900 sh: RSK+ 7201 board support. This patch adds support for the RTE RSK+ 7201 board. Signed-off-by: Peter Griffin Signed-off-by: Paul Mundt commit 2825999e8a9bd7ab7e25a7e7475c7cdd10371a13 Author: Peter Griffin Date: Fri Nov 28 22:48:20 2008 +0900 sh: Add support for SH7201 CPU subtype. This patch adds support for the SH-2A FPU based SH7201 processor subtype. Signed-off-by: Peter Griffin Signed-off-by: Paul Mundt commit 135210b378d26f9a9a0c901d0089522c06b5807a Author: Matt Fleming Date: Fri Nov 28 08:58:30 2008 +0000 sh: Switch HD64461 from hw_interrupt_type to irq_chip Use struct irq_chip for the interrupt handler for the HD64461. Also convert some in{b,w} and out{b,w} calls to the equivalent __raw_* calls. Include and not to stop checkpatch.pl complaining. This change should now allow machines with HD64461 to define GENERIC_HARDIRQS_NO__DO_IRQ. Acked-by: Kristoffer Ericson Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt commit 331ff103c7737294c8ecd7921564dae07b9e4632 Author: Yoshihiro Shimoda Date: Thu Nov 27 18:57:35 2008 +0900 sh: pci-sh7780: fix pci memory address mask Fix the problem that cannot work a PCI device when system memory size is 256Mbyte in 29bit address mode. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Paul Mundt commit 22f131aa8de7a534339bf7051680234462f2e877 Author: Paul Mundt Date: Thu Nov 27 11:04:43 2008 +0900 sh: Provide a dyn_arch_ftrace struct definition. Needed for dynamic ftrace API changes. Signed-off-by: Paul Mundt commit 1da1180c6e28cf21be356e2701978727558fa198 Author: Paul Mundt Date: Wed Nov 26 15:52:44 2008 +0900 sh: Split out the idle loop for reuse between _32/_64 variants. Signed-off-by: Paul Mundt commit eb67cf14ae5c21609c200859d6f3eba71c591569 Author: Paul Mundt Date: Wed Nov 26 15:47:44 2008 +0900 sh: Consolidate cpu_relax()/cpu_sleep() definitions across _32/_64. Signed-off-by: Paul Mundt commit f74c034d52d0f908d5b929423a680962a2586199 Author: Paul Mundt Date: Wed Nov 26 15:22:50 2008 +0900 sh: do not latency trace idle. Description snipped from Steven Rostedt's PPC patch: When idle is called, interrupts are blocked, but the idle function will still wake up on an interrupt. The problem is that the interrupt disabled latency tracer will take this call to idle as a latency. This patch disables the latency tracing when going into idle. Signed-off-by: Paul Mundt commit 75fd24c1073adcd1e8ea43048d946bbfa34dfc64 Author: Paul Mundt Date: Wed Nov 26 15:20:35 2008 +0900 sh: Tidy up backtrace formatting with kallsyms disabled. Signed-off-by: Paul Mundt commit 9cfc9a9b6fff9ea7a19814b4472b3cb18b7bbdcc Author: Paul Mundt Date: Wed Nov 26 14:31:03 2008 +0900 sh: Add a simple code dumper for SUPERH32 show_regs(). This implements a simple show_code() that is in turn plugged in to show_regs() to provide minimal code dumping at the end of the trace. Built on top of a simple instruction disassembler derived from the binutils opcode table. Signed-off-by: Paul Mundt commit edfd6da0405520b147ab1473ad183a5b32be7082 Author: Paul Mundt Date: Wed Nov 26 13:06:04 2008 +0900 sh: Add a few more branch types to the branch emulator. This plugs in some extra encodings for matching more bsr/bsrf/jsr branches. Signed-off-by: Paul Mundt commit 5dd614761f05f56b93c94541aa92e6449920516c Author: Paul Mundt Date: Wed Nov 26 04:21:36 2008 +0900 sh: Re-add support for best fit ISA tuning if none is available. This was removed in the libgcc integration, but there are still some compilers that need this. We also relax the rules on the ISA tuning in the cases where there are no matches for the CPU tuning and adopt the -any default, which matches the intent of the isa-y target list. This compensates for mismatches where binutils supports a wide array of targets whilst the compiler is much more restricted. Signed-off-by: Paul Mundt commit 624c6a6750c502981d92de4579647fe2549451dd Author: Paul Mundt Date: Wed Nov 26 03:44:07 2008 +0900 sh: More movmem alias symbol exports for older compilers. Signed-off-by: Paul Mundt commit 95b781c239f53b4c7ecaf2989404ec6379b2409b Author: Paul Mundt Date: Wed Nov 26 00:29:58 2008 +0900 sh: Provide optimized unaligned loads on SH-4A. This adds support for unaligned loads on SH-4A, using the SH-4A's neutered movua.l instruction. As movua.l is r0-inspired, stores are still handled through the packed struct. Based on asm-generic/unaligned.h by Harvey Harrison. Signed-off-by: Paul Mundt commit 716777db7270255f1f7210fd87a7188b08c9a267 Author: Magnus Damm Date: Tue Nov 25 21:57:29 2008 +0900 sh: P4 ioremap pass-through This patch adds a pass-through case when ioremapping P4 addresses. Addresses passed to ioremap() should be physical addresses, so the best option is usually to convert the virtual address to a physical address before calling ioremap. This will give you a virtual address in P2 which matches the physical address and this works well for most internal hardware blocks on the SuperH architecture. However, some hardware blocks must be accessed through P4. Converting the P4 address to a physical and then back to a P2 does not work. One example of this is the sh7722 TMU block, it must be accessed through P4. Without this patch P4 addresses will be mapped using PTEs which requires the page allocator to be up and running. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 0c9122323acb0c3410dfbd219cb47f4c2e9305e3 Author: Michael Trimarchi Date: Tue Nov 25 21:37:14 2008 +0900 sh: Add SH-4A optimized fastpath mutex implementation. Add fast mutex path implementation for the SH4A architecture Signed-off-by: Michael Trimarchi Signed-off-by: Paul Mundt commit 5c72f303a2b7862dbba79f4176ddc922a440b567 Author: Nobuhiro Iwamatsu Date: Fri Nov 21 14:35:29 2008 +0900 sh: sh7760fb: Add support SH7720/SH7721 of Renesas SH7720 and 7721 has IP of Frame Buffer same as SH7760. This driver can support these. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Paul Mundt commit 679dc3c92ca7894c3df70ee3333ff9878e7d90b9 Author: Nobuhiro Iwamatsu Date: Fri Nov 21 14:34:25 2008 +0900 sh: sh7760fb: Fix color pallette setting The setting of the color palette was wrong, fixed it. And removed fb_setcmap, and added fb_setcolreg function. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Paul Mundt commit f617682e9cabd5616dc2fe53c67762790eeb14d3 Author: Steve Glendinning Date: Sun Nov 23 15:00:31 2008 +0000 sh: add SH DMAC burst mode constant The SH7709 datasheet defines bit 5 as set for burst mode, clear for cycle-steal mode. Signed-off-by: Steve Glendinning Signed-off-by: Paul Mundt commit c2c5883b3fce61388eb02ca328072400eb54769c Author: Steve Glendinning Date: Sun Nov 23 14:27:22 2008 +0000 sh: fix DMAOR register access on SH7709 sh7709 hardware manual says DMAOR is 16 bits long on this platform. Tested and working with a modified smsc911x ethernet driver (sh-dma support patch for this driver is coming soon). Signed-off-by: Steve Glendinning Signed-off-by: Paul Mundt commit 8085ac753164f45fd23603e7cad85a4c985cbf75 Author: Steve Glendinning Date: Sun Nov 23 14:27:21 2008 +0000 sh: Add platform-specific constants for SH7709 I'm using these constants in support of an in-house development board, and thought they may be useful to other users of SH7709. Signed-off-by: Steve Glendinning Signed-off-by: Paul Mundt commit 0d5bbe0bc2583c4dc06ea00adccf07c3acd1481d Author: Paul Mundt Date: Tue Nov 25 21:22:02 2008 +0900 sh: Provide optimized non-atomic bitops for SH-2A. This ties in the new SH-2A 32-bit non-atomic bitops. Signed-off-by: Paul Mundt commit 8bcc5c1c332af97ba731f99fda780a47911e476f Author: Paul Mundt Date: Thu Nov 20 15:28:47 2008 +0900 sh: Add -m4al tuning for SH4AL-DSP. Signed-off-by: Paul Mundt commit 9ef100287afa8e134de50258b8382cbc9d20f954 Author: Paul Mundt Date: Thu Nov 20 15:26:35 2008 +0900 sh: Add exports for __udivsi3/__sdivsi3 and the _i4 versions. Needed by older compilers. Signed-off-by: Paul Mundt commit 16b529d1d78060254d5bc735390915ca5ccf13a1 Author: Paul Mundt Date: Thu Nov 20 15:25:22 2008 +0900 sh: Convert to generic bitops for IRQ-toggling implementation. Signed-off-by: Paul Mundt commit 709420dd4e75083ee7920e61c2d0bcc3db9b7405 Author: Paul Mundt Date: Tue Nov 18 17:35:45 2008 +0900 sh: Specify sane default image targets for the SH-2 platforms. Signed-off-by: Paul Mundt commit 1aad54a99b6ce316c851ba99b2efe41998cfd37d Author: Paul Mundt Date: Tue Nov 18 17:33:48 2008 +0900 sh: Migrate necessary libgcc bits in to arch/sh/lib for SUPERH32. This moves in the necessary libgcc bits for SUPERH32 and drops the libgcc linking for the regular targets. This in turn allows us to rip out quite a few hacks both in sh_ksyms_32 and arch/sh/Makefile. Signed-off-by: Paul Mundt commit e9bf51e5ccc7703226c79888603e157066213700 Author: Paul Mundt Date: Tue Nov 18 14:22:39 2008 +0900 sh: __udivdi3 -> do_div() in softfloat lib. Inhibit the generation of __udivdi3 for the softfloat lib, use do_div() outright. Signed-off-by: Paul Mundt commit 00e825c6b99b39f12751ea45d38bb4d900de70f4 Author: Paul Mundt Date: Tue Nov 18 14:21:34 2008 +0900 sh: Fix clock framework compiler warnings. CC arch/sh/kernel/cpu/clock.o arch/sh/kernel/cpu/clock.c: In function 'clk_disable': arch/sh/kernel/cpu/clock.c:156: warning: 'return' with a value, in function returning void Introduced by ("sh: enable and disable clocks recursively"). Signed-off-by: Paul Mundt commit d6435102d4ca3b5655c0105abe924abec17ffeb8 Author: Paul Mundt Date: Tue Nov 18 12:40:39 2008 +0900 usb: Fix up sh_mobile usbf clock framework warnings. drivers/usb/gadget/m66592-udc.c: In function 'm66592_probe': drivers/usb/gadget/m66592-udc.c:1672: warning: label 'clean_up2' defined but not used drivers/usb/host/r8a66597-hcd.c: In function 'r8a66597_probe': drivers/usb/host/r8a66597-hcd.c:2401: warning: label 'clean_up2' defined but not used Added by commit 985fc7c81c7852f2e104c71cbe913ace683c9e6a ("sh: sh_mobile usbf clock framework support"). Reported-by: Stephen Rothwell Signed-off-by: Paul Mundt commit e7c98dc76d5823444059205e0c7aca49743679f3 Author: Michael Trimarchi Date: Thu Nov 13 18:18:35 2008 +0900 serial: sh-sci: Codestyle cleanup patch. Trivial coding style cleanups. Signed-off-by: Michael Trimarchi Signed-off-by: Paul Mundt commit af505b1eab55445e832bebbe5686f5bd22f1b717 Author: Paul Mundt Date: Thu Nov 13 12:20:26 2008 +0900 media: sh_mobile_ceu_camera: Add HAVE_CLK dependency. Signed-off-by: Paul Mundt commit fad57feba77d2e5b183e068cb6b90693e4567b40 Author: Matt Fleming Date: Wed Nov 12 20:11:47 2008 +0900 sh: dynamic ftrace support. First cut at dynamic ftrace support. Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt commit ef6aff6884408db95ceb0f678f583536e0bd48f8 Author: Magnus Damm Date: Fri Oct 31 20:24:01 2008 +0900 sh: remove old sh_mobile mstpc clocks Remove the old sh_mobile mstpcr clocks. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit b51339fff240ff179730f8963a758147fd60f3ec Author: Magnus Damm Date: Fri Oct 31 20:23:26 2008 +0900 sh: sh_mobile lcdc clock framework support Add clock framework support to the lcdc driver and adjust the board specific code accordingly. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 765786e0aead7faf6c333176d22948c6f155fff1 Author: Magnus Damm Date: Fri Oct 31 20:22:38 2008 +0900 sh: sh_mobile usb clock framework support Add clock framework support to the usb/r8a66597 driver and adjust the cpu specific code accordingly. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit af5be79a7f8d7067588dc2863d37f7cd22e5f2de Author: Magnus Damm Date: Fri Oct 31 20:22:13 2008 +0900 sh: sh_mobile usbf clock framework support Add clock framework support to the usbf/m66592 driver and adjust the cpu specific code accordingly. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit a42b6dd69cb1c61c5f5a24061a227c22071786de Author: Magnus Damm Date: Fri Oct 31 20:21:44 2008 +0900 sh: sh_mobile ceu clock framework support Add clock framework support to the sh_mobile ceu and adjust the board specific code accordingly. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 090d951b69f29a8d5777c63570d4cd61d7efeb22 Author: Magnus Damm Date: Fri Oct 31 20:21:23 2008 +0900 sh: sh_mobile keysc clock framework support Add clock framework support to the sh_mobile keysc driver and adjust the board specific code accordingly. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit a5616bd0f19730a780c354110454ce37209f1ded Author: Magnus Damm Date: Fri Oct 31 20:20:55 2008 +0900 sh: sh_mobile i2c clock framework support Add clock framework support to the sh_mobile i2c driver and adjust the processor specific code accordingly. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit f2eb0109fb4268505b0737cfe661542eb6151907 Author: Magnus Damm Date: Fri Oct 31 20:20:23 2008 +0900 sh: sh_mobile mstpcr clocks for sh7366 Add sh7366 mstpcr bits and information about their parent clocks. The datasheet is pretty clear about the clocks on this device. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 6e88d030a1491ec0f130dc4765d06b22f7db6610 Author: Magnus Damm Date: Fri Oct 31 20:19:38 2008 +0900 sh: sh_mobile mstpcr clocks for sh7343 Add sh7343 mstpcr bits and information about their parent clocks. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit f14c017d6b2e9e97b0d5f0b33f573797dde4d4f1 Author: Magnus Damm Date: Fri Oct 31 20:16:08 2008 +0900 sh: sh_mobile mstpcr clocks for sh7723 Add sh7723 mstpcr bits and information about their parent clocks. The datasheet is pretty clear about the clocks on this device. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit ecf399bdafb83b6c0091837dd2a0612470e9c8d2 Author: Magnus Damm Date: Fri Oct 31 20:15:48 2008 +0900 sh: sh_mobile mstpcr clocks for sh7722 Add sh7722 mstpcr bits and information about their parent clocks. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 7c7e02a28b4e7212dcdcc24bbd2b137790504a84 Author: Magnus Damm Date: Fri Oct 31 20:15:07 2008 +0900 sh: new sh_mobile mstpcr clocks base code Add base code to handle new mstpcr clocks. Make sure clock rates propagate. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 1dc7b776d91ac9f016982e418e74cb14f63c5b02 Author: Magnus Damm Date: Fri Oct 31 20:14:28 2008 +0900 sh: use arch_flags for sh_mobile mstpcr clock bits Use arch_flags to keep track of register and flag number. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit d902d04f5410176bdec77bfefa032516326eb542 Author: Magnus Damm Date: Fri Oct 31 20:14:03 2008 +0900 sh: sh_mobile clock divider index fix Use divider index value instead of divider value. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit d12cfac146d2b512496bf974b83ee1210032065f Author: Magnus Damm Date: Fri Oct 31 20:13:32 2008 +0900 sh: enable and disable clocks recursively Recurse and make sure parent clocks get enabled/disabled. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 4a4a9be3ebdbf17957d29e3521f328a1145f9431 Author: Paul Mundt Date: Wed Nov 12 13:17:38 2008 +0900 sh: Move arch_get_unmapped_area() in to arch/sh/mm/mmap.c. Now that arch/sh/mm/mmap.c exists, move arch_get_unmapped_area() there. Follows the ARM change. Signed-off-by: Paul Mundt commit 826e08b0157c0ce8a80dfe3c0a6c5a1540dd0b1d Author: Ingo Molnar Date: Mon Dec 22 07:37:41 2008 +0100 sched: fix warning in fs/proc/base.c Stephen Rothwell reported this new (harmless) build warning on platforms that define u64 to long: fs/proc/base.c: In function 'proc_pid_schedstat': fs/proc/base.c:352: warning: format '%llu' expects type 'long long unsigned int', but argument 3 has type 'u64' asm-generic/int-l64.h platforms strike again: that file should be eliminated. Fix it by casting the parameters to long long. Reported-by: Stephen Rothwell Signed-off-by: Ingo Molnar commit d3d317092b58a6df1d31a4ca90cdb9d2bd4ebffa Author: Matt Carlson Date: Sun Dec 21 20:21:52 2008 -0800 tg3: Update version to 3.97 This patch updates the version number to 3.97. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit aa10f27d99410cff9145bf91b6efc884c7a4871c Author: Matt Carlson Date: Sun Dec 21 20:21:18 2008 -0800 tg3: tg3.h cleanups This patch cleans up the tg3 header file by removing the preprocessor definitions for standard PCI configuration space registers. The driver should be using the standard definitions when needed. The patch continues by removing redundant PHY related definitions and reorganizes some of the remaining entries. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 69fc405318967c7913e5b55cf3906250a26b49d0 Author: Matt Carlson Date: Sun Dec 21 20:19:57 2008 -0800 tg3: Remove unused cfgspc device members This patch removes the pci_bist and pci_hdr_type members from the device structure and removes the code that references them. They are not really used. The patch rounds out the changes by moving the pci_cmd member to plug a structure hole that would have been created. On 32-bit systems, this movement removes a subsequent structure hole later in the structure. On 64-bit systems though, the movement merely consolidates two holes into one larger hole. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 027455adacdc142cc018e555ce391014fa227e70 Author: Matt Carlson Date: Sun Dec 21 20:19:30 2008 -0800 tg3: Cleanup IPV6 LSO This patch attempts to make the relationship between IPV6 checksum offload and IPV6 LSO more obvious. The patch also toggles a bit needed for IPV6 LSO on 5785 and 57780 devices. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 2023276ebf074a01eb56f38ed4d04deef1deee67 Author: Matt Carlson Date: Sun Dec 21 20:18:56 2008 -0800 tg3: WOL fixes The first hunk of this patch inverts a flag that was accidentally toggled as part of commit 0a459aac9d151c2e36ec65723b9b845b24c5cbc3 ("tg3: Allow WOL for phylib controlled Broadcom phys"). The second hunk of the patch removes the call to device_may_wakeup() in the 5906 config detection path. At the point of the call, the driver shouldn't be querying for WOL capability. It should be detecting and setting it. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 7f3ff4f63f76c2702da6041d2da5eb30fac407f6 Author: Jarek Poplawski Date: Sun Dec 21 20:14:48 2008 -0800 pkt_sched: Annotate uninitialized var in sfq_enqueue() Some gcc versions warn that ret may be used uninitialized in sfq_enqueue(). It's a false positive, so let's annotate this. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit bfb8cc31b11ccaf7cd55fd9e0f4794f82527948f Author: Don Skidmore Date: Sun Dec 21 20:11:04 2008 -0800 ixgbe: fix the display of DCB control stats in ethtool Priority flow contol statistics for Data Center Bridging (DCB) weren't included in ethtool. This patch adds them. Signed-off-by: Don Skidmore Signed-off-by: Eric W Multanen Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit f4314e815e87b4ab1c9b1115dd5853cd20ca999c Author: Don Skidmore Date: Sun Dec 21 20:10:29 2008 -0800 net: add DCNA attribute to the BCN interface for DCB Adds the Backward Congestion Notification Address (BCNA) attribute to the Backward Congestion Notification (BCN) interface for Data Center Bridging (DCB), which was missing. Receive the BCNA attribute in the ixgbe driver. The BCNA attribute is for a switch to inform the endstation about the physical port identification in order to support BCN on aggregated links. Signed-off-by: Don Skidmore Signed-off-by: Eric W Multanen Signed-off-by: Jeff Kirsher commit 1486a61ebcd2711532f8163d30babc40e11e7b40 Author: Don Skidmore Date: Sun Dec 21 20:09:50 2008 -0800 net: fix DCB setstate to return success/failure Data Center Bridging (DCB) had no way to know if setstate had failed in the driver. This patch enables dcb netlink code to handle the status for the DCB setstate interface. Likewise it allows the driver to return a failed status if MSI-X isn't enabled. Signed-off-by: Don Skidmore Signed-off-by: Eric W Multanen Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit c2da953a46b18b7515ad476c1c1686640a12e93a Merge: c94cb31... 9cf7f24... Author: David S. Miller Date: Sun Dec 21 19:57:10 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 59f8500efb05096484a55263109acab6a6df89d5 Author: Krzysztof Hałasa Date: Mon Dec 22 02:00:17 2008 +0100 Convert ixp4xx_eth driver to use net_device_ops. Signed-off-by: Krzysztof Hałasa commit 4cb56b685617732733d4d9dffbf8c5a81d4a0c71 Author: Julia Lawall Date: Sun Dec 21 16:39:15 2008 +0100 drivers/net/wan: Remove redundant test arg is checked not to be NULL a few lines before. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: Krzysztof Hałasa commit 93bc933524d05e3b391358e24b3666599f8ec026 Author: Krzysztof Hałasa Date: Wed Nov 26 23:06:57 2008 +0100 HDLC_PPP: Fix Configure-Ack to return original options as required by the standard. Signed-off-by: Krzysztof Hałasa commit e6da96ace859dad966fe85cc9552b89f48bbc930 Author: Krzysztof Hałasa Date: Mon Dec 22 00:26:38 2008 +0100 IXP4xx: move common debugging from network drivers to QMGR module. Signed-off-by: Krzysztof Hałasa commit 9251ce959cab704eb0e4910860b06b18e7083474 Author: Krzysztof Hałasa Date: Sun Dec 21 23:52:36 2008 +0100 Update MAINTAINERS entries for IXP4xx and WAN network drivers. Signed-off-by: Krzysztof Hałasa commit f5b89e41ce7a980aa2fd8ad105626b9ed4e8d347 Author: Krzysztof Hałasa Date: Sun Dec 21 23:52:18 2008 +0100 WAN: Add IXP4xx HSS HDLC driver. Signed-off-by: Krzysztof Hałasa commit 490b77224fe66c77ab7cb48d6b77e62cb55591a0 Author: Krzysztof Hałasa Date: Sun Dec 21 00:02:34 2008 +0100 IXP4xx: Add ethtool support to Ethernet driver. Signed-off-by: Krzysztof Hałasa commit 4954936e25cb8ce99a96cac9dd9417d7b639867a Author: Krzysztof Hałasa Date: Sat Dec 20 18:57:23 2008 +0100 IXP4xx: Add PHYLIB MII ioctl to the Ethernet driver. Signed-off-by: Krzysztof Hałasa commit 2098c18d6cf65358dd1620154bdedbc8c8d36f44 Author: Krzysztof Hałasa Date: Sat Dec 20 01:53:08 2008 +0100 IXP4xx: Add PHYLIB support to Ethernet driver. Signed-off-by: Krzysztof Hałasa commit b4c7d3b07257528d3c0bfd07c5b38b48beb9b6d1 Author: Krzysztof Hałasa Date: Sat Dec 20 01:58:59 2008 +0100 IXP4xx: Make the Ethernet driver use built-in netdev stats. Signed-off-by: Krzysztof Hałasa commit 3c36a837a960ccbff05fa773a495c389fbd42f0e Author: Krzysztof Hałasa Date: Wed Nov 26 22:59:18 2008 +0100 IXP4xx: Silence section mismatch warning in Ethernet driver. Signed-off-by: Krzysztof Hałasa commit ae2754a975694a3865788e303b741d0f616bc43a Author: Krzysztof Hałasa Date: Fri May 9 02:14:09 2008 +0200 IXP4xx: clear IRQ stat in qmgr_disable_irq(). Signed-off-by: Krzysztof Hałasa commit 3edcfb2937054fb546ecf3a8883675751db16c6f Author: Krzysztof Hałasa Date: Thu May 8 23:18:31 2008 +0200 IXP4xx: check for queue being empty in qmgr_release_queue(). Signed-off-by: Krzysztof Hałasa commit bba7ebba3b17f4fe8c5907a32e16d9bd3fcf5192 Author: David Disseldorp Date: Sun Dec 21 13:56:50 2008 -0800 IB/iser: Avoid recv buffer exhaustion caused by unexpected PDUs iSCSI/iSER targets may send PDUs without a prior request from the initiator. RFC 5046 refers to these PDUs as "unexpected". NOP-In PDUs with itt=RESERVED and Asynchronous Message PDUs occupy this category. The amount of active "unexpected" PDU's an iSER target may have at any time is governed by the MaxOutstandingUnexpectedPDUs key, which is not yet supported. Currently when an iSER target sends an "unexpected" PDU, the initiators recv buffer consumed by the PDU is not replaced. If over initial_post_recv_bufs_num "unexpected" PDUs are received then the receive queue will run out of receive work requests entirely. This patch ensures recv buffers consumed by "unexpected" PDUs are replaced in the next iser_post_receive_control() call. Signed-off-by: David Disseldorp Signed-off-by: Ken Sandars Acked-by: Or Gerlitz Signed-off-by: Roland Dreier commit 139cdab0a2af6f5eaee47cc0144608e53b65279d Author: Julia Lawall Date: Sun Dec 21 13:29:13 2008 -0800 IB/ehca: Remove redundant test of vpage vpage is checked not to be NULL just after it is initialized at the beginning of each loop iteration. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; expression E; position p1,p2; @@ if (x@p1 == NULL || ...) { ... when forall return ...; } ... when != \(x=E\|x--\|x++\|--x\|++x\|x-=E\|x+=E\|x|=E\|x&=E\|&x\) ( x@p2 == NULL | x@p2 != NULL ) // another path to the test that is not through p1? @s exists@ local idexpression r.x; position r.p1,r.p2; @@ ... when != x@p1 ( x@p2 == NULL | x@p2 != NULL ) @fix depends on !s@ position r.p1,r.p2; expression x,E; statement S1,S2; @@ ( - if ((x@p2 != NULL) || ...) S1 | - if ((x@p2 == NULL) && ...) S1 | - BUG_ON(x@p2 == NULL); ) // Signed-off-by: Julia Lawall Signed-off-by: Roland Dreier commit 418441d9ebe84b205cb23eb0ab214c1f991621fe Author: Wolfram Sang Date: Sun Dec 21 02:54:32 2008 -0700 powerpc/mpc5200: fix error paths in PSC UART probe function - error cases for mapbase and irq were unbundled - mapped irq now gets disposed on error Signed-off-by: Wolfram Sang Signed-off-by: Grant Likely commit aec739e010f8163eac225f4e331ac7fbd59ac5c8 Author: Wolfram Sang Date: Sun Dec 21 02:54:32 2008 -0700 powerpc/mpc5200: add rts/cts handling in PSC UART driver Add RTS/CTS-support for the PSC of the MPC5200B. Tested with a Phytec MPC5200B-IO. Signed-off-by: Wolfram Sang Signed-off-by: Grant Likely commit b65149880d0467287fa4c7b4f19953392323f4ac Author: René Bürgel Date: Sun Dec 21 02:54:31 2008 -0700 powerpc/mpc5200: Make PSC UART driver update serial errors counters This patch adds the capability to the mpc52xx-uart to report framing errors, parity errors, breaks and overruns to userspace. These values may be requested in userspace by using the ioctl TIOCGICOUNT. Signed-off-by: René Bürgel Signed-off-by: Grant Likely commit e51f47a5c695b76905aadc2be47c7dc774f3e5af Author: Wolfram Sang Date: Sun Dec 21 02:54:30 2008 -0700 powerpc/mpc5200: Remove obsolete code from mpc5200 MDIO driver As this driver polls for a complete MDIO transaction, there is no need to enable interrupts for it. Furthermore, make both checks for freeing MDIO-bus irqs consistent. Signed-off-by: Wolfram Sang Signed-off-by: Grant Likely commit 6b61e69e7bc1cfe80ab54c6321f19061f9487ed3 Author: Tim Yamin Date: Sun Dec 21 02:54:29 2008 -0700 powerpc/mpc5200: Add MDMA/UDMA support to MPC5200 ATA driver This patch adds MDMA/UDMA support using BestComm for DMA on the MPC5200 platform. Based heavily on previous work by Freescale (Bernard Kuhn, John Rigby) and Domen Puncer. With this patch, a SanDisk Extreme IV CF card gets read speeds of approximately 26.70 MB/sec. Signed-off-by: Tim Yamin Signed-off-by: Grant Likely commit aaab5e83c2c25d94f7409bdc947a5cc383514e15 Author: Grant Likely Date: Sun Dec 21 02:54:28 2008 -0700 powerpc/mpc5200: Disable bestcomm prefetching when ATA DMA enabled When ATA DMA is enabled, bestcomm prefetching does not work. This patch adds a function to disable bestcomm prefetch when the ATA Bestcomm task is initialized. Signed-off-by: Grant Likely commit e4efe3c271c5498ffe7e167eaff01514be2b9a77 Author: Tim Yamin Date: Sun Dec 21 02:54:28 2008 -0700 powerpc/mpc5200: Bestcomm fixes to ATA support 1) ata.h has dst_pa in the wrong place (needs to match what the BestComm task microcode in bcom_ata_task.c expects); fix it. 2) The BestComm ATA task priority was changed to maximum in bestcomm_priv.h; this fixes a deadlock issue experienced with heavy DMA occurring on both the ATA and Ethernet BestComm tasks, e.g. when downloading a large file over a LAN to disk. Signed-off-by: Tim Yamin Signed-off-by: Grant Likely commit 622882455aa718cfbd6785cc5fbc479f1d976095 Author: Grant Likely Date: Sun Dec 21 02:54:27 2008 -0700 powerpc/mpc5200: Bugfix on handling variable sized buffer descriptors The buffer descriptors for the ATA BestComm task are larger than the current definition for bcom_bd. This causes problems because the various bcom_... functions dereference the buffer descriptor pointer by using the array operator which doesn't work when the buffer descriptors are a different size. This patch adds the bcom_get_bd() function which uses the value in bcom_task.bd_size to calculate the offset into the BD table. This patch also changes the definition of bcom_bd to specify a data size of 0 instead of 1 so that it will never work if anyone attempts to dereference the bd list as an array (as opposed to something that might work even though it is wrong). Finally, this patch moves the definition of bcom_bd up in the file to eliminate a forward declaration. Based on patch originally written by Tim Yamin. Signed-off-by: Tim Yamin Signed-off-by: Grant Likely commit dd952cbb3dae9ea2dc47cc902b796e1e2bf806f0 Author: Grant Likely Date: Sun Dec 21 02:54:27 2008 -0700 powerpc/mpc5200: Make internal 5200 PIC the default interrupt controller The MPC5200 internal interrupt controller setup function needs to set the default interrupt controller when it is called. Without this irq_create_of_mapping() cannot be called without first determining the pointer to the irq controller (ie. call with controller = NULL). Reported-by: Steven Cavanagh Signed-off-by: Grant Likely commit bcb73f5611c1946db768a1c219d205b3bf90f4a5 Author: Grant Likely Date: Sun Dec 21 02:54:26 2008 -0700 powerpc/mpc5200: Document and tidy irq driver This patch adds documentation to the mpc5200 interrupt controller driver and cleans up some minor coding conventions. It also moves the contents of mpc52xx_pic.h into the driver proper (except for a small common bit that is moved to the common mpc52xx.h) because the information encoded there is not required by any other part of kernel code. Finally for code readability sake, the L2_OFFSET shift value is removed because the code using it resolves to a noop. Signed-off-by: Grant Likely commit a14953597b771f793ce32529d7b8b04fdedca3ef Author: Benjamin Herrenschmidt Date: Sun Dec 21 02:54:25 2008 -0700 powerpc: Fix missing 'blr' in _tlbia() Rework to MMU code dropped a much missed 'blr' instruction. Brown-Paper-Bag-Worn-By: Benjamin Herrenschmidt Signed-off-by: Grant Likely commit 3ddeb912f41801fd1968c7880d031702a396e4d0 Author: Lai Jiangshan Date: Sat Dec 20 17:15:14 2008 +0800 ftrace: enable format arguments checking Impact: broaden gcc printf format checks for ftrace_printk() format arguments checking for ftrace_printk() is __printf(1, 2), not __printf(1, 0). Signed-off-by: Lai Jiangshan Signed-off-by: Ingo Molnar commit 49e6e3f1aec2d46f5865d3ada38fe9a5d660ef5d Author: Scott Wood Date: Fri Dec 19 10:13:09 2008 +0000 powerpc/bootwrapper: Use the child-bus #address-cells to decide which range entry to use The correct #address-cells was still used for the actual translation, so the impact is only a possibility of choosing the wrong range entry or failing to find any match. Most common cases were not affected. Signed-off-by: Scott Wood Signed-off-by: Paul Mackerras commit e14d77490d3e1da833cff4fee52674c52684ce77 Author: Grant Erickson Date: Fri Dec 19 08:17:54 2008 +0000 powerpc: Const-qualify Device Node Argument to DCR Resource Extent API Add const qualifier to device_node argument for dcr_resource_{start,len} as of_get_property also const-qualifies this argument. Signed-off-by: Grant Erickson Signed-off-by: Paul Mackerras commit 9dce3ce5c55c848f00429005a46fd6246cfabfbe Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:54 2008 +0000 powerpc/44x: 44x TLB doesn't need "Guarded" set for all pages After discussing with chip designers, it appears that it's not necessary to set G everywhere on 440 cores. The various core errata related to prefetch should be sorted out by firmware by disabling icache prefetching in CCR0. We add the workaround to the kernel however just in case oooold firmwares don't do it. This is valid for -all- 4xx core variants. Later ones hard wire the absence of prefetch but it doesn't harm to clear the bits in CCR0 (they should already be cleared anyway). We still leave G=1 on the linear mapping for now, we need to stop over-mapping RAM to be able to remove it. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Acked-by: Josh Boyer Signed-off-by: Paul Mackerras commit 64b3d0e8122b422e879b23d42f9e0e8efbbf9744 Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:51 2008 +0000 powerpc/mm: Rework usage of _PAGE_COHERENT/NO_CACHE/GUARDED Currently, we never set _PAGE_COHERENT in the PTEs, we just OR it in in the hash code based on some CPU feature bit. We also manipulate _PAGE_NO_CACHE and _PAGE_GUARDED by hand in all sorts of places. This changes the logic so that instead, the PTE now contains _PAGE_COHERENT for all normal RAM pages thay have I = 0 on platforms that need it. The hash code clears it if the feature bit is not set. It also adds some clean accessors to setup various valid combinations of access flags and change various bits of code to use them instead. This should help having the PTE actually containing the bit combinations that we really want. I also removed _PAGE_GUARDED from _PAGE_BASE on 44x and instead set it explicitely from the TLB miss. I will ultimately remove it completely as it appears that it might not be needed after all but in the meantime, having it in the TLB miss makes things a lot easier. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 77520351805cc19ba37394ae33f862ef6d3c2a23 Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:48 2008 +0000 powerpc/mm: Runtime allocation of mmu context maps for nohash CPUs This makes the MMU context code used for CPUs with no hash table (except 603) dynamically allocate the various maps used to track the state of contexts. Only the main free map and CPU 0 stale map are allocated at boot time. Other CPU maps are allocated when those CPUs are brought up and freed if they are unplugged. This also moves the initialization of the MMU context management slightly later during the boot process, which should be fine as it's really only needed when userland if first started anyways. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 760ec0e02d8a13d0ed60d99f47879d4aa8ef1910 Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:46 2008 +0000 powerpc/44x: No need to mask MSR:CE, ME or DE in _tlbil_va on 440 The handlers for Critical, Machine Check or Debug interrupts will save and restore MMUCR nowadays, thus we only need to disable normal interrupts when invalidating TLB entries. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Acked-by: Josh Boyer Signed-off-by: Paul Mackerras commit 2a4aca1144394653269720ffbb5a325a77abd5fa Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:42 2008 +0000 powerpc/mm: Split low level tlb invalidate for nohash processors Currently, the various forms of low level TLB invalidations are all implemented in misc_32.S for 32-bit processors, in a fairly scary mess of #ifdef's and with interesting duplication such as a whole bunch of code for FSL _tlbie and _tlbia which are no longer used. This moves things around such that _tlbie is now defined in hash_low_32.S and is only used by the 32-bit hash code, and all nohash CPUs use the various _tlbil_* forms that are now moved to a new file, tlb_nohash_low.S. I moved all the definitions for that stuff out of include/asm/tlbflush.h as they are really internal mm stuff, into mm/mmu_decl.h The code should have no functional changes. I kept some variants inline for trivial forms on things like 40x and 8xx. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit f048aace29e007f2b642097e2da8231e0e9cce2d Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:38 2008 +0000 powerpc/mm: Add SMP support to no-hash TLB handling This commit moves the whole no-hash TLB handling out of line into a new tlb_nohash.c file, and implements some basic SMP support using IPIs and/or broadcast tlbivax instructions. Note that I'm using local invalidations for D->I cache coherency. At worst, if another processor is trying to execute the same and has the old entry in its TLB, it will just take a fault and re-do the TLB flush locally (it won't re-do the cache flush in any case). Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 7c03d653cd257793dc40520c94e229b5fd0578e7 Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:32 2008 +0000 powerpc/mm: Introduce MMU features We're soon running out of CPU features and I need to add some new ones for various MMU related bits, so this patch separates the MMU features from the CPU features. I moved over the 32-bit MMU related ones, added base features for MMU type families, but didn't move over any 64-bit only feature yet. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 2ca8cf738907180e7fbda90f25f32b86feda609f Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:29 2008 +0000 powerpc/mm: Rework context management for CPUs with no hash table This reworks the context management code used by 4xx,8xx and freescale BookE. It adds support for SMP by implementing a concept of stale context map to lazily flush the TLB on processors where a context may have been invalidated. This also contains the ground work for generalizing such lazy TLB flushing by just picking up a new PID and marking the old one stale. This will be implemented later. This is a first implementation that uses a global spinlock. Ideally, we should try to get at least the fast path (context ID already assigned) lockless or limited to a per context lock, but for now this will do. I tried to keep the UP case reasonably simple to avoid adding too much overhead to 8xx which does a lot of context stealing since it effectively has only 16 PIDs available. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 5e696617c425eb97bd943d781f3941fb1e8f0e5b Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:24 2008 +0000 powerpc/mm: Split mmu_context handling This splits the mmu_context handling between 32-bit hash based processors, 64-bit hash based processors and everybody else. This is preliminary work for adding SMP support for BookE processors. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 6d2170be4561293a6aa821c773687bd3f18e8206 Author: Benjamin Herrenschmidt Date: Thu Dec 18 19:13:22 2008 +0000 powerpc/4xx: Extended DCR support v2 This adds supports to the "extended" DCR addressing via the indirect mfdcrx/mtdcrx instructions supported by some 4xx cores (440H6 and later). I enabled the feature for now only on AMCC 460 chips. Signed-off-by: Benjamin Herrenschmidt Acked-by: Josh Boyer Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit fecba96268fc48ab9b4a016356a8f2371df25e64 Author: Brian King Date: Thu Dec 18 11:13:49 2008 +0000 powerpc: Add reboot notifier to Collaborative Memory Manager When running Active Memory Sharing, pages can get marked as "loaned" with the hypervisor by the CMM driver. This state gets cleared by the system firmware when rebooting the partition. When using kexec to boot a new kernel, this state never gets cleared and the hypervisor and CMM driver can get out of sync with respect to the number of pages currently marked "loaned". Fix this by adding a reboot notifier to the CMM driver to deflate the balloon and mark all pages as active. Signed-off-by: Brian King Signed-off-by: Paul Mackerras commit 2218108e182fd8a6d9106077833ed7ad05fc8e75 Author: Brian King Date: Thu Dec 18 11:13:46 2008 +0000 powerpc: Disable Collaborative Memory Manager for kdump When running Active Memory Sharing, the Collaborative Memory Manager (CMM) may mark some pages as "loaned" with the hypervisor. Periodically, the CMM will query the hypervisor for a loan request, which is a single signed value. When kexec'ing into a kdump kernel, the CMM driver in the kdump kernel is not aware of the pages the previous kernel had marked as "loaned", so the hypervisor and the CMM driver are out of sync. This results in the CMM driver getting a negative loan request, which can then get treated as a large unsigned value and can cause kdump to hang due to the CMM driver inflating too large. Since there really is no clean way for the CMM driver in the kdump kernel to clean this up, simply disable CMM in the kdump kernel. This fixes hangs we were seeing doing kdump with AMS. Signed-off-by: Brian King Signed-off-by: Paul Mackerras commit 5d84e4bee044a740729ac172e684e743f5ad50fb Author: Stephen Rothwell Date: Tue Dec 16 20:16:49 2008 +0000 powerpc/iseries: viodasd needs to depend on CONFIG_BLOCK Otherwise you get lot of errors like these: drivers/block/viodasd.c:72: error: dereferencing pointer to incomplete type drivers/block/viodasd.c: In function 'viodasd_open': drivers/block/viodasd.c:135: error: dereferencing pointer to incomplete type drivers/block/viodasd.c: In function 'viodasd_release': drivers/block/viodasd.c:184: error: dereferencing pointer to incomplete type drivers/block/viodasd.c: In function 'viodasd_getgeo': drivers/block/viodasd.c:209: error: dereferencing pointer to incomplete type drivers/block/viodasd.c:214: error: implicit declaration of function 'get_capacity' drivers/block/viodasd.c: At top level: drivers/block/viodasd.c:222: error: variable 'viodasd_fops' has initializer but incomplete type drivers/block/viodasd.c:223: error: unknown field 'owner' specified in initializer Discovered by a randconfig build. Signed-off-by: Stephen Rothwell Acked-by: Jens Axboe Signed-off-by: Paul Mackerras commit 368c1e3249afe0e59097e7df664435ae55fb9f8d Author: Hendrik Brueckner Date: Tue Dec 16 00:09:38 2008 +0000 hvc_console: Escape magic sysrq key The ctrl-o (^O) is a common control key used by several applications, such as vim, but hvc_console uses ^O as the magic-sysrq key. This commit allows users to send ^O to applications by pressing ^O twice in succession. To implement this, this commit introduces a check if ^O is pressed again if the sysrq_pressed variable is already set. In this case, clear sysrq_pressed state and flip the ^O character to the tty. (The old behavior has always set "sysrq_pressed" if ^O has been entered, and it has not flipped the ^O character to the tty.) Signed-off-by: Hendrik Brueckner Signed-off-by: Paul Mackerras commit 532774ec7fa396da20ca724c0cf83d93ee76622f Author: Tony Breeds Date: Mon Dec 15 18:34:43 2008 +0000 powerpc: Pass a valid token to rtas_call() in phyp-dump code ibm_configure_kernel_dump is passed as the token to rtas_call() is never initialised. This sets it to something sane. Signed-off-by: Tony Breeds Acked-by: Nathan Lynch Acked-by: Manish Ahuja Signed-off-by: Paul Mackerras commit 7a2eab0d4e656341cc0f6481d722d410f0414f0b Author: Tony Breeds Date: Mon Dec 15 18:17:48 2008 +0000 powerpc: Protect against NULL pointer deref in phyp-dump code print_dump_header() will be called at least once with a NULL pointer in a normal boot sequence. If DEBUG is defined then we will dereference the pointer and crash. Add a quick fix to exit early in the NULL pointer case. Signed-off-by: Tony Breeds Acked-by: Manish Ahuja Signed-off-by: Paul Mackerras commit 8168b5400b06353293f9844976435886eb2a8ff2 Author: David Howells Date: Thu Dec 11 02:53:54 2008 +0000 powerpc: Rename struct vm_region to avoid conflict with NOMMU Rename PowerPC's struct vm_region so that I can introduce my own global version for NOMMU. It's feasible that the PowerPC version may wish to use my global one instead. The NOMMU vm_region struct defines areas of the physical memory map that are under mmap. This may include chunks of RAM or regions of memory mapped devices, such as flash. It is also used to retain copies of file content so that shareable private memory mappings of files can be made. As such, it may be compatible with what is described in the banner comment for PowerPC's vm_region struct. Signed-off-by: David Howells Signed-off-by: Paul Mackerras commit 13ba3c0092b4db272d1f643206c1b55f4fe415a6 Author: Nathan Lynch Date: Wed Dec 10 14:46:06 2008 +0000 powerpc: Convert sysfs cache code to of_find_next_cache_node() Using the common code means that more complete cache information will provided in sysfs on platforms that don't use the l2-cache property convention. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit b2ea25b958968c152c6fac0594f2c9aa8b59eb8d Author: Nathan Lynch Date: Wed Dec 10 20:16:07 2008 +0000 powerpc: Convert cpu_to_l2cache() to of_find_next_cache_node() The smp code uses cache information to populate cpu_core_map; change it to use common code for cache lookup. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit e523f723d69cde44e10116d7f49b277da0c6702c Author: Nathan Lynch Date: Wed Dec 10 14:46:04 2008 +0000 powerpc: Add of_find_next_cache_node() We have more than one piece of code that looks up cache nodes manually using the "l2-cache" property. Add a common helper routine which does this and handles ePAPR's "next-level-cache" property as well as powermac. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit 749820928a2fd47ff536773d869d2c3f8038b7d1 Author: Anton Vorontsov Date: Fri Dec 5 08:15:54 2008 +0000 of/gpio: Implement of_gpio_count() This function is used to count how many GPIOs are specified for a device node. Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 7736a3db98bed028d0e5235f8958a730acfd822e Author: Anton Vorontsov Date: Fri Dec 5 08:15:46 2008 +0000 of: of_parse_phandles_with_args() learns to differentiate 'hole' cells Given this list (contains three gpio specifiers, one of which is a hole): gpios = <&phandle1 1 2 3 0 /* a hole */ &phandle2 4 5 6>; of_parse_phandles_with_args() would report -ENOENT for the `hole' specifier item, the same error value is used to report the end of the list, for example. Sometimes we want to differentiate holes from real errors -- for example when we want to count all the [syntax correct] specifiers. With this patch of_parse_phandles_with_args() will report -EEXITS when somebody requested to parse a hole. Also, make the out_{node,args} arguments optional, when counting we don't really need the out values. Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit c1bb7c6d04ebdf48998649100c5267a9139debf5 Author: Anton Vorontsov Date: Fri Dec 5 08:15:39 2008 +0000 of: Minor simplification for the of_parse_phandles_with_args() By using 'list++' in the beginning we can simplify the code a little bit. Suggested-by: Benjamin Herrenschmidt Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 74b7ff48a93f44198ac03cc4e628d713f53d4668 Author: Matthew Ranostay Date: Sat Dec 20 17:47:24 2008 -0500 ALSA: hda: fix incorrect mixer index values for 92hd83xx Fixed incorrect mixer index values for 92hd83xx codec's audio input mixer. Signed-off-by: Matthew Ranostay Signed-off-by: Takashi Iwai commit f8ccbf65afde5df81a6238b9dc92868fbbd397f7 Author: Matthew Ranostay Date: Sat Dec 20 17:36:28 2008 -0500 ALSA: hda: dinput_mux check Add check to determine if dinput_mux is set by any of patch_stac*() functions, otherwise a invalid pointer my be referenced causing gibberish to mixer values. Signed-off-by: Matthew Ranostay Signed-off-by: Takashi Iwai commit ebef7cfc81942686a994ca6239b195040f5d1e4d Merge: 6bcdbd5... 3d47582... Author: Takashi Iwai Date: Sat Dec 20 23:43:06 2008 +0100 Merge branch 'topic/ca0106-spdif-stream' into topic/ca0106 commit 6bcdbd55b4c603d9741398d081133fcc50a10b6c Merge: 6a84364... 72077aa... Author: Takashi Iwai Date: Sat Dec 20 23:43:00 2008 +0100 Merge branch 'topic/ca0106-resume' into topic/ca0106 commit 6a8436419d1b77b24d82bd90354adc4baa393566 Merge: 55fa518... ff75427... Author: Takashi Iwai Date: Sat Dec 20 23:42:55 2008 +0100 Merge branch 'topic/ca0106-capture-no-44khz' into topic/ca0106 commit 8326e32c1e148820d50dc460e1cb4a6cb6884ff2 Merge: 69dfaef... 32e176c... Author: Takashi Iwai Date: Sat Dec 20 23:41:18 2008 +0100 Merge branch 'topic/hda-resume-fix' into topic/hda commit 55fa518867978e1f5fd8353098f80d125ac734d7 Merge: bb1f24b... eea0579... Author: Takashi Iwai Date: Sat Dec 20 23:39:47 2008 +0100 Merge branch 'topic/pcsp-fix' into topic/misc commit 69dfaefee4a2dfdfee3488a306403fe1e51f0be5 Author: Takashi Iwai Date: Sat Dec 20 16:57:50 2008 +0100 ALSA: hda - Add quirk for another HP dv7 Added the model=hp-m4 quirk for another HP dv7 (103c:30fc) with IDT 92HD71b* codec. Reference: Novell bnc#461108 https://bugzilla.novell.com/show_bug.cgi?id=461108 Cc: stable@kernel.org Signed-off-by: Takashi Iwai commit a31501d1041c9d0a6c3f520736ae2b2fa081493a Author: Takashi Iwai Date: Sat Dec 20 16:50:53 2008 +0100 ALSA: ASoC - Add missing __devexit annotation to wm8350.c Added the missing __devexit annotation to wm8350_codec_remove(): sound/soc/codecs/wm8350.c:1546: warning: 'wm8350_codec_remove' defined but not used Signed-off-by: Takashi Iwai commit d6f833965e594015ee05341e43ff4a86f11596b3 Author: Troy Kisky Date: Fri Dec 19 13:05:25 2008 -0700 ALSA: ASoc: DaVinci: davinci-evm use dsp_b mode Sense DaVinci does not support true I2S mode and we don't have to use the hack, use dsp_b mode instead Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit 9e031624d50c82a47671e09cc996eebb9e36f698 Author: Troy Kisky Date: Fri Dec 19 13:05:23 2008 -0700 ALSA: ASoC: DaVinci: i2s, evm, pass same value to codec and cpu_dai Fix the meaning of SND_SOC_DAIFMT_NB_NF to match that used in the codec. Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit a24f4f682661b8069d374a9197bc491525a7c799 Author: Troy Kisky Date: Fri Dec 19 13:05:22 2008 -0700 ALSA: ASoC: tlv320aic3x add dsp_a Add SND_SOC_DAIFMT_DSP_A mode option. Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit 07d8d9dca4615821d928f4b5087fdc61e292e1dc Author: Troy Kisky Date: Fri Dec 19 13:05:24 2008 -0700 ALSA: ASoC: DaVinci: document I2S limitations DaVinci does not support true I2S or right justified mode so not all I2S codecs will work with it when the codec is master. Document this limitation. Add dsp_a, dsp_b mode options Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit 69ab820c862250d460dfaaf82164972a4a69418a Author: Troy Kisky Date: Thu Dec 18 12:36:44 2008 -0700 ALSA: ASoC: DaVinci: davinci-i2s clean up Minor, just move a block of code to make next patch clearer. Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit 21903c1c9ecb7a210eb985aa8d82ad68c78283cc Author: Troy Kisky Date: Thu Dec 18 12:36:43 2008 -0700 ALSA: ASoC: DaVinci: davinci-i2s clean up Just at little cleanup of davinci_i2s_set_dai_fmt Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit 664b4af859d43714fd2a90aa434e454355659d0e Author: Troy Kisky Date: Thu Dec 18 12:36:41 2008 -0700 ALSA: ASoC: DaVinci: davinci-i2s add comments to explain polarity Document the current polarity choices. Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit 1152a1959f8440db9536f6df758274443f9b5b37 Author: Troy Kisky Date: Thu Dec 18 12:36:40 2008 -0700 ALSA: ASoC: DaVinci: davinvi-evm, make requests explicit Add constants with a value of 0 to show more explicitly what is being requested. Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit ff75427a7f641c4468610fbda2ccb69218174cd1 Author: Takashi Iwai Date: Sat Dec 20 11:20:55 2008 +0100 ALSA: ca0106 - disable 44.1kHz capture The capture with 44.1kHz on ca0106 seems to cause loud noises on later playbacks, which doesn't support 44.1kHz. A simple fix is to disable 44.1kHz, as the "default" PCM with dsnoop is anyway only with 48kHz. Reference: Novell bnc#447624 https://bugzilla.novell.com/show_bug.cgi?id=447624 Signed-off-by: Takashi Iwai commit 72077aa336d0f4c5e3c7014d7471c79bc69873bb Author: Takashi Iwai Date: Sat Dec 20 11:12:51 2008 +0100 ALSA: ca0106 - Add missing card->private_data initialization Added the missing card->private_data initialization that caused obvious problems at PM. Signed-off-by: Takashi Iwai commit 50232d62cace101e03f8f40ca151b978c0db5a0d Author: Takashi Iwai Date: Sat Dec 20 09:42:09 2008 +0100 ALSA: ca0106 - Check ac97 availability at PM Check the availability of ac97 at PM suspend/resume callbacks. Signed-off-by: Takashi Iwai commit c5dee6177f4bd2095aab7d9be9f6ebdddd6deee9 Author: Markus Metzger Date: Fri Dec 19 15:17:02 2008 +0100 x86, bts: memory accounting Impact: move the BTS buffer accounting to the mlock bucket Add alloc_locked_buffer() and free_locked_buffer() functions to mm/mlock.c to kalloc a buffer and account the locked memory to current. Account the memory for the BTS buffer to the tracer. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit bf53de907dfdaac178c92d774aae7370d7b97d20 Author: Markus Metzger Date: Fri Dec 19 15:10:24 2008 +0100 x86, bts: add fork and exit handling Impact: introduce new ptrace facility Add arch_ptrace_untrace() function that is called when the tracer detaches (either voluntarily or when the tracing task dies); ptrace_disable() is only called on a voluntary detach. Add ptrace_fork() and arch_ptrace_fork(). They are called when a traced task is forked. Clear DS and BTS related fields on fork. Release DS resources and reclaim memory in ptrace_untrace(). This releases resources already when the tracing task dies. We used to do that when the traced task dies. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit 67bac792cd0c05b4b6e0393c32605b028b8dd533 Author: venkatesh.pallipadi@intel.com Date: Fri Dec 19 13:47:30 2008 -0800 x86: PAT: pfnmap documentation update changes Impact: Documentation only. Documentation updates as per Randy Dunlap's comments. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 34801ba9bf0381fcf0e2b08179d2c07f2c6ede74 Author: venkatesh.pallipadi@intel.com Date: Fri Dec 19 13:47:29 2008 -0800 x86: PAT: move track untrack pfnmap stubs to asm-generic Impact: Cleanup and branch hints only. Move the track and untrack pfn stub routines from memory.c to asm-generic. Also add unlikely to pfnmap related calls in fork and exit path. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 982d789ab76c8a11426852fec2fdf2f412e21c0c Author: venkatesh.pallipadi@intel.com Date: Fri Dec 19 13:47:28 2008 -0800 x86: PAT: remove follow_pfnmap_pte in favor of follow_phys Impact: Cleanup - removes a new function in favor of a recently modified older one. Replace follow_pfnmap_pte in pat code with follow_phys. follow_phys lso returns protection eliminating the need of pte_pgprot call. Using follow_phys also eliminates the need for pte_pa. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit d87fe6607c31944f7572f965c1507ae77026c133 Author: venkatesh.pallipadi@intel.com Date: Fri Dec 19 13:47:27 2008 -0800 x86: PAT: modify follow_phys to return phys_addr prot and return value Impact: Changes and globalizes an existing static interface. Follow_phys does similar things as follow_pfnmap_pte. Make a minor change to follow_phys so that it can be used in place of follow_pfnmap_pte. Physical address return value with 0 as error return does not work in follow_phys as the actual physical address 0 mapping may exist in pte. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 6bd9cd50c830eb88d571c492ec370a30bf999e15 Author: venkatesh.pallipadi@intel.com Date: Fri Dec 19 13:47:26 2008 -0800 x86: PAT: clarify is_linear_pfn_mapping() interface Impact: Documentation only Incremental patches to address the review comments from Nick Piggin for v3 version of x86 PAT pfnmap changes patchset here http://lkml.indiana.edu/hypermail/linux/kernel/0812.2/01330.html This patch: Clarify is_linear_pfn_mapping() and its usage. It is used by x86 PAT code for performance reasons. Identifying pfnmap as linear over entire vma helps speedup reserve and free of memtype for the region. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 8403295e0fa460f6240e2d781e25dc29189f33c7 Author: Hiroshi Shimamoto Date: Fri Dec 19 14:25:50 2008 -0800 x86: ia32_signal: remove unnecessary declaration Impact: cleanup No need to declare do_signal(). Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 34945ede31071ac7d72270cc6c1893323f392b3f Author: Jaswinder Singh Date: Fri Dec 19 22:33:52 2008 +0530 x86: common.c boot_cpu_stack and boot_exception_stacks should be static Impact: cleanup, avoid sparse warnings, reduce kernel size a bit Fixes these sparse warnings: arch/x86/kernel/cpu/common.c:869:6: warning: symbol 'boot_cpu_stack' was not declared. Should it be static? arch/x86/kernel/cpu/common.c:910:6: warning: symbol 'boot_exception_stacks' was not declared. Should it be static? Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit 74192246910ff4fb95309ba1a683215644beeb62 Author: James Morris Date: Fri Dec 19 11:41:10 2008 +1100 SELinux: don't check permissions for kernel mounts Don't bother checking permissions when the kernel performs an internal mount, as this should always be allowed. Signed-off-by: James Morris Acked-by: Stephen Smalley commit 12204e24b1330428c3062faee10a0d80b8a5cb61 Author: James Morris Date: Fri Dec 19 10:44:42 2008 +1100 security: pass mount flags to security_sb_kern_mount() Pass mount flags to security_sb_kern_mount(), so security modules can determine if a mount operation is being performed by the kernel. Signed-off-by: James Morris Acked-by: Stephen Smalley commit 459c19f524a9d89c65717a7d061d5f11ecf6bcb8 Author: Stephen Smalley Date: Fri Dec 5 09:12:19 2008 -0500 SELinux: correctly detect proc filesystems of the form "proc/foo" Map all of these proc/ filesystem types to "proc" for the policy lookup at filesystem mount time. Signed-off-by: James Morris commit 9bb482476c6c9d1ae033306440c51ceac93ea80c Author: Jan Beulich Date: Tue Dec 16 11:30:08 2008 +0000 allow stripping of generated symbols under CONFIG_KALLSYMS_ALL Building upon parts of the module stripping patch, this patch introduces similar stripping for vmlinux when CONFIG_KALLSYMS_ALL=y. Using CONFIG_KALLSYMS_STRIP_GENERATED reduces the overhead of CONFIG_KALLSYMS_ALL from 245k/310k to 65k/80k for the (i386/x86-64) kernels I tested with. The patch also does away with the need to special case the kallsyms- internal symbols by making them available even in the first linking stage. While it is a generated file, the patch includes the changes to scripts/genksyms/keywords.c_shipped, as I'm unsure what the procedure here is. Signed-off-by: Jan Beulich Signed-off-by: Sam Ravnborg commit ad7a953c522ceb496611d127e51e278bfe0ff483 Author: Jan Beulich Date: Tue Dec 16 11:28:14 2008 +0000 kbuild: strip generated symbols from *.ko This patch changes the way __crc_ symbols are being resolved from using ld to do so to using the assembler, thus allowing these symbols to be marked local (the linker creates then as global ones) and hence allow stripping (for modules) or ignoring (for vmlinux) them. While at this, also strip other generated symbols during module installation. One potentially debatable point is the handling of the flags passeed to gcc when translating the intermediate assembly file into an object: passing $(c_flags) unchanged doesn't work as gcc passes --gdwarf2 to gas whenever is sees any -g* option, even for -g0, and despite the fact that the compiler would have already produced all necessary debug info in the C->assembly translation phase. I took the approach of just filtering out all -g* options, but an alternative to such negative filtering might be to have a positive filter which might, in the ideal case allow just all the -Wa,* options to pass through. Signed-off-by: Jan Beulich Signed-off-by: Sam Ravnborg commit 37a8d9f67f18de1e2cbc7387311ce22d4dbff518 Author: Sam Ravnborg Date: Fri Dec 19 21:38:09 2008 +0100 kbuild: simplify use of genksyms Avoid duplicating long list of options in two places Signed-off-by: Sam Ravnborg commit 9cf7f247bd0cd21e475c71a4e018bb612ef02aab Author: Michael Buesch Date: Fri Dec 19 20:24:30 2008 +0100 b43: Add key memory dumping This adds an option to dump all crypto related memory to the kernel log. Obviously, it should not be enabled on productive systems. ;) Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit b929ecf7965c2dab7e373f390ac5fc563011484d Author: Michael Buesch Date: Fri Dec 19 18:40:00 2008 +0100 b43: Suspend MAC while killing the radio We should suspend the MAC, before we kill the radio. This gives the MAC a chance to leave any TX/RX state and it avoids races on the PHY/RADIO registers. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit fd6effcaf8a894c0a0f602b943dbc54a170d4418 Author: Bob Copeland Date: Thu Dec 18 23:23:05 2008 -0500 ath5k: correct packet length in tx descriptors Packet length calculation (which includes frame check sequence) should take into account whether we add a pad field or not. Extract the calculation into a helper and use it in both places. Changes to desc.c Changes-licensed-under: ISC Changes to ath5k.h, base.c Changes-licensed-under: 3-Clause-BSD Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 520eb82076993b7f55ef9b80771d264272e5127b Author: Kalle Valo Date: Thu Dec 18 23:35:27 2008 +0200 mac80211: implement dynamic power save This patch implements dynamic power save for mac80211. Basically it means enabling power save mode after an idle period. Implementing it dynamically gives a good compromise of low power consumption and low latency. Some hardware have support for this in firmware, but some require the host to do it. The dynamic power save is implemented by adding an timeout to ieee80211_subif_start_xmit(). The timeout can be enabled from userspace with Wireless Extensions. For example, the command below enables the dynamic power save and sets the time timeout to 500 ms: iwconfig wlan0 power timeout 500m Power save now only works with devices which handle power save in firmware. It's also disabled by default and the heuristics when and how to enable is considered as a policy decision and will be left for the userspace to handle. In case the firmware has support for this, drivers can disable this feature with IEEE80211_HW_NO_STACK_DYNAMIC_PS. Big thanks to Johannes Berg for the help with the design and code. Signed-off-by: Kalle Valo Acked-by: Johannes Berg Signed-off-by: John W. Linville commit ce7c9111a97492d04c504f40736a669c235d664a Author: Kalle Valo Date: Thu Dec 18 23:35:20 2008 +0200 mac80211: track master queue status This is a preparation for the dynamic power save support. In future there are two paths to stop the master queues and we need to track this properly to avoid starting queues incorrectly. Implement this by adding a status array for each queue. The original idea and design is from Johannes Berg, I just did the implementation based on his notes. All the bugs are mine, of course. Signed-off-by: Kalle Valo Acked-by: Johannes Berg Signed-off-by: John W. Linville commit e0cb686ff879dc9ac045ad7258ec687088d4e450 Author: Kalle Valo Date: Thu Dec 18 23:35:13 2008 +0200 mac80211: enable IEEE80211_CONF_PS only when associated Also disable power save when disassociated. It makes no sense to have power save enabled while disassociated. iwlwifi seems to have this check in the driver, but it's better to do this in mac80211 instead. Signed-off-by: Kalle Valo Acked-by: Johannes Berg Signed-off-by: John W. Linville commit d10d0e5707fb7b8afa7e68a14d69e752604ee294 Author: Michael Buesch Date: Thu Dec 18 22:13:39 2008 +0100 b43: Fix some MAC locking This fixes some locking w.r.t. the lower MAC (firmware). It also removes a lot of ancient IRQ-locking that's not needed anymore. We simply suspend the MAC. That's easier and causes less trouble. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 0e7690f1e9ee1e762f27678d2ea10e4c1fde3236 Author: Rami Rosen Date: Thu Dec 18 18:04:51 2008 +0200 iwlwifi: iwl-tx.c cleanup (remove unused parameter and unused local variable). This patch removes unused parameter and unused local variable in methods in iwl-tx.c: - Remove a parameter (is_unicast) from iwl_tx_cmd_build_basic(). - Remove an unused variable name unicast from iwl_tx_skb(). Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit be2864cfff2fe4b599b46f03cce1e7689e05c60c Author: Jouni Malinen Date: Thu Dec 18 14:33:00 2008 +0200 ath9k: Fixed RX decryption status reporting The RX code in ath9k uses sc_keymap to figure out whether a default key was used. However, the default key entries in sc_keymap were always set and as such, frames could have been claimed to be decrypted by hardware when they were not. This can cause problems especially with TKIP since mac80211 is validating the Michael MIC in the frame and this will result in MIC failure and potentially TKIP countermeasures if the frame was not decrypted correctly. Change key cache slot allocation to mark only the keys that really have been used in sc_keymap to avoid the issue. The key cache slot selection routines are now internally avoiding the slots that may be needed for TKIP group keys. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit ea6121328885640c137b0a8830f67ca6c386a24a Author: Jouni Malinen Date: Thu Dec 18 14:31:10 2008 +0200 ath9k: Fix key cache slot selection for splitmic ath_reserve_key_cache_slot() was obviously supposed to return an index to a free slot, not reserved one. This could have caused problems with hardware revisions that use splitmic. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit aa33de09a849bd65b1201e1aec42e3e412c14cf6 Author: Sujith Date: Thu Dec 18 11:40:16 2008 +0530 ath9k: Protect config() callback with a mutex This should fix the timeout issues seen when using wpa_supplicant. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 5e3f308997f53d00e8cbebdb89d4f6e347aa963a Author: Larry Finger Date: Wed Dec 17 14:26:59 2008 -0600 mac80211: Print unknown packet type in tasklet_handler In stress testing p54usb, the WARN_ON() in ieee80211_tasklet_handler() was triggered; however, there is no logging of the received value for packet type. Adding that feature will improve the warning. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 6110781af080c007b2202187a8518920e03d5748 Author: Christian Lamparter Date: Wed Dec 17 12:04:43 2008 +0100 p54usb: bring first generation devices back to life This patch fixes a serious regression (introduced by: "p54: fix memory management") that affected isl3886+net2280 usb devices operation. Signed-off-by: Christian Lamparter Tested-by: Artur Skawina Signed-off-by: John W. Linville commit 6ace2891a1d632303283816ae050849da48df142 Author: Jouni Malinen Date: Wed Dec 17 13:32:17 2008 +0200 ath9k: Key cache allocation for AP mode Enhance allocation of key cache entries to support multiple pairwise keys to fix AP mode with more than one associated STA. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit f66000f7a39769b0ce2355fca13c40ac2f1c39db Author: Jouni Malinen Date: Wed Dec 17 13:30:31 2008 +0200 ath9k: Fix a NULL pointer dereference in ath_rate_get It looks like mac80211 may try to send unicast frames to a STA that does not have a STA entry. We need to make sure that that is caught in the rate control code before dereferencing STA data. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 91f39e8eea725347b6a82d1e35e512ec8b298b0b Author: Jay Sternberg Date: Wed Dec 17 16:52:34 2008 +0800 iwlwifi: indicate txpower is off in sysfs The patch checks if the radio is disabled before displaying the tx power level. Previously when the txpower was set off show_tx_power still returned the prior power level. Now it will indicate the power has been turned off. Signed-off-by: Jay Sternberg Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit f1bc4ac61f2c08515afd80c6dc3962aa6d0b138b Author: Zhu Yi Date: Wed Dec 17 16:52:33 2008 +0800 iwlwifi: use GFP_KERNEL to allocate Rx SKB memory Previously we allocate Rx SKB with GFP_ATOMIC flag. This is because we need to hold a spinlock to protect the two rx_used and rx_free lists operation in the rxq. spin_lock(); ... element = rxq->rx_used.next; element->skb = alloc_skb(..., GFP_ATOMIC); list_del(element); list_add_tail(&element->list, &rxq->rx_free); ... spin_unlock(); After spliting the rx_used delete and rx_free insert into two operations, we don't require the skb allocation in an atomic context any more (the function itself is scheduled in a workqueue). spin_lock(); ... element = rxq->rx_used.next; list_del(element); ... spin_unlock(); ... element->skb = alloc_skb(..., GFP_KERNEL); ... spin_lock() ... list_add_tail(&element->list, &rxq->rx_free); ... spin_unlock(); This patch should fix the "iwlagn: Can not allocate SKB buffers" warning we see recently. Signed-off-by: Zhu Yi Acked-by: Tomas Winkler Cc: stable@kernel.org Signed-off-by: John W. Linville commit 4087f6f68cdbd2845c7e54236bae1b058a7b827b Author: Wu, Fengguang Date: Wed Dec 17 16:52:32 2008 +0800 iwlwifi: use meaningful vars in _iwl_poll_bit() Rename vars in _iwl_poll_bit() to better reflect the truth. Signed-off-by: Wu Fengguang Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit febf3370c63b4ea7fc1cedb9a73ac37e3cb21079 Author: Wu Fengguang Date: Wed Dec 17 16:52:31 2008 +0800 iwlwifi: remove useless goto The patch removes some useless goto in code cleanup. Signed-off-by: Wu Fengguang Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 95aa194ac4a8fee0aea64c9609e70211cd057ad2 Author: Wu, Fengguang Date: Wed Dec 17 16:52:30 2008 +0800 iwlwifi: use type uint for module param debug This enables one to change the debug level at bit 31. Signed-off-by: Wu Fengguang Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit c3a739fa3507d1d5b3d2cb6cc491edeef8fa54c0 Author: Wu, Fengguang Date: Wed Dec 17 16:52:29 2008 +0800 iwlwifi: update comments on the debug interface Bring up-to-date some comments on the location of debug files. Signed-off-by: Wu Fengguang Acked-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 5c11ec60ef2eb8fb409b2c0a427e5a8ab6ee05f8 Author: Wu, Fengguang Date: Wed Dec 17 16:52:28 2008 +0800 iwlwifi: add line feed to printk This adds line feed to printk. Signed-off-by: Wu Fengguang Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 34c22cf93d1446791c966c878cc691e07c39d8d3 Author: Winkler, Tomas Date: Wed Dec 17 16:52:27 2008 +0800 iwlwifi: cleanup iwl-dev.h The patch removes unused definition and moves code to proper places. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 135541215ca87ff00c269e65bcaef0bdcb99aab9 Author: Rami Rosen Date: Tue Dec 16 22:38:29 2008 +0200 mac80211: fix a typo in ieee80211_send_assoc() method. This patch fixes a typo in ieee80211_send_assoc(), net/mac80211/mlme.c. The error is usage of a wrong member when building the ie80211 management frame (it should be assoc_req, and not reassoc_req). Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 73ec1cc28ebc7854a376cde53f62d487e127fbca Author: Rami Rosen Date: Tue Dec 16 09:37:07 2008 +0200 iwlwifi: remove a parameter (dest) from *_fill_beacon_frame() methods. This patch removes a parameter (dest) from iwl_fill_beacon_frame() (iwl-agn.c) and from iwl3945_fill_beacon_frame(). (iwl-3945.c,iwl-3945.h) Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit ca8a8560569c5eb954cb18c3a91087797ffa81a4 Author: Vasanthakumar Thiagarajan Date: Tue Dec 16 12:37:38 2008 +0530 ath9k: Move rate control alg register/unregister to appropriate place This patch makes sure the rate control alg is registered/unregistered only once for this module. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 9bf9fca8dea70116016d32c2bf3f83170c8fba76 Author: Vasanthakumar Thiagarajan Date: Mon Dec 15 20:40:46 2008 +0530 ath9k: Synchronize DMA transfer with CPU at right place This patch does pci_dma_sync_single_for_cpu() before accessing the header of the frame and queueing the same buffer into h/w. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit f7a276a625e0b980185d2eb8e8e3e9425a708bee Author: Jouni Malinen Date: Mon Dec 15 16:02:04 2008 +0200 ath9k: Remove MAC header pad before reporting TX status Remove the possible MAC header pad before reporting TX status to mac80211. This pad is hardware specific operation and should not be exposed outside the driver. This fixes the frame body in monitor interfaces that could be used to check on TX status for transmitted frames. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit da027ca00a48715364da9a94d4b663029add528d Author: Jouni Malinen Date: Mon Dec 15 15:44:53 2008 +0200 ath9k: Fix TX status reporting for retries and MCS index The count field in struct ieee80211_tx_rate does not include the final successful attempt, so only report retries here. Fix the struct ieee80211_tx_rate::idx field when MCS was used. It is supposed to be the MCS index, not an internal index to the rate control algorithm table. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 8d6f658e211a3c6ff808f7fc6ebb30239457eabc Author: Jouni Malinen Date: Mon Dec 15 10:37:50 2008 +0200 mac80211: Remove radiotap rate-present flag for HT Since we do not currently report HT rates (MCS index) in radiotap header for HT rates, we should not claim the rate is present. The rate octet itself is used as padding in this case, so only the it_present flag needs to be removed in case of HT rates. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit d85882273367e98aecb9ff11a9d76515a6d37131 Author: Herton Ronaldo Krzesinski Date: Sun Dec 14 12:18:09 2008 -0600 rtl8187: Fix crash on unload when using SLUB debug Reported-by: Hin-Tak Leung After the code was modified to use urb anchors ("rtl8187: Use usb anchor facilities to manage urbs"), rtl8187 began generating an intermittent GPF on shutdown when using SLUB with debugging enabled. Furthermore, rebooting the system with a ping running caused a GPF every time. There are two problems: (1) incorrect locking in the rtl8187_rx_cb() routine, a pre-existing bug that apparently had not been triggered before, and (2) duplicate freeing of receive skbs that was probably introduced with the change to anchors. Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: Larry Finger Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 0a5ec96ad68516582023a877aceff9db7636d141 Author: Christian Lamparter Date: Sun Dec 14 15:05:42 2008 +0100 p54: remove free_on_tx parameter This patch simplifies the tx code a bit and will be necessary for the upcoming stlc45xx<->p54 port. In detail: we no longer have to tell all back-end drivers directly, if we want to free a frame right after it was send to the firmware, or if we do it in the library callback later. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 69ba3e5d74a467a64248cd90ccafb524b1fddcb5 Author: Christian Lamparter Date: Sun Dec 14 14:45:30 2008 +0100 p54: more accurate rssi to dBm conversion This patch replaces the static rssi auto calibration data with more precise values out of the device's eeprom. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit da9f57eade0a743450a201645db7fc5ac0809900 Author: Larry Finger Date: Sat Dec 13 18:09:56 2008 -0600 rtl8187: Fix error returns There are two places in the rtl8187 code where a routine was returning zero (OK) when it should have been returning an error. Signed-off-by: Larry Finger Acked-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 23827926eb5ce5cb944ebbd96d22297a2582d45d Author: Ilpo Järvinen Date: Sat Dec 13 21:33:13 2008 +0200 libertas: use roundup instead of opencoding Signed-off-by: Ilpo Järvinen Signed-off-by: John W. Linville commit ee370ceda823435fe75be7dd4ed7b0e3dc3108b9 Author: Christian Lamparter Date: Sat Dec 13 16:45:38 2008 +0100 p54: update ACK failure statistic counter in real-time Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 54fdb040b4760d5b2994d15c1371e297679420e9 Author: Christian Lamparter Date: Sat Dec 13 14:14:20 2008 +0100 p54: move statistic timer update routine into a workqueue This patch moves a good chunk of code from the former statistic update timer routine into a workqueue, which is kindly provided by mac80211. Also as a nice side-effect we can lay the foundation for other essential housekeeping features we want to do in the future. e.g: - drain the (clogged) tx_queue. - initiate bursts. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit d5e490362feb648048ef20db9b0b2531d5425775 Author: Mohamed Abbas Date: Fri Dec 12 08:22:15 2008 -0800 iwlagn: fix agn rate scaling Rate scaling in agn can be broken because of these two problems 1- the LQ command could not sent, we try to call LQ command before post association will be rejected, this will cause the driver to break in rs_tx_status reporting initial rate does not match. 2- In rs_rate_init we can get a value of 12, rate 60, for last_txrate_idx, this rate only valid in SISO/MIMO mode only Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit b8d476c8cb64a1640d8762aa442b8a73fa74b7d5 Author: Jouni Malinen Date: Fri Dec 12 17:08:31 2008 +0200 mac80211: Send Layer 2 Update frame on reassociation When a STA roams back to the same AP before the previous STA entry has expired, a new STA entry is not added in mac80211. However, a Layer 2 Update frame still needs to be transmitted to update layer 2 devices about the new location for the STA. Without this, switches may continue to forward frames to the previous (now incorrect) port when STA roams between APs. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 0fe45b1debba7302155b62f3829119a1185a4f5a Author: Benoit PAPILLAULT Date: Fri Dec 12 15:29:58 2008 +0100 ath5k: fix 802.11 header padding on RX, unpadding on TX Padding the 802.11 header to a multiple of 4 bytes needs to be done only for frames with a body. This fixes a bug where 2 bytes were missing in monitor mode for ACK frames. Inspired by a patch from Jouni Malinen on ath9k. Ref: http://bugzilla.kernel.org/show_bug.cgi?id=12101 : Signed-off-by: Benoit Papillault Signed-off-by: John W. Linville commit baad1d921b1565b6f08f60c035531d13ad8afa82 Author: Jouni Malinen Date: Fri Dec 12 14:38:34 2008 +0200 ath9k: Report HT rates in RX status Fix and clean up the RX status reporting by getting rid of code that used internal rate tables and ratekbps calculation. The correct value is now reported with MCS index instead of the old mechanism that defaulted to using the highest legacy rate. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 0fb8ca45eb164c405eef8978f26829f9348b4d4d Author: Jouni Malinen Date: Fri Dec 12 14:38:33 2008 +0200 mac80211: Add HT rates into RX status reporting This patch adds option for HT-enabled drivers to report HT rates (HT20/HT40, short GI, MCS index) to mac80211. These rates are currently not in the rate table, so the rate_idx is used to indicate MCS index. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 9d8eed12dbc04f8ed70090da14211c808b5a8d81 Author: Sujith Date: Fri Dec 12 11:59:07 2008 +0530 ath9k: Do not use association state to update rate table Now that HT information is made available to the driver through config() callback, the channel type can be calculated whenever setting the channel. Update the rate table accordingly with the new channel type. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 094d05dc32fc2930e381189a942016e5561775d9 Author: Sujith Date: Fri Dec 12 11:57:43 2008 +0530 mac80211: Fix HT channel selection HT management is done differently for AP and STA modes, unify to just the ->config() callback since HT is fundamentally a PHY property and cannot be per-BSS. Rename enum nl80211_sec_chan_offset as nl80211_channel_type to denote the channel type ( NO_HT, HT20, HT40+, HT40- ). Signed-off-by: Johannes Berg Signed-off-by: Sujith Signed-off-by: John W. Linville commit 420e7fabd9c6d907280ed6b3e40eef425c5d8d8d Author: Henning Rogge Date: Thu Dec 11 22:04:19 2008 +0100 nl80211: Add signal strength and bandwith to nl80211station info This patch adds signal strength and transmission bitrate to the station_info of nl80211. Signed-off-by: Henning Rogge Acked-by: Johannes Berg Signed-off-by: John W. Linville commit a1d94aa5560dc6b06baf30ae477115b51dc25461 Author: Randy Dunlap Date: Fri Dec 19 08:49:30 2008 -0800 kernel-doc: check for extra kernel-doc notations Add functionality to check for function parameters or structure (or union/typedef/enum) field members that are described in kernel-doc but are not part of the expected (declared) parameters or structure. These generate warnings that are called "Excess" descriptions. Signed-off-by: Randy Dunlap Signed-off-by: Sam Ravnborg commit eb63212868c348cc6d3ec6929d7d98f7d29493e9 Author: Takashi Iwai Date: Fri Dec 19 16:39:48 2008 +0100 ALSA: hda - Power up always when no jack detection is available When no jack detection is available, the pins should be always turned on since it can't be turned on/off dynamically via unsol events. Signed-off-by: Takashi Iwai commit 213cc060797378059a28ebc5c539f3e9a80160bd Author: Pekka J Enberg Date: Fri Dec 19 12:08:39 2008 +0200 ftrace: introduce tracing_reset_online_cpus() helper Impact: cleanup This patch factors out common code from multiple tracers into a tracing_reset_online_cpus() function and converts the tracers to use it. Signed-off-by: Pekka Enberg Signed-off-by: Ingo Molnar commit 9158923228822c08ed3116bfe21472261a05a725 Author: Takashi Iwai Date: Fri Dec 19 15:59:40 2008 +0100 ALSA: hda - Fix unused variable warnings in patch_sigmatel.c Fixed "unused varible" warnings in patch_sigmatel.c that have been introduced by the last changes. Signed-off-by: Takashi Iwai commit 6030634ac3dc818d2eafa3ddf00abba88918b3bd Merge: d4d9cd03... 7662453... Author: Takashi Iwai Date: Fri Dec 19 15:43:24 2008 +0100 Merge branch 'topic/hda-stac-fix' into topic/hda commit 70043058a6968917c00c8d4cff5bfc0e095831ec Merge: 40aa4a3... 19b3f31... Author: Takashi Iwai Date: Fri Dec 19 15:36:58 2008 +0100 Merge branch 'fix/asoc' into topic/asoc commit d4d9cd0338892e7f0d65f8a110473d175535cd5d Author: Takashi Iwai Date: Fri Dec 19 15:19:11 2008 +0100 ALSA: hda - Add probe_only option Added probe_only module option to hd-audio driver. This option specifies whether the driver creates and initializes the codec-parser after probing. When this option is set, the driver skips the codec parsing and initialization but gives you proc and other accesses. It's useful to see the initial codec state for debugging. The default of this value is off, so the default behavior is as same as before. Signed-off-by: Takashi Iwai commit 766245348db4b047a9b53548b5b893cd5115decc Author: Takashi Iwai Date: Fri Dec 19 10:09:47 2008 +0100 ALSA: hda - Use more distinct name for a unique volume in STAC/IDT When the line_out has only one DAC and it's unique (i.e. not shared by other outputs), assign a more reasonable and distinct mixer name such as "Headphone" or "Speaker". Signed-off-by: Takashi Iwai commit c21ca4a872697aeda4fe91bf9b6cc8380c62827c Author: Takashi Iwai Date: Fri Dec 19 09:26:08 2008 +0100 ALSA: hda - Rework on STAC/IDT auto-configuration code The current auto-configuration code has several problems especially for the new IDT codecs, e.g. wrong assignment of pins and DACs or coupled volume for speaker and headphone. This patch is a fairly large rewrite of the auto-configuration code. Some remaks - mic_switch and line_switch contain NIDs instead of bool - dac_list isn't fixed for IDT 92HD* codecs now, they are all probed - extra HP and speakers are stored in extra_dacs[]. Signed-off-by: Takashi Iwai commit 03c6901ea22bbb532586334d5b79941ccf56d5b0 Merge: 692f904... 8f55c1e... Author: Takashi Iwai Date: Fri Dec 19 14:24:13 2008 +0100 Merge branch 'fix/hda' into topic/hda commit 8df0f70751dc0e51d0550caee3416339183c5767 Author: Takashi Iwai Date: Fri Dec 19 13:55:17 2008 +0100 ALSA: ca0106 - Fix typo in resume code The register and channel_id pair were twisted in the pm code... Oh my. Signed-off-by: Takashi Iwai commit 692f90421d3716ef0d0f120d9d2c9684009a4a01 Author: Takashi Iwai Date: Fri Dec 19 12:44:46 2008 +0100 ALSA: hda - Fix HD-Audio.txt reference of model list The model list is now in HD-Audio-Models.txt. Signed-off-by: Takashi Iwai commit 3d4758299fa6180ff9304634c67ffdd44272c8e8 Author: Takashi Iwai Date: Fri Dec 19 12:13:18 2008 +0100 ALSA: ca0106 - Add IEC958 PCM Stream controls Added "IEC958 PCM Stream" controls for the per-stream IEC958 status bits. Using this instead of "IEC958 Default" is safer since the status bits will be recovered to the default states after closing the PCM stream. Signed-off-by: Takashi Iwai commit 86effd7e12ca63cecfd218717473d606e138e5e1 Author: Takashi Iwai Date: Fri Dec 19 12:04:06 2008 +0100 ALSA: ca0106 - Don't override the values at resume Don't override some values in ca0106_init_chip() at resume. Signed-off-by: Takashi Iwai commit 4f2d23e1c3fe0abaf87fead3033c6cc3671b4d1c Author: Takashi Iwai Date: Fri Dec 19 10:14:13 2008 +0100 ALSA: hda - Use snd_hda_ctl_add() in patch_sigmatel.c Fixed the call of snd_ctl_add() by replacing with snd_hda_ctl_add() so that this mixer element can be tracked for re-configuration. Signed-off-by: Takashi Iwai commit 827057f5c12f5e10dc0279596db940aa6ddf8d9b Author: Takashi Iwai Date: Fri Dec 19 10:12:02 2008 +0100 ALSA: hda - Add missing initializations of amp and verb caches The re-initializations of codec amp and verb caches are missing at reconfig, which may cause Oops occasionally. Signed-off-by: Takashi Iwai commit 30cd324e9787ccc9a5ede59742d5409857550692 Merge: c71dd42... 6d102bc... 3d9101e... Author: Ingo Molnar Date: Fri Dec 19 09:42:40 2008 +0100 Merge branches 'tracing/ftrace', 'tracing/ring-buffer' and 'tracing/urgent' into tracing/core Conflicts: include/linux/ftrace.h commit 345077cd98ff5532b2d1158013c3fec7b1ae85ec Author: Suresh Siddha Date: Thu Dec 18 18:09:21 2008 -0800 x86: fix intel x86_64 llc_shared_map/cpu_llc_id anomolies Impact: fix wrong cache sharing detection on platforms supporting > 8 bit apicid's In the presence of extended topology eumeration leaf 0xb provided by cpuid, 32bit extended initial_apicid in cpuinfo_x86 struct will be updated by detect_extended_topology(). At this instance, we should also reinit the apicid (which could also potentially be extended to 32bit). With out this there will potentially be duplicate apicid's populated in the per cpu's cpuinfo_x86 struct, resulting in wrong cache sharing topology etc detected by init_intel_cacheinfo(). Reported-by: Dimitri Sivanich Signed-off-by: Suresh Siddha Acked-by: Dimitri Sivanich Signed-off-by: Ingo Molnar Cc: commit cae51176c1082ecb59706056910f8a217d433981 Author: Takashi Iwai Date: Fri Dec 19 08:36:53 2008 +0100 ALSA: split HD-audio model list to HD-Audio-Models.txt Split the list of model option values to a separate file, HD-Audio-Models.txt, from ALSA-Configuration.txt. Signed-off-by: Takashi Iwai commit 335b986be79122b7323e09727e14c6a02bcf7746 Merge: 0ff5551... 132bb7c... Author: Takashi Iwai Date: Fri Dec 19 08:25:46 2008 +0100 Merge branch 'topic/hda-doc' into topic/hda commit 0ff555192a8d20385d49d1c420e2e8d409b3c0da Merge: 3218c17... 9e43f0d... Author: Takashi Iwai Date: Fri Dec 19 08:22:57 2008 +0100 Merge branch 'fix/hda' into topic/hda commit c94cb314503a69492bf4455dce4f6d300cff0851 Author: Oliver Neukum Date: Thu Dec 18 23:00:59 2008 -0800 net: prepare usb net drivers for addition of status as a parameter USB is going to switch the signature of the callbacks to void callback(struct urb *urb, int status) This patch will ease the transition. Signed-off-by: Oliver Neukum Signed-off-by: David S. Miller commit ab5024ab23b78c86a0a1425defcdde48710fe449 Author: Cyrill Gorcunov Date: Thu Dec 18 22:59:32 2008 -0800 net: ppp_generic - use DEFINE_IDR for static initialization We could use DEFINE_IDR for statically allocated idr that allow us to save a few lines of code. And spell fix. Signed-off-by: Cyrill Gorcunov Signed-off-by: David S. Miller commit a109a5b916bc180e14fad0d1e9c37a08c85652c0 Author: Karen Xie Date: Thu Dec 18 22:56:20 2008 -0800 cxgb3: manage private iSCSI IP address The accelerated iSCSI traffic could use a private IP address unknown to the OS: - The IP address is required in both drivers to manage ARP requests and connection set up. - Added an control call to retrieve the ip address. - Reply to ARP requests dedicated to the private IP address. Signed-off-by: Divy Le Ray Signed-off-by: Karen Xie Signed-off-by: David S. Miller commit 221b3d60cbb2740ec7d46a4f1ea6d3318a112e51 Author: Anton Vorontsov Date: Thu Dec 18 08:23:35 2008 +0000 ucc_geth: Remove UGETH_FILTERING dead code The code appears to be dead: nobody call these functions, plus build breaks when UGETH_FILTERING is enabled: ucc_geth.c:1848: warning: 'struct enet_addr' declared inside parameter list ucc_geth.c:1848: warning: its scope is only this definition or declaration, which is probably not what you want ucc_geth.c: In function 'ugeth_82xx_filtering_get_match_addr_in_hash': ucc_geth.c:1856: error: dereferencing pointer to incomplete type ucc_geth.c:1874: error: dereferencing pointer to incomplete type ucc_geth.c:1877: warning: return from incompatible pointer type ucc_geth.c: At top level: ucc_geth.c:1885: warning: 'struct enet_addr' declared inside parameter list ucc_geth.c: In function 'ugeth_82xx_filtering_add_addr_in_hash': ucc_geth.c:1894: error: dereferencing pointer to incomplete type ucc_geth.c:1909: warning: passing argument 2 of 'ugeth_82xx_filtering_get_match_addr_in_hash' from incompatible pointer type ucc_geth.c:1909: warning: assignment from incompatible pointer type ucc_geth.c:1918: error: dereferencing pointer to incomplete type ucc_geth.c: At top level: ucc_geth.c:1928: warning: 'struct enet_addr' declared inside parameter list ucc_geth.c: In function 'ugeth_82xx_filtering_clear_addr_in_hash': ucc_geth.c:1947: warning: passing argument 2 of 'ugeth_82xx_filtering_get_match_addr_in_hash' from incompatible pointer type ucc_geth.c:1947: warning: assignment from incompatible pointer type ucc_geth.c:1954: error: dereferencing pointer to incomplete type ucc_geth.c: At top level: ucc_geth.c:2060: warning: 'struct enet_addr' declared inside parameter list ucc_geth.c: In function 'ugeth_82xx_filtering_add_addr_in_paddr': ucc_geth.c:2064: error: dereferencing pointer to incomplete type ucc_geth.c:2073: error: dereferencing pointer to incomplete type ucc_geth.c:2075: warning: passing argument 2 of 'hw_add_addr_in_paddr' from incompatible pointer type make[2]: *** [ucc_geth.o] Error 1 The code is there since the driver was merged, and nobody seem to be interested in fixing or actually using it. If we ever want the filtering support, we can always revert the patch and fix it, but so far it just draws reader's attention. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 3e73fc9a12679a546284d597c1f19165792d0b83 Author: Anton Vorontsov Date: Thu Dec 18 08:23:33 2008 +0000 ucc_geth: Fix IO memory (un)mapping code The driver doesn't check ioremap() return value, and doesn't free the remapped memory. This patch fixes it. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit ba574696a34eb518979e742b35ccd30dec284583 Author: Anton Vorontsov Date: Thu Dec 18 08:23:31 2008 +0000 ucc_geth: Cleanup repetitive ucc_geth_memclean() calls No need to call ucc_geth_memclean() so many times, just check for errors in ucc_geth_open(), and call ucc_geth_stop() in case of errors. The ucc_geth_stop() may be called anytime and will do the right thing. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 67c2fb8ff0eda3cee95954a1dd245c3ce1a10486 Author: Anton Vorontsov Date: Thu Dec 18 08:23:29 2008 +0000 ucc_geth: Fix IRQ freeing code in ucc_geth_open() open() routine calls stop() in case of errors, the function will try to free the requested IRQ. But we don't know if it was actually requested, so the code might issue bogus free_irq(0, dev) call. Fix this by rearranging the code so that now request_irq() is the last call in the open() routine, and move free_irq() into the close(). Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 1762a29ae5ebdd974eb2ba0c36b56ab6f7a9c16d Author: Anton Vorontsov Date: Thu Dec 18 08:23:26 2008 +0000 ucc_geth: Fix TX watchdog timeout handling The timeout handling code is currently broken in several ways: - It calls stop() (which frees all the memory and IRQ), and then calls startup() (which won't re-request IRQ, neither it will re-init the Fast UCC structure). - It calls these routines from the softirq context, which is wrong, since stop() calls free_irq() (which might sleep) and startup() allocates things with GFP_KERNEL. - It won't soft-reset the PHY. We need the PHY reset for at least MPC8360E-MDS boards with Marvell 88E1111 PHY, the PHY won't recover from timeouts w/o the reset. So the patch fixes these problems by implementing the workqueue for the timeout handling, and there we fully re-open the device via close() and open() calls. The close/open paths do the right things, and I can see that the driver actually survive the timeouts. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit b3431c647662a3647f3500a12ec85d65e3622759 Author: Anton Vorontsov Date: Thu Dec 18 08:23:22 2008 +0000 ucc_geth: Fix endless loop in stop_{tx,rx} routines Currently the routines wait for the various bits w/o an assumption that bits may never get set. When timeouts happen I see that these bits never get set and so the routines hang the kernel. With this patch we'll wait the graceful stop for 100 ms, and then will simply exit. There is nothing* we can do about that, but it's OK since we'll do full reset later. * Well, actually, there is also not-graceful variant for the TX stop, but specs says that we never should use it. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 6086ebca13ddc9cfaaa25248ba8ebef35103fb74 Author: Matt Mackall Date: Thu Dec 18 19:54:22 2008 -0800 tcp: Stop scaring users with "treason uncloaked!" The original message was unhelpful and extremely alarming to our poor users, despite its charm. Make it less frightening. Signed-off-by: Matt Mackall Signed-off-by: David S. Miller commit e98def1f71fa0a6a37e12a56eb52ce5ed9e2e800 Author: Jesper Dangaard Brouer Date: Thu Dec 18 19:51:56 2008 -0800 NIU: Implement discard counters, optimize Optimize the lightly loaded case, by only synchronizing discards stats when qlen > 10 indicate potential for drops. Notice Robert Olsson might disagree with this patch. Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit d231776fda4a1ed754298720c5fbc29eb34f130c Author: Jesper Dangaard Brouer Date: Thu Dec 18 19:51:26 2008 -0800 NIU: Implement discard counters, info/debug statements. Discard packet counter debug statements that can be turned on at runtime by users to assist debugging of the driver code. Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit b8a606b871d37e03b92be1bd3deedeee97ea4f13 Author: Jesper Dangaard Brouer Date: Thu Dec 18 19:50:49 2008 -0800 NIU: Implement discard counters Implementing discard counters for the NIU driver turned out to be more complicated than first assumed. The discard counters for the NIU neptune chip are only 16-bit (even though this is a 64-bit chip). These 16-bit counters can overflow quickly, especially considering this is a 10Gbit/s ethernet card. The overflow indication bit is, unfortunatly, not usable as the counter value does not wrap, but remains at max value 0xFFFF. Resulting in lost counts until the counter is reset. The read and reset scheme also poses a problem. Both in theory and in practice counters can be lost in between reading nr64() and clearing the counter nw64(). For this reason, the number of counter clearings nw64() is limited/reduced. On the fast-path the counters are only syncronized once it exceeds 0x7FFF. When read by userspace, its syncronized fully. Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 5664dd5561850df580414783cf3c8e0aa834c62e Author: Baruch Siach Date: Thu Dec 18 19:39:14 2008 -0800 enc28j60: reduce the number of spi transfers in enc28j60_set_bank() A major source of overhead in the enc28j60 driver is the SPI transfers. Each SPI transfer entails two kernel thread context switches. One major source of SPI transfers is the enc28j60_set_bank() functions which runs before every register access. This patch reduces the number of SPI transfers that enc28j60_set_bank() performs in two ways: 1. removes unnecessary bank switch for the registers that are present in all banks 2. when switching from banks 0 or 3 to banks 1 or 2 (i.e. only one bit changes) enc28j60_set_bank() does only one SPI transfer instead of two According to my tests these changes reduce the number of SPI transfers in about 25%. Signed-off-by: Baruch Siach Signed-off-by: David S. Miller commit b88a2a22c6670c31586d1a716255eae4c320b363 Author: Wang Chen Date: Thu Dec 18 19:36:46 2008 -0800 netdevice zd1201: Use after free | commit 3d29b0c33d431ecc69ec778f8c236d382f59a85f | Author: John W. Linville | Date: Fri Oct 31 14:13:12 2008 -0400 | | netdevice zd1201: Convert directly reference of netdev->priv to netdev_priv() | | We have some reasons to kill netdev->priv: | 1. netdev->priv is equal to netdev_priv(). | 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously | netdev_priv() is more flexible than netdev->priv. | But we cann't kill netdev->priv, because so many drivers reference to it | directly. | | OK, becasue Dave S. Miller said, "every direct netdev->priv usage is a bug", | and I want to kill netdev->priv later, I decided to convert all the direct | reference of netdev->priv first. | | (Original patch posted by Wang Chen w/ above | changelog but using dev->ml_priv. That doesn't seem appropriate | to me for this driver, so I've revamped it to use netdev_priv() | instead. -- JWL) This commit changed the allocation of netdev, but didn't change the free method of it. This causes "zd" be used after the memory, which is pointed by "zd", being freed by free_netdev(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 3de77cf23e9a19b9fc28e3b29371308325428c39 Author: David S. Miller Date: Thu Dec 18 19:23:56 2008 -0800 Revert "xfrm: Accept ESP packets regardless of UDP encapsulation mode" This reverts commit e061b165c7f4ec5e2e160d990b49011b5b6e5c6a. Signed-off-by: David S. Miller commit f34a10bd9f8cc95ebdc69a079db195636b2e22e0 Author: Ingo Molnar Date: Fri Dec 19 01:36:14 2008 +0100 x86: fix warning in arch/x86/kernel/microcode_amd.c this warning: arch/x86/kernel/microcode_amd.c: In function ‘apply_microcode_amd’: arch/x86/kernel/microcode_amd.c:163: warning: cast from pointer to integer of different size arch/x86/kernel/microcode_amd.c:163: warning: cast from pointer to integer of different size triggers because we want to pass the address to the microcode MSR, which is 64-bit even on 32-bit. Cast it explicitly to express this. Signed-off-by: Ingo Molnar commit c71dd42db2c6f1637b92502a214587431c1a6ad2 Author: Ingo Molnar Date: Fri Dec 19 01:09:51 2008 +0100 tracing: fix warnings in kernel/trace/trace_sched_switch.c these warnings: kernel/trace/trace_sched_switch.c: In function ‘tracing_sched_register’: kernel/trace/trace_sched_switch.c:96: warning: passing argument 1 of ‘register_trace_sched_wakeup_new’ from incompatible pointer type kernel/trace/trace_sched_switch.c:112: warning: passing argument 1 of ‘unregister_trace_sched_wakeup_new’ from incompatible pointer type kernel/trace/trace_sched_switch.c: In function ‘tracing_sched_unregister’: kernel/trace/trace_sched_switch.c:121: warning: passing argument 1 of ‘unregister_trace_sched_wakeup_new’ from incompatible pointer type Trigger because sched_wakeup_new tracepoints need the same trace signature as sched_wakeup - which was changed recently. Fix it. Signed-off-by: Ingo Molnar commit 3bddb9a3246f6df5cf3b7655cb541ac10203bb71 Author: Ingo Molnar Date: Fri Dec 19 01:03:29 2008 +0100 tracing: fix warning in kernel/trace/trace.c this warning: kernel/trace/trace.c: In function ‘print_lat_fmt’: kernel/trace/trace.c:1826: warning: unused variable ‘state’ Triggers because 'state' has become unused - remove it. Signed-off-by: Ingo Molnar commit 9f221495997d180df51ce4d8296669445dd3e7b3 Author: Hiroshi Shimamoto Date: Thu Dec 18 14:47:37 2008 -0800 x86: ia32.h: remove unused struct sigfram32 and rt_sigframe32 Impact: cleanup Remove struct sigfram32 and rt_sigframe32 because there is no user. Signed-off-by: Hiroshi Shimamoto Signed-off-by: H. Peter Anvin commit 8869a2e5d3a66d5b63b948052d60cd13ede8b735 Author: Hiroshi Shimamoto Date: Thu Dec 18 14:46:52 2008 -0800 x86: asm-offset_64: use rt_sigframe_ia32 Impact: cleanup Use rt_sigframe_ia32 instead of rt_sigframe32. Signed-off-by: Hiroshi Shimamoto Signed-off-by: H. Peter Anvin commit b2fa739c06931d167b6d2aa7b514ab7f30d04dc0 Author: Hiroshi Shimamoto Date: Thu Dec 18 14:43:34 2008 -0800 x86: sigframe.h: include headers for dependency Impact: cleanup Include following headers for dependency. asm/sigcontext.h asm/siginfo.h asm/ucontext.h Signed-off-by: Hiroshi Shimamoto Signed-off-by: H. Peter Anvin commit d1769d5475176124af04fa69848b022c98c4bc37 Author: Jaswinder Singh Date: Fri Dec 19 00:03:56 2008 +0530 x86: traps.c declare functions before they get used Impact: cleanup In asm/traps.h :- do_double_fault : added under X86_64 sync_regs : added under X86_64 math_error : moved out from X86_32 as it is common for both 32 and 64 bit math_emulate : moved from X86_32 as it is common for both 32 and 64 bit smp_thermal_interrupt : added under X86_64 mce_threshold_interrupt : added under X86_64 Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit a2ced6e173e0c93870f79856e97825f4e180891e Author: venkatesh.pallipadi@intel.com Date: Thu Dec 18 11:41:33 2008 -0800 x86: PAT: update documentation to cover pgprot and remap_pfn related changes - v3 Impact: Documentation only. Add documentation related to pgprot_* change. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 2520bd3123c00272f818a176c92d03c7d0a113d6 Author: venkatesh.pallipadi@intel.com Date: Thu Dec 18 11:41:32 2008 -0800 x86: PAT: add pgprot_writecombine() interface for drivers - v3 Impact: New mm functionality. Add pgprot_writecombine. pgprot_writecombine will be aliased to pgprot_noncached when not supported by the architecture. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 8a7b12f70fb135a1b1d865687de3edcdc780f6d1 Author: venkatesh.pallipadi@intel.com Date: Thu Dec 18 11:41:31 2008 -0800 x86: PAT: change pgprot_noncached to uc_minus instead of strong uc - v3 Impact: mm behavior change. Make pgprot_noncached uc_minus instead of strong UC. This will make pgprot_noncached to be in line with ioremap_nocache() and all the other APIs that map page uc_minus on uc request. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 5899329b19100c0b82dc78e9b21ed8b920c9ffb3 Author: venkatesh.pallipadi@intel.com Date: Thu Dec 18 11:41:30 2008 -0800 x86: PAT: implement track/untrack of pfnmap regions for x86 - v3 Impact: New mm functionality. Hookup remap_pfn_range and vm_insert_pfn and corresponding copy and free routines with reserve and free tracking. reserve and free here only takes care of non RAM region mapping. For RAM region, driver should use set_memory_[uc|wc|wb] to set the cache type and then setup the mapping for user pte. We can bypass below reserve/free in that case. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 2ab640379a0ab4cef746ced1d7e04a0941774bcb Author: venkatesh.pallipadi@intel.com Date: Thu Dec 18 11:41:29 2008 -0800 x86: PAT: hooks in generic vm code to help archs to track pfnmap regions - v3 Impact: Introduces new hooks, which are currently null. Introduce generic hooks in remap_pfn_range and vm_insert_pfn and corresponding copy and free routines with reserve and free tracking. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit e121e418441525b5636321fe03d16f0193ad218e Author: venkatesh.pallipadi@intel.com Date: Thu Dec 18 11:41:28 2008 -0800 x86: PAT: add follow_pfnmp_pte routine to help tracking pfnmap pages - v3 Impact: New currently unused interface. Add a generic interface to follow pfn in a pfnmap vma range. This is used by one of the subsequent x86 PAT related patch to keep track of memory types for vma regions across vma copy and free. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit 3c8bb73ace6249bd089b70c941440441940e3365 Author: venkatesh.pallipadi@intel.com Date: Thu Dec 18 11:41:27 2008 -0800 x86: PAT: store vm_pgoff for all linear_over_vma_region mappings - v3 Impact: Code transformation, new functions added should have no effect. Drivers use mmap followed by pgprot_* and remap_pfn_range or vm_insert_pfn, in order to export reserved memory to userspace. Currently, such mappings are not tracked and hence not kept consistent with other mappings (/dev/mem, pci resource, ioremap) for the sme memory, that may exist in the system. The following patchset adds x86 PAT attribute tracking and untracking for pfnmap related APIs. First three patches in the patchset are changing the generic mm code to fit in this tracking. Last four patches are x86 specific to make things work with x86 PAT code. The patchset aso introduces pgprot_writecombine interface, which gives writecombine mapping when enabled, falling back to pgprot_noncached otherwise. This patch: While working on x86 PAT, we faced some hurdles with trackking remap_pfn_range() regions, as we do not have any information to say whether that PFNMAP mapping is linear for the entire vma range or it is smaller granularity regions within the vma. A simple solution to this is to use vm_pgoff as an indicator for linear mapping over the vma region. Currently, remap_pfn_range only sets vm_pgoff for COW mappings. Below patch changes the logic and sets the vm_pgoff irrespective of COW. This will still not be enough for the case where pfn is zero (vma region mapped to physical address zero). But, for all the other cases, we can look at pfnmap VMAs and say whether the mappng is for the entire vma region or not. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Suresh Siddha Signed-off-by: H. Peter Anvin commit f0bc2202e0373eb8e9b1ddbec930e2e681357db8 Author: Jaswinder Singh Date: Wed Dec 17 23:20:05 2008 +0530 x86: process.c declare c1e_remove_cpu before they get used Impact: cleanup, avoid sparse warning Included asm/idle.h for c1e_remove_cpu() declaration. Fixes this sparse warning: CHECK arch/x86/kernel/process.c arch/x86/kernel/process.c:284:6: warning: symbol 'c1e_remove_cpu' was not declared. Should it be static? Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit 5c2628e8b4f670d0954053444289e2b018be957a Author: Hiroshi Shimamoto Date: Thu Dec 18 09:18:35 2008 -0800 x86: sigframe.h: add guard macro Impact: cleanup Add missing guard macro _ASM_X86_SIGFRAME_H. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit f269b07e862c395d6981ab2c05d6bc34b0249e90 Author: Vegard Nossum Date: Thu Dec 18 18:35:06 2008 +0100 x86: revert CONFIG_RELOCATABLE=y defconfig change This commit: commit 5cb04df8d3f03e37a19f2502591a84156be71772 Author: Ingo Molnar Date: Sun May 4 19:49:04 2008 +0200 x86: defconfig updates changed CONFIG_RELOCATABLE from n to y, which may lead to a mismatch between the vmlinux debug information and the runtime location of the kernel, even when the bootloader does not relocate the kernel. Revert the specific change. Works for me with GRUB and qemu. Reference: http://lkml.org/lkml/2008/11/25/243 Signed-off-by: Vegard Nossum Signed-off-by: Ingo Molnar commit 179efcb47d5a5dd34a45be3f0eca4bffa717c6b4 Author: Vegard Nossum Date: Tue Dec 16 12:33:43 2008 +0100 kbuild: add headerdep used to detect inclusion cycles in header files Signed-off-by: Vegard Nossum Signed-off-by: Sam Ravnborg commit 40aa4a30d0fd075fb934de4ee8163056827052ab Author: Mark Brown Date: Tue Dec 16 10:15:12 2008 +0000 ASoC: Add WM8350 AudioPlus codec driver The WM8350 is an integrated audio and power management subsystem which provides a single-chip solution for portable audio and multimedia systems. The integrated audio CODEC provides all the necessary functions for high-quality stereo recording and playback. Programmable on-chip amplifiers allow for the direct connection of headphones and microphones with a minimum of external components. A programmable low-noise bias voltage is available to feed one or more electret microphones. Additional audio features include programmable high-pass filter in the ADC input path. This driver was originally written by Liam Girdwood with further updates from me. Signed-off-by: Mark Brown commit b8b33cb5608a3bb1b072548dc89159ef614096ab Author: Mark Brown Date: Thu Dec 18 11:19:30 2008 +0000 ASoC: Complain if we fail to create DAPM controls This should never happen and it's helpful to identify the specific control that failed when it does happen. Signed-off-by: Mark Brown commit 0b34a3d03e2fa615a786027b1ef4cbbd8c807f2c Author: Mark Brown Date: Tue Dec 16 14:44:48 2008 +0000 ASoC: Ease merge difficulties from new architectures Rather than listing lots of architectures per line in Kconfig and Makefile, causing merge conflicts all the time, have one per line in alphabetical order. Signed-off-by: Mark Brown commit 9c2c48020ec0dd6ecd27e5a1298f73b40d85a595 Author: Ken Chen Date: Tue Dec 16 23:41:22 2008 -0800 schedstat: consolidate per-task cpu runtime stats Impact: simplify code When we turn on CONFIG_SCHEDSTATS, per-task cpu runtime is accumulated twice. Once in task->se.sum_exec_runtime and once in sched_info.cpu_time. These two stats are exactly the same. Given that task->se.sum_exec_runtime is always accumulated by the core scheduler, sched_info can reuse that data instead of duplicate the accounting. Signed-off-by: Ken Chen Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 6d102bc68f3dd2ae0e305b09170b1751aa67baeb Author: Lai Jiangshan Date: Wed Dec 17 17:48:23 2008 +0800 tracing/ring-buffer: remove unused ring_buffer size Impact: remove dead code struct ring_buffer.size is not set after ring_buffer is initialized or resized. it is always 0. we can use "buffer->pages * PAGE_SIZE" to get ring_buffer's size Signed-off-by: Lai Jiangshan Signed-off-by: Ingo Molnar commit 7c9c160c54fc545efc23881344593868e5f717bd Author: Jaswinder Singh Date: Wed Dec 17 23:18:52 2008 +0530 x86: tls.c declare sys_set_thread_area and sys_get_thread_area before they get used Impact: cleanup In asm/syscalls.h move out sys_set_thread_area() and sys_get_thread_area() as they are common for both 32 and 64 bit. Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit 57a37505d19f4dfeee26f0fd7ea38ed6f1d10cbe Author: Jaswinder Singh Date: Wed Dec 17 23:17:21 2008 +0530 x86: time_64.c timer_interrupt() should be static Impact: cleanup, reduce kernel size a bit Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit 3d9101e92529e1ff6014f95a69afc82f37b9b13a Author: Thomas Gleixner Date: Wed Dec 17 22:34:13 2008 +0100 trace: fix task state printout Impact: fix occasionally incorrect trace output The tracing code has interesting varieties of printing out task state. Unfortunalely only one of the instances is correct as it copies the code from sched.c:sched_show_task(). The others are plain wrong as they treatthe bitfield as an integer offset into the character array. Also the size check of the character array is wrong as it includes the trailing \0. Use a common state decoder inline which does the Right Thing. Signed-off-by: Thomas Gleixner Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit ea3a6d6d60b2504c573fe3415f6617e8310c0236 Author: Steven Rostedt Date: Wed Dec 17 15:05:36 2008 -0500 ftrace: add not to regex on filtering functions Impact: enhancement Ingo Molnar has asked about a way to remove items from the filter lists. Currently, you can only add or replace items. The way items are added to the list is through opening one of the list files (set_ftrace_filter or set_ftrace_notrace) via append. If the file is opened for truncate, the list is cleared. echo spin_lock > /debug/tracing/set_ftrace_filter The above will replace the list with only spin_lock echo spin_lock >> /debug/tracing/set_ftrace_filter The above will add spin_lock to the list. Now this patch adds: echo '!spin_lock' >> /debug/tracing/set_ftrace_filter This will remove spin_lock from the list. The limited glob features of these lists also can be notted. echo '!spin_*' >> /debug/tracing/set_ftrace_filter This will remove all functions that start with 'spin_' Note: echo '!spin_*' > /debug/tracing/set_ftrace_filter will simply clear out the list (notice the '>' instead of '>>') Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit e05a43b744fb9518cbf8539a7ef33164ac60a70f Author: Steven Rostedt Date: Wed Dec 17 09:43:00 2008 -0500 trace: better use of stack_trace_enabled for boot up code Impact: clean up Andrew Morton suggested to use the stack_tracer_enabled variable to decide whether or not to start stack tracing on bootup. This lets us remove the start_stack_trace variable. Reported-by: Andrew Morton Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit f38f1d2aa5a3520cf05da7cd6bd12fe2b0c509b7 Author: Steven Rostedt Date: Tue Dec 16 23:06:40 2008 -0500 trace: add a way to enable or disable the stack tracer Impact: enhancement to stack tracer The stack tracer currently is either on when configured in or off when it is not. It can not be disabled when it is configured on. (besides disabling the function tracer that it uses) This patch adds a way to enable or disable the stack tracer at run time. It defaults off on bootup, but a kernel parameter 'stacktrace' has been added to enable it on bootup. A new sysctl has been added "kernel.stack_tracer_enabled" to let the user enable or disable the stack tracer at run time. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 40874491f9e9a4cb08eaf663dbe018bf5671975a Merge: d680fe4... d072c25... Author: Ingo Molnar Date: Thu Dec 18 12:51:05 2008 +0100 Merge branches 'tracing/ftrace' and 'tracing/hw-branch-tracing' into tracing/core commit 1f04128a3db7c0f0e8b5d25323eba70ac342f47f Author: Takashi Iwai Date: Thu Dec 18 12:17:55 2008 +0100 ALSA: hda - Convert from takslet_hi_schedule() to tasklet_schedule() Replace all tasklet_hi_schedule() callers with the normal tasklet_schedule(). The former often causes troubles with RT-kernels, and has actually no merit. Signed-off-by: Takashi Iwai commit d98f9d84422c393103dc7569dc8444bac628f7ac Author: Hiroshi Shimamoto Date: Wed Dec 17 18:52:45 2008 -0800 x86: ia32_signal: use sigframe.h Impact: cleanup Use arch/x86/include/asm/sigframe.h instead of defining redundant structures. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 3b0d29ee1c73b6b90bfddd10f7b8e86632b6b694 Author: Hiroshi Shimamoto Date: Wed Dec 17 18:51:46 2008 -0800 x86: ia32_signal: rename struct sigframe and rt_sigframe Impact: cleanup, prepare to include sigframe.h Rename struct sigframe to struct sigframe_ia32 and struct rt_sigframe to struct rt_sigframe_ia32. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit c85c2ff877c9305f801f7d5b9e6382cb05a03d45 Author: Hiroshi Shimamoto Date: Wed Dec 17 18:51:08 2008 -0800 x86: signal: prepare to include from ia32_signal.c Impact: cleanup, prepare to use from ia32_signal.c Make struct sigframe_ia32 and rt_sigframe_ia32 visible to ia32_signal.c. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 41af86fad3c40646b9748279e3862781e937a5d2 Author: Hiroshi Shimamoto Date: Wed Dec 17 18:50:32 2008 -0800 x86: signal: move sigframe.h to arch/x86/include/asm Impact: cleanup, move header file Move arch/x86/kernel/sigframe.h to arch/x86/include/asm/sigframe.h. It will be used in arch/x86/ia32/ia32_signal.c. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit a5c56eb36f999ae0ecac278e51fd1cf8feb16c2f Author: Hiroshi Shimamoto Date: Wed Dec 17 18:49:55 2008 -0800 x86: signal: rename sigframe and rt_sigframe on 32-bit Impact: cleanup, prepare to move sigframe.h On 32-bit, rename struct sigrame to struct sigframe_ia32, struct rt_sigframe to struct rt_sigframe_ia32 and several structures. And add helper macros to access the above data in arch/x86/kernel/signal.c. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit f5223763a664da16771211f9d293e18cb242b246 Author: Hiroshi Shimamoto Date: Wed Dec 17 18:47:17 2008 -0800 x86: signal: move ia32 func declarations into arch/x86/kernel/signal.c Impact: cleanup Move declarations of ia32_setup_rt_frame() and ia32_setup_frame() into arch/x86/kernel/signal.c. This is for future use of sigframe.h. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 3218c178b41b420cb7e0d120c7a137a3969242e5 Author: Takashi Iwai Date: Thu Dec 18 09:17:56 2008 +0100 ALSA: hda - Remove duplicated strings from codec name Remove codec vendor names from the codec name strings. The vendor name is already given from the vendor name table, so displayed doubly. Signed-off-by: Takashi Iwai commit 74c611334ff131f2b87c7634314bde9e7fd98653 Author: Takashi Iwai Date: Thu Dec 18 09:11:33 2008 +0100 ALSA: hda - Add Intel vendor id string Added Intel codec vendor id string (0x8086). Also fixed Intel-HDMI codec name strings, too. Signed-off-by: Takashi Iwai commit 49ad9599d42da4787d5b3a19263440e0fcd4d1fc Author: David S. Miller Date: Wed Dec 17 22:11:38 2008 -0800 Revert "net: release skb->dst in sock_queue_rcv_skb()" This reverts commit 70355602879229c6f8bd694ec9c0814222bc4936. As pointed out by Mark McLoughlin IP_PKTINFO cmsg data is one post-queueing user, so this optimization is not valid right now. Signed-off-by: David S. Miller commit 3b5b35d02264580950d1e1565431b99d97c20ded Author: Holger Eitzenberger Date: Wed Dec 17 19:13:53 2008 -0800 bonding: use port_params in __update_lacpdu_from_port Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 3c52065fbbf3bd11776d63d43e18d0fd285b02e2 Author: Holger Eitzenberger Date: Wed Dec 17 19:13:27 2008 -0800 bonding: use port_params in __update_default_selected() I also removed some of the unneeded braces in the if condition to improve readability and a little bit of reformatting. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit ce6a49ad401d78ff1f66e2a55cf445d0f45d8146 Author: Holger Eitzenberger Date: Wed Dec 17 19:13:07 2008 -0800 bonding: use port_params in __update_selected() Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit a6ae186b9a950f4d0467cb9c3661965f442176de Author: Holger Eitzenberger Date: Wed Dec 17 19:12:40 2008 -0800 bonding: remove various function declarations They are all defined before used, it's therefore ok to remove them. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit c7e703d01ecfb8db1557090938f0eabb51ebe3a1 Author: Holger Eitzenberger Date: Wed Dec 17 19:12:07 2008 -0800 bonding: init port_params from template Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 5eefd1adceb49cada224a383f4a36c2f27fe4968 Author: Holger Eitzenberger Date: Wed Dec 17 19:08:46 2008 -0800 bonding: use plain memcpy in __record_default() Also remove the pointless comment at the top. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit b99d6ba96d814dab06671029948f22995d603d7b Author: Holger Eitzenberger Date: Wed Dec 17 19:08:14 2008 -0800 bonding: use port_params in __record_pdu() It helps in maintaining the various partner information values from the LACPDU. It also removes the pointless comment at the top. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 1055c9aba3b6850245fe3bbb533d4747e7f904bf Author: Holger Eitzenberger Date: Wed Dec 17 19:07:38 2008 -0800 bonding: introduce and use port_params structure It generally helps to handle those values in various places, using it might make the code more readable and gives room for other improvements. The IEEE standard talks about them as "parameter values". Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit aa3128199dbe07b5be3382de590c59216f91d3e3 Author: Holger Eitzenberger Date: Wed Dec 17 19:07:16 2008 -0800 bonding: improve elaborate port_state assignment The previous code was just a funny way of assigning both values (they are both of type u8). Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 42199884594bc336c9185441cbed99a9324dab34 Author: Andy Fleming Date: Wed Dec 17 16:52:30 2008 -0800 gianfar: Continue polling until both tx and rx are empty gfar_poll would declare polling done once the rx queue was empty, but the tx queue could still have packets left. Stolen mostly from the e1000 driver. Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit 8c7396aebb68994c0519e438eecdf4d5fa9c7844 Author: Dai Haruki Date: Wed Dec 17 16:52:00 2008 -0800 gianfar: Merge Tx and Rx interrupt for scheduling clean up ring No clean up function is executed in the interrupt context by this patch. Signed-off-by: Dai Haruki Acked-by: Andy Fleming Signed-off-by: David S. Miller commit c50a5d9aedef5b0b289d07f6d73934d394e50b3f Author: Dai Haruki Date: Wed Dec 17 16:51:32 2008 -0800 gianfar: Use interface name in interrupt name to distinguish the source. Interface name (ex. eth0) is used as the prefix for the interrupt name, with _rx, _tx, and _er appended to distinguish multiple interrupts on the same interface. Signed-off-by: Dai Haruki Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit 4669bc907488f5a3ee399ced132deb6165e489a3 Author: Dai Haruki Date: Wed Dec 17 16:51:04 2008 -0800 gianfar: Add Scatter Gather support Scatter Gather support in gianfar driver to handle fragmented frames on the transmit side. Signed-off-by: Poonam Aggrwal Signed-off-by: Dai Haruki Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit 8882d9a60028a9937e9c5652cfb80d4399ce5242 Author: Andy Fleming Date: Wed Dec 17 16:50:22 2008 -0800 gianfar: Fix packet drop when out of memory The patch which fixed gianfar so it drops packets when it runs out of memory left in the code which frees the skb when it drops packets. Change the code so that we only free the skb if the new skb was successfully created. Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit a693722aec4ce26fb46c21cf4bf4422484a397a7 Author: Arnaldo Carvalho de Melo Date: Wed Dec 17 16:08:01 2008 -0800 dccp_diag: LISTEN sockets don't have CCIDs And thus when we try to use 'ss -danemi' on these sockets that have no ccid blocks (data collected using systemtap after I fixed the problem): dccp_diag_get_info sk=0xffff8801220a3100, dp->dccps_hc_rx_ccid=0x0000000000000000, dp->dccps_hc_tx_ccid=0x0000000000000000 We get an OOPS: mica.ghostprotocols.net login: BUG: unable to handle kernel NULL pointer dereferenc0 IP: [] dccp_diag_get_info+0x82/0xc0 [dccp_diag] PGD 12106f067 PUD 122488067 PMD 0 Oops: 0000 [#1] PREEMPT Fix is trivial, and 'ss -d' is working again: [root@mica ~]# ss -danemi State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 0 *:5001 *:* ino:7288 sk:220a3100ffff8801 mem:(r0,w0,f0,t0) cwnd:0 ssthresh:0 [root@mica ~]# Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit c280266a326ccabeb64b6d69fa4fd21faf5bf354 Merge: eddce36... 55dac3a... Author: Paul Mackerras Date: Thu Dec 18 11:06:12 2008 +1100 Merge branch 'linux-2.6' into next commit 9732d523212060c44a4723332bdc5ee429eeabc3 Author: Rémi Denis-Courmont Date: Wed Dec 17 15:49:09 2008 -0800 Phonet: USB CDC Phonet function for gadget framework This implements the Nokia vendor-specific communication device class function to exchange Phonet messages over USB. This function is already found in the "PC suite" USB profile of (non-Linux) Nokia handsets. Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit 893873f3965ae0173a9315534bec7628162d2243 Author: Rémi Denis-Courmont Date: Wed Dec 17 15:48:50 2008 -0800 Phonet: get rid of deferred work on the transmission path Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit be677730a0ccb6bedced6f65f2ba8f57a3c607ba Author: Rémi Denis-Courmont Date: Wed Dec 17 15:48:31 2008 -0800 Phonet: use atomic for packet TX window GPRS TX flow control won't need to lock the underlying socket anymore. Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit 57c81fffc863fb4c1804bc963bcbfb82d736c6df Author: Rémi Denis-Courmont Date: Wed Dec 17 15:47:48 2008 -0800 Phonet: allocate separate ARP type for GPRS over a Phonet pipe A separate xmit lock class supports GPRS over a Phonet pipe over a TUN device (type ARPHRD_NONE). Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit 2d91d78b68606ff7ce52ea70e187dee7831aa2f6 Author: Rémi Denis-Courmont Date: Wed Dec 17 15:47:29 2008 -0800 Phonet: allocate a non-Ethernet ARP type Also leave some room for more 802.11 types. Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit fc10af8e658936f7b2bddd077f7ddcbe1eddc066 Author: Oliver Hartkopp Date: Wed Dec 17 15:37:55 2008 -0800 vcan: whitespace fixes Signed-off-by: Oliver Hartkopp Signed-off-by: David S. Miller commit 7a95d267fb62cd6b80ef73be0592bbbe1dbd5df7 Author: Cyrill Gorcunov Date: Wed Dec 17 00:34:06 2008 -0800 net: ppp_generic - use idr technique instead of cardmaps Use idr technique instead of own implemented cardmaps. It saves us a number of lines and gives an ability to use library functions. Signed-off-by: Cyrill Gorcunov Signed-off-by: David S. Miller commit c0700f90e5300c63d01c70e157e75e4510dd2981 Author: David S. Miller Date: Tue Dec 16 23:53:20 2008 -0800 bnx2x: Fix namespace collision with FLOW_CTRL_{TX,RX} These are now defined in linux/mii.h and the bnx2x driver defines different values which are shared with hardware data structures. So add a "BNX2X_" prefix to these macro names. Based upon a report from Stephen Rothwell. Signed-off-by: David S. Miller commit f6d52432a4bc6da5de2a0bbb350f735db3206aa5 Author: David S. Miller Date: Tue Dec 16 23:45:02 2008 -0800 bnx2: Don't redefine FLOW_CTRL_{RX,TX}. They are provided generically by linux/mii.h now. Signed-off-by: David S. Miller commit 1f2435e532bd64742c3f766b7d5c17cc9d0b8558 Author: Michael Chan Date: Tue Dec 16 20:28:13 2008 -0800 bnx2: Update version to 1.9.0. And fix the 5716S pci_device_id entry to point to the proper string. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 4e1d0de95c55383f598516ebf82969260c18e4bd Author: Michael Chan Date: Tue Dec 16 20:27:45 2008 -0800 bnx2: Rename MSI-X vectors. Change MSI-X vector names to "ethx-%d". Signed-off-by: Michael Chan Signed-off-by: Benjamin Li Signed-off-by: David S. Miller commit eddce368f99b682683e09cf206eaa25131d40abe Merge: b53c758... cd85400... Author: Paul Mackerras Date: Wed Dec 17 11:01:43 2008 +1100 Merge branch 'next' of master.kernel.org:/pub/scm/linux/kernel/git/jwboyer/powerpc-4xx into next commit f40e0638237a2d3e2ce8bedf3af4b3c02cf6fff7 Author: Julia Lawall Date: Tue Dec 16 15:43:29 2008 -0800 drivers/net/hamradio: Move a dereference below a NULL test In each case, if the NULL test is necessary, then the dereference should be moved below the NULL test. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ type T; expression E; identifier i,fld; statement S; @@ - T i = E->fld; + T i; ... when != E when != i if (E == NULL) S + i = E->fld; // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit f162e97d778ec29492be8eb9bbecb65be976b7c8 Author: Andy Fleming Date: Tue Dec 16 15:39:48 2008 -0800 phylib: Remove unnecessary "reset" fixups in genphy_setup_forced genphy_setup_forced hasn't actually reset the PHY for a long time, but a comment to that effect remained in the code, so code continued to act as if it *had* reset the PHY, and called the necessary fixup functions to respond to a PHY reset. With no reset, those functions are no longer needed, so we remove them. Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit 5a5efed4817ef931f648b118aeb9222e53122d2b Author: Dai Haruki Date: Tue Dec 16 15:34:50 2008 -0800 gianfar: Make all BD status writes 32-bit Whenever we want to update the status field in a BD, we usually want to update the length field, too. By combining them into one 32-bit field, we reduce the number of stores to memory shared with the controller, and we eliminate the need for order-enforcement, as the length and "READY" bit are now updated atomically at the same time. Signed-off-by: Dai Haruki Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit 31de198b4d2732028f4c5bff04b0103b1d8c1d8c Author: Andy Fleming Date: Tue Dec 16 15:33:40 2008 -0800 gianfar: Add macros for stepping through BDs This code is based strongly on code from Dai Haruki . The gianfar Buffer Descriptors are arranged in a circular array, the end of which is denoted by setting the "WRAP" bit in the descriptor. However, the software knows the end of the ring because it knows how many descriptors are there. Rather than check each descriptor for whether the WRAP bit is set, use pointer math to determine where the next BD is. This is also useful for when we want to look at BDs other than the very next one (for Scatter-Gather). Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit a22823e72a4821ce1d4a248fbd8f5a81795af339 Author: Dai Haruki Date: Tue Dec 16 15:32:11 2008 -0800 gianfar: Remove unused gfar_add_fcb() function parameter - Also, use cacheable_memzero instead of memset for performance reasons. Signed-off-by: Dai Haruki Acked-by: Andy Fleming Signed-off-by: David S. Miller commit 2c2db48acb34735d8ef257f130c0c330c46c8f6a Author: Dai Haruki Date: Tue Dec 16 15:31:15 2008 -0800 gianfar: Enable padding and Optimize the frame prepended bytes handling The eTSEC can prepend up to 32 bytes to a received frame, usually for the purpose of aligning the IP address to a word boundary, so this turns it on. While we're in there, make the handling of the pre-frame bytes (padding and Frame Control Block) cleaner. Signed-off-by: Dai Haruki Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit 77ecaf2d5a8bfd548eed3f05c1c2e6573d5de4ba Author: Dai Haruki Date: Tue Dec 16 15:30:48 2008 -0800 gianfar: Fix VLAN HW feature related frame/buffer size calculation. Optimize the VLAN checking logic as well. Signed-off-by: Dai Haruki Acked-by: Andy Fleming Signed-off-by: David S. Miller commit 12dea57be552a291e93827baeffbb91e33f587a6 Author: Dai Haruki Date: Tue Dec 16 15:30:20 2008 -0800 gianfar: Fix eTSEC configuration procedure Fix some bugs in the ethtool configuration functions: * gfar_clean_rx_ring should not be called with interrupts disabled. * Update last transmission time to avoid tx timeout. * Delete redundant NETIF_F_IP_CSUM check in gfar_start_xmit * Use netif_tx_lock_bh when reconfiguring the tx csum Signed-off-by: Dai Haruki Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit b46a8454cd304b5376ba00d3457a612720e47269 Author: Dai Haruki Date: Tue Dec 16 15:29:52 2008 -0800 gianfar: Optimize interrupt coalescing configuration Store the interrupt coalescing values in the form in which they will be written to the interrupt coalescing registers. This puts a little overhead into the ethtool configuration, and takes it out of the interrupt handler Signed-off-by: Dai Haruki Acked-by: Andy Fleming Signed-off-by: David S. Miller commit b31a1d8b41513b96e9c7ec2f68c5734cef0b26a4 Author: Andy Fleming Date: Tue Dec 16 15:29:15 2008 -0800 gianfar: Convert gianfar to an of_platform_driver Does the same for the accompanying MDIO driver, and then modifies the TBI configuration method. The old way used fields in einfo, which no longer exists. The new way is to create an MDIO device-tree node for each instance of gianfar, and create a tbi-handle property to associate ethernet controllers with the TBI PHYs they are connected to. Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit d680fe44775ed17a80035462d9898f5e77bfd7dd Author: Cyrill Gorcunov Date: Sat Dec 13 00:09:08 2008 +0300 x86: entry_64 - introduce FTRACE_ frame macro v2 Impact: clean up Itroduce MCOUNT_SAVE/RESTORE_FRAME which allow us to save a number of lines on source level. Also fix a comment in ftrace.h. Signed-off-by: Ingo Molnar commit 66896a85cf2890b6bbbc4c9ccdcd296600ffbf89 Author: Frederic Weisbecker Date: Sat Dec 13 20:18:13 2008 +0100 tracing/ftrace: add the printk-msg-only option Impact: display ftrace_printk messages "as is" By default, ftrace_printk() messages find their output with some other informations like pid, caller, ... Sometimes a developer just want to have the ftrace_printk left "as is", without other information. This is done by providing a default-off option called printk-msg-only. To enable it, just do `echo printk-msg-only > /debugfs/tracing/trace_options` Before the patch: <...>-2739 [000] 145.692153: __might_sleep: I'm an ftrace_printk msg in __might_sleep <...>-2739 [000] 145.692155: __might_sleep: I'm another ftrace_printk msg in __might_sleep After the patch and the printk-msg-only option enabled: I'm an ftrace_printk msg in __might_sleep I'm another ftrace_printk msg in __might_sleep Signed-off-by: Frederic Weisbecker Cc: Steven Rostedt Signed-off-by: Ingo Molnar commit 2c2d7329d8afa9efa3ec24e19a53e7be9d14f242 Author: Frederic Weisbecker Date: Tue Dec 16 22:08:58 2008 +0100 tracing/ftrace: use preempt_enable_no_resched_notrace in ring_buffer_time_stamp() Impact: prevent a trace recursion After some tests with function graph tracer under x86-32, I saw some recursions caused by ring_buffer_time_stamp() that calls preempt_enable_no_notrace() which calls preempt_schedule() which is traced itself. This patch re-enables preemption without rescheduling. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 257d938a0c17838c740eb68f0005b041444ac2c2 Author: Andy Fleming Date: Tue Dec 16 15:25:45 2008 -0800 gianfar: Use gfar_halt to stop DMA in gfar_probe gfar_halt does everything we want to do there, including disabling TX/RX. It also doesn't unnecessarily enable DMA if it's already stopped. Signed-off-by: Andy Fleming Signed-off-by: David S. Miller commit 5eeabf5150878018d7c7092042f3b681f5b554b5 Author: Sakari Ailus Date: Tue Dec 16 15:24:05 2008 -0800 tlan: Remove broken support for big buffers The big rx/tx buffer support is broken and unlikely to be very useful as such. Remove it. Signed-off-by: Sakari Ailus Signed-off-by: David S. Miller commit 354ade9058687fdef8a612c7b298d4c51dae3da7 Merge: 9f690db... bb5f133... Author: David S. Miller Date: Tue Dec 16 15:23:54 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/enc28j60.c commit 8bee3f0a662ad9c3d6bb705b0530a3b90f089c55 Author: Hiroshi Shimamoto Date: Tue Dec 16 14:04:43 2008 -0800 x86: ia32_signal: use proper macro __USER32_DS Impact: cleanup Use __USER32_DS instead of __USER_DS in ia32_signal.c. No impact, because __USER32_DS is defined __USER_DS. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit d0b48ca189523b638d8674fa41e94d1950a17038 Author: Hiroshi Shimamoto Date: Tue Dec 16 14:03:36 2008 -0800 x86: ia32_signal: use __put_user() instead of __copy_to_user() Impact: cleanup __put_user() can be used for constant size 8, like arch/x86/kernel/signal.c. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit ae417bb487e3bb88dc862b83b4bf00d87ba67ec8 Author: Hiroshi Shimamoto Date: Tue Dec 16 14:02:16 2008 -0800 x86: signal: use signal_fault() in sys_sigreturn() Impact: cleanup Call signal_fault() in error route of sys_sigreturn(). Change log level to KERN_EMERG if current is init. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit c8182f0016fb65a721c4fbe487909a2d56178135 Author: Russ Anderson Date: Fri Dec 12 11:07:00 2008 -0600 sgi-xp: xpc needs to pass the physical address, not virtual Impact: fix crash xpc needs to pass the physical address, not virtual. Testing uncovered this problem. The virtual address happens to work most of the time due to the way bios was masking off the node bits. Passing the physical address makes it work all of the time. Signed-off-by: Russ Anderson Acked-by: Dean Nelson Signed-off-by: Ingo Molnar commit 189f67c4408806563a1f061f5c8bf184a6658477 Author: Jack Steiner Date: Fri Dec 12 14:50:40 2008 -0600 x86: UV fix for global physical addresses Impact: fix UV boot crash This fixes a UV bug related to generating global memory addresses on partitioned systems. Partition systems do not have physical memory at address 0. Instead, a chunk of high memory is remapped by the chipset so that it appears to be at address 0. This remapping is INVISIBLE to most of the OS. The only OS functions that need to be aware of the remaping are functions that directly interface to the chipset. The GRU is one example. Also, delete a couple of unused macros related to global memory addresses. Signed-off-by: Jack Steiner Signed-off-by: Ingo Molnar commit c15cb37cc4e9809624411333b96109ddf770e29c Merge: 77be80e... 8b1fae4... Author: Ingo Molnar Date: Tue Dec 16 22:53:53 2008 +0100 Merge commit 'v2.6.28-rc8' into x86/uv commit fde9071167c4624281553b23232aa8b81e71c790 Author: Zachary Amsden Date: Fri Dec 12 11:26:35 2008 -0800 x86: clean up dead code in vmi_32.c Impact: cleanup, remove dead debug code I ran across some old debugging code in vmi paravirt-ops code that was already dead, but still potentially useful. After reviewing recent changes to the way kernel page tables are allocated and initialized, and the lack of bugs caught by this debugging code, I've concluded it is now totally useless to have around, and it's already been #if 0'd for quite some time. There's no rush to get this in mainline, but it's also totally harmless, so I'll let the x86 maintainers decide where it should be tucked. I've been out of the mainstream dev loop for a couple months, so apologies if I haven't got any protocol changes in order. Remove mummified remains found in vmi_32.c Signed-off-by: Zachary Amsden Signed-off-by: Ingo Molnar commit 8ae936690972dfcad73d0dde1095b9f32af5ee95 Author: Hiroshi Shimamoto Date: Fri Dec 12 15:52:26 2008 -0800 x86: hardirq: use inc_irq_stat() in non-unified functions Impact: cleanup Replace incrementing irq stat with inc_irq_stat() in non-unified functions. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit e1286f2c686f5976e0424bb6195ece25e7a17607 Author: Philipp Kohlbecher Date: Sun Dec 14 18:50:01 2008 +0100 x86: documentation fix regarding boot protocol Impact: clarify documentation Documentation/x86/boot.txt describes payload_offset as the offset from the end of the real-mode code. In fact, it is more accurately described as the offset from the beginning of the protected-mode code, as (a) this is how it is actually calculated and (b) the padding after the real-mode code is not included in the offset. Signed-off-by: Philipp Kohlbecher Acked-by: Ian Campbell Acked-by: H. Peter Anvin Signed-off-by: Ingo Molnar commit 78f902ccc597d6ce3e8d1477d70f2d79e960ba7a Merge: 9ee670f... 8b1fae4... Author: Ingo Molnar Date: Tue Dec 16 22:04:48 2008 +0100 Merge commit 'v2.6.28-rc8' into x86/doc commit ecbf29cdb3990c83d90d0c4187c89fb2ce423367 Author: Jeremy Fitzhardinge Date: Tue Dec 16 12:37:07 2008 -0800 xen: clean up asm/xen/hypervisor.h Impact: cleanup hypervisor.h had accumulated a lot of crud, including lots of spurious #includes. Clean it all up, and go around fixing up everything else accordingly. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Ingo Molnar commit 80f40ee4a07530cc3acbc239a9299ec47025825b Author: Bharata B Rao Date: Mon Dec 15 11:56:48 2008 +0530 sched: use RCU variant of list traversal in for_each_leaf_rt_rq() Impact: fix potential of rare crash for_each_leaf_rt_rq() walks an RCU protected list (rq->leaf_rt_rq_list), but doesn't use list_for_each_entry_rcu(). Fix this. Signed-off-by: Bharata B Rao Cc: Peter Zijlstra Signed-off-by: Ingo Molnar commit a9b43c7d9890066709609df849959009645c1a19 Author: Jaswinder Singh Date: Mon Dec 15 23:11:10 2008 +0530 x86: setup.c find_and_reserve_crashkernel should be static Impact: cleanup, reduce kernel size a bit Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit c0195b6da08c4ddd8c8ea830f6c3c40bc7f82071 Author: Jaswinder Singh Date: Mon Dec 15 22:26:30 2008 +0530 x86: ldt.c declare sys_modify_ldt before they get used Impact: cleanup In asm/syscalls.h moved out sys_modify_ldt from CONFIG_X86_32 as it is common for both 32 and 64 bit. Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit 7b5b50f1be9e07714cfaa620d102c8daf3cdd814 Author: Jaswinder Singh Date: Mon Dec 15 22:24:48 2008 +0530 x86: signal.c declare do_notify_resume before they get used Impact: cleanup In asm/signal.h moved out do_notify_resume from __i386__ as it is common for both 32 and 64 bit. Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar arch/x86/include/asm/signal.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit aab02f0ae20b8fe0fe891e9f107c6e392256ca01 Author: Jaswinder Singh Date: Mon Dec 15 22:23:54 2008 +0530 x86: process_64.c declare __switch_to() and sys_arch_prctl before they get used Impact: cleanup In asm/system.h moved out __switch_to from CONFIG_X86_32 as it is common for both 32 and 64 bit. In asm/pctl.h defined sys_arch_prctl Signed-off-by: Jaswinder Singh Signed-off-by: Ingo Molnar commit f63c2f248959366cd11bfa476f866737047cf663 Author: Tej Date: Tue Dec 16 11:56:06 2008 -0800 xen: whitespace/checkpatch cleanup Impact: cleanup Signed-off-by: Tej Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Ingo Molnar commit 40fb17152c50a69dc304dd632131c2f41281ce44 Author: Venki Pallipadi Date: Mon Nov 17 16:11:37 2008 -0800 x86: support always running TSC on Intel CPUs Impact: reward non-stop TSCs with good TSC-based clocksources, etc. Add support for CPUID_0x80000007_Bit8 on Intel CPUs as well. This bit means that the TSC is invariant with C/P/T states and always runs at constant frequency. With Intel CPUs, we have 3 classes * CPUs where TSC runs at constant rate and does not stop n C-states * CPUs where TSC runs at constant rate, but will stop in deep C-states * CPUs where TSC rate will vary based on P/T-states and TSC will stop in deep C-states. To cover these 3, one feature bit (CONSTANT_TSC) is not enough. So, add a second bit (NONSTOP_TSC). CONSTANT_TSC indicates that the TSC runs at constant frequency irrespective of P/T-states, and NONSTOP_TSC indicates that TSC does not stop in deep C-states. CPUID_0x8000000_Bit8 indicates both these feature bit can be set. We still have CONSTANT_TSC _set_ and NONSTOP_TSC _not_set_ on some older Intel CPUs, based on model checks. We can use TSC on such CPUs for time, as long as those CPUs do not support/enter deep C-states. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Ingo Molnar commit 7e91a122b11bb250d08ab125afd2c232c87502e1 Merge: 1bda712... d437797... Author: Ingo Molnar Date: Tue Dec 16 21:02:10 2008 +0100 Merge branch 'x86/cpufeature' into x86/tsc Merge itto in x86/tsc because an upcoming patch relies on a new cpuid bit defined in the x86/cpufeature branch. commit d4377974062122d6d9be0bbd8a910a0954714194 Author: Ingo Molnar Date: Tue Dec 16 20:59:24 2008 +0100 x86: support always running TSC on Intel CPUs, add cpufeature definition Impact: add new synthetic-cpuid bit definition add X86_FEATURE_NONSTOP_TSC to the cpufeature bits - this is in preparation of Venki's always-running-TSC patch. Signed-off-by: Ingo Molnar commit dd7a5230cd651bfb119d222561c4032f30dd5659 Merge: 050dc69... 8b1fae4... Author: Ingo Molnar Date: Tue Dec 16 20:57:41 2008 +0100 Merge commit 'v2.6.28-rc8' into x86/cpufeature commit df23cab563912ba43f7e9bc8ac517e5a2ddc9cd2 Author: Andreas Herrmann Date: Tue Dec 16 19:22:36 2008 +0100 x86: microcode_amd: modify log messages Impact: change microcode printk content Change log level and provide (at least I tried to;-) consistent, short, meaningful content. Signed-off-by: Andreas Herrmann Cc: Dmitry Adamushko Signed-off-by: Ingo Molnar commit 5549b94bc74c3e7edd44e0aeb7d9f773e82d2d20 Author: Andreas Herrmann Date: Tue Dec 16 19:21:30 2008 +0100 x86: microcode_amd: use 'packed' attribute for structs Impact: cleanup Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit 98415301ea2dd389539ab429bcfa9da07219eabc Author: Andreas Herrmann Date: Tue Dec 16 19:20:21 2008 +0100 x86: microcode_amd: remove (wrong) chipset deivce ID checks Impact: remove dead/incorrect code Currently there is no chipset specific ucode. The checks are incorrect anyway (e.g. pci device IDs are 16 bit and not 8 bit). Thus I remove the stuff for the time being and will reintroduce it if it's foreseeable that it is really needed. Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit 6cc9b6d94b6fee23b0671970f67d297fa76b68b3 Author: Andreas Herrmann Date: Tue Dec 16 19:17:45 2008 +0100 x86: microcode_amd: consolidate macro definitions Impact: cleanup Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit 29d0887ffd084cde9d6a1286cb82b71701a974dd Author: Andreas Herrmann Date: Tue Dec 16 19:16:34 2008 +0100 x86: microcode_amd: replace inline asm by common rdmsr/wrmsr functions Impact: cleanup Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit 0657d9ebff186dcdb17e582dcb909028775a7707 Author: Andreas Herrmann Date: Tue Dec 16 19:14:05 2008 +0100 x86: microcode_amd: don't pass superfluous function pointer for get_ucode_data Impact: cleanup Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit 8c135206c826095c852c16d94a0a74eeaf05c90d Author: Andreas Herrmann Date: Tue Dec 16 19:13:00 2008 +0100 x86: microcode_amd: fix compile warning Impact: fix build warning CC arch/x86/kernel/microcode_amd.o arch/x86/kernel/microcode_amd.c: In function ‘request_microcode_fw’: arch/x86/kernel/microcode_amd.c:393: warning: passing argument 2 of ‘generic_load_microcode’ discards qualifiers from pointer target type (Respect "const" qualifier of firmware->data.) Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit be957763b01905d33b53cdd25c8df110f94f499a Author: Andreas Herrmann Date: Tue Dec 16 19:11:23 2008 +0100 x86: microcode_amd: fix checkpatch warnings/errors Impact: cleanup Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit 2a3282a77b02fb47576ffbdb4867c8c6eeb83ed5 Author: Andreas Herrmann Date: Tue Dec 16 19:08:53 2008 +0100 x86: microcode_amd: fix typos and trailing whitespaces in log messages Impact: fix printk typos Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit 3c763fd77e66e55d029052da31df0abd9920cb1e Author: Andreas Herrmann Date: Tue Dec 16 19:07:47 2008 +0100 x86: microcode_amd: fix wrong handling of equivalent CPU id Impact: fix bug resulting in non-loaded AMD microcode mc_header->processor_rev_id is a 2 byte value. Similar is true for equiv_cpu in an equiv_cpu_entry -- only 2 bytes are of interest. Signed-off-by: Andreas Herrmann Signed-off-by: Ingo Molnar commit b6fd6f26733e864fba2ea3eb1d716e23d2e66f3a Author: Ingo Molnar Date: Tue Dec 16 19:23:36 2008 +0100 x86, mm: limit MAXMEM on 64-bit on 64-bit x86 the physical memory limit is controlled by the sparsemem bits - which are 44 bits right now. But MAXMEM (the max pfn number e820 parsing will allow to enter our sizing routines) is set to 0x00003fffffffffff, i.e. 46 bits - that's too large because it overlaps into the vmalloc range. So couple MAXMEM to MAX_PHYSMEM_BITS, and add a comment that the maximum of MAX_PHYSMEM_BITS is 45 bits. Signed-off-by: Ingo Molnar commit cfc319833b5b359bf3bce99564dbac00af7925ac Author: Jan Beulich Date: Tue Dec 16 11:46:58 2008 +0000 x86, 32-bit: improve lazy TLB handling code Impact: micro-optimize the 32-bit TLB flush code Use the faster x86_{read,write}_percpu() accessors here. Signed-off-by: Jan Beulich Signed-off-by: Ingo Molnar commit beeb4195cbc80b7489631361b7ed38b7518af433 Author: Jan Beulich Date: Tue Dec 16 11:45:56 2008 +0000 x86, 32-bit: add some compile time checks to mem_init() Some of the inconsistencies checked for at run time can be detected at build time already, so duplicate the checks done at run time to also be done at build time. Signed-off-by: Jan Beulich Signed-off-by: Ingo Molnar commit d6be89ad660c5d03edef91715093d447025df59b Author: Jan Beulich Date: Tue Dec 16 11:42:45 2008 +0000 x86, 32-bit: simplify alloc_low_page() Impact: cleanup Neither of the callers really needs the physical address this function returns, so eliminate the pointless argument. Signed-off-by: Jan Beulich Signed-off-by: Ingo Molnar commit b93a531e315e97ef00367099e6b5f19651936e20 Author: Jan Beulich Date: Tue Dec 16 11:40:27 2008 +0000 allow bug table entries to use relative pointers (and use it on x86-64) Impact: reduce bug table size This allows reducing the bug table size by half. Perhaps there are other 64-bit architectures that could also make use of this. Signed-off-by: Jan Beulich Signed-off-by: Ingo Molnar commit 1796316a8b028a148be48ba5d4e7be493a39d173 Author: Jan Beulich Date: Tue Dec 16 11:35:24 2008 +0000 x86: consolidate __swp_XXX() macros Impact: cleanup, code robustization The __swp_...() macros silently relied upon which bits are used for _PAGE_FILE and _PAGE_PROTNONE. After having changed _PAGE_PROTNONE in our Xen kernel to no longer overlap _PAGE_PAT, live locks and crashes were reported that could have been avoided if these macros properly used the symbolic constants. Since, as pointed out earlier, for Xen Dom0 support mainline likewise will need to eliminate the conflict between _PAGE_PAT and _PAGE_PROTNONE, this patch does all the necessary adjustments, plus it introduces a mechanism to check consistency between MAX_SWAPFILES_SHIFT and the actual encoding macros. This also fixes a latent bug in that x86-64 used a 6-bit mask in __swp_type(), and if MAX_SWAPFILES_SHIFT was increased beyond 5 in (the seemingly unrelated) linux/swap.h, this would have resulted in a collision with _PAGE_FILE. Non-PAE 32-bit code gets similarly adjusted for its pte_to_pgoff() and pgoff_to_pte() calculations. Signed-off-by: Jan Beulich Signed-off-by: Ingo Molnar commit d072c25f531c6513994960401d2c7f059434c0d2 Author: Markus Metzger Date: Tue Dec 16 15:53:11 2008 +0100 x86, bts: correctly report invalid bts records Impact: change the reporting of empty BTS records Correctly report a cleared BTS record as invalid. Used to be reported as branch from 0 to 0. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit cc1dc6d039ced64c2f8b8457bf1cccf4ecfc5942 Author: Markus Metzger Date: Tue Dec 16 15:51:03 2008 +0100 x86, bts: remove recursion from get_context Impact: cleanup Optimistically allocate a DS context. It is extremely unlikely that one already existed. This simplifies the code a lot. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit bb1f24bf00a85f666b56a09b7cdbfd221af16c2c Author: Ben Stanley Date: Mon Dec 15 23:38:12 2008 +1100 ALSA: ca0106 MSI K8N Diamond MB spi_dac 2->1 This patch removes an inconsistency that became apparent when I documented the fields of snd_ca0106_details. spi_dac is always used in a 'boolean' sense, so this cleanup should make no difference. [Actually, there is one place checking explicitly spi_dac == 1, so this will change the behavior. But, supposing it's rather a typo, I apply this clean-up patch -- tiwai] Signed-off-by: Ben Stanley Signed-off-by: Takashi Iwai commit f649a7145b8b67121e8be0b50f7861755f21aa3b Author: Ben Stanley Date: Fri Dec 12 09:47:13 2008 +1100 ALSA: ca0106 Add comments to snd_ca0106_details struct Takashi wrote an email [1] explaining the fields of snd_ca0106_details, so I captured the information into the ca0106.h header file. [1] http://article.gmane.org/gmane.linux.alsa.devel/56783/match=takashi+gpio_type Signed-off-by: Ben Stanley Signed-off-by: Takashi Iwai commit 31117b78ee843622cbc4c7c17c97be417c766385 Author: Takashi Iwai Date: Tue Dec 16 14:43:21 2008 +0100 ALSA: hda - Add Nvidia vendor id string Added Nvidia (0x10de) to the vendor id list. Cleaned up the codec name strings accordingly. Signed-off-by: Takashi Iwai commit e9515c3c9feecd74174c2998add0db51e02abb8d Author: Ken Chen Date: Mon Dec 15 22:04:15 2008 -0800 sched, cpuacct: export percpu cpuacct cgroup stats This patch export per-cpu CPU cycle usage for a given cpuacct cgroup. There is a need for a user space monitor daemon to track group CPU usage on per-cpu base. It is also useful for monitoring CFS load balancer behavior by tracking per CPU group usage. Signed-off-by: Ken Chen Reviewed-by: Li Zefan Reviewed-by: Andrew Morton Signed-off-by: Ingo Molnar commit 720f54988e17b33f3f477010b3a68ee872d20d5a Author: Ken Chen Date: Mon Dec 15 22:02:01 2008 -0800 sched, cpuacct: refactoring cpuusage_read / cpuusage_write Impact: micro-optimize the code on 64-bit architectures In the thread regarding to 'export percpu cpuacct cgroup stats' http://lkml.org/lkml/2008/12/7/13 akpm pointed out that current cpuacct code is inefficient. This patch refactoring the following: * make cpu_rq locking only on 32-bit * change iterator to each_present_cpu instead of each_possible_cpu to make it hotplug friendly. It's a bit of code churn, but I was rewarded with 160 byte code size saving on x86-64 arch and zero code size change on i386. Signed-off-by: Ken Chen Cc: Paul Menage Cc: Li Zefan Signed-off-by: Ingo Molnar commit 9dfc3bc7d21864d47797d64b8d531d4dbbc0b618 Merge: da485e0... cbc34ed... 2bed844... ffc2238... Author: Ingo Molnar Date: Tue Dec 16 12:03:38 2008 +0100 Merge branches 'tracing/fastboot', 'tracing/ftrace', 'tracing/function-graph-tracer' and 'tracing/hw-branch-tracing' into tracing/core commit 9f690db7ff4cb32493c0b0b13334cc4f5fd49a6b Author: Yang Hongyang Date: Tue Dec 16 02:08:29 2008 -0800 ipv6: fix the outgoing interface selection order in udpv6_sendmsg() 1.When no interface is specified in an IPV6_PKTINFO ancillary data item, the interface specified in an IPV6_PKTINFO sticky optionis is used. RFC3542: 6.7. Summary of Outgoing Interface Selection This document and [RFC-3493] specify various methods that affect the selection of the packet's outgoing interface. This subsection summarizes the ordering among those in order to ensure deterministic behavior. For a given outgoing packet on a given socket, the outgoing interface is determined in the following order: 1. if an interface is specified in an IPV6_PKTINFO ancillary data item, the interface is used. 2. otherwise, if an interface is specified in an IPV6_PKTINFO sticky option, the interface is used. Signed-off-by: Yang Hongyang Signed-off-by: David S. Miller commit f250dcdac111a8369220b8e192eae6c56dc1098a Author: Yang Hongyang Date: Tue Dec 16 02:07:45 2008 -0800 ipv6: fix the return interface index when get it while no message is received When get receiving interface index while no message is received, the the value seted with setsockopt() should be returned. RFC 3542: Issuing getsockopt() for the above options will return the sticky option value i.e., the value set with setsockopt(). If no sticky option value has been set getsockopt() will return the following values: - For the IPV6_PKTINFO option, it will return an in6_pktinfo structure with ipi6_addr being in6addr_any and ipi6_ifindex being zero. Signed-off-by: Yang Hongyang Signed-off-by: David S. Miller commit b24a2516d10751d7ed5afb58420df25370c9dffb Author: Yang Hongyang Date: Tue Dec 16 02:06:23 2008 -0800 ipv6: Add IPV6_PKTINFO sticky option support to setsockopt() There are three reasons for me to add this support: 1.When no interface is specified in an IPV6_PKTINFO ancillary data item, the interface specified in an IPV6_PKTINFO sticky optionis is used. RFC3542: 6.7. Summary of Outgoing Interface Selection This document and [RFC-3493] specify various methods that affect the selection of the packet's outgoing interface. This subsection summarizes the ordering among those in order to ensure deterministic behavior. For a given outgoing packet on a given socket, the outgoing interface is determined in the following order: 1. if an interface is specified in an IPV6_PKTINFO ancillary data item, the interface is used. 2. otherwise, if an interface is specified in an IPV6_PKTINFO sticky option, the interface is used. 2.When no IPV6_PKTINFO ancillary data is received,getsockopt() should return the sticky option value which set with setsockopt(). RFC 3542: Issuing getsockopt() for the above options will return the sticky option value i.e., the value set with setsockopt(). If no sticky option value has been set getsockopt() will return the following values: 3.Make the setsockopt implementation POSIX compliant. Signed-off-by: Yang Hongyang Signed-off-by: David S. Miller commit bc02ff95fe4ebd3e5ee7455c0aa6f76ebe39ebca Author: Steve Glendinning Date: Tue Dec 16 02:00:48 2008 -0800 net: Refactor full duplex flow control resolution These 4 drivers have identical full duplex flow control resolution functions. This patch changes them all to use one common function. The function in question decides whether a device should enable TX and RX flow control in a standard way (IEEE 802.3-2005 table 28B-3), so this should also be useful for other drivers. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit e18ce3465477502108187c6c08b6423fb784a313 Author: Steve Glendinning Date: Tue Dec 16 02:00:00 2008 -0800 net: Move flow control definitions to mii.h flags used within drivers for indicating tx and rx flow control are defined in 4 drivers (and probably more), move these constants to mii.h. The 3 SMSC drivers use the same constants (FLOW_CTRL_TX), but TG3 uses TG3_FLOW_CTRL_TX, so this patch also renames the constants within TG3. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit f9867328f9e1c3fceb8593f84b980aa1d648ce9c Author: Alexey Dobriyan Date: Tue Dec 16 01:55:38 2008 -0800 simeth: convert to net_device_ops Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 8207befa199c9ade670d1cf9a5bcdc76310751bd Author: Divy Le Ray Date: Tue Dec 16 01:51:47 2008 -0800 cxgb3: untie strict FW matching The NIC driver can work with mutliple versions of the FW. Let the driver load when the embedded FW does not match, and the FW update mechanism failed. The iWARP module will make its own loading decision. Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit 5ad258c0a85a7cc03c46874e8a26c7e9b4dfb90d Author: Oliver Hartkopp Date: Tue Dec 16 01:42:50 2008 -0800 vcan: convert to net_device_ops Signed-off-by: Oliver Hartkopp Signed-off-by: David S. Miller commit ffcebb163c6ddba11abd2e8aabc7a8a88982e4f4 Author: James Chapman Date: Tue Dec 16 01:23:49 2008 -0800 l2tp: fix UDP checksum support The pppol2tp driver has had broken UDP checksum code for a long time. This patch fixes it. If UDP checksums are enabled in the tunnel's UDP socket, the L2TP driver now properly validates the checksum on receive and fills in the checksum on transmit. If the network device has hardware checksum support and is enabled, it is used instead of generating/checking the checksum in software. Signed-off-by: James Chapman Signed-off-by: David S. Miller commit 09a2c3c0d3d3550675b766aa5edc28ffee79d7ab Author: Rémi Denis-Courmont Date: Tue Dec 16 01:18:31 2008 -0800 Phonet: improve GPRS variable names Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit 4ee59d54c3f91f1f3ad7f2856b27981414430f9e Author: Hannes Eder Date: Tue Dec 16 01:17:33 2008 -0800 isdn: eicon: fix sparse warning: make global functions static Fix this sparse warnings by making the functions static: drivers/isdn/hardware/eicon/di.c:356:6: warning: symbol 'isdn_rc' was not declared. Should it be static? drivers/isdn/hardware/eicon/di.c:558:6: warning: symbol 'isdn_ind' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:595:6: warning: symbol 'api_parse' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:634:6: warning: symbol 'api_save_msg' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:666:6: warning: symbol 'api_load_msg' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:3417:6: warning: symbol 'manufacturer_req' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:3745:6: warning: symbol 'manufacturer_res' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:4077:6: warning: symbol 'control_rc' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:4743:6: warning: symbol 'data_rc' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:4779:6: warning: symbol 'data_ack' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:4805:6: warning: symbol 'sig_ind' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:6173:6: warning: symbol 'SendInfo' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:6349:6: warning: symbol 'SendMultiIE' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:6468:6: warning: symbol 'nl_ind' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:7250:6: warning: symbol 'get_plci' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:7409:6: warning: symbol 'add_d' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:7427:6: warning: symbol 'add_ai' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:7448:6: warning: symbol 'add_b1' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:7912:6: warning: symbol 'add_b23' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:8709:6: warning: symbol 'nl_req_ncci' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:8731:6: warning: symbol 'send_req' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:8866:6: warning: symbol 'listen_check' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:8909:6: warning: symbol 'IndParse' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:8994:6: warning: symbol 'ie_compare' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:9003:6: warning: symbol 'find_cip' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:9071:6: warning: symbol 'SetVoiceChannel' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:9089:6: warning: symbol 'VoiceChannelOff' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:9102:6: warning: symbol 'AdvCodecSupport' was not declared. Should it be static? drivers/isdn/hardware/eicon/message.c:9198:6: warning: symbol 'CodecIdCheck' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit 205516c12dbba003c26b42cfb41e598631300106 Author: Ken Chen Date: Tue Dec 16 00:32:21 2008 -0800 x86: convert rdtscll() to use __native_read_tsc Impact: micro-optimization Is there any reason why x86 rdtscll have to use the out of line function instead of inline __native_read_tsc()? native_read_tsc and __native_read_tsc is essentially the same functions. Patch to let x86 rdtscll() to use the inline version of read_tsc. Signed-off-by: Ken Chen Signed-off-by: Ingo Molnar commit b1879204dda06a92a4ff55b681c99ee185180003 Author: Ilpo Järvinen Date: Tue Dec 16 01:15:11 2008 -0800 ipmr: merge common code Also removes redundant skb->len < x check which can't be true once pskb_may_pull(skb, x) succeeded. $ diff-funcs pim_rcv ipmr.c ipmr.c pim_rcv_v1 --- ipmr.c:pim_rcv() +++ ipmr.c:pim_rcv_v1() @@ -1,22 +1,27 @@ -static int pim_rcv(struct sk_buff * skb) +int pim_rcv_v1(struct sk_buff * skb) { - struct pimreghdr *pim; + struct igmphdr *pim; struct iphdr *encap; struct net_device *reg_dev = NULL; if (!pskb_may_pull(skb, sizeof(*pim) + sizeof(*encap))) goto drop; - pim = (struct pimreghdr *)skb_transport_header(skb); - if (pim->type != ((PIM_VERSION<<4)|(PIM_REGISTER)) || - (pim->flags&PIM_NULL_REGISTER) || - (ip_compute_csum((void *)pim, sizeof(*pim)) != 0 && - csum_fold(skb_checksum(skb, 0, skb->len, 0)))) + pim = igmp_hdr(skb); + + if (!mroute_do_pim || + skb->len < sizeof(*pim) + sizeof(*encap) || + pim->group != PIM_V1_VERSION || pim->code != PIM_V1_REGISTER) goto drop; - /* check if the inner packet is destined to mcast group */ encap = (struct iphdr *)(skb_transport_header(skb) + - sizeof(struct pimreghdr)); + sizeof(struct igmphdr)); + /* + Check that: + a. packet is really destinted to a multicast group + b. packet is not a NULL-REGISTER + c. packet is not truncated + */ if (!ipv4_is_multicast(encap->daddr) || encap->tot_len == 0 || ntohs(encap->tot_len) + sizeof(*pim) > skb->len) @@ -40,9 +45,9 @@ skb->ip_summed = 0; skb->pkt_type = PACKET_HOST; dst_release(skb->dst); + skb->dst = NULL; reg_dev->stats.rx_bytes += skb->len; reg_dev->stats.rx_packets++; - skb->dst = NULL; nf_reset(skb); netif_rx(skb); dev_put(reg_dev); $ codiff net/ipv4/ipmr.o.old net/ipv4/ipmr.o.new net/ipv4/ipmr.c: pim_rcv_v1 | -283 pim_rcv | -284 2 functions changed, 567 bytes removed net/ipv4/ipmr.c: __pim_rcv | +307 1 function changed, 307 bytes added net/ipv4/ipmr.o.new: 3 functions changed, 307 bytes added, 567 bytes removed, diff: -260 (Tested on x86_64). It seems that pimlen arg could be left out as well and eq-sizedness of structs trapped with BUILD_BUG_ON but I don't think that's more than a cosmetic flaw since there aren't that many args anyway. Compile tested. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit c40cf519f0c0f0cb0579d853949ef517a8bb494d Author: Ilpo Järvinen Date: Tue Dec 16 01:14:21 2008 -0800 hp100: use roundup instead of open coding Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 82ad33297410c1af8e993210da76e114a4c1670d Author: Divy Le Ray Date: Tue Dec 16 01:09:39 2008 -0800 cxgb3: Add multiple Tx queue support. Implement NIC Tx multiqueue. Bump up driver version. Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit 34f28ecd0f4bdc733c681294d02d9fab5880591b Author: Peter Zijlstra Date: Tue Dec 16 08:45:31 2008 +0100 sched: optimize update_curr() Impact: micro-optimization Skip the hard work when there is none. Signed-off-by: Peter Zijlstra Acked-by: Mike Galbraith Signed-off-by: Ingo Molnar commit 03e89e4574a680af15f59329b061f35d9813aff4 Author: Mike Galbraith Date: Tue Dec 16 08:45:30 2008 +0100 sched: fix wakeup preemption clock Impact: sharpen the wakeup-granularity to always be against current scheduler time It was possible to do the preemption check against an old time stamp. Signed-off-by: Mike Galbraith Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 89c88b16f12e9df9ac39418638f267ec3b36a6c6 Author: Herbert Xu Date: Mon Dec 15 23:46:15 2008 -0800 e1000e: Add GRO support This patch adds GRO support to e1000e by making it invoke napi_gro_receive instead of netif_receive_skb. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit b240a0e5644eb817c4a397098a40e1ad42a615bc Author: Herbert Xu Date: Mon Dec 15 23:44:31 2008 -0800 ethtool: Add GGRO and SGRO ops This patch adds the ethtool ops to enable and disable GRO. It also makes GRO depend on RX checksum offload much the same as how TSO depends on SG support. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit bf296b125b21b8d558ceb6ec30bb4eba2730cd6b Author: Herbert Xu Date: Mon Dec 15 23:43:36 2008 -0800 tcp: Add GRO support This patch adds the TCP-specific portion of GRO. The criterion for merging is extremely strict (the TCP header must match exactly apart from the checksum) so as to allow refragmentation. Otherwise this is pretty much identical to LRO, except that we support the merging of ECN packets. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 71d93b39e52e92aea35f1058d957cf12250d0b75 Author: Herbert Xu Date: Mon Dec 15 23:42:33 2008 -0800 net: Add skb_gro_receive This patch adds the helper skb_gro_receive to merge packets for GRO. The current method is to allocate a new header skb and then chain the original packets to its frag_list. This is done to make it easier to integrate into the existing GSO framework. In future as GSO is moved into the drivers, we can undo this and simply chain the original packets together. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 73cc19f1556b95976934de236fd9043f7208844f Author: Herbert Xu Date: Mon Dec 15 23:41:09 2008 -0800 ipv4: Add GRO infrastructure This patch adds GRO support for IPv4. The criteria for merging is more stringent than LRO, in particular, we require all fields in the IP header to be identical except for the length, ID and checksum. In addition, the ID must form an arithmetic sequence with a difference of one. The ID requirement might seem overly strict, however, most hardware TSO solutions already obey this rule. Linux itself also obeys this whether GSO is in use or not. In future we could relax this rule by storing the IDs (or rather making sure that we don't drop them when pulling the aggregate skb's tail). Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit d565b0a1a9b6ee7dff46e1f68b26b526ac11ae50 Author: Herbert Xu Date: Mon Dec 15 23:38:52 2008 -0800 net: Add Generic Receive Offload infrastructure This patch adds the top-level GRO (Generic Receive Offload) infrastructure. This is pretty similar to LRO except that this is protocol-independent. Instead of holding packets in an lro_mgr structure, they're now held in napi_struct. For drivers that intend to use this, they can set the NETIF_F_GRO bit and call napi_gro_receive instead of netif_receive_skb or just call netif_rx. The latter will call napi_receive_skb automatically. When napi_gro_receive is used, the driver must either call napi_complete/napi_rx_complete, or call napi_gro_flush in softirq context if the driver uses the primitives __napi_complete/__napi_rx_complete. Protocols will set the gro_receive and gro_complete function pointers in order to participate in this scheme. In addition to the packet, gro_receive will get a list of currently held packets. Each packet in the list has a same_flow field which is non-zero if it is a potential match for the new packet. For each packet that may match, they also have a flush field which is non-zero if the held packet must not be merged with the new packet. Once gro_receive has determined that the new skb matches a held packet, the held packet may be processed immediately if the new skb cannot be merged with it. In this case gro_receive should return the pointer to the existing skb in gro_list. Otherwise the new skb should be merged into the existing packet and NULL should be returned, unless the new skb makes it impossible for any further merges to be made (e.g., FIN packet) where the merged skb should be returned. Whenever the skb is merged into an existing entry, the gro_receive function should set NAPI_GRO_CB(skb)->same_flow. Note that if an skb merely matches an existing entry but can't be merged with it, then this shouldn't be set. If gro_receive finds it pointless to hold the new skb for future merging, it should set NAPI_GRO_CB(skb)->flush. Held packets will be flushed by napi_gro_flush which is called by napi_complete and napi_rx_complete. Currently held packets are stored in a singly liked list just like LRO. The list is limited to a maximum of 8 entries. In future, this may be expanded to use a hash table to allow more flows to be held for merging. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 1a881f27c50b4fbd6858a8696a189263621136b0 Author: Herbert Xu Date: Mon Dec 15 23:27:47 2008 -0800 net: Add frag_list support to GSO This patch allows GSO to handle frag_list in a limited way for the purposes of allowing packets merged by GRO to be refragmented on output. Most hardware won't (and aren't expected to) support handling GRO frag_list packets directly. Therefore we will perform GSO in software for those cases. However, for drivers that can support it (such as virtual NICs) we may not have to segment the packets at all. Whether the added overhead of GRO/GSO is worthwhile for bridges and routers when weighed against the benefit of potentially increasing the MTU within the host is still an open question. However, for the case of host nodes this is undoubtedly a win. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 89319d3801d1d3ac29c7df1f067038986f267d29 Author: Herbert Xu Date: Mon Dec 15 23:26:06 2008 -0800 net: Add frag_list support to skb_segment This patch adds limited support for handling frag_list packets in skb_segment. The intention is to support GRO (Generic Receive Offload) packets which will be constructed by chaining normal packets using frag_list. As such we require all frag_list members terminate on exact MSS boundaries. This is checked using BUG_ON. As there should only be one producer in the kernel of such packets, namely GRO, this requirement should not be difficult to maintain. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit b53c7583e26746ef6f66c866841e10450150ed8e Author: Kay Sievers Date: Thu Dec 4 10:01:52 2008 -0800 rapidio: struct device - replace bus_id with dev_name(), dev_set_name() Cc: Matt Porter Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman Signed-off-by: Paul Mackerras commit aab0d375e01d8c16e7e5b9bd915dfaa0a815418f Author: Kay Sievers Date: Thu Dec 4 10:02:56 2008 -0800 powerpc: struct device - replace bus_id with dev_name(), dev_set_name() Acked-by: Geoff Levand Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman Signed-off-by: Paul Mackerras commit f63837f0581fe580168ae1a7d178ded935411747 Author: Benjamin Herrenschmidt Date: Sun Dec 14 19:44:51 2008 +0000 powerpc/mm: Remove flush_HPTE() The function flush_HPTE() is used in only one place, the implementation of DEBUG_PAGEALLOC on ppc32. It's actually a dup of flush_tlb_page() though it's -slightly- more efficient on hash based processors. We remove it and replace it by a direct call to the hash flush code on those processors and to flush_tlb_page() for everybody else. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit e41e811a79a4e328005be2744c3076ebde455088 Author: Benjamin Herrenschmidt Date: Sun Dec 14 19:44:39 2008 +0000 powerpc/mm: Rename tlb_32.c and tlb_64.c to tlb_hash32.c and tlb_hash64.c This renames the files to clarify the fact that they are used by the hash based family of CPUs (the 603 being an exception in that family but is still handled by that code). This paves the way for the new tlb_nohash.c coming via a subsequent commit. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit 1a37a3fd7f12d8f9f720cceec84e23152e116668 Author: Benjamin Herrenschmidt Date: Sun Dec 14 19:44:24 2008 +0000 powerpc/mm: Add local_flush_tlb_mm() to SW loaded TLB implementations This adds a local_flush_tlb_mm() call as a pre-requisite for some SMP work for BookE processors. Signed-off-by: Benjamin Herrenschmidt Acked-by: Kumar Gala Signed-off-by: Paul Mackerras commit a58f053b93e15b68e7b5f442316329f68269c8d5 Author: Benjamin Herrenschmidt Date: Sun Dec 14 19:44:13 2008 +0000 powerpc: Fix asm EMIT_BUG_ENTRY with !CONFIG_BUG Instead of not defining it at all, this defines the macro as being empty, thus avoiding ifdef's in call sites when CONFIG_BUG is not set. Also removes an extra whitespace in the existing definition. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 3045b3cb0b068c9f7601786841cda1e0b4647bd9 Author: FUJITA Tomonori Date: Sat Dec 13 17:44:59 2008 +0000 powerpc: Remove dead BIO_VMERGE_BOUNDARY definition The block layer dropped the virtual merge feature (b8b3e16cfe6435d961f6aaebcfd52a1ff2a988c5). BIO_VMERGE_BOUNDARY definition is meaningless now (For POWER, BIO_VMERGE_BOUNDARY has been meaningless for a long time since POWER disables the virtual merge feature). Signed-off-by: FUJITA Tomonori Acked-by: Jens Axboe Signed-off-by: Paul Mackerras commit 7fe519c207e3400dea6d67e1d483a16b11608423 Author: Josh Boyer Date: Thu Dec 11 09:46:44 2008 +0000 powerpc: Introduce ppc_pci_flags accessors Currently there are a number of platforms that open code access to the ppc_pci_flags global variable. However, that variable is not present if CONFIG_PCI is not set, which can lead to a build break. This introduces a number of accessor functions that are defined to be empty in the case of CONFIG_PCI being disabled. The various platform files in the kernel are updated to use these. Signed-off-by: Josh Boyer Signed-off-by: Paul Mackerras commit edc72ac4a0894247a6d3f1157a8ec8d603fff52d Author: Nathan Lynch Date: Thu Dec 11 09:14:25 2008 +0000 powerpc/pseries: Check for GIQ indicator before calling set-indicator Since "Factor out cpu joining/unjoining the GIQ" (b4963255ad5a426f04a0bb15c4315fa4bb40cde9) the WARN_ON in xics_set_cpu_giq() is being triggered during boot on JS20 because the GIQ indicator is not available on that platform. While the warning is harmless and the system runs normally, it's nicer to check for the existence of the indicator before trying to manipulate it. Implement rtas_indicator_present(), which searches the /rtas/rtas-indicators property for the given indicator token, and use this function in xics_set_cpu_giq(). Also use a WARN statement in xics_set_cpu_giq to get better information on failure. Signed-off-by: Nathan Lynch Acked-by: Milton Miller Signed-off-by: Paul Mackerras commit 6ff04c53db97c896ecca9374c0be4f681cf5fe50 Author: Nathan Lynch Date: Wed Dec 10 14:28:42 2008 +0000 powerpc/powermac: Use set_hard_smp_processor_id() instead of smp_hw_index The hard_smp_processor_id functions are the appropriate interfaces for managing physical CPU ids. Signed-off-by: Nathan Lynch Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 13a9801eb669d567ab2c8f8db5e50557fef5f636 Author: Nathan Lynch Date: Wed Dec 10 14:28:41 2008 +0000 powerpc: Move smp_hw_index to 32-bit code smp_hw_index isn't used on 64-bit, so move it from smp.c to setup_32.c. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras commit 6b82b3e4b54b2fce2ca11976c535012b836b2016 Author: Anton Vorontsov Date: Tue Dec 9 09:47:29 2008 +0000 powerpc: Remove `have_of' global variable The `have_of' variable is a relic from the arch/ppc time, it isn't useful nowadays. Signed-off-by: Anton Vorontsov Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit eb14f019597cd86c21a6c601d7e900f40030c2e7 Merge: 9a4a842... a3dd154... Author: David S. Miller Date: Mon Dec 15 20:03:50 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/e1000e/ich8lan.c commit 0efbb57e06d881a39a7f261e5c33558aedec0f79 Author: Becky Bruce Date: Thu Dec 4 08:12:40 2008 +0000 powerpc: Fix !CONFIG_PPC_NEED_DMA_SYNC_OPS build warning Change #define stubs of dma_sync ops to be empty static inlines to avoid build warning. Signed-off-by: Becky Bruce Acked-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 46d01492b2c50791b9b66f9b9154ac8d25acaeb9 Author: Geert Uytterhoeven Date: Wed Dec 3 13:52:21 2008 +0000 powerpc/ps3: Add sub-match id modalias support commit 059e4938f8b060b10c4352e6c45739473bc73267 ("powerpc/ps3: Add a sub-match id to ps3_system_bus") forgot to update the module alias support: - Add the sub-match ids to the module aliases, so udev can distinguish between different types of sub-devices. - Rename PS3_MODULE_ALIAS_GRAPHICS to PS3_MODULE_ALIAS_GPU_FB, as ps3fb binds to the "FB" sub-device. Signed-off-by: Geert Uytterhoeven Signed-off-by: Geoff Levand Signed-off-by: Paul Mackerras commit 62d80749addc969803a173573889f9b01d2459e1 Author: Geoff Levand Date: Wed Dec 3 13:52:15 2008 +0000 powerpc/ps3: Quiet dmesg output Change the debug message in dma_sb_region_create() from pr_info() to DBG() to quiet the dmesg output. Signed-off-by: Geoff Levand Signed-off-by: Paul Mackerras commit 15cb1cc981183861e4e653b67a0ea451f720af85 Author: Geoff Levand Date: Wed Dec 3 13:52:05 2008 +0000 powerpc: Fix typo in pgtable-ppc64.h Fix a minor comment typo in pgtable-ppc64.h. Signed-off-by: Geoff Levand Signed-off-by: Paul Mackerras commit 29e931c02b0e54f3d36b930c118e69b507b4b6ff Author: Nicolas Palix Date: Tue Dec 2 03:34:46 2008 +0000 powerpc/chrp: Add missing of_node_put in pci.c of_node_put is needed before discarding a value received from of_find_node_by_name, eg in error handling code or when the device node is no longer used. The semantic match that catches the bug is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression struct device_node *n; position p1, p2; statement S1,S2; expression E,E1; expression *ptr != NULL; @@ ( if (!(n@p1 = of_find_node_by_name(...))) S1 | n@p1 = of_find_node_by_name(...) ) <... when != of_node_put(n) when != if (...) { <+... of_node_put(n) ...+> } when != true !n || ... when != n = E when != E = n if (!n || ...) S2 ...> ( return \(0\|<+...n...+>\|ptr\); | return@p2 ...; | n = E1 | E1 = n ) @script:python@ p1 << r.p1; p2 << r.p2; @@ print "* file: %s of_find_node_by_name %s return %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Nicolas Palix Signed-off-by: Julia Lawall Acked-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit 1e1c568d6c66d1e2e345fd15e2a1ceafc5d7e33a Merge: 91cac62... 23e0e8a... Author: Paul Mackerras Date: Tue Dec 16 14:38:58 2008 +1100 Merge branch 'merge' into next commit 9a4a84294b0d60b8c287131478f743ba2bc68949 Author: David S. Miller Date: Mon Dec 15 15:14:59 2008 -0800 8390/8390p: Fix compat netdev ops handling. Based upon a report from Randy Dunlap. The compat netdev ops assignments need to happen in 8390.c and 8390p.c, not lib8390.c, as only the type specific code can assign the correct function pointers. Signed-off-by: David S. Miller commit 91cac623262c1c0cd298c5c648a8bd2b647c264d Author: Kumar Gala Date: Sat Dec 13 17:41:41 2008 -0600 powerpc/85xx: Fix compile issues with mpc8572ds.dts Fix the localbus reg & range properties to respect that the top level #address-cells and #size-cells = 2. The original commit (c64ef80b517680f1e228b2ee55e3ce7cd94c7fe0) did not do that. Signed-off-by: Kumar Gala commit 8309ce7280536b07716026ff588acbcc0ee1a546 Author: Benjamin Herrenschmidt Date: Fri Dec 12 17:33:25 2008 +1100 powerpc: Fix bogus cache flushing on all 40x and BookE processors v2 We were missing the CPU_FTR_NOEXECUTE bit in our cputable for all these processors. The result is that update_mmu_cache() would flush the cache for all pages mapped to userspace which is totally unnecessary on those processors since we already handle flushing on execute in the page fault path. This should provide a nice speed up ;-) Signed-off-by: Benjamin Herrenschmidt Acked-by: Josh Boyer Signed-off-by: Kumar Gala commit 3d1ee379bd576c0830050c2d313e77b9f98a8013 Author: Mark Brown Date: Mon Dec 15 15:43:43 2008 +0000 ALSA: Fix declaration of sound_class Include sound/core.h in sound_core.c so that sound_class is declared before it is defined, avoiding it looking like it should be static. Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 8b124a8e14c04378466ddfe63e41fc5035f957eb Author: Don Skidmore Date: Mon Dec 15 01:06:23 2008 -0800 net: fix dcbnl_setnumtcs operation check dcbml_setnumtcs wasn't checking for the presence of the setnumtcs function. Instead, it was checking for setstate which was a bug. Signed-off-by: Don Skidmore Signed-off-by: Eric W Multanen Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5ecc361444a0c641a73cce05fb652d0e3c944451 Author: Jesse Brandeburg Date: Mon Dec 15 01:00:57 2008 -0800 ixgbe: fix dma mapping unbalance This issue was initially reported by Joerg Roedel It appears that ixgbe has had a long standing bug where it was unmapping a different size than it had mapped. ixgbe 0000:02:00.0: PCI-DMA: device driver frees DMA memory with different sizes than it mapped. ixgbe 0000:02:00.0: PCI-DMA: device driver frees DMA memory with different size [device address=0x0000000003fed812] [map size=258 bytes] [unmap size=256 bytes] Pid: 6178, comm: rmmod Not tainted 2.6.28-rc5 #4 Call Trace: [] iommu_queue_inv_iommu_pages+0x5e/0x70 [] check_unmap+0x1c6/0x240 [] debug_unmap_single+0xb5/0x110 [] ixgbe_clean_rx_ring+0x147/0x220 [] ixgbe_down+0x2fd/0x3d0 [ixgbe] [] ixgbe_close+0x13/0xc0 [ixgbe] [] dev_close+0x56/0xa0 [] rollback_registered+0x43/0x220 [] unregister_netdevice+0x15/0x60 [] unregister_netdev+0x11/0x20 [] ixgbe_remove+0x48/0x16e [ixgbe] [] pci_device_remove+0x2c/0x60 [] __device_release_driver+0x99/0x100 [] driver_detach+0xb8/0xc0 [] bus_remove_driver+0x8e/0xd0 [] pci_unregister_driver+0x34/0x90 [] sys_delete_module+0x1c7/0x2a0 [] do_munmap+0x349/0x390 [] __up_write+0x21/0x150 [] system_call_fastpath+0x16/0x1b Signed-off-by: Jesse Brandeburg Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit a7276db6adfded660eec1e1629710b8b82d83455 Author: Steve Glendinning Date: Mon Dec 15 00:59:47 2008 -0800 smsc9420: add ethtool register dump support This patch adds support for SMSC's LAN9420 PCI ethernet controller to ethtool's dump registers (-d) command. This patch is for use with an accompanying ethtool patch, which decodes the register dump. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit b1721d2bb9d015d7e49079414671569a2fc0ac9b Author: Ilpo Järvinen Date: Sun Dec 14 23:19:48 2008 -0800 rpc/rdma: goto instead of copypaste Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 79f55f11a090d9f369448dcb58242c7924873920 Author: Ilpo Järvinen Date: Sun Dec 14 23:19:02 2008 -0800 nf/dccp: merge errorpaths Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit e780f1c33d76ebb81607a6b5d6b669edb9065a7f Author: Ilpo Järvinen Date: Sun Dec 14 23:18:30 2008 -0800 irda: merge exit paths Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 037322abe6141e32e1b1dea86a9405d52c99be5d Author: Ilpo Järvinen Date: Sun Dec 14 23:18:00 2008 -0800 bt/rfcomm/tty: join error paths Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 0eae1b98cf3022715b5a6ea5f1ac6b0bd7ac4edd Author: Ilpo Järvinen Date: Sun Dec 14 23:17:26 2008 -0800 ax25: join the return paths that free skb Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit ebad5c0984e06f4036d2eb2741b9afce736b8a06 Author: Ilpo Järvinen Date: Sun Dec 14 23:16:58 2008 -0800 can: merge error paths Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit d8eb93078cedbbf4b7e18e1d7054171c7b70b442 Author: Ilpo Järvinen Date: Sun Dec 14 23:16:22 2008 -0800 xfrm: join error paths Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 8da73b73ef29d537ba09f29393cd68707833e746 Author: Ilpo Järvinen Date: Sun Dec 14 23:15:49 2008 -0800 ip6mr: use goto to common label instead of opencoding Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 448eb71f40120a8fd11ebd58153c271c63e6f862 Author: Ilpo Järvinen Date: Sun Dec 14 23:15:21 2008 -0800 ipv6/mcast: join error paths using goto Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 5ce1bbb97bf1e6707102d30499e7feaa1e6a2134 Author: Ilpo Järvinen Date: Sun Dec 14 23:13:48 2008 -0800 xfrm6_tunnel: join error paths using goto Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 857a6e0a4d8db0bbee685ccc97c6bd7987e7aede Author: Ilpo Järvinen Date: Sun Dec 14 23:13:08 2008 -0800 icsk: join error paths using goto Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 9cd28ab0051cc5232e3dffea6b318233445a3d5f Author: Alexander Beregalov Date: Sat Dec 13 16:25:27 2008 +0300 ASoC: switch davinci DPRINTK to pr_debug() Signed-off-by: Alexander Beregalov Signed-off-by: Mark Brown commit a6ba0cb35da64d658b7a01ea4597416f8522d5e1 Author: Jiri Slaby Date: Wed Dec 10 13:48:38 2008 +0100 kbuild: fix string equality testing in tags.sh Test of string equality in shells is =, not C-like ==. Signed-off-by: Jiri Slaby Signed-off-by: Sam Ravnborg commit 709cc372cad628846d73447edfd95ac39c8e2319 Author: Jiri Slaby Date: Wed Dec 10 13:10:13 2008 +0100 kbuild: fix make tags/cscope - fix combining O=... and tags - don't allow * expansion during sh function calls Signed-off-by: Jiri Slaby [sam: use KBUILD_SRC to check if we use O=...] Signed-off-by: Sam Ravnborg commit 31110ebbec8688c6e9597b641101afc94e1c762a Author: Sam Ravnborg Date: Sat Dec 13 23:00:45 2008 +0100 kbuild: fix make incompatibility "Paul Smith" reported that we would fail to build with a new check that may be enabled in an upcoming version of make. The error was: Makefile:442: *** mixed implicit and normal rules. Stop. The problem is that we did stuff like this: config %config: ... The solution was simple - the above was split into two with identical prerequisites and commands. With only three lines it was not worth to try to avoid the duplication. Cc: "Paul Smith" Signed-off-by: Sam Ravnborg commit 012b215ceb55aa38826f091cecfd373cc9bbb05b Author: Steve Glendinning Date: Fri Dec 12 22:32:22 2008 -0800 smsc9420: add ethtool eeprom support Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit e312674ffb5281a46a3ad06604edea6426c4eb24 Author: Steve Glendinning Date: Fri Dec 12 22:31:50 2008 -0800 smsc9420: add netpoll support Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit 1757ab2f0411110c0261dfb66d26faf63037c531 Author: Steve Glendinning Date: Fri Dec 12 22:31:16 2008 -0800 smsc911x: make smsc911x_poll_controller static Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit 56bde885903bdb9d9531fd569096ec8c7a2d60ee Merge: a7a81fc... a7b7520... Author: David S. Miller Date: Fri Dec 12 22:20:51 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit a7a81fc060f050ad4ba7f6ef5cdc583dad2f7b21 Author: Ben Hutchings Date: Fri Dec 12 22:10:23 2008 -0800 sfc: Version 2.3 Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 7dde596ef79982327d8992a579a137b4035ad599 Author: Ben Hutchings Date: Fri Dec 12 22:09:38 2008 -0800 sfc: Fix synchronisation of efx_mtd_{probe,rename,remove} Currently efx_mtd_rename() can race with the probe() and remove() functions. Move probe() before device registration and remove() after unregistration. Move initialisation/update of all names based on the netdev name into a new function and call it under the RTNL immediately after registration. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 0c53d8c84047d86169bd4147bb8f5adf2772d2bb Author: Ben Hutchings Date: Fri Dec 12 22:08:50 2008 -0800 sfc: Use kzalloc() to ensure struct efx_spi_device is fully initialised Currently the mtd field is not initialised early enough. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit fa402b2ea9cacd1ec94fa77e3efb506a5d034da6 Author: Steve Hodgson Date: Fri Dec 12 22:08:16 2008 -0800 sfc: Treat probe as unsuccessful if it scheduled a reset From: Steve Hodgson efx_pci_probe_main() can return success despite a reset being scheduled. Catch this and retry or abort probe depending on the reset type. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit ab377358701a981e7fae1332e76b1e5d3b3b313d Author: Ben Hutchings Date: Fri Dec 12 22:06:54 2008 -0800 sfc: Use model numbers for PHY type names Some of the PHY type names are overly generic. Change them to include the model numbers of the PHYs they represent. Correct the model number reference at the top of xfp_phy.c. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit ca54a9f525236c389f464d0952c8a7d6a4035906 Author: Ben Hutchings Date: Fri Dec 12 22:06:24 2008 -0800 sfc: Use mutex_lock_interruptible() for ethtool EEPROM access ethtool must contend with the MTD driver for the SPI bus lock, which may carry out long operations such as flash erase. Allow it to be interrupted while waiting. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 11e66966277ea8a3353ad2c2773257973553e73a Author: Ben Hutchings Date: Fri Dec 12 22:05:48 2008 -0800 sfc: Specify a meaningful component for loopback RX-side and PHY tests Our ethtool self-test result names each begin with a component name. For some results this is "port0", which is not very meaningful. Change that to "rx" or "phy" as appropriate. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit b45319382150008ed7cd31b7965392d55fe68967 Author: Ben Hutchings Date: Fri Dec 12 22:05:01 2008 -0800 sfc: Remove leading spaces Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 6f158d5f29b420438e907d72cb111ddb9973f00a Author: Ben Hutchings Date: Fri Dec 12 22:00:49 2008 -0800 sfc: Add support for SFN4111T Add support code for the SFN4111T 100/1000/10GBASE-T reference design, based in part on the existing code for the SFE4001. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit e6fa2eb789f49dc51a20d3db0d410bc8158abb43 Author: Ben Hutchings Date: Fri Dec 12 22:00:17 2008 -0800 sfc: Add support for Solarflare 10Xpress SFT9001 Add type codes for the new PHY and rename the SFX7101 type code. Add definition of clause 22 extension MMD. Adapt the 10Xpress SFX7101 code to support the SFT9001 as well. Clean up register definitions. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 766ca0fa6bf1600bdf4bc7726c74f14c8455c6b8 Author: Ben Hutchings Date: Fri Dec 12 21:59:24 2008 -0800 sfc: Rework MAC, PHY and board event handling From: Steve Hodgson MAC, PHY and board events may be separately enabled and signalled. Our current arrangement of chaining the polling functions can result in events being missed. Change them to be more independent. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 04cc8cacb01c09fba2297faf1477cd570ba43f0b Author: Ben Hutchings Date: Fri Dec 12 21:50:46 2008 -0800 sfc: Implement auto-negotiation Add infrastructure for auto-negotiation of speed, duplex and flow control. When using 10Xpress, auto-negotiate flow control. While we're at it, clean up the code to warn when partner is not 10GBASE-T capable. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 177dfcd80f28f8fbc3e22c2d8b24d21cb86f1d97 Author: Ben Hutchings Date: Fri Dec 12 21:50:08 2008 -0800 sfc: Add support for sub-10G speeds The SFC4000 has a separate MAC for use at sub-10G speeds. Introduce an efx_mac_operations structure with implementations for the two MACs. Switch between the MACs as necessary. PHY settings are independent of the MAC, so add get_settings() and set_settings() to efx_phy_operations. Also add macs field to indicate which MACs the PHY is connected to. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 356eebb2b3af24cc701823f1e025f04eef333239 Author: Ben Hutchings Date: Fri Dec 12 21:48:57 2008 -0800 sfc: Clean up MDIO flag setting We often want to set or clear a flag in an MDIO register, but avoid writing if no change is required since this can have side-effects. Encapsulate this in a function, mdio_clause45_set_flag(). Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 04300d248bd5166c00a59fa18efc1f7d041e9b32 Author: Ben Hutchings Date: Fri Dec 12 21:48:09 2008 -0800 sfc: Clean up board identification Remove kluge for development boards with unspecified board type. Remove assumption of contiguous board type code assignments. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 06d5e19318e59f6f139b5171f4dfc5f3eb4dd897 Author: Ben Hutchings Date: Fri Dec 12 21:47:23 2008 -0800 sfc: Add phy_type device attribute Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 27dd2caca4eabe7c13a052b7456495ba75535e6a Author: Ben Hutchings Date: Fri Dec 12 21:44:14 2008 -0800 sfc: Add support for MMDs numbered >15 Combine DEVS0 and DEVS1 registers into a 32-bit mask instead of reading just DEVS0. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit f31a45d2f45a7667acd6e85ab6613b0910c55ea9 Author: Ben Hutchings Date: Fri Dec 12 21:43:33 2008 -0800 sfc: Remove MII extension cruft Replace efx_nic::link_options bitfield with link_speed (speed in Mbit/s) and link_fd (full duplex flag). Remove broken auto-negotiation functions. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 5005087728e37db133fee05bb0923c50e673ae99 Author: Ben Hutchings Date: Fri Dec 12 21:42:42 2008 -0800 sfc: Don't count RX checksum errors during loopback self-test The loopback self-test checks that IP packets with incorrect checksums are not altered when sent on a queue with checksum generation off. These should not contribute to RX error statistics. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 740ced9927cabe0f776265ea24fc399a71bcdef5 Author: Ben Hutchings Date: Fri Dec 12 21:41:55 2008 -0800 sfc: Abbreviate self-test names so they are not truncated Change "channel" to "chan". Shorten PHY loopback names. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 56536e9ce7c23bbc8519b8f99837493dea8da57d Author: Ben Hutchings Date: Fri Dec 12 21:37:02 2008 -0800 sfc: Provide hints to irqbalance daemon Allocate IRQs with the name format [-]- so that future versions of irqbalanced understand what we're doing. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 28b581ab0a0aa7bc8b22935779ca3e8d6f651ac7 Author: Neil Turton Date: Fri Dec 12 21:41:06 2008 -0800 sfc: Add option to use a separate channel for TX completions In a bidirectional forwarding test, we find that the best performance is achieved by sending the TX completion interrupts from one NIC to a CPU which shares an L2 cache with RX completion interrupts from the other NIC. To facilitate this, add an option (through a module parameter) to create separate channels for RX and TX completion with separate IRQs when MSI-X is available. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 84ae48fe4c1fe8b79fac015df6ad0b0937a7ae37 Author: Ben Hutchings Date: Fri Dec 12 21:34:54 2008 -0800 sfc: Restore phy_flash_cfg module parameter This is needed for recovery in case a PHY firmware upgrade is aborted. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 2f7f573095132240916a8780cd5ef648c0ad7281 Author: Ben Hutchings Date: Fri Dec 12 21:34:25 2008 -0800 sfc: Work around unreliable strap pins The SFC4000 has strap pins indicating the presence of SPI flash and/or EEPROM. These pins are also used for GPIO, and in some cases they may be read wrongly at reset. However, on production boards it must boot from one or the other device, so we can assume the boot device is present and read the board config from there. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit be4ea89c8df06f48d0d64cf1d9d20009e83c77c8 Author: Ben Hutchings Date: Fri Dec 12 21:33:50 2008 -0800 sfc: Clean up waits for flash/EEPROM operations Make falcon_spi_wait() ignore the write timer - it is only relevant to write commands, it only works for the device that contains VPD, and it might not be initialised properly at all. Rename falcon_spi_fast_wait() to falcon_spi_wait_write(), reflecting its use, and make it wait up to 10 ms (not 1 ms) since buffered writes to EEPROM may take this long to complete. Make both wait functions sleep instead of busy-waiting. Replace wait for command completion at top of falcon_spi_cmd() with a single poll; no command should be running when the function starts. Correct some comments. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 1ab00629f06fb3c47de6373cd92d086f33775444 Author: Steve Hodgson Date: Fri Dec 12 21:33:02 2008 -0800 sfc: Make reset_workqueue driver-global rather than per-NIC Each reset is serialised by the rtnl_lock anyway, so there's no win per-NIC. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 65f667fb472d28c1594d862b213a564e292a466c Author: Ben Hutchings Date: Fri Dec 12 21:32:10 2008 -0800 sfc: Correct interpretation of second param to ethtool phys_id() A value of 0 means indefinite repetition (until interrupted). Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 2b2734dcbfd2dc6b6e4b00bc6971504d7657a4eb Author: Ben Hutchings Date: Fri Dec 12 21:31:36 2008 -0800 sfc: Remove unneeded register write This was only ever needed for an FPGA version of Falcon. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 23d30f027d1e8ad3bcd6192613122ce925947563 Author: Ben Hutchings Date: Fri Dec 12 21:56:11 2008 -0800 sfc: Change SPI lengths to type size_t Based on a patch by Andrew Morton. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit a17102b1ba847ca31d9151b877fbf9a38a39a8bb Author: Ben Hutchings Date: Fri Dec 12 21:28:20 2008 -0800 sfc: Board support fixes Set dummy monitor method for unrecognised boards. Clean up board resources if efx_pci_probe_main() fails after board has been initialised. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 702c7904a29629e4e6b18d5497abe84bd20c0449 Author: Karsten Keil Date: Fri Dec 12 21:21:57 2008 -0800 misdn: Fix lockdep warning use correct dynamic spinlock init function. Signed-off-by: Karsten Keil Signed-off-by: David S. Miller commit c31655fcf2c61f209aab8f4169b0e4afe49b581d Author: Hannes Eder Date: Fri Dec 12 21:20:03 2008 -0800 mISDN: hfcmulti: use __iomem address space modifier Impact: make use of the __iomem address space modifier, and change u_char *, u_short * and u_int * to void * Fix more than 30 sparse warnings of this or similar type: drivers/isdn/hardware/mISDN/hfcmulti.c:261:31: warning: incorrect type in argument 2 (different address spaces) drivers/isdn/hardware/mISDN/hfcmulti.c:261:31: got unsigned char [usertype] * drivers/isdn/hardware/mISDN/hfcmulti.c:261:31: expected void volatile [noderef] *addr Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit c46f0a2d40f7ceb5fb696309bcd088ac75d0fe20 Author: Hannes Eder Date: Fri Dec 12 21:19:18 2008 -0800 mISDN: timerdev: use __user for mISDN_read's buffer argument Fix this warning: drivers/isdn/mISDN/timerdev.c:264:11: warning: incorrect type in initializer (incompatible argument 2 (different address spaces)) drivers/isdn/mISDN/timerdev.c:264:11: expected int ( *read )( ... ) drivers/isdn/mISDN/timerdev.c:264:11: got int ( static [toplevel] * )( ... ) Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit 047ce8f207b144eb9be094ce7427d6e11a687010 Author: Hannes Eder Date: Fri Dec 12 21:18:32 2008 -0800 mISDN: comment out unused symbols Fix this sparse warnings: drivers/isdn/hardware/mISDN/hfcmulti.c:794: warning: 'vpm_check' defined but not used drivers/isdn/mISDN/dsp_cmx.c:1546: warning: 'dsp_start_jiffies' defined but not used Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit 863a76e5881abe276a55c4490607a960790c5b0b Author: Hannes Eder Date: Fri Dec 12 21:17:38 2008 -0800 mISDN: fix sparse warning: symbol 'id' shadows an earlier one Impact: rename function scope variable Fix this warning: drivers/isdn/mISDN/l1oip_core.c:472:8: warning: symbol 'id' shadows an earlier one drivers/isdn/mISDN/l1oip_core.c:254:14: originally declared here Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit bb68b1d964f89b19dc13d4f685a7d29616e2a4cb Author: Hannes Eder Date: Fri Dec 12 21:16:58 2008 -0800 mISDN: fix sparse warning: symbol 'nskb' shadows an earlier one Impact: define first occurence of variable 'nskb' in inner most possible scope Fix this sparse warning: drivers/isdn/mISDN/dsp_core.c:746:20: warning: symbol 'nskb' shadows an earlier one drivers/isdn/mISDN/dsp_core.c:634:19: originally declared here Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit 65a40516b231f693f3afee4df77fc63c08ba8fa9 Author: Hannes Eder Date: Fri Dec 12 21:16:06 2008 -0800 mISDN: un-export symbol 'plx_lock' 'plx_lock' is only used within hfcmulti.c. Fix this warning: drivers/isdn/hardware/mISDN/hfcmulti.c:176:1: warning: symbol 'plx_lock' shadows an earlier one drivers/isdn/hardware/mISDN/hfcmulti.c:175:19: originally declared here Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit 5b8343540a3d27f87a4d9d72bb39b7d4cc3dd95e Author: Hannes Eder Date: Fri Dec 12 21:15:17 2008 -0800 mISDN: make global symbols static or include header files The warnings fixed by including an header file for the appropriate prototype are marked with "*", for all others the corresonponding symbol has been made static. This patch fixes all such issues in mISDN. Fix this sparse warnings: drivers/isdn/hardware/mISDN/hfcmulti.c:174:5: warning: symbol 'plxsd_master' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:426:1: warning: symbol 'write_fifo_regio' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:447:1: warning: symbol 'write_fifo_pcimem' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:469:1: warning: symbol 'read_fifo_regio' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:491:1: warning: symbol 'read_fifo_pcimem' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:710:1: warning: symbol 'vpm_init' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:793:1: warning: symbol 'vpm_check' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:816:1: warning: symbol 'vpm_echocan_on' was not declared. Should it be static? drivers/isdn/hardware/mISDN/hfcmulti.c:848:1: warning: symbol 'vpm_echocan_off' was not declared. Should it be static? * drivers/isdn/mISDN/l1oip_codec.c:224:1: warning: symbol 'l1oip_law_to_4bit' was not declared. Should it be static? * drivers/isdn/mISDN/l1oip_codec.c:261:1: warning: symbol 'l1oip_4bit_to_law' was not declared. Should it be static? * drivers/isdn/mISDN/l1oip_codec.c:281:1: warning: symbol 'l1oip_alaw_to_ulaw' was not declared. Should it be static? * drivers/isdn/mISDN/l1oip_codec.c:294:1: warning: symbol 'l1oip_ulaw_to_alaw' was not declared. Should it be static? * drivers/isdn/mISDN/l1oip_codec.c:311:1: warning: symbol 'l1oip_4bit_free' was not declared. Should it be static? * drivers/isdn/mISDN/l1oip_codec.c:322:1: warning: symbol 'l1oip_4bit_alloc' was not declared. Should it be static? drivers/isdn/mISDN/core.c:29:1: warning: symbol 'device_lock' was not declared. Should it be static? drivers/isdn/mISDN/core.c:34:1: warning: symbol 'bp_lock' was not declared. Should it be static? drivers/isdn/mISDN/core.c:196:1: warning: symbol 'mISDNInit' was not declared. Should it be static? drivers/isdn/mISDN/core.c:227:6: warning: symbol 'mISDN_cleanup' was not declared. Should it be static? drivers/isdn/mISDN/stack.c:40:1: warning: symbol 'mISDN_queue_message' was not declared. Should it be static? * drivers/isdn/mISDN/layer1.c:388:1: warning: symbol 'l1_init' was not declared. Should it be static? * drivers/isdn/mISDN/layer1.c:400:1: warning: symbol 'l1_cleanup' was not declared. Should it be static? drivers/isdn/mISDN/layer2.c:469:1: warning: symbol 'iframe_error' was not declared. Should it be static? drivers/isdn/mISDN/layer2.c:487:1: warning: symbol 'super_error' was not declared. Should it be static? drivers/isdn/mISDN/layer2.c:496:1: warning: symbol 'unnum_error' was not declared. Should it be static? drivers/isdn/mISDN/layer2.c:509:1: warning: symbol 'UI_error' was not declared. Should it be static? drivers/isdn/mISDN/layer2.c:522:1: warning: symbol 'FRMR_error' was not declared. Should it be static? drivers/isdn/mISDN/layer2.c:1069:1: warning: symbol 'enquiry_cr' was not declared. Should it be static? * drivers/isdn/mISDN/layer2.c:2196:1: warning: symbol 'Isdnl2_Init' was not declared. Should it be static? * drivers/isdn/mISDN/layer2.c:2210:1: warning: symbol 'Isdnl2_cleanup' was not declared. Should it be static? drivers/isdn/mISDN/tei.c:397:1: warning: symbol 'random_ri' was not declared. Should it be static? * drivers/isdn/mISDN/timerdev.c:277:1: warning: symbol 'mISDN_inittimer' was not declared. Should it be static? * drivers/isdn/mISDN/timerdev.c:288:6: warning: symbol 'mISDN_timer_cleanup' was not declared. Should it be static? drivers/isdn/mISDN/dsp_core.c:164:12: warning: symbol 'mISDN_dsp_revision' was not declared. Should it be static? drivers/isdn/mISDN/dsp_cmx.c:1543:5: warning: symbol 'samplecount' was not declared. Should it be static? drivers/isdn/mISDN/dsp_cmx.c:1546:5: warning: symbol 'dsp_start_jiffies' was not declared. Should it be static? drivers/isdn/mISDN/dsp_cmx.c:1547:16: warning: symbol 'dsp_start_tv' was not declared. Should it be static? drivers/isdn/mISDN/dsp_tones.c:239:3: warning: symbol 'pattern' was not declared. Should it be static? drivers/isdn/mISDN/dsp_audio.c:33:4: warning: symbol 'dsp_audio_ulaw_to_alaw' was not declared. Should it be static? Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit dfa96ec1bb83641242c48883c2bae8f1f30483b2 Author: Hannes Eder Date: Fri Dec 12 21:13:45 2008 -0800 mISDN: consistently define 'debug' as '*u_int' Impact: change data type for variable 'debug' from *int to *u_int, same for the argument type of mISDN_inittimer In "core.h" mISDN_inittimer is declared with the argument type "*u_int", make the definition in "timerdev.c" match this. This fixes also this warnings: drivers/isdn/mISDN/layer1.c:391:8: warning: incorrect type in assignment (different signedness) drivers/isdn/mISDN/layer1.c:391:8: expected int *static [toplevel] debug drivers/isdn/mISDN/layer1.c:391:8: got unsigned int [usertype] *deb drivers/isdn/mISDN/layer2.c:2200:8: warning: incorrect type in assignment (different signedness) drivers/isdn/mISDN/layer2.c:2200:8: expected int *static [toplevel] debug drivers/isdn/mISDN/layer2.c:2200:8: got unsigned int [usertype] *deb drivers/isdn/mISDN/socket.c:769:8: warning: incorrect type in assignment (different signedness) drivers/isdn/mISDN/socket.c:769:8: expected int *static [toplevel] debug drivers/isdn/mISDN/socket.c:769:8: got unsigned int [usertype] *deb Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit bcf91745091ba3b0813fa79afb5d10b090ea745d Author: Hannes Eder Date: Fri Dec 12 21:11:28 2008 -0800 mISDN: use NULL pointer instead of plain integer Fix more than 100 (all remaining in mISDN) sparse warnings: drivers/isdn/hardware/mISDN/hfcmulti.c:***:**: warning: Using plain integer as NULL pointer drivers/isdn/mISDN/dsp_tones.c:***:**: warning: Using plain integer as NULL pointer drivers/isdn/mISDN/dsp_pipeline.c:***:**: warning: Using plain integer as NULL pointer Signed-off-by: Hannes Eder Acked-by: Karsten Keil Signed-off-by: David S. Miller commit a7b75207bd37cbbfa0b4ee7dbaf0dc6bafec8fea Author: Tomas Winkler Date: Thu Dec 11 10:33:41 2008 -0800 iwlwifi: add contact email to MODULE_AUTHOR Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 2aa6ab86bc475a115f56645591d2413981846509 Author: Tomas Winkler Date: Thu Dec 11 10:33:40 2008 -0800 iwlwifi: remove 4965 from common uCode API structures This patch removes 4965 from common uCode API structures. Also updates iwlagn commands with 3945 specific RX command in preparation for 3945 port. Signed-off-by: Tomas Winkler Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit b5047f78664fbcc18d67dafbb45bf62b310f9b0a Author: Tomas Winkler Date: Thu Dec 11 10:33:39 2008 -0800 iwlwifi: remove includes of iwl-helpers.h where not needed This patch removes includes of iwl-helpers.h where not needed Signed-off-by: Tomas Winkler Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 29d51d9df53a4b383e2062b2ea0d575c9f3fca47 Author: Tomas Winkler Date: Thu Dec 11 10:33:38 2008 -0800 iwlwifi: remove unused clip_groups priv member Remove clip_groups from priv and related structure. This code is for 3945 only and was renamed to 4965 in when code was split. Also remove unused RATE definitions Signed-off-by: Tomas Winkler Acked-by: Samuel Ortiz Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit edb342286e18c5bec6d3ac325851a9cba28061b9 Author: Mohamed Abbas Date: Thu Dec 11 10:33:37 2008 -0800 iwlwifi: fix resume while txpower off This patch take care of coming out rfkill when the driver is up while rfkill is on by restarting interface. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3d5717ade01ce22511f2992f150bf6644b21c377 Author: Zhu, Yi Date: Thu Dec 11 10:33:36 2008 -0800 iwlwifi: use iwl_poll_direct_bit in EEPROM reading The patch replaces the current reading EEPROM loop iterations with iwl_poll_direct_bit(). It also fixes some comment error. Signed-off-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9c5f89b3f6580cca21dca4ede940900c5b3c3a81 Author: Jouni Malinen Date: Thu Dec 11 18:22:13 2008 +0200 ath9k: Do not remove header padding on RX from short frames The 802.11 header is only padded to 32-bit boundary when the frame has a non-zero length payload. In other words, control frames (e.g., ACK) do not have a padding and we should not try to remove it. This fixes monitor mode for short control frames. In addition, the hdrlen&3 use is described in more detail to make it easier to understand how the padding length is calculated. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit f2f1ba253d970479343f97c4620e16842c695d03 Author: Rami Rosen Date: Thu Dec 11 14:29:06 2008 +0200 iwlwifi: fix build warning (iwl-rx.c) This patch fixes the following build warning when CONFIG_IWLWIFI_DEBUG is not set. /work/src/wireless-testing/drivers/net/wireless/iwlwifi/iwl-rx.c:758: warning: 'iwl_dbg_report_frame' defined but not used Signed-off-by: Rami Rosen Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit ab1f5c0bb8edbaee81c1672733f8dc4d0a5f5ea5 Author: Rami Rosen Date: Thu Dec 11 14:00:25 2008 +0200 mac80211: misc cleanups This patch removes unneeded member (skbuff) from ieee80211_ibss_add_sta() method in its declaration (in ieee80211_i.h) and its callers (in rx.c and mlme.c) This patch removes unneeded member from struct ieee80211_rx_data in ieee80211_i.h. (Originally posted as two patches. -- JWL) Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 4dec9b807be757780ca3611a959ac22c28d292a7 Author: Johannes Berg Date: Wed Dec 10 17:48:48 2008 +0100 rfkill: strip pointless notifier chain No users, so no reason to have it. Signed-off-by: Johannes Berg Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 6fb532527e2592f82ec07508df2e44f6c7ceff12 Author: Anna Neal Date: Tue Dec 9 13:23:45 2008 -0800 libertas: Create sysfs entry for changing the mesh probe response limit This patch adds the ability to change the number of probe response retries sent by the mesh interface. In dense networks it is recommended to change this value to zero to reduce traffic congestion. Signed-off-by: Anna Neal Signed-off-by: Andrey Yurovsky Signed-off-by: John W. Linville commit b77f483fcf0579de28873828897f53371a33a0ea Author: Sujith Date: Sun Dec 7 21:44:03 2008 +0530 ath9k: Refactor struct ath_softc Split ath_softc into smaller structures for rx, tx and beacon handling. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 59651e89187293e88863891b821c7379391ef75c Author: Christian Lamparter Date: Tue Dec 9 21:07:50 2008 +0100 p54: fix oops on faulty devices This patch fixes an oops when the devices suddenly starts to receive martian data frames. bug reference: http://marc.info/?l=linux-wireless&m=122872280317635&w=2 Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit b7a530d82cb36bb43901c196039b0fccee3ffcc3 Author: Jouni Malinen Date: Wed Dec 10 14:51:47 2008 +0200 mac80211: Disable requests for new scans in AP mode AP mode operations are seriously affected if mac80211 runs through a multi-second scan while the AP is trying to send Beacon frames on the operation channel. While this could be implemented in a way that does not cause too many problems, it is not very simple and will require synchronization with Beacon frame scheduling in the drivers (scan one channel at a time between Beacon frames). Furthermore, such scanning takes quite a bit longer time and existing userspace applications would be likely to timeout while waiting for the results. For now, just refuse requests for new scans (SIOCSIWSCAN) when in AP mode. In practice, this moves the rejection from iwl* drivers into mac80211 to make it apply to every mac80211-based driver. This issue shows up in associated stations getting disconnected when something (e.g., Network Manager) requests a scan while the interface is in AP mode. When doing this continuously (e.g., NM does it every 120 seconds), the network gets close to useless. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 14a4dfe2ff8c353f59ae8324059ded1cfe22c7d9 Author: Helmut Schaa Date: Wed Dec 10 13:17:26 2008 +0100 ipw2200: fix scanning while associated This patch fixes sporadic firmware restarts when scanning while associated. The firmware will quietly cancel a scan (while associated) if the dwell time for a channel to be scanned is larger than the time it may stay away from the operating channel (because of DTIM catching). Unfortunately the driver is not notified about the canceled scan and therefore the scan watchdog timeout will be hit and the driver causes a firmware restart which results in disassociation. This mainly happens on passive channels which use a dwell time of 120 whereas a typical beacon interval is around 100. The patch changes the dwell time for passive channels to be slightly smaller than the actual beacon interval to work around the firmware issue. Furthermore the number of allowed beacon misses is increased from one to three as otherwise most scans (while associated) won't complete successfully. However scanning while associated will still fail in corner cases such as a beacon intervals below 30. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit d8004cb9267b15cd902eef01a75bb1ffa3995af8 Author: Larry Finger Date: Tue Dec 9 23:35:41 2008 -0600 b43legacy: Fix sparse warnings Sparse yields the following warnings for b43legacy: CHECK drivers/net/wireless/b43legacy/phy.c drivers/net/wireless/b43legacy/phy.c:1304:31: warning: potentially expensive pointer subtraction drivers/net/wireless/b43legacy/phy.c:1304:31: warning: potentially expensive pointer subtraction drivers/net/wireless/b43legacy/phy.c:1304:31: warning: potentially expensive pointer subtraction CHECK drivers/net/wireless/b43legacy/debugfs.c drivers/net/wireless/b43legacy/debugfs.c:243:9: warning: memset with byte count of 131072 Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c1db52b9d27ee6e15a7136e67e4a21dc916cd07f Author: Larry Finger Date: Tue Dec 9 23:34:27 2008 -0600 rtl8187: Use usb anchor facilities to manage urbs When SLUB debugging is enabled in the kernel, and the boot command includes the option "slub_debug=P", rtl8187 encounters a GPF due to a read-after-free of a urb. Following the example of changes in p54usb to fix the same problem, the code has been modified to use the usb_anchor_urb() method. With this change, the USB core handles the freeing of urb's. This patch fixes the problem reported in Kernel Bugzilla #12185 (http://bugzilla.kernel.org/show_bug.cgi?id=12185). Signed-off-by: Larry Finger Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 388cdf31db6dfc3d175786a76989266380e12c26 Author: Bob Copeland Date: Tue Dec 9 23:05:38 2008 -0500 ath5k: fix endianness of bitwise ops when installing mic Fix these bugs found by sparse: ath5k/pcu.c:1102:21: warning: restricted __le32 degrades to integer ath5k/pcu.c:1102:13: warning: incorrect type in assignment (different base types) ath5k/pcu.c:1102:13: expected restricted __le32 ath5k/pcu.c:1102:13: got unsigned int ath5k/pcu.c:1104:20: warning: restricted __le32 degrades to integer ath5k/pcu.c:1104:13: warning: incorrect type in assignment (different base types) ath5k/pcu.c:1104:13: expected restricted __le32 ath5k/pcu.c:1104:13: got unsigned int Changes-licensed-under: ISC Reported-by: Johannes Berg Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 62d714e5ebec9ad4d63bb9a6da19dfd83d3db860 Author: David Kilroy Date: Tue Dec 9 23:05:38 2008 +0000 spectrum_cs: Fix function names used in debug strings Signed-off-by: David Kilroy Signed-off-by: John W. Linville commit 499b702a8d848aaa15d6255e9302d9186827691e Author: David Kilroy Date: Tue Dec 9 21:46:29 2008 +0000 orinoco: Fix inappropriate use of IRQ_BAP This hardware buffer should only be used from an interrupt. The wireless event generation functions are called from a workqueue, so use USER_BAP instead. Signed-off-by: David Kilroy Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 0c06dd8a237c673eedd295fbef7a8c0e52f5c045 Author: David Kilroy Date: Tue Dec 9 21:46:28 2008 +0000 orinoco: Fix function names used in debug strings Signed-off-by: David Kilroy Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 39ca5bb76f3382b1cb0062d75ec45abd1c46e6d2 Author: Christian Lamparter Date: Tue Dec 9 21:09:00 2008 +0100 p54: enforce strict tx_queue limits The patch fixes an old FIXME in p54pci.c by moving the "queue full" check into the common library, where we can deal with it properly. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 30dab79ed40f6c0f8a24e25fd9be7bd873eeeb8b Author: Winkler, Tomas Date: Tue Dec 9 11:29:01 2008 -0800 iwlwifi: remove qos module parameter The ability of disabling qos from module params is not required anymore. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 6d1ef1a3e6b4915d4cde897971ce283bdf0d9fbc Author: Winkler, Tomas Date: Tue Dec 9 11:29:00 2008 -0800 iwlwifi: 3945 remove qos module parameter The ability of disabling qos from module params is not required anymore. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9f925938680b7d1adeb030befb6a4b5f86026b6a Author: Winkler, Tomas Date: Tue Dec 9 11:28:59 2008 -0800 iwlifi: remove twice defined SINGLE_FRAME RX FH MASK This patch removes second definition of FH_RCSR_CHNL0_RX_CONFIG_SINGLE_FRAME in iwl-fh.h Signed-off-by: Tomas Winkler Reported-by: Emmanuel Grumbach Acked-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 759ef89fb096c4a6ef078d3cfd5682ac037bd789 Author: Winkler, Tomas Date: Tue Dec 9 11:28:58 2008 -0800 iwlwifi: change email contact information This patch replaces personal emails with hopefully always valid Intel Linux Wireless, which will be routed to a current maintainer Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit d070d8555fbb3b9114c6f861e5cf017ea1720b67 Author: Pavel Roskin Date: Tue Dec 9 12:32:15 2008 -0500 airport: remove useless return in a function returning void Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 89fad578a61810b7fdf8edd294890f3c0cde4390 Author: Christian Lamparter Date: Tue Dec 9 16:28:06 2008 +0100 mac80211: integrate sta_notify_ps cmds into sta_notify This patch replaces the newly introduced sta_notify_ps function, which can be used to notify the driver about every power state transition for all associated stations, by integrating its functionality back into the original sta_notify callback. Signed-off-by: Christian Lamparter Acked-by: Johannes Berg Signed-off-by: John W. Linville commit dd397dc9dddfa2149a1bbc9e52ac7d5630737cec Author: Christian Lamparter Date: Tue Dec 9 15:14:37 2008 +0100 p54usb: rewriting rx/tx routines to make use of usb_anchor's facilities Alan Stern found several flaws in p54usb's implementation and annotated: "usb_kill_urb() and similar routines do not expect an URB's completion routine to deallocate it.  This is almost obvious -- if the URB is deallocated before the completion routine returns then there's no way for usb_kill_urb to detect when the URB actually is complete." This patch addresses all known limitations in the old implementation and fixes khub's "use-after-freed" hang, when SLUB debug's poisoning option is enabled. Signed-off-by: Christian Lamparter Cc: stable@kernel.org Tested-by: Larry Finger Signed-off-by: John W. Linville commit a07d3619faeea3f540dd55f86685136f8928b4ad Author: Senthil Balasubramanian Date: Tue Dec 9 17:23:33 2008 +0530 ath9k: BH shouldn't be enabled when hardirqs are disabled. ath_tx_complete_buf uses a BH version of spinlock and so releasing the lock enables BH which is incorrect when called from sta_notify callback as MAC80211 disables hardirqs before the driver callback is called. As ath_tx_complete_buf is shared between user and softirq context using normal spinlock may not be appropriate. Though the proper fix would be to cleanup the context properly in the driver code, this would be an interim fix to avoid kernel warning. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit b143923689fdcc8e56688f2506a11ff16e4cd20b Author: Johannes Berg Date: Tue Dec 9 12:39:52 2008 +0100 mac80211/cfg80211: check endianness in sparse runs Make sure sparse checks endianness when run on mac80211/cfg80211. Signed-off-by: Johannes Berg Cc: Sam Ravnborg Signed-off-by: John W. Linville commit f546638c3f809fdacddc03fe765669c3042e0d9d Author: Johannes Berg Date: Tue Dec 9 12:30:03 2008 +0100 mac80211: remove fragmentation offload functionality There's no driver that actually does fragmentation on the device, and the callback is buggy (when it returns an error, mac80211's fragmentation status is changed so reading the frag threshold from userspace reads the new value despite the error). Let's just remove it, if we really find some hardware supporting it we can add it back later. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e4f2a3458f451d5fb6aa55aac6aaadcf220d0da1 Author: Johannes Berg Date: Tue Dec 9 12:26:14 2008 +0100 ath9k: remove fragmentation workaround again Looking at the RC algorithm this is no longer necessary. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 21a49fc674afd00db6de2f729f8c8e4fab2f1bdf Author: Rami Rosen Date: Tue Dec 9 08:37:28 2008 +0200 iwlwifi: fix build error (iwl-rx.c). This patch adds #ifdef CONFIG_IWLWIFI_DEBUG in iwl_rx_reply_rx() method in iwlwifi/iwl-rx.c) to avoid build error caused by "iwlwifi: implement iwl_debug_report_frame for iwlagn". Signed-off-by: Rami Rosen Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit 8dffff216fcac4f79078478085e86d68db64922e Author: Johannes Berg Date: Tue Dec 9 00:10:30 2008 +0100 mac80211: only create default STA interface if supported Drivers will support this, obviously, but this forces them to set it up properly. (This includes the fix posted as "mac80211: fix ifmodes check" and tested in wireless-testing by Hin-Tak and others. -- JWL) Signed-off-by: Johannes Berg Reported-by: Larry Finger Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 0f202aa2e1e1db1d20da9bcc3f5ad43c5a22d2d5 Author: John W. Linville Date: Mon Dec 8 14:51:41 2008 -0500 ieee80211_security: correct warning about width of auth_mode Also remove auth_algo which is unused. Signed-off-by: John W. Linville commit 8aa15e1506bb0b6b643be12baf1f2d4d2f115931 Author: Senthil Balasubramanian Date: Mon Dec 8 19:43:50 2008 +0530 ath9k: avoid rx frames with corrupted descriptor. Setting RX_ABORT/RX_DIS after MAC reset and clearing RX_ABORT/RX_DIS after enbling RXE/RXDP to avoid rx frames with corrupted descriptor status. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 2df1bff4c5cd0b28e06e4defc3f5d90618db8d53 Author: Senthil Balasubramanian Date: Mon Dec 8 19:43:49 2008 +0530 ath9k: Incorrect band enum causes invalid antenna configuration. It's a regression from the patch titled "ath9k: Use mac80211's band macros and remove enum hal_freq_band". MAC80211 band macros can't be mapped directly with our hal band enum. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit e7594072a5b918510c937c1ab0acad4e8a931bc7 Author: Senthil Balasubramanian Date: Mon Dec 8 19:43:48 2008 +0530 ath9k: Adding support for Atheros AR9285 chipset. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit e8fbc99edfe0efa0b42f04587a79a6b3371f961a Author: Senthil Balasubramanian Date: Mon Dec 8 19:43:47 2008 +0530 ath9k: Adding initvalues for Atheros AR9285 chipset. This patch adds the initvalues required for AR9285 chipset. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 02e90d627c80127933ee56ae0e9bf727fde66105 Author: Senthil Balasubramanian Date: Mon Dec 8 19:43:46 2008 +0530 ath9k: Adding AR9285 chipset register information. Adding AR9285 register information. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 306d6112f9b396ed237305036f8e889f8aa964b5 Author: Johannes Berg Date: Mon Dec 8 12:39:04 2008 +0100 cfg80211: fix nl80211 frequency handling Fix two small bugs with HT frequency setting: * HT is accepted even when the driver is incapable * HT40 is accepted when the driver cannot do 40 MHz (both on the selected band) Also simplify the code a little. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7ba1c04ed727a70df2dc63464232c0ec906ad67d Author: Johannes Berg Date: Mon Dec 8 11:18:32 2008 +0100 mac80211: improve sta_notify documentation Mention more possible STA entries and document the atomic requirement. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8ee5afbc9d2162f0919dd089023fb690f7cf8134 Author: Sujith Date: Sun Dec 7 21:43:36 2008 +0530 ath9k: Merge structures ath_atx, ath_node_aggr with ath_node Signed-off-by: Sujith Signed-off-by: John W. Linville commit f6688cd8af6260ad4717ce45d2a614633fcf5540 Author: Sujith Date: Sun Dec 7 21:43:10 2008 +0530 ath9k: Remove remaining occurrences of CONFIG_SLOW_ANT_DIV Slow Antenna Diversity has been removed, these are remnants of the old code. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 817e11de2d3392041a70c80a6d5b353ad210f276 Author: Sujith Date: Sun Dec 7 21:42:44 2008 +0530 ath9k: Add a debugfs file to show interrupt statistics Location: ath9k//interrupt Signed-off-by: Sujith Signed-off-by: John W. Linville commit 3706de6f58962ba74c18eb4cb1ebe034ff723037 Author: Sujith Date: Sun Dec 7 21:42:10 2008 +0530 ath9k: Maintain rate table choice after association A scan run after association would change sc_curmode which is used to get the current rate table. This patch fixes it by removing sc_curmode and setting the rate table in usage in cur_rate_table on association. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 40990ec01fcca0b86a19c13a5d3deb77da1913a7 Author: Sujith Date: Sun Dec 7 21:41:37 2008 +0530 ath9k: Fix bug in rate table management The proper rate table wouldn't be used if a disassoc happens and a new attempt is made to associate using wpa_supplicant. This patch fixes it by storing the rate table to be used on association. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 6b3aa6ab787fe545c58554b7ce5c94de53526b83 Author: Jouni Malinen Date: Fri Dec 5 20:43:27 2008 +0200 ath9k: Disable staggered Beacon frame scheduling It looks like there are some issues in the current ath9k version as far as staggered Beacon frame scheduling is concerned. This results in Beacon frame timestamp being off by 25 milliseconds or so which can cause issues with multicast power save buffering in AP mode. Some client stations fail to receive multicast frames when there is this large an offset between TBTT and actual Beacon transmission time. Since ath9k does not yet support multiple BSSes anyway, the staggered Beacon frame scheduling is just increasing the number of interrupts at this point. The easiest fix for the timestamp offset is to disable staggered Beacon frames for now. We need to redesign beacon.c anyway when adding multi-BSS support with mac80211 since the existing code depends on different mechanism for Beacon frame transmission. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 3fbb9d95a96c6a03f2e484bb1665d089412640dc Author: Jouni Malinen Date: Fri Dec 5 20:42:45 2008 +0200 ath9k: Free Beacon skbs in AP mode Fix a memory leak where AP mode did not free transmitted Beacon frame skbs. Signed-off-by: Jouni Malinen Acked-by: Pat Erley Signed-off-by: John W. Linville commit 61ff84a4ce6451c9a0b675d355e0580e53628801 Author: Rami Rosen Date: Fri Dec 5 18:16:21 2008 +0200 iwlwifi: cleanup (remove pm_state) This patches removes unused variable (pm_state) from iwl-dev.h and from iwl-3945.h. (wireless-testing tree) Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit a8ec42c1431e8a43f910fb27af4882416cf5d6b1 Author: Zhu, Yi Date: Fri Dec 5 07:58:41 2008 -0800 iwlwifi: use rmb/wmb to protect indirect mmio operation This patch protects iwlwifi indirect mmio operations with rmb() and wmb(). It makes sure CPU reordering won't affect our indirect mmio access. Signed-off-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 73d7b5acc461bdc99e0135779d15e1874c6e00a6 Author: Zhu, Yi Date: Fri Dec 5 07:58:40 2008 -0800 iwlwifi: iwl_poll_{direct_}bit cleanup The patch merges implementation of iwl_poll_bit() and iwl_poll_direct_bit() by letting the latter be a special case of the former. Signed-off-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 42802d71dd14dd0e435a8da59d817d0c6f8a2866 Author: Zhu, Yi Date: Fri Dec 5 07:58:39 2008 -0800 iwlwifi: fix "MAC in deep sleep" error This patch fixes the misue of CSR_GP_CNTRL with CSR_RESET address in polling the CSR_GP_CNTRL_REG_FLAG_MAC_CLOCK_READY bit in iwl4965_apm_reset(). This causes "MAC in deep sleep" error sometimes. The patch also fixes the timeout value and the iwl_poll_bit() return value check. Signed-off-by: Zhu Yi Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit f056658bb9c3085d5ec52fbdd45b38d55b899cc9 Author: Zhu, Yi Date: Fri Dec 5 07:58:38 2008 -0800 iwlwifi: fix time interval misuse in iwl_poll_{direct_}bit The patch fixes the misuse of microsecond with millisecond in the polling mechanism of the iwlwifi driver. The impact of this problem is the unacceptable latency for the whole system (especially during bringing down the wlan interface). Signed-off-by: Zhu Yi Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7262796ab726fcefad9b588a44d1d5a9f221051f Author: Abbas, Mohamed Date: Fri Dec 5 07:58:37 2008 -0800 iwl3945: Fix rate scale for B-mode connection This patch make sure we use only CCK rate for B only network. For 3945 driver, it sets REPLY_RATE_SCALE command every time we connect to a new network. In this command we set for every rate the number of try and next rate. The problem mac80211 reports same mode for both B and G mode as IEEE80211_BAND_2GHZ which will cause using invalid rate other than CCK in B only network. THis patch on association will examine sta valid rate on association, if no OFDM rate in valid available rates it considers it as B only mode so we can set REPLY_RATE_SCALE command with valid B only network and only choose CCK rate in rate scaling. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 00e540b3768c96a5e2a9d5d39524fef98b2cd981 Author: Halperin, Daniel C Date: Fri Dec 5 07:58:36 2008 -0800 iwlwifi: implement iwl_debug_report_frame for iwlagn The old version of this code was copied from 3945 and never updated. This patch cleans up structs that do not apply and accounts for other changes from 3945->iwlagn (e.g., PHY info can come in a separate cmd response from the ucode.) Signed-off-by: Daniel Halperin Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 447107fb32d75425c95a33f58e6b4b760b470092 Author: Reinette Chatre Date: Thu Dec 4 14:49:08 2008 -0800 mac80211: remove WARN_ON() from ieee80211_hw_config ieee80211_hw_config can return an error when the hardware has rfkill enabled. A WARN_ON() is too harsh for this failure as it is a valid scenario. Only comment this warning as we would like to have it back when rfkill is integrated into mac80211. Also reintroduce propagation of error if ieee80211_hw_config fails in ieee80211_config_beacon. This patch partially reverts patch: 5f0387fc3337ca26f0745f945f550f0c3734960f "mac80211: clean up ieee80211_hw_config errors" Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit bb608e9db7d29616fb6e0d856c23434610d4a1bd Author: Senthil Balasubramanian Date: Thu Dec 4 20:38:13 2008 +0530 wireless: Incorrect LEAP authentication algorithm identifier. This patch fixes a regression introduced by "wireless: avoid some net/ieee80211.h vs. linux/ieee80211.h conflicts" LEAP authentication algorithm identifier should be 128. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit a7db74f4be3835fd16c6c582d320f692ccccc622 Author: Larry Finger Date: Wed Dec 3 22:21:20 2008 -0600 rtl8187: Improve wireless statistics for RTL8187 The current wireless statistics for the RTL8187 poorly indicate the signal strength and quality. With testing, I found that the AGC value is inversely correlated with the strength as in the RTL8187B. By implementing a similar calculation, much more code becomes common to the two devices. Signed-off-by: Larry Finger Tested by: Martín Ernesto Barreyro Acked-by: Hin-Tak Leung Signed-off-by: John W. Linville commit fd28a5b58dddf5cb5df162ae5c8797a63171c31d Author: Andi Kleen Date: Tue Oct 21 14:05:00 2008 +0200 x86: remove simnow earlyprintk support Impact: remove obsolete code The later versions of SimNow! actually all have serial console emulation, so the direct interface isn't needed anymore. So remove the undocumented simnow earlyprintk console. Signed-off-by: Andi Kleen Signed-off-by: Thomas Gleixner commit 9470565579f29486f4ed0ffa50774268b64994b0 Author: Dave Jones Date: Mon Dec 1 14:13:50 2008 -0800 x86: remove init_mm export as planned for 2.6.26 Impact: remove deprecated export Signed-off-by: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner commit d65bd5ecb2bd166cea4952a59b7e16cc3ad6ef6c Author: Heiko Carstens Date: Tue Dec 9 18:49:51 2008 +0100 sched: add missing arch_update_cpu_topology() call arch_reinit_sched_domains() used to call arch_update_cpu_topology() via arch_init_sched_domains(). This call got lost with e761b7725234276a802322549cee5255305a0930 ("cpu hotplug, sched: Introduce cpu_active_map and redo sched domain managment (take 2)". So we might end up with outdated and missing cpus in the cpu core maps (architecture used to call arch_reinit_sched_domains if cpu topology changed). This adds a call to arch_update_cpu_topology in partition_sched_domains which gets called whenever scheduling domains get updated. Which is what is supposed to happen when cpu topology changes. Signed-off-by: Heiko Carstens Signed-off-by: Ingo Molnar commit ee79d1bdb6a10499e53f80b1e8d14110215178ba Author: Heiko Carstens Date: Tue Dec 9 18:49:50 2008 +0100 sched: let arch_update_cpu_topology indicate if topology changed Change arch_update_cpu_topology so it returns 1 if the cpu topology changed and 0 if it didn't change. This will be useful for the next patch which adds a call to this function in partition_sched_domains. Signed-off-by: Heiko Carstens Signed-off-by: Ingo Molnar commit 2bed8446819a7c5033aa1da138d9f230ae212edc Author: Ingo Molnar Date: Fri Dec 12 12:13:36 2008 +0100 tracing/function-graph-tracer: add a new .irqentry.text section, fix Impact: build fix 32-bit x86 needs this section too. Signed-off-by: Ingo Molnar commit cbc34ed1ac36690f75fd272e19e7b4fc29aae5a2 Author: Peter Zijlstra Date: Wed Dec 10 08:08:22 2008 +0100 sched: fix tracepoints in scheduler The trace point only caught one of many places where a task changes cpu, put it in the right place to we get all of them. Change the signature while we're at it. Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 915b0d0104b72fd36af088ba4b11b5690bc96a6c Author: Hiroshi Shimamoto Date: Mon Dec 8 19:19:26 2008 -0800 x86: hardirq: introduce inc_irq_stat() Impact: cleanup Introduce inc_irq_stat() macro and unify irq_stat accounting code. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit fd10902797fc9d6abaf55d9c2e3c6698c90b10c7 Merge: 5b3eec0... 8b1fae4... Author: Ingo Molnar Date: Fri Dec 12 11:59:39 2008 +0100 Merge commit 'v2.6.28-rc8' into x86/irq commit 8f2466f45f75e3cbe3aa2b69d33fd9d6e343b9cc Author: Hiroshi Shimamoto Date: Mon Dec 8 19:19:07 2008 -0800 x86: kill #ifdef for exit_idle() Impact: cleanup Introduce helper inline function in arch/x86/include/asm/idle.h to remove #ifdefs around exit_idle(). Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 16855f878d7127a8bb3925753463485f3071ad76 Author: Hiroshi Shimamoto Date: Mon Dec 8 19:18:38 2008 -0800 x86: uaccess: return value of __{get|put}_user() can be int Impact: cleanup The type of return value of __{get|put}_user() can be int. There is no user to refer the return value of __{get|put}_user() as long. This reduces code size a bit on 64-bit. $ size vmlinux.* text data bss dec hex filename 4509265 479988 673588 5662841 566879 vmlinux.new 4511462 479988 673588 5665038 56710e vmlinux.old Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit e18d7af85296cb6999aae171e8a9f8612bea5ae0 Merge: 3555105... 8b1fae4... Author: Ingo Molnar Date: Fri Dec 12 11:53:43 2008 +0100 Merge commit 'v2.6.28-rc8' into x86/mm commit f8b755ac8e0cc3f330269e4c4504514f987167a2 Author: Frederic Weisbecker Date: Tue Dec 9 23:55:25 2008 +0100 tracing/function-graph-tracer: Output arrows signal on hardirq call/return Impact: make more obvious the hardirq calls in the output When a hardirq is triggered inside the codeflow on output, we have now two arrows that indicate the entry and return of the hardirq. 0) | bit_waitqueue() { 0) 0.880 us | __phys_addr(); 0) 2.699 us | } 0) | __wake_up_bit() { 0) ==========> | smp_apic_timer_interrupt() { 0) 0.797 us | native_apic_mem_write(); 0) 0.715 us | exit_idle(); 0) | irq_enter() { 0) 0.722 us | idle_cpu(); 0) 5.519 us | } 0) | hrtimer_interrupt() { 0) | ktime_get() { 0) | ktime_get_ts() { 0) 0.805 us | getnstimeofday(); [...] 0) ! 108.528 us | } 0) | irq_exit() { 0) | do_softirq() { 0) | __do_softirq() { 0) 0.895 us | __local_bh_disable(); 0) | run_timer_softirq() { 0) 0.827 us | hrtimer_run_pending(); 0) 1.226 us | _spin_lock_irq(); 0) | _spin_unlock_irq() { 0) 6.550 us | } 0) 0.924 us | _local_bh_enable(); 0) + 12.129 us | } 0) + 13.911 us | } 0) 0.707 us | idle_cpu(); 0) + 17.009 us | } 0) ! 137.419 us | } 0) <========== | 0) 1.045 us | } 0) ! 148.908 us | } 0) ! 151.022 us | } 0) ! 153.022 us | } 0) 0.963 us | journal_mark_dirty(); 0) 0.925 us | __brelse(); Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit bcbc4f20b52c2c40c43a4d2337707dcdfe81bc3a Author: Frederic Weisbecker Date: Tue Dec 9 23:54:20 2008 +0100 tracing/function-graph-tracer: annotate do_IRQ and smp_apic_timer_interrupt Impact: move most important x86 irq entry-points to a separate subsection Annotate do_IRQ and smp_apic_timer_interrupt to put them into the .irqentry.text subsection. These function will so be recognized as hardirq entrypoints for the function-graph-tracer. We could also annotate other irq entries but the others are far less important but they can be added on request. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit a0343e823184070f55364d8359f832dcb33c57c7 Author: Frederic Weisbecker Date: Tue Dec 9 23:53:16 2008 +0100 tracing/function-graph-tracer: add a new .irqentry.text section Impact: let the function-graph-tracer be aware of the irq entrypoints Add a new .irqentry.text section to store the irq entrypoints functions inside the same section. This way, the tracer will be able to signal an interrupts triggering on output by recognizing these entrypoints. Also, make this section recordable for dynamic tracing. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 85072bd55219231b8ca5d9d3fa3492eb4fa6635f Author: Ingo Molnar Date: Fri Dec 12 11:08:42 2008 +0100 x86, debug: remove EBDA debug printk Remove leftover EBDA debug message. Reported-by: Andrew Morton Signed-off-by: Ingo Molnar commit c1dfdc7597d051b09555d4ae2acb90403e238746 Merge: efbe027... 8b1fae4... Author: Ingo Molnar Date: Fri Dec 12 10:29:35 2008 +0100 Merge commit 'v2.6.28-rc8' into sched/core commit da485e0cb16726797e99a595a399b9fc721b91bc Author: Frederic Weisbecker Date: Thu Dec 11 16:14:23 2008 +0100 tracing/fastboot: include missing headers For now include/trace/boot.h doesn't need to include necessary headers for its functions and structures because the files that include it already do it. But boot.h could be needed as well for further uses on other files. So, this patch adds the necessary headers for future purposes... Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 8001530d5af707eb9a158839c8f651eb6c1cb3c2 Author: Stephen Rothwell Date: Thu Dec 11 16:10:08 2008 +0100 tracing/fastboot: fix len of func buffer Impact: fix possible stack overrun This is a port of a patch included in the mainline (KSYM_SYMBOL_LEN fixes). The current func len is not large enough to contain the max symbol len, the right size must be KSYM_SYMBOL_LEN. Signed-off-by: Stephen Rothwell Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 8808500f26a61757cb414da76b271bbd09d5958c Author: Ingo Molnar Date: Fri Dec 12 09:20:12 2008 +0100 x86: soften multi-BAR mapping sanity check warning message Impact: make debug warning less scary The ioremap() time multi-BAR map warning has been causing false positives: http://lkml.org/lkml/2008/12/10/432 http://lkml.org/lkml/2008/12/11/136 So make it less scary by making it once-per-boot, by making it KERN_INFO and by adding this text: "Info: mapping multiple BARs. Your kernel is fine." Signed-off-by: Ingo Molnar commit ffc2238af8431d930d2c15f16feecf1fd6d75642 Author: Ingo Molnar Date: Fri Dec 12 08:21:19 2008 +0100 x86, bts: fix build error Impact: build fix arch/x86/kernel/ds.c: In function 'ds_request': arch/x86/kernel/ds.c:236: sorry, unimplemented: inlining failed in call to 'ds_get_context': recursive inlining but the recursion here is scary ... Signed-off-by: Ingo Molnar commit a93751cab71d63126687551823ed3e70cd85854a Author: Markus Metzger Date: Thu Dec 11 13:53:26 2008 +0100 x86, bts, ftrace: adapt the hw-branch-tracer to the ds.c interface Impact: restructure code, cleanup Remove BTS bits from the hw-branch-tracer (renamed from bts-tracer) and use the ds interface. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit c2724775ce57c98b8af9694857b941dc61056516 Author: Markus Metzger Date: Thu Dec 11 13:49:59 2008 +0100 x86, bts: provide in-kernel branch-trace interface Impact: cleanup Move the BTS bits from ptrace.c into ds.c. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit b0884e25fe361f2ca228808fb5fd1b74cb04e711 Author: Markus Metzger Date: Thu Dec 11 13:45:23 2008 +0100 x86, bts: turn BUG_ON into WARN_ON_ONCE Impact: make the ds code more debuggable Turn BUG_ON's into WARN_ON_ONCE. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit f3134de60624829a57741c1f3796847d4de165f6 Merge: e726f5f... 361b73d... Author: Ingo Molnar Date: Fri Dec 12 07:40:08 2008 +0100 Merge branches 'tracing/function-graph-tracer' and 'tracing/ring-buffer' into tracing/core commit 7a3c66e2d322c638e9306e739d96b2192dacde88 Author: Daniel Silverstone Date: Thu Dec 11 21:00:29 2008 -0800 net: Add support for the KS8695 ethernet devices. Implements the KS8695 ethernet device (ks8695net). This driver is only of use on the KS8695 which is an ARM9 based SoC. The documentation on this SoC is sparse and poor, with barely a register description and a rough outline of how the ethernet works, this driver was therefore written with strong reference to the Micrel supplied Linux 2.6.9 port, and to Andrew Victor's ks8695eth driver. Signed-off-by: Daniel Silverstone Signed-off-by: Vincent Sanders Acked-by: Ben Dooks Signed-off-by: David S. Miller commit 82a9928db560c429807f02467d22394f944a8916 Author: Atsushi Nemoto Date: Thu Dec 11 20:58:04 2008 -0800 tc35815: Enable StripCRC feature The chip can strip CRC automatically on receiving. Enable it. Also fix potential RX_BUF_SIZE calculation bug which was obscured by alignment. And use proper symbols (NET_IP_ALIGN, ETH_FCS_LEN, etc.) instead of magic numbers. Signed-off-by: Atsushi Nemoto Signed-off-by: David S. Miller commit 2cb377283f3469d66f0ea7358015abfe8366e5d0 Author: Steve Glendinning Date: Thu Dec 11 20:54:30 2008 -0800 smsc9420: SMSC LAN9420 10/100 PCI ethernet adapter This patch adds a driver for the LAN9240 PCI ethernet adapter. Changes since initial submission: - debug msg_level has been changed to use standard definitions - convert to use net_device_ops Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit ea943d41a8770857d50029fdc8fd111635c21a1f Author: Jeff Kirsher Date: Thu Dec 11 20:34:19 2008 -0800 igb: fixup AER with proper error handling Based on Peter Waskiewicz patch for ixgbe. Add error handling based on Hemminger's recommendation. Signed-off-by: Jeff Kirsher Acked-by: Peter P Waskiewicz Jr Signed-off-by: David S. Miller commit 49d92c7d5bbd158734bc34ed578a68b214a48583 Author: Stanley.Miao Date: Thu Dec 11 23:28:10 2008 +0800 ASoC: TWL4030: hands-free start-up sequence. A special start-up sequence is required to reduce the pop-noise of Class D amplifier when enable hands-free on TWL4030. Signed-off-by: Stanley.Miao Signed-off-by: Mark Brown commit 4544f8a22f38ba4560320fcfbe8c7e81562ddc6f Author: Mark Brown Date: Thu Dec 11 16:11:38 2008 +0000 ASoC: Fix variable name for Blackfin I2S DAI Signed-off-by: Mark Brown commit cd85400a022335a92fa3c25827179a7ad5e02225 Author: Stefan Roese Date: Fri Dec 5 01:58:49 2008 +0000 powerpc/4xx: Add L2 cache node to AMCC Canyonlands dts file With this patch the L2 cache is enabled on Canyonlands to increase the overall performance. There is a known cache coherency issue with the L2 cache, but this is related to the high bandwidth (HB) PLB segment where the memory address is 0x8.xxxx.xxxx (low bandwidth PLB segment is mapped to 0x0.xxxx.xxxx). Since this HB address is currently unused it is safe to enable the L2 cache. Signed-off-by: Stefan Roese Signed-off-by: Josh Boyer commit 132bb7c0efe82fc976b06d557f5d63536cb9fdaa Author: Takashi Iwai Date: Thu Dec 11 15:39:52 2008 +0100 ALSA: hda - Add development tree URLs in HD-audio.txt Signed-off-by: Takashi Iwai commit f8bbd06b17f16984328398cdecdf9302ef9bb0bf Author: Takashi Iwai Date: Thu Dec 11 13:12:59 2008 +0100 ALSA: hda - Fix another typo in HD-Audio.txt commit 42a73df435a23e60d97d9d860f4e55dc9833e950 Author: Takashi Iwai Date: Thu Dec 11 12:12:06 2008 +0100 ALSA: sb8 - Fix a return code in the error path Fixed a compile warning below: sound/isa/sb/sb8.c: In function ‘snd_sb8_probe’: sound/isa/sb/sb8.c:104: warning: ‘err’ may be used uninitialized in this function by setting the return value correctly. Signed-off-by: Takashi Iwai commit 5c0b9bec460c348d2ee5a800c288e5d0e8fcda66 Author: Takashi Iwai Date: Thu Dec 11 11:47:17 2008 +0100 ALSA: hda - Fix a compile warning when CONFIG_PM=n Fixed the compile warning regarding the unused function when built with CONFIG_PM=n: sound/pci/hda/hda_intel.c:1905: warning: ‘snd_hda_codecs_inuse’ defined but not used snd_hda_codecs_inuse() is used only in the resume callback. Signed-off-by: Takashi Iwai commit 6de45d5d776d2a7e7a9adc8ea49d37fe1bd45fb2 Author: Takashi Iwai Date: Thu Dec 11 10:28:18 2008 +0100 ALSA: ASoC - Fix DAI registration in s3c2443-ac97.c Fixed the registration of dais in s3c2443-ac97.c. sound/soc/s3c24xx/s3c2443-ac97.c: In function 's3c2443_ac97_init': sound/soc/s3c24xx/s3c2443-ac97.c:401: warning: passing argument 1 of 'snd_soc_register_dai' from incompatible pointer type sound/soc/s3c24xx/s3c2443-ac97.c: In function 's3c2443_ac97_exit': sound/soc/s3c24xx/s3c2443-ac97.c:407: warning: passing argument 1 of 'snd_soc_unregister_dai' from incompatible pointer type Signed-off-by: Takashi Iwai commit 623b9f6738dee0394398564a74fdabbff00f506f Author: Takashi Iwai Date: Thu Dec 11 07:44:18 2008 +0100 ALSA: hda - Update HD-Audio.txt Fixed typos and added a section about codecgraph. Thanks to Vedran Miletić and Daniel T Chen for suggestions. Signed-off-by: Takashi Iwai commit 293a4f28333a38aa75254bfb01a5102afc981809 Author: Eric Leblond Date: Wed Dec 10 17:24:33 2008 -0800 netfilter: xt_NFLOG is dependant of nfnetlink_log The patch "don't call nf_log_packet in NFLOG module" make xt_NFLOG dependant of nfnetlink_log. This patch forces the dependencies to fix compilation in case only xt_NFLOG compilation was asked and modifies the help message accordingly to the change. Signed-off-by: Eric Leblond Signed-off-by: David S. Miller commit 8229efdaef1e7913ae1712c0ba752f267e5fcd5e Author: Benjamin Thery Date: Wed Dec 10 16:30:15 2008 -0800 netns: ip6mr: enable namespace support in ipv6 multicast forwarding code This last patch makes the appropriate changes to use and propagate the network namespace where needed in IPv6 multicast forwarding code. This consists mainly in replacing all the remaining init_net occurences with current netns pointer retrieved from sockets, net devices or mfc6_caches depending on the routines' contexts. Some routines receive a new 'struct net' parameter to propagate the current netns: * ip6mr_get_route * ip6mr_cache_report * ip6mr_cache_find * ip6mr_cache_unresolved * mif6_add/mif6_delete * ip6mr_mfc_add/ip6mr_mfc_delete * ip6mr_reg_vif All the IPv6 multicast forwarding variables moved to struct netns_ipv6 by the previous patches are now referenced in the correct namespace. Changelog: ========== * Take into account the net associated to mfc6_cache when matching entries in mfc_unres_queue list. * Call mroute_clean_tables() in ip6mr_net_exit() to free memory allocated per-namespace. * Call dev_net_set() in ip6mr_reg_vif() to initialize dev->nd_net correctly. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 8b90fc7e5b43aaef941044a4785a42439015b539 Author: Benjamin Thery Date: Wed Dec 10 16:29:48 2008 -0800 netns: ip6mr: declare ip6mr /proc/net entries per-namespace Declare IPv6 multicast forwarding /proc/net entries per-namespace: /proc/net/ip6_mr_vif /proc/net/ip6_mr_cache Changelog ========= V2: * In routine ipmr_mfc_seq_idx(), only match entries belonging to current netns in mfc_unres_queue list. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 950d5704e5daa1f90bcd75b99163491e7b249169 Author: Benjamin Thery Date: Wed Dec 10 16:29:24 2008 -0800 netns: ip6mr: declare reg_vif_num per-namespace Preliminary work to make IPv6 multicast forwarding netns-aware. Declare variable 'reg_vif_num' per-namespace, moves into struct netns_ipv6. At the moment, this variable is only referenced in init_net. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit a21f3f997c73ced682129aedd372bb6b53041510 Author: Benjamin Thery Date: Wed Dec 10 16:28:44 2008 -0800 netns: ip6mr: declare mroute_do_assert and mroute_do_pim per-namespace Preliminary work to make IPv6 multicast forwarding netns-aware. Declare IPv6 multicast forwarding variables 'mroute_do_assert' and 'mroute_do_pim' per-namespace in struct netns_ipv6. At the moment, these variables are only referenced in init_net. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 4045e57c19bee150370390545ee8a933b3f7a18d Author: Benjamin Thery Date: Wed Dec 10 16:27:21 2008 -0800 netns: ip6mr: declare counter cache_resolve_queue_len per-namespace Preliminary work to make IPv6 multicast forwarding netns-aware. Declare variable cache_resolve_queue_len per-namespace: moves it into struct netns_ipv6. This variable counts the number of unresolved cache entries queued in the list mfc_unres_queue. This list is kept global to all netns as the number of entries per namespace is limited to 10 (hardcoded in routine ip6mr_cache_unresolved). Entries belonging to different namespaces in mfc_unres_queue will be identified by matching the mfc_net member introduced previously in struct mfc6_cache. Keeping this list global to all netns, also allows us to keep a single timer (ipmr_expire_timer) to handle their expiration. In some places cache_resolve_queue_len value was tested for arming or deleting the timer. These tests were equivalent to testing mfc_unres_queue value instead and are replaced in this patch. At the moment, cache_resolve_queue_len is only referenced in init_net. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 4a6258a0e33d042e4c84d9dec25d45ddb40a70b3 Author: Benjamin Thery Date: Wed Dec 10 16:24:07 2008 -0800 netns: ip6mr: dynamically allocate mfc6_cache_array Preliminary work to make IPv6 multicast forwarding netns-aware. Dynamically allocates IPv6 multicast forwarding cache, mfc6_cache_array, and moves it to struct netns_ipv6. At the moment, mfc6_cache_array is only referenced in init_net. Replace 'ARRAY_SIZE(mfc6_cache_array)' with mfc6_cache_array size: MFC6_LINES. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 58701ad41105638baa0b38ffe9ac5b10469c1fd3 Author: Benjamin Thery Date: Wed Dec 10 16:22:34 2008 -0800 netns: ip6mr: store netns in struct mfc6_cache This patch stores into struct mfc6_cache the network namespace each mfc6_cache belongs to. The new member is mfc6_net. mfc6_net is assigned at cache allocation and doesn't change during the rest of the cache entry life. This will help to retrieve the current netns around the IPv6 multicast forwarding code. At the moment, all mfc6_cache are allocated in init_net. Changelog: ========== * Use write_pnet()/read_pnet() to set and get mfc6_net. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 4e16880cb4225bfa68878ad5b2a9ded53657d054 Author: Benjamin Thery Date: Wed Dec 10 16:15:08 2008 -0800 netns: ip6mr: dynamically allocates vif6_table Preliminary work to make IPv6 multicast forwarding netns-aware. Dynamically allocates interface table vif6_table and moves it to struct netns_ipv6, and updates MIF_EXISTS() macro. At the moment, vif6_table is only referenced in init_net. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit bd91b8bf372911c1e4d66d6bb44fe409349a6791 Author: Benjamin Thery Date: Wed Dec 10 16:07:08 2008 -0800 netns: ip6mr: allocate mroute6_socket per-namespace. Preliminary work to make IPv6 multicast forwarding netns-aware. Make IPv6 multicast forwarding mroute6_socket per-namespace, moves it into struct netns_ipv6. At the moment, mroute6_socket is only referenced in init_net. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 5eaa65b240c5eb7bf2235eb9dd177c83e6e3832c Author: Roel Kluin Date: Wed Dec 10 15:18:31 2008 -0800 net: Make static Sparse asked whether these could be static. Signed-off-by: Roel Kluin Signed-off-by: David S. Miller commit 2107fb8b5bf018be691afdd4c6ffaecf0c3307be Author: Steve Glendinning Date: Wed Nov 5 00:35:38 2008 +0000 smsc911x: add dynamic bus configuration Convert the driver to select 16-bit or 32-bit bus access at runtime, at a small performance cost. Signed-off-by: Steve Glendinning Acked-by: Catalin Marinas Signed-off-by: David S. Miller commit 3b1228abc93f7ab0aa28c46341d6a0f7e2cade70 Author: Mark Brown Date: Wed Dec 10 19:27:10 2008 +0000 ASoC: Stop WM8903 SYSCLK when suspending This will save some additional power. Signed-off-by: Mark Brown commit d58d5d5567ea9483346f57c83a94ce05992cd47c Author: Mark Brown Date: Wed Dec 10 18:36:42 2008 +0000 ASoC: Convert WM8903 driver to register at I2C probe time The driver now registers the codec and DAI when probed as an I2C device. Also convert the driver to use a single dynamic allocation to simplify error handling. Signed-off-by: Mark Brown commit 78e19a39d3985e2a06354493a70a200c0d432de5 Author: Mark Brown Date: Wed Dec 10 15:38:36 2008 +0000 ASoC: Convert WM8900 to do more work at I2C probe time Redo the instantiation of the WM8900 to do most of the initialisation work when the I2C driver probes rather than when the ASoC device is instantiated, registering the codec with the ASoC core when done. Also move all dynamic allocations into a single kmalloc() to simplify error handling and rename the I2C driver to make output more sensible. Signed-off-by: Mark Brown commit f144b7f6679d9833bd3b94b91e452592b6d0e502 Author: Takashi Iwai Date: Wed Dec 10 17:23:24 2008 +0100 ALSA: cs5535 - Make OLPC-stuff depending on MGEODE_LX The GPIO stuff for OLPC in cs5535audio_olpc.c is implemented only for Geode-LX, and enabled only when CONFIG_MGEODE_LX=y. Without this config option, the driver gets build errors. This patch adds a workaround to make it dependent on CONFIG_MGEODE_LX. Ideally, the OLPC-GPIO stuff should be implemented in a way independent from CPU type selection... Signed-off-by: Takashi Iwai commit 0fb497f5b6ff8da1e9e60afb39835f40d7f043ec Author: Andres Salomon Date: Thu Nov 6 16:53:34 2008 -0500 ALSA: cs5535audio: ensure MIC Bias/Analog Input bail if not on an OLPC machine Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit b5ccc57b06b54058879ab3ea548625d9bf88c7fc Author: Andres Salomon Date: Thu Nov 6 16:53:26 2008 -0500 ALSA: cs5535audio: clean up OLPC code - add copyright info to _olpc.c - minor layout fixes - make Makefile more concise - silence a warning Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit c8f0eeebc119c401202bc2794bec026d6cfd062e Author: Andres Salomon Date: Thu Nov 6 16:53:19 2008 -0500 ALSA: cs5535audio: turn off mic bias on OLPCs by default Always turn off mic bias; the MIC LED should never come on when the driver is first loaded. Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit 01da02419da827742acd5235467f493206e83574 Author: Andres Salomon Date: Thu Nov 6 16:53:11 2008 -0500 ALSA: cs5535audio: for OLPC, default to Analog Input being off Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit bf1e5278354856ac0260d338961560e720147681 Author: Andres Salomon Date: Thu Nov 6 16:53:03 2008 -0500 ALSA: cs5535audio: rename V_REFOUT control to MIC Bias This drops the AD1888 V_REFOUT control, and replaces it with a MIC Bias Enable control. It also moves the MIC bias enabling into a separate function. Signed-off-by: Andres Salomon commit e463ae1d13ffe4943bb31f47cc6f24415e55a59a Author: Chris Ball Date: Thu Nov 6 16:50:09 2008 -0500 ALSA: cs5535audio: enable OLPC's V_REFOUT bias when recording The OLPC has a privacy light hooked up in series with the microphone's V_Ref bias. We want to activate the bias while we are capturing audio. Signed-off-by: Chris Ball Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit 189d34e747e9540b70227f6682bd680868d90b10 Author: Andres Salomon Date: Thu Nov 6 16:49:55 2008 -0500 ALSA: cs5535audio: check OLPC's Analog Input status vis GPIO Checking the HPF register is irrelevant; HPF is secondary to the AI mode. Instead, check for Analog Input mode via GPIO. Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit 466ae3055be8665525a5613456fcb387ffef4cb7 Author: Andres Salomon Date: Thu Nov 6 16:49:46 2008 -0500 ALSA: cs5535audio: rename OLPC's analog input control && drop AD1888's HPF Previously, we had two separate controls; there's no need to have AD1888's HPF control, so drop it if we're on an OLPC machine. Also, as per Arjun's request, rename OLPC's Analog Input Switch control to "DC Mode Enable". Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit d6276b78028dfab944dd4a58124aefcc9aa580da Author: Andres Salomon Date: Thu Nov 6 16:49:38 2008 -0500 ALSA: cs5535audio: create function for setting OLPC's Analog Input mode Clean this stuff up a bit.. Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit 1e2232bc70b32f90109d678d1faccf6f50ebba80 Author: Andres Salomon Date: Thu Nov 6 16:47:05 2008 -0500 ALSA: cs5535audio: decouple HPF from V_REFOUT in OLPC code We shouldn't be touching V_REFOUT when we toggle HPF/analog input, so just drop that code. Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit b91254e75c3ec4f371ce1849672a95a929d99861 Author: Andres Salomon Date: Thu Nov 6 16:46:31 2008 -0500 ALSA: cs5535audio: drop ec_analog_input flag for OLPC stuff This is no longer necessary, as we're no longer doing indexed i/o commands. Signed-off-by: Andres Salomon commit 3556d18465c6e67c7a8f436428b95671add02f57 Author: Andres Salomon Date: Thu Nov 6 16:44:08 2008 -0500 ALSA: cs5535audio: invert EAPD for OLPC (newer than B3) Fix an audible pop described in . Originally based upon fixes by Mitch Bradley and Chris Ball. Signed-off-by: Andres Salomon commit c8974be5465b87414fa542cf9cca1a1ba21b8d60 Author: Jordan Crouse Date: Thu Nov 6 16:43:53 2008 -0500 ALSA: cs5535audio: Use OLPC/Geode basic infrastructure Use basic infrastructure code; geode_gpio* (rather than indexed i/o EC access), and do an OLPC machine check in olpc_quirk. [dilinger@debian.org: don't return failure in olpc_quirks if !OLPC] [dilinger@debian.org: drop the Signed-off-by: Andres Salomon commit 57d4bf6d8e965404b82b105ae44ddf137bb7b8e6 Author: Jaya Kumar Date: Thu Nov 6 16:43:34 2008 -0500 ALSA: cs5535audio: OLPC analog input support This is a 2nd cut at adding support for OLPC analog input. Signed-off-by: Jaya Kumar Signed-off-by: Andres Salomon commit b6c52a2cdb58fca918eef9ada5ef3a6cd17a9240 Author: Andres Salomon Date: Wed Nov 5 17:30:30 2008 -0500 ALSA: cs5535audio: suspend/resume callbacks are only defined with CONFIG_PM snd_cs5535audio_suspend and snd_cs5535audio_resume are only defined when CONFIG_PM is set; make that clear in the header file. Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit b035ce0f26812292d067fbe2fc9e9d88d5dfcdb4 Author: Jaya Kumar Date: Wed Nov 5 17:30:08 2008 -0500 ALSA: cs5535audio: turn off PCM properly if closing the audio device As per , we need to properly turn off the PCM if we're closing the device in order to save power. This also causes the MIC led to turn off properly. Signed-off-by: Jaya Kumar Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit 0bed7b292d68f82316bfb8cd521e16c867689efe Author: Andres Salomon Date: Wed Nov 5 17:29:53 2008 -0500 ALSA: cs5535audio: stick AD1888 bitshift values into a header file We'd like to use the High Pass Filter and V_REFOUT bitshift values elsewhere, so stick them into a ac97_codec.h. Signed-off-by: Andres Salomon Signed-off-by: Takashi Iwai commit 0d0cf00a7fc63cee9a4c4a3b8612879b4f7f42ba Author: Mark Brown Date: Wed Dec 10 14:32:45 2008 +0000 ASoC: Add codec registration API Another part of the backporting of Liam's ASoC v2 work. Using this is more complicated than the other registration types since currently the codec is instantiated during the probe of the ASoC device so we can't currently readily wait for the codec to register. Signed-off-by: Mark Brown commit cdc693643271b2e6a693cf8f6afb258cce01f058 Author: Mark Brown Date: Wed Dec 10 13:55:49 2008 +0000 ALSA: Add support for mechanical jack insertion Some systems support both mechanical and electrical jack detection, allowing them to report that a jack is physically present but does not have any functioning connections. Add a new jack type for these, allowing user space to report faulty connections. Thanks to Guillem Jover for the suggestion. Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 1e5fa31f96d558e53fe80e943305104bf4339711 Author: Peter Ujfalusi Date: Wed Dec 10 12:51:48 2008 +0200 ASoC: TWL4030: Change the name for the DACs To avoid confusion the names for the DACs changed: DACL1 -> DAC Left1 ... Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit d4a73131a56e906b8f65e20934516adcad68b524 Author: Peter Ujfalusi Date: Wed Dec 10 12:51:47 2008 +0200 ASoC: TWL4030: Small cleanup The mux switch related texts fits to on line, no need to wrap them. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 6a1bee4a9cae13aa73abd8f724bada213a38eb63 Author: Peter Ujfalusi Date: Wed Dec 10 12:51:46 2008 +0200 ASoC: TWL4030: Add missing Carkit output SND_SOC_DAPM_OUTPUT definition for carkitL/R was missing. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 1e297a19252a6792c4479b300020f7f63eeb56ef Author: Mark Brown Date: Wed Dec 10 11:08:33 2008 +0000 ASoC: Work around warnings from some build environments BUG() should be marked as not returning but for at least some configurations (including some widely deployed compilers) that's either not happening or being forgotten by the compiler. Add some extra return statements to the affected paths. Signed-off-by: Mark Brown commit 11d518e07d700eeb5bcec36bfd5f501e405230dd Author: Takashi Iwai Date: Wed Dec 10 10:37:33 2008 +0100 ALSA: hda - Add quirk for HP6730B laptop Added model=laptop for HP 6730B laptop with AD1984A codec. Reference: Novell bnc#457909 https://bugzilla.novell.com/show_bug.cgi?id=457909 Signed-off-by: Takashi Iwai Cc: stable@kernel.org commit 6fabd715e6d8e1b37c0c66d9bfda2c19643e3f77 Author: Peter P Waskiewicz Jr Date: Wed Dec 10 01:13:08 2008 -0800 ixgbe: Implement PCIe AER support This patch implements the PCIe Advanced Error Reporting callbacks in ixgbe. The 82598 hardware supports AER, so we enable it. Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5e8427e5e25e3f844113cf67d07e7806bbe8c0e2 Author: Alexander Duyck Date: Wed Dec 10 01:09:53 2008 -0800 igb: Correctly determine pci-e function number in virtual environment When running in a virtual environment the ports of an 82575/6 can appear to be single function devices which is not correct. To resolve this we rely on the function number stored in the status register. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit b4557be23dc959f38eed21d359ec7164e42bcbd6 Author: Alexander Duyck Date: Wed Dec 10 01:08:59 2008 -0800 igb: update handling of RCTL for smaller buffer sizes As we begin to move into virtualization the use of a global value for buffer sizes becomes undesirable. This change makes it so only 256 and 512 byte buffers require use of the RCTL register. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d2afbe78a2922929ad44882d3583d938b9949a30 Author: Takashi Iwai Date: Wed Dec 10 09:28:15 2008 +0100 ALSA: hda - Update documentation Minor typo-fixes and improvements on HD-Audio.txt. Signed-off-by: Takashi Iwai commit 44411e07c2ce1a755a756e10b592cd3ba02f99b3 Author: Takashi Iwai Date: Wed Dec 10 08:27:19 2008 +0100 ALSA: ca0106 - Check return value of pci_enable_device() in resume The return value of pci_enable_device() must be checked even in resume callback: sound/pci/ca0106/ca0106_main.c:1779: warning: ignoring return value of ‘pci_enable_device’, declared with attribute warn_unused_result Signed-off-by: Takashi Iwai commit e97fd7c6d51d8bf32ce981b853d987cfc6bdfb7f Author: Holger Eitzenberger Date: Tue Dec 9 23:10:38 2008 -0800 bonding: turn all bond_parm_tbls const Turn all bond_parm_tbls const. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 325dcf7a907a43f8832b92ae1c672798b4e60ce2 Author: Holger Eitzenberger Date: Tue Dec 9 23:10:17 2008 -0800 bonding: make tbl argument to bond_parse_parm() const bond_parse_parm() parses a parameter table for a particular value and is therefore not modifying the table at all. Therefore make the 2nd argument const, thus allowing to make the tables const later. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit d78755237f0892c8d313a7f7b1774443a7308b11 Author: Holger Eitzenberger Date: Tue Dec 9 23:09:49 2008 -0800 bonding: remove duplicate declarations Remove some declarations from bonding.c as they are declared in bonding.h already. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 5a03cdb7f2d7ff88e50153d8c3b90a1d52dca435 Author: Holger Eitzenberger Date: Tue Dec 9 23:09:22 2008 -0800 bonding: use pr_debug instead of own macros Use pr_debug() instead of own macros. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit ef65583d01f4060c758dba72f08edc09d8faa719 Author: Holger Eitzenberger Date: Tue Dec 9 23:08:55 2008 -0800 bonding: fix compile error if debug enabled This is what I get if debug is enabled: drivers/net/bonding/bond_ipv6.c: In function 'bond_na_send': drivers/net/bonding/bond_ipv6.c:75: error: 'slave' undeclared (first use in this function) drivers/net/bonding/bond_ipv6.c:75: error: (Each undeclared identifier is reported only once drivers/net/bonding/bond_ipv6.c:75: error: for each function it appears in.) This patch fixes that. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 77afc92b7915b6bb21584474a429a04603ac8963 Author: Holger Eitzenberger Date: Tue Dec 9 23:08:09 2008 -0800 bonding: use table for mode names Use a small array in bond_mode_name() for the names, thus saving some space: before text data bss dec hex filename 57736 9372 344 67452 1077c drivers/net/bonding/bonding.ko after text data bss dec hex filename 57441 9372 344 67157 10655 drivers/net/bonding/bonding.ko Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit 58402054264fa33b405d1abcbcd8e528507aac1a Author: Holger Eitzenberger Date: Tue Dec 9 23:07:13 2008 -0800 bonding: add and use bond_is_lb() Introduce and use bond_is_lb(), it is usefull to shorten the repetitive check for either ALB or TLB mode. Signed-off-by: Holger Eitzenberger Signed-off-by: David S. Miller commit f73f2a6a23e34de9cca9672f727694e5af00e6c7 Author: Takashi Iwai Date: Wed Dec 10 07:59:33 2008 +0100 ALSA: ASoC - Fix symbol conflicts in omac-mcbsp.c Add snd_ prefix to avoid the conflict of symbols in omac-mcbsp.c: sound/soc/omap/omap-mcbsp.c:503: error: static declaration of 'omap_mcbsp_init' follows non-static declaration arch/arm/plat-omap/include/mach/mcbsp.h:373: error: previous declaration of 'omap_mcbsp_init' was here Signed-off-by: Takashi Iwai commit acc421656b97f09b55acb0938ad5378eefa5aacc Author: Roel Kluin Date: Tue Dec 9 23:26:05 2008 +0100 ALSA: sound: Make static Sparse asked whether these could be static. Signed-off-by: Roel Kluin Signed-off-by: Takashi Iwai commit c9b3a40ff2b3dea9914e36965a17c802650bb603 Author: Takashi Iwai Date: Wed Dec 10 07:47:22 2008 +0100 ALSA: ASoC - Fix wrong section types The module init entries should be __init instead of __devinit. Signed-off-by: Takashi Iwai commit 24e07db8cceb7dfe2d4005e4450a27f4bcda6499 Author: Takashi Iwai Date: Wed Dec 10 07:40:24 2008 +0100 ALSA: ASoC - Fix module init entry for twl4030.c Fixed the function name of module init entry for twl4030.c, which conflicted with the existing hardware init function: sound/soc/codecs/twl4030.c:1278: error: conflicting types for 'twl4030_init' sound/soc/codecs/twl4030.c:1187: error: previous definition of 'twl4030_init' was here Also fixed the section type of init function. Signed-off-by: Takashi Iwai commit 512bb43eb5422ee69a1be05ea0d89dc074fac9a2 Author: Jarek Poplawski Date: Tue Dec 9 22:35:02 2008 -0800 pkt_sched: sch_htb: Optimize WARN_ONs in htb_dequeue_tree() etc. We can skip WARN_ON() in htb_dequeue_tree() because there should be always a similar warning from htb_lookup_leaf() earlier. The first WARN_ON() in in htb_lookup_leaf() is changed to BUG_ON() because most likly this should end with oops anyway. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 1b5c0077e1615bb16e777a10ec1fc1195ba059ac Author: Jarek Poplawski Date: Tue Dec 9 22:34:40 2008 -0800 pkt_sched: sch_htb: Optimize htb_find_next_upper() htb_id_find_next_upper() is usually called to find a class with next id after some previously removed class, so let's move a check for equality to the end: it's the least likely here. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit dbb7a95d810ab76aac42e1a5cefdf069dcd014a1 Author: Chaithrika U S Date: Tue Dec 9 22:21:25 2008 -0800 phy: Add LSI ET1011C PHY driver Adds LSI ET1011C PHY driver. This driver is used by TI DM646x EVM. Signed-off-by: Chaithrika U S Signed-off-by: David S. Miller commit 471716f7ea646487b7b5c7b3efc68a023b05a933 Author: Mark Brown Date: Tue Dec 9 14:47:07 2008 +0000 ASoC: Fix typos in Atmel module registration I wish I had boards which work with unmodified kernels :/ Signed-off-by: Mark Brown commit f0752331b89ce79063f765545dd7dd5f49d9a713 Author: Mark Brown Date: Tue Dec 9 12:51:56 2008 +0000 ASoC: Convert WM8900 to allow registration by machine code This makes use of the support for delayed DAI registration to allow the WM8900 I2C device to be registered by general platform/architecture code rather than as part of the ASoC device probe. Signed-off-by: Mark Brown commit 6b05eda6383d89bffc21da654d148733e7839540 Author: Mark Brown Date: Mon Dec 8 19:26:48 2008 +0000 ASoC: Wait for non-AC97 codec DAIs before instantiating This will allow codec drivers to be refactored to allow them to be registered out of line with the ASoC device registration. Signed-off-by: Mark Brown commit 435c5e2588893e3f7aba0bd4de67991bf00b3c9d Author: Mark Brown Date: Thu Dec 4 15:32:53 2008 +0000 ASoC: Initial framework for dynamic card instantiation Use the lists of platforms, platform DAIs and cards to check to see that everything has registered. Since relationships are still specified by direct references to the structures in the drivers and the drivers all register everything at modprobe there should be no practical effect yet. Signed-off-by: Mark Brown commit 64089b84abfe2f26a864ebd968429302dcb071de Author: Mark Brown Date: Mon Dec 8 19:17:58 2008 +0000 ASoC: Register non-AC97 codec DAIs Currently this is done at module probe time since ASoC ties in codec device probe to the instantiation of the entire ASoC device. Subsequent patches will refactor the codec drivers to handle probing separately. Note that the core does not yet use this information. AC97 is special since the codec is controlled over the AC97 link but we want to give the machine driver a chance to set up the system before trying to instantiate since it may need to do configuration before the AC97 link will operate Signed-off-by: Mark Brown commit 958e792c7c8f06a9e666adb0ed94fff2cf90156f Author: Mark Brown Date: Wed Dec 3 19:58:17 2008 +0000 ASoC: Register platform drivers This is done at modprobe time, mirroring current behaviour, except for mpc5200_psc_i2s where we do registration at the same time as we register with soc-of-simple. Since the core currently ignores registration this has no practical impact. Signed-off-by: Mark Brown commit 12a48a8c0087ba39d926cf1d63938ccbdb9752c3 Author: Mark Brown Date: Wed Dec 3 19:40:30 2008 +0000 ASoC: Add platform registration API ASoC v2 allows platform drivers to instantiate independantly of the overall ASoC card. This API allows drivers to notify the core when they are registered. Signed-off-by: Mark Brown commit 3f4b783cfdebb559814690572041a17bc9744cf3 Author: Mark Brown Date: Wed Dec 3 19:26:35 2008 +0000 ASoC: Register platform DAIs Register all platform DAIs with the core. In line with current behaviour this is done at module probe time rather than when the devices are probed (since currently that only happens as the entire ASoC card is registered except for those drivers that currently implement some kind of hotplug). Since the core currently ignores DAI registration this has no practical effect. Signed-off-by: Mark Brown commit 9115171a6b79b6b4d5c6697f123556b6efc37f1f Author: Mark Brown Date: Sun Nov 30 23:31:24 2008 +0000 ASoC: Add DAI registration API Add API calls to register and unregister DAIs with the core. Currently these APIs are ineffective. Since multiple DAIs for a given device are a common case bulk variants are provided. Signed-off-by: Mark Brown commit c5af3a2e192d333997d1e191f3eba7fd2f869681 Author: Mark Brown Date: Fri Nov 28 13:29:45 2008 +0000 ASoC: Add card registration API ASoC v2 allows cards, codecs and platforms to instantiate separately, with the overall ASoC device only being instantiated once all the required components have registered. As part of backporting Liam's work introduce an initial version of the card registration functions. At present these do nothing active and are internal only, they will be exposed to machine drivers after further backporting. Adding this now allows the datastructures used for dynamic card instantiation to be built up gradually. Signed-off-by: Mark Brown commit ca4513fe06c483bf0111c990059d42f97288605d Author: Peter Ujfalusi Date: Tue Dec 9 12:35:52 2008 +0200 ASoC: TWL4030: Do not alter the Headset output volume on power-up/down There is a separate gain control for the Headset output already. Do not reset the gain to 0 dB at power up. In power-down, there is no need to set the Headset output gain to power-down mode, since if the CODECPDZ is in powered off this setting has no effect. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit df339804bbfc118eaca066b95488a2dbacc2e258 Author: Peter Ujfalusi Date: Tue Dec 9 12:35:51 2008 +0200 ASoC: TWL4030: DAPM mapping of the Handsfree outputs Adds DAPM muxing, routing for the Handsfree outputs. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 5152d8c28b95e421b91483ca0df76726e6e6c41e Author: Peter Ujfalusi Date: Tue Dec 9 12:35:50 2008 +0200 ASoC: TWL4030: DAPM mapping of the Carkit outputs Adds DAPM muxing, routing for the Carkit outputs. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit dfad21a26f5b3cc379fbec9c5d12b5106dd1f9c5 Author: Peter Ujfalusi Date: Tue Dec 9 12:35:49 2008 +0200 ASoC: TWL4030: DAPM mapping of the Headset outputs Adds DAPM muxing, routing for the Headset outputs. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 2a6f5c5892dcd17c81204fe5e26b92a37d2daafa Author: Peter Ujfalusi Date: Tue Dec 9 12:35:48 2008 +0200 ASoC: TWL4030: DAPM mapping of the PreDriv outputs Adds DAPM muxing, routing for the PreDrive outputs. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 5e98a46449cd028b9b97a8ef2c2448c8f473d6c5 Author: Peter Ujfalusi Date: Tue Dec 9 12:35:47 2008 +0200 ASoC: TWL4030: DAPM mapping of the Earpiece output Adds DAPM muxing, routing for the Earpiece output. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit e8ff9c417ad6e8f7ef253e36f9d6e22dc2aa2512 Author: Peter Ujfalusi Date: Tue Dec 9 12:35:46 2008 +0200 ASoC: TWL4030: Add DAPM event handler for output MUX selection DAPM event handler is set to filter out invalid MUX settings for certain outputs. Earpiece: - 0 = Off - 1 = DACL1 - 2 = DACL2 - 3 = *** Invalid *** - 4 = DACR1 PreDriveL/R: - 0 = Off/Off - 1 = DACL1/DACR1 - 2 = DACL2/DACR2 - 3 = *** Invalid/Invalid *** - 4 = DACR2/DACL2 Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 44c5587035fbbdd368a3d5d8d11997d43758078a Author: Peter Ujfalusi Date: Tue Dec 9 08:45:44 2008 +0200 ASoC: TWL4030: Add Analog PGA control switch to DAPM Add all four APGA switch to DAPM routing and widgets. Add user control for DA enable for all APGA as normal control. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 53b5047d994edfcafabc0e95bb681ae70d6e8604 Author: Peter Ujfalusi Date: Tue Dec 9 08:45:43 2008 +0200 ASoC: TWL4030: Correct DAPM_DAC with power control Add all four DACs to dapm_widgets with power switch. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 1e641743f055f075ed9a4edd75f1fb1e05669ddc Author: Al Viro Date: Tue Dec 9 09:23:33 2008 +0000 Audit: Log TIOCSTI AUDIT_TTY records currently log all data read by processes marked for TTY input auditing, even if the data was "pushed back" using the TIOCSTI ioctl, not typed by the user. This patch records all TIOCSTI calls to disambiguate the input. It generates one audit message per character pushed back; considering TIOCSTI is used very rarely, this simple solution is probably good enough. (The only program I could find that uses TIOCSTI is mailx/nail in "header editing" mode, e.g. using the ~h escape. mailx is used very rarely, and the escapes are used even rarer.) Signed-Off-By: Miloslav Trmac Signed-off-by: Al Viro Signed-off-by: James Morris commit e19caae7177fcc732ae1b47135e39f577352adb2 Author: David S. Miller Date: Tue Dec 9 01:04:27 2008 -0800 bluetooth: Fix unused var warning properly in rfcomm_sock_ioctl(). As Stephen Rothwell points out, we don't want 'sock' here but rather we really do want 'sk'. This local var is protected by all sorts of bluetooth debugging kconfig vars, but BT_DBG() is just a straight pr_debug() call which is unconditional. pr_debug() evaluates it's args only if either DEBUG or CONFIG_DYNAMIC_PRINTK_DEBUG is defined. Solving this inside of the BT_DBG() macro is non-trivial since it's varargs. And these ifdefs are ugly. So, just mark this 'sk' thing __maybe_unused and kill the ifdefs. Signed-off-by: David S. Miller commit bcb09dc276e706ed6f22813ba774797125f3da0a Author: Brice Goglin Date: Tue Dec 9 00:14:27 2008 -0800 myri10ge: check fragmentation in LRO get_frag_header() Add a fragmentation check to myri10ge's LRO get_frag_header() callback. Signed-off-by: Brice Goglin Signed-off-by: Andrew Gallatin Signed-off-by: David S. Miller commit 6cf1a0f856bcb5423bfb4121b2dfeaa3ba7b1ff2 Author: David S. Miller Date: Tue Dec 9 00:01:53 2008 -0800 bluetooth: Fix rfcomm_sock_ioctl() build failure with debugging enabled. It's 'sock' not 'sk'. Signed-off-by: David S. Miller commit e42130039c85826567d4e4864f2c7492578576cb Author: Alexey Dobriyan Date: Mon Dec 8 23:50:18 2008 -0800 hydra: fix compilation drivers/net/hydra.c:163: error: 'hydra_netdev_ops' undeclared (first use in this function) Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 30bc4481de890e97dc001ee123761d89638cbc50 Author: Takashi Iwai Date: Tue Dec 9 08:23:45 2008 +0100 ALSA: Updates about bug-reporting in ALSA-Configuration.txt Updated the information about bug-reporting for HD-audio. Mentioned alsa-info.sh and kernel bugzilla. Removed ALSA BTS address not to flood the unhandled reports any more. Signed-off-by: Takashi Iwai commit 94d6a5f7341ebaff53d4e41cc81fab37f0d9fbed Author: Serge E. Hallyn Date: Mon Dec 8 15:52:21 2008 -0600 user namespaces: document CFS behavior Documented the currently bogus state of support for CFS user groups with user namespaces. In particular, all users in a user namespace should be children of the user which created the user namespace. This is yet to be implemented. Signed-off-by: Serge E. Hallyn Acked-by: Dhaval Giani Signed-off-by: Serge E. Hallyn Signed-off-by: James Morris commit e726f5f91effd8944c76475a2688093a03ba0d10 Author: Ingo Molnar Date: Mon Dec 8 16:55:53 2008 +0100 tracing/function-graph-tracer: fix 'flags' variable mismatch this warning: kernel/trace/trace.c: In function ‘trace_vprintk’: kernel/trace/trace.c:3626: warning: ‘flags’ may be used uninitialized in this function shows some confusion about irq_flags / flags use here. We already have irq_flags so remove the extra flags variable. Signed-off-by: Ingo Molnar commit efbe027e95dc13ac343b6130948418d7ead7ddf1 Author: Vaidyanathan Srinivasan Date: Mon Dec 8 20:52:49 2008 +0530 sched: idle_balance() does not call load_balance_newidle() Impact: fix SD_BALANCE_NEWIDLEand broaden its use load_balance_newidle() does not get called if SD_BALANCE_NEWIDLE is set at higher level domain (3-CPU) and not in low level domain (2-MC). pulled_task is initialised to -1 and checked for non-zero which is always true if the lowest level sched_domain does not have SD_BALANCE_NEWIDLE flag set. Signed-off-by: Vaidyanathan Srinivasan Signed-off-by: Ingo Molnar commit 4217458dafaa57d8e26a46f5d05ab8c53cf64191 Author: Hiroshi Shimamoto Date: Fri Dec 5 17:17:09 2008 -0800 x86: signal: change type of paramter for sys_rt_sigreturn() Impact: cleanup on 32-bit Peter pointed this parameter can be changed. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 380c4b1411ccd6885f92b2c8ceb08433a720f44e Author: Frederic Weisbecker Date: Sat Dec 6 03:43:41 2008 +0100 tracing/function-graph-tracer: append the tracing_graph_flag Impact: Provide a way to pause the function graph tracer As suggested by Steven Rostedt, the previous patch that prevented from spinlock function tracing shouldn't use the raw_spinlock to fix it. It's much better to follow lockdep with normal spinlock, so this patch adds a new flag for each task to make the function graph tracer able to be paused. We also can send an ftrace_printk whithout worrying of the irrelevant traced spinlock during insertion. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 8e1b82e0866befaa0b2920be296c6e4c3fc7f422 Author: Frederic Weisbecker Date: Sat Dec 6 03:41:33 2008 +0100 tracing/function-graph-tracer: turn tracing_selftest_running into an int Impact: cleanup Apply some suggestions of Steven Rostedt: _turn tracing_selftest_running into a simple int (no need of an atomic_t) _set it __read_mostly _fix a comment style Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 8b96f0119818964e4944fd1c423bf6770027d3ac Author: Frederic Weisbecker Date: Sat Dec 6 03:40:00 2008 +0100 tracing/function-graph-tracer: introduce __notrace_funcgraph to filter special functions Impact: trace more functions When the function graph tracer is configured, three more files are not traced to prevent only four functions to be traced. And this impacts the normal function tracer too. arch/x86/kernel/process_64/32.c: I had crashes when I let this file traced. After some debugging, I saw that the "current" task point was changed inside__swtich_to(), ie: "write_pda(pcurrent, next_p);" inside process_64.c Since the tracer store the original return address of the function inside current, we had crashes. Only __switch_to() has to be excluded from tracing. kernel/module.c and kernel/extable.c: Because of a function used internally by the function graph tracer: __kernel_text_address() To let the other functions inside these files to be traced, this patch introduces the __notrace_funcgraph function prefix which is __notrace if function graph tracer is configured and nothing if not. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 69b88afa8d114a43a3c0431722b79e31d9920692 Author: Yinghai Lu Date: Fri Dec 5 22:45:50 2008 -0800 x86: clean up get_smp_config() Impact: cleanup reorder exit path in __get_smp_config(). also move two print outs to acpi_process_madt Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar commit aa9c9b8c584a42a094202b7e0f63497e888f86a7 Merge: 87f7606... 218d11a... Author: Ingo Molnar Date: Mon Dec 8 15:07:49 2008 +0100 Merge branch 'linus' into x86/quirks commit 361b73d5c34f59c3fd107bb9dbe7a1fbff2c2517 Author: Lai Jiangshan Date: Mon Dec 8 10:58:08 2008 +0800 ring_buffer: fix comments Impact: comments cleanup fix incorrect comments for enum ring_buffer_type Signed-off-by: Lai Jiangshan Signed-off-by: Ingo Molnar commit 5436499e6098759c2340f8b906ea52f993dc4efb Author: Ken Chen Date: Sun Dec 7 18:47:37 2008 -0800 sched: fix sd_parent_degenerate on non-numa smp machine Impact: optimize the sched domains tree some more The addition of SD_SERIALIZE flag added to SD_NODE_INIT prevented top level dummy numa sched_domain to be properly degenerated on non-numa smp machine. The reason is that in sd_parent_degenerate(), it found that the child and parent does not have comon sched_domain flags due to SD_SERIALIZE. However, for non-numa smp box, the top level is a dummy with a single sched_group. Filter out SD_SERIALIZE if it is on non-numa machine to properly degenerate top level node sched_domain. this will cut back some of the sd domain walk in the load balancer code. Signed-off-by: Ken Chen Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 4d117c5c6b00254e51c61ff5b506ccaba21a5a03 Merge: 6c415b9... 4371453... Author: Ingo Molnar Date: Mon Dec 8 13:52:00 2008 +0100 Merge branch 'sched/urgent' into sched/core commit 3e1e9002aa8b32bd4c95ac6c8fad376b7a8127fb Author: Rafael J. Wysocki Date: Mon Dec 8 00:50:22 2008 +0100 x86: change static allocation of trampoline area Impact: fix trampoline sizing bug, save space While debugging a suspend-to-RAM related issue it occured to me that if the trampoline code had grown past 4 KB, we would have been allocating too little memory for it, since the 4 KB size of the trampoline is hardcoded into arch/x86/kernel/e820.c . Change that by making the kernel compute the trampoline size and allocate as much memory as necessary. Signed-off-by: Rafael J. Wysocki Signed-off-by: Ingo Molnar commit decbec3838d10ecd7aabdb4c0e05aac0e5f5dc0c Author: Frederic Weisbecker Date: Mon Dec 8 01:56:06 2008 +0100 tracing/function-graph-tracer: implement a print_headers function Impact: provide trace headers to explain a bit the output This patch implements the print_headers callback for the function graph tracer. These headers are output according to the current trace options. Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 5e03c54eeb016cf1b066e9e48d30116814ca2459 Author: Takashi Iwai Date: Mon Dec 8 12:40:56 2008 +0100 ALSA: hrtimer - Use hard-irq callback Use the hard-irq mode for the callback (for possible removal of soft-irq mode in future). Signed-off-by: Takashi Iwai commit 647808a6b932d85c3e85df6dcf0e34c1e53cc953 Author: Takashi Iwai Date: Mon Dec 8 12:16:58 2008 +0100 ALSA: timer - Add comments and use ns_to_ktime() Add the license and misc comments at the beginning of the code. Also, use ns_to_ktime() for simplification. Signed-off-by: Takashi Iwai commit 6fdd34d43bff8be9bb925b49d87a0ee144d2ab07 Author: Gerrit Renker Date: Mon Dec 8 01:19:06 2008 -0800 dccp ccid-2: Phase out the use of boolean Ack Vector sysctl This removes the use of the sysctl and the minisock variable for the Send Ack Vector feature, as it now is handled fully dynamically via feature negotiation (i.e. when CCID-2 is enabled, Ack Vectors are automatically enabled as per RFC 4341, 4.). Using a sysctl in parallel to this implementation would open the door to crashes, since much of the code relies on tests of the boolean minisock / sysctl variable. Thus, this patch replaces all tests of type if (dccp_msk(sk)->dccpms_send_ack_vector) /* ... */ with if (dp->dccps_hc_rx_ackvec != NULL) /* ... */ The dccps_hc_rx_ackvec is allocated by the dccp_hdlr_ackvec() when feature negotiation concluded that Ack Vectors are to be used on the half-connection. Otherwise, it is NULL (due to dccp_init_sock/dccp_create_openreq_child), so that the test is a valid one. The activation handler for Ack Vectors is called as soon as the feature negotiation has concluded at the * server when the Ack marking the transition RESPOND => OPEN arrives; * client after it has sent its ACK, marking the transition REQUEST => PARTOPEN. Adding the sequence number of the Response packet to the Ack Vector has been removed, since (a) connection establishment implies that the Response has been received; (b) the CCIDs only look at packets received in the (PART)OPEN state, i.e. this entry will always be ignored; (c) it can not be used for anything useful - to detect loss for instance, only packets received after the loss can serve as pseudo-dupacks. There was a FIXME to change the error code when dccp_ackvec_add() fails. I removed this after finding out that: * the check whether ackno < ISN is already made earlier, * this Response is likely the 1st packet with an Ackno that the client gets, * so when dccp_ackvec_add() fails, the reason is likely not a packet error. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 4098dce5be537a157eed4a326efd464109825b8b Author: Gerrit Renker Date: Mon Dec 8 01:18:37 2008 -0800 dccp: Remove manual influence on NDP Count feature Updating the NDP count feature is handled automatically now: * for CCID-2 it is disabled, since the code does not use NDP counts; * for CCID-3 it is enabled, as NDP counts are used to determine loss lengths. Allowing the user to change NDP values leads to unpredictable and failing behaviour, since it is then possible to disable NDP counts even when they are needed (e.g. in CCID-3). This means that only those user settings are sensible that agree with the values for Send NDP Count implied by the choice of CCID. But those settings are already activated by the feature negotiation (CCID dependency tracking), hence this form of support is redundant. At startup the initialisation of the NDP count feature uses the default value of 0, which is done implicitly by the zeroing-out of the socket when it is allocated. If the choice of CCID or feature negotiation enables NDP count, this will then be updated via the NDP activation handler. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 0049bab5e765aa74cf767a834fa336e19453fc5e Author: Gerrit Renker Date: Mon Dec 8 01:18:05 2008 -0800 dccp: Remove obsolete parts of the old CCID interface The TX/RX CCIDs of the minisock are now redundant: similar to the Ack Vector case, their value equals initially that of the sysctl, but at the end of feature negotiation may be something different. The old interface removed by this patch thus has been replaced by the newer interface to dynamically query the currently loaded CCIDs. Also removed are the constructors for the TX CCID and the RX CCID, since the switch "rx <-> non-rx" is done by the handler in minisocks.c (and the handler is the only place in the code where CCIDs are loaded). Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 63b8e2861f31868dce9c92fd7444f212a5a8a775 Author: Gerrit Renker Date: Mon Dec 8 01:17:32 2008 -0800 dccp: Clean up old feature-negotiation infrastructure The code removed by this patch is no longer referenced or used, the added lines update documentation and copyrights. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 991d927c8652b2ab51bd8eef2b773bb2c77d457b Author: Gerrit Renker Date: Mon Dec 8 01:16:27 2008 -0800 dccp: Integration of dynamic feature activation - part 3 (client side) This integrates feature-activation in the client: 1. When dccp_parse_options() fails, the reset code is already set; request_sent\ _state_process() currently overrides this with `Packet Error', which is not intended - changed to use the reset code supplied by dccp_parse_options(). 2. When feature negotiation fails, the socket should be marked as not usable, so that the application is notified that an error occurred. This is achieved by a new label 'unable_to_proceed': generating an error code of `Aborted', setting the socket state to CLOSED, returning with ECOMM in sk_err. 3. Avoids parsing the Ack twice in Respond state by not doing option processing again in dccp_rcv_respond_partopen_state_process (as option processing has already been done on the request_sock in dccp_check_req). Since this addresses congestion-control initialisation, a corresponding FIXME has been removed. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 192b27ff35bad4cf76cc4239419e9f805935e4f8 Author: Gerrit Renker Date: Mon Dec 8 01:15:55 2008 -0800 dccp: Integration of dynamic feature activation - part 2 (server side) This patch integrates the activation of features at the end of negotiation into the server-side code. Note regarding the removal of 'const': -------------------------------------- The 'const' attribute has been removed from 'dreq' since dccp_activate_values() needs to operate on dreq's feature list. Part of the activation is to remove those options from the list that have already been confirmed, hence it is not purely read-only. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 6eb55d172b5f6de65afdae6285f8d732e4785bf7 Author: Gerrit Renker Date: Mon Dec 8 01:15:26 2008 -0800 dccp: Integration of dynamic feature activation - part 1 (socket setup) This first patch out of three replaces the hardcoded default settings with initialisation code for the dynamic feature negotiation. The patch also ensures that the client feature-negotiation queue is flushed only when entering the OPEN state. Since confirmed Change options are removed as soon as they are confirmed (in the DCCP-Response), this ensures that Confirm options are retransmitted. Note on retransmitting Confirm options: --------------------------------------- Implementation experience showed that it is necessary to retransmit Confirm options. Thanks to Leandro Melo de Sales who reported a bug in an earlier revision of the patch set, resulting from not retransmitting these options. As long as the client is in PARTOPEN, it needs to retransmit the Confirm options for the Change options received on the DCCP-Response from the server. Otherwise, if the packet containing the Confirm options gets dropped in the network, the connection aborts due to undefined feature negotiation state. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit b74ca3a896b9ab5f952bc440154758e708c48884 Author: Wang Chen Date: Mon Dec 8 01:14:16 2008 -0800 netdevice: Kill netdev->priv This is the last shoot of this series. After I removing all directly reference of netdev->priv, I am killing "priv" of "struct net_device" and fixing relative comments/docs. Anyone will not be allowed to reference netdev->priv directly. If you want to reference the memory of private data, use netdev_priv() instead. If the private data is not allocted when alloc_netdev(), use netdev->ml_priv to point that memory after you creating that private data. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 5a001a070e032bea1be563b13ebf9819cd5e54d4 Author: Wang Chen Date: Mon Dec 8 01:13:25 2008 -0800 staging-winbond: Kill directly reference of netdev->priv This driver is not yet finished. At this time, we don't know how netdev be created and how private data be allocated. So, simply use netdev_priv() now and leave some temp comment. Compile test only. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 7657d90497f98426af17f0ac633a9b335bb7a8fb Author: Serge E. Hallyn Date: Wed Dec 3 13:17:33 2008 -0600 user namespaces: require cap_set{ug}id for CLONE_NEWUSER While ideally CLONE_NEWUSER will eventually require no privilege, the required permission checks are currently not there. As a result, CLONE_NEWUSER has the same effect as a setuid(0)+setgroups(1,"0"). While we already require CAP_SYS_ADMIN, requiring CAP_SETUID and CAP_SETGID seems appropriate. Signed-off-by: Serge E. Hallyn Acked-by: "Eric W. Biederman" Signed-off-by: James Morris commit c37bbb0fdcc01610fd55604eb6927210a1d20044 Author: Serge E. Hallyn Date: Wed Dec 3 13:17:06 2008 -0600 user namespaces: let user_ns be cloned with fairsched (These two patches are in the next-unacked branch of git://git.kernel.org/pub/scm/linux/kernel/git/sergeh/userns-2.6. If they get some ACKs, then I hope to feed this into security-next. After these two, I think we're ready to tackle userns+capabilities) Fairsched creates a per-uid directory under /sys/kernel/uids/. So when you clone(CLONE_NEWUSER), it tries to create /sys/kernel/uids/0, which already exists, and you get back -ENOMEM. This was supposed to be fixed by sysfs tagging, but that was postponed (ok, rejected until sysfs locking is fixed). So, just as with network namespaces, we just don't create those directories for user namespaces other than the init. Signed-off-by: Serge E. Hallyn Signed-off-by: James Morris commit 32e176c14d7a425b681ef003c9061001ddb7fc7b Author: Rafael J. Wysocki Date: Sat Dec 6 15:09:08 2008 +0100 Sound: hda - Restore PCI configuration space with interrupts off Move the restoration of the standard PCI configuration registers in the snd_hda_intel driver to a ->resume_early() callback executed with interrupts disabled, since doing that with interrupts enabled may lead to problems in some cases. This patch addresses the regression from 2.6.26 tracked as http://bugzilla.kernel.org/show_bug.cgi?id=12121 . Signed-off-by: Rafael J. Wysocki Signed-off-by: Takashi Iwai commit 4bcd42679643dd3dfd6aaad9fcbcc74ac5c7e2e9 Author: Wang Chen Date: Sat Dec 6 23:59:10 2008 -0800 staging-slicoss: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Acked-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit 979123d5343b4fdcd4c682745b8a0be9b8fac248 Author: Wang Chen Date: Sat Dec 6 23:58:37 2008 -0800 staging-p80211: Kill directly reference of netdev->priv In this driver, netdev's private data is wlandevice_t. And the wlandev(type of wlandevice_t) is exist before netdev be allocated. So use netdev->ml_priv to point to the private data. I am not sure whether I should consider the kernel version older than 2.3.38. Because in those kernels, netdevice_t is "structure dev" instead of "structure net_device" and of course "dev->ml_priv" will cause compile error. But before my patch, in function wlan_setup(), there is a ether_setup(net_device) which already broke kernels which older than 2.3.38. Signed-off-by: Wang Chen Acked-by: Greg Kroah-Hartman Signed-off-by: David S. Miller commit ad660e2f97e7dc9d0f5627456b37e64bde714a5e Author: Wang Chen Date: Sat Dec 6 23:57:49 2008 -0800 s390_net: Kill directly reference of netdev->priv The private data comes from ccwgroup_device. So just don't allocate private data memory when do alloc_netdev() and use netdev->ml_priv to reference private data. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 26aca5ec9e587562ac0f8c5b67d02567d7bf2ffe Author: Nick Andrew Date: Sat Dec 6 23:57:14 2008 -0800 net: Fix incorrect use of loose in spider_net.c Fix incorrect use of loose in spider_net.c It should be 'lose', not 'loose'. Signed-off-by: Nick Andrew Signed-off-by: David S. Miller commit 6c5cc8e0516005cb9a8f940276fac7614f7acf5c Author: Nick Andrew Date: Sat Dec 6 23:55:32 2008 -0800 wireless: Fix incorrect use of loose in wext.c Fix incorrect use of loose in wext.c It should be 'lose', not 'loose'. Signed-off-by: Nick Andrew Signed-off-by: David S. Miller commit a2acde07711f7d8b19928245c555bce60f91482a Author: Ilpo Järvinen Date: Fri Dec 5 22:49:37 2008 -0800 tcp: fix tso_should_defer in 64bit Since jiffies is unsigned long, the types get expanded into that and after long enough time the difference will therefore always be > 1 (and that probably happens near boot as well as iirc the first jiffies wrap is scheduler close after boot to find out problems related to that early). This was originally noted by Bill Fink in Dec'07 but nobody never ended fixing it. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit d5dd9175bc12015ea4d2c1a9b6b15dfa645a3db9 Author: Ilpo Järvinen Date: Fri Dec 5 22:48:55 2008 -0800 tcp: use tcp_write_xmit also in tcp_push_one tcp_minshall_update is not significant difference since it only checks for not full-sized skb which is BUG'ed on the push_one path anyway. tcp_snd_test is tcp_nagle_test+tcp_cwnd_test+tcp_snd_wnd_test, just the order changed slightly. net/ipv4/tcp_output.c: tcp_snd_test | -89 tcp_mss_split_point | -91 tcp_may_send_now | +53 tcp_cwnd_validate | -98 tso_fragment | -239 __tcp_push_pending_frames | -1340 tcp_push_one | -146 7 functions changed, 53 bytes added, 2003 bytes removed, diff: -1950 net/ipv4/tcp_output.c: tcp_write_xmit | +1772 1 function changed, 1772 bytes added, diff: +1772 tcp_output.o.new: 8 functions changed, 1825 bytes added, 2003 bytes removed, diff: -178 Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 730c30ec646bd252a9448a66ecd51d794853513f Merge: 726e07a... 0a0755c... Author: David S. Miller Date: Fri Dec 5 22:54:40 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/iwlwifi/iwl-core.c drivers/net/wireless/iwlwifi/iwl-sta.c commit 726e07a8a38168266ac95d87736f9501a2d9e7b2 Author: Ilpo Järvinen Date: Fri Dec 5 22:43:56 2008 -0800 tcp: move some parts from tcp_write_xmit Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 41834b7332a1ad3f7b6e8bbd83e6ce63586f0b07 Author: Ilpo Järvinen Date: Fri Dec 5 22:43:26 2008 -0800 tcp: share code through function, not through copy-paste. :-) Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit ee6aac59505bcae5de1422c76956de62ac22170d Author: Ilpo Järvinen Date: Fri Dec 5 22:43:08 2008 -0800 tcp: drop tcp_bound_rto, merge content of it tcp_set_rto Both are called by the same sites. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 50133161a83c9e5974d430cabd77d6430ca7d579 Author: Ilpo Järvinen Date: Fri Dec 5 22:42:41 2008 -0800 tcp: no need to pass prev skb around, reduces arg pressure Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit a1197f5a6faa23e5d0c1f8ed97b011deb2a75457 Author: Ilpo Järvinen Date: Fri Dec 5 22:42:22 2008 -0800 tcp: introduce struct tcp_sacktag_state to reduce arg pressure There are just too many args to some sacktag functions. This idea was first proposed by David S. Miller around a year ago, and the current situation is much worse that what it was back then. tcp_sacktag_one can be made a bit simpler by returning the new sacked (it can be achieved with a single variable though the previous code "caching" sacked into a local variable and therefore it is not exactly equal but the results will be the same). codiff on x86_64 tcp_sacktag_one | -15 tcp_shifted_skb | -50 tcp_match_skb_to_sack | -1 tcp_sacktag_walk | -64 tcp_sacktag_write_queue | -59 tcp_urg | +1 tcp_event_data_recv | -1 7 functions changed, 1 bytes added, 190 bytes removed, diff: -189 Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 775ffabf77a648d78fe1d20cb3a620e771abb921 Author: Ilpo Järvinen Date: Fri Dec 5 22:41:26 2008 -0800 tcp: make mtu probe failure to not break gso'ed skbs unnecessarily I noticed that since skb->len has nothing to do with actual segment length with gso, we need to figure it out separately, reuse a function from the recent shifting stuff (generalize it). Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 9969ca5f205988fb96461075cb4914c55cf166b5 Author: Ilpo Järvinen Date: Fri Dec 5 22:41:06 2008 -0800 tcp: Fix thinko making the not-shiftable to cover S|R as well S|R won't result in S if just SACK is received. DSACK is another story (but it is covered correctly already). Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit f0bc52f38b09308fca85f3aa9300a341364fe9c6 Author: Ilpo Järvinen Date: Fri Dec 5 22:40:47 2008 -0800 tcp: force mss equality with the next skb too. Also make if-goto forest nicer looking. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 61c1d052a3c7d5acba3bd535aaffa5bb5d085181 Author: Ilpo Järvinen Date: Fri Dec 5 22:39:49 2008 -0800 dccp: use roundup instead of opencoding Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit d2b88814c6a63e4018cd299826907a12068ffdb7 Author: Alan Cox Date: Fri Dec 5 22:32:22 2008 -0800 tty: driverdata and discdata are void * Remove all the extra casting while we are cleaning up Signed-off-by: Alan Cox Signed-off-by: David S. Miller commit 8a1ec21e6c856b996cffcd4b33f037f6748a3ab4 Author: Alan Cox Date: Fri Dec 5 22:31:52 2008 -0800 tty: Flags should be accessed via the foo_bit interfaces We have various drivers that poke around directly and we need to clean this up before it causes problems. Signed-off-by: Alan Cox Signed-off-by: David S. Miller commit 098401a600b6344771900fe164c5eafb668ce99c Merge: cb7b48f... c112d0c... Author: David S. Miller Date: Fri Dec 5 22:23:34 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit cb7b48f671f9c7582993a6c0ff6e989078048561 Author: Alexander Duyck Date: Fri Dec 5 15:08:03 2008 -0800 igb/e1000e: Naming interrupt vectors Change interrupt vector naming to match recent changes from Robert Olsson. Signed-off-by: Alexander Duyck Acked-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 1c721940ddd6496508f1f2fde5167b1c898b419b Author: Stefan Roscher Date: Fri Dec 5 11:25:38 2008 -0800 IB/ehca: Replace modulus operations in flush error completion path With the latest flush error completion patch we introduced modulus operation to calculate the next index within a qmap. Based on comments from other mailing lists we decided to optimize this operation by using an addition and an if-statement instead of modulus, even though this is on the error path. Signed-off-by: Stefan Roscher Signed-off-by: Roland Dreier commit 3d0890985ac4dff781b7feba19fedda547314749 Author: Dave Olson Date: Fri Dec 5 11:14:38 2008 -0800 IB/ipath: Add locking for interrupt use of ipath_pd contexts vs free Fixes timing race resulting in panic. Not a performance sensitive path. Signed-off-by: Dave Olson Signed-off-by: Roland Dreier commit 1bf7724e093cf3071d943d53bfa4de8b8e50426b Author: Dave Olson Date: Fri Dec 5 11:13:19 2008 -0800 IB/ipath: Fix spi_pioindex value ipath_piobufbase was a single value offset, but is multiple values on newer chips, so use only the 32 bits for the 2K buffers (4K buffers are currently used only by the driver). Signed-off-by: Dave Olson Signed-off-by: Roland Dreier commit 6114d4cd313acbb6e9935c2bee77e368d10c4f04 Author: Dave Olson Date: Fri Dec 5 11:13:19 2008 -0800 IB/ipath: Only do 1X workaround on rev1 chips Signed-off-by: Dave Olson Signed-off-by: Roland Dreier commit 60e845035a066e81af1a29047530088d59150d8b Author: Dave Olson Date: Fri Dec 5 11:13:19 2008 -0800 IB/ipath: Don't count IB symbol and link errors unless link is UP Implement the ignoring of ibsymbol errors and linkrecover errors while the link is at less than INIT (long needed), to get accurate counts. Particularly an issue when doing non-IBTA DDR negotiation with chips from vendors that do not support IBTA mode negotiation. If the driver is unloaded, and there is a delta, the adjusted counters are written back to the chip, so they stay adjusted across driver reload. Signed-off-by: Dave Olson Signed-off-by: Roland Dreier commit 890fccb2427d53b48ab9d009fd87d55bcb173f62 Author: Ralph Campbell Date: Fri Dec 5 11:13:18 2008 -0800 IB/ipath: Check return value of dma_map_single() This fixes an obvious oversight where the return value is not checked for error. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit fab01fc56063dafcc083f481ac0f9e6b5a576dd6 Author: Ralph Campbell Date: Fri Dec 5 11:13:18 2008 -0800 IB/ipath: Fix PSN of send WQEs after an RDMA read resend The PSN of the first packet after an RDMA read is based on the size of the RDMA read request. This is calculated correctly for the WQE sent after the first request message but not on subsequent requests if the RDMA read is resent. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 6098d107499e1335f899bfcb558253fb7ee4f73f Author: Chien Tung Date: Fri Nov 21 20:51:01 2008 -0600 RDMA/nes: Cleanup warnings Wrap NES_DEBUG and assert macros with do while (0) to avoid ambiguous else. No one is using sk_buff * returned from form_cm_frame(), so drop the return. drop_packet() should not be incrementing reset counter on receiving a FIN. Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 1ee86555b2ad4d16a3c18253b7e4d70d34eb94f3 Author: Chien Tung Date: Fri Nov 21 20:51:04 2008 -0600 RDMA/nes: Add loopback check to make_cm_node() Check for loopback connection in make_cm_node(). Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit f3181a10e13ac55e18958d7c48cba6f925c71483 Author: Faisal Latif Date: Fri Nov 21 20:50:55 2008 -0600 RDMA/nes: Check cqp_avail_reqs is empty after locking the list Between the first empty list check and locking the list, the list can change. Check it again after it is locked to make sure the list is still not empty. Signed-off-by: Faisal Latif Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit abb77256761bc3ee7a21cc28f6f12a938964e83f Author: Faisal Latif Date: Fri Nov 21 20:50:52 2008 -0600 RDMA/nes: Fix TCP compliance test failures ANVL testing showed we are not handling all cm_node states during connection establishment. Add missing state handlers and fix sequence number send reset in handle_tcp_options(). Signed-off-by: Faisal Latif Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 4a14f6a79f5110c6033f0c61d77d07c449c2d083 Author: Faisal Latif Date: Fri Nov 21 20:50:49 2008 -0600 RDMA/nes: Forward packets for a new connection with stale APBVT entry Under heavy traffic, there is a small windows when an APBVT entry is not yet removed and a new connection is established. Packets for the new connection are dropped until APBVT entry is removed. This patch will forward the packets instead of dropping them. Signed-off-by: Faisal Latif Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 183ecfa3091cd4cdda329a7fe89d9544088f517d Author: Faisal Latif Date: Fri Nov 21 20:50:46 2008 -0600 RDMA/nes: Avoid race between MPA request and reset event to rdma_cm In passive open, after indicating MPA request to rdma_cm, an incoming RST would fire a reset event to rdma_cm causing it to crash, since the current state is not connected. The solution is to wait for nes_accept() or nes_reject() before firing the reset event. If nes_accept() or nes_reject() is already done, then the reset event will be fired when RST is processed. Signed-off-by: Faisal Latif Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 879e5bd5a1a0a317fb67fa4dc550db092a7bdcb0 Author: Faisal Latif Date: Fri Nov 21 20:50:41 2008 -0600 RDMA/nes: Lock down connected_nodes list while processing it While processing connected_nodes list, we would release the lock when we need to send reset to remote partner. That created a window where the list can be modified. Change this into a two step process: place nodes that need processing on a local list then process the local list. Signed-off-by: Faisal Latif Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit c5d321e5c924384cf5b35f6288d69e9237490565 Author: Faisal Latif Date: Fri Nov 21 20:50:38 2008 -0600 RDMA/nes: Cleanup cqp_request list usage Use nes_free_cqp_request() instead of open coding. Change some continue to break in nes_cm_timer_tick, because send_entry used to be a list processed in a loop (so continue went to the next item). Now it is a single item, so using break is correct. Signed-off-by: Faisal Latif Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit abf681ce5b6f83f0b8883e0f2c12d197a38543dd Author: Robert P. J. Day Date: Mon Feb 18 14:34:46 2008 -0500 kbuild: remove TAR_IGNORE Given that there is no usage of a TAR_IGNORE variable remove it Signed-off-by: Robert P. J. Day Signed-off-by: Sam Ravnborg commit 28a1d869560a49d960ba2a3b450ec965712e5560 Author: Daniel Mack Date: Fri Dec 5 17:31:00 2008 +0100 ASoC: tlv320aic3x: control additions and cleanups - split "Line Playback Switch" into "LineL Playback Switch" and "LineR Playback Switch" - split "Line PGA Bypass Playback Volume" into "LineL Left PGA Bypass Playback Volume" and "LineR Right PGA Bypass Playback Volume" - split "Line Line2 Bypass Playback Volume" into "LineL Line2 Bypass Playback Volume" and "LineR Line2 Bypass Playback Volume" - Added "HP Right PGA Bypass Playback Volume" Signed-off-by: Daniel Mack Signed-off-by: Mark Brown commit 68fb740774a429ecbccd4d8b3287cf4883ad3ec2 Author: Grazvydas Ignotas Date: Thu Dec 4 22:39:54 2008 +0200 ASoC: Add support for OMAP3 Pandora This patch adds basic support for OMAP3 Pandora. Signed-off-by: Grazvydas Ignotas Signed-off-by: Mark Brown commit c112d0c5b89037dd618083b5fdf4bb36b0c51d77 Author: Luis R. Rodriguez Date: Wed Dec 3 03:35:30 2008 -0800 ath9k: Use GFP_ATOMIC when allocating TX private area Using GFP_KERNEL was wrong and produces a 'scheduling while atomic' bug as we're in a tasklet. Also, check for proper return values now, in case allocation fails and be sure to stop the TX queue in case of memory issues but gaurantee the TX queue will eventually be woken up. Signed-off-by: Senthil Balasubramanian Signed-off-by: Sujith Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit f8316df10c4e3bec5b4c3a5a8e026c577640c3a6 Author: Luis R. Rodriguez Date: Wed Dec 3 03:35:29 2008 -0800 ath9k: Check for pci_map_single() errors pci_map_single() can fail so detect those errors with pci_dma_mapping_error() and deal with them accordingly. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 73a5267087b5acd4a4288e0a1b809f09ca578d49 Author: Ivo van Doorn Date: Wed Dec 3 17:30:22 2008 +0100 rt2x00: Correctly initialize AID during set_key() Request the AID from hardware and provide this id to the driver (in case they need it). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9c3444d33e65ade06af82d19522686c1873b953a Author: Ivo van Doorn Date: Wed Dec 3 17:29:48 2008 +0100 rt2x00: Move crypto TX descriptor handling to rt2x00crypto.c Move all code which determines the right TX descriptor fields specific to crypto support into rt2x00crypto.c. This makes the code in rt2x00queue more simpler and better concentrates all crypto code into a single location. With this we can also remove some ifdefs in rt2x00queue.c since the code inside the ifdef is either very small, or only calling empty functions (see empty function definitions in rt2x00lib.h). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 1c02667db5eae801b8fc279fdfa618164c0efb6e Author: Ivo van Doorn Date: Wed Dec 3 17:29:21 2008 +0100 rt2x00: Fix check for BSS info changes Fix ERP configuration, due to a too strict changes flags checking we never updated the short slot time or basic rate mask when no other changes were made at the same time. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 4c7f0bc266ccccfb0ca397405af13ee3d9e0f6b2 Author: Wu Fengguang Date: Wed Dec 3 00:19:04 2008 -0800 generic swap(): ath9k: rename swap() to swap_array() In preparation for the introduction of a generic swap() macro. Signed-off-by: Wu Fengguang Cc: Sujith Manoharan Cc: Luis R. Rodriguez Cc: Vasanthakumar Thiagarajan Cc: Senthil Balasubramanian Cc: Jouni Malinen Signed-off-by: Andrew Morton Signed-off-by: John W. Linville commit 74415edb042ef9f3b1291f978763687f35aadbb3 Author: Ivo van Doorn Date: Tue Dec 2 22:50:33 2008 +0100 rt2x00: Add RXDONE_CRYPTO_IV/ICV flags Drivers should notify rt2x00lib when they provide the IV/ICV data. This adds some flexibility to drivers which can't provide all information. * rt2500usb provides ICV inside the frame * rt2800pci doesn't provide IV/ICV * rt2800usb doesn't provide IV/ICV Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 011a03300bdd60782f465b97c3aefd58bfaae316 Author: Abhijeet Kolekar Date: Tue Dec 2 12:14:07 2008 -0800 iwl3945 : Fix a-band association for passive channels Patch does following things 1) This patch fixes the a-band association for passive channels with new uCode feature that it allows direct scan on passive channels after auto-switch from passive to active. This enables sending of direct probes on passive channels, as long as some traffic is detected on that channel. This improves the scanning for hidden SSIDs in A-band,which is all passive channels. This patch fixes the bug no 1748. http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1748 2) This fix will only work with uCode version 15.28.2.8 and above. Prior versions of uCode would work only if we heard the traffic within active dwell time, which is much shorter than passive dwell time and is shorter than typical beacon periods. This patch also provids full active dwell time even if we hear traffic late in passive dwell. 3) uCode API version is incremented to 2. Signed-off-by: Abhijeet Kolekar Signed-off-by: Zhu Yi Acked-by: Ben Cahill Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit a0987a8d68c86562f267efa97be01314c490c496 Author: Reinette Chatre Date: Tue Dec 2 12:14:06 2008 -0800 iwlwifi: rely on API version read from firmware This adds the infrastructure to support older firmware APIs. The API version number is stored as part of the filename, we first try to load the most recent firmware and progressively try lower versions. The API version is also read from the firmware self and stored as part of the iwl_priv structure. Only firmware that is supported by driver will be loaded. The version number read from firmware is compared to supported versions in the driver not the API version used as part of filename. An example using this new infrastrucure: if (IWL_UCODE_API(priv->ucode_ver) >= 2) { Driver interacts with Firmware API version >= 2. } else { Driver interacts with Firmware API version 1. } Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c02b3acd29766c6f79c2411cb5b85e1ee72c4c8f Author: Chatre, Reinette Date: Tue Dec 2 12:14:05 2008 -0800 iwlwifi: store ucode version number We store the ucode version number as part of iwl_priv/iwl3945_priv. This enables us to determine if particular ucode has support for features in order to have driver support more than one ucode API. Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit f3f911d1773d31f11038d90b04244bc3986c4ccd Author: Zhu Yi Date: Tue Dec 2 12:14:04 2008 -0800 iwlwifi: fix DMA channel number in iwl_txq_ctx_stop The patch fixes the misuse of DMA channel number by Tx queue number in iwl_tx_ctx_stop(). The problem was originally reported by Wu Fengguang who complains iwlagn driver takes too long time when issuing `ifconfig wlan0 down`. The patch now decreases the interface bring down time from 2 seconds to 0.8 second. This fixes bugs: http://bugzilla.kernel.org/show_bug.cgi?id=11956 http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1790 Signed-off-by: Zhu Yi Tested-by: Fengguang Wu Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 74221d07408c473721cce853ef4e0e66c0b326ba Author: Abbas, Mohamed Date: Tue Dec 2 12:14:03 2008 -0800 iwl3945: Fix iwl3945 rate scaling. 3945 rate scaling was broken in recent tree. This patch fix the following: 1- Get TX response info and update rates window. 2- Rate scaling selection. 3- Flush window timer. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c30e30e17dad86d5e161cf9774eb4d549cc13191 Author: Abbas, Mohamed Date: Tue Dec 2 12:14:02 2008 -0800 iwl3945: add debugfs support Add debugfs support to 3945 driver to display rs info. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit d366df5abb8d5ce7e2c36d3b678177787ccd9749 Author: Winkler, Tomas Date: Tue Dec 2 12:14:01 2008 -0800 iwlwifi: move channels sysfs to debugfs This patch moves channels info display from sysfs to debugfs. This shows channel information as stored in NIC EEPROM. This is useful in debugging CRDA or iwl goes setting so it belongs rather to debugfs then to sysfs. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 0ad91a35bcb6dd993ad7d34f159afae929b4743d Author: Winkler, Tomas Date: Tue Dec 2 12:14:00 2008 -0800 iwlwifi: move disable/enable interrupts to iwl-core.c This patch moves iwl_enable_interrupts and iwl_disable_interrupts functions to iwl-core.c Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c93007efaad0a90520ba73f025c663441bf7e9d6 Author: Samuel Ortiz Date: Tue Dec 2 12:13:59 2008 -0800 iwl3945: Select correct sta ID from find_station() The find_station routine needs to look at the IWL_AP_ID entry if we're a STA. Currently, it only looks for STA entries which causes HW crypto to fail. Signed-off-by: Samuel Ortiz Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 99df630c3453e4a66b3408212dd8e55bc0e04f54 Author: Zhu Yi Date: Tue Dec 2 12:13:58 2008 -0800 iwlwifi: fix printk size format error The patch fixes a printk size format error. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 8f5c87dcf6d1a5e6d7ffe642cfd4debb5ccbec49 Author: Winkler, Tomas Date: Tue Dec 2 12:13:57 2008 -0800 iwlwifi: move host command check function into separate file This patch moves iwl_check_rxon_cmd into iwl-agn-hcmd-check.c This function compiled out in none debugging or non development mode and more. We haven't decided which one yet hence preserving the current 'always compile' state. More functions will be added to the file namely for checking TX and LQ commands. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 304a698a5819bf318fe7e6ea9fe7ff2560365ec2 Author: Ivo van Doorn Date: Tue Dec 2 18:20:59 2008 +0100 rt2x00: Release rt2x00 2.2.3 Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit dddfb478b26e29a2b47f655ec219e743b8111015 Author: Ivo van Doorn Date: Tue Dec 2 18:20:42 2008 +0100 rt2x00: Implement HW encryption (rt2500usb) rt2500usb supports hardware encryption. rt2500usb supports up to 4 shared and pairwise keys. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 0b927a079106e5f66c736e297370d3feb008e28e Author: Ivo van Doorn Date: Tue Dec 2 18:20:22 2008 +0100 rt2x00: Remove duplicate code Simplify rt2x00lib_config_antenna() by moving duplicate code into a seperate static inlined function. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 42c8285767dd17f450d986bdb163a8d56fb0330a Author: Ivo van Doorn Date: Tue Dec 2 18:20:04 2008 +0100 rt2x00: Store retry limit values Store retry limit values in the rt2x00dev structure. This allows the removal of the FIXME where we assumed the long retry is only used when working with RTS frames. Instead we should check the current retry limit values and decide if the required retry count for this frame is a long or short retry. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 1ce9cdac482f0dfbbd22ba4b3e5c016a05543a42 Author: Ivo van Doorn Date: Tue Dec 2 18:19:48 2008 +0100 rt2x00: Optimize IV/EIV handling IV and EIV belong to eachother and don't require 2 seperate fields. Instead they can logically be merged into a single array with size 2. With this approach we can simplify the code in rt2x00crypto.c by using a single memcpy() when copying the iv/eiv data. Additionally we can move some code out of if-statements because the if-statement would always be true. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit aac9207e45b1ec1f36d67e57d94f59ac036d37ee Author: Sujith Date: Tue Dec 2 18:37:54 2008 +0530 ath9k: Choose correct ANI calibration period ANI can't be turned on/off dynamically yet, but the calculation of the calibration period is wrong anyway. This patch fixes it. Reported-by: Johannes Berg Signed-off-by: Sujith Signed-off-by: John W. Linville commit 7470d7f54064557b6210671c2692bba19af5b79d Author: Winkler, Tomas Date: Mon Dec 1 16:32:22 2008 -0800 iwlwifi: 5150 enable LO, TXIQ and BB calibrations This patch enables LO, TXIQ, and BB calibrations for 5150 Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit fd63edba43c584d334e8fc161ca84e4cf54e26a0 Author: Tomas Winkler Date: Mon Dec 1 16:32:21 2008 -0800 iwlwifi: 5150 parametrize eeprom versions Add support for 5150 eeprom versions Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 339afc893d3c1a36151c7578d7eacd2f4b293d5f Author: Tomas Winkler Date: Mon Dec 1 16:32:20 2008 -0800 iwlwifi: 5150 compute ct kill threshold This patch adds computation of ct kill threshold for 5150. Threshold is computed from calibration data in the EEPROM. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 819500c5892aeeed079d3ea1671df40f2dd1d417 Author: Tomas Winkler Date: Mon Dec 1 16:32:19 2008 -0800 iwlwifi: 5150 enable DC calibration This patch enables DC calibration for 5150 Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 7100e924661cc23609de8e7ab9fc3a13e0173891 Author: Tomas Winkler Date: Mon Dec 1 16:32:18 2008 -0800 iwlwifi: 5150 add support for 5150 Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit d97809dbbf1b8a6df79c82be75fa0cababec783b Author: Colin McCabe Date: Mon Dec 1 13:38:55 2008 -0800 ath9k: Replace ath9k_opmode with nl80211_iftype This patch kills ath9k's ath9k_opmode enum by replacing it with nl80211_iftype. Signed-off-by: Colin McCabe Signed-off-by: Andrey Yurovsky Signed-off-by: John W. Linville commit 33fd8195529d74c0fe23cddd1c76fe7e03bbd324 Author: Johannes Berg Date: Mon Dec 1 18:50:27 2008 +0100 iwlwifi: disable AP mode iwlwifi does not support AP mode in any way. For one, it doesn't even buffer multicast/broadcast frames properly. We didn't allow zd1211rw AP mode to be enabled without this, so iwlwifi shouldn't be allowed to advertise AP mode either. It also doesn't work at all, it doesn't even answer to probe requests, I'm guessing the packet injection code was disabled again. Signed-off-by: Johannes Berg Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit c91276592695e13d1b52eab572551017cbf96ee7 Author: Johannes Berg Date: Mon Dec 1 18:19:36 2008 +0100 p54: fix lm87 checksum endianness This fixes the checksum calculation for lm87 firmwares on big endian platforms, the device treats the data as an array of 32-bit little endian values so the driver needs to do that as well. Signed-off-by: Johannes Berg Acked-by: Christian Lamparter Signed-off-by: John W. Linville commit 0f70f398460adb2d8aabb00e7e65f58247f219a3 Author: Johannes Berg Date: Mon Dec 1 18:13:05 2008 +0100 cfg80211: "fix" 11d oops This "fixes" the 11d oops I was seeing. This needs some more work but I cannot work on it now. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit c58f9f635afe688c5c5709f441af57c12c7a4856 Author: Helmut Schaa Date: Mon Dec 1 16:53:28 2008 +0100 iwl3945: remove obsolete irq handling 3945 hardware does not emit the interrupts CSR_INT_BIT_RF_KILL (rfkill toggled) and CSR_INT_BIT_CT_KILL (adapter too hot). Hence this part of code can be removed since iwl3945_irq_tasklet does not handle 4965 hw at all. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit 8e7be8da8ec7cc2828f4434d8d3c2ab4d1d4e7a4 Author: Rami Rosen Date: Mon Dec 1 13:56:55 2008 +0200 mac80211: tx module cleanup. This patch removes unnecessary parameter in ieee80211_beacon_add_tim() and removes unneeded definition and assignment for bdev (instance of net_device) in ieee80211_beacon_get() and in ieee80211_get_buffered_bc() (all in tx.c). Signed-off-by: Rami Rosen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 4a4f4d805db5c930ee4185162dcdc8db9a0379d5 Author: Johannes Berg Date: Mon Dec 1 12:07:56 2008 +0100 cfg80211: fix wiphy remove if no regulatory request Fixes the segfault I just pointed out. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8bef7a10014c4579c66579ab47fc1bb9563ac42a Author: Kalle Valo Date: Sun Nov 30 20:56:28 2008 +0200 mac80211: document ieee80211_tx_info.pad Fixes htmldocs warning: Warning(mac80211.h:379): No description found for parameter 'pad[2]' Signed-off-by: Kalle Valo Signed-off-by: John W. Linville commit 02e37ba1298359baa123cf71ffa03d92abd259b2 Author: Christian Lamparter Date: Sat Nov 29 22:39:08 2008 +0100 p54: per-device names This patch replaces the static "p54:" strings in front of most printk's with their corresponding per-device names. It was always a bit of a hassle to check which device was generating all the messages. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit b2023ddcfa6b79f26ef459867324f3d32b91aa07 Author: Christian Lamparter Date: Sat Nov 29 22:37:31 2008 +0100 p54: refactoring Thanks to the introduction of "changed" flags, we no longer have to do the bookkeeping of p54's firmware state for everything. Thus we can cut down redundancy code. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 64c354ddcd65c98d9a1e2a8f7fb5cc80c7fa488e Author: Christian Lamparter Date: Sat Nov 29 22:35:43 2008 +0100 p54: include support for 2.13.24.0 USB LM87 Firmwares Those firmwares are probably capable of reprogramming the device's eeprom. We better support them officially, before all the accidents happen. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 25900ef0191af98bbb24d8088c6887af31c1ba27 Author: Christian Lamparter Date: Sat Nov 29 22:34:37 2008 +0100 p54: utilize cryptographic accelerator This patch allows p54 to utilize its WEP, TKIP and CCMP accelerator. Tested-by: Larry Finger Signed-off-by: Christian Lamparter Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c772a08ba7192fa5450f85ef53adcbc6e0c5e1c9 Author: Christian Lamparter Date: Sat Nov 29 22:33:57 2008 +0100 p54: revamp station power save management in access point mode This patch addresses the problem in: http://marc.info/?l=linux-wireless&m=122727674810057&w=2 Thanks to Stefan Steuerwald extensive iPod touch tests. We could finally squash some bugs in p54's master mode / access point implementation. Let's hope we got everything right this time and all stations from now on will wake up on TIM and receive their queued frames and go to sleep again without any hiccups. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 4571d3bf87b76eae875283ff9f7243984b5ddcae Author: Christian Lamparter Date: Sun Nov 30 00:48:41 2008 +0100 mac80211: add sta_notify_ps callback This patch is necessary in order to provide a proper Access point support for p54. Unfortunately for us, there is no documented way to disable the interfering power save buffering mechanism in firmware completely. Therefore we give in and notify the driver through our new sta_notify_ps callback, so that we can update the filter state. Signed-off-by: Christian Lamparter Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 2a163c6de452c0b321396caceac5d163949b4cf2 Author: Sujith Date: Fri Nov 28 22:21:08 2008 +0530 ath9k: Add a debugfs file for dumping DMA status Debugfs file location: ath9k//dma Contains values in DMA debug registers. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 826d268091f0e0ecc50103f648b6183eb3efe04d Author: Sujith Date: Fri Nov 28 22:20:23 2008 +0530 ath9k: Add initial layout for an ath9k specific debugfs mechanism Signed-off-by: Sujith Signed-off-by: John W. Linville commit 16d68abee5d700bfe09ae8324dbb76028995c589 Author: Sujith Date: Fri Nov 28 22:19:42 2008 +0530 ath9k: Remove includes that are not needed Signed-off-by: Sujith Signed-off-by: John W. Linville commit 88b126af946e7ea789f2a52d9d25aca681f93067 Author: Sujith Date: Fri Nov 28 22:19:02 2008 +0530 ath9k: Add ATH9K_DEBUG configuration option Make debugging configurable, and add a module parameter to give the debug mask. Add debug.c to hold all debug specific code. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 04bd4638097c767278fdf12d50fecc8b60194d39 Author: Sujith Date: Fri Nov 28 22:18:05 2008 +0530 ath9k: Use cleaner debug masks Remove all the useless __func__ prefixes in debug messages, and replace the DPRINTF macro with a function. Signed-off-by: Sujith Signed-off-by: John W. Linville commit d9a1f48648edbe99fa432626ce6964a1b58f7281 Author: herton Date: Thu Nov 27 22:53:24 2008 -0200 rtl8187: fix retry count passed in rtl8187_tx I mistakenly changed retry count passed in rtl8187_tx in previous change "rtl8187: feedback transmitted packets using tx close descriptor for 8187B". For 8187 it should represent the number of retries (retry count limit). As explained by Johannes Berg, .count represents the number of tries (not retries), and retries = tries - 1. Signed-off-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 007e5ddddfed4ba039899754936e89b27d5cb551 Author: Johannes Berg Date: Thu Nov 27 23:13:38 2008 +0100 wireless: clean up radiotap a bit No need to pad the header so no constant needed for that, no need to carry any version number from netbsd nor CVS IDs from them. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e11602b7813502bf363c40cdb5a8c4b96d4bbc96 Author: Sujith Date: Thu Nov 27 09:46:27 2008 +0530 ath9k: Handle channel initialization for AP mode Hostapd now passes the HT parameters through the config() callback, use these to set the appropriate channel in AP mode. Signed-off-by: Sujith Signed-off-by: John W. Linville commit cb3da8ccc464409e3b947557cdac4cd0b1241c4c Author: Fabio Rossi Date: Wed Nov 26 22:44:23 2008 +0100 mac80211: accept empty strings for hidden SSIDs Some access points (e.g. Sitecom WL-174) use an empty string as hidden SSID. Signed-off-by: Fabio Rossi Signed-off-by: John W. Linville commit e60c7744f8aa77bcbcb0b294596d6c87445d1200 Author: Johannes Berg Date: Wed Nov 26 23:31:40 2008 +0100 cfg80211: handle SIOCGIWMODE/SIOCSIWMODE further reducing wext code in mac80211. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit fee52678dbda2099a25243e79da98dc390e1939a Author: Johannes Berg Date: Wed Nov 26 22:36:31 2008 +0100 cfg80211: handle SIOCGIWNAME This patch moves the SIOCGIWNAME handling from mac80211 to cfg80211. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit f650470a8f506bc33a15778432ebb8cdcf89175b Author: Bob Copeland Date: Wed Nov 26 16:17:25 2008 -0500 ath5k: enable combined michael mic in key cache For mac revisions >= "Griffin," the hardware allows the mic tx and rx authenticator keys to share the same cache line, whereas earlier hardware can only store the rx. Enable the combined mic on hardware that supports it. Changes to ath5k.h Changes-licensed-under: 3-Clause-BSD Changes to attach.c, pcu.c, reg.h Changes-licensed-under: ISC Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 671434904633876f89be70af415c35c89fb90115 Author: Bob Copeland Date: Tue Nov 25 20:55:21 2008 -0500 ath5k: clean up ath5k_hw_set_key Status: O With the addition of TKIP (and soon CCMP), key->alg is a more useful guide to key type than the key length. This patch cleans up key type assignment in ath5k_hw_set_key by extracting it into its own function. It also replaces the separate memcpy() calls for extracting key material into the hardware format with a loop that works regardless of key size. Finally, the patch removes support for WEP-128 since it is a non-standard key length that mac80211 also doesn't use. Changes-licensed-under: ISC Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit f6bac3ea5990653765700b2c3778b08782abebe5 Author: Bob Copeland Date: Wed Nov 26 16:17:11 2008 -0500 ath5k: preserve higher order bits when setting mac address In some cases we would like to set the mac address without changing the operating mode. However, Atheros cards store PCU data in the high 16 bits of the mac address register. Change ath5k_hw_set_lladdr() to not clobber the PCU settings. Changes-licensed-under: ISC Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 51e9bf5d795b8e01e54391f1790974c7b166d286 Author: Harvey Harrison Date: Wed Nov 26 13:12:52 2008 -0800 iwlwifi: remove uses of __constant_{endian} helpers The base versions handle constant folding just fine. Signed-off-by: Harvey Harrison Signed-off-by: John W. Linville commit 10ec4f1d0851eb97cd53db66150835dd7f64829d Author: Luis R. Rodriguez Date: Wed Nov 26 13:03:08 2008 -0800 nl80211: relicense nl80211.h under the ISC We have a few BSD/ISC licensed userspace applications which include nl80211.h from the kernel. To avoid legal ambiguity for usage of the header file in these projects we rather simply relicense the header file under the ISC. We've received consent from all contributors to it. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Acked-by: Michael Wu Acked-by: Luis Carlos Cobo Acked-by: Michael Buesch Acked-by: Jouni Malinen Acked-by: Colin McCabe Acked-by: Javier Cardona Cc: johannes@sipsolutions.net Cc: altape@eden.rutgers.edu Cc: luisca@cozybit.com Cc: mb@bu3sch.de Cc: jouni.malinen@atheros.com Cc: colin@cozybit.com Cc: javier@cozybit.com Signed-off-by: John W. Linville commit 72bdcf34380917260da41e3c49e10edee04bc5cd Author: Jouni Malinen Date: Wed Nov 26 16:15:24 2008 +0200 nl80211: Add frequency configuration (including HT40) This patch adds new NL80211_CMD_SET_WIPHY attributes NL80211_ATTR_WIPHY_FREQ and NL80211_ATTR_WIPHY_SEC_CHAN_OFFSET to allow userspace to set the operating channel (e.g., hostapd for AP mode). Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 72eaa43a532b4156966444779829a986a4432f11 Author: Johannes Berg Date: Wed Nov 26 15:02:58 2008 +0100 mac80211: only transition STAs ps->wake on data frames When a station goes to PS mode to scan, it will then send probe requests without the PS bit set. mac80211 will take that as indication that the station woke up, but it didn't. This patch changes mac80211 to only consider doze->wake transitions on data frames to to fix that issue. Signed-off-by: Johannes Berg Cc: Jouni Malinen Signed-off-by: John W. Linville commit 0d950d84d9d16f7d4edf380a238c5b534ff00d11 Author: Tomas Winkler Date: Tue Nov 25 13:36:01 2008 -0800 iwlwifi: properly initialize calibration command header Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 8e268e47b8ca5bddd189320884c3cc7d9ae489f4 Author: Tomas Winkler Date: Tue Nov 25 13:05:44 2008 +0200 mac80211: disassociate prior to unlinking AP/station This patch reorders calls during disassociation in ieee80211_set_disassoc function. Since sta_info_unlink calls sta_notify(REMOVE) it will remove the station representing AP from the driver before it has disassociated from it using bss_info_changed callback. Signed-off-by: Tomas Winkler Signed-off-by: John W. Linville commit e327b847e67051ece8d121f9aebeb4d736c36a02 Author: John W. Linville Date: Mon Dec 1 14:56:41 2008 -0500 mac80211: deauth when interface is marked down It seems like proper etiquette to let other stations know when we are going down in either STA or IBSS mode. This also notifies userland, so wpa_supplicant doesn't get confused. Signed-off-by: John W. Linville commit 04adf890667050b83a58abaf63610e53a604261b Author: John W. Linville Date: Wed Dec 3 13:55:38 2008 -0500 hostap: select required crypto bits in Kconfig This is fallout from moving the crypto stuff to the new lib80211 component. Signed-off-by: John W. Linville commit 21bbecdaaef3a6acc19905ab88c0587817318870 Author: Steven Rostedt Date: Thu Dec 4 23:30:56 2008 -0500 ftrace: use init_struct_pid as swapper pid Impact: clean up Using (struct pid *)-1 as the pointer for ftrace_swapper_pid is a little confusing for others. This patch uses the address of the actual init pid structure instead. This change is only for clarity. It does not affect the code itself. Hopefully soon the swapper tasks will all have their own pid structure and then we can clean up the code a bit more. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 21a8c466f99063eeb8567318b4e305eda9015408 Author: Frederic Weisbecker Date: Thu Dec 4 23:51:23 2008 +0100 tracing/ftrace: provide the macro task_curr_ret_stack() Impact: cleanup As suggested by Steven Rostedt, this patch provide a new macro task_curr_ret_stack() to move the cpp conditionnal CONFIG into the linux/ftrace.h headers. Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 77d683f3e0258d522c5506e7b5fd05c9411184d9 Author: Frederic Weisbecker Date: Thu Dec 4 23:49:47 2008 +0100 tracing/ftrace: fix the check of ftrace_trace_task Impact: fix default empty traces on function-graph-tracer The actual ftrace_trace_task() checks if ftrace_pid_trace is allocated and return 1 if it is true. If it is NULL, it will check the bit of pid tracing flag for the current task (which are not set by default). So by default, a task is not traced. Actually all tasks should be traced by default and filter_by_pid when ftrace_pid_trace is allocated. The appropriate condition should be to return 1 if filter_by_pid is set. Signed-off-by: Frederic Weisbecker Acke-dby: Steven Rostedt Signed-off-by: Ingo Molnar commit ff32504fdc56407654584ef187b20022c94a3486 Author: Frederic Weisbecker Date: Thu Dec 4 23:47:35 2008 +0100 tracing/ftrace: don't insert TRACE_PRINT during selftests Impact: fix tracer selfstests false results After setting a ftrace_printk somewhere in th kernel, I saw the Function tracer selftest failing. When a selftest occurs, the ring buffer is lurked to see if some entries were inserted. But concurrent insertion such as ftrace_printk could occured at the same time and could give false positive or negative results. This patch prevent prevent from TRACE_PRINT entries insertion during selftests. Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 970987beb9c99ca806edc464518d411cc399fb4d Merge: faec2ec... 1fd8f2a... feaf384... Author: Ingo Molnar Date: Fri Dec 5 14:45:22 2008 +0100 Merge branches 'tracing/ftrace', 'tracing/function-graph-tracer' and 'tracing/urgent' into tracing/core commit a0286c94f07636380082608196d41dd725a83229 Author: Michael Tokarev Date: Fri Dec 5 15:47:29 2008 +0300 x86: fix missing space in printk, #2 Impact: clean up printk Signed-off-by: Michael Tokarev Signed-off-by: Ingo Molnar commit 12dde4c6d6e9092cf63094e84dc1fe4e505dd6d0 Author: Takashi Iwai Date: Fri Dec 5 13:09:27 2008 +0100 ALSA: hda - Proper power-map toggling for input pins The current code overrides the event type on input pins always to PWR_EVENT. Although this still works (PWR_EVENT and INSERT_EVENT are handled samely), it'd be better to avoid such overrides. Also, currently the unsol events are registered even for fixed pins which will never raise the pin-detection event. This patch fixes both issues. Signed-off-by: Takashi Iwai commit 55c395b47042e12d5c25aa07f271f56ffe44f793 Author: Michael Tokarev Date: Fri Dec 5 14:42:20 2008 +0300 x86: fix missing space in printk Just come across this when booting on an old hw.. Looks somewhat ugly, that single missing space ;) Signed-off-by: Michael Tokarev Signed-off-by: Ingo Molnar commit e6e3ea25b1679b55728a8a470a50a8fff61e8a45 Author: Takashi Iwai Date: Fri Dec 5 12:54:56 2008 +0100 ALSA: hda - Fix pin-detection in patch_sigmatel.c The pin-detection function used in patch_sigmatel.c shouldn't be specific to HP pin because it's used for input pins in general, too. This patch fixes the detection function, removes the HP check from it and moves to stac92xx_hp_detect(). Signed-off-by: Takashi Iwai commit e061b165c7f4ec5e2e160d990b49011b5b6e5c6a Author: Martin Willi Date: Thu Dec 4 15:40:17 2008 -0800 xfrm: Accept ESP packets regardless of UDP encapsulation mode From: Martin Willi An IPsec node speaking IKEv2 MUST accept incoming UDP encapsulated ESP packets, even if no NAT situation is detected. This is important if MOBIKE is in use. Some implementation keep the encapsulation mode if they move out of a NAT situation. Signed-off-by: David S. Miller commit 3f9b766ca7c4654d41f4f21357031c1c1e7de29e Author: Wang Chen Date: Thu Dec 4 15:12:20 2008 -0800 sgi-xp: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). [ Kill unnecessary casts, noticed by Ilpo -DaveM ] Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 17c324fa80914e5b39d423dfd1a3cd61a3ec9866 Author: Wang Chen Date: Thu Dec 4 15:07:33 2008 -0800 um: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 6cbeba55c5cbd042040d6114471637e8b10d4a6b Author: Wang Chen Date: Thu Dec 4 15:06:56 2008 -0800 xtensa: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 28945dd4fba8dcbc1c74ea702b731caaedae6ccb Author: Wang Chen Date: Thu Dec 4 15:06:27 2008 -0800 simeth: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 5da95273c2e63c9607652b5e8dd39808b6992d7c Author: Takashi Iwai Date: Mon Nov 24 14:06:08 2008 +0100 ALSA: ca0106 - Add power-management support Added the missing PM support for snd-ca0106 driver. Signed-off-by: Takashi Iwai commit 84d727a109081684c2e01b811cb0d6dc3b9380ca Author: Benjamin Herrenschmidt Date: Thu Oct 9 16:58:19 2008 +0000 powerpc/4xx: Add support for ISA holes on 4xx PCI/X/E This adds support for ISA memory holes on the PCI, PCI-X and PCI-E busses of the 4xx platforms. The patch includes changes to the Bamboo and Canyonlands device-trees to add such a hole, others can be updated separately. The ISA memory hole is an additional outbound window configured in the bridge to generate PCI cycles in the low memory addresses, thus allowing to access things such as the hard-decoded VGA aperture at 0xa0000..0xbffff or other similar things. It's made accessible to userspace via the new legacy_mem file in sysfs for which support was added by a previous patch. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Josh Boyer commit 9d2421e8345602675132421fdaf4179af4705f5c Author: Stephen Rothwell Date: Sun Nov 23 18:33:05 2008 +0000 powerpc/44x: update ppc44x_defconfig This removes CONFIG_PCI_LEGACY (which is not needed) and consequently several compiler warnings. Signed-off-by: Stephen Rothwell Signed-off-by: Josh Boyer commit 23f402c011b30f981a64c3752fca96cbac2cfd3d Author: Hollis Blanchard Date: Mon Nov 10 14:58:28 2008 -0600 powerpc/kvm: update KVM config options in ppc44x_defconfig KVM host support was recently enabled in ppc44x_defconfig, but since then the config option was renamed. Update ppc44x_defconfig to match. Also, KVM guests aren't very interesting without networking, so enable CONFIG_TUN and CONFIG_BRIDGE. Signed-off-by: Hollis Blanchard Signed-off-by: Josh Boyer commit 32c8dabc97d436582298ebd0e33af041c69f5a4b Author: Mark Brown Date: Wed Dec 3 19:41:13 2008 +0000 ASoC: Remove obsolete declaration of struct snd_soc_clock_info The struct is never defined. Signed-off-by: Mark Brown commit affa219b60a11b3295637a97f5b1b8ef231490fc Author: Joe Korty Date: Wed Dec 3 18:58:19 2008 -0500 x86: change thread_info's flag field back to 32 bits Impact: pack struct thread_info more tightly Change x86_64's thread_info 'flags' field back to __u32. This was changed to 'unsigned long' when the thread_info*.h for i386 and x86_64 were merged. Change it back. We can do this as only 27 bits of 'flags' are actually used. This change actually packs down thread_info by 64 bits: 32 bits are saved by the smaller flags, and 32 bits are saved by the following 'mm_segment_t field' becoming naturally 64-bit aligned. Signed-off-by: Joe Korty Signed-off-by: Ingo Molnar commit c0515566f3117c44b0572559bcc3cb00899b0910 Merge: 4385cec... 061e41f... Author: Ingo Molnar Date: Thu Dec 4 11:05:26 2008 +0100 Merge commit 'v2.6.28-rc7' into x86/cleanups commit 4e7c4d7b6d980264194c2aecbbb1e1e4c7302b63 Author: Takashi Iwai Date: Thu Dec 4 10:25:37 2008 +0100 ALSA: hda - Add reference to HD-Audio.txt in ALSA-Configuration.txt Signed-off-by: Takashi Iwai commit 1fd8f2a3f9a91b287a876cef830b21baafc8a799 Author: Frederic Weisbecker Date: Wed Dec 3 23:45:11 2008 +0100 tracing/function-graph-tracer: handle ftrace_printk entries Handle the TRACE_PRINT entries from the function grapg tracer and output them as a C comment just below the function that called it, as if it was a comment inside this function. Example with an ftrace_printk inside might_sleep() function: void __might_sleep(char *file, int line) { static unsigned long prev_jiffy; /* ratelimiting */ ftrace_printk("Hi I'm a comment in might_sleep() :-)"); A chunk of a resulting trace: 0) | _reiserfs_free_block() { 0) | reiserfs_read_bitmap_block() { 0) | __bread() { 0) | __getblk() { 0) | __find_get_block() { 0) 0.698 us | mark_page_accessed(); 0) 2.267 us | } 0) | __might_sleep() { 0) | /* Hi I'm a comment in might_sleep() :-) */ 0) 1.321 us | } 0) 5.872 us | } 0) 7.313 us | } 0) 8.718 us | } And this patch brings two minor fixes: - The newline after a switch-out task has disappeared - The "|" sign just before the cpu number on task-switch has been deleted. 0) 0.616 us | pick_next_task_rt(); 0) 1.457 us | _spin_trylock(); 0) 0.653 us | _spin_unlock(); 0) 0.728 us | _spin_trylock(); 0) 0.631 us | _spin_unlock(); 0) 0.729 us | native_load_sp0(); 0) 0.593 us | native_load_tls(); ------------------------------------------ 0) cat-2834 => migrati-3 ------------------------------------------ 0) | finish_task_switch() { 0) 0.841 us | _spin_unlock_irq(); 0) 0.616 us | post_schedule_rt(); 0) 3.882 us | } Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit faec2ec505d397e9426754722b6e80d519c4938f Author: Liming Wang Date: Thu Dec 4 14:24:49 2008 +0800 ftrace: avoid duplicated function when writing set_graph_function Impact: fix a bug in function filter setting when writing function to set_graph_function, we should check whether it has existed in set_graph_function to avoid duplicating. Signed-off-by: Liming Wang Signed-off-by: Ingo Molnar commit 6b2539302bee8e88c99e3c7d80c16a04dbe5e2ad Author: Ingo Molnar Date: Thu Dec 4 09:18:28 2008 +0100 tracing: fix typo and missing inline function Impact: fix build bugs Signed-off-by: Ingo Molnar commit e32d89569128e76bdf84867be0928902ca9f7555 Author: Steven Rostedt Date: Thu Dec 4 00:26:41 2008 -0500 ftrace: add ability to only trace swapper tasks Impact: new feature This patch lets the swapper tasks of all CPUS be filtered by the set_ftrace_pid file. If '0' is echoed into this file, then all the idle tasks (aka swapper) is flagged to be traced. This affects all CPU idle tasks. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 978f3a45d9499c7a447ca7615455cefb63d44165 Author: Steven Rostedt Date: Thu Dec 4 00:26:40 2008 -0500 ftrace: use struct pid Impact: clean up, extend PID filtering to PID namespaces Eric Biederman suggested using the struct pid for filtering on pids in the kernel. This patch is based off of a demonstration of an implementation that Eric sent me in an email. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 5ef6476190d24419a9a537baa0b5641845136989 Author: Steven Rostedt Date: Thu Dec 4 00:26:39 2008 -0500 pid: fix the do_each_pid_task() macro Impact: macro side-effects fix This patch adds parenthesis around 'pid' in the do_each_pid_task macro to allow callers to pass in more complex parameters. e.g. do_each_pid_task(*pid, type, task) Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 804a685162a7080386714166776f57255a75238e Author: Steven Rostedt Date: Wed Dec 3 15:36:59 2008 -0500 ftrace: trace single pid for function graph tracer Impact: New feature This patch makes the changes to set_ftrace_pid apply to the function graph tracer. # echo $$ > /debugfs/tracing/set_ftrace_pid # echo function_graph > /debugfs/tracing/current_tracer Will cause only the current task to be traced. Note, the trace flags are also inherited by child processes, so the children of the shell will also be traced. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 0ef8cde56ab92ab3f65221246dc1622c6b5068b3 Author: Steven Rostedt Date: Wed Dec 3 15:36:58 2008 -0500 ftrace: use task struct trace flag to filter on pid Impact: clean up Use the new task struct trace flags to determine if a process should be traced or not. Note: this moves the searching of the pid to the slow path of setting the pid field. This needs to be converted to the pid name space. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit ea4e2bc4d9f7370e57a343ccb5e7c0ad3222ec3c Author: Steven Rostedt Date: Wed Dec 3 15:36:57 2008 -0500 ftrace: graph of a single function This patch adds the file: /debugfs/tracing/set_graph_function which can be used along with the function graph tracer. When this file is empty, the function graph tracer will act as usual. When the file has a function in it, the function graph tracer will only trace that function. For example: # echo blk_unplug > /debugfs/tracing/set_graph_function # cat /debugfs/tracing/trace [...] ------------------------------------------ | 2) make-19003 => kjournald-2219 ------------------------------------------ 2) | blk_unplug() { 2) | dm_unplug_all() { 2) | dm_get_table() { 2) 1.381 us | _read_lock(); 2) 0.911 us | dm_table_get(); 2) 1. 76 us | _read_unlock(); 2) + 12.912 us | } 2) | dm_table_unplug_all() { 2) | blk_unplug() { 2) 0.778 us | generic_unplug_device(); 2) 2.409 us | } 2) 5.992 us | } 2) 0.813 us | dm_table_put(); 2) + 29. 90 us | } 2) + 34.532 us | } You can add up to 32 functions into this file. Currently we limit it to 32, but this may change with later improvements. To add another function, use the append '>>': # echo sys_read >> /debugfs/tracing/set_graph_function # cat /debugfs/tracing/set_graph_function blk_unplug sys_read Using the '>' will clear out the function and write anew: # echo sys_write > /debug/tracing/set_graph_function # cat /debug/tracing/set_graph_function sys_write Note, if you have function graph running while doing this, the small time between clearing it and updating it will cause the graph to record all functions. This should not be an issue because after it sets the filter, only those functions will be recorded from then on. If you need to only record a particular function then set this file first before starting the function graph tracer. In the future this side effect may be corrected. The set_graph_function file is similar to the set_ftrace_filter but it does not take wild cards nor does it allow for more than one function to be set with a single write. There is no technical reason why this is the case, I just do not have the time yet to implement that. Note, dynamic ftrace must be enabled for this to appear because it uses the dynamic ftrace records to match the name to the mcount call sites. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit b29144c317fb748dae6d72c0f88eda9d43165b8d Merge: b8307db... e8e1abe... 764f3b9... Author: Ingo Molnar Date: Thu Dec 4 09:07:44 2008 +0100 Merge branches 'tracing/ftrace' and 'tracing/function-graph-tracer' into tracing/core commit b8307db2477f9c551e54e0c7b643ea349a3349cd Merge: f0461d0... 061e41f... Author: Ingo Molnar Date: Thu Dec 4 09:07:19 2008 +0100 Merge commit 'v2.6.28-rc7' into tracing/core commit 4151d154efc2eb1e48b0950e93660691426dd23f Author: Takashi Iwai Date: Thu Dec 4 07:49:15 2008 +0100 ALSA: hda - Add forgotten module alias for Nvidia MCP67 HDMI Signed-off-by: Takashi Iwai commit e5f73435683122612742eb17252a6854b28f2511 Author: Scott Waye Date: Thu Dec 4 07:43:18 2008 +0100 ALSA: hda - Add MCP67 HDMI support Added id for MCP67 HDMI codec. Signed-off-by: Scott Waye Signed-off-by: Takashi Iwai commit 36cbac5909d227c4de31fb93e1dd99c839c9cb6f Author: Joe Perches Date: Wed Dec 3 22:27:25 2008 -0800 net/ipv6/ip6mr.c: Use kmem_cache_zalloc, remove memset Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit df66f858074370a7ac7b21af2940e7a3a6af17c2 Author: Wang Chen Date: Wed Dec 3 22:24:05 2008 -0800 if_usb: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 48502180e4b47fb2b1e7834fe0f16f4e553a053d Author: Luotao Fu Date: Wed Dec 3 22:23:18 2008 -0800 smc91x: remove isa stuff from smc91x driver ISA support in smc91x is incomplete. I doubt there're any smc91x isa card. This driver is greatly used on arm pxa platforms. Hence we remove the isa stuff from smc91x driver. Signed-off-by: Luotao Fu Acked-by: Steve Glendinning Signed-off-by: David S. Miller commit 999890b21a8eff7559a140fcbd2cd4b34e685c76 Author: Benjamin Thery Date: Wed Dec 3 22:22:16 2008 -0800 net: /proc/net/ip_mr_cache, display Iif as a signed short Today, iproute2 fails to show multicast forwarding unresolved cache entries while scanning /proc/net/ip_mr_cache. Indeed, it expects to see -1 in 'Iif' column to identify unresolved entries but the kernel outputs 65535. It's a signed/unsigned issue: 'Iif', the source interface, is retrieved from member mfc_parent in struct mfc_cache. mfc_parent is a vifi_t: unsigned short, but is displayed in ipmr_mfc_seq_show() as "%-3d", signed integer. In unresolevd entries, the 65535 value (0xFFFF) comes from this define: #define ALL_VIFS ((vifi_t)(-1)) That may explains why the guy who added support for this in iproute2 thought a -1 should be expected. I don't know if this must be fixed in kernel or in iproute2. Who is right? What is the correct API? How was it designed originally? I let you decide if it should goes in the kernel or be fixed in iproute2. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 1ea472e2dedcf23d5f31c63fc790cccfab93c0de Author: Benjamin Thery Date: Wed Dec 3 22:21:47 2008 -0800 net: fix /proc/net/ip_mr_cache display - V2 /proc/net/ip_mr_cache and /proc/net/ip6_mr_cache displays garbage when showing unresolved mfc_cache entries. [root@qemu tests]# cat /proc/net/ip_mr_cache Group Origin Iif Pkts Bytes Wrong Oifs 014C00EF 010014AC 1 10 10050 0 2:1 3:1 024C00EF 010014AC 65535 514 2 -559067475 The first line is correct. It is a resolved cache entry, 10 packets used it... The second line represents an unresolved entry, and the columns Pkts(4th), Bytes(5th) and Wrong(6th) just show garbage. In struct mfc_cache, there's an union to store data for resolved and unresolved cases. And what ipmr_mfc_seq_show() is printing in these columns for the unresolved entries is some bytes from mfc_cache.mfc_un.res. Bad. (eg. In our case -559067475 is in fact 0xdead4ead which is the spinlock magic from mfc_cache.mfc_un.unres.unresolved.lock.magic). This patch replaces the garbage data written in these columns for the unresolved entries by '0' (zeros) which is more correct. This change doesn't break the ABI. Also, mfc->mfc_un.res.pkt, mfc->mfc_un.res.bytes, mfc->mfc_un.res.wrong_if are unsigned long. It applies on top of net-next-2.6. The patch for net-2.6 is slightly different because of the NIP6_FMT to %pI6 conversion that was made in the seq_printf. Changelog: ========== V2: * Instead of breaking the ABI by suppressing the columns that have no meaning for unresolved entries, fill them with 0 values. Signed-off-by: Benjamin Thery Signed-off-by: David S. Miller commit 9de6d99a7559d20f7ababd1cacdc61ee5315f3c1 Author: Alexey Dobriyan Date: Wed Dec 3 22:19:52 2008 -0800 netdev: remove pathetic compile-command lines -m486, -O6 are partircularly amusing. Remove some other useless lines near as well. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit ec98ce480ada787f2cfbd696980ff3564415505b Merge: 3496f92... feaf384... Author: James Morris Date: Thu Dec 4 17:16:36 2008 +1100 Merge branch 'master' into next Conflicts: fs/nfsd/nfs4recover.c Manually fixed above to use new creds API functions, e.g. nfs4_save_creds(). Signed-off-by: James Morris commit 8865c418caf4e9dd2c24bdfae3a5a4106e143e60 Author: David Woodhouse Date: Wed Dec 3 22:12:38 2008 -0800 atm: 32-bit ioctl compatibility We lack compat ioctl support through most of the ATM code. This patch deals with most of it, and I can now at least use BR2684 and PPPoATM with 32-bit userspace. I haven't added a .compat_ioctl method to struct atm_ioctl, because AFAICT none of the current users need any conversion -- so we can just call the ->ioctl() method in every case. I looked at br2684, clip, lec, mpc, pppoatm and atmtcp. In svc_compat_ioctl() the only mangling which is needed is to change COMPAT_ATM_ADDPARTY to ATM_ADDPARTY. Although it's defined as _IOW('a', ATMIOC_SPECIAL+4,struct atm_iobuf) it doesn't actually _take_ a struct atm_iobuf as an argument -- it takes a struct sockaddr_atmsvc, which _is_ the same between 32-bit and 64-bit code, so doesn't need conversion. Almost all of vcc_ioctl() would have been identical, so I converted that into a core do_vcc_ioctl() function with an 'int compat' argument. I've done the same with atm_dev_ioctl(), where there _are_ a few differences, but still it's relatively contained and there would otherwise have been a lot of duplication. I haven't done any of the actual device-specific ioctls, although I've added a compat_ioctl method to struct atmdev_ops. Signed-off-by: David Woodhouse Signed-off-by: David S. Miller commit dcd39c90290297f6e6ed8a04bb20da7ac2b043c5 Author: Stephen Hemminger Date: Wed Dec 3 22:10:38 2008 -0800 ne-h8300: convert to net_device_ops Another device using 8390 library that needs converting. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 5618f0d1193d6b051da9b59b0e32ad24397f06a4 Author: Stephen Hemminger Date: Wed Dec 3 22:10:10 2008 -0800 hydra: convert to net_device_ops Another device using 8390 library that needs converting. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b6114794a1c394534659f4a17420e48cf23aa922 Author: Stephen Hemminger Date: Wed Dec 3 22:09:30 2008 -0800 zorro8390: convert to net_device_ops Another device using 8390 library that needs converting. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3e1d7cd2dc708f2054b2180e05ae283b9f91d543 Author: Wang Chen Date: Wed Dec 3 22:07:10 2008 -0800 e1000: e1000_adapter->polling_netdev is useless Commit bea3348eef27e6044b6161fd04c3152215f96411 "[NET]: Make NAPI polling independent of struct net_device objects." made NAPI polling to be independent of net_device. So e1000_adapter->polling_netdev is no longer used. Kill it. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit a4d2f34b7c3ff8a53df755961faf8186c6e7b464 Author: Wang Chen Date: Wed Dec 3 22:05:58 2008 -0800 ixgbe: function comment typo Seems the ixgbe's code was copied from e1000. The comment talks about something not exist. Signed-off-by: Wang Chen Acked-by: Jeff Kirsher Signed-off-by: David S. Miller commit e4e6c38cab208b369bfc8e9a57186581bf0b9987 Author: Guo-Fu Tseng Date: Wed Dec 3 21:20:04 2008 -0800 jme: Remove 64 and 40 bit dma_mask Although the hardware supports the 64bit DMA address in design, but later found that it actually not working. This patch reduced the rang to 32bit. Found-by: "Ethan" Signed-off-by: "Guo-Fu Tseng" Acked-by: Jeff Garzik Signed-off-by: David S. Miller commit 4f40bf46897ddb57f149c0758f0cef0cc7782f7f Author: akeemting Date: Wed Dec 3 21:19:16 2008 -0800 jme: GHC register control fix for new hardware Due to the hardware design, except the first chip on the market, other chips needs to setup the clock source for MAC processor implicitly through Global Host Control Register(GHC). (Strange design huh?) 10/100M uses the PCI-E as clock source, and 1G uses GPHY. And I reordered the code a little, to make it easier to read. Found-by: "Ethan" Fixed-by: "akeemting" Signed-off-by: "Guo-Fu Tseng" Acked-by: Jeff Garzik Signed-off-by: David S. Miller commit 59e4220a1112bf65924bc2e47b5757911b6f349b Author: Jarek Poplawski Date: Wed Dec 3 21:17:27 2008 -0800 pkt_sched: sch_htb: Replace HTB_ACCNT() macro with inlines Replace HTB_ACCNT() macro with inlines to make it more readable. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 23cb913d25b20ed88b36a26f337cfdb4605e63f4 Author: Jarek Poplawski Date: Wed Dec 3 21:16:58 2008 -0800 pkt_sched: sch_htb: Remove L2T() L2T() is currently used only in one place (and has one spurious parameter, btw), so let's: 'get rid of L2T completely, and just use "qdisc_l2t(rate, size)" directly.' - quote & feedback from David S. Miller. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 244ef9b9176c7c7a095f4738d353a3a60b88097d Author: Wang Chen Date: Wed Dec 3 21:14:04 2008 -0800 bond: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 97341249c4c30cf0eea5439ce2f36ee887e640fe Author: Wang Chen Date: Wed Dec 3 21:13:37 2008 -0800 mptlan: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 0eade1f930fa3ba6461b34baf3ed8fa7c4abc40f Author: Wang Chen Date: Wed Dec 3 21:13:13 2008 -0800 dvb: Kill directly reference of netdev->priv Simply replace netdev->priv with netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit c19f7a34f7cc7543c62ad065952e146dc77d1a38 Author: Jarek Poplawski Date: Wed Dec 3 21:09:45 2008 -0800 pkt_sched: sch_htb: Clean htb_class prio and quantum fields While implementing htb_parent_to_leaf() there where added backup prio and quantum struct htb_class fields to preserve these values for inner classes in case of their return to leaf. This patch cleans this a bit by removing union leaf duplicates. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 633fe66ed8385ccf8b4a74a00a4c6eb40850d65f Author: Jarek Poplawski Date: Wed Dec 3 21:09:10 2008 -0800 pkt_sched: sch_htb: Remove htb_sched nwc_hit field Remove practically unused struct htb_sched nwc_hit field. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 4164d661b8c9602fbbf651a33377d2c51f68c451 Author: Jarek Poplawski Date: Wed Dec 3 21:08:44 2008 -0800 pkt_sched: sch_htb: Remove htb_class aprio field Remove practically unused struct htb_class aprio field. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit cb52deba12f27af90a46d2f8667a64888118a888 Author: Ed Swierk Date: Mon Dec 1 12:24:43 2008 +0000 forcedeth: power down phy when interface is down Bring the physical link down when the interface is down by placing the PHY in power-down state, unless WOL is enabled. This mirrors the behavior of other drivers including e1000 and tg3. Without the patch, ifconfig down leaves the physical link up, which confuses datacenter users who expect the link lights both on the NIC and the switch to go out when they bring an interface down. Furthermore, even though the phy is powered on, autonegotiation stops working, so a normally gigabit link might suddenly become 100 Mbit half-duplex when the interface goes down, and become gigabit when it comes up again. Ayaz said: I would not include this patch until further testing is performed. NVIDIA MCP chips use 3rd party PHY vendors. By powering down the phy, it could have adverse affects on certain phys. Arthur Jones said: I just ran across this patch. Tested on a Marvell 88E1121R (GigE PHY) and works great. This is a very important feature for me. Signed-off-by: Ed Swierk Tested-by: Arthur Jones Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit a316084c2f18fd5371f81cfcfc8348a71c4a6fe8 Author: Andrew Morton Date: Mon Dec 1 12:24:46 2008 +0000 drivers/net/smc911x.c: smc911x_drv_probe() cleanup Save an ugly ifdef. Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit fd568fc3fe46fd87087717811d2f9ed27bb71558 Author: Julia Lawall Date: Mon Dec 1 12:24:24 2008 +0000 drivers/isdn/mISDN: use ARRAY_SIZE ARRAY_SIZE is more concise to use when the size of an array is divided by the size of its type or the size of its first element. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @i@ @@ #include @depends on i using "paren.iso"@ type T; T[] E; @@ - (sizeof(E)/sizeof(T)) + ARRAY_SIZE(E) // Signed-off-by: Julia Lawall Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 838361fe7828a3ad1aae8dee87620474931dac5e Author: Wang Chen Date: Wed Dec 3 15:49:46 2008 -0800 isdn: Kill directly reference of netdev->priv Simply use netdev_priv() to replace netdev->priv. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 25dd7e6aedff054736f9edfd05bb585d810d8543 Author: Wang Chen Date: Wed Dec 3 15:49:07 2008 -0800 hysdn: Kill directly reference of netdev->priv Usually, netdev->priv should point to the memory of private data which is allocated in alloc_netdev(). netdev_priv() is used to get the address of the private data. Change the netdev->priv pointer to another memory is wrong. Use netdev->ml_priv for this case. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 52404881984e2d447f920a23e3bb63262dfc77f3 Author: Rémi Denis-Courmont Date: Wed Dec 3 15:42:56 2008 -0800 Phonet: basic net namespace support Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit d81d228567f55af517796638075dbbce9b40d7af Author: Martin Willi Date: Wed Dec 3 15:38:07 2008 -0800 xfrm: Accept XFRM_STATE_AF_UNSPEC SAs on IPv4/IPv6 only hosts Installing SAs using the XFRM_STATE_AF_UNSPEC fails on hosts with support for one address family only. This patch accepts such SAs, even if the processing of not supported packets will fail. Signed-off-by: Martin Willi Signed-off-by: David S. Miller commit ff80aa97c9b4aae9449a608fe1bc3e7b5121cd66 Author: Peter Korsgaard Date: Tue Dec 2 21:58:06 2008 +0100 setlocalversion: add git-svn support Print svn revision in addition to git info on git-svn repos. Signed-off-by: Peter Korsgaard Signed-off-by: Sam Ravnborg commit 167d6a02c1dbdd84d49e87df7718f18fa31cb971 Author: Peter Korsgaard Date: Tue Dec 2 21:58:05 2008 +0100 setlocalversion: print correct subversion revision Output svn revision of latest change, instead of repo revision as thats what we're interested in (especially when working on a branch/tag). Signed-off-by: Peter Korsgaard Signed-off-by: Sam Ravnborg commit 846442c8ddc02e378e7b981f0928449ed1ff1e1f Author: Arjan van de Ven Date: Mon Dec 1 14:21:06 2008 -0800 scripts: improve the decodecode script kerneloops.org has been using an improved "decodecode" script, specifically it has a special marker that shows which line in the assembly the oops happened at, like this: 20: 83 e0 03 and $0x3,%eax 23: 09 d8 or %ebx,%eax 25: 85 db test %ebx,%ebx 27: 89 02 mov %eax,(%edx) 29: 74 0f je 0x3a 2b:* 3b 73 04 cmp 0x4(%ebx),%esi <-- trapping instruction 2e: 75 05 jne 0x35 30: 89 53 04 mov %edx,0x4(%ebx) 33: eb 07 jmp 0x3c 35: 89 53 08 mov %edx,0x8(%ebx) this patch updates the kernel copy to also have this functionality. Signed-off-by: Arjan van de Ven Reviewed-by: WANG Cong Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg commit c39dd50240b97bfe4fcc49b41e1fe56675afcb94 Author: Jeremy Kerr Date: Mon Dec 1 14:21:03 2008 -0800 scripts/package: allow custom options to rpm Add a RPMOPTS make variable to allow arbitrary options to be passed to rpm during 'make rpm-pkg'. For example: make RPMOPTS="--define '_topdir /home/jk/rpm'" rpm-pkg Signed-off-by: Jeremy Kerr Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg commit 5dae9a550a7478c8d6a7da2336d3ceeebf90ab84 Author: Andreas Gruenbacher Date: Mon Dec 1 14:21:03 2008 -0800 genksyms: allow to ignore symbol checksum changes This adds an "override" keyword for use in *.symvers / *.symref files. When a symbol is overridden, the symbol's old definition will be used for computing checksums instead of the new one, preserving the previous checksum. (Genksyms will still warn about the change.) This is meant to allow distributions to hide minor actual as well as fake ABI changes. (For example, when extra type information becomes available because additional headers are included, this may change checksums even though none of the types used have actully changed.) This approach also allows to get rid of "#ifdef __GENKSYMS__" hacks in the code, which are currently used in some vendor kernels to work around checksum changes. Signed-off-by: Andreas Gruenbacher Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg commit 64e6c1e12372840e7caf8e25325a9e9c5fd370e6 Author: Andreas Gruenbacher Date: Mon Dec 1 14:21:01 2008 -0800 genksyms: track symbol checksum changes Sometimes it is preferable to avoid changes of exported symbol checksums (to avoid breaking externally provided modules). When a checksum change occurs, it can be hard to figure out what caused this change: underlying types may have changed, or additional type information may simply have become available at the point where a symbol is exported. Add a new --reference option to genksyms which allows it to report why checksums change, based on the type information dumps it creates with the --dump-types flag. Genksyms will read in such a dump from a previous run, and report which symbols have changed (and why). The behavior can be controlled for an entire build as follows: If KBUILD_SYMTYPES is set, genksyms uses --dump-types to produce *.symtypes dump files. If any *.symref files exist, those will be used as the reference to check against. If KBUILD_PRESERVE is set, checksum changes will fail the build. Signed-off-by: Andreas Gruenbacher Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Sam Ravnborg commit a680eedc6c621c75695c68198533fc3c98f4053b Author: Sam Ravnborg Date: Wed Dec 3 22:24:13 2008 +0100 tags and cscope support really belongs in a shell script as they do not benefit from the make functionality. Moving the support to a shell script has several benefits: - The readability of the code has increased a lot - More people is able to extend the tags support - We see less changes to the top-level Makefile The shell script version includes improvements from: Alexey Dobriyan (jump to kconfig symbols) Alexey Dobriyan (drop ./ in paths) Ian Campbell (simplified find algorithms) This version has a few caveats: => It does not support ALLSOURCE_ARCHS - it is easy to add if it is really used => It assumes all archs have moved to arch/$ARCH/include - until that happens we have a few additional hits in the archs Signed-off-by: Sam Ravnborg Cc: Alexey Dobriyan Tested-by: Ian Campbell commit 361425fc32422c9716fc69e52455b7d44fc02c18 Author: Haiying Wang Date: Wed Dec 3 14:03:09 2008 -0500 powerpc/85xx: Create dts for each core in CAMP mode for MPC8572DS This patch creates the dts files for each core and splits the devices between the two cores for MPC8572DS. core0 has memory, L2, i2c, dma1, global-util, eth0, eth1, crypto, pci0, pci1. core1 has L2, dma2, eth2, eth3, pci2, msi. MPIC is shared between two cores but each core will protect its interrupts from other core by using "protected-sources" of mpic. Signed-off-by: Haiying Wang Signed-off-by: Kumar Gala commit f6682f915760ccfe57ef1b6cd5ff2d8f2bf8c1d4 Author: Sam Ravnborg Date: Wed Dec 3 22:11:14 2008 +0100 kconfig: fix options to check-lxdialog.sh As noted by Bernhard - fix it up. Cc: Bernhard Reutner-Fischer Signed-off-by: Sam Ravnborg commit 3b1ec9fb8197197d5e3bcca3a05e82d4f50f11bc Author: Sally, Gene Date: Wed Oct 29 09:54:17 2008 -0400 kbuild: gen_init_cpio expands shell variables in file names Modify gen_init_cpio so that lines that specify files can contain what looks like a shell variable that's expanded during processing. For example: file /sbin/kinit ${RFS_BASE}/usr/src/klibc/kinit/kinit 0755 0 0 given RFS_BASE is "/some/directory" in the environment would be expanded to file /sbin/kinit /some/directory/usr/src/klibc/kinit/kinit 0755 0 0 If several environment variables appear in a line, they are all expanded with processing happening from left to right. Undefined variables expand to a null string. Syntax errors stop processing, letting the existing error handling show the user offending line. This patch helps embedded folks who frequently create several RFS directories and then switch between them as they're tuning an initramfs. Signed-off-by: gene.sally@timesys.com Signed-off-by: Sam Ravnborg commit efddd79512cc582675004bfdf7e66585198b38f9 Author: Werner Almesberger Date: Wed Nov 12 16:39:35 2008 -0200 remove bashisms from scripts/extract-ikconfig unbashify-extract-ikconfig.patch scripts/extract-ikconfig contains a lot of gratuituous bashisms, which make it fail if /bin/sh isn't bash. This patch replaces them with regular Bourne shell constructs. Signed-off-by: Werner Almesberger Acked-by: Randy Dunlap # as file author Signed-off-by: Sam Ravnborg commit d2301249e2f9b9a3ba989703107192b538209e57 Author: Sam Ravnborg Date: Fri Nov 21 23:00:12 2008 +0100 kbuild: teach mkmakfile to be silent With this fix a "make -s" is now really silent Signed-off-by: Sam Ravnborg commit fd54f502841c1caa7cfd5af564aad1bd017371fa Author: Mike Frysinger Date: Thu Nov 6 03:31:35 2008 -0500 kbuild: use KECHO convenience echo Convert a few echos in the build system to new $(kecho) so we get correct output according to build verbosity. Signed-off-by: Mike Frysinger [sam: added kecho in a few more places for O=... builds] Signed-off-by: Sam Ravnborg commit 5410ecc0def8955ab99810c5626cc7e156991896 Author: Mike Frysinger Date: Thu Nov 6 03:31:34 2008 -0500 kbuild: introduce $(kecho) convenience echo There is a bunch of places in the build system where we do 'echo' to show some nice status lines. This means we still get output when running in silent mode. So declare a new KECHO variable that only does 'echo' when we are in a suitable verbose build mode. Signed-off-by: Mike Frysinger [sam: added Documentation] Signed-off-by: Sam Ravnborg commit d03fab43c5ba4f5fa46db73c937e9b993a531d27 Author: Mike Frysinger Date: Thu Nov 6 03:31:22 2008 -0500 kbuild: kill output in silent mode of mkcompile_h The mkcompile_h script does `echo` regardless of silent mode the make is running at, so have it respect $quiet from kbuild and only echo when not in silent mode. Signed-off-by: Mike Frysinger Signed-off-by: Sam Ravnborg commit d8672b40d3a6f17de5b5bc71d6e531d7576a856a Author: Sam Ravnborg Date: Fri Nov 21 21:50:02 2008 +0100 kbuild: expand -I in KBUILD_CPPFLAGS kbuild failed to expand include flags in KBUILD_CPPFLAGS resulting in code like this in arch Makefiles: ifeq ($(KBUILD_SRC),) KBUILD_CPPFLAGS += -Iinclude/foo else KBUILD_CPPFLAGS += -I$(srctree)/include/foo endif Move use of LINUXINCLUDE into Makefile.lib to allow us to expand -I directives of KBUILD_CPPFLAGS so we can avoid the above code. Signed-off-by: Sam Ravnborg commit 5b91c33cf295d9c235f587f29a8c0a7ae15a5320 Author: Sam Ravnborg Date: Wed Dec 3 21:22:21 2008 +0100 kbuild: fix -I option expansion with O=... builds When adding extra -I options with O=... we could end up in a situation where there were no parameters to -I. So we had a commandline that looked like this: ... -I -Wall ... This had the undesired side effect that gcc assumed "-Wall" was a path to look for include files so this options was effectively ignored. This happens only when we build the generated module.mod.c files as part of the final modules builds and is as such harmless with current kbuild. This bug was exposed when we rearranged the options to gcc. Signed-off-by: Sam Ravnborg commit dc7d7b830ee1f4111696e73d1c25da683b461548 Author: Mark Brown Date: Wed Dec 3 18:21:52 2008 +0000 ASoC: Remove platform device from DAI suspend and resume operations None of the DAIs use it except s3c2412-i2s which only uses it for dev_() printouts. Signed-off-by: Mark Brown commit 07c84d0409f3551b79d676630d8ee76bb551598d Author: Mark Brown Date: Wed Dec 3 18:17:28 2008 +0000 ASoC: Remove device from platform suspend and resume operations None of the platforms are actually using the SoC device so remove it (only atmel actually has a suspend method). Signed-off-by: Mark Brown commit 384c89e2e4cb5879b86a38414d1b3bb2b23ec8ee Author: Mark Brown Date: Wed Dec 3 17:34:03 2008 +0000 ASoC: Push debugfs files out of the snd_soc_device structure This is in preparation for the removal of struct snd_soc_device. The pop time configuration should really be a property of the card not the codec but since DAPM currently uses the codec rather than the card using the codec is fine for now. Signed-off-by: Mark Brown commit a7fe49bf01dd64b3c73ad0e172f68bd03c813d65 Author: Takashi Iwai Date: Wed Dec 3 18:26:35 2008 +0100 ALSA: Add more documentation about HD-audio driver The file can be converted to PDF via asciidoc. Signed-off-by: Takashi Iwai commit 06be64a366885569f46a7e0e50b351266d28f5fc Author: Haiying Wang Date: Thu Nov 13 07:46:12 2008 -0600 powerpc/85xx: Don't reset the MPIC for CAMP mode on MPC8572DS The flag MPIC_WANTS_RESET shouldn't be set if we are doing cooperative asymmetric MP. The second linux shouldn't reset the pic or the first one gets very confused. Signed-off-by: Haiying Wang Signed-off-by: Kumar Gala commit c64ef80b517680f1e228b2ee55e3ce7cd94c7fe0 Author: Haiying Wang Date: Fri Nov 28 16:49:39 2008 -0500 powerpc/85xx: Add localbus node in mpc8572ds dts file Also add NOR and NAND flash partitions for mpc8572ds board Signed-off-by: Haiying Wang Signed-off-by: Kumar Gala commit 965dc5fc55fa0201fd8241ba7c0efc8f96f0ec84 Author: Martyn Welch Date: Fri Nov 7 14:15:42 2008 +0000 powerpc/86xx: Basic GPIO support for GE Fanuc SBC610 Basic support for the GPIO available on the SBC610 VPX Single Board Computer from GE Fanuc (PowerPC MPC8641D). This patch adds basic support for the GPIO in the devices I/O FPGA, the GPIO functionality is exposed through the AFIX pins on the backplane, unless used by an AFIX card. This code currently does not support switching between totem-pole and open-drain outputs (when used as outputs, GPIOs default to totem-pole). The interrupt capabilites of the GPIO lines is also not currently supported. Signed-off-by: Martyn Welch Signed-off-by: Kumar Gala commit 09a3fba8c132a55f153fd65fc1085b717a6193c8 Author: Anton Vorontsov Date: Tue Nov 11 18:31:39 2008 +0300 powerpc/qe: Move cmxgcr_lock definition from the ucc.c into the qe.c With this patch we can compile the qe_lib/usb.c without the UCC support (that is, without UCC_GETH and/or SERIAL_QE). Fixes following link error (CONFIG_SMP should be =y to trigger this): arch/powerpc/sysdev/built-in.o: In function `qe_usb_clock_set': (.text+0x3cae): undefined reference to `cmxgcr_lock' make: *** [.tmp_vmlinux1] Error 1 While at it, also add missing spinlock.h includes. Signed-off-by: Anton Vorontsov Acked-By: Timur Tabi Signed-off-by: Kumar Gala commit d3a8cdab2ff2f8acbe48e18ed471b0812785e390 Author: Martyn Welch Date: Thu Nov 20 08:52:09 2008 +0000 powerpc/86xx: Add use of Epson RTX-8581 RTC to GE Fanuc SBC610 dts Adding use of newly added Epson RTX-8581 real-time clock driver to GE Fanuc SBC610's dts file and adding driver to default config. Signed-off-by: Martyn Welch Signed-off-by: Kumar Gala commit 24a99596f7465274a8e65ddd29a7d9028969b9f9 Author: Kumar Gala Date: Wed Dec 3 09:31:35 2008 -0600 powerpc/85xx: Fix compile warnings in mpc85xx_mds.c arch/powerpc/platforms/85xx/mpc85xx_mds.c: In function 'board_fixups': arch/powerpc/platforms/85xx/mpc85xx_mds.c:244: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'resource_size_t' arch/powerpc/platforms/85xx/mpc85xx_mds.c:250: warning: format '%x' expects type 'unsigned int', but argument 4 has type 'resource_size_t' Signed-off-by: Kumar Gala commit e8e1abe92fd7ea9d823a3aaf81d10e2cba593b6b Author: Steven Rostedt Date: Wed Dec 3 11:04:51 2008 -0500 ftrace: fix race in function graph during fork Impact: graph tracer race/crash fix There is a nasy race in startup of a new process running the function graph tracer. In fork.c: total_forks++; spin_unlock(¤t->sighand->siglock); write_unlock_irq(&tasklist_lock); ftrace_graph_init_task(p); proc_fork_connector(p); cgroup_post_fork(p); return p; The new task is free to run as soon as the tasklist_lock is released. This is before the ftrace_graph_init_task. If the task does run it will be using the same ret_stack and curr_ret_stack as the parent. This will cause crashes that are difficult to debug. This patch moves the ftrace_graph_init_task to just after the alloc_pid code. This fixes the above race. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 0a37119d963e876ca86912497346ec50dea2541b Author: Steven Rostedt Date: Wed Dec 3 11:04:50 2008 -0500 trace: fix output of stack trace Impact: fix to output of stack trace If a function is not found in the stack of the stack tracer, the number printed is quite strange. This fixes the algorithm to handle missing functions better. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 0f620830db0818ebe065b31c33892e8f0622e1b2 Author: Peter Gruber Date: Wed Dec 3 15:32:15 2008 +0100 ALSA: Reduce stall detection timeout in riptide.c Reduce the command timeout to 0.5sec. Should be enough to allow a working command interface but removes a RCU stall and slow resume on some revisions where the AC97 revision detection stalls in resume. Signed-off-by: Peter Gruber Signed-off-by: Takashi Iwai commit d5b26db2cfcf09f28f4839c8c3484279cd5ea5b3 Author: Kumar Gala Date: Wed Nov 19 09:35:56 2008 -0600 powerpc/85xx: Add support for SMP initialization Added 85xx specifc smp_ops structure. We use ePAPR style boot release and the MPIC for IPIs at this point. Additionally added routines for secondary cpu entry and initializtion. Signed-off-by: Andy Fleming Signed-off-by: Trent Piepho Signed-off-by: Kumar Gala commit 06b90969a7564fad888f67e9f7f4c3a51a16ef1d Author: Kumar Gala Date: Mon Dec 1 14:38:32 2008 -0600 powerpc/85xx: minor head_fsl_booke.S cleanup Removed unused branch labels Signed-off-by: Kumar Gala commit b3898895355f73973eb3aef3489e999d3fb8e2bc Author: Trent Piepho Date: Wed Nov 19 03:13:14 2008 -0800 powerpc: Better setup of boot page TLB entry The initial TLB mapping for the kernel boot didn't set the memory coherent attribute, MAS2[M], in SMP mode. If this code supported booting a secondary processor, which it doesn't yet, but if it did, then when a secondary processor boots, it would probably signal the primary processor by setting a variable called something like __secondary_hold_acknowledge. However, due to the lack of the M bit, the primary processor would not snoop the transaction (even if a transaction were broadcast). If primary CPU's L1 D-cache had a copy, it would not be flushed and the CPU would never see the ack. Which would have resulted in the primary CPU spinning for a long time, perhaps a full second before it gives up, while it would have waited for the ack from the secondary CPU that it wouldn't have been able to see because of the stale cache. The value of MAS2 for the boot page TLB1 entry is a compile time constant, so there is no need to calculate it in powerpc assembly language. Also, from the MPC8572 manual section 6.12.5.3, "Bits that represent offsets within a page are ignored and should be cleared." Existing code didn't clear them, this code does. The same when the page of KERNELBASE is found; we don't need to use asm to mask the lower 12 bits off. In the code that computes the address to rfi from, don't hard code the offset to 24 bytes, but have the assembler figure that out for us. Signed-off-by: Trent Piepho Signed-off-by: Kumar Gala commit 6a800f36acd5bf06b5fe2cb27c4d0524d60c3df5 Author: Liu Yu Date: Tue Oct 28 11:50:21 2008 +0800 powerpc: Add SPE/EFP math emulation for E500v1/v2 processors. This patch add the handlers of SPE/EFP exceptions. The code is used to emulate float point arithmetic, when MSR(SPE) is enabled and receive EFP data interrupt or EFP round interrupt. This patch has no conflict with or dependence on FP math-emu. The code has been tested by TestFloat. Now the code doesn't support SPE/EFP instructions emulation (it won't be called when receive program interrupt), but it could be easily added. Signed-off-by: Liu Yu Signed-off-by: Kumar Gala commit 033b8a333c66e0a7dc63132c1bd65175dc98bc25 Author: Liu Yu Date: Tue Oct 28 11:50:20 2008 +0800 powerpc/math-emu: Remove redundant 'ret' FP_DECL_EX is already used, so ret is redundant. And FP_SET_EXCEPTION will add status into return value. Signed-off-by: Liu Yu Signed-off-by: Kumar Gala commit 463a8c01e153c06480b862d83d6a71bf5666a577 Author: Liu Yu Date: Tue Oct 28 11:50:19 2008 +0800 powerpc/math-emu: Adopt new version of _FP_CHOOSENAN Move to using the same macro definition for _FP_CHOOSENAN as s390, sh, sparc32/64. The original author didn't understand this and matched what sparc64 was doing and they have updated to this definition. Signed-off-by: Liu Yu Signed-off-by: Kumar Gala commit cf03033658739accd24f18f864107151a2e9a796 Author: Liu Yu Date: Tue Oct 28 11:50:18 2008 +0800 powerpc/math-emu: Fix single float point division bug PowerPC float point division emulation is derived from gcc. I reported this problem on gcc maillist and got this reply: http://gcc.gnu.org/ml/gcc/2008-03/msg00543.html Since UDIV_NEEDS_NORMALIZATION is not used by kernel, we should use _FP_DIV_MEAT_1_udiv_norm to make sure the single float point is normalized before udiv_qrnnd. Signed-off-by: Liu Yu Signed-off-by: Kumar Gala commit 55b9121b4295a8260e52dd78327f1edd1e34feb2 Author: Kumar Gala Date: Tue Oct 28 08:55:05 2008 -0500 powerpc: Remove unncessary SPE related compiler flag After testing of various compiler flag combinations by Nate Case it was determined that -mabi=no-spe has no impact on the compiler generating SPE instructions. Only -mno-spe and -mspe=no do. Signed-off-by: Kumar Gala commit 0640f84fac8a8aa8e7911c950cd9a4b0199711f6 Merge: 8c2f767... ff7a326... Author: Takashi Iwai Date: Wed Dec 3 14:43:14 2008 +0100 Merge branch 'topic/hda-modularize' into topic/hda commit 6f2a974bfc8d3be7a30674c71e2fef003b39a8d2 Author: Daniel Mack Date: Wed Dec 3 11:44:17 2008 +0100 ASoC: tlv320aic3x: headset/button press support - Add aic3x_set_headset_detection() function to define the headset detection mode for tlv32aic3x chips - added aic3x_button_pressed() - Read from the real-time registers in aic3x_headset_detected() to query headset presence without an occured interrupt Signed-off-by: Daniel Mack Signed-off-by: Mark Brown commit 4b4fffdd9d179677cb030e97869286b62df25adc Author: Mark Brown Date: Wed Dec 3 11:21:08 2008 +0000 ASoC: Fix WM8903 right mixer bypass path Signed-off-by: Mark Brown commit 5920b45303291057fef827f5bdafe04001c1bbae Author: Grazvydas Ignotas Date: Tue Dec 2 20:48:58 2008 +0200 ASoC: TWL4030: Add input selection and gain controls The TWL4030 codec device has two ADCs. Both of them can have several inputs routed to them, but TRM says that only one source can be selected for every ADC, even though every source has a dedicated bit in the registers. This patch adds input source controls. It modifies default register values to have no inputs selected and ADCs disabled. When some input is selected, control handlers enable apropriate input amplifier and ADC. If a microphone is selected, bias power is automatically enabled. When some input is deselected, unused chip parts are disabled. Microphone and line input recording tested on OMAP3 pandora board. Signed-off-by: Grazvydas Ignotas Signed-off-by: Mark Brown commit 7947cf0dd4b6a2bb06c57971502fb81c76a66f2d Author: Hendrik Brueckner Date: Tue Nov 18 01:28:28 2008 +0000 hvc_console: Always schedule resize work on resize The test to check for a new winsize runs out-of-sync with the underlying tty. After a tty has been released and initialized again, the winsize might differ between the tty and the hp struct. The solution is to simply remove the check and always schedule the resize work. Signed-off-by: Hendrik Brueckner Acked-by: Christian Borntraeger Signed-off-by: Paul Mackerras commit 3d26825ec03f623f20ba860e6e6113ab2d0bb0f1 Author: roel kluin Date: Tue Dec 2 11:21:43 2008 +0000 powerpc: Make open count variables signed in hvcs/hvsi/hvc_console Otherwise the tests for count < 0 will never be true. Signed-off-by: Roel Kluin Signed-off-by: Paul Mackerras commit dc42149fccda63a5d2fa4457808c3489a5111c5e Author: Nicolas Palix Date: Tue Dec 2 03:38:55 2008 +0000 drivers/hvc: Add missing of_node_put of_node_put is needed before discarding a value received from of_find_node_by_name, e.g., in error handling code or when the device node is no longer used. The semantic match that catches the bug is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression struct device_node *n; position p1, p2; statement S1,S2; expression E,E1; expression *ptr != NULL; @@ ( if (!(n@p1 = of_find_node_by_name(...))) S1 | n@p1 = of_find_node_by_name(...) ) <... when != of_node_put(n) when != if (...) { <+... of_node_put(n) ...+> } when != true !n || ... when != n = E when != E = n if (!n || ...) S2 ...> ( return \(0\|<+...n...+>\|ptr\); | return@p2 ...; | n = E1 | E1 = n ) @script:python@ p1 << r.p1; p2 << r.p2; @@ print "* file: %s of_find_node_by_name %s return %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Nicolas Palix Signed-off-by: Julia Lawall Acked-by: Stephen Rothwell Signed-off-by: Paul Mackerras commit b908b53d580c3e9aba81ebe3339c5b7b4fa8031d Author: Anton Vorontsov Date: Mon Dec 1 06:30:04 2008 +0000 of/gpio: Implement of_get_gpio_flags() This adds a new function, of_get_gpio_flags, which is like of_get_gpio(), but accepts a new "flags" argument. This new function will be used by the drivers that need to retrieve additional GPIO information, such as active-low flag. Also, this changes the default ("simple") .xlate routine to warn about bogus (< 2) #gpio-cells usage: the second cell should always be present for GPIO flags. Signed-off-by: Anton Vorontsov Signed-off-by: Paul Mackerras commit 2fd091f3eebc5accefa5f77ff04436982765d15c Author: roel kluin Date: Sat Nov 29 01:17:27 2008 +0000 powerpc/macintosh: Fix unsigned check in smu_sat_get_sdb_partition() i2c_smbus_read_word_data() returns a s32, which may be negative but unsigned len cannot be negative. Signed-off-by: Roel Kluin Signed-off-by: Paul Mackerras commit e6a437eba09f1c3505bedf7a9a9766a878ca09fa Author: Anton Vorontsov Date: Fri Nov 28 09:13:45 2008 +0000 of/i2c: Fill the archdata for I2C devices For I2C devices we just setting the node pointer in the archdata. This is needed so that the I2C devices could find their OF tree nodes. Signed-off-by: Anton Vorontsov Acked-by: Grant Likely Signed-off-by: Paul Mackerras commit 3f3b1632022fcc8317fa3b3c1236471415b3a6b8 Author: Anton Vorontsov Date: Fri Nov 28 09:13:23 2008 +0000 powerpc and sparc: Introduce dev_archdata node accessors The name of the device_node field differ across the platforms, so we have to implement inlined accessors. This is needed to avoid ugly #ifdef in the generic code. Signed-off-by: Anton Vorontsov Acked-by: David S. Miller Acked-by: Grant Likely Signed-off-by: Paul Mackerras commit a0e2f9f4a2487572803d5a00c7302db30e4c60d3 Author: Sonny Rao Date: Sun Nov 9 14:15:11 2008 +0000 powerpc/BSR: Support multiple OF-node description of BSR This adds support for multiple BSR nodes in the OF device tree. Previously, the BSR driver only supported a single OF node describing a BSR. Apparently when an LPAR is set to use "all system resources" the BSR appears as a single node, but when it is handed out in pieces, each 8 byte piece gets its own node. So, this keeps a list of BSR devices instead of the array and includes all nodes. Also, this makes the code be more inclusive of what BSR devices we accept by only checking compatibility and not the device name property (which might change in the future versions of BSR). Signed-off-by: Sonny Rao Signed-off-by: Paul Mackerras commit 6358d6cb328a772eb6f02c870da61709d539480f Author: Sebastien Dugue Date: Thu Nov 27 01:19:18 2008 +0000 powerpc/ibmebus: Get rid of the IRQ mapping in ibmebus_free_irq() ibmebus_free_irq() frees the IRQ but does not remove its mapping, which results in stale entries in the map. This fixes it by adding a call to irq_dispose_mapping() in ibmebus_free_irq(). Signed-off-by: Sebastien Dugue Cc: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 786b32f892dc341b607445bdef29d8e41a840925 Author: Julia Lawall Date: Sun Nov 23 00:48:56 2008 +0000 powerpc: Eliminate NULL test and memset after alloc_bootmem As noted by Akinobu Mita in commit b1fceac2 ("x86: remove unnecessary memset and NULL check after alloc_bootmem()"), alloc_bootmem and related functions never return NULL and always return a zeroed region of memory. Thus a NULL test or memset after calls to these functions is unnecessary. This was fixed using the following semantic patch. (http://www.emn.fr/x-info/coccinelle/) // @@ expression E; statement S; @@ E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\|alloc_bootmem_node\|alloc_bootmem_low_pages_node\|alloc_bootmem_pages_node\)(...) ... when != E ( - BUG_ON (E == NULL); | - if (E == NULL) S ) @@ expression E,E1; @@ E = \(alloc_bootmem\|alloc_bootmem_low\|alloc_bootmem_pages\|alloc_bootmem_low_pages\|alloc_bootmem_node\|alloc_bootmem_low_pages_node\|alloc_bootmem_pages_node\)(...) ... when != E - memset(E,0,E1); // Signed-off-by: Julia Lawall Signed-off-by: Paul Mackerras commit 15e09c0ecaab4a1b4a7ed69db536c38948b92279 Author: Becky Bruce Date: Thu Nov 20 06:49:16 2008 +0000 powerpc: Add sync_*_for_* to dma_ops We need to swap these out once we start using swiotlb, so add them to dma_ops. Create CONFIG_PPC_NEED_DMA_SYNC_OPS Kconfig option; this is currently enabled automatically if we're CONFIG_NOT_COHERENT_CACHE. In the future, this will also be enabled for builds that need swiotlb. If PPC_NEED_DMA_SYNC_OPS is not defined, the dma_sync_*_for_* ops compile to nothing. Otherwise, they access the dma_ops pointers for the sync ops. This patch also changes dma_sync_single_range_* to actually sync the range - previously it was using a generous dma_sync_single. dma_sync_single_* is now implemented as a dma_sync_single_range with an offset of 0. Signed-off-by: Becky Bruce Signed-off-by: Paul Mackerras commit c4d04be11f99cc9ce4e3801a5da235727db704a9 Author: Johannes Berg Date: Thu Nov 20 03:24:07 2008 +0000 powerpc: Allow the max stack trace depth to be configured On my screen, when something crashes, I only have space for maybe 16 functions of the stack trace before the information above it scrolls off the screen. It's easy to hack the kernel to print out only that much, but it's harder to remember to do it. This introduces a config option for it so that I can keep the setting in my config. Signed-off-by: Johannes Berg Signed-off-by: Paul Mackerras commit 0186f47e703fb7aa14b54459d642ef5374b3a685 Author: Kumar Gala Date: Wed Nov 19 12:50:04 2008 +0000 powerpc: Use RCU based pte freeing mechanism for all powerpc Refactor the RCU based pte free code that was used on ppc64 to be used on all powerpc. Additionally refactor pte_free() & pte_free_kernel() into common code between ppc32 & ppc64. Signed-off-by: Kumar Gala Signed-off-by: Paul Mackerras commit df3b8611554e389e703fa753540289874fa5126c Author: Kumar Gala Date: Wed Nov 19 05:53:24 2008 +0000 powerpc: Add a local_flush_tlb_page to handle kmap_atomic invalidates The tlb invalidates in kmap_atomic/kunmap_atomic can be called from IRQ context, however they are only local invalidates (on the processor that the kmap was called on). In the future we want to use IPIs to do tlb invalidates this causes issue since flush_tlb_page() is considered a broadcast invalidate. Add local_flush_tlb_page() as a non-broadcast invalidate and use it in kmap_atomic() since we don't have enough information in the flush_tlb_page() call to determine its local. Signed-off-by: Kumar Gala Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit f4f3a1261ad70988ad45614ebc87e553143a332b Author: Kumar Gala Date: Wed Nov 19 05:53:04 2008 +0000 powerpc: hash_page_sync should only be used on SMP & STD_MMU_32 Clean up the ifdefs so we only use hash_page_sync if we have CONFIG_SMP && CONFIG_PPC_STD_MMU_32. Signed-off-by: Kumar Gala Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 4ee5f55175a85fc179c93f00dd7f6a99c896f4d6 Author: Benjamin Herrenschmidt Date: Thu Nov 27 20:05:05 2008 +0000 powerpc: Fix ppc32 mm_struct CPU tracking in SMP The 32-bit hash code didn't need it so far so we don't update mm->cpu_vm_mask on context switch. This however will break when we merge the RCU based page table freeing patch and other upcoming 32-bit embedded SMP work, so this adds the update. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 1b98326b91eb9eea346945779e1f245aa66b17ce Author: Kumar Gala Date: Wed Nov 19 04:39:53 2008 +0000 powerpc: Add MSR[CE, DE] to the MSR bits we print on show_regs() Signed-off-by: Kumar Gala Signed-off-by: Paul Mackerras commit 764f3b95131a7ce5c992e3d00caf590fcada2f7b Author: Ingo Molnar Date: Wed Dec 3 10:33:58 2008 +0100 tracing/function-graph-tracer: enabled by default CONFIG_FUNCTION_GRAPH_TRACER depends on FUNCTION_TRACER already, (turning it non-default) so it so making it default-n is pointless. So enable it by default - it's a nice extension of the function tracer. Signed-off-by: Ingo Molnar commit 527491885554002837b5742202adc0ab5f536e54 Merge: cea555d... 2434bbb... Author: Paul Mackerras Date: Wed Dec 3 20:11:06 2008 +1100 Merge branch 'merge' commit 29fa0b301bc823016d1a3bed41c36a8977ef9947 Author: Wei Yongjun Date: Wed Dec 3 00:33:09 2008 -0800 xfrm: Cleanup for unlink SPD entry Used __xfrm_policy_unlink() to instead of the dup codes when unlink SPD entry. Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 22d55328b7d27694718f5d64a53d2bddbbe173a5 Merge: 3f8c6c9... d5654ef... Author: David S. Miller Date: Wed Dec 3 00:29:24 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit 166d3c7994d79ab3f78f420607283361ff5cce79 Author: Frederic Weisbecker Date: Wed Dec 3 02:32:12 2008 +0100 tracing/function-graph-tracer: improve duration output Impact: better trace output of duration for long calls The old duration output didn't exceeded 9999.999 us to fit the column and the nanosecs were always 3 numbers. As Ingo suggested, it's better to have the whole microseconds elapsed time and shift the nanosecs precision if needed to fit the maximum 7 numbers. And usec need more number, the case should be rare and important enough to break a bit the column alignment to show it. So, depending of the duration value, we now have these patterns: u.nnn us uu.nnn us uuu.nnn us uuuu.nnn us uuuuu.nn us uuuuuu.n us uuuuuuuu..... us Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 11e84acc400921743cc8d488e4a265cd98a655c7 Author: Frederic Weisbecker Date: Wed Dec 3 02:30:37 2008 +0100 tracing/function-graph-tracer: display unified style cmdline and pid Impact: extend function-graph output: let one know which thread called a function This patch implements a helper function to print the couple cmdline/pid. Its output is provided during task switching and on each row if the new "funcgraph-proc" defualt-off option is set through trace_options file. The output is center aligned and never exceeds 14 characters. The cmdline is truncated over 7 chars. But note that if the pid exceeds 6 characters, the column will overflow (but the situation is abnormal). Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 62679efe0a5f02987a621942afc5979a80a6ca5a Author: Steven Rostedt Date: Tue Dec 2 23:50:06 2008 -0500 ftrace: add checks on ret stack in function graph Import: robustness checks Add more checks in the function graph code to detect errors and perhaps print out better information if a bug happens. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit e49dc19c6a19ea112fcb94b7c62ec62cdd5c08aa Author: Steven Rostedt Date: Tue Dec 2 23:50:05 2008 -0500 ftrace: function graph return for function entry Impact: feature, let entry function decide to trace or not This patch lets the graph tracer entry function decide if the tracing should be done at the end as well. This requires all function graph entry functions return 1 if it should trace, or 0 if the return should not be traced. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 7ee991fbc6f947e9b04f29c9c6c1d057d0671a16 Author: Steven Rostedt Date: Tue Dec 2 23:50:04 2008 -0500 ftrace: print real return in dumpstack for function graph Impact: better dumpstack output I noticed in my crash dumps and even in the stack tracer that a lot of functions listed in the stack trace are simply return_to_handler which is ftrace graphs way to insert its own call into the return of a function. But we lose out where the actually function was called from. This patch adds in hooks to the dumpstack mechanism that detects this and finds the real function to print. Both are printed to let the user know that a hook is still in place. This does give a funny side effect in the stack tracer output: Depth Size Location (80 entries) ----- ---- -------- 0) 4144 48 save_stack_trace+0x2f/0x4d 1) 4096 128 ftrace_call+0x5/0x2b 2) 3968 16 mempool_alloc_slab+0x16/0x18 3) 3952 384 return_to_handler+0x0/0x73 4) 3568 -240 stack_trace_call+0x11d/0x209 5) 3808 144 return_to_handler+0x0/0x73 6) 3664 -128 mempool_alloc+0x4d/0xfe 7) 3792 128 return_to_handler+0x0/0x73 8) 3664 -32 scsi_sg_alloc+0x48/0x4a [scsi_mod] As you can see, the real functions are now negative. This is due to them not being found inside the stack. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 044fa782ebb9472cf5253e95d9a625fd4c0bdd99 Author: Steven Rostedt Date: Tue Dec 2 23:50:03 2008 -0500 ring-buffer: change "page" variable names to "bpage" Impact: clean up Andrew Morton pointed out that the kernel convention of a variable named page should be of type page struct. The ring buffer uses a variable named "page" for a pointer to something else. This patch converts those to be called "bpage" (as in "buffer page"). Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 14a866c567e040ccf6240d68b083dd1dbbde63e6 Author: Steven Rostedt Date: Tue Dec 2 23:50:02 2008 -0500 ftrace: add ftrace_graph_stop() Impact: new ftrace_graph_stop function While developing more features of function graph, I hit a bug that caused the WARN_ON to trigger in the prepare_ftrace_return function. Well, it was hard for me to find out that was happening because the bug would not print, it would just cause a hard lockup or reboot. The reason is that it is not safe to call printk from this function. Looking further, I also found that it calls unregister_ftrace_graph, which grabs a mutex and calls kstop machine. This would definitely lock the box up if it were to trigger. This patch adds a fast and safe ftrace_graph_stop() which will stop the function tracer. Then it is safe to call the WARN ON. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit bb4304c71c97bf727ec43cd2f195c2c237c27fd3 Author: Steven Rostedt Date: Tue Dec 2 15:34:09 2008 -0500 ftrace: have function graph use mcount caller address Impact: consistency change for function graph This patch makes function graph record the mcount caller address the same way the function tracer does. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 347fdd9dd4e5d3f3a4e415925c35bdff1d59c3a9 Author: Steven Rostedt Date: Tue Dec 2 15:34:08 2008 -0500 ftrace: clean up function graph asm Impact: clean up There exists macros for x86 asm to handle x86_64 and i386. This patch updates function graph asm to use them. Signed-off-by: Steven Rostedt Acked-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 8789a9e7df6bf9b93739c4c7d4e380725bc9e936 Author: Steven Rostedt Date: Tue Dec 2 15:34:07 2008 -0500 ring-buffer: read page interface Impact: new API to ring buffer This patch adds a new interface into the ring buffer that allows a page to be read from the ring buffer on a given CPU. For every page read, one must also be given to allow for a "swap" of the pages. rpage = ring_buffer_alloc_read_page(buffer); if (!rpage) goto err; ret = ring_buffer_read_page(buffer, &rpage, cpu, full); if (!ret) goto empty; process_page(rpage); ring_buffer_free_read_page(rpage); The caller of these functions must handle any waits that are needed to wait for new data. The ring_buffer_read_page will simply return 0 if there is no data, or if "full" is set and the writer is still on the current page. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit abc9b56d66fbd4d93302ef4bf6fa726e1b8255f9 Author: Steven Rostedt Date: Tue Dec 2 15:34:06 2008 -0500 ring-buffer: move some metadata into buffer page Impact: get ready for splice changes This patch moves the commit and timestamp into the beginning of each data page of the buffer. This change will allow the page to be moved to another location (disk, network, etc) and still have information in the page to be able to read it. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit a5e25883a445dce94a087ca479b21a5959cd5c18 Author: Steven Rostedt Date: Tue Dec 2 15:34:05 2008 -0500 ftrace: replace raw_local_irq_save with local_irq_save Impact: fix for lockdep and ftrace The raw_local_irq_save/restore confuses lockdep. This patch converts them to the local_irq_save/restore variants. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit dfdc5437bd62dd6a26961e27f26b671374749875 Merge: f0461d0... 061e41f... 878719e... Author: Ingo Molnar Date: Wed Dec 3 08:54:47 2008 +0100 Merge commit 'v2.6.28-rc7'; branch 'x86/dumpstack' into tracing/ftrace Merge x86/dumpstack into tracing/ftrace because upcoming ftrace changes depend on cleanups already in x86/dumpstack. Also merge to latest upstream -rc. commit f0461d0146ee30927bc7efa2ae24ea8c6693b725 Merge: 66eafeb... 48d68b2... Author: Ingo Molnar Date: Wed Dec 3 08:49:21 2008 +0100 Merge branches 'tracing/ftrace' and 'tracing/function-graph-tracer' into tracing/core commit 181de82ee3ffda1175f89d50c991dae31b79280c Author: FUJITA Tomonori Date: Wed Dec 3 14:53:04 2008 +0900 x86: remove dead BIO_VMERGE_BOUNDARY definition Impact: cleanup, remove dead code The block layer dropped the virtual merge feature (b8b3e16cfe6435d961f6aaebcfd52a1ff2a988c5). BIO_VMERGE_BOUNDARY definition is meaningless now. Signed-off-by: FUJITA Tomonori Acked-by: Jens Axboe Signed-off-by: Ingo Molnar commit 6083aa485c86933ee444dc2242270d37ea4664cb Merge: dcb7731... 93093d0... Author: Ingo Molnar Date: Wed Dec 3 08:25:56 2008 +0100 Merge branch 'x86/io' into x86/iommu Merge x86/io into x86/iommu due to a small patch conflict in io.h. commit 3f8c6c9c7739d18e4b75902fdcbf6c3ba98dc123 Merge: aa2ba5f... 9a5df92... Author: David S. Miller Date: Tue Dec 2 22:38:02 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6 commit aa2ba5f1082dc705745899584aac8416d710c056 Merge: 6802454... f6f7b52... Author: David S. Miller Date: Tue Dec 2 19:50:27 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/ixgbe/ixgbe_main.c drivers/net/smc91x.c commit 68024541e2e5a8f35e281daaa5068a29e2a538a5 Merge: ca17584... 39da581... Author: David S. Miller Date: Tue Dec 2 15:05:06 2008 -0800 Merge branch 'master' of ssh://master.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus commit ca17584bf2ad1b1e37a5c0e4386728cc5fc9dabc Author: Stephen Hemminger Date: Tue Dec 2 15:00:28 2008 -0800 mac8390: update to net_device_ops Another related 8390 driver. Since this is for nubus, not sure if anyone still has the hardware? Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b9a9b4b0429d0c0e4655d531a57a6424d972433c Author: Stephen Hemminger Date: Tue Dec 2 14:52:25 2008 -0800 etherh: build fix for net-next Fix build of ARM etherh driver with new net_device_ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit dcb7731a185efbf3d800618d874af99895df5afb Author: Joerg Roedel Date: Tue Dec 2 20:16:03 2008 +0100 x86: fix broken flushing in GART nofullflush path Impact: remove stale IOTLB entries In the non-default nofullflush case the GART is only flushed when next_bit wraps around. But it can happen that an unmap operation unmaps memory which is behind the current next_bit location. If these addresses are reused it may result in stale GART IO/TLB entries. Fix this by setting the GART next_bit always behind an unmapped location. Signed-off-by: Joerg Roedel Signed-off-by: Ingo Molnar commit 87689d567a45f80416feea0a2aa6d3a2a6b8963a Author: Mark Brown Date: Tue Dec 2 16:01:14 2008 +0000 ASoC: Push platform registration down into the card As part of the deprecation of snd_soc_device push the registration of the platform down into the card structure. Signed-off-by: Mark Brown commit 96841bae6ebfede07294447ad2de9e6385ae9fb5 Author: Mark Brown Date: Tue Dec 2 15:15:50 2008 +0000 ALSA: ac97 - Include ac97_codec.h for ac97_bus_type declaration This fixes a sparse warning caused by the lack of a connection with the prototype for ac97_bus_type. Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 6308419a199eed66086cd756ab8dc81b88d54a6b Author: Mark Brown Date: Tue Dec 2 15:08:03 2008 +0000 ASoC: Push workqueue data into snd_soc_card ASoC v2 does not use the struct snd_soc_device at runtime, using struct snd_soc_card as the root of the card. Begin removing data from snd_soc_device by pushing the workqueue data into snd_soc_card, using a backpointer to the snd_soc_device to keep things going for the time being. Signed-off-by: Mark Brown commit 39da5814db81e8fe9782ae5ea24c0fdfcf2adc96 Author: Mark McLoughlin Date: Wed Nov 26 13:58:11 2008 +0000 virtio_net: large tx MTU support We don't really have a max tx packet size limit, so allow configuring the device with up to 64k tx MTU. Signed-off-by: Mark McLoughlin Signed-off-by: Rusty Russell commit 8daa19051e1c7369c89ace7b18e74fe1f55dfa29 Author: Niels de Vos Date: Mon Dec 1 14:13:53 2008 -0800 x86, apm: remove CONFIG_APM_REAL_MODE_POWER_OFF in favor of a kernel parameter Remove CONFIG_APM_REAL_MODE_POWER_OFF like CONFIG_APM_POWER_OFF which has been done for linux-2.2.14pre8 (http://lkml.org/lkml/1999/11/23/3). Re-introducing CONFIG_APM_POWER_OFF got nack-ed. Stephen didn't bother to remove CONFIG_APM_REAL_MODE_POWER_OFF, let's get rid of it now. Reference: http://lkml.org/lkml/2008/5/7/97 Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar commit 48d68b20d00865035b8b65e69af343d0f53fac9d Author: Frederic Weisbecker Date: Tue Dec 2 00:20:39 2008 +0100 tracing/function-graph-tracer: support for x86-64 Impact: extend and enable the function graph tracer to 64-bit x86 This patch implements the support for function graph tracer under x86-64. Both static and dynamic tracing are supported. This causes some small CPP conditional asm on arch/x86/kernel/ftrace.c I wanted to use probe_kernel_read/write to make the return address saving/patching code more generic but it causes tracing recursion. That would be perhaps useful to implement a notrace version of these function for other archs ports. Note that arch/x86/process_64.c is not traced, as in X86-32. I first thought __switch_to() was responsible of crashes during tracing because I believed current task were changed inside but that's actually not the case (actually yes, but not the "current" pointer). So I will have to investigate to find the functions that harm here, to enable tracing of the other functions inside (but there is no issue at this time, while process_64.c stays out of -pg flags). A little possible race condition is fixed inside this patch too. When the tracer allocate a return stack dynamically, the current depth is not initialized before but after. An interrupt could occur at this time and, after seeing that the return stack is allocated, the tracer could try to trace it with a random uninitialized depth. It's a prevention, even if I hadn't problems with it. Signed-off-by: Frederic Weisbecker Cc: Steven Rostedt Cc: Tim Bird Signed-off-by: Ingo Molnar commit 16950e09cf07b54abb78dd09f8ef3c85c6bdc9de Author: Takashi Iwai Date: Tue Dec 2 09:31:16 2008 +0100 ALSA: emu10k1 - Add capture boost mixer switch for Audigy Due to the conversion (drop) from 24bit in the DSP to 16bit in AC97, the maximum capture level on Audigy seems lower than it could be. This patch adds a workaround to enable the artificial capture boost switch. When this switch is on, the whole analog capature level is boost up. However, this results in the lower capture resolution. Signed-off-by: Takashi Iwai commit 66eafebc1086014709dc38f52ddcb3d67d9b346c Author: Liming Wang Date: Tue Dec 2 10:33:08 2008 +0800 function trace: fix a bug of single thread function trace Impact: fix "no output from tracer" bug caused by ftrace_update_pid_func() When disabling single thread function trace using "echo -1 > set_ftrace_pid", the normal function trace has to restore to original function, otherwise the normal function trace will not work well. Without this commit, something like below: $ ps |grep 850 850 root 2556 S -/bin/sh $ echo 850 > /debug/tracing/set_ftrace_pid $ echo function > /debug/tracing/current_tracer $ echo 1 > /debug/tracing/tracing_enabled $ sleep 1 $ echo 0 > /debug/tracing/tracing_enabled $ cat /debug/tracing/trace_pipe |wc -l 59704 $ echo -1 > /debug/tracing/set_ftrace_pid $ echo 1 > /debug/tracing/tracing_enabled $ sleep 1 $ echo 0 > /debug/tracing/tracing_enabled $ more /debug/tracing/trace_pipe <====== nothing output now! it should output trace record. Signed-off-by: Liming Wang Signed-off-by: Ingo Molnar commit 222658e08f72cd539d01f3aabdc258c596f487e2 Merge: 74bf3ca... 65c6dc6... c072c24... d51090b... a838c2e... f1eecf0... 604094f... f08340c... Author: Ingo Molnar Date: Tue Dec 2 09:20:44 2008 +0100 Merge branches 'tracing/branch-tracer', 'tracing/ftrace', 'tracing/function-graph-tracer', 'tracing/markers', 'tracing/powerpc', 'tracing/stack-tracer' and 'tracing/tracepoints' into tracing/core commit 74bf3cabc306f31ddd02f2c1b0540a6cfcacc593 Merge: c7cc773... 4f5a7f4... Author: Ingo Molnar Date: Tue Dec 2 09:20:29 2008 +0100 Merge branch 'tracing/urgent' into tracing/core Conflicts: kernel/trace/ring_buffer.c commit 6976a1d6c222c50ac93d2273b9cf57e6fd047e59 Author: Eric Dumazet Date: Mon Dec 1 23:37:17 2008 -0800 net: percpu_counter_inc() should not be called in BH-disabled section Based upon a lockdep report by Alexey Dobriyan. I checked all per_cpu_counter_xxx() usages in network tree, and I think all call sites are BH enabled except one in inet_csk_listen_stop(). commit dd24c00191d5e4a1ae896aafe33c6b8095ab4bd1 (net: Use a percpu_counter for orphan_count) replaced atomic_t orphan_count to a percpu_counter. atomic_inc()/atomic_dec() can be called from any context, while percpu_counter_xxx() should be called from a consistent state. For orphan_count, this context can be the BH-enabled one. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 422d9cdcb85b3622d08a590fed66021af7aea333 Author: Gerrit Renker Date: Mon Dec 1 23:34:01 2008 -0800 dccp: Feature activation handlers This patch provides the post-processing of feature negotiation state, after the negotiation has completed. To this purpose, handlers are used and added to the dccp_feat_table. Each handler is passed a boolean flag whether the RX or TX side of the feature is meant. Several handlers are provided already, new handlers can easily be added. The initialisation is now fully dynamic, i.e. CCIDs are activated only after the feature negotiation. The integration of this dynamic activation is done in the subsequent patches. Thanks to Wei Yongjun for pointing out the necessity of skipping over empty Confirm options while copying the negotiated feature values. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit b1ad00422ecba0449f8e3a8f2ec9267bc994bf8f Author: Gerrit Renker Date: Mon Dec 1 23:33:18 2008 -0800 dccp: Processing Confirm options Analogous to the previous patch, this adds code to interpret incoming Confirm feature-negotiation options. Both functions operate on the feature-negotiation list of either the request_sock (server) or the dccp_sock (client). Thanks to Wei Yongjun for pointing out that it is overly restrictive to check the entire list of confirmed SP values. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit e77b8363b2ea7c0d89919547c1a8b0562f298b57 Author: Gerrit Renker Date: Mon Dec 1 23:32:35 2008 -0800 dccp: Process incoming Change feature-negotiation options This adds/replaces code for processing incoming ChangeL/R options. The main difference is that: * mandatory FN options are now interpreted inside the function (there are too many individual cases to do this externally); * the function returns an appropriate Reset code or 0, which is then used to fill in the data for the Reset packet. Old code, which is no longer used or referenced, has been removed. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit 75757a7d0c54f8fdd414c74a6005d275032b0115 Author: Gerrit Renker Date: Mon Dec 1 23:31:04 2008 -0800 dccp: Preference list reconciliation This provides two functions to * reconcile preference lists (with appropriate return codes) and * reorder the preference list if successful reconciliation changed the preferred value. The patch also removes the old code for processing SP/NN Change options, since new code to process these is mostly there already; related references have been commented out. The code for processing Change options follows in the next patch. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 8b7b6c75c6387527b195bb69100182288da94f84 Author: Gerrit Renker Date: Mon Dec 1 23:29:30 2008 -0800 dccp: Integrate feature-negotiation insertion code The patch implements insertion of feature negotiation at the server (listening and request socket) and the client (connecting socket). In dccp_insert_options(), several statements have been grouped together now to achieve (it is hoped) better efficiency by reducing the number of tests each packet has to go through: - Ack Vectors are sent if the packet is neither a Data or a Request packet; - a previous issue is corrected - feature negotiation options are allowed on DataAck packets (5.8). Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 0971d17ca3d80f61863f4750091a64448bf91600 Author: Gerrit Renker Date: Mon Dec 1 23:27:31 2008 -0800 dccp: Insert feature-negotiation options into skb This patch replaces the earlier insertion routine from options.c, so that code specific to feature negotiation can remain in feat.c. This is possible by calling a function already existing in options.c. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 7c37d74474c8ee8ddcd5a2d2a9571d4a1290c844 Author: Ralph Campbell Date: Mon Dec 1 20:59:08 2008 -0800 IB/ipath: Improve UD loopback performance by allocating temp array only once Receive work queue entries are checked for L_Key validity, and pointers to the memory region structure are saved in an allocated structure. For UD loopback packets, this structure is allocated and freed for each packet. This patch changes that to allocate/free during QP creation and destruction. Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 64f22fa17c1a531e682ebc882566856ea5718495 Author: Michael Ellerman Date: Mon Dec 1 20:59:07 2008 -0800 IB/ipath: Fix pointer-to-pointer thinko in ipath_fs.c The return from lookup_one_len() is assigned to *dentry, so that's what we should be checking with IS_ERR(). Signed-off-by: Michael Ellerman Signed-off-by: Roland Dreier commit 75c21ae9aa75b0452318d05f737ea838672137f5 Author: Joachim Fenkes Date: Mon Dec 1 20:58:57 2008 -0800 IB/ehca: Fix locking for shca_list_lock shca_list_lock is taken from softirq context in ehca_poll_eqs, so we need to lock IRQ safe elsewhere. Found by lockdep. Signed-off-by: Michael Ellerman Signed-off-by: Joachim Fenkes Signed-off-by: Roland Dreier commit 0ecfe7987855d21c2a89ffe003ddf0ee11b42d47 Author: Mark Brown Date: Mon Dec 1 17:59:25 2008 +0000 ASoC: Don't free static data in WM9713 Signed-off-by: Mark Brown commit 4290239cd05b6323da87b5e7e7db4c673bff5359 Author: Peter Ujfalusi Date: Mon Dec 1 10:03:47 2008 +0200 ASoC: TWL4030: Add volume controls for outputs All outputs have dedicated gain controls except the HandsFree output. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit d889a72c5c71161d6f934f9d7fca0e5b7e52bc08 Author: Peter Ujfalusi Date: Mon Dec 1 10:03:46 2008 +0200 ASoC: TWL4030: Change the common playback volume controls Add Playback volume controls for all four DACs. All four paths has three levels of volume controls: Digital Fine gain, Digital Coarse gain, Analog gain. The controls are named to reflect their connection to the DACs. Per DAC volume can be performed, if needed: amixer sset 'DAC1 Analog' 5,10 DACL1 analog gain to 5 DACR1 analog gain to 10 Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 381a22b564ff5a7ada09ad9a0831246da1dc5513 Author: Peter Ujfalusi Date: Mon Dec 1 10:03:45 2008 +0200 ASoC: TWL4030: Change the capture volume control to TLV The digital Capture gain control has a range: 0 to 31 dB in 1 dB steps. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit fa5c76978cee331b25e6d271482cf8e76f51e68b Author: Mark Brown Date: Sun Nov 30 22:55:46 2008 +0000 ASoC: Remove in-code changelog from AD73311 driver Signed-off-by: Mark Brown commit 7d8c16a6f728f0ee5c42d1d731923cfd0cc19971 Author: Mark Brown Date: Sun Nov 30 22:11:24 2008 +0000 ASoC: Annotate core removal function Signed-off-by: Mark Brown commit 968a6025aa9f909d487988efb542217a126023a0 Author: Mark Brown Date: Fri Nov 28 11:49:07 2008 +0000 ASoC: Rename snd_soc_register_card() to snd_soc_init_card() Currently ASoC card initialisation is completed by a function called snd_soc_register_card(). As part of the work to allow independant registration of cards, codecs and machines in ASoC v2 a new function of the same name has been added so rename the existing function to facilitate the merge of v2. Signed-off-by: Mark Brown commit 6c415b9234a8c71f290e5d4fddc467f103f32719 Author: Arun R Bharadwaj Date: Mon Dec 1 20:49:05 2008 +0530 sched: add uid information to sched_debug for CONFIG_USER_SCHED Impact: extend information in /proc/sched_debug This patch adds uid information in sched_debug for CONFIG_USER_SCHED Signed-off-by: Arun R Bharadwaj Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 50cec5c51c18301ff60262fdbe920f4a907c9d81 Author: FUJITA Tomonori Date: Tue Dec 2 02:17:15 2008 +0900 x86: fix dma_mapping_error for 32bit x86, cleanup This removes ifdef CONFIG_X86_64 in dma_mapping_error(): 1) Xen people plan to use swiotlb on X86_32 for Dom0 support. swiotlb uses ops->mapping_error so X86_32 also needs to check ops->mapping_error. 2) Removing #ifdef hack is almost always a good thing. Signed-off-by: FUJITA Tomonori Signed-off-by: Ingo Molnar commit f6d2e6f57bba66272b28dd20c949b14ce39cb804 Merge: 8caac56... 7b1dedc... Author: Ingo Molnar Date: Mon Dec 1 20:36:13 2008 +0100 Merge branch 'x86/urgent' into x86/iommu commit 682d5874f3d654b5d13d9b8dd56b9e05cfadd01b Author: Takashi Iwai Date: Mon Dec 1 20:03:54 2008 +0100 ALSA: ASoC: Fix old-style trigger callback in s3c2443-ac97.c Fix the old-style trigger callback in s3c2443-ac97.c: sound/soc/s3c24xx/s3c2443-ac97.c:378: warning: initialization from incompatible pointer type Signed-off-by: Takashi Iwai commit 5220ed6b321639d68a66bad2082456c1b273f3ea Author: Takashi Iwai Date: Mon Dec 1 20:00:47 2008 +0100 ALSA: ASoC: Fix compile warnings on corgi.c Fix the wrong shutdown callback type. Also removed the unused variables there: sound/soc/pxa/corgi.c: In function 'corgi_shutdown': sound/soc/pxa/corgi.c:114: warning: unused variable 'codec' sound/soc/pxa/corgi.c: At top level: sound/soc/pxa/corgi.c:175: warning: initialization from incompatible pointer type Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit 0bc286e2ac72e483d2b5a6dac0dafb05e9f047c8 Author: Takashi Iwai Date: Mon Dec 1 19:59:35 2008 +0100 Revert "ALSA: soc - Fix compile warnings in wm8903.c" This reverts commit 9171e5e6a20a9cd4992ff9c7cbee13c6fdf7b0b1. I can't reproduce the compile warnings any more. The warnings might be some weird cross-compiling set up. Signed-off-by: Takashi Iwai commit 2caf6a1f9c8bcdc81ba580cfbf512d073c9444be Author: Takashi Iwai Date: Mon Dec 1 17:56:06 2008 +0100 ALSA: ASoC: Remove superfluous dependency on SND_SOC The dependency on SND_SOC is already fulfilled in sound/soc/Kconfig, thus no more need in Kconfig of each sub directory. Signed-off-by: Takashi Iwai commit 3af4182cc5be7d5505f9801ee3297373f1872446 Merge: f5d4c67... c07f62e... Author: Takashi Iwai Date: Mon Dec 1 18:02:17 2008 +0100 Merge branch 'upstream' into topic/asoc commit f5d4c67e41a262f0cdfaec1bb0fa8e5952187ef9 Author: Takashi Iwai Date: Mon Dec 1 16:29:47 2008 +0100 ALSA: soc - Remove obsoleted sound/driver.h inclusion Signed-off-by: Takashi Iwai commit 1966bbd62ce31cef0cb020a6b4bd852dbc63b40c Author: Mark Brown Date: Mon Dec 1 14:54:45 2008 +0000 ALSA: ac97 - Add WM9715 to AC97 IDs The WM9715 is software compatible with the WM9711 and WM9712. Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 9171e5e6a20a9cd4992ff9c7cbee13c6fdf7b0b1 Author: Takashi Iwai Date: Mon Dec 1 15:39:13 2008 +0100 ALSA: soc - Fix compile warnings in wm8903.c Hide annoying uninitialized warnings: sound/soc/codecs/wm8903.c:382: warning: ‘reg’ may be used uninitialized in this function sound/soc/codecs/wm8903.c:383: warning: ‘shift’ may be used uninitialized in this function Signed-off-by: Takashi Iwai commit ade9b2fb9bf8114f77eefc70b9042417e62acf72 Author: Markus Bollinger Date: Mon Dec 1 15:31:06 2008 +0100 ALSA: pcxhr - change firmware filenames - compatibility issue : change firmware filenames the pcxhr driver version <= 1.0.18a does not work with new firmware > 1.0.17. Keep the old firmware files and add new firmware files with different names Signed-off-by: Markus Bollinger Signed-off-by: Takashi Iwai commit 480cf663e6988b3e79b570b42d2dbdb6c2ba9b94 Author: Takashi Iwai Date: Mon Dec 1 15:28:07 2008 +0100 ALSA: Fix a compile warning in cs46xx_lib.c Fix a build warning sound/pci/cs46xx/cs46xx_lib.c:3643: warning: unused variable ‘i’ when CONFIG_SND_CS46XX_NEW_DSP=n. Signed-off-by: Takashi Iwai commit 8c2f767bf3c4a7932898e657c6b12a2234cd2eca Author: Takashi Iwai Date: Mon Dec 1 11:54:35 2008 +0100 ALSA: hda - Remove unnecessary caches for power states in patch_sigmatel.c The power-state changes in patch_sigmatel.c are accessed via *_cached() but they shouldn't be really cached. Fixed to the normal write. Also, stac92hd71xx_suspend and resume are no longer necessary as the power-state changes are handled properly in the common routine. Removed these hacks now. Signed-off-by: Takashi Iwai commit c9b46f9144b8dce6c12aec08f34a908aedd28b37 Author: Takashi Iwai Date: Mon Dec 1 11:42:09 2008 +0100 ALSA: hda - Use amp cache for SPDIF mute controls in patch_sigmatel.c The amp switch of SPDIF outputs have to be cached in the amp cache instead of codec cache. Otherwise it conflicts with the IEC958 playback switch control in hda_codec.c. Signed-off-by: Takashi Iwai commit 9a5df92374d65e2886b92e98dd7d873c533a83ff Author: Marcel Holtmann Date: Sun Nov 30 12:17:29 2008 +0100 Bluetooth: Fix RFCOMM release oops when device is still in use It turns out that the following sequence of actions will reproduce the oops: 1. Create a new RFCOMM device (using RFCOMMCREATEDEV ioctl) 2. (Try to) open the device 3. Release the RFCOMM device (using RFCOMMRELEASEDEV ioctl) At this point, the "/dev/rfcomm*" device is still in use, but it is gone from the internal list, so the device id can be reused. 4. Create a new RFCOMM device with the same device id as before And now kobject will complain that the TTY already exists. (See http://lkml.org/lkml/2008/7/13/89 for a reproducible test-case.) This patch attempts to correct this by only removing the device from the internal list of devices at the final unregister stage, so that the id won't get reused until the device has been completely destructed. This should be safe as the RFCOMM_TTY_RELEASED bit will be set for the device and prevent the device from being reopened after it has been released. Based on a report from Vegard Nossum Signed-off-by: Marcel Holtmann commit 2e792995e4cb425422dc379c3618447c462756a8 Author: Marcel Holtmann Date: Sun Nov 30 12:17:29 2008 +0100 Bluetooth: Fix format arguments warning Newer GCC versions are a little bit picky about how to deal with format arguments: net/bluetooth/hci_sysfs.c: In function ‘hci_register_sysfs’: net/bluetooth/hci_sysfs.c:418: warning: format not a string literal and no format arguments It is simple enough to fix and makes the compiler happy. Signed-off-by: Marcel Holtmann commit a418b893a6af11ae73c762ed5b76c1bad6dc19d8 Author: Marcel Holtmann Date: Sun Nov 30 12:17:28 2008 +0100 Bluetooth: Enable per-module dynamic debug messages With the introduction of CONFIG_DYNAMIC_PRINTK_DEBUG it is possible to allow debugging without having to recompile the kernel. This patch turns all BT_DBG() calls into pr_debug() to support dynamic debug messages. As a side effect all CONFIG_BT_*_DEBUG statements are now removed and some broken debug entries have been fixed. Signed-off-by: Marcel Holtmann commit 5ddd4a60683f819982b7bd3d1aee972f931c11a3 Author: Marcel Holtmann Date: Sun Nov 30 12:17:27 2008 +0100 Bluetooth: Allow SCO audio with Asus WL-BTD202 dongle This patch allows the Asus WL-BTD202 dongle to be used with a mono headset without having to specify "options btusb force_scofix=1". Based on a patch from Guillaume Bedot Signed-off-by: Marcel Holtmann commit 7a9d4020533b5c0c615b6de3be154c9ff30b8cc9 Author: Marcel Holtmann Date: Sun Nov 30 12:17:26 2008 +0100 Bluetooth: Send HCI Reset command by default on device initialization The Bluetooth subsystem was not using the HCI Reset command when doing device initialization. The Bluetooth 1.0b specification was ambiguous on how the device firmware was suppose to handle it. Almost every device was triggering a transport reset at the same time. In case of USB this ended up in disconnects from the bus. All modern Bluetooth dongles handle this perfectly fine and a lot of them actually require that HCI Reset is sent. If not then they are either stuck in their HID Proxy mode or their internal structures for inquiry and paging are not correctly setup. To handle old and new devices smoothly the Bluetooth subsystem contains a quirk to force the HCI Reset on initialization. However maintaining such a quirk becomes more and more complicated. This patch turns the logic around and lets the old devices disable the HCI Reset command. The only device where the HCI_QUIRK_NO_RESET is still needed are the original Digianswer devices and dongles with an early CSR firmware. CSR reported that they fixed this for version 12 firmware. The last official release of version 11 firmware is build ID 115. The first version 12 candidate was build ID 117. Signed-off-by: Marcel Holtmann commit 12421b40b81d101d7535e03f1af197365adc932b Author: Marcel Holtmann Date: Sun Nov 30 12:17:21 2008 +0100 Bluetooth: Remove deprecated hci_usb driver The old hci_usb driver has been fully replaced with the new btusb driver and all major distributions switched to the new driver now. This removes it since it should not be used at all anymore. Signed-off-by: Marcel Holtmann commit 7b99d17f3ea1febd1abca8fa371d2341dd957d4a Author: Nick Pelly Date: Sun Nov 30 12:17:20 2008 +0100 Bluetooth: Respect HCI_UART_DEBUG config in hci_ll.c Following the pattern from hci_*.c, turn off BT_DBG messages unless they have been requested via HCI_UART_DEBUG Signed-off-by: Nick Pelly Acked-by: Brian Swetland Signed-off-by: Marcel Holtmann commit 51a6fbc855b07a0737558560dd0ab0b5f646025b Author: Julia Lawall Date: Sun Nov 30 12:17:20 2008 +0100 Bluetooth: Change simple_strtol to simple_strtoul Since size, addr, fcs, and tmp are unsigned, it would seem better to use simple_strtoul that simple_strtol. A simplified version of the semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r2@ long e; position p; @@ e = simple_strtol@p(...) @@ position p != r2.p; type T; T e; @@ e = - simple_strtol@p + simple_strtoul (...) // Signed-off-by: Julia Lawall Signed-off-by: Marcel Holtmann commit db7aa1c203d477351ed1b8f394b40d9df06ddfc4 Author: Marcel Holtmann Date: Sun Nov 30 12:17:19 2008 +0100 Bluetooth: Fix warnings for bt_key_strings and bt_slock_key_strings After adding proper lockdep annotations for Bluetooth protocols the case when lockdep is disabled produced two compiler warnings: net/bluetooth/af_bluetooth.c:60: warning: ‘bt_key_strings’ defined but not used net/bluetooth/af_bluetooth.c:71: warning: ‘bt_slock_key_strings’ defined but not used Fix both of them by adding a CONFIG_DEBUG_LOCK_ALLOC conditional around them and re-arranging the code a little bit. Signed-off-by: Marcel Holtmann commit c6bf514c6e0171c5b731beffaa0c4463e2335f3d Author: Vegard Nossum Date: Sun Nov 30 12:17:19 2008 +0100 Bluetooth: Fix leak of uninitialized data to userspace struct hci_dev_list_req { __u16 dev_num; struct hci_dev_req dev_req[0]; /* hci_dev_req structures */ }; sizeof(struct hci_dev_list_req) == 4, so the two bytes immediately following "dev_num" will never be initialized. When this structure is copied to userspace, these uninitialized bytes are leaked. Fix by using kzalloc() instead of kmalloc(). Found using kmemcheck. Signed-off-by: Vegard Nossum Signed-off-by: Marcel Holtmann commit 7644d63d1348ec044ccd8f775fefe5eb7cbcac69 Author: Tomas Winkler Date: Sun Nov 30 12:17:18 2008 +0100 Bluetooth: Fix TX error path in btsdio driver This patch fixes accumulating of the header in case packet was requeued in the error path. Signed-off-by: Tomas Winkler Signed-off-by: Marcel Holtmann commit 6a88adf2adf5d6a3b759c2e114da4c5266ca3972 Author: Marcel Holtmann Date: Sun Nov 30 12:17:14 2008 +0100 Bluetooth: Add suspend/resume support to btusb driver During suspend it is important that all URBs are cancelled and then on resume re-submitted. This gives initial suspend/resume support. Based on initial work from Oliver Neukum Signed-off-by: Marcel Holtmann commit a780efa8124fe7ef23d8ef844d56afe960356615 Author: Marcel Holtmann Date: Sun Nov 30 12:17:12 2008 +0100 Bluetooth: Handle bulk URBs in btusb driver from notify callback With the addition of usb_unlink_anchored_urbs() it is possible to fully control the bulk URBs from the notify callback. There is no need to schedule work and so only do this for the ISOC URBs. Signed-off-by: Marcel Holtmann commit 2eda66f4a0b9803c6a85d5e5ccd8e802bd23b998 Author: Marcel Holtmann Date: Sun Nov 30 12:17:10 2008 +0100 Bluetooth: Add fine grained mem_flags usage to btusb driver The URB submission routines need more fine grained control for the mem_flags used by kmalloc(), usb_alloc_urb() and usb_submit_urb() to better support different caller situations. Add a mem_flags parameter and give the caller full control. Signed-off-by: Marcel Holtmann commit 93093d099e5dd0c258fd530c12668e828c20df41 Author: Ingo Molnar Date: Sun Nov 30 10:20:20 2008 +0100 x86: provide readq()/writeq() on 32-bit too, complete if HAVE_READQ/HAVE_WRITEQ are defined, the full range of readq/writeq APIs has to be provided to drivers: drivers/infiniband/hw/amso1100/c2.c: In function 'c2_tx_ring_alloc': drivers/infiniband/hw/amso1100/c2.c:133: error: implicit declaration of function '__raw_writeq' So provide them on 32-bit as well. Also, map all the APIs to the strongest ordering variant. It's way too easy to mess such details up in drivers and the difference between "memory" and "" constrained asm() constructs is in the noise range. Signed-off-by: Ingo Molnar commit a0b1131e479e5af32eefac8bc54c9742e23d638e Author: Ingo Molnar Date: Sun Nov 30 09:33:55 2008 +0100 x86: provide readq()/writeq() on 32-bit too, cleanup Impact: cleanup Signed-off-by: Ingo Molnar commit 2c5643b1c5c7fbb13f340d4c58944d9642f41796 Author: Hitoshi Mitake Date: Sun Nov 30 17:16:04 2008 +0900 x86: provide readq()/writeq() on 32-bit too Impact: add new API for drivers Add implementation of readq/writeq to x86_32, and add config value to the x86 architecture to determine existence of readq/writeq. Signed-off-by: Hitoshi Mitake Acked-by: Sam Ravnborg Signed-off-by: Ingo Molnar commit 4385cecf1f5866fb33fc95e2ee26a44e9b6f6be2 Author: Jiri Slaby Date: Sat Nov 29 22:33:16 2008 +0100 x86: intel_cacheinfo, minor show_type cleanup Impact: cleanup Signed-off-by: Jiri Slaby Cc: Jiri Slaby Signed-off-by: Ingo Molnar commit 25f13048bce61f33f6a102e0bf377fd3922ed364 Author: Tilman Schmidt Date: Sat Nov 29 21:38:28 2008 -0800 gigaset: get rid of info() and warn() macros Join the move away from the obsolete info() macro, opencoding the remaining uses. While we're at it, also get rid of the warn() macro by promoting the three remaining uses to err(). Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit af4218c3a699542adc9b76c8972828a726e7b0dc Author: Tilman Schmidt Date: Sat Nov 29 21:38:04 2008 -0800 gigaset: remove unnecessary poll method The N_GIGASET_M101 line discipline implemented by the ser_gigaset driver does not transfer any data from/to userspace through the tty interface. Therefore a poll method is not needed. Signed-off-by: Tilman Schmidt Signed-off-by: David S. Miller commit f08340c5d68ab621f377c108637e2d8e95b3e5d4 Author: Nikanth Karthikesan Date: Sat Nov 29 15:43:32 2008 +0530 tracepoints: Documentation TPPROTO misspelt in Documentation/tracepoints.txt Impact: fix typo in documentation TPPROTO is misspelt in Documentation/tracepoints.txt Kept me wondering what was wrong, when I was trying to add a new tracepoint subsystem. Signed-off-by: Nikanth Karthikesan Signed-off-by: Ingo Molnar commit 65c6dc6adbe7ee0acf207445243400a68c77af15 Author: Frederic Weisbecker Date: Sat Nov 29 04:12:46 2008 +0100 tracing/branch-tracer: include missing irqflags.h Impact: fix build error on branch tracer This should fix a build error reported on alpha in linux-next: CC kernel/trace/trace_branch.o kernel/trace/trace_branch.c: In function 'probe_likely_condition': kernel/trace/trace_branch.c:44: error: implicit declaration of function 'raw_local_irq_save' kernel/trace/trace_branch.c:76: error: implicit declaration of function 'raw_local_irq_restore' Unfortunately, I can't test it since I don't have any Alpha build environment. Reported-by: Alexey Dobriyan Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit c5419e6f054c877339f754e02c3b1dafd88cd96c Author: Roland Dreier Date: Fri Nov 28 21:55:42 2008 -0800 cxgb3: Fix sparse warning and micro-optimize is_pure_response() The function is_pure_response() does "ntohl(var) & const" and then essentially just tests whether the result is 0 or not; this can be done more efficiently by computing "var & htonl(const)" instead and doing the byte swap at compile time instead of run time. This change slightly shrinks the compiled code; eg on x86-64 we save a couple of bswapl instructions: add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-8 (-8) function old new delta t3_sge_intr_msix_napi 544 536 -8 and this also has the pleasant side effect of fixing a sparse warning: drivers/net/cxgb3/sge.c:2313:15: warning: restricted degrades to integer Signed-off-by: Roland Dreier Signed-off-by: David S. Miller commit f95be1806fde884c1655237d49a7e5f82e4a935f Author: Giuseppe Cavallaro Date: Fri Nov 28 16:42:41 2008 -0800 phy: add the ST ste10Xp PHYs This patch adds the STMicroelectronics ste10xp PHY device driver. It supports both the ste100p and the ste101p devices. Suspend/resume alredy added. Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 4621bf129856bad902d7662053b79faaeb3e66cc Author: David S. Miller Date: Fri Nov 28 16:40:26 2008 -0800 phy: Add file missed in previous commit. Signed-off-by: David S. Miller commit 0f0ca340e57bd7446855fefd07a64249acf81223 Author: Giuseppe Cavallaro Date: Fri Nov 28 16:24:56 2008 -0800 phy: power management support This patch adds the power management support into the physical abstraction layer. Suspend and resume functions respectively turns on/off the bit 11 into the PHY Basic mode control register. Generic PHY device starts supporting PM. In order to support the wake-on LAN and avoid to put in power down the PHY device, the MDIO is aware of what the Ethernet device wants to do. Voluntary, no CONFIG_PM defines were added into the sources. Also generic suspend/resume functions are exported to allow other drivers use them (such as genphy_config_aneg etc.). Within the phy_driver_register function, we need to remove the memset. It overrides the device driver owner and it is not good. Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 914804b95caa61c633431262044034ab05c78ba4 Author: Giuseppe Cavallaro Date: Fri Nov 28 16:14:12 2008 -0800 phy: add natsemi PHY driver This patch adds the PHY device driver for the National Semiconductor DP83865 Gig PHYTER. Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 65a467f553067fae21b66ac0778247c930936749 Author: Ilpo Järvinen Date: Fri Nov 28 15:55:00 2008 -0800 ne2: silence static never defined warnings These warning originate from 50014f1 (ne2: convert to net_device_ops) which did drop those functions. drivers/net/ne2.c:140: warning: 'ne_open' declared 'static' but never defined drivers/net/ne2.c:141: warning: 'ne_close' declared 'static' but never defined Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit d8e8034dcdef8c8fa94a14c3b555c09e065e742f Author: Ilpo Järvinen Date: Fri Nov 28 15:52:43 2008 -0800 bnx2: use net_device_stats nowadays available in net_device Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 9fd428761adbd5fbd7e23c312955eec1db8ace7a Author: Ilpo Järvinen Date: Fri Nov 28 15:52:00 2008 -0800 niu: use net_device_stats nowadays available in net_device Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 70574a996fc7a70c5586eb56bd92a544eccf18b6 Author: Alexey Dobriyan Date: Fri Nov 28 22:08:00 2008 +0300 sched: move double_unlock_balance() higher Move double_lock_balance()/double_unlock_balance() higher to fix the following with gcc-3.4.6: CC kernel/sched.o In file included from kernel/sched.c:1605: kernel/sched_rt.c: In function `find_lock_lowest_rq': kernel/sched_rt.c:914: sorry, unimplemented: inlining failed in call to 'double_unlock_balance': function body not available kernel/sched_rt.c:1077: sorry, unimplemented: called from here make[2]: *** [kernel/sched.o] Error 1 Signed-off-by: Alexey Dobriyan Signed-off-by: Ingo Molnar commit f1860c34b3ed829ac774647f266abf1074cd58cd Merge: 64b7482... 4cd4262... Author: Ingo Molnar Date: Fri Nov 28 20:11:05 2008 +0100 Merge branch 'sched/urgent' into sched/core commit 604094f4615180f71da799e7e5b191f5c2a42a28 Author: Ingo Molnar Date: Fri Nov 28 18:03:22 2008 +0100 vfs, seqfile: export mangle_path() generally mangle_path() is trivial enough to make export restrictions on it pointless - so change the export from EXPORT_SYMBOL_GPL to EXPORT_SYMBOL. Signed-off-by: Ingo Molnar Acked-by: Al Viro commit a838c2ec6ea1f18431da74dfe4978c57355b95f3 Author: Wu Fengguang Date: Thu Nov 27 16:14:44 2008 +0800 markers: comment marker_synchronize_unregister() on data dependency Add document and comments on marker_synchronize_unregister(): it should be called before freeing resources that the probes depend on. Based on comments from Lai Jiangshan and Mathieu Desnoyers. Signed-off-by: Wu Fengguang Reviewed-by: Mathieu Desnoyers Reviewed-by: Lai Jiangshan Signed-off-by: Ingo Molnar commit 02834f112d159eb87b584c7df56bddc5beeff5b3 Author: Takashi Iwai Date: Fri Nov 28 15:29:01 2008 +0100 ALSA: ac97 - Remove EXPERIMENTAL from CONFIG_SND_AC97_POWER_SAVE It's mature enough now. Signed-off-by: Takashi Iwai commit 36adba1fc79851949c4792f2e9b4d0dddbc6d5e4 Author: Takashi Iwai Date: Fri Nov 28 15:27:11 2008 +0100 ALSA: hda - Remove EXPERIMENTAL from CONFIG_SND_HDA_POWER_SAVE It's mature enough now. Signed-off-by: Takashi Iwai commit 8caac56305cef98f9357b060a77939d17699937d Author: Pavel Machek Date: Wed Nov 26 17:15:27 2008 +0100 aperture_64.c: clarify that too small aperture is valid reason for this code Impact: update comment Clarify that too small aperture is valid reason for this code. Signed-off-by: Pavel Machek Signed-off-by: Ingo Molnar commit ff7a3267368634e368ebaac68d5e3abf129edd1d Author: Takashi Iwai Date: Fri Nov 28 15:17:06 2008 +0100 ALSA: hda - Don't export symbols when built-in kernel The global functions in hda_codec.c and other core parts are only for HD-audio codec and controller drivers. When the HD-audio driver is built in kernel, all stuff have to be statically linked, thus we don't need any exports. This patch introduces a conditional macro to do export only when needed. Signed-off-by: Takashi Iwai commit 645f10c1ac7f733b224eaf97634edf9b20e2370e Author: Takashi Iwai Date: Fri Nov 28 15:07:37 2008 +0100 ALSA: hda - Check MODULE instead of CONFIG_SND_HDA_INTEL_MODULE Checking MODULE is more generic. Also a cosmetic comment change. Signed-off-by: Takashi Iwai commit 5b3eec0c80038c8739ccd465b897a35c0dff1cc4 Author: Ingo Molnar Date: Thu Nov 27 14:41:21 2008 +0100 x86: ret_from_fork - get rid of jump back Impact: remove dead code If we take a closer look at the rff_trace/rff_action ret_from_fork code, we have to realize that it does all the wrong things: for example it checks the TIF flag - while later on jumping back to the ret-from-syscall path - duplicating the check needlessly. But checking for _TIF_SYSCALL_TRACE is completely unnecessary here because we clear that flag for every freshly forked task. So the whole "tracing" code here, for which there is a out of line jump optimization that makes it even harder to read, is in reality completely dead code ... Reported-by: Cyrill Gorcunov Signed-off-by: Ingo Molnar Tested-by: Cyrill Gorcunov commit 3bdae4f46445ea7cc9ee031d7ff106fdc6228669 Merge: 9f1e87e... 5f5db59... Author: Ingo Molnar Date: Fri Nov 28 15:00:37 2008 +0100 Merge branch 'x86/debug' into x86/irq We merge this branch because x86/debug touches code that we started cleaning up in x86/irq. The two branches started out independent, but as unexpected amount of activity went into x86/irq, they became dependent. Resolve that by this cross-merge. commit 9f1e87ea3ecb3c46c21f6a1a202ec82f99ed2473 Author: Cyrill Gorcunov Date: Thu Nov 27 21:10:08 2008 +0300 x86: entry_64.S - trivial: space, comments fixup Impact: cleanup Signed-off-by: Cyrill Gorcunov Signed-off-by: Ingo Molnar commit de04b102bfc9a13e96f0892305b394077ffb6514 Author: Clemens Ladisch Date: Wed Nov 26 10:37:23 2008 +0100 ALSA: oxygen: add Claro halo support Add support for the HT-Omega Claro halo (XT). Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 57a5ef483b6290a9f22d4c52baca051c1e755f3a Author: Takashi Iwai Date: Fri Nov 28 14:46:28 2008 +0100 ALSA: hda - Add quirk for Sony VAIO VGN-SR19XN Added model=sony-assamd for Sony VAIO VGN-SR19XN with ALC262 codec. Reference: Novell bnc#450080 https://bugzilla.novell.com/show_bug.cgi?id=450080 Signed-off-by: Takashi Iwai commit 56d17712d54d3aa3d6ef930123d692351d33217c Author: Takashi Iwai Date: Fri Nov 28 14:36:23 2008 +0100 ALSA: hda - Clear codec->proc_widget_hook at reset Clear the remaining pointer at snd_hda_codec_reset() to avoid Oops. Signed-off-by: Takashi Iwai commit 2d34e1b3bb991a99322fb55681d1e73ada3de35c Author: Takashi Iwai Date: Fri Nov 28 14:35:16 2008 +0100 ALSA: hda - Add IDT/STAC-specific proc output Added power-map and analog-loopback information to proc output for IDT/STAC codecs. Signed-off-by: Takashi Iwai commit 5ae3a139cf4fc2349f1dfa1993a66c1dcc119468 Author: Cyrill Gorcunov Date: Thu Nov 27 00:02:10 2008 +0300 x86: uv bau interrupt -- use proper interrupt number Signed-off-by: Cyrill Gorcunov Acked-by: Cliff Wickman Signed-off-by: Ingo Molnar commit f1eecf0e4f0796911cc076f38fcf05fea0b353d5 Author: Steven Rostedt Date: Wed Nov 26 15:54:46 2008 -0500 powerpc/ppc32: static ftrace fixes for PPC32 Impact: fix for PowerPC 32 code There were some early init code that was not safe for static ftrace to boot on my PowerBook. This code must only use relative addressing, and static mcount performs a compare of the ftrace_trace_function pointer, and gets that with an absolute address. In the early init boot up code, this will cause a fault. This patch removes tracing from the files containing the offending functions. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 0029ff87529dff01a4b9c5bf380a0caacb5f7418 Author: Steven Rostedt Date: Tue Nov 25 14:06:19 2008 -0800 powerpc: ftrace, use create_branch Impact: clean up Paul Mackerras pointed out that the code to determine if the branch can reach the destination is incorrect. Michael Ellerman suggested to pull out the code from create_branch and use that. Simply using create_branch is probably the best. Reported-by: Michael Ellerman Reported-by: Paul Mackerras Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit ec682cef2d2c1a25a198d32a87fe2649da671d1e Author: Steven Rostedt Date: Tue Nov 25 10:22:48 2008 -0800 powerpc: ftrace, added missing icache flush Impact: fix to PowerPC code modification After modifying code it is essential to flush the icache. This patch adds the missing flush. Reported-by: Paul Mackerras Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit d9af12b72bfe2a4efc1d347e0ac1c669b85dcea9 Author: Steven Rostedt Date: Tue Nov 25 06:39:18 2008 -0800 powerpc: ftrace, fix cast aliasing and add code verification Impact: clean up and robustness addition This patch addresses the comments made by Paul Mackerras. It removes the type casting between unsigned int and unsigned char pointers, and replaces them with a use of all unsigned int. Verification that the jump is indeed made to a trampoline has also been added. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit c7b0d17366d6e04a11470fc8d85f9fbac02671b9 Author: Steven Rostedt Date: Thu Nov 20 13:18:55 2008 -0800 powerpc: ftrace, do nothing in mcount call for dyn ftrace Impact: quicken mcount calls that are not replaced by dyn ftrace Dynamic ftrace no longer does on the fly recording of mcount locations. The mcount locations are now found at compile time. The mcount function no longer needs to store registers and call a stub function. It can now just simply return. Since there are some functions that do not get converted to a nop (.init sections and other code that may disappear), this patch should help speed up that code. Also, the stub for mcount on PowerPC 32 can not be a simple branch link register like it is on PowerPC 64. According to the ABI specification: "The _mcount routine is required to restore the link register from the stack so that the profiling code can be inserted transparently, whether or not the profiled function saves the link register itself." This means that we must restore the link register that was used to make the call to mcount. The minimal mcount function for PPC32 ends up being: mcount: mflr r0 mtctr r0 lwz r0, 4(r1) mtlr r0 bctr Where we move the link register used to call mcount into the ctr register, and then restore the link register from the stack. Then we use the ctr register to jump back to the mcount caller. The r0 register is free for us to use. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit c072c24975ec4f0ccfcb6f5c8a8040b6eb75ef8f Author: walimis Date: Fri Nov 28 12:21:19 2008 +0800 ftrace: improve documentation Impact: extend documentation with notice of using wild cards correctly We know that we can use wild cards to set set_ftrace_filter, but there's problem when using them naively such as: echo h* > /debug/tracing/set_ftrace_filter If there are files named with "h" prefix in current directory, echo "h*" will echo these filenames to set_ftrace_filter, not the intended "h*". For example: $ cat /debug/tracing/available_filter_functions |grep ^hr |wc -l 23 $ ls $ touch hraa hrdd $ ls hraa hrdd $ echo hr* > /debug/tracing/set_ftrace_filter $ cat /debug/tracing/set_ftrace_filter No output in /debug/tracing/set_ftrace_filter! If we use '' to escape wild cards, it works: $ ls hraa hrdd $ echo "hr*" > /debug/tracing/set_ftrace_filter $ cat /debug/tracing/set_ftrace_filter |wc -l 23 This problem can lead to unexpected result if current directory has a lot of files. Signed-off-by: walimis Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 1d9b16d1690fe5edb1c907fe4746681cf026cdf3 Author: Joerg Roedel Date: Thu Nov 27 18:39:15 2008 +0100 x86: move GART specific stuff from iommu.h to gart.h Impact: cleanup Signed-off-by: Joerg Roedel Signed-off-by: Ingo Molnar commit bb40abe223ace0b6f29e8433d3936dac664178b5 Author: Takashi Iwai Date: Fri Nov 28 12:57:38 2008 +0100 ALSA: hda - Remove unused proc entry in hda_bus struct Signed-off-by: Takashi Iwai commit daead538e9d8efe61d7d2bd12993c8d961b0abd6 Author: Takashi Iwai Date: Fri Nov 28 12:55:36 2008 +0100 ALSA: hda - Add codec-specific proc hook Added a hook for proc outputs of codec-specific stuff. Moved realtek-specific coeff output into patch_realtek.c as well. Signed-off-by: Takashi Iwai commit 50cdaf08a8ec1d7f43987705da7aff7cf949708f Author: Liming Wang Date: Fri Nov 28 12:13:21 2008 +0800 ftrace: improve seq_operation of ftrace Impact: make ftrace position computing more sane First remove useless ->pos field. Then we needn't check seq_printf in .show like other place. Signed-off-by: Liming Wang Reviewed-by: Bruce Ashfield Signed-off-by: Ingo Molnar commit 6113b748fb9935399ec2bbca3a3dc82008f6167f Author: Hannes Eder Date: Fri Nov 28 03:06:46 2008 -0800 pkt_sched: fix sparse warning Impact: make global function static Fix the following sparse warning: net/sched/sch_api.c:192:14: warning: symbol 'qdisc_match_from_root' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: David S. Miller commit ea5693ccc553951ae44cb963b28cce85edc275c9 Author: Patrick McHardy Date: Fri Nov 28 03:05:19 2008 -0800 netlink: allow empty nested attributes validate_nla() currently doesn't allow empty nested attributes. This makes userspace code unnecessarily complicated when starting and ending the nested attribute is done by generic upper level code and the inner attributes are dumped by a module. Add a special case to accept empty nested attributes. When the nested attribute is non empty, the same checks as before are performed. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c7425acb42fff1e723b05fbf4ea11e9a455d95dc Author: Török Edwin Date: Fri Nov 28 11:17:56 2008 +0200 tracing, alpha: fix build: add missing #ifdef CONFIG_STACKTRACE There are architectures that still have no stacktrace support. Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit ed77a89c30fa03dcb234a84ddea710b3fb7b62da Merge: 475ad8e... d6e8cc6... Author: David S. Miller Date: Fri Nov 28 02:19:15 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 Conflicts: net/netfilter/nf_conntrack_netlink.c commit d51090b34602a20984ab0312ef04e47069c0aec6 Author: Ingo Molnar Date: Fri Nov 28 09:55:16 2008 +0100 tracing/function-graph-tracer: more output tweaks Impact: prettify the output some more Before: 0) | sys_read() { 0) 0.796 us | fget_light(); 0) | vfs_read() { 0) | rw_verify_area() { 0) | security_file_permission() { ------------8<---------- thread sshd-1755 ------------8<---------- After: 0) | sys_read() { 0) 0.796 us | fget_light(); 0) | vfs_read() { 0) | rw_verify_area() { 0) | security_file_permission() { ------------------------------------------ | 1) migration/0--1 => sshd-1755 ------------------------------------------ Signed-off-by: Ingo Molnar commit 1a056155edd458eb93ef383fa8e5741d7e7c6360 Author: Frederic Weisbecker Date: Fri Nov 28 00:42:46 2008 +0100 tracing/function-graph-tracer: adjustments of the trace informations Impact: increase the visual qualities of the call-graph-tracer output This patch applies various trace output formatting changes: - CPU is now a decimal number, followed by a parenthesis. - Overhead is now on the second column (gives a good visibility) - Cost is now on the third column, can't exceed 9999.99 us. It is followed by a virtual line based on a "|" character. - Functions calls are now the last column on the right. This way, we haven't dynamic column (which flow is harder to follow) on its right. - CPU and Overhead have their own option flag. They are default-on but you can disable them easily: echo nofuncgraph-cpu > trace_options echo nofuncgraph-overhead > trace_options TODO: _ Refactoring of the thread switch output. _ Give a default-off option to output the thread and its pid on each row. _ Provide headers _ .... Here is an example of the new trace style: 0) | mutex_unlock() { 0) 0.639 us | __mutex_unlock_slowpath(); 0) 1.607 us | } 0) | remove_wait_queue() { 0) 0.616 us | _spin_lock_irqsave(); 0) 0.616 us | _spin_unlock_irqrestore(); 0) 2.779 us | } 0) 0.495 us | n_tty_set_room(); 0) ! 9999.999 us | } 0) | tty_ldisc_deref() { 0) 0.615 us | _spin_lock_irqsave(); 0) 0.616 us | _spin_unlock_irqrestore(); 0) 2.793 us | } 0) | current_fs_time() { 0) 0.488 us | current_kernel_time(); 0) 0.495 us | timespec_trunc(); 0) 2.486 us | } 0) ! 9999.999 us | } 0) ! 9999.999 us | } 0) ! 9999.999 us | } 0) | sys_read() { 0) 0.796 us | fget_light(); 0) | vfs_read() { 0) | rw_verify_area() { 0) | security_file_permission() { 0) 0.488 us | cap_file_permission(); 0) 1.720 us | } 0) 3. 4 us | } 0) | tty_read() { 0) 0.488 us | tty_paranoia_check(); 0) | tty_ldisc_ref_wait() { 0) | tty_ldisc_try() { 0) 0.615 us | _spin_lock_irqsave(); 0) 0.615 us | _spin_unlock_irqrestore(); 0) 5.436 us | } 0) 6.427 us | } Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 475ad8e2172d7f8b73af5532a8dad265b51339c2 Author: Harvey Harrison Date: Thu Nov 27 23:04:13 2008 -0800 decnet: compile fix for removal of byteorder wrapper Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 11cd41b893895c76a8f9bee9467f4b0869b5eeb3 Author: Takashi Iwai Date: Fri Nov 28 07:22:18 2008 +0100 ALSA: hda - Fix build error with CONFIG_SND_HDA_POWER_SAVE Moved power_save field initialization inside a proper ifdef to fix a build error without CONFIG_SND_HDA_POWER_SAVE. Signed-off-by: Takashi Iwai commit feea6a574d432e08cebf66d993a6ed1f310e0e5d Author: Al Viro Date: Thu Nov 27 15:34:07 2008 -0800 ixgbe: section fixes ixgbe_init_interrupt_scheme() is called from ixgbe_resume(). Build that with CONFIG_PM and without CONFIG_HOTPLUG and you've got a problem. Several helpers called by it also are misannotated __devinit. Signed-off-by: Al Viro Signed-off-by: David S. Miller commit 157653ce79a606409a8bfb496cba797b2984b18f Author: Randy Dunlap Date: Thu Nov 27 15:30:53 2008 -0800 sctp: fix missing label when PROC_FS=n Fix missing label when CONFIG_PROC_FS=n: net/sctp/protocol.c: In function 'sctp_proc_init': net/sctp/protocol.c:106: error: label 'out_nomem' used but not defined make[3]: *** [net/sctp/protocol.o] Error 1 Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit 1289e9e8b42f973f2ab39e5f4f2239ff826c27e9 Author: Takashi Iwai Date: Thu Nov 27 15:47:11 2008 +0100 ALSA: hda - Modularize HD-audio driver Split the monolithc HD-audio driver into several pieces: - snd-hda-intel HD-audio PCI controller driver; loaded via udev - snd-hda-codec HD-audio codec bus driver - snd-hda-codec-* Specific HD-audio codec drivers When built as modules, snd-hda-codec (that is invoked by snd-hda-intel) looks up the codec vendor ID and loads the corresponding codec module automatically via request_module(). When built in a kernel, each codec drivers are statically hooked up before probing the PCI. This patch adds appropriate EXPORT_SYMBOL_GPL()'s and the module information for each driver, and driver-linking codes between codec-bus and codec drivers. TODO: - Avoid EXPORT_SYMBOL*() when built-in kernel - Restore __devinit appropriately depending on the condition Signed-off-by: Takashi Iwai commit 73f6a12ed187b7e7ac9334d1419ba7bf7ac1be26 Author: Julia Lawall Date: Thu Nov 27 15:40:40 2008 +0100 ALSA: sound/pci/mixart/mixart.c: Add missing snd_card_free The function snd_mixart_create creates a link between mgr and card that allows snd_mixart_free to free card as well. But if snd_mixart_create fails, then the link has not been created and card has to be freed explicitly. The semantic match that finds the problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; statement S,S1; position p1,p2,p3; expression E,E1; type T,T1; expression *ptr != NULL; @@ ( if ((x@p1 = snd_card_new(...)) == NULL) S | x@p1 = snd_card_new(...); ) ... when != snd_card_free(...,(T)x,...) when != if (...) { <+... snd_card_free(...,(T)x,...) ...+> } when != true x == NULL || ... when != x = E when != E = (T)x when any ( if (x == NULL || ...) S1 | if@p2 (...) { ... when != snd_card_free(...,(T1)x,...) when != if (...) { <+... snd_card_free(...,(T1)x,...) ...+> } when != x = E1 when != E1 = (T1)x ( return \(0\|<+...x...+>\|ptr\); | return@p3 ...; ) } ) @ script:python @ p1 << r.p1; p3 << r.p3; @@ print "* file: %s snd_card_new: %s return: %s" % (p1[0].file,p1[0].line,p3[0].line) // Signed-off-by: Julia Lawall Signed-off-by: Takashi Iwai commit 30d72e9f614e7bd76e28d4d92bd54d90a96905bb Author: Takashi Iwai Date: Thu Nov 27 15:25:34 2008 +0100 ALSA: hda - Fix creation of automatic capture mixers Fixed a wrong boundary check of num_adc_nids in set_capture_mixer() in patch_realtek.c. Signed-off-by: Takashi Iwai commit 529bd6c4a63f8468fd66f63fdc22d7070439b3cd Author: Takashi Iwai Date: Thu Nov 27 14:17:01 2008 +0100 ALSA: hda - Fix PCM reconfigure The reconfiguration of PCM affected all PCM streams on the bus, but this this should be done rather only for the target codec. This patch does the following: - introduce bitmap indicating the PCM device usages on a hda_bus - refactor the PCM build functions - fix __devinit prefix in some fucntions - add a proper ifdef around HDA-reconfig-specific functions Signed-off-by: Takashi Iwai commit c2c631e318091118587f3b766347d259c9265b8b Author: Cyrill Gorcunov Date: Wed Nov 26 22:17:00 2008 +0300 x86: entry_64.S - use ENTRY to define child_rip child_rip is called not by its name but indirectly rather so make it global and aligned. Signed-off-by: Cyrill Gorcunov Acked-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit 33454539f386a2beb38269bea5fff82b3d56b0e9 Author: gorcunov@gmail.com Date: Wed Nov 26 22:17:02 2008 +0300 x86: entry_64.S - use X86_EFLAGS_IF instead of hardcoded number Impact: cleanup Signed-off-by: Cyrill Gorcunov Acked-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit fee2fba3586f78762ecc5f432dfd3602765a31b3 Author: Takashi Iwai Date: Thu Nov 27 12:43:28 2008 +0100 ALSA: hda - Move power_save option to hda_intel.c Move power_save option into hda_intel.c, and make a field in hda_bus, instead of keeping module parameters in separate files. Signed-off-by: Takashi Iwai commit 986862bdf17655d012f9b0654925dccdcc4183c9 Author: Takashi Iwai Date: Thu Nov 27 12:40:13 2008 +0100 ALSA: hda - make some functions static Minor clean ups: move snd_hda_codecs_inuse() into hda_intel.c and make static. Also, make snd_hda_query_supported_pcm() static as it's used only in hda_codec.c. Signed-off-by: Takashi Iwai commit d211af055d0c12dc3416c2886e6fbdc6eb74a381 Author: Alexander van Heukelum Date: Mon Nov 24 15:38:45 2008 +0100 i386: get rid of the use of KPROBE_ENTRY / KPROBE_END entry_32.S is now the only user of KPROBE_ENTRY / KPROBE_END, treewide. This patch reorders entry_64.S and explicitly generates a separate section for functions that need the protection. The generated code before and after the patch is equal. The KPROBE_ENTRY and KPROBE_END macro's are removed too. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit ddeb8f2149de280d54f0c8910cead42e6042b2cb Author: Alexander van Heukelum Date: Mon Nov 24 13:24:28 2008 +0100 x86_64: get rid of the use of KPROBE_ENTRY / KPROBE_END Impact: clean up assembly macros and annotations - with some object impact entry_64.S is the only user of KPROBE_ENTRY / KPROBE_END on x86_64. This patch reorders entry_64.S and explicitly generates a separate section for functions that need the protection. The generated code before and after the patch is equal. Implicitly changing sections in assembly files makes it more difficult to follow why the assembler is doing certain things. For example, .p2align 5 KPROBE_ENTRY(...) was not doing what you would expect. Other section changes (__ex_table, .fixup, .init.rodata) are done explicitly already. Signed-off-by: Alexander van Heukelum Acked-by: Jan Beulich Signed-off-by: Ingo Molnar commit 83a8df618eb04bd2819a758f3b409b1449862434 Author: Frederic Weisbecker Date: Thu Nov 27 01:46:33 2008 +0100 tracing/function-graph-tracer: enhancements for the trace output Impact: enhance the output of the graph-tracer This patch applies some ideas of Ingo Molnar and Steven Rostedt. * Output leaf functions in one line with parenthesis, semicolon and duration output. * Add a second column (after cpu) for an overhead sign. if duration > 100 us, "!" if duration > 10 us, "+" else " " * Print output in us with remaining nanosec: u.n * Print duration on the right end, following the indentation of the functions. Use also visual clues: "-" on entry call (no duration to output) and "+" on return (duration output). The name of the tracer has been fixed as well: function-branch becomes function_branch. Here is an example of the new output: CPU[000] dequeue_entity() { - CPU[000] update_curr() { - CPU[000] update_min_vruntime(); + 0.512 us CPU[000] } + 1.504 us CPU[000] clear_buddies(); + 0.481 us CPU[000] update_min_vruntime(); + 0.504 us CPU[000] } + 4.557 us CPU[000] hrtick_update() { - CPU[000] hrtick_start_fair(); + 0.489 us CPU[000] } + 1.443 us CPU[000] + } + 14.655 us CPU[000] + } + 15.678 us CPU[000] + } + 16.686 us CPU[000] msecs_to_jiffies(); + 0.481 us CPU[000] put_prev_task_fair(); + 0.504 us CPU[000] pick_next_task_fair(); + 0.482 us CPU[000] pick_next_task_rt(); + 0.504 us CPU[000] pick_next_task_fair(); + 0.481 us CPU[000] pick_next_task_idle(); + 0.489 us CPU[000] _spin_trylock(); + 0.655 us CPU[000] _spin_unlock(); + 0.609 us CPU[000] ------------8<---------- thread bash-2794 ------------8<---------- CPU[000] finish_task_switch() { - CPU[000] _spin_unlock_irq(); + 0.722 us CPU[000] } + 2.369 us CPU[000] ! } + 501972.605 us CPU[000] ! } + 501973.763 us CPU[000] copy_from_read_buf() { - CPU[000] _spin_lock_irqsave(); + 0.670 us CPU[000] _spin_unlock_irqrestore(); + 0.699 us CPU[000] copy_to_user() { - CPU[000] might_fault() { - CPU[000] __might_sleep(); + 0.503 us CPU[000] } + 1.632 us CPU[000] __copy_to_user_ll(); + 0.542 us CPU[000] } + 3.858 us CPU[000] tty_audit_add_data() { - CPU[000] _spin_lock_irq(); + 0.609 us CPU[000] _spin_unlock_irq(); + 0.624 us CPU[000] } + 3.196 us CPU[000] _spin_lock_irqsave(); + 0.624 us CPU[000] _spin_unlock_irqrestore(); + 0.625 us CPU[000] + } + 13.611 us CPU[000] copy_from_read_buf() { - CPU[000] _spin_lock_irqsave(); + 0.624 us CPU[000] _spin_unlock_irqrestore(); + 0.616 us CPU[000] } + 2.820 us CPU[000] Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit c7cc77307669336a08928ab8668bdb3f3bcc021b Merge: 0bfc245... d144d5e... 437f24f... f3f47a6... Author: Ingo Molnar Date: Thu Nov 27 10:56:13 2008 +0100 Merge branches 'tracing/blktrace', 'tracing/ftrace', 'tracing/function-graph-tracer' and 'tracing/power-tracer' into tracing/core commit 40a914fa72abdb9193ecad7dd82e48d952ab9d24 Author: Alexander Duyck Date: Thu Nov 27 00:24:37 2008 -0800 igb: Add support for pci-e Advanced Error Reporting Add the calls necessary to enable advanced error reporting for igb on systems with AER enabled. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit f4113030e73db80bc5368a8303458008975402dd Author: Jeff Kirsher Date: Thu Nov 27 00:23:37 2008 -0800 e100: cleanup link up/down messages The system log messages created on a link status change need to follow a specific format to work with tools some customers use. This also makes the messages consistant with other Intel driver link messages. Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d276016cf990f492cb33a1ff61d789730b3f0d6d Author: Jeff Kirsher Date: Thu Nov 27 00:23:12 2008 -0800 ixgb: cleanup link up/down messages The system log messages created on a link status change need to follow a specific format to work with tools some customers use. This also makes the messages consistant with other Intel driver link messages. Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit b30c4d8f8210bc4ea92942ab786407ec2d780549 Author: Jeff Kirsher Date: Thu Nov 27 00:22:45 2008 -0800 e1000: cleanup link up/down messages The system log messages created on a link status change need to follow a specific format to work with tools some customers use. This also makes the messages consistant with other Intel driver link messages. Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit a46e534bc76ed4e92daa181526b30274d37c6979 Author: Jeff Kirsher Date: Thu Nov 27 00:22:21 2008 -0800 ixgbe: cleanup link up/down messages The system log messages created on a link status change need to follow a specific format to work with tools some customers use. This also makes the messages consistant with other Intel driver link messages. Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 527d47c11149afb5dd59eaca57d5b4d816ac4f20 Author: Alexander Duyck Date: Thu Nov 27 00:21:39 2008 -0800 igb: link up/down messages must follow a specific format The system log messages created on a link status change need to follow a specific format to work with tools some customers use. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit c4106aa88a440430d387e022f2ad6dc1e0d52e98 Author: Harvey Harrison Date: Thu Nov 27 00:12:47 2008 -0800 decnet: remove private wrappers of endian helpers Signed-off-by: Harvey Harrison Reviewed-by: Steven Whitehouse Signed-off-by: David S. Miller commit 5b9ab2ec04ec1e1e53939768805612ac191d7ba2 Merge: 851fd7b... 3ec1925... Author: David S. Miller Date: Wed Nov 26 23:48:40 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/hp-plus.c drivers/net/wireless/ath5k/base.c drivers/net/wireless/ath9k/recv.c net/wireless/reg.c commit 12666f050b3b4b122f61ef12707f33fadb4a78b5 Author: Daniel Mack Date: Thu Nov 27 08:21:05 2008 +0100 ALSA: snd-usb-caiaq: clean up the control adding code snd-usb-caiaq: clean up the control adding code by moving dulpicate code to a function. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 851fd7bd88524bb4e20f3def3127cd9167d6d0cf Author: Divy Le Ray Date: Wed Nov 26 15:38:36 2008 -0800 cxgb3: Update FW loading path. Update FW loading path to accomodate in-kernel images location Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit ad58633c8381e88b54055771877726d3d5d24734 Author: Divy Le Ray Date: Wed Nov 26 15:37:50 2008 -0800 cxgb3: integrate FW and protocol engines in the kernel Include firmware and protocol images in the kernel image if requested Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit 5256554489531f3e177e7308752d8f0681cdd5a6 Author: Divy Le Ray Date: Wed Nov 26 15:35:59 2008 -0800 cxgb3: avoid potential memory leak. Add consistency in alloc_ring() parameter checking to avoid potential memory leaks. alloc_ring() callers are correct fo far. Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit 43a944f37364e22fff4cbc1e12d227b196e47612 Author: Divy Le Ray Date: Wed Nov 26 15:35:26 2008 -0800 cxgb3: set hard_xmit in the netdev_ops Fix t3_eth_xmit() missing into the netdev_ops structure. Signed-off-by: Divy Le Ray Signed-off-by: David S. Miller commit b5ddedc9cc01b1d86015af08c5f1694191804530 Merge: 244e6c2... b235507... Author: David S. Miller Date: Wed Nov 26 15:28:40 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 244e6c2d0724bc4908a1995804704bdee3b31528 Author: Jarek Poplawski Date: Wed Nov 26 15:24:32 2008 -0800 pkt_sched: gen_estimator: Optimize gen_estimator_active() Since all other gen_estimator functions use bstats and rate_est params together, and searching for them is optimized now, let's use this also in gen_estimator_active(). The return type of gen_estimator_active() is changed to bool, and gen_find_node() parameters to const, btw. In tcf_act_police_locate() a check for ACT_P_CREATED is added before calling gen_estimator_active(). Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 54f01916297bafc18bd7df4e2300a0544a84fce3 Author: Daniel Mack Date: Wed Nov 26 17:47:36 2008 +0100 ASoC: Allow more routing features for tlv320aic3x This patch enables more routing functions for tlv320aic3x codecs. It is now possible to - control the volume of the PGA bypass path for the HPL, HPR, HPLCOM and HPRCOM outputs individually - route right line1 input to the left ADC channel - route left line1 input to the right ADC channel - route right mic3 input to left DAC channel - route left mic3 input to right DAC channel - route left line1 input to right line1 output - route right line1 input to left line1 output Signed-off-by: Daniel Mack Signed-off-by: Mark Brown commit b235507cc5e552b9e75678d596727249e8fba01b Author: John W. Linville Date: Tue Nov 25 16:47:36 2008 -0500 mac80211_hwsim: fix-up some print_mac merge damage Some print_mac -> %pM conversions got lost in some merge or another... Signed-off-by: John W. Linville commit 860c6e6a15c5082e1a1ff1faeb56cdf439380e87 Author: Ivan Kuten Date: Mon Nov 24 15:17:54 2008 -0500 mac80211: fix unaligned access in ieee80211_wep_encrypt_data Signed-off-by: Ivan Kuten Signed-off-by: John W. Linville commit b50563a68520dea3a19b5a8013c4ae0f8e3b49dd Author: Christian Lamparter Date: Mon Nov 24 14:52:51 2008 +0100 p54: fix wmm queue settings This patch fixes a regression (introduced by "p54: more definitions form lmac_longbow.h and pda.h") It turned out that the "ret" variable wasn't initialized and this caused the following warnings/errors to appear: wmaster1: failed to set TX queue parameters for queue 2 wmaster1: failed to set TX queue parameters for queue 3 wmaster1: failed to set TX queue parameters for queue 1 wmaster1: failed to set TX queue parameters for queue 0 Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 99405f930fda280c9114b15e178902cd204f967f Author: Sujith Date: Mon Nov 24 12:08:35 2008 +0530 ath9k: Use proper TX channel width for setting channels The TX channel width of the BSS can be obtained only after association. In all cases, default to HT20 if HT is enabled, and set chan width to HT40 only if the BSS supports it. Signed-off-by: Sujith Signed-off-by: John W. Linville commit ff37e337beb838d4c2540fa93b2c4c632ee17750 Author: Sujith Date: Mon Nov 24 12:07:55 2008 +0530 ath9k: Code scrub Merge core.c and base.c Remove Antenna Diversity (unused now). Remove unused chainmask handling code. Comment, indentation scrub. Signed-off-by: Sujith Signed-off-by: John W. Linville commit bf8c1ac6d81ba8c0e4dc2215f84f5e2a3c8227e8 Author: Jouni Malinen Date: Sat Nov 22 22:00:31 2008 +0200 nl80211: Change max TX power to be in mBm instead of dBm In order to be consistent with NL80211_ATTR_POWER_RULE_MAX_EIRP, change NL80211_FREQUENCY_ATTR_MAX_TX_POWER to use mBm and U32 instead of dBm and U8. This is a userspace interface change, but the previous version had not yet been pushed upstream and there are no userspace programs using this yet, so there is justification to get this change in as long as it goes in before the previous version gets out. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 39d1ffee57c7ce02c90ec8e9272df8aa8ddf600f Author: David Kilroy Date: Sat Nov 22 10:37:28 2008 +0000 orinoco: Provide option to avoid unnecessary fw caching Make firmware caching on startup optional, and make it default. When the option is not selected and PM_SLEEP is configured, then cache firmware in the suspend pm_notifier. This configuration saves about 64k RAM in normal use, but can lead to a situation where the driver is configured to use a different firmware. Signed-off by: David Kilroy Signed-off-by: John W. Linville commit ac7cafd72261857278dff9f737e600b30088653b Author: David Kilroy Date: Sat Nov 22 10:37:27 2008 +0000 orinoco: Resume spectrum_cs in the same way as orinoco_cs Retrieval of external firmware has been resolved, and should work with the standard orinoco resume algorithm. This fixes an issue where priv->hw_unavailable indicates the card is ready when firmware has not been loaded. Signed-off by: David Kilroy Signed-off-by: John W. Linville commit 2cea7b261942009e90befbe41d998e2931547026 Author: David Kilroy Date: Sat Nov 22 10:37:26 2008 +0000 orinoco: Cache Symbol firmware Signed-off by: David Kilroy Signed-off-by: John W. Linville commit 7473431297761fa644a128a497b91e299676f501 Author: David Kilroy Date: Sat Nov 22 10:37:25 2008 +0000 orinoco: Separate fw caching from download This refactorring will make it easier to share logic with Symbol firmware. Signed-off by: David Kilroy Signed-off-by: John W. Linville commit cb71d9bafb37adab50ddce53bb119a84b4966c06 Author: Luis R. Rodriguez Date: Fri Nov 21 17:41:33 2008 -0800 ath9k: Handle -ENOMEM on RX gracefully We would get an oops on RX on -ENOMEM by passing NULL to the hardware on ath_rx_buf_link(). The oops would look something like this: ath_rx_tasklet+0x515/0x53b ath9k_tasklet+0x48 tasklet_action __do_softirq irq_exit do_IRQ RIP: ath_rx_buf_link+0x3a We correct this by handling the requeue directly on the ath_rx_tasklet() and trying to allocate an skb *prior* to sending up the last hardware processed skb. If we run out of memory this gauranteees we have skbs to work with while it simply drops new received frames. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 24689c8590be6bc0486af665c5ceda6aeff4d53a Author: Henrique de Moraes Holschuh Date: Fri Nov 21 20:40:10 2008 -0200 rfkill: always call get_state() hook on resume We "optimize" away the get_state() hook call on rfkill_toggle_radio when doing a forced state change. This means the resume path is not calling get_state() as it should. Call it manually on the resume handler, as we don't want to mess with the EPO path by removing the optimization. This has the added benefit of making it explicit that rfkill->state could have been modified before we hit the rfkill_toggle_radio() call in the class resume handler. Signed-off-by: Henrique de Moraes Holschuh Acked-by: Ivo van Doorn Cc: Matthew Garrett Cc: Alan Jenkins Signed-off-by: John W. Linville commit f80b5e99c7dac5a9a0d72496cec5075a12cd1476 Author: Henrique de Moraes Holschuh Date: Fri Nov 21 20:40:09 2008 -0200 rfkill: preserve state across suspend The rfkill class API requires that the driver connected to a class call rfkill_force_state() on resume to update the real state of the rfkill controller, OR that it provides a get_state() hook. This means there is potentially a hidden call in the resume code flow that changes rfkill->state (i.e. rfkill_force_state()), so the previous state of the transmitter was being lost. The simplest and most future-proof way to fix this is to explicitly store the pre-sleep state on the rfkill structure, and restore from that on resume. Signed-off-by: Henrique de Moraes Holschuh Acked-by: Ivo van Doorn Cc: Matthew Garrett Cc: Alan Jenkins Signed-off-by: John W. Linville commit 5925d976fbe99859d636e7075e5304625503c5fe Author: Vivek Natarajan Date: Fri Nov 21 22:19:50 2008 -0800 mac80211: Look out for some other AP when disassoc is received. When a disassoc packet is received from the AP with a reason code of 'leaving the BSS', mac80211 should go into DISABLED state just as it would do if the AP suddenly went away for some reason, as that is what will happen shortly after the AP leaves anyway. Signed-off-by: Vivek Natarajan Acked-by: Johannes Berg Signed-off-by: John W. Linville commit e2f367f269fe19375f10e63efe0f2a6d3ddef8e6 Author: Jouni Malinen Date: Fri Nov 21 19:01:30 2008 +0200 nl80211: Report max TX power in NL80211_BAND_ATTR_FREQS This is useful information to provide for userspace (e.g., hostapd needs this to generate Country IE). Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 1048643ea94d742bd409f343e284af430656fd6c Author: Felix Fietkau Date: Thu Nov 20 15:16:22 2008 +0100 ath5k: Clean up eeprom parsing and add missing calibration data This patch brings the ath5k eeprom parsing code in sync with the work done on ath_info by Nick Kossifidis and integrates the missing parts based on the code of the Atheros Legacy HAL release. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 7ac47010a444d9f4285cf1ae06780633a112489b Author: Vasanthakumar Thiagarajan Date: Thu Nov 20 11:51:18 2008 +0530 ath9k: Dont update rate control for every AMPDU Update the rate control only with the tx status of first AMPDU of an aggregation. This patch fixes frequent drops in throughput. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 40fc95d57caf258e20282f6526b695426d65a73a Author: Winkler, Tomas Date: Wed Nov 19 15:32:27 2008 -0800 iwlwifi: TX update chicken bits This instructs FH to increment the retry count of a packet when it is brought from the memory to TX-FIFO to save transactions during aggregation flow. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 31a73fe4f3284d94d52774c285e9e98a5f441d21 Author: Winkler, Tomas Date: Wed Nov 19 15:32:26 2008 -0800 iwlwifi: TX setup fix confusion between TX queue and TX DMA channel This patch configures correctly TX DMA channel. It is not the same as TX queue. Signed-off-by: Tomas Winkler Acked-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 25e35a56d5f4795cf52cdd0830a91e3103396cfe Author: Winkler, Tomas Date: Wed Nov 19 15:32:25 2008 -0800 iwlwifi: 4965 define firmware file name once Apply same idiom as in 5000 introduced by 'iwlwifi: define firmware file name once' Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 201706ac0b1ab6df5343119883964ec7272844b0 Author: Tomas Winkler Date: Wed Nov 19 15:32:24 2008 -0800 iwlwifi: enable base band calibration in 5000 HW This patch adds base band calibration support. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 83dde8c90522b89366e241bdbd69113f7094c249 Author: Winkler, Tomas Date: Wed Nov 19 15:32:23 2008 -0800 iwlwifi: move iwl_clear_stations_table to iwl-sta.c This patch moves iwl_clear_stations_table into iwl-sta.c Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit ce546fd2eacdbd8dc15f3d2ffd9a95661d082919 Author: Abhijeet Kolekar Date: Wed Nov 19 15:32:22 2008 -0800 iwl3945 : Fix ad-hoc mode for 3945 Patch fixes the ad-hoc mode by 1) Removing redundant clear_stations_table which prevented generation of beacons. 2) Setting assoc_id to 1. It was never set so preventing tx flow in iwl3945_tx_skb. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 0e149cf5a1b1900484f4b808d59a5f246cd720be Author: Bob Copeland Date: Mon Nov 17 23:40:38 2008 -0500 ath5k: set mac address in add_interface Configure the mac address in add_interface and clear it in remove_interface so that users can change the mac address to something other than the one in the eeprom. Also avoid setting it at attach time so that we won't ack packets until fully set up. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 8f93b8b337763a58fcdf23333ffe752db6c93bae Author: Sujith Date: Tue Nov 18 09:10:42 2008 +0530 ath9k: Use straightforward PCI routines to setup the TX buffer. Signed-off-by: Sujith Signed-off-by: John W. Linville commit daa9deb359252496796fa2b7420012e252b327b6 Author: Sujith Date: Tue Nov 18 09:10:22 2008 +0530 ath9k: Update TX trigger level on a FIFO underrun. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 788a3d6f3df595a6537ef537433c870d090afe02 Author: Sujith Date: Tue Nov 18 09:09:54 2008 +0530 ath9k: Fix bug in deciphering channel flags CHANNEL_CCK flag is set for all 2 Ghz channels, so IS_CHAN_CCK() would turn out to be true for all channles in that band. Use IS_CHAN_B() now, which checks the channel mode and not the channel flags. Signed-off-by: Sujith Signed-off-by: John W. Linville commit c428839008f6638317a0db102d4e65d631c288a6 Author: Sujith Date: Tue Nov 18 09:09:30 2008 +0530 ath9k: Move TX completion routine to xmit.c Also, use a helper function to setup RC status data when processing completed TX descriptors. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 2c5a744d43a6a08666930906742fbe704739ba6f Author: Sujith Date: Tue Nov 18 09:08:33 2008 +0530 ath9k: Use helpers Break down huge functions, use helper functions or macros instead. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 46d14a58ffb42702e4c1b8bb88cfa05414617f4c Author: Sujith Date: Tue Nov 18 09:08:13 2008 +0530 ath9k: General code scrub Replace TRUE/FALSE macros with VALID/INVALID macros. Follow a consistent variable convention. Remove unnecessary comments. Add all RC phy macros into a single enum. Merge functions into reasonably sized entities. Signed-off-by: Sujith Signed-off-by: John W. Linville commit e63835b0f4d8545942fd41b3ca32bbf71bd73e4b Author: Sujith Date: Tue Nov 18 09:07:53 2008 +0530 ath9k: Remove ath9k_rate_table Maintaining two sets of rate tables is redundant, remove one and use struct ath_rate_table exclusively. Signed-off-by: Sujith Signed-off-by: John W. Linville commit a8efee4f4740c61fccaf73608df282c4ee24ae86 Author: Sujith Date: Tue Nov 18 09:07:30 2008 +0530 ath9k: Use rate_driver_data Remove the hack using vif, and use rate_driver_data within skb->cb to hold driver specific rate information. Setup the rate series in the skb's tx control area and remove all references to ath9k specific rate series ( using struct ath_rc_series ). Signed-off-by: Sujith Signed-off-by: John W. Linville commit fe7f4a77450c1d0e463a9b1456b40c2305433e41 Author: Sujith Date: Tue Nov 18 09:07:06 2008 +0530 ath9k: Remove ath_rate_softc Move the hw rate tables to ath_softc, and access them directly. tx_triglevel_max is global, move it to ath_rate_node. Now that ath_rate_softc is gone, rate control attach becomes simpler. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 5ddfac3b550250388f1222ec7d09069784a68af6 Author: Sujith Date: Tue Nov 18 09:06:44 2008 +0530 ath9k: Remove rate control reference in VAP Rate control init is now confined to itself, using the HT capabilites of the STA from rate_init(). Signed-off-by: Sujith Signed-off-by: John W. Linville commit ffd651c620a2f27502ee5d4517a122c072f13073 Author: Sujith Date: Tue Nov 18 09:06:18 2008 +0530 ath9k: We don't support non-HT devices, so remove superfluous code. Signed-off-by: Sujith Signed-off-by: John W. Linville commit be0418ada3fad110977a9d5fa16d4907d4e7d726 Author: Sujith Date: Tue Nov 18 09:05:55 2008 +0530 ath9k: Revamp RX handling Remove a lot of old, crufty code and make RX status reporting a bit sane and clean. Do not do anything to the RX skb before unmapping. So in ath_rx_tasklet(), move the skb_put() after PCI unmap. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 2b406f1e68dd5348384fd166ac532af46bfc87fc Author: Sujith Date: Tue Nov 18 09:05:35 2008 +0530 ath9k: Nuke fixed rate handling in driver Signed-off-by: Sujith Signed-off-by: John W. Linville commit 46494e6df8f6d9739d56c8b980229af4e5d2353f Author: Sujith Date: Tue Nov 18 09:05:13 2008 +0530 ath9k: Remove half/quarter rate tables Half/Quarter rate tables are needed only for legacy chipsets. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 4df8ec64fdec5a99ebfe41467d414e235d5d051e Author: Sujith Date: Tue Nov 18 09:04:21 2008 +0530 ath9k: Remove ath_rate_newassoc() Signed-off-by: Sujith Signed-off-by: John W. Linville commit 7b4d27357aebfdaa039f365fd24f2a795af5c0bb Author: Sujith Date: Tue Nov 18 09:04:00 2008 +0530 ath9k: Remove ath_setup_rates Setup legacy rates in ath_rate_init() itself. Signed-off-by: Sujith Signed-off-by: John W. Linville commit fe60594a76d04b4fdea597bf93e4186a03d8d60c Author: Sujith Date: Tue Nov 18 09:03:36 2008 +0530 ath9k: Simplify RC alloc/free functions Signed-off-by: Sujith Signed-off-by: John W. Linville commit 256b77593f3ec07f58cd1f0d573ffe9ccd941b5b Author: Sujith Date: Tue Nov 18 09:03:12 2008 +0530 ath9k: Merge struct ath_tx_ratectrl with ath_rate_node Avoid casting of ath_tx_ratctrl and access the elements directly. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 3fcdfb4b940a226184bc01bfc5c58b32b509b965 Author: Vasanthakumar Thiagarajan Date: Tue Nov 18 01:19:56 2008 +0530 ath9k: Fix panic while unregistering rfkill [ 6133.670329] BUG: unable to handle kernel NULL pointer dereference at 0000000000000010 [ 6133.672802] IP: [] ieee80211_stop_queues+0x26/0x40 [mac80211] [ 6133.672802] PGD 759dc067 PUD 74f1d067 PMD 0 [ 6133.672802] Oops: 0002 [#1] PREEMPT SMP [ 6133.672802] last sysfs file: /sys/class/backlight/acpi_video0/brightness [ 6133.672802] CPU 0 [ 6133.672802] Modules linked in: ath9k(-) mac80211 pciehp pci_hotplug arc4 ecb joydev pcmcia ppdev lp ppp_generic psmouse sg pcspkr s] [ 6133.735830] Pid: 4445, comm: rmmod Tainted: G W 2.6.28-rc5-wl #1 [ 6133.735830] RIP: 0010:[] [] ieee80211_stop_queues+0x26/0x40 [mac80211] [ 6133.735830] RSP: 0018:ffff88007d1efd10 EFLAGS: 00010246 [ 6133.735830] RAX: 0000000000000000 RBX: ffff880074f41aa0 RCX: 0000000000000000 [ 6133.735830] RDX: 0000000000000010 RSI: 0000000000000000 RDI: ffff880074f40340 [ 6133.735830] RBP: ffff880074990000 R08: 0000000000000000 R09: 000000000000224d [ 6133.735830] R10: 0000000000000000 R11: ffffffff8031dc70 R12: 0000000000000000 [ 6133.735830] R13: 0000000000000001 R14: ffff880074f46c9c R15: 0000000000000000 [ 6133.735830] FS: 00007f1e2e0bc6f0(0000) GS:ffffffff805e0b80(0000) knlGS:0000000000000000 [ 6133.735830] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b [ 6133.735830] CR2: 0000000000000010 CR3: 0000000075593000 CR4: 00000000000006e0 [ 6133.735830] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 6133.735830] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [ 6133.735830] Process rmmod (pid: 4445, threadinfo ffff88007d1ee000, task ffff88007c0c8000) [ 6133.735830] Stack: [ 6133.735830] ffffffffa034d583 ffff88007c7d9410 ffff88007c7d9410 ffff88007c7d9410 [ 6133.735830] ffffffff80481dab ffff880074f41aa0 00000000fffffff0 0000000000000000 [ 6133.735830] 0000000000000001 0000000000000001 ffffffffa034d8a5 ffff88007c7d9400 [ 6133.735830] Call Trace: [ 6133.735830] [] ? ath_radio_disable+0x33/0x150 [ath9k] [ 6133.735830] [] ? __mutex_lock_slowpath+0x20b/0x2a0 [ 6133.735830] [] ? ath_sw_toggle_radio+0x65/0xa0 [ath9k] [ 6133.735830] [] ? rfkill_toggle_radio+0x74/0x140 [rfkill] [ 6133.735830] [] ? rfkill_remove_switch+0x67/0x80 [rfkill] [ 6133.735830] [] ? rfkill_unregister+0x25/0x50 [rfkill] [ 6133.735830] [] ? ath_detach+0xf5/0x140 [ath9k] [ 6133.735830] [] ? ath_pci_remove+0x29/0x80 [ath9k] [ 6133.735830] [] ? pci_device_remove+0x2c/0x60 [ 6133.735830] [] ? __device_release_driver+0x99/0x100 [ 6133.735830] [] ? driver_detach+0xc0/0xd0 [ 6133.735830] [] ? bus_remove_driver+0x8e/0xd0 [ 6133.735830] [] ? pci_unregister_driver+0x36/0xa0 [ 6133.735830] [] ? exit_ath_pci+0x10/0x29 [ath9k] [ 6133.735830] [] ? sys_delete_module+0x1cb/0x2d0 [ 6133.735830] [] ? do_munmap+0x349/0x390 [ 6133.735830] [] ? __up_write+0x21/0x150 [ 6133.735830] [] ? system_call_fastpath+0x16/0x1b [ 6133.735830] Code: c3 0f 1f 40 00 0f b7 57 5e 0f b7 47 5c 01 c2 74 30 31 c9 66 90 48 8b 57 78 0f b7 c1 48 c1 e0 07 48 03 82 00 03 00 [ 6133.735830] RIP [] ieee80211_stop_queues+0x26/0x40 [mac80211] Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 1548c86ab1552199a3b99b958ccfb590fc9c8f84 Author: Larry Finger Date: Mon Nov 17 09:08:21 2008 -0600 rtl8187: Fix transmission count sent to mac80211 In the commit entitled "mac80211/drivers: rewrite the rate control API", the meaning of the packet transmit count was changed from the number of retries to the total number. In driver rtl8187, this change was missed. Signed-off-by: Larry Finger Acked-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 1dc5a84166d83c892cbf192cad58ebdde95d3ac4 Author: Larry Finger Date: Sun Nov 16 17:09:25 2008 -0600 mac80211: Fix pid rate-setting algorithm to allow rate changes In commit 9ea2c74 named "mac80211/drivers: rewrite the rate control API", the meaning of status.rates[i].count was changed from number of retries to total number of tries. As a result, the pid rate-setting algorithm fails because every packet appears to have needed a retransmit. Signed-off-by: Larry Finger Acked-by: Johannes Berg Signed-off-by: John W. Linville commit d507748ac6de67369e76058a8a921cd22734f40a Author: Ivo van Doorn Date: Sun Nov 16 00:08:50 2008 +0100 rt2x00: Don't switch off LED on initialization When we switch off the LEDS during initialization we kill rt73usb from proper functioning. The immediate result after the first LED command are MCU failures and a complete breakdown of TX/RX. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit f941f8590c06c6b1a77c4b5a5df59f39a3c7d1e9 Author: Andrey Borzenkov Date: Sat Nov 15 17:15:09 2008 +0300 orinoco: indicate it is using dBm in wireless_stats and spy Since WE7 /proc/net/wireless checks whether level and noise are in dBm and shows them accordingly. Indicate that we return signal and noice levels in dBm. Before: Inter-| sta-| Quality | Discarded packets | Missed | WE face | tus | link level noise | nwid crypt frag retry misc | beacon | 22 eth1: 0000 65. 219. 165. 0 0 148 41 0 0 After: Inter-| sta-| Quality | Discarded packets | Missed | WE face | tus | link level noise | nwid crypt frag retry misc | beacon | 22 eth1: 0000 65. -37. -91. 0 0 0 0 0 0 While at it, replace raw numbers with appropriate macro. Signed-off-by: Andrey Borzenkov Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 8eb41c93685318d177276d1819915571aca7ebb1 Author: Luis R. Rodriguez Date: Fri Nov 14 17:44:53 2008 -0800 mac80211: make Minstrel the default rate control algorithm This makes minstrel the default rate control algorithm for mac80211. For more information see: http://wireless.kernel.org/en/developers/Documentation/mac80211/RateControl/minstrel If someone can come up with a better algorithm they get a prize (undisclosed). Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit eea0579fc85e64e9f05361d5aacf496fe7a151aa Author: Takashi Iwai Date: Wed Nov 26 14:13:03 2008 +0100 ALSA: pcsp - Fix starting the stream with HRTIMER_CB_IRQSAFE_UNLOCK With the callback mode HRTIMER_CB_IRQSAFE_UNLOCK, the start of the stream with zero delay doesn't work. Since IRQSAFE mode is removed, we have to change the pcsp start-up code. This patch splits the callback function to two parts, the triggering of the port and the calculation of the expire time, and the update of the ALSA PCM core. The first part is called both from the trigger-start and the hrtimer callback while the latter is handled only in the hrtimer callback. Signed-off-by: Takashi Iwai commit e7dd8c1bdacf658b0ade51facb2f7eaf40eb0ac4 Merge: ed31348... bc4a68f... Author: Takashi Iwai Date: Wed Nov 26 14:12:42 2008 +0100 Merge branch 'topic/misc' into topic/pcsp-fix Conflicts: sound/drivers/pcsp/pcsp_lib.c commit 0bfc24559d7945506184d86739fe365a181f06b7 Author: Ingo Molnar Date: Wed Nov 26 11:59:56 2008 +0100 blktrace: port to tracepoints, update Port to the new tracepoints API: split DEFINE_TRACE() and DECLARE_TRACE() sites. Spread them out to the usage sites, as suggested by Mathieu Desnoyers. Signed-off-by: Ingo Molnar Acked-by: Mathieu Desnoyers commit 5f3ea37c7716db4e894a480e0c18b24399595b6b Author: Arnaldo Carvalho de Melo Date: Thu Oct 30 08:34:33 2008 +0100 blktrace: port to tracepoints This was a forward port of work done by Mathieu Desnoyers, I changed it to encode the 'what' parameter on the tracepoint name, so that one can register interest in specific events and not on classes of events to then check the 'what' parameter. Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: Jens Axboe Signed-off-by: Ingo Molnar commit 414ff491b2ab68359c7a2037b30ccfea20d829d4 Author: Mark Brown Date: Wed Nov 26 10:32:26 2008 +0000 ASoC: Fix word wrapping in OMAP Kconfig Signed-off-by: Mark Brown commit 3d4cd60ed0533d3b33832e298530c7b021da982b Author: David S. Miller Date: Wed Nov 26 01:52:15 2008 -0800 smc-mca: Fix build failure due to typo. ultra_netdev_ops --> ultramca_netdev_ops Signed-off-by: David S. Miller commit 70355602879229c6f8bd694ec9c0814222bc4936 Author: Eric Dumazet Date: Wed Nov 26 01:08:18 2008 -0800 net: release skb->dst in sock_queue_rcv_skb() When queuing a skb to sk->sk_receive_queue, we can release its dst, not anymore needed. Since current cpu did the dst_hold(), refcount is probably still hot int this cpu caches. This avoids readers to access the original dst to decrement its refcount, possibly a long time after packet reception. This should speedup UDP and RAW receive path. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 4db646b1af8fdcf01d690d29eeae44cd937edb0d Author: Hannes Eder Date: Sun Nov 23 20:49:52 2008 +0100 x86: microcode: fix sparse warnings Impact: make global variables and a function static Fix following sparse warnings: arch/x86/kernel/microcode_core.c:102:22: warning: symbol 'microcode_ops' was not declared. Should it be static? arch/x86/kernel/microcode_core.c:206:24: warning: symbol 'microcode_pdev' was not declared. Should it be static? arch/x86/kernel/microcode_core.c:322:6: warning: symbol 'microcode_update_cpu' was not declared. Should it be static? arch/x86/kernel/microcode_intel.c:468:22: warning: symbol 'microcode_intel_ops' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: Ingo Molnar commit f3f47a6768a29448866da4422b6f6bee485c947f Author: Arjan van de Ven Date: Sun Nov 23 16:49:58 2008 -0800 tracing: add "power-tracer": C/P state tracer to help power optimization Impact: new "power-tracer" ftrace plugin This patch adds a C/P-state ftrace plugin that will generate detailed statistics about the C/P-states that are being used, so that we can look at detailed decisions that the C/P-state code is making, rather than the too high level "average" that we have today. An example way of using this is: mount -t debugfs none /sys/kernel/debug echo cstate > /sys/kernel/debug/tracing/current_tracer echo 1 > /sys/kernel/debug/tracing/tracing_enabled sleep 1 echo 0 > /sys/kernel/debug/tracing/tracing_enabled cat /sys/kernel/debug/tracing/trace | perl scripts/trace/cstate.pl > out.svg Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar commit 4f199629b0fba95fd5caecbf35ed68417d9a9b7a Author: Qinghuang Feng Date: Tue Nov 25 23:24:49 2008 +0800 ALSA: sound/pci/hda/hda_codec.c: cleanup kernel-doc There is no argument named @state in snd_hda_resume, remove its' comment. Signed-off-by: Qinghuang Feng Signed-off-by: Takashi Iwai commit 437f24fb897d409a9978eb71ecfaf279dcd94acd Author: Steven Rostedt Date: Wed Nov 26 00:16:27 2008 -0500 ftrace: add cpu annotation for function graph tracer Impact: enhancement for function graph tracer When run on a SMP box, the function graph tracer is confusing because it shows the different CPUS as changes in the trace. This patch adds the annotation of 'CPU[###]' where ### is a three digit number. The output will look similar to this: CPU[001] dput() { CPU[000] } 726 CPU[001] } 487 CPU[000] do_softirq() { CPU[001] } 2221 CPU[000] __do_softirq() { CPU[000] __local_bh_disable() { CPU[001] unroll_tree_refs() { CPU[000] } 569 CPU[001] } 501 CPU[000] rcu_process_callbacks() { CPU[001] kfree() { What makes this nice is that now you can grep the file and produce readable format for a particular CPU. # cat /debug/tracing/trace > /tmp/trace # grep '^CPU\[000\]' /tmp/trace > /tmp/trace0 # grep '^CPU\[001\]' /tmp/trace > /tmp/trace1 Will give you: # head /tmp/trace0 CPU[000] ------------8<---------- thread sshd-3899 ------------8<---------- CPU[000] inotify_dentry_parent_queue_event() { CPU[000] } 2531 CPU[000] inotify_inode_queue_event() { CPU[000] } 505 CPU[000] } 69626 CPU[000] } 73089 CPU[000] audit_syscall_exit() { CPU[000] path_put() { CPU[000] dput() { # head /tmp/trace1 CPU[001] ------------8<---------- thread pcscd-3446 ------------8<---------- CPU[001] } 4186 CPU[001] dput() { CPU[001] } 543 CPU[001] vfs_permission() { CPU[001] inode_permission() { CPU[001] shmem_permission() { CPU[001] generic_permission() { CPU[001] } 501 CPU[001] } 2205 Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 660c7f9be96321fc80026d76411bd15e6f418a72 Author: Steven Rostedt Date: Wed Nov 26 00:16:26 2008 -0500 ftrace: add thread comm to function graph tracer Impact: enhancement to function graph tracer Export the trace_find_cmdline so the function graph tracer can use it to print the comms of the threads. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit e53a6319cca69111c1643dc9f18f4465d7f1cbf0 Author: Steven Rostedt Date: Wed Nov 26 00:16:25 2008 -0500 ftrace: let function tracing and function return run together Impact: feature This patch enables function tracing and function return to run together. I've tested this by enabling the stack tracer and return tracer, where both the function entry and function return are used together with dynamic ftrace. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 5a45cfe1c64862e8cd3b0d79d7c4ba71c3118915 Author: Steven Rostedt Date: Wed Nov 26 00:16:24 2008 -0500 ftrace: use code patching for ftrace graph tracer Impact: more efficient code for ftrace graph tracer This patch uses the dynamic patching, when available, to patch the function graph code into the kernel. This patch will ease the way for letting both function tracing and function graph tracing run together. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit df4fc31558dd2a3a30292ddb3a64c2a5befcec73 Author: Steven Rostedt Date: Wed Nov 26 00:16:23 2008 -0500 ftrace: add function tracing to single thread Impact: feature to function trace a single thread This patch adds the ability to function trace a single thread. The file: /debugfs/tracing/set_ftrace_pid contains the pid to trace. Valid pids are any positive integer. Writing any negative number to this file will disable the pid tracing and the function tracer will go back to tracing all of threads. This feature works with both static and dynamic function tracing. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 3496f92beb9aa99ef21fccc154a36c7698e9c538 Merge: 200036c... 6ded6ab... Author: James Morris Date: Wed Nov 26 10:56:44 2008 +0530 Merge branch 'serge-next' into next commit dd24c00191d5e4a1ae896aafe33c6b8095ab4bd1 Author: Eric Dumazet Date: Tue Nov 25 21:17:14 2008 -0800 net: Use a percpu_counter for orphan_count Instead of using one atomic_t per protocol, use a percpu_counter for "orphan_count", to reduce cache line contention on heavy duty network servers. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 1748376b6626acf59c24e9592ac67b3fe2a0e026 Author: Eric Dumazet Date: Tue Nov 25 21:16:35 2008 -0800 net: Use a percpu_counter for sockets_allocated Instead of using one atomic_t per protocol, use a percpu_counter for "sockets_allocated", to reduce cache line contention on heavy duty network servers. Note : We revert commit (248969ae31e1b3276fc4399d67ce29a5d81e6fd9 net: af_unix can make unix_nr_socks visbile in /proc), since it is not anymore used after sock_prot_inuse_add() addition Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit c1b56878fb68e9c14070939ea4537ad4db79ffae Author: Stephen Hemminger Date: Tue Nov 25 21:14:06 2008 -0800 tc: policing requires a rate estimator Found that while trying average rate policing, it was possible to request average rate policing without a rate estimator. This results in no policing which is harmless but incorrect. Since policing could be setup in two steps, need to check in the kernel. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 71bcb09a57894fa35591ce93dd972065eeecb63a Author: Stephen Hemminger Date: Tue Nov 25 21:13:31 2008 -0800 tc: check for errors in gen_rate_estimator creation The functions gen_new_estimator and gen_replace_estimator can return errors, but they were being ignored. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0e991ec6a0340916d3f29bd5dcb35299069e7226 Author: Stephen Hemminger Date: Tue Nov 25 21:12:32 2008 -0800 tc: propogate errors from tcf_hash_create Allow tcf_hash_create to return different errors on estimator failure. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 5ceb40da9bacc8b056805d72efb1a52502d56b6b Author: Hiroshi Shimamoto Date: Mon Nov 24 18:24:11 2008 -0800 x86: signal: unify signal_{32|64}.c Impact: cleanup Unify signal_{32|64}.c! Mechanic unification - the two files are the same. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit e5fa2d063cf2ca38eae5fb3469315db669d5c041 Author: Hiroshi Shimamoto Date: Mon Nov 24 18:24:11 2008 -0800 x86: signal: unify signal_{32|64}.c, prepare Impact: cleanup Add #ifdef directive for 32-bit only code. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit bfeb91a9435889ef4fe7bfbb4b673f625e69e790 Author: Hiroshi Shimamoto Date: Mon Nov 24 18:23:12 2008 -0800 x86: signal: cosmetic unification of __setup_sigframe() and __setup_rt_sigframe() Impact: cleanup Add #ifdef directive to unify __setup_sigframe() and __setup_rt_sigframe(). Move them after {setup|restore}_sigcontext() declaration. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 2601657d223d82053d4e1fe1063091401e6b860a Author: Hiroshi Shimamoto Date: Mon Nov 24 18:21:37 2008 -0800 x86: signal: move {setup|restore}_sigcontext() Impact: cleanup Move {setup|restore}_sigcontext() declaration onto head of file. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit d144d5ee6a265823d39f75ecfed351a516295183 Author: Liming Wang Date: Wed Nov 26 10:29:26 2008 +0800 ftrace: adding other non-leaving .text sections Impact: widen the scope of recordmcount.pl Besides .text section, there are three .text sections that won't be freed after kernel booting. They are: .sched.text, .spinlock.text and .kprobes.text, which contain functions we can trace. But the last section ".kprobes.text" is particular, which has been marked as "notrace", we ignore it. Thus we add other two sections. Signed-off-by: Liming Wang Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 4ef8e768335637749af8d83327b174be0ea798a2 Author: Stephen Hemminger Date: Tue Nov 25 18:26:38 2008 -0800 ne2000: convert to net_device_ops Last driver for today. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 53cdd28961f979e4494c85e9ace8c3b51ae39a45 Author: Stephen Hemminger Date: Tue Nov 25 18:26:20 2008 -0800 3c503: convert to net_device_ops Another of the 8390p group. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit e0b8cb0e0e361a40e4ab9d8463762db2286571f5 Author: Stephen Hemminger Date: Tue Nov 25 18:25:49 2008 -0800 stnic: convert to net_device_ops Can just use common ei_netdev_ops definition. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 7d359daafe12b36b6da7ec6247caddf534183aed Author: Stephen Hemminger Date: Tue Nov 25 18:25:32 2008 -0800 apne: convert to net_device_ops Yet another driver. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 50014f1b939dff5e591e8aea9ec2932d146d2996 Author: Stephen Hemminger Date: Tue Nov 25 18:25:14 2008 -0800 ne2: convert to net_device_ops Almost there. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4be7ef4eac1d96a61af62bda8a59c1fb78c3b31b Author: Stephen Hemminger Date: Tue Nov 25 18:24:57 2008 -0800 hp: convert to net_device_ops Another old EISA driver converted. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0ec4d4fe413f4d16fb35a326a2dcf912872abcc8 Author: Stephen Hemminger Date: Tue Nov 25 18:24:38 2008 -0800 lne390: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8284abea9b49f9d8eae5b3ed36a9ea76a26388ca Author: Stephen Hemminger Date: Tue Nov 25 18:24:20 2008 -0800 e2100: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 9a9aa14a74d49f88e2c2a126b035c22bd1ab0d53 Author: Stephen Hemminger Date: Tue Nov 25 18:23:59 2008 -0800 es3210: convert to net_device_ops Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d269941b5b562d21ae37b2182846702a4a43f415 Author: Stephen Hemminger Date: Tue Nov 25 18:23:35 2008 -0800 ne3210: convert to net_device_ops By having common code in 8390.o don't need net_dev_ops in the driver. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d079841d795b83822357ef058ce8d7979dad854c Author: Stephen Hemminger Date: Tue Nov 25 18:23:06 2008 -0800 smc: convert to net_device_ops Convert both eisa and mca versions of this driver, though I doubt anyone still has the hardware. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d4a97d425c2f59849ebdcc94281ecf108818efbf Author: Stephen Hemminger Date: Tue Nov 25 18:22:42 2008 -0800 hp-plus: convert to net_device_ops Another driver converted to new infrastructure. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 458228bc4c1370de1dae4ba0f78469092ca21d75 Author: Stephen Hemminger Date: Tue Nov 25 18:21:56 2008 -0800 wd: use net_device_ops Another driver converted to net_device_ops; Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8884c092e5e4f9a1b6e44f2e02a3eb5481af87ab Author: Stephen Hemminger Date: Tue Nov 25 18:12:49 2008 -0800 8390: add common net_device ops Fix the defactoring of ei_XXX functions in 8390 and 8390p. Remove the tx_timeout hack since no driver including the 3c503 overrides tx_timeout at this time, looks like a legacy thing. Also, since several drivers all have same hooks, provide common netdev_ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit c2324b694fa8ffee382a124198c68754088e483c Author: Ingo Molnar Date: Wed Nov 26 03:10:01 2008 +0100 tracing: function graph tracer, fix fix return-tracer => graph-tracer namespace rename fallout. Signed-off-by: Ingo Molnar commit b27aeadb5948d400df83db4d29590fb9862ba49d Author: Alexey Dobriyan Date: Tue Nov 25 18:00:48 2008 -0800 netns xfrm: per-netns sysctls Make net.core.xfrm_aevent_etime net.core.xfrm_acq_expires net.core.xfrm_aevent_rseqth net.core.xfrm_larval_drop sysctls per-netns. For that make net_core_path[] global, register it to prevent two /proc/net/core antries and change initcall position -- xfrm_init() is called from fs_initcall, so this one should be fs_initcall at least. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit c68cd1a01ba56995d85a4a62b195b2b3f6415c64 Author: Alexey Dobriyan Date: Tue Nov 25 18:00:14 2008 -0800 netns xfrm: /proc/net/xfrm_stat in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 59c9940ed0ef026673cac52f2eaed77af7d486da Author: Alexey Dobriyan Date: Tue Nov 25 17:59:52 2008 -0800 netns xfrm: per-netns MIBs Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 4fb236bac9fc7d51e2267866de6d4c30e549d2f8 Author: Alexey Dobriyan Date: Tue Nov 25 17:59:27 2008 -0800 netns xfrm: AH/ESP in netns! Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 7013ec30e0e2bc5b1e602e19a4e0668f9b7c0a72 Author: Alexey Dobriyan Date: Tue Nov 25 17:59:00 2008 -0800 netns PF_KEY: per-netns /proc/pfkey Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 07fb0f1799dcb6b3df527909811fd6704278842e Author: Alexey Dobriyan Date: Tue Nov 25 17:58:31 2008 -0800 netns PF_KEY: part 2 * interaction with userspace -- take netns from userspace socket. * in ->notify hook take netns either from SA or explicitly passed -- we don't know if SA/SPD flush is coming. * stub policy migration with init_net for now. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 3fa87a3210a24ae406c2ccd37a52585baeb21546 Author: Alexey Dobriyan Date: Tue Nov 25 17:58:07 2008 -0800 netns PF_KEY: part 1 * netns boilerplate * keep per-netns socket list * keep per-netns number of sockets Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 7c2776ee21a60e0d370538bd08b9ed82979f6e3a Author: Alexey Dobriyan Date: Tue Nov 25 17:57:44 2008 -0800 netns xfrm: flush SA/SPDs on netns stop SA/SPD doesn't pin netns (and it shouldn't), so get rid of them by hand. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit fbda33b2b85941c1ae3a0d89522dec5c1b1bd98c Author: Alexey Dobriyan Date: Tue Nov 25 17:56:49 2008 -0800 netns xfrm: ->get_saddr in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit c5b3cf46eabe6e7459125fc6e2033b4222665017 Author: Alexey Dobriyan Date: Tue Nov 25 17:51:25 2008 -0800 netns xfrm: ->dst_lookup in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit db983c1144884cab10d6397532f4bf05eb0c01d2 Author: Alexey Dobriyan Date: Tue Nov 25 17:51:01 2008 -0800 netns xfrm: KM reporting in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 7067802e262457a9737521e5669b622028b2283a Author: Alexey Dobriyan Date: Tue Nov 25 17:50:36 2008 -0800 netns xfrm: pass netns with KM notifications SA and SPD flush are executed with NULL SA and SPD respectively, for these cases pass netns explicitly from userspace socket. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit fc34acd36eecdec95171b98ef2516e3d4daa5c41 Author: Alexey Dobriyan Date: Tue Nov 25 17:50:08 2008 -0800 netns xfrm: xfrm_user module in netns Grab netns either from netlink socket, state or policy. SA and SPD flush are in init_net for now, this requires little attention, see below. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit a6483b790f8efcd8db190c1c0ff93f9d9efe919a Author: Alexey Dobriyan Date: Tue Nov 25 17:38:20 2008 -0800 netns xfrm: per-netns NETLINK_XFRM socket Stub senders to init_net's one temporarily. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit bd235e3cfff617ff91677da553714051866ba55f Author: Alexey Dobriyan Date: Tue Nov 25 17:37:56 2008 -0800 netns xfrm: xfrm_input() fixup Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit ddcfd79680c1dc74eb5f24aa70785c11bf7eec8f Author: Alexey Dobriyan Date: Tue Nov 25 17:37:23 2008 -0800 netns xfrm: dst garbage-collecting in netns Pass netns pointer to struct xfrm_policy_afinfo::garbage_collect() [This needs more thoughts on what to do with dst_ops] [Currently stub to init_net] Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 3dd0b4997a1d4f3a3666e400cc75b0279ce96849 Author: Alexey Dobriyan Date: Tue Nov 25 17:36:51 2008 -0800 netns xfrm: flushing/pruning bundles in netns Allow netdevice notifier as result. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 99a66657b2f62ae8b2b1e6ffc6abed051e4561ca Author: Alexey Dobriyan Date: Tue Nov 25 17:36:13 2008 -0800 netns xfrm: xfrm_route_forward() in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit f6e1e25d703c0a9ba1863384a16851dec52f8e3a Author: Alexey Dobriyan Date: Tue Nov 25 17:35:44 2008 -0800 netns xfrm: xfrm_policy_check in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 52479b623d3d41df84c499325b6a8c7915413032 Author: Alexey Dobriyan Date: Tue Nov 25 17:35:18 2008 -0800 netns xfrm: lookup in netns Pass netns to xfrm_lookup()/__xfrm_lookup(). For that pass netns to flow_cache_lookup() and resolver callback. Take it from socket or netdevice. Stub DECnet to init_net. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit cdcbca7c1f1946758cfacb69bc1c7eeaccb11e2d Author: Alexey Dobriyan Date: Tue Nov 25 17:34:49 2008 -0800 netns xfrm: policy walking in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 8d1211a6aaea43ea36151c17b0193eb763ff2d7e Author: Alexey Dobriyan Date: Tue Nov 25 17:34:20 2008 -0800 netns xfrm: finding policy in netns Add netns parameter to xfrm_policy_bysel_ctx(), xfrm_policy_byidx(). Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 33ffbbd52c327225a3e28485c39dc5746d81be03 Author: Alexey Dobriyan Date: Tue Nov 25 17:33:32 2008 -0800 netns xfrm: policy flushing in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 1121994c803f4a4f471d617443ff2a09515725e7 Author: Alexey Dobriyan Date: Tue Nov 25 17:33:06 2008 -0800 netns xfrm: policy insertion in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit e92303f872600978796ff323bc229d911f905849 Author: Alexey Dobriyan Date: Tue Nov 25 17:32:41 2008 -0800 netns xfrm: propagate netns into policy byidx hash Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 284fa7da300adcb700b44df2f64a536b434d4650 Author: Alexey Dobriyan Date: Tue Nov 25 17:32:14 2008 -0800 netns xfrm: state walking in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 5447c5e401c49aba0c36bb1066f2d25b152553b7 Author: Alexey Dobriyan Date: Tue Nov 25 17:31:51 2008 -0800 netns xfrm: finding states in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 12604d8aaa38ac4e24299c9803fefdb301a16421 Author: Alexey Dobriyan Date: Tue Nov 25 17:31:18 2008 -0800 netns xfrm: fixup xfrm_alloc_spi() Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 221df1ed33c9284fc7a6f6e47ca7f8d5f3665d43 Author: Alexey Dobriyan Date: Tue Nov 25 17:30:50 2008 -0800 netns xfrm: state lookup in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 0e6024519b4da2d9413b97be1de8122d5709ccc1 Author: Alexey Dobriyan Date: Tue Nov 25 17:30:18 2008 -0800 netns xfrm: state flush in netns Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 98806f75ba2afc716e4d2f915d3ac7687546f9c0 Author: Alexey Dobriyan Date: Tue Nov 25 17:29:47 2008 -0800 netns xfrm: trivial netns propagations Take netns from xfrm_state or xfrm_policy. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 64d0cd009718ce64cf0f388142ead7ea41f1f3c8 Author: Alexey Dobriyan Date: Tue Nov 25 17:29:21 2008 -0800 netns xfrm: propagate netns into bydst/bysrc/byspi hash functions Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 66caf628c3b634c57b14a1a104dcd57e4fab2e3b Author: Alexey Dobriyan Date: Tue Nov 25 17:28:57 2008 -0800 netns xfrm: per-netns policy hash resizing work Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit dc2caba7b321289e7d02e63d7216961ccecfa103 Author: Alexey Dobriyan Date: Tue Nov 25 17:24:15 2008 -0800 netns xfrm: per-netns policy counts Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit a35f6c5de32664d82c072a7e2c7d5c5234de4158 Author: Alexey Dobriyan Date: Tue Nov 25 17:23:48 2008 -0800 netns xfrm: per-netns xfrm_policy_bydst hash Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 8b18f8eaf9207d53ba3e69f2b98d7290f4dec227 Author: Alexey Dobriyan Date: Tue Nov 25 17:23:26 2008 -0800 netns xfrm: per-netns inexact policies Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 8100bea7d619e8496ad8e545d1b41f536e076cd5 Author: Alexey Dobriyan Date: Tue Nov 25 17:22:58 2008 -0800 netns xfrm: per-netns xfrm_policy_byidx hashmask Per-netns hashes are independently resizeable. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 93b851c1c93c7d5cd8d94cd3f3a268b2d5460e9e Author: Alexey Dobriyan Date: Tue Nov 25 17:22:35 2008 -0800 netns xfrm: per-netns xfrm_policy_byidx hash Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit adfcf0b27e87d16a6a8c364daa724653d4d8930b Author: Alexey Dobriyan Date: Tue Nov 25 17:22:11 2008 -0800 netns xfrm: per-netns policy list Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 0331b1f383e1fa4049f8e75cafeea8f006171c64 Author: Alexey Dobriyan Date: Tue Nov 25 17:21:45 2008 -0800 netns xfrm: add struct xfrm_policy::xp_net Again, to avoid complications with passing netns when not necessary. Again, ->xp_net is set-once field, once set it never changes. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 50a30657fd7ee77a94a6bf0ad86eba7c37c3032e Author: Alexey Dobriyan Date: Tue Nov 25 17:21:01 2008 -0800 netns xfrm: per-netns km_waitq Disallow spurious wakeups in __xfrm_lookup(). Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit c78371441c0d957f54c9f8a35b3ee5a378d14808 Author: Alexey Dobriyan Date: Tue Nov 25 17:20:36 2008 -0800 netns xfrm: per-netns state GC work State GC is per-netns, and this is part of it. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit b8a0ae20b0eecd4b86a113d2abe2fa5a582b30a6 Author: Alexey Dobriyan Date: Tue Nov 25 17:20:11 2008 -0800 netns xfrm: per-netns state GC list km_waitq is going to be made per-netns to disallow spurious wakeups in __xfrm_lookup(). To not wakeup after every garbage-collected xfrm_state (which potentially can be from different netns) make state GC list per-netns. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 630827338585022b851ec0a6335df8e436c900e4 Author: Alexey Dobriyan Date: Tue Nov 25 17:19:07 2008 -0800 netns xfrm: per-netns xfrm_hash_work All of this is implicit passing which netns's hashes should be resized. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 0bf7c5b019518d3fe9cb96b9c97bf44d251472c3 Author: Alexey Dobriyan Date: Tue Nov 25 17:18:39 2008 -0800 netns xfrm: per-netns xfrm_state counts Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 529983ecabeae3d8e61c9e27079154b1b8544dcd Author: Alexey Dobriyan Date: Tue Nov 25 17:18:12 2008 -0800 netns xfrm: per-netns xfrm_state_hmask Since hashtables are per-netns, they can be independently resized. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit b754a4fd8f58d245c9b5e92914cce09c4309cb67 Author: Alexey Dobriyan Date: Tue Nov 25 17:17:47 2008 -0800 netns xfrm: per-netns xfrm_state_byspi hash Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit d320bbb306f2085892bc958781e8fcaf5d491589 Author: Alexey Dobriyan Date: Tue Nov 25 17:17:24 2008 -0800 netns xfrm: per-netns xfrm_state_bysrc hash Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 73d189dce486cd6693fa29169b1aac0872efbcea Author: Alexey Dobriyan Date: Tue Nov 25 17:16:58 2008 -0800 netns xfrm: per-netns xfrm_state_bydst hash Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 9d4139c76905833afcb77fe8ccc17f302a0eb9ab Author: Alexey Dobriyan Date: Tue Nov 25 17:16:11 2008 -0800 netns xfrm: per-netns xfrm_state_all list This is done to get a) simple "something leaked" check b) cover possible DoSes when other netns puts many, many xfrm_states onto a list. c) not miss "alien xfrm_state" check in some of list iterators in future. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 673c09be457bb23aa0eaaa79804cbb342210d195 Author: Alexey Dobriyan Date: Tue Nov 25 17:15:16 2008 -0800 netns xfrm: add struct xfrm_state::xs_net To avoid unnecessary complications with passing netns around. * set once, very early after allocating * once set, never changes For a while create every xfrm_state in init_net. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit d62ddc21b674b5ac1466091ff3fbf7baa53bc92c Author: Alexey Dobriyan Date: Tue Nov 25 17:14:31 2008 -0800 netns xfrm: add netns boilerplate Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit c95839693d2a6612af7f75ad877012eba2f69757 Author: Alexey Dobriyan Date: Tue Nov 25 17:13:59 2008 -0800 xfrm: initialise xfrm_policy_gc_work statically Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 46a8494a9de6b88a126993e6012322752f997b88 Author: Ingo Molnar Date: Tue Nov 25 17:02:20 2008 -0800 3c523: fix warning in drivers/net/3c523.c fix warning: drivers/net/3c523.c:582: warning: ‘cleanup_card’ defined but not used No code changed: md5: ebe4a1b27d3f21b0b12a78c58463b0d7 3c523.o.before.asm ebe4a1b27d3f21b0b12a78c58463b0d7 3c523.o.after.asm Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 99da1a8a6dc549630733e1cc246265d282fc214e Author: Ingo Molnar Date: Tue Nov 25 17:00:39 2008 -0800 depca: fix warning in drivers/net/depca.c fix warning: drivers/net/depca.c: In function ‘depca_eisa_probe’: drivers/net/depca.c:1564: warning: ‘mem_start’ may be used uninitialized in this function this seems to be a real bug - depca_eisa_probe() does not check for failure. Add it, symmetric to depca_isa_probe(). Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit a098397d562e2ce5aca7b9b007a4954d88ef8f5e Author: Ingo Molnar Date: Tue Nov 25 17:00:05 2008 -0800 atlx: fix warning in drivers/net/atlx/atl2.c fix this warning: drivers/net/atlx/atl2.c: In function ‘atl2_request_irq’: drivers/net/atlx/atl2.c:644: warning: unused variable ‘err’ 'err' is unused in the !CONFIG_PCI_MSI case. Instead of further increasing the #ifdeffery in this function, restructure the code a bit and get rid of the #ifdef. This relies on the fact that pci_enable_msi() will always fail in the !CONFIG_PCI_MSI case. There should be no change in driver behavior. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 287b6e68ca7209caec40b2f44f837c580a413bae Author: Frederic Weisbecker Date: Wed Nov 26 00:57:25 2008 +0100 tracing/function-return-tracer: set a more human readable output Impact: feature This patch sets a C-like output for the function graph tracing. For this aim, we now call two handler for each function: one on the entry and one other on return. This way we can draw a well-ordered call stack. The pid of the previous trace is loosely stored to be compared against the one of the current trace to see if there were a context switch. Without this little feature, the call tree would seem broken at some locations. We could use the sched_tracer to capture these sched_events but this way of processing is much more simpler. 2 spaces have been chosen for indentation to fit the screen while deep calls. The time of execution in nanosecs is printed just after closed braces, it seems more easy this way to find the corresponding function. If the time was printed as a first column, it would be not so easy to find the corresponding function if it is called on a deep depth. I plan to output the return value but on 32 bits CPU, the return value can be 32 or 64, and its difficult to guess on which case we are. I don't know what would be the better solution on X86-32: only print eax (low-part) or even edx (high-part). Actually it's thee same problem when a function return a 8 bits value, the high part of eax could contain junk values... Here is an example of trace: sys_read() { fget_light() { } 526 vfs_read() { rw_verify_area() { security_file_permission() { cap_file_permission() { } 519 } 1564 } 2640 do_sync_read() { pipe_read() { __might_sleep() { } 511 pipe_wait() { prepare_to_wait() { } 760 deactivate_task() { dequeue_task() { dequeue_task_fair() { dequeue_entity() { update_curr() { update_min_vruntime() { } 504 } 1587 clear_buddies() { } 512 add_cfs_task_weight() { } 519 update_min_vruntime() { } 511 } 5602 dequeue_entity() { update_curr() { update_min_vruntime() { } 496 } 1631 clear_buddies() { } 496 update_min_vruntime() { } 527 } 4580 hrtick_update() { hrtick_start_fair() { } 488 } 1489 } 13700 } 14949 } 16016 msecs_to_jiffies() { } 496 put_prev_task_fair() { } 504 pick_next_task_fair() { } 489 pick_next_task_rt() { } 496 pick_next_task_fair() { } 489 pick_next_task_idle() { } 489 ------------8<---------- thread 4 ------------8<---------- finish_task_switch() { } 1203 do_softirq() { __do_softirq() { __local_bh_disable() { } 669 rcu_process_callbacks() { __rcu_process_callbacks() { cpu_quiet() { rcu_start_batch() { } 503 } 1647 } 3128 __rcu_process_callbacks() { } 542 } 5362 _local_bh_enable() { } 587 } 8880 } 9986 kthread_should_stop() { } 669 deactivate_task() { dequeue_task() { dequeue_task_fair() { dequeue_entity() { update_curr() { calc_delta_mine() { } 511 update_min_vruntime() { } 511 } 2813 Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit fb52607afcd0629776f1dc9e657647ceae81dd50 Author: Frederic Weisbecker Date: Tue Nov 25 21:07:04 2008 +0100 tracing/function-return-tracer: change the name into function-graph-tracer Impact: cleanup This patch changes the name of the "return function tracer" into function-graph-tracer which is a more suitable name for a tracing which makes one able to retrieve the ordered call stack during the code flow. Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 45555c0ed436b8b06eeaa5c524a3377e6d24fb45 Author: Ingo Molnar Date: Tue Nov 25 16:59:21 2008 -0800 bluetooth: fix warning in net/bluetooth/rfcomm/sock.c fix this warning: net/bluetooth/rfcomm/sock.c: In function ‘rfcomm_sock_ioctl’: net/bluetooth/rfcomm/sock.c:795: warning: unused variable ‘sk’ perhaps BT_DEBUG() should be improved to do printf format checking instead of the #ifdef, but that looks quite intrusive: each bluetooth .c file undefines the macro. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit ff0db0490a2eb6db4f03870987c5c8e3dd81e747 Author: Ingo Molnar Date: Tue Nov 25 16:58:42 2008 -0800 sunrpc: fix warning in net/sunrpc/xprtrdma/verbs.c fix this warning: net/sunrpc/xprtrdma/verbs.c: In function ‘rpcrdma_conn_upcall’: net/sunrpc/xprtrdma/verbs.c:279: warning: unused variable ‘addr’ Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit e14bec2e2b59a6180f04544a867b7e52cd414455 Author: Ingo Molnar Date: Tue Nov 25 16:58:19 2008 -0800 ax25: fix warning in net/ax25/sysctl_net_ax25.c fix this warning: net/ax25/sysctl_net_ax25.c:27: warning: ‘min_ds_timeout’ defined but not used net/ax25/sysctl_net_ax25.c:27: warning: ‘max_ds_timeout’ defined but not used These are only used in the CONFIG_AX25_DAMA_SLAVE case. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 509dceef6470442d8c7b8a43ec34125205840b3c Merge: 1e9b51c... 14bfc98... Author: Ingo Molnar Date: Wed Nov 26 01:58:05 2008 +0100 Merge branches 'tracing/hw-branch-tracing' and 'tracing/branch-tracer' into tracing/core commit e6a176228a38d74c0360ca586146bd45a2ac2d60 Author: Ingo Molnar Date: Tue Nov 25 16:57:59 2008 -0800 mlx4: fix warning in drivers/net/mlx4/mcg.c fix warning: drivers/net/mlx4/mcg.c: In function ‘mlx4_multicast_attach’: drivers/net/mlx4/mcg.c:217: warning: integer overflow in expression there was no real danger of overflow here though. md5: db8eb55620f886c03854a2abb2ce6c3f mcg.o.before.asm db8eb55620f886c03854a2abb2ce6c3f mcg.o.after.asm Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 3ed7cc0f8b29da4304825a7bcef25fc83f84c1ae Author: Ingo Molnar Date: Tue Nov 25 16:57:30 2008 -0800 dccp: fix warning in net/dccp/options.c this warning: net/dccp/options.c: In function ‘dccp_parse_options’: net/dccp/options.c:67: warning: ‘value’ may be used uninitialized in this function is a bogus GCC warning. The compiler does not recognize the relation between "value" and "mandatory" variables: the code flow can ever reach the "out_invalid_option:" label if 'mandatory' is set to 1, and when 'mandatory' is non-zero, we'll always have 'value' initialized. Help out the compiler by annotating the variable. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit b71e839f9a33abf8634b1eea4875bc8057fe39e2 Author: Ingo Molnar Date: Tue Nov 25 16:57:05 2008 -0800 cassini: fix warning in drivers/net/cassini.c this warning: drivers/net/cassini.c: In function ‘cas_rx_ringN’: drivers/net/cassini.c:2350: warning: ‘skb’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between cas_rx_process_pkt() and 'skb'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit b58515be978f9377b9546ae98ad6c8bbc2f93ee1 Author: Ingo Molnar Date: Tue Nov 25 16:53:32 2008 -0800 mlx4: fix error path in drivers/net/mlx4/en_rx.c this warning: drivers/net/mlx4/en_rx.c: In function ‘mlx4_en_activate_rx_rings’: drivers/net/mlx4/en_rx.c:412: warning: ‘err’ may be used uninitialized in this function Triggers because 'err' is uninitialized in the following input conditions: priv->rx_ring_num is zero and mlx4_en_fill_rx_buffers() fails. But even if ->rx_ring_num is nonzero, 'err' will be zero if mlx4_en_fill_rx_buffers() fails and mlx4_en_activate_rx_rings() returns success - incorrectly. So it's best to keep the error code uptodate on mlx4_en_fill_rx_buffers() calls as well. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 4174439ef5894964803c6300e7e88d97e075e4c0 Author: Ingo Molnar Date: Tue Nov 25 16:53:08 2008 -0800 z85230: fix warning in drivers/net/wan/z85230.c this warning: drivers/net/wan/z85230.c: In function ‘z8530_interrupt’: drivers/net/wan/z85230.c:713: warning: ‘intr’ may be used uninitialized in this function is clearly bogus - annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit ef0cd87ef6326609be8abf19030101be24cc5703 Author: Ingo Molnar Date: Tue Nov 25 16:52:13 2008 -0800 sis900: fix warning in drivers/net/sis900.c this warning: drivers/net/sis900.c: In function ‘sis900_timer’: drivers/net/sis900.c:1280: warning: ‘speed’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between sis900_read_mode(), 'speed' and 'duplex'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 180b65df7ba1e700e28aabfbddbad84b7beebe4b Author: Ingo Molnar Date: Tue Nov 25 16:51:45 2008 -0800 fix warning in fs/dlm/netlink.c this warning: fs/dlm/netlink.c: In function ‘dlm_timeout_warn’: fs/dlm/netlink.c:131: warning: ‘send_skb’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between prepare_data() and send_skb. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit d3f644da909549a4cf0ad27541df342f75158cc0 Author: Ingo Molnar Date: Tue Nov 25 16:51:13 2008 -0800 dsa: fix warning in net/dsa/mv88e6060.c this warning: net/dsa/mv88e6060.c: In function ‘mv88e6060_poll_link’: net/dsa/mv88e6060.c:225: warning: ‘port_status’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between 'link' and 'port_status'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 2a9e79782d99160cad7d834eef9bb77b446e8532 Author: Ingo Molnar Date: Tue Nov 25 16:50:49 2008 -0800 dsa: fix warning in net/dsa/mv88e6xxx.c this warning: net/dsa/mv88e6xxx.c: In function ‘mv88e6xxx_poll_link’: net/dsa/mv88e6xxx.c:361: warning: ‘port_status’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between 'link' and 'port_status'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 55205d400efe3260e29ad26dd64c992cec2efafd Author: Ingo Molnar Date: Tue Nov 25 16:50:30 2008 -0800 ipv6: fix warning in net/ipv6/ip6_flowlabel.c this warning: net/ipv6/ip6_flowlabel.c: In function ‘ipv6_flowlabel_opt’: net/ipv6/ip6_flowlabel.c:467: warning: ‘err’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between fl_create() and 'err'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit dc0a0011cfa8ff01b86859006f4db3656c9a896b Author: Ingo Molnar Date: Tue Nov 25 16:50:02 2008 -0800 pkt_sched: fix warning in net/sched/sch_hfsc.c this warning: net/sched/sch_hfsc.c: In function ‘hfsc_enqueue’: net/sched/sch_hfsc.c:1577: warning: ‘err’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between hfsc_classify(), 'cl' and 'err'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit ed72b9c6e0ec4e66dd16b7ca212845e1eb985d65 Author: Ingo Molnar Date: Tue Nov 25 16:49:37 2008 -0800 sunrpc: fix warning in net/sunrpc/xprtrdma/svc_rdma_transport.c this warning: net/sunrpc/xprtrdma/svc_rdma_transport.c: In function ‘svc_rdma_accept’: net/sunrpc/xprtrdma/svc_rdma_transport.c:830: warning: ‘dma_mr_acc’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) flow connection between need_dma_mr and dma_mr_acc. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit be5a3c62c805878d67036b4683f09118cab4c9fd Author: Ingo Molnar Date: Tue Nov 25 16:49:07 2008 -0800 qla3xxx: fix warning in drivers/net/qla3xxx.c this warning: drivers/net/qla3xxx.c: In function ‘ql3xxx_probe’: drivers/net/qla3xxx.c:3912: warning: ‘pci_using_dac’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between 'pci_using_dac' and 'err'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit f166400bd4c92df72d997e0da8713fae90d56e57 Author: Ingo Molnar Date: Tue Nov 25 16:48:42 2008 -0800 niu: fix another warning in drivers/net/niu.c this warning: drivers/net/niu.c: In function ‘esr_reset’: drivers/net/niu.c:741: warning: ‘reset’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between: - esr_read_reset() and 'reset' Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 51e0f058c496ef2ca5362c16a53ce1ce454d0817 Author: Ingo Molnar Date: Tue Nov 25 16:48:12 2008 -0800 niu: fix warnings in drivers/net/niu.c these warnings: drivers/net/niu.c: In function ‘serdes_init_niu_1g_serdes’: drivers/net/niu.c:451: warning: ‘sig’ may be used uninitialized in this function drivers/net/niu.c: In function ‘serdes_init_niu_10g_serdes’: drivers/net/niu.c:550: warning: ‘sig’ may be used uninitialized in this function triggers because GCC does not recognize that the max_retry loop always initializes 'sig', due to max_retry != 0. Annotate them. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 2e6a684b8489b21324f314be2bd8d3788a9f6445 Author: Ingo Molnar Date: Tue Nov 25 16:47:35 2008 -0800 s2io: fix warning in drivers/net/s2io.c this warning: drivers/net/s2io.c: In function ‘rx_intr_handler’: drivers/net/s2io.c:7369: warning: ‘lro’ may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between: - s2io_club_tcp_session()and 'lro' Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 09bb52175bf4d6a46fc8502e76be29206d9a677a Author: Daniel Lezcano Date: Tue Nov 25 16:46:37 2008 -0800 netns: filter out uevent not belonging to init_net This patch will filter out the uevent not related to the init_net. Without this patch if a network device is created in a network namespace with the same name as one network device belonging to the initial network namespace (eg. eth0), when the network namespace will die and the network device will be destroyed, an event will be sent and catched by the udevd daemon. That will result to have the real network device to be shutdown because the udevd/uevent are not namespace aware. Signed-off-by: Daniel Lezcano Acked-by: "Eric W. Biederman" Signed-off-by: David S. Miller commit cb13fc209f5c9394713319323166f74b01759ead Author: Robert Olsson Date: Tue Nov 25 16:43:52 2008 -0800 ixgbe: Naming interrupt vectors Signed-off-by: Robert Olsson Acked-by: Peter P Waskiewicz Jr Signed-off-by: David S. Miller commit 70340d728f4f4cb49da00a11b10ded492260caa5 Author: Robert Olsson Date: Tue Nov 25 16:41:57 2008 -0800 niu: Naming interrupt vectors. A patch to put names on the niu interrupt vectors according the syntax below. This is needed to assign correct affinity. > So on a multiqueue card with 2 RX queues and 2 TX queues we'd > have names like: > > eth0-rx-0 > eth0-rx-1 > eth0-tx-0 > eth0-tx-1 Signed-off-by: Robert Olsson Tested-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 9f782db3f5ceee9aa8de6f853969fbec1b8c6e65 Author: Ilpo Järvinen Date: Tue Nov 25 13:57:01 2008 -0800 tcp: skb_shift cannot cache frag ptrs past pskb_expand_head Since pskb_expand_head creates copy of the shared area we cannot keep any frag ptr past de-cloning. This fixes the tcpdump recvfrom -EFAULT problem. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit f6486d40b33d1ac2c44c7c55db7edf022d9f4329 Author: Jarek Poplawski Date: Tue Nov 25 13:56:06 2008 -0800 pkt_sched: sch_api: Remove qdisc_list_lock After implementing qdisc->ops->peek() there is no more calling qdisc_tree_decrease_qlen() without rtnl_lock(), so qdisc_list_lock added by commit: f6e0b239a2657ea8cb67f0d83d0bfdbfd19a481b "pkt_sched: Fix qdisc list locking" can be removed. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 723b46108f8ee75b61ce703d0c9225e4f537bc46 Author: Eric Dumazet Date: Tue Nov 25 13:55:15 2008 -0800 net: udp_unhash() can test if sk is hashed Impact: Optimization Like done in inet_unhash(), we can avoid taking a chain lock if socket is not hashed in udp_unhash() Triggered by close(socket(AF_INET, SOCK_DGRAM, 0)); Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 5bc0b3bfa758e4ae49c94e31c1edb9a5f10a8060 Author: Eric Dumazet Date: Tue Nov 25 13:53:27 2008 -0800 net: Make sure BHs are disabled in sock_prot_inuse_add() prot->destroy is not called with BH disabled. So we must add explicit BH disable around call to sock_prot_inuse_add() in sctp_destroy_sock() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 8eecaba900e89643029fd2c253ad8ebb60761165 Author: Ilpo Järvinen Date: Tue Nov 25 13:45:29 2008 -0800 tcp: tcp_limit_reno_sacked can become static Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 4ada424db196c78746fec255d493cacb1c9feddf Author: Luis R. Rodriguez Date: Fri Nov 14 14:44:22 2008 -0800 mac80211: don't assume driver has been attached on registration mac80211's ieee80211_register_hw() is often called within the probe path so it cannot assume the device's driver structure has been attached yet so to create a workqueue instead of using driver->name use the wiphy's phy%d name. The name doesn't really matter anyway. This should fix sporadic oopses found when we race to beat the driver pointer setting. Not even sure how this was working properly. http://www.kerneloops.org/search.php?search=ieee80211_register_hw Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 4d3601b234a51fdd268c8ef8068d239e26dd7ef1 Author: Vasanthakumar Thiagarajan Date: Sat Nov 15 00:49:49 2008 +0530 ath9k: Configure AR_PHY_SWITCH_COM with apropriate antenna control This fixes the poor wireless connection which happens even if we are very well in the range. Signed-off-by: Don.breslin@atheros.com Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit ced0957442af69c5c41b00db85a933ed7876cc40 Author: Christian Lamparter Date: Fri Nov 14 19:42:39 2008 +0100 p54: honour bss_info_changed's basic_rates and other settings As was pointed out in "p54: honour bss_info_changed's short slot time settings", bss_info_changed provides more useful settings that can be used by the driver. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 40db0b22591f59811feeb7cad26fdde92a190663 Author: Christian Lamparter Date: Sun Nov 16 12:20:32 2008 +0100 p54pci: cache firmware for suspend/resume Johannes pointed out that the driver has cache the firmware for suspend/resume cycles. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit ffed785898a6dfd5f80d069bcb607b8cd5613c76 Author: Christian Lamparter Date: Fri Nov 14 19:41:22 2008 +0100 p54: minor fixes This patch contains only contains a one-liner fixes and enhancements Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit d131bb59c142585c389b5284d93743e4e065e393 Author: Christian Lamparter Date: Sat Nov 15 17:02:31 2008 +0100 p54: enable Mesh Point support This patch enables Mesh Point operation for any p54 device. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit f16f33df4d27f18bc6512dbe83ebbeaa693f0359 Author: Sujith Date: Fri Nov 14 16:27:53 2008 +0530 mac80211: Use the HT capabilities from the IE instead of the station's caps. Signed-off-by: Sujith Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 97b777db57f7226e31a4abd5e69d732037743195 Author: Luis R. Rodriguez Date: Thu Nov 13 19:11:57 2008 -0800 ath9k: make DMA memory consistent Make the DMAable mameory consistent with pci_set_consistent_dma_mask(). The DMA-mapping.txt Documentation recommends this but for PCI-X considerations and on strange architecture like SGI SN2, not sure why it would fix an issue but lets see if it does, just in case. Before this, this driver was tested with x86_64 with about 7 GB of RAM, not sure if this is really needed. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 1d450cfc97bc223e9f94a2fab888bb168e284448 Author: Luis R. Rodriguez Date: Thu Nov 13 19:11:56 2008 -0800 ath9k: Clarify we only want 32-bit DMA Use DMA_32BIT_MASK to clarify we only want 32-bit DMA memory. What was there before is also 32-bit but this makes it clearer Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit f1ca2167d89d991eed519c789d3902f9682c06b8 Author: Ivo van Doorn Date: Thu Nov 13 23:07:33 2008 +0100 rt2x00: Detect USB BULK in/out endpoints Instead of hardcoding the used in/out endpoints we should detect them by walking through all available endpoints. rt2800usb will gain the most out of this, because the legacy drivers indicate that there are multiple endpoints available. However this code might benefit at least rt73usb as well for the MIMO queues, and if we are really lucky rt2500usb will benefit because for the TX and PRIO queues. Even if rt2500usb and rt73usb do not get better performance after this patch, the endpoint detection still belongs to rt2x00usb, and it shouldn't hurt to always try to detect the available endpoints. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit c8f96974eebbc8f078ad64f2d8041e6dce741d67 Author: Larry Finger Date: Thu Nov 13 12:30:41 2008 -0600 rtl8187: Remove module warning and dependence on CONFIG_EXPERIMENTAL After considerable testing, the initial fears that the driver might damage some flavors of RTL8187B hardware seem to be groundless. Accordingly, the logged warning is removed. In addition, Kconfig is changed to remove the dependence on EXPERIMENTAL. Signed-off-by: Larry Finger Acked-by: Herton Ronaldo Krzesinski Acked-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 3517afdefc3ad335b276eb5f8691841f48097abf Author: Herton Ronaldo Krzesinski Date: Thu Nov 13 10:39:16 2008 -0500 rtl8187: feedback transmitted packets using tx close descriptor for 8187B Realtek 8187B has a receive command queue to feedback beacon interrupt and transmitted packet status. Use it to feedback mac80211 about status of transmitted packets. Unfortunately in the course of testing I found that the sequence number reported by hardware includes entire sequence control in a 12 bit only field, so a workaround is done to check only lowest bits. Tested-by: Larry Finger Tested-by: Hin-Tak Leung Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: John W. Linville commit b4572a9264312fecdb530a3416b8c8336a3bb9a9 Author: Herton Ronaldo Krzesinski Date: Thu Nov 13 10:39:15 2008 -0500 rtl8187: implement conf_tx callback to configure tx queues Add conf_tx callback and use it to configure tx queues of 8187L/8187B. Tested-by: Larry Finger Tested-by: Hin-Tak Leung Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: John W. Linville commit 54ac218ae676931813169e0ca074aca2e4adee38 Author: Herton Ronaldo Krzesinski Date: Thu Nov 13 10:39:14 2008 -0500 rtl8187: fix 8187B throughput regression Hin-Tak Leung reported that after the change "rtl8187: add short slot handling for 8187B" his RTL8187B started to give low throughput on network transfers. Turns out that the SIFS setting used isn't ok, it doesn't look to be the real aSIFSTime, using the "magical" 0x22 value like on other 818x variants as the vendor does too fixes the issue. Tested-by: Larry Finger Tested-by: Hin-Tak Leung Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: John W. Linville commit db93e7b5bf9dea9175d5b213f9557758c56abbfc Author: Senthil Balasubramanian Date: Thu Nov 13 18:01:08 2008 +0530 ath9k: Race condition in accessing TX and RX buffers. Race condition causes RX buffers to be accessed even before it is initialized. The RX and TX buffers are initialized immediately after the hardware is registered with mac80211. The mac80211 start callback is ready to be fired once the device is registered for a case when the wpa_supplicant is also running at the same time. The same race condition is also possible for RKFILL registration as RFKILL init happens after the device registration with mac80211 and it is possible that rfkill_register would be called even before it is initialized. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 306efdd109f086b19d849f1ec0f9104c9fdb3444 Author: Senthil Balasubramanian Date: Thu Nov 13 18:00:37 2008 +0530 ath9k: IRQ should be disabled before calling free_irq() ath9k frees irq even before IRQs are disabled and existing IRQs are flushed when rfkill_register() fails. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit e97275cb062cf927cdb086f0107657dd92160801 Author: Senthil Balasubramanian Date: Thu Nov 13 18:00:02 2008 +0530 ath9k: Build RFKILL feature even when RFKILL subsystem is a MODULE Currently, ath9k builds RFKILL feature only when the RFKILL subsystem is built part of the kernel. Build RFKILL feature regardless of whether RFKILL subsystem is built as a MODULE or part of the kernel. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit f9bbf431beb7dd98b94fa965dab851432be4b762 Author: Senthil Balasubramanian Date: Thu Nov 13 17:59:36 2008 +0530 ath9k: incorrect noise floor threshold values. This patch fixes incorrect noise floor threshold values. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 9f8042021792f8c0e0a7f5b81f326bfab86cda83 Author: Senthil Balasubramanian Date: Thu Nov 13 17:58:41 2008 +0530 ath9k: INI update for atheros chipets. init values update for various atheros chipsets. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit ea4a82dceec7b5782b1259079c8de508d0afe33a Author: Luis R. Rodriguez Date: Wed Nov 12 14:22:04 2008 -0800 iwlwifi: enable custom fw regulatory solution This enables the custom firmware regulatory solution option on iwlwifi drivers. These devices are uncapable of mapping their EEPROM regulatory domain to a specific ISO / IEC alpha2. Although the new 11n devices (>= iwl 5000) have only 3 regultaory SKUs -- MOW, ABG (no N) and BG -- the older devices (3945 and 4965) have a more complex SKU arrangement and therefore its not practical to move this to the driver. Signed-off-by: Luis R. Rodriguez Acked-by: Zhu Yi Signed-off-by: John W. Linville commit 14b9815af3f4fe0e171ee0c4325c31d2a2c1570b Author: Luis R. Rodriguez Date: Wed Nov 12 14:22:03 2008 -0800 cfg80211: add support for custom firmware regulatory solutions This adds API to cfg80211 to allow wireless drivers to inform us if their firmware can handle regulatory considerations *and* they cannot map these regulatory domains to an ISO / IEC 3166 alpha2. In these cases we skip the first regulatory hint instead of expecting the driver to build their own regulatory structure, providing us with an alpha2, or using the reg_notifier(). Signed-off-by: Luis R. Rodriguez Acked-by: Zhu Yi Signed-off-by: John W. Linville commit 3f2355cb9111ac04e7ae06a4d7044da2ae813863 Author: Luis R. Rodriguez Date: Wed Nov 12 14:22:02 2008 -0800 cfg80211/mac80211: Add 802.11d support This adds country IE parsing to mac80211 and enables its usage within the new regulatory infrastructure in cfg80211. We parse the country IEs only on management beacons for the BSSID you are associated to and disregard the IEs when the country and environment (indoor, outdoor, any) matches the already processed country IE. To avoid following misinformed or outdated APs we build and use a regulatory domain out of the intersection between what the AP provides us on the country IE and what CRDA is aware is allowed on the same country. A secondary device is allowed to follow only the same country IE as it make no sense for two devices on a system to be in two different countries. In the case the AP is using country IEs for an incorrect country the user may help compliance further by setting the regulatory domain before or after the IE is parsed and in that case another intersection will be performed. CONFIG_WIRELESS_OLD_REGULATORY is supported but requires CRDA present. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 88dc1c3f7f9058cd5ceae1e4b53453484c7b0364 Author: Luis R. Rodriguez Date: Wed Nov 12 14:22:01 2008 -0800 cfg80211: mark regdomains with > NL80211_MAX_SUPP_REG_RULES invalid Lets remain consistent and mark rds with > NL80211_MAX_SUPP_REG_RULES number of reg rules as invalid in is_valid_rd(). Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 02ba0b3263f4eb41d2a5714cbe99207ae491a964 Author: Luis R. Rodriguez Date: Wed Nov 12 14:22:00 2008 -0800 cfg80211: call_crda() won't tell us if CRDA was present kobject_uevent_env() can return an error but it just tells us if the uvent was built/sent or not, it doesn't tell us anything about what happened in userspace, whether the udev rule was present nor does it tell us if CRDA was present or not. So remove the informative complaint about it assuming it will tell us such things. Note that you can determine if CRDA is present after loading cfg80211 by using: is_old_static_regdom(cfg80211_regdomain) but this doesn't account for possible user install after initial boot, and also for when the user uses the static EU regulatory domain. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit a01ddafd43f7d53a65ef053eb80a4dee58839c1f Author: Luis R. Rodriguez Date: Wed Nov 12 14:21:59 2008 -0800 cfg80211: expect different rd in cfg80211 when intersecting When intersecting it is possible that set_regdom() was called with a regulatory domain which we'll only use as an aid to build a final regulatory domain. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit b8295acdc323e6e383ec822fc1e95edeb9148513 Author: Luis R. Rodriguez Date: Wed Nov 12 14:21:58 2008 -0800 cfg80211: separate intersection section in __set_regdom() So far the __set_regdom() code is pretty generic as the intersection case is fairly straight forward; this will however change when 802.11d support is added so lets separate intersection code for now in preparation for 802.11d support. This patch only has slight functional changes. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 8375af3ba213154041cfbc655f452913f23bfbd5 Author: Luis R. Rodriguez Date: Wed Nov 12 14:21:57 2008 -0800 cfg80211: remove switch from __set_regdom() We have control over the REGDOM_SET_BY_* macros passed so remove the switch. This patch has no functional changes. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 5203cdb6ad430d3313444ddc6486da70af1a60db Author: Luis R. Rodriguez Date: Wed Nov 12 14:21:56 2008 -0800 cfg80211: remove switch from __regulatory_hint() We have complete control over REGDOM_SET_BY_* enum passed down to __regulatory_hint() as such there is no need to account for unexpected REGDOM_SET_BY_*'s, lets just remove the switch statement as this code does not change and won't change even when we add 802.11d support. This patch has no functional changes. Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 91e9900418fb01229094fb83befa3591afcae1e7 Author: Luis R. Rodriguez Date: Wed Nov 12 14:21:55 2008 -0800 cfg80211: mark negative frequencies as invalid Regulatory rules with negative frequencies are now marked as invalid in is_valid_reg_rule(). Signed-off-by: Luis R. Rodriguez Acked-by: Johannes Berg Signed-off-by: John W. Linville commit e0737a77d6cba100dea7e53bf490d67d110bc037 Author: Tomas Winkler Date: Wed Nov 12 13:14:11 2008 -0800 iwlwifi: iwl-fh.h cleanup This patch fix value of upper FH register bound plus it reorders and groups registers in more readable way Signed-off-by: Tomas Winkler Acked-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 34faf780cf342b2c83ae40a2eecf33e55f7002a5 Author: Zhu, Yi Date: Wed Nov 12 13:14:10 2008 -0800 iwlwifi: some fh document fix and cleanup This patch cleans up some flow handler related document. It also removes some blank lines. Signed-off-by: Zhu Yi Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 352bc8de19a7e5e065d422825e226e8e80cd6576 Author: Zhu, Yi Date: Wed Nov 12 13:14:09 2008 -0800 iwlwifi: configure_filter rewrite The patch rewrites the mac80211 configure_filter handler to better mapping mac80211 filter flags to iwlwifi hardware filter flags. We now can support 5 mac80211 filter flags: FIF_OTHER_BSS, FIF_ALLMULTI, FIF_PROMISC_IN_BSS, FIF_BCN_PRBRESP_PROMISC and FIF_CONTROL. This patch also avoids reconnecting if the filter flags are changed when the STA is associated. Because rx_assoc is used when full rxon is not necessary. Signed-off-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c3056065400aeb437390e1a86b85f9c32fb1c1df Author: Abhijeet Kolekar Date: Wed Nov 12 13:14:08 2008 -0800 iwlwifi : fix checkpatch.pl errors Patch fixes checkpatch.pl errors for iwlwifi. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit dbce56a456f6d6302a77107088340828dcaf9a02 Author: Chatre, Reinette Date: Wed Nov 12 13:14:07 2008 -0800 iwlwifi: replace magic constants with define use IWL_CCK_RATES_MASK and IWL_OFDM_RATES_MASK instead of their values directly. Signed-off-by: Reinette Chatre cc: Harvey Harrison Signed-off-by: John W. Linville commit 417f114bf2efa6183477a75da272c0d452e1cda3 Author: Tomas Winkler Date: Wed Nov 12 13:14:06 2008 -0800 iwlwifi: rs: remove fc variable and other cleanups This patch 1. Removes use once use only fc variables, they are useless after refactoring ieee80211 frame control handlers 2. Other trivial cleanups Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9f58671e8d4f4896acea30020308ce72bf94ec6e Author: Tomas Winkler Date: Wed Nov 12 13:14:05 2008 -0800 iwlwifi: consolidate station management code This patch moves code around and group most of the station management code into iwl-sta.c No functional changes (yet) Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit cee53ddb46eb520079335d0868d0e81c8d311089 Author: Kolekar, Abhijeet Date: Wed Nov 12 13:14:04 2008 -0800 iwl3945 : Simplify iwl3945_pci_probe Patch aligns iwl3945_pci_probe with iwlwifi's iwl_pci_probe. Added few comments and code simplified to make readable. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 0e3de99846489424c2cba952e0a52c269f01009a Author: Ivo van Doorn Date: Wed Nov 12 00:01:37 2008 +0100 rt2x00: Fix TX failure path The callback function write_tx_data() can only fail when our ENTRY_OWNER_DEVICE_DATA flag on a queue entry failed to determine the entry was not available and it is in fact still owned by the hardware. This means that if that function fails the queue must be stopped in mac80211. When rt2x00queue_get_queue() returns NULL in the TX path, it means mac80211 has passed us an invalid queue, although this should be impossible, it shouldn't hurt if we send mac80211 a signal to stop the queue either. Both issues can simply be resolved by removing their manual failure handler and making them use the failure path provided in rt2x00mac_tx(). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 0f829b1d6f499447052f98098e41fd6a091eadd0 Author: Ivo van Doorn Date: Mon Nov 10 19:42:18 2008 +0100 rt2x00: Move rt73usb register access wrappers into rt2x00usb rt2500usb and rt73usb have different register word sizes, for that reason the register access wrappers were never moved into rt2x00usb. With rt2800usb on its way, we should favor the 32bit register access and move those wrappers into rt2x00usb. That saves duplicate code, since only rt2500usb will need the special 16bit wrappers. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit c9c3b1a5deac4297503145840fffcd122b253db5 Author: Ivo van Doorn Date: Mon Nov 10 19:41:40 2008 +0100 rt2x00: Cleanup indirect register access All code which accessed indirect registers was similar in respect to the for-loop, the given timeout, etc. Move it into a seperate function, which for PCI drivers can be moved into rt2x00pci. This allows us to cleanup the cleanup the code further by removing the goto statementsand making the codepath look a bit nicer. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9764f3f9c3700620f9f8a1f9af57f58758e835da Author: Johannes Berg Date: Mon Nov 10 18:56:59 2008 +0100 ath5k: name pci driver "ath5k" too Call the ath5k pci driver struct "ath5k" too to be less confusing in sysfs. Signed-off-by: Johannes Berg Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit d6e8cc6cc7ac77b0f9118f78c453a2e834e62709 Author: Ingo Molnar Date: Tue Nov 25 18:23:03 2008 +0100 netfilter: fix warning in net/netfilter/nf_conntrack_ftp.c this warning: net/netfilter/nf_conntrack_ftp.c: In function 'help': net/netfilter/nf_conntrack_ftp.c:360: warning: 'matchoff' may be used uninitialized in this function net/netfilter/nf_conntrack_ftp.c:360: warning: 'matchlen' may be used uninitialized in this function triggers because GCC does not recognize the (correct) error flow between find_pattern(), 'found', 'matchoff' and 'matchlen'. Annotate it. Signed-off-by: Ingo Molnar Signed-off-by: Patrick McHardy commit 65f233fb1669e6c990cd1d7fd308ac7dc66dc207 Author: Ingo Molnar Date: Tue Nov 25 18:20:13 2008 +0100 netfilter: fix warning in net/netfilter/nf_conntrack_proto_tcp.c fix this warning: net/netfilter/nf_conntrack_proto_tcp.c: In function \u2018tcp_in_window\u2019: net/netfilter/nf_conntrack_proto_tcp.c:491: warning: unused variable \u2018net\u2019 net/netfilter/nf_conntrack_proto_tcp.c: In function \u2018tcp_packet\u2019: net/netfilter/nf_conntrack_proto_tcp.c:812: warning: unused variable \u2018net\u2019 Signed-off-by: Ingo Molnar Signed-off-by: Patrick McHardy commit 1e9b51c28312f7334394aa30be56ff52c2b65b7e Author: Markus Metzger Date: Tue Nov 25 09:24:15 2008 +0100 x86, bts, ftrace: a BTS ftrace plug-in prototype Impact: add new ftrace plugin A prototype for a BTS ftrace plug-in. The tracer collects branch trace in a cyclic buffer for each cpu. The tracer is not configurable and the trace for each snapshot is appended when doing cat /debug/tracing/trace. This is a proof of concept that will be extended with future patches to become a (hopefully) useful tool. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit 8bba1bf5e2434c83f2fe8b1422604ace9bbe4cb8 Author: Markus Metzger Date: Tue Nov 25 09:12:31 2008 +0100 x86, ftrace: call trace->open() before stopping tracing; add trace->print_header() Add a callback to allow an ftrace plug-in to write its own header. Move the call to trace->open() up a few lines. The changes are required by the BTS ftrace plug-in. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit 6abb11aecd888d1da6276399380b7355f127c006 Author: Markus Metzger Date: Tue Nov 25 09:05:27 2008 +0100 x86, bts, ptrace: move BTS buffer allocation from ds.c into ptrace.c Impact: restructure DS memory allocation to be done by the usage site of DS Require pre-allocated buffers in ds.h. Move the BTS buffer allocation for ptrace into ptrace.c. The pointer to the allocated buffer is stored in the traced task's task_struct together with the handle returned by ds_request_bts(). Removes memory accounting code. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit ca0002a179bfa532d009a9272d619732872c49bd Author: Markus Metzger Date: Tue Nov 25 09:01:25 2008 +0100 x86, bts: base in-kernel ds interface on handles Impact: generalize the DS code to shared buffers Change the in-kernel ds.h interface to identify the tracer via a handle returned on ds_request_~(). Tracers used to be identified via their task_struct. The changes are required to allow DS to be shared between different tasks, which is needed for perfmon2 and for ftrace. For ptrace, the handle is stored in the traced task's task_struct. This should probably go into a (arch-specific) ptrace context some time. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit 7d55718b0c19ba611241c330f688ee824e9bab79 Merge: 6f893fb... de90add... f4166c5... Author: Ingo Molnar Date: Tue Nov 25 17:30:25 2008 +0100 Merge branches 'tracing/core', 'x86/urgent' and 'x86/ptrace' into tracing/hw-branch-tracing This pulls together all the topic branches that are needed for the DS/BTS/PEBS tracing work. commit 9e0f1b7f6bc5265847e995540981642c857f15b6 Author: Qinghuang Feng Date: Tue Nov 25 23:24:54 2008 +0800 ASoC: Clean up kernel-doc for snd_soc_dai_set_fmt There is no argument named @clk_id in snd_soc_dai_set_fmt, remove its' comment. Signed-off-by: Qinghuang Feng Signed-off-by: Mark Brown commit 5c0d7bb797a975691ca8bbc38e53da03c6e151bb Author: Dmitry Baryshkov Date: Tue Nov 25 09:35:21 2008 +0300 ASoC: tosa: move gpio probing to machine callbacks Signed-off-by: Dmitry Baryshkov Signed-off-by: Mark Brown commit 4451582f7e9fc2860b289aca60a6065286439bb8 Author: Misael Lopez Cruz Date: Mon Nov 24 22:21:23 2008 -0600 ASoC: Add support for TI SDP3430 This patch add ASoC support for TI SDP3430. It's based on Gumstix Overo SoC code by Steve Sakoman. Signed-off-by: Misael Lopez Cruz Signed-off-by: Mark Brown commit 9c8f1a0e6ed48f2ecf08ac0fb7fb043f8c34dc63 Author: Arun KS Date: Tue Nov 25 09:56:12 2008 +0530 ASoC: Fix TWL4030 Kconfig dependency Fixes Kconfig dependency of TWL4030 audio codec driver with TWL4030 core driver on both overo and omap2evm boards Signed-off-by: Arun KS Acked-by: David Brownell Signed-off-by: Mark Brown commit 375e8a7c943d5aa8716be229e398473b23709ce9 Author: Jarkko Nikula Date: Tue Nov 25 12:45:09 2008 +0200 ASoC: OMAP: Add support for mono audio links in McBSP DAI Patch adds support for mono audio links so that McBSP DAI can operate with real mono codecs. In I2S, the signalling remains the same but only first frame (left channel) is transmitting audio data and second frame having null data. In DSP_A, only first frame is transmitted. Signed-off-by: Jarkko Nikula Signed-off-by: Mark Brown commit 0be43050d4da08295b985cb23347ecc1003cb8d6 Author: Jarkko Nikula Date: Tue Nov 25 12:45:08 2008 +0200 ASoC: OMAP: Apply channel constrains to N810 machine driver Prepare for upcoming McBSP DAI update adding support for mono links by restricting number of channels to 2 in N810. This is due tlv320aic3x which claims channels_min = 1 and playing pure mono audio over I2S would cause it to be played only from left channel if both cpu and codec DAI's claim to support mono. Signed-off-by: Jarkko Nikula Signed-off-by: Mark Brown commit b0e6481a9ae9e8c80b5d956980767ecad35c95c1 Author: Takashi Iwai Date: Tue Nov 25 16:07:01 2008 +0100 ALSA: hda - Really fix bits value in proc output The fix in 82894b6f6f109722070d4d78730fe50cdaba9443 resulted in zero due to wrong mask and bit shifts. Now fixed really. Signed-off-by: Takashi Iwai commit eefe93b9957e6f14780b7d37aeda0f27f341953d Merge: ee09543... 661cd8f... Author: Takashi Iwai Date: Tue Nov 25 15:20:57 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda Conflicts: sound/pci/hda/patch_sigmatel.c commit ee09543c866559e1ffb4f5c38533f2bedd725acd Author: Takashi Iwai Date: Tue Nov 25 15:03:38 2008 +0100 ALSA: hda - Add quirk for MSI 7260 mobo Added preset model=targa-dig for MSI 7260 mobo. Signed-off-by: Takashi Iwai commit c0193f39f43c79bde6c1c5804f5315f3983152b5 Author: Markus Bollinger Date: Tue Nov 25 12:37:52 2008 +0100 ALSA: pcxhr - add support for pcxhr stereo sound cards (mixer part) - add support for pcxhr stereo cards mixer controls - adjust tlv db scales to real dBu values - fix bug with monitoring volume control pcxhr_monitor_vol_put - do some cleanup Signed-off-by: Markus Bollinger Signed-off-by: Takashi Iwai commit 2f9889a20cd2854bc6305198255c617b0b4eb719 Author: David S. Miller Date: Tue Nov 25 03:53:09 2008 -0800 Revert "hso: Fix crashes on close." This reverts commit 4a3e818181e1baf970e9232ca8b747e233176b87. On request from Alan Cox. Signed-off-by: David S. Miller commit ab153d84d9609b4e6f53632a6f14b882e866cb47 Author: David S. Miller Date: Tue Nov 25 03:52:46 2008 -0800 Revert "hso: Fix free of mutexes still in use." This reverts commit 52429eb216385fdc6969c0112ba8b46cffefaaef. On request from Alan Cox. Signed-off-by: David S. Miller commit cd90ee1799136bd74158b734cf71b72609244a91 Author: David S. Miller Date: Tue Nov 25 03:52:17 2008 -0800 Revert "hso: Add TIOCM ioctl handling." This reverts commit 7ea3a9ad9bf360f746a7ad6fa72511a5c359490d. On request from Alan Cox. Signed-off-by: David S. Miller commit 7628700e08403618b0b07bd25b6456d8b2d074ef Author: Markus Bollinger Date: Tue Nov 25 12:28:06 2008 +0100 ALSA: pcxhr - add support for pcxhr stereo sound cards (firmware support) - Add support for pcxhr stereo cards and their firmware - autorize sound cards without analog IO - do some cleanup Signed-off-by: Markus Bollinger Signed-off-by: Takashi Iwai commit 9d948d270010e3552c94281bab75694580ca23e9 Author: Markus Bollinger Date: Tue Nov 25 12:24:54 2008 +0100 ALSA: pcxhr - add support for pcxhr stereo sound cards (core change) - Add support for pcxhr stereo cards - minor bugfixes : period and buffer size consraints - fix PLL register values - do some clean up Signed-off-by: Markus Bollinger Signed-off-by: Takashi Iwai commit 93bf5d8753b2e3cc9e8982d551d119a54a31a7ec Author: Markus Bollinger Date: Tue Nov 25 12:21:05 2008 +0100 ALSA: pcxhr - add support for pcxhr stereo sound cards - Add support for pcxhr stereo cards - do some clean up Signed-off-by: Markus Bollinger Signed-off-by: Takashi Iwai commit 9f40ac713c49fb6ca655550b620edc85c445d743 Author: Eric Leblond Date: Tue Nov 25 12:18:11 2008 +0100 netfilter: nfmark IPV6 routing in OUTPUT, mangle, NFQUEUE This patch let nfmark to be evaluated for routing decision for OUTPUT packet, in mangle table, when process paquet in NFQUEUE. This patch is an IPv6 port of Laurent Licour IPv4 one. Signed-off-by: Eric Leblond Signed-off-by: Patrick McHardy commit 5f145e44ae09f629d25536b2947a91e9c01bddcb Author: Eric Leblond Date: Tue Nov 25 12:15:16 2008 +0100 netfilter: nfmark routing in OUTPUT, mangle, NFQUEUE This patch let nfmark to be evaluated for routing decision for OUTPUT packet, in mangle table, when process paquet in NFQUEUE Until now, only change (in NFQUEUE process) on fields src_addr, dest_addr and tos could make netfilter to reevalute the routing. From: Laurent Licour Signed-off-by: Eric Leblond Signed-off-by: Patrick McHardy commit c6e4c66613c2bb040e53bb04006c277992cc8f4b Author: Takashi Iwai Date: Tue Nov 25 11:58:19 2008 +0100 ALSA: hda - Assign unsol tags dynamically in patch_sigmatel.c Since we need to handle many unsolicited events assigned to different widgets, allocate the event dynamically using the existing events array, and use the tag appropriately instead of combination of fixed number and widget nid. (Note that widget nid can be over 4 bits!) Also, replaced the call of unsol_event handler with a dedicated function to be more readable. Signed-off-by: Takashi Iwai commit 0e19e7d2bff0ec04fe4dc920c580d8a321afa07f Merge: 82894b6... f73d358... Author: Takashi Iwai Date: Tue Nov 25 11:56:25 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda Conflicts: sound/pci/hda/patch_sigmatel.c commit 82894b6f6f109722070d4d78730fe50cdaba9443 Author: Takashi Iwai Date: Tue Nov 25 11:42:54 2008 +0100 ALSA: hda - Fix proc pcm rate bits Show only the relevant bits in the PCM rate bits as in the earlier version. Signed-off-by: Takashi Iwai commit fb7e06748c29c08a9f5ca057a780b65acbb91c27 Author: Alexey Dobriyan Date: Tue Nov 25 01:05:54 2008 -0800 xfrm: remove useless forward declarations Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 6daad37230ab02bb593d179d704079d4b5912bd7 Author: Alexey Dobriyan Date: Tue Nov 25 01:05:09 2008 -0800 ah4/ah6: remove useless NULL assignments struct will be kfreed in a moment, so... Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 69d728baf620839d1a3c874eecac316729f89de4 Author: Alexander Duyck Date: Tue Nov 25 01:04:03 2008 -0800 igb: loopback bits not correctly cleared from RCTL register This change forces the bits to 0 by using an &= operation with an inverted mask of all options instead of using an |= with a value of 0. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 9b07f3d3157487e6467dfa4640f7fb9446165494 Author: Alexander Duyck Date: Tue Nov 25 01:03:26 2008 -0800 igb: remove unneeded bit refrence when enabling jumbo frames There is a reference to a Buffer Size extention bit that is unneded by 82575/82576 hardware. Since it is not needed it should be removed from the code. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 7a6b6f515f77d1c62a2f383b6dce18cb0af0cf4f Author: Jeff Kirsher Date: Tue Nov 25 01:02:08 2008 -0800 DCB: fix kconfig option Since the netlink option for DCB is necessary to actually be useful, simplified the Kconfig option. In addition, added useful help text for the Kconfig option. Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 411c41eea58bd3500cf897e2c27dd5330935a3a8 Author: Harvey Harrison Date: Tue Nov 25 00:40:37 2008 -0800 aoe: remove private mac address format function Add %pm to omit the colons when printing a mac address. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 9c8f92aed16dbd1924910f3305f5992a4f29fe2a Author: Denis Joseph Barrow Date: Tue Nov 25 00:36:10 2008 -0800 hso: Hook up ->reset_resume Made usb_drivers reset_resume function point to hso_resume this fixes problems a usb reset is done when the network interface is left idle for a few minutes. Possibly reset_resume should initialise hardware more but this works in the common case. Signed-off-by: Denis Joseph Barrow Signed-off-by: David S. Miller commit 7ea3a9ad9bf360f746a7ad6fa72511a5c359490d Author: Denis Joseph Barrow Date: Tue Nov 25 00:35:26 2008 -0800 hso: Add TIOCM ioctl handling. Makes TIOCM ioctls for Data Carrier Detect & related functions work like /drivers/serial/serial-core.c potentially needed for pppd & similar user programs. Signed-off-by: Denis Joseph Barrow Signed-off-by: David S. Miller commit 52429eb216385fdc6969c0112ba8b46cffefaaef Author: Denis Joseph Barrow Date: Tue Nov 25 00:33:13 2008 -0800 hso: Fix free of mutexes still in use. A new structure hso_mutex_table had to be declared statically & used as as hso_device mutex_lock(&serial->parent->mutex) etc is freed in hso_serial_open & hso_serial_close by kref_put while the mutex is still in use. This is a substantial change but should make the driver much stabler. Signed-off-by: Denis Joseph Barrow Signed-off-by: David S. Miller commit 89930b7b5e3e9bfe9c6ec5e19920451c8f5d9088 Author: Denis Joseph Barrow Date: Tue Nov 25 00:30:48 2008 -0800 hso: Fix URB submission -EINVAL. Added check for IFF_UP in hso_resume, this should eliminate -EINVAL (-22) errors caused from urb's being submitted twice, once by hso_resume & once in hso_net_open, if suspend/resume USB power saving mode is enabled Signed-off-by: Denis Joseph Barrow Signed-off-by: David S. Miller commit 4a3e818181e1baf970e9232ca8b747e233176b87 Author: Denis Joseph Barrow Date: Tue Nov 25 00:27:50 2008 -0800 hso: Fix crashes on close. Moved serial_open_count in hso_serial_open to prevent crashes owing to the serial structure being made NULL when hso_serial_close is called even though hso_serial_open returned -ENODEV, Alan Cox pointed out this happens, also put in sanity check in hso_serial_close to check for a valid serial structure which should prevent the most reproducable crash in the driver when the hso device is disconnected while in use. Signed-off-by: Denis Joseph Barrow Signed-off-by: David S. Miller commit bab04c3adbb55aeb5e8db60522f14ce0bb0d4179 Author: Denis Joseph Barrow Date: Tue Nov 25 00:26:12 2008 -0800 hso: Add new usb device id's. Signed-off-by: Denis Joseph Barrow Signed-off-by: David S. Miller commit 47fd5b8373ecc6bf5473e4139b62b06425448252 Author: Stephen Hemminger Date: Tue Nov 25 00:20:43 2008 -0800 netdev: add HAVE_NET_DEVICE_OPS As a concession to vendors who have to deal with one source for different kernel versions, add a HAVE_NET_DEVICE_OPS so they don't end up hard coding ifdef against kernel version. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit e951e4af2e399c46891004d4931333d2d8d520ab Author: Ingo Molnar Date: Tue Nov 25 08:42:01 2008 +0100 x86: fix unused variable warning in arch/x86/kernel/hpet.c Impact: fix build warning this warning: arch/x86/kernel/hpet.c:36: warning: ‘hpet_num_timers’ defined but not used Triggers because hpet_num_timers is unused in the !CONFIG_PCI_MSI case. Signed-off-by: Ingo Molnar commit 14bfc987e395797dfe03e915e8b4c7fc9e5078e4 Author: Ingo Molnar Date: Tue Nov 25 08:58:11 2008 +0100 tracing, tty: fix warnings caused by branch tracing and tty_kref_get() Stephen Rothwell reported tht this warning started triggering in linux-next: In file included from init/main.c:27: include/linux/tty.h: In function ‘tty_kref_get’: include/linux/tty.h:330: warning: ‘______f’ is static but declared in inline function ‘tty_kref_get’ which is not static Which gcc emits for 'extern inline' functions that nevertheless define static variables. Change it to 'static inline', which is the norm in the kernel anyway. Reported-by: Stephen Rothwell Signed-off-by: Ingo Molnar commit 0ace285605314c54339710484b54814945a60df8 Author: Ilpo Järvinen Date: Mon Nov 24 21:30:21 2008 -0800 tcp: handle shift/merge of cloned skbs too This caused me to get repeatably: tcpdump: pcap_loop: recvfrom: Bad address Happens occassionally when I tcpdump my for-looped test xfers: while [ : ]; do echo -n "$(date '+%s.%N') "; ./sendfile; sleep 20; done Rest of the relevant commands: ethtool -K eth0 tso off tc qdisc add dev eth0 root netem drop 4% tcpdump -n -s0 -i eth0 -w sacklog.all Running net-next under kvm, connection goes to the same host (basically just out of kvm). The connection itself works ok and data gets sent without corruption even with a large number of tests while tcpdump fails usually within less than 5 tests. Whether it only happens because of this change or not, I don't know for sure but it's the only thing with which I've seen that error. The non-cloned variant works w/o it for much longer time. I'm yet to debug where the error actually comes from. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 111cc8b913b42ef07793648b1699288332f273e1 Author: Ilpo Järvinen Date: Mon Nov 24 21:27:22 2008 -0800 tcp: add some mibs to track collapsing Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 92ee76b6d99bfcdab6162816c9025541ef7248eb Author: Ilpo Järvinen Date: Mon Nov 24 21:26:56 2008 -0800 tcp: Make shifting not clear the hints The earlier version was just very basic one which is "playing safe" by always clearing the hints. However, clearing of a hint is extremely costly operation with large windows, so it must be avoided at all cost whenever possible, there is a way with shifting too achieve not-clearing. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 832d11c5cd076abc0aa1eaf7be96c81d1a59ce41 Author: Ilpo Järvinen Date: Mon Nov 24 21:20:15 2008 -0800 tcp: Try to restore large SKBs while SACK processing During SACK processing, most of the benefits of TSO are eaten by the SACK blocks that one-by-one fragment SKBs to MSS sized chunks. Then we're in problems when cleanup work for them has to be done when a large cumulative ACK comes. Try to return back to pre-split state already while more and more SACK info gets discovered by combining newly discovered SACK areas with the previous skb if that's SACKed as well. This approach has a number of benefits: 1) The processing overhead is spread more equally over the RTT 2) Write queue has less skbs to process (affect everything which has to walk in the queue past the sacked areas) 3) Write queue is consistent whole the time, so no other parts of TCP has to be aware of this (this was not the case with some other approach that was, well, quite intrusive all around). 4) Clean_rtx_queue can release most of the pages using single put_page instead of previous PAGE_SIZE/mss+1 calls In case a hole is fully filled by the new SACK block, we attempt to combine the next skb too which allows construction of skbs that are even larger than what tso split them to and it handles hole per on every nth patterns that often occur during slow start overshoot pretty nicely. Though this to be really useful also a retransmission would have to get lost since cumulative ACKs advance one hole at a time in the most typical case. TODO: handle upwards only merging. That should be rather easy when segment is fully sacked but I'm leaving that as future work item (it won't make very large difference anyway since this current approach already covers quite a lot of normal cases). I was earlier thinking of some sophisticated way of tracking timestamps of the first and the last segment but later on realized that it won't be that necessary at all to store the timestamp of the last segment. The cases that can occur are basically either: 1) ambiguous => no sensible measurement can be taken anyway 2) non-ambiguous is due to reordering => having the timestamp of the last segment there is just skewing things more off than does some good since the ack got triggered by one of the holes (besides some substle issues that would make determining right hole/skb even harder problem). Anyway, it has nothing to do with this change then. I choose to route some abnormal looking cases with goto noop, some could be handled differently (eg., by stopping the walking at that skb but again). In general, they either shouldn't happen at all or are rare enough to make no difference in practice. In theory this change (as whole) could cause some macroscale regression (global) because of cache misses that are taken over the round-trip time but it gets very likely better because of much less (local) cache misses per other write queue walkers and the big recovery clearing cumulative ack. Worth to note that these benefits would be very easy to get also without TSO/GSO being on as long as the data is in pages so that we can merge them. Currently I won't let that happen because DSACK splitting at fragment that would mess up pcounts due to sk_can_gso in tcp_set_skb_tso_segs. Once DSACKs fragments gets avoided, we have some conditions that can be made less strict. TODO: I will probably have to convert the excessive pointer passing to struct sacktag_state... :-) My testing revealed that considerable amount of skbs couldn't be shifted because they were cloned (most likely still awaiting tx reclaim)... [The rest is considering future work instead since I got repeatably EFAULT to tcpdump's recvfrom when I added pskb_expand_head to deal with clones, so I separated that into another, later patch] ...To counter that, I gave up on the fifth advantage: 5) When growing previous SACK block, less allocs for new skbs are done, basically a new alloc is needed only when new hole is detected and when the previous skb runs out of frags space ...which now only happens of if reclaim is fast enough to dispose the clone before the SACK block comes in (the window is RTT long), otherwise we'll have to alloc some. With clones being handled I got these numbers (will be somewhat worse without that), taken with fine-grained mibs: TCPSackShifted 398 TCPSackMerged 877 TCPSackShiftFallback 320 TCPSACKCOLLAPSEFALLBACKGSO 0 TCPSACKCOLLAPSEFALLBACKSKBBITS 0 TCPSACKCOLLAPSEFALLBACKSKBDATA 0 TCPSACKCOLLAPSEFALLBACKBELOW 0 TCPSACKCOLLAPSEFALLBACKFIRST 1 TCPSACKCOLLAPSEFALLBACKPREVBITS 318 TCPSACKCOLLAPSEFALLBACKMSS 1 TCPSACKCOLLAPSEFALLBACKNOHEAD 0 TCPSACKCOLLAPSEFALLBACKSHIFT 0 TCPSACKCOLLAPSENOOPSEQ 0 TCPSACKCOLLAPSENOOPSMALLPCOUNT 0 TCPSACKCOLLAPSENOOPSMALLLEN 0 TCPSACKCOLLAPSEHOLE 12 Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit f58b22fd3c16444edc393a217a74208f1894b601 Author: Ilpo Järvinen Date: Mon Nov 24 21:14:43 2008 -0800 tcp: make tcp_sacktag_one able to handle partial skb too This is preparatory work for SACK combiner patch which may have to count TCP state changes for only a part of the skb because it will intentionally avoids splitting skb to SACKed and not sacked parts. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit adb92db857ee2a0a2b925ccfbd560203c3f88aae Author: Ilpo Järvinen Date: Mon Nov 24 21:13:50 2008 -0800 tcp: Make SACK code to split only at mss boundaries Sadly enough, this adds possible divide though we try to avoid it by checking one mss as common case. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit e8bae275d9354104f7ae24a48a90d1a6286e7bd9 Author: Ilpo Järvinen Date: Mon Nov 24 21:12:28 2008 -0800 tcp: more aggressive skipping I knew already when rewriting the sacktag that this condition was too conservative, change it now since it prevent lot of useless work (especially in the sack shifter decision code that is being added by a later patch). This shouldn't change anything really, just save some processing regardless of the shifter. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit e1aa680fa40e7492260a09cb57d94002245cc8fe Author: Ilpo Järvinen Date: Mon Nov 24 21:11:55 2008 -0800 tcp: move tcp_simple_retransmit to tcp_input Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 4a17fc3add594fcc1c778e93a95b6ecf47f630e5 Author: Ilpo Järvinen Date: Mon Nov 24 21:03:43 2008 -0800 tcp: collapse more than two on retransmission I always had thought that collapsing up to two at a time was intentional decision to avoid excessive processing if 1 byte sized skbs are to be combined for a full mtu, and consecutive retransmissions would make the size of the retransmittee double each round anyway, but some recent discussion made me to understand that was not the case. Thus make collapse work more and wait less. It would be possible to take advantage of the shifting machinery (added in the later patch) in the case of paged data but that can be implemented on top of this change. tcp_skb_is_last check is now provided by the loop. I tested a bit (ss-after-idle-off, fill 4096x4096B xfer, 10s sleep + 4096 x 1byte writes while dropping them for some a while with netem): . 16774097:16775545(1448) ack 1 win 46 . 16775545:16776993(1448) ack 1 win 46 . ack 16759617 win 2399 P 16776993:16777217(224) ack 1 win 46 . ack 16762513 win 2399 . ack 16765409 win 2399 . ack 16768305 win 2399 . ack 16771201 win 2399 . ack 16774097 win 2399 . ack 16776993 win 2399 . ack 16777217 win 2399 P 16777217:16777257(40) ack 1 win 46 . ack 16777257 win 2399 P 16777257:16778705(1448) ack 1 win 46 P 16778705:16780153(1448) ack 1 win 46 FP 16780153:16781313(1160) ack 1 win 46 . ack 16778705 win 2399 . ack 16780153 win 2399 F 1:1(0) ack 16781314 win 2399 While without drop-all period I get this: . 16773585:16775033(1448) ack 1 win 46 . ack 16764897 win 9367 . ack 16767793 win 9367 . ack 16770689 win 9367 . ack 16773585 win 9367 . 16775033:16776481(1448) ack 1 win 46 P 16776481:16777217(736) ack 1 win 46 . ack 16776481 win 9367 . ack 16777217 win 9367 P 16777217:16777218(1) ack 1 win 46 P 16777218:16777219(1) ack 1 win 46 P 16777219:16777220(1) ack 1 win 46 ... P 16777247:16777248(1) ack 1 win 46 . ack 16777218 win 9367 . ack 16777219 win 9367 ... . ack 16777233 win 9367 . ack 16777248 win 9367 P 16777248:16778696(1448) ack 1 win 46 P 16778696:16780144(1448) ack 1 win 46 FP 16780144:16781313(1169) ack 1 win 46 . ack 16780144 win 9367 F 1:1(0) ack 16781314 win 9367 The window seems to be 30-40 segments, which were successfully combined into: P 16777217:16777257(40) ack 1 win 46 Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 200036ca9b3f0b2250912142552ce56682190f95 Author: Hannes Eder Date: Mon Nov 24 22:14:43 2008 +0100 CRED: fix sparse warnings Impact: fix sparse warnings Fix the following sparse warnings: security/security.c:228:2: warning: returning void-valued expression security/security.c:233:2: warning: returning void-valued expression security/security.c:616:2: warning: returning void-valued expression Signed-off-by: Hannes Eder Signed-off-by: James Morris commit a21bba945430f3f5e00c349665f88cdacdb32a8d Author: Eric Dumazet Date: Mon Nov 24 16:07:50 2008 -0800 net: avoid a pair of dst_hold()/dst_release() in ip_push_pending_frames() We can reduce pressure on dst entry refcount that slowdown UDP transmit path on SMP machines. This pressure is visible on RTP servers when delivering content to mediagateways, especially big ones, handling thousand of streams. Several cpus send UDP frames to the same destination, hence use the same dst entry. This patch makes ip_push_pending_frames() steal the refcount its callers had to take when filling inet->cork.dst. This doesnt avoid all refcounting, but still gives speedups on SMP, on UDP/RAW transmit path. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 6ded6ab9be4f6164aef1c527407c1b94f0929799 Author: Serge Hallyn Date: Mon Nov 24 16:24:10 2008 -0500 User namespaces: use the current_user_ns() macro Fix up the last current_user()->user_ns instance to use current_user_ns(). Signed-off-by: Serge E. Hallyn commit 18b6e0414e42d95183f07d8177e3ff0241abd825 Author: Serge Hallyn Date: Wed Oct 15 16:38:45 2008 -0500 User namespaces: set of cleanups (v2) The user_ns is moved from nsproxy to user_struct, so that a struct cred by itself is sufficient to determine access (which it otherwise would not be). Corresponding ecryptfs fixes (by David Howells) are here as well. Fix refcounting. The following rules now apply: 1. The task pins the user struct. 2. The user struct pins its user namespace. 3. The user namespace pins the struct user which created it. User namespaces are cloned during copy_creds(). Unsharing a new user_ns is no longer possible. (We could re-add that, but it'll cause code duplication and doesn't seem useful if PAM doesn't need to clone user namespaces). When a user namespace is created, its first user (uid 0) gets empty keyrings and a clean group_info. This incorporates a previous patch by David Howells. Here is his original patch description: >I suggest adding the attached incremental patch. It makes the following >changes: > > (1) Provides a current_user_ns() macro to wrap accesses to current's user > namespace. > > (2) Fixes eCryptFS. > > (3) Renames create_new_userns() to create_user_ns() to be more consistent > with the other associated functions and because the 'new' in the name is > superfluous. > > (4) Moves the argument and permission checks made for CLONE_NEWUSER to the > beginning of do_fork() so that they're done prior to making any attempts > at allocation. > > (5) Calls create_user_ns() after prepare_creds(), and gives it the new creds > to fill in rather than have it return the new root user. I don't imagine > the new root user being used for anything other than filling in a cred > struct. > > This also permits me to get rid of a get_uid() and a free_uid(), as the > reference the creds were holding on the old user_struct can just be > transferred to the new namespace's creator pointer. > > (6) Makes create_user_ns() reset the UIDs and GIDs of the creds under > preparation rather than doing it in copy_creds(). > >David >Signed-off-by: David Howells Changelog: Oct 20: integrate dhowells comments 1. leave thread_keyring alone 2. use current_user_ns() in set_user() Signed-off-by: Serge Hallyn commit 2e77d89b2fa8e3f8325b8ce7893ec3645f41aff5 Author: Eric Dumazet Date: Mon Nov 24 15:52:46 2008 -0800 net: avoid a pair of dst_hold()/dst_release() in ip_append_data() We can reduce pressure on dst entry refcount that slowdown UDP transmit path on SMP machines. This pressure is visible on RTP servers when delivering content to mediagateways, especially big ones, handling thousand of streams. Several cpus send UDP frames to the same destination, hence use the same dst entry. This patch makes ip_append_data() eventually steal the refcount its callers had to take on the dst entry. This doesnt avoid all refcounting, but still gives speedups on SMP, on UDP/RAW transmit path Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 4db0acf3c0afbbbb2ae35a65f8896ca6655a47ec Author: Jarek Poplawski Date: Mon Nov 24 15:48:05 2008 -0800 net: gen_estimator: Fix gen_kill_estimator() lookups gen_kill_estimator() linear lists lookups are very slow, and e.g. while deleting a large number of HTB classes soft lockups were reported. Here is another try to fix this problem: this time internally, with rbtree, so similarly to Jamal's hashing idea IIRC. (Looking for next hits could be still optimized, but it's really fast as it is.) Reported-by: Badalian Vyacheslav Reported-by: Denys Fedoryshchenko Signed-off-by: Jarek Poplawski Acked-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 3f0947c3ffaed33c1c38b79e4b17f75ba072d3e9 Author: Patrick McHardy Date: Mon Nov 24 15:46:08 2008 -0800 pkt_sched: sch_drr: fix drr_dequeue loop() Jarek Poplawski points out: If all child qdiscs of sch_drr are non-work-conserving (e.g. sch_tbf) drr_dequeue() will busy-loop waiting for skbs instead of leaving the job for a watchdog. Checking for list_empty() in each loop isn't necessary either, because this can never be true except the first time. Using non-work-conserving qdiscs as children of DRR makes no sense, simply bail out in that case. Reported-by: Jarek Poplawski Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4b40eed73e3787d60160beed1352ceadd24f6be1 Author: Wang Chen Date: Mon Nov 24 15:34:00 2008 -0800 infiniband: Kill directly reference of netdev->priv This use of netdev->priv is wrong. The right way is: alloc_netdev() with no memory for private data. make netdev->ml_priv to point to c2_dev. Signed-off-by: Wang Chen Acked-by: Roland Dreier Signed-off-by: David S. Miller commit 486bf8de17361232c40e092a219f328093e34dca Author: Wang Chen Date: Mon Nov 24 14:52:16 2008 -0800 netdevice sbni: Convert directly reference of netdev->priv 1. convert netdev->priv to netdev_priv(). 2. make sbni_pci_probe() be static. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 5c94afd79cd9e68cb9899fe7788342329e9f445f Author: Jirka Pirko Date: Mon Nov 24 14:49:11 2008 -0800 tokenring/3c359.c: Prevent possible mem leak when open failed Freeing previously allocated buffers in case of error. Signed-off-by: Jirka Pirko Signed-off-by: David S. Miller commit 138a5cdf2ffe8c6602641f8aaa00cfcf10929fe1 Author: Jirka Pirko Date: Mon Nov 24 14:48:25 2008 -0800 tokenring/3c359.c: Fix error message when allocating tx_ring Pointed out by Joe Perches. Error message after tx_ring allocation check was wrong. Signed-off-by: Jirka Pirko Signed-off-by: David S. Miller commit d0cc10ab0e3740b629d88386c907342f77cbdb30 Author: Jirka Pirko Date: Mon Nov 24 14:47:53 2008 -0800 tokenring/3c359.c: fix allocation null check Fixed typo when allocating rx_ring, tx_ring was checked for null instead. Signed-off-by: Jirka Pirko Signed-off-by: David S. Miller commit 85920d43bd5ae8a96f434704438b57c0b8c31198 Author: Stephen Hemminger Date: Mon Nov 24 14:47:01 2008 -0800 8139too: use err.h macros Instead of using call by reference use the PTR_ERR macros to handle return value with error case. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3755810cebf7f9902b05c7ba9baeac0fc44881be Author: Eric Dumazet Date: Mon Nov 24 14:05:22 2008 -0800 net: Make sure BHs are disabled in sock_prot_inuse_add() There is still a call to sock_prot_inuse_add() in af_netlink while in a preemptable section. Add explicit BH disable around this call. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit fde22f272dad4fef7ba611e3f75fa94f7b43fae6 Author: Mark Brown Date: Mon Nov 24 18:08:18 2008 +0000 ASoC: Lower priority of resume work logging Now that the ASoC resume has been punted to a workqueue for a release cycle without attracting bug reports it should be safe to make the log messages associated with it debug level, reducing noise and kernel size in production configurations. Signed-off-by: Mark Brown commit 67c91513b81a101800f113013234d2ab06bc5e52 Author: Mark Brown Date: Mon Nov 24 17:45:26 2008 +0000 ASoC: Flag AD1980 as an AC97 interface Special handling is required for suspend and resume of AC97 codecs due to the control path going over the data bus. Signed-off-by: Mark Brown commit 3ba9e10a6d3b6abf5f5952572cff8f8d5a35ae54 Author: Mark Brown Date: Mon Nov 24 18:01:05 2008 +0000 ASoC: Remove DAI type information DAI type information is only ever used within ASoC in order to special case AC97 and for diagnostic purposes. Since modern CPUs and codecs support multi function DAIs which can be configured for several modes it is more trouble than it's worth to maintain anything other than a flag identifying AC97 DAIs so remove the type field and replace it with an ac97_control flag. Signed-off-by: Mark Brown commit 4813eadf6b17caa7fcce67ac2f929a3dd5178fa2 Author: Patrick McHardy Date: Mon Nov 24 18:34:48 2008 +0100 netfilter: nf_conntrack_ftp: change "partial ..." message to pr_debug() The message triggers when sending non-FTP data on port 21 or with certain clients that use multiple syscalls to send the command. Change to pr_debug() since users have been complaining. Signed-off-by: Patrick McHardy commit 6f893fb2e89287a4d755f928c3cda9d18440355c Merge: 0429149... 1d926f2... 69bb54e... 65afa5e... cbe2f5a... 813b852... 033601a... 958086d... fb91ee6... Author: Ingo Molnar Date: Mon Nov 24 17:46:24 2008 +0100 Merge branches 'tracing/branch-tracer', 'tracing/fastboot', 'tracing/ftrace', 'tracing/function-return-tracer', 'tracing/power-tracer', 'tracing/powerpc', 'tracing/ring-buffer', 'tracing/stack-tracer' and 'tracing/urgent' into tracing/core commit 64b7482de253c10efa2589a6212e3d2093a3efc7 Merge: 957ad01... 50ee917... Author: Ingo Molnar Date: Mon Nov 24 17:37:12 2008 +0100 Merge branch 'sched/rt' into sched/core commit ef1681d82f4bc2d9e023519f0bedb86519d10c43 Author: Takashi Iwai Date: Mon Nov 24 17:29:28 2008 +0100 ALSA: hda - Add probe_mask quirk for Medion MD96630 Medion MD96630 has ALC268 codec on slot#2 although it's not used for any purpose. This codec conflicts with the primiary codec ALC888 on slot#0, and gives mixer errors. This patch adds a corresponding entry to probe_mask blacklist. Reference: Novell bnc#412528 https://bugzilla.novell.com/show_bug.cgi?id=412528 Signed-off-by: Takashi Iwai commit b0bd53a7399f65e2d1b37cd44c5003e55b886c1e Author: Peter Ujfalusi Date: Mon Nov 24 13:49:38 2008 +0200 ASoC: TWL4030: Add helper function for output gain controls Some of the gain controls in TWL (mostly those which are associated with the outputs) are implemented in an interesting way: 0x0 : Power down (mute) 0x1 : 6dB 0x2 : 0 dB 0x3 : -6 dB Inverting not going to help with these. Custom volsw and volsw_2r get/put functions to handle these gains. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 0d33ea0b0f954dddd3996597c663c111249d4df9 Author: Peter Ujfalusi Date: Mon Nov 24 13:49:36 2008 +0200 ASoC: TWL4030: Add CGAIN volume control Add CGAIN (Coarse gain control) to TWL4030 codec. The range of the CGAIN is: 0 dB to 12 dB in 6 dB steps. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit c10b82cf085c38f2568609ffb10a6d725130f389 Author: Peter Ujfalusi Date: Mon Nov 24 13:49:35 2008 +0200 ASoC: TWL4030: Change the Master volume control to TLV TWL4030 FGAIN volume control has a range: -62 to 0 dB in 1 dB steps, 0 in the FGAIN means mute. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit f8d05bdbb07458e5f2c6a8281bde08056836fea6 Author: Peter Ujfalusi Date: Mon Nov 24 08:25:45 2008 +0200 ASoC: TWL4030: Disable soft-volume Keep Soft-volume disabled for now, since if it is enabled the FGAIN volume controls are not working in the current configuration: CODEC_MODE:OPT_MODE = 1 OPTION:ARXR2_EN = 1 OPTION:ARXL2_EN = 1 OPTION:ARXR1_EN = 0 OPTION:ARXL1_VRX_EN = 0 RX_PATH_SEL:RXL1_SEL = 0x0 (or 0x1) RX_PATH_SEL:RXR1_SEL = 0x0 (or 0x1) After the patch, FGAIN volume control works. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit 55b8bac50a494871594e81a05b37c15e7283f868 Author: Mark Brown Date: Mon Nov 24 14:05:29 2008 +0000 ASoC: Use supplied DAI for WM9713 rather than substream Signed-off-by: Mark Brown commit 328bd8997dbb7184d5389e45c642af44ae6e9043 Author: Patrick McHardy Date: Mon Nov 24 13:44:55 2008 +0100 netfilter: nf_conntrack_proto_sctp: avoid bogus warning net/netfilter/nf_conntrack_proto_sctp.c: In function 'sctp_packet': net/netfilter/nf_conntrack_proto_sctp.c:376: warning: array subscript is above array bounds gcc doesn't realize that do_basic_checks() guarantees that there is at least one valid chunk and thus new_state is never SCTP_CONNTRACK_MAX after the loop. Initialize to SCTP_CONNTRACK_NONE to avoid the warning. Based on patch by Wu Fengguang Signed-off-by: Patrick McHardy commit ad07e914e681f18ec0eaba60db17f497ee7e7e78 Author: Ingo Molnar Date: Mon Nov 24 11:33:12 2008 +0100 x86 defconfig: increase CONFIG_LOG_BUF_SHIFT Impact: double the defconfig printk buffer Booting defconfigs produces more output than 128K so the output is truncated - double it to 256K. Signed-off-by: Ingo Molnar commit b47b92884212008b4bd044ba6b48b93c00b10ec6 Author: H. Peter Anvin Date: Mon Nov 24 00:50:09 2008 -0800 x86: drop REBOOT_CF9_COND from reboot fallback chain Impact: Reverts sequence of reboot fallbacks Checkin 14d7ca5c575853664d8fe4f225a77b8df1b7de7d changed the default reboot method to "pci", a.k.a. port CF9. Unfortunately this has been shown to cause lockups on at least two systems for which REBOOT_KBD worked, both Thinkpads with Intel chipsets. Checkin 3889d0cea2b73049bdca062d9ff1e5d33468289c reverted the default, but did not revert the fallback chain. This checkin reverts the fallback chain; port CF9 is now only done by explicit "reboot=pci" or a future potential DMI key. Signed-off-by: H. Peter Anvin commit 920de804bca61f88643bc9171bcd06f1a56c6258 Author: Eric Dumazet Date: Mon Nov 24 00:09:29 2008 -0800 net: Make sure BHs are disabled in sock_prot_inuse_add() The rule of calling sock_prot_inuse_add() is that BHs must be disabled. Some new calls were added where this was not true and this tiggers warnings as reported by Ilpo. Fix this by adding explicit BH disabling around those call sites, or moving sock_prot_inuse_add() call inside an existing BH disabled section. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 1f87e235e6fb92c2968b52b9191de04f1aff8e77 Author: Eric Dumazet Date: Sun Nov 23 23:24:32 2008 -0800 eth: Declare an optimized compare_ether_addr_64bits() function Linus mentioned we could try to perform long word operations, even on potentially unaligned addresses, on x86 at least. David mentioned the HAVE_EFFICIENT_UNALIGNED_ACCESS test to handle this on all arches that have efficient unailgned accesses. I tried this idea and got nice assembly on 32 bits: 158: 33 82 38 01 00 00 xor 0x138(%edx),%eax 15e: 33 8a 34 01 00 00 xor 0x134(%edx),%ecx 164: c1 e0 10 shl $0x10,%eax 167: 09 c1 or %eax,%ecx 169: 74 0b je 176 And very nice assembly on 64 bits of course (one xor, one shl) Nice oprofile improvement in eth_type_trans(), 0.17 % instead of 0.41 %, expected since we remove 8 instructions on a fast path. This patch implements a compare_ether_addr_64bits() function, that uses the CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS ifdef to efficiently perform the 6 bytes comparison on all capable arches. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit ef8ef5fb1027b56f867d4b913cf52bfdc610d2a7 Author: Vincent Petry Date: Sun Nov 23 11:31:41 2008 +0800 ALSA: hda: Added an ALC888 model entry for Fujitsu-Siemens Amilo Xa3530 This patch fixes the bug 0004240: ALC888 - Intel HDA - Headphone Controlling. It is made against the 2008-11-23 snapshot. Added Realtek ALC888 model entry for the Fujitsu-Siemens Amilo Xa3530 laptop. It has 4 jacks: HP out, Mic-in, Line-in and Line-out/Side/SPDIF (this one is on the laptop side, the other ones are on the rear). Model detection works. Headphone jack sense works now. Front mic works now, was same as Acer Aspire 4930G. Added channel mode from 2 to 8 channels. In 2ch and 4ch modes, the front is also sent to the Line-out/side jack for convenience instead of just muting the Line-out/side jack like other models do. When using the Mic-in jack as CLFE, the sound is very low (bug?). To work it around, in 6ch mode the CLFE channel is duplicated to the Line-out/side jack because this one has a better amp. Cc: manu@frogged.de Signed-off-by: Vincent Petry Signed-off-by: Takashi Iwai commit a9cb5c90539dd618029884701760fe79b9b83102 Author: Takashi Iwai Date: Mon Nov 24 07:51:11 2008 +0100 ALSA: hda - No 'Headphone as Line-out' swich without line-outs STAC/IDT driver creates "Headphone as Line-Out" switch even if there is no line-out pins on the machine. For devices only with headpohnes and speaker-outs, this switch shouldn't be created. Signed-off-by: Takashi Iwai commit 70eb1bfd52e97120eddf9b5aaabfe1ecdf4eb663 Author: David S. Miller Date: Sun Nov 23 20:01:59 2008 -0800 axnet_cs: Fix build after net device ops ne2k conversion. Commit 4e4fd4e485ad63a9074ff09a9b53ffc7a5c594ec ("ne2k: convert to net_device_ops") exported some ei_* symbols from the 8390 library, but the axnet_cs driver defines local static versions of the same functions. Rename them to avoid the namespace conflict. Reported by Stephen Rothwell. Signed-off-by: David S. Miller commit 6f756a8c36bf54d0afb1d457082b3e3033d951a7 Author: David S. Miller Date: Sun Nov 23 17:34:03 2008 -0800 net: Make sure BHs are disabled in sock_prot_inuse_add() The rule of calling sock_prot_inuse_add() is that BHs must be disabled. Some new calls were added where this was not true and this tiggers warnings as reported by Ilpo. Fix this by adding explicit BH disabling around those call sites. Signed-off-by: David S. Miller commit be77e5930725c3e77bcc0fb1def28e016080d0a1 Author: Alexey Dobriyan Date: Sun Nov 23 17:26:26 2008 -0800 net: fix tunnels in netns after ndo_ changes dev_net_set() should be the very first thing after alloc_netdev(). "ndo_" changes turned simple assignment (which is OK to do before netns assignment) into quite non-trivial operation (which is not OK, init_net was used). This leads to incomplete initialisation of tunnel device in netns. BUG: unable to handle kernel NULL pointer dereference at 00000004 IP: [] ip6_tnl_exit_net+0x37/0x4f *pde = 00000000 Oops: 0000 [#1] PREEMPT DEBUG_PAGEALLOC last sysfs file: /sys/class/net/lo/operstate Pid: 10, comm: netns Not tainted (2.6.28-rc6 #1) EIP: 0060:[] EFLAGS: 00010246 CPU: 0 EIP is at ip6_tnl_exit_net+0x37/0x4f EAX: 00000000 EBX: 00000020 ECX: 00000000 EDX: 00000003 ESI: c5caef30 EDI: c782bbe8 EBP: c7909f50 ESP: c7909f48 DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 Process netns (pid: 10, ti=c7908000 task=c7905780 task.ti=c7908000) Stack: c03e75e0 c7390bc8 c7909f60 c0245448 c7390bd8 c7390bf0 c7909fa8 c012577a 00000000 00000002 00000000 c0125736 c782bbe8 c7909f90 c0308fe3 c782bc04 c7390bd4 c0245406 c084b718 c04f0770 c03ad785 c782bbe8 c782bc04 c782bc0c Call Trace: [] ? cleanup_net+0x42/0x82 [] ? run_workqueue+0xd6/0x1ae [] ? run_workqueue+0x92/0x1ae [] ? schedule+0x275/0x285 [] ? cleanup_net+0x0/0x82 [] ? worker_thread+0x81/0x8d [] ? autoremove_wake_function+0x0/0x33 [] ? worker_thread+0x0/0x8d [] ? kthread+0x39/0x5e [] ? kthread+0x0/0x5e [] ? kernel_thread_helper+0x7/0x10 Code: db e8 05 ff ff ff 89 c6 e8 dc 04 f6 ff eb 08 8b 40 04 e8 38 89 f5 ff 8b 44 9e 04 85 c0 75 f0 43 83 fb 20 75 f2 8b 86 84 00 00 00 <8b> 40 04 e8 1c 89 f5 ff e8 98 04 f6 ff 89 f0 e8 f8 63 e6 ff 5b EIP: [] ip6_tnl_exit_net+0x37/0x4f SS:ESP 0068:c7909f48 ---[ end trace 6c2f2328fccd3e0c ]--- Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit c25eb3bfb97294d0543a81230fbc237046b4b84c Author: Eric Dumazet Date: Sun Nov 23 17:22:55 2008 -0800 net: Convert TCP/DCCP listening hash tables to use RCU This is the last step to be able to perform full RCU lookups in __inet_lookup() : After established/timewait tables, we add RCU lookups to listening hash table. The only trick here is that a socket of a given type (TCP ipv4, TCP ipv6, ...) can now flight between two different tables (established and listening) during a RCU grace period, so we must use different 'nulls' end-of-chain values for two tables. We define a large value : #define LISTENING_NULLS_BASE (1U << 29) So that slots in listening table are guaranteed to have different end-of-chain values than slots in established table. A reader can still detect it finished its lookup in the right chain. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 8c862c23e2563e6aedfc6c4aa6827cadb83f2414 Author: Gerrit Renker Date: Sun Nov 23 16:10:23 2008 -0800 dccp: Header option insertion routine for feature-negotiation The patch extends existing code: * Confirm options divide into the confirmed value plus an optional preference list for SP values. Previously only the preference list was echoed for SP values, now the confirmed value is added as per RFC 4340, 6.1; * length and sanity checks are added to avoid illegal memory (or NULL) access. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit d371056695ef993d36c57b73d654e66080377a9c Author: Gerrit Renker Date: Sun Nov 23 16:09:11 2008 -0800 dccp: Support for Mandatory options Support for Mandatory options is provided by this patch, which will be used by subsequent feature-negotiation patches. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 02fa460ef553faabc7e0b15ff9f607f028739808 Author: Gerrit Renker Date: Sun Nov 23 16:07:53 2008 -0800 dccp: Increase the scope of variable-length htonl/ntohl functions This extends the scope of two available functions, encode|decode_value_var, to work up to 6 (8) bytes, to match maximum requirements in the RFC. These functions are going to be used both by general option processing and feature negotiation code, hence declarations have been put into feat.h. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 71c262a3dd42dea73700646d969b0af7a4102edf Author: Gerrit Renker Date: Sun Nov 23 16:04:59 2008 -0800 dccp: API to query the current TX/RX CCID This provides function to query the current TX/RX CCID dynamically, without reliance on the minisock value, using dynamic information available in the currently loaded CCID module. This query function is then used to (a) provide the getsockopt part for getting/setting CCIDs via sockopts; (b) replace the current test for "which CCID is in use" in probe.c. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit b20a9c24d5c5d466d7e4a25c6f1bedbd2d16ad4f Author: Gerrit Renker Date: Sun Nov 23 16:02:31 2008 -0800 dccp: Set per-connection CCIDs via socket options With this patch, TX/RX CCIDs can now be changed on a per-connection basis, which overrides the defaults set by the global sysctl variables for TX/RX CCIDs. To make full use of this facility, the remaining patches of this patch set are needed, which track dependencies and activate negotiated feature values. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit 2c62ad7b56fa8e2658253c0256ef4c4de228a0b9 Author: Brice Goglin Date: Sun Nov 23 15:49:54 2008 -0800 myri10ge: update firmware headers Update myri10ge firmware headers. Signed-off-by: Brice Goglin Signed-off-by: David S. Miller commit 4ee2ac51359fc37d9ae5d5cc76e93af9105f1722 Author: Brice Goglin Date: Sun Nov 23 15:49:28 2008 -0800 myri10ge: update DCA comments Update DCA sections closing comments. Signed-off-by: Brice Goglin Signed-off-by: David S. Miller commit c1fd3b9455a977057f73534324d4e07a3d9fe502 Author: Eric Dumazet Date: Sun Nov 23 15:48:22 2008 -0800 net: af_netlink should update its inuse counter In order to have relevant information for NETLINK protocol, in /proc/net/protocols, we should use sock_prot_inuse_add() to update a (percpu and pernamespace) counter of inuse sockets. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 04f258ce7f085dd69422fa01d41c8f0194a0e270 Author: Eric Dumazet Date: Sun Nov 23 15:42:23 2008 -0800 net: some optimizations in af_inet 1) Use eq_net() in inet_netns_ok() to speedup socket creation if !CONFIG_NET_NS 2) Reorder the tests about inet_ehash_secret generation (once only) Use the unlikely() macro when testing if inet_ehash_secret already generated. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 958086d1784459be3fe85e4cad79d42b17d33381 Author: Török Edwin Date: Sun Nov 23 23:24:53 2008 +0200 vfs, seqfile: fix comment style on mangle_path Impact: use standard docbook tags Reported-by: Randy Dunlap Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit 65afa5e603d507014580ead016ec887b49e1afa6 Author: Frederic Weisbecker Date: Sun Nov 23 18:43:39 2008 +0100 tracing/function-return-tracer: free the return stack on free_task() Impact: avoid losing some traces when a task is freed do_exit() is not the last function called when a task finishes. There are still some functions which are to be called such as ree_task(). So we delay the freeing of the return stack to the last moment. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 3b71e9e307b3406aa29960a7428247f8a48b810c Author: Hannes Eder Date: Sun Nov 23 20:19:33 2008 +0100 x86: HPET: fix sparse warning Impact: make global variable static Fix this sparse warning: arch/x86/kernel/hpet.c:36:18: warning: symbol 'hpet_num_timers' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: Ingo Molnar commit 5f5db591326779a80cfe490c5d6b6ce9fac08b31 Author: jia zhang Date: Sun Nov 23 22:47:10 2008 +0800 x86, debug: remove the confusing entry in call trace Impact: improve backtrace quality avoid the confusion in call trace because of the lack of padding at the tail of function. When do_exit gets called, the return address behind call instruction is pushed into stack. If something get wrong in do_exit, for x86_64, the entry "kernel_execve +0x00/0xXX" rather than "child_rip +0xYY/0xZZ" is in the call trace. That looks confusing, so add a u2d to make the return address still part of the original call site. (This also catches any instances of us returning from that function somehow.) Signed-off-by: jia zhang Acked-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit a1a00b58855ccdbedf556b4f5638d5208b454472 Author: Hannes Eder Date: Sun Nov 23 19:37:09 2008 +0100 x86: boot - fix sparse warnings Impact: make global variables static Fix these sparse warnings: arch/x86/boot/video.c:233:3: warning: symbol 'saved' was not declared. Should it be static? arch/x86/boot/video-vga.c:37:13: warning: symbol 'video_vga' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: Ingo Molnar commit 3b6c52b5b634ae41d762cb174465272d69198160 Author: Cyrill Gorcunov Date: Sun Nov 23 20:21:39 2008 +0300 x86: introduce ENTRY(KPROBE_ENTRY)_X86 assembly helpers to catch unbalanced declaration v3 Impact: make ENTRY()/END() macros more capable It's usefull to catch unbalanced or messed or mixed declarations of ENTRY and KPROBES. These macros would help a bit. For example the following code would compile without problems ENTRY_X86(mcount) retq END_X86(mcount) But if you forget and mess the following form ENTRY_X86(mcount) retq END(mcount) ENTRY_X86(ftrace_caller) The assembler will issue the following message: Error: ENTRY_X86/KPROBE_X86 unbalanced,missed,mixed Actually the checking is performed at every _X86 macro so maybe it's good idea to put ENTRY_KPROBE_FINAL_X86 at the end of .S file to be sure you didn't miss anything. Signed-off-by: Cyrill Gorcunov Cc: Alexander van Heukelum Signed-off-by: Ingo Molnar commit eae849ca034c7f1015f0a6f17421ebc737f0a069 Author: Frederic Weisbecker Date: Sun Nov 23 17:33:12 2008 +0100 tracing/function-return-tracer: don't trace kfree while it frees the return stack Impact: fix a crash While I killed the cat process, I got sometimes the following (but rare) crash: [ 65.689027] Pid: 2969, comm: cat Not tainted (2.6.28-rc6-tip #83) AMILO Li 2727 [ 65.689027] EIP: 0060:[<00000000>] EFLAGS: 00010082 CPU: 1 [ 65.689027] EIP is at 0x0 [ 65.689027] EAX: 00000000 EBX: f66cd780 ECX: c019a64a EDX: f66cd780 [ 65.689027] ESI: 00000286 EDI: f66cd780 EBP: f630be2c ESP: f630be24 [ 65.689027] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 [ 65.689027] Process cat (pid: 2969, ti=f630a000 task=f66cd780 task.ti=f630a000) [ 65.689027] Stack: [ 65.689027] 00000012 f630bd54 f630be7c c012c853 00000000 c0133cc9 f66cda54 f630be5c [ 65.689027] f630be68 f66cda54 f66cd88c f66cd878 f7070000 00000001 f630be90 c0135dbc [ 65.689027] f614a614 f630be68 f630be68 f65ba200 00000002 f630bf10 f630be90 c012cad6 [ 65.689027] Call Trace: [ 65.689027] [] ? do_exit+0x603/0x850 [ 65.689027] [] ? next_signal+0x9/0x40 [ 65.689027] [] ? dequeue_signal+0x8c/0x180 [ 65.689027] [] ? do_group_exit+0x36/0x90 [ 65.689027] [] ? get_signal_to_deliver+0x20c/0x390 [ 65.689027] [] ? do_notify_resume+0x99/0x8b0 [ 65.689027] [] ? tty_ldisc_deref+0x5a/0x80 [ 65.689027] [] ? trace_hardirqs_on+0xb/0x10 [ 65.689027] [] ? tty_ldisc_deref+0x5a/0x80 [ 65.689027] [] ? n_tty_write+0x0/0x340 [ 65.689027] [] ? redirected_tty_write+0x82/0x90 [ 65.689027] [] ? vfs_write+0x99/0xd0 [ 65.689027] [] ? redirected_tty_write+0x0/0x90 [ 65.689027] [] ? sys_write+0x42/0x70 [ 65.689027] [] ? work_notifysig+0x13/0x19 [ 65.689027] Code: Bad EIP value. [ 65.689027] EIP: [<00000000>] 0x0 SS:ESP 0068:f630be24 This is because on do_exit(), kfree is called to free the return addresses stack but kfree is traced and stored its return address in this stack. This patch fixes it. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 6efdcfaf16cc4fc76651603e083cf3ec4bd1e6de Author: Alexander van Heukelum Date: Sun Nov 23 10:15:32 2008 +0100 x86: KPROBE_ENTRY should be paired wth KPROBE_END Impact: move some code out of .kprobes.text KPROBE_ENTRY switches code generation to .kprobes.text, and KPROBE_END uses .popsection to get back to the previous section (.text, normally). Also replace ENDPROC by END, for consistency. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit 322648d1ba75280d62f114d47048beb0b35f5047 Author: Alexander van Heukelum Date: Sun Nov 23 10:08:28 2008 +0100 x86: include ENTRY/END in entry handlers in entry_64.S Impact: cleanup of entry_64.S Except for the order and the place of the functions, this patch should not change the generated code. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit 813b8520f5c240c71df55d14095a7b171de264ce Merge: ed31348... 7cc45e6... Author: Ingo Molnar Date: Sun Nov 23 13:47:54 2008 +0100 Merge branch 'ppc/ftrace' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/powerpc commit 050dc6944b9ca2186f4729ab44e0da3743933941 Author: Hannes Eder Date: Sun Nov 23 13:35:48 2008 +0100 x86: remove duplicate #define from 'cpufeature.h' Impact: cleanup Remove duplicate #define from 'cpufeature.h'. This also fixes the following sparse warning: arch/x86/kernel/cpu/capflags.c:54:3: warning: Initializer entry defined twice arch/x86/kernel/cpu/capflags.c:58:3: also defined here Signed-off-by: Hannes Eder Signed-off-by: Ingo Molnar commit 8a2503fa4a6fae8ee42140b339f37373fc6acaae Author: Cyrill Gorcunov Date: Sun Nov 23 14:53:43 2008 +0300 x86: move dwarf2 related macro to dwarf2.h Impact: cleanup Move recently introduced dwarf2 macros to dwarf2.h file. It allow us to not duplicate them in assembly files. Active usage of _cfi macros don't make assembly files more obvious to understand but we already have a lot of macros there which requires to search the definitions of them *anyway*. But at least it make every cfi usage one line shorter. Also some code alignment is done. Signed-off-by: Cyrill Gorcunov Signed-off-by: Ingo Molnar commit e38da59269be8c0196d16dff1be5bb26076afc6a Author: Török Edwin Date: Sun Nov 23 13:08:10 2008 +0200 tracing/stack-tracer: avoid races accessing file Impact: fix race vma->vm_file reference is only stable while holding the mmap_sem, so move usage of it to within the critical section. Signed-off-by: Ingo Molnar commit 8d26487fd4ddda7a0237da418fb8669fb06ae557 Author: Török Edwin Date: Sun Nov 23 12:39:08 2008 +0200 tracing/stack-tracer: introduce CONFIG_USER_STACKTRACE_SUPPORT Impact: cleanup User stack tracing is just implemented for x86, but it is not x86 specific. Introduce a generic config flag, that is currently enabled only for x86. When other arches implement it, they will have to SELECT USER_STACKTRACE_SUPPORT. Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit cffa10aecb6891f090a4d53a075bc40c082c45fc Author: Török Edwin Date: Sun Nov 23 12:39:07 2008 +0200 tracing/stack-tracer: fix locking and refcounts Impact: fix refcounting/object-access bug Hold mmap_sem while looking up/accessing vma. Hold the RCU lock while using the task we looked up. Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit 8d7c6a96164651dbbab449ef0b5c20ae1f76a3a1 Author: Török Edwin Date: Sun Nov 23 12:39:06 2008 +0200 tracing/stack-tracer: fix style issues Impact: cleanup Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit 0429149fb5e01edc410648591c19095d2074ee00 Author: Steven Rostedt Date: Fri Nov 21 14:44:57 2008 -0500 trace: fix compiler warning in branch profiler Impact: fix compiler warning The ftrace_pointers used in the branch profiler are constant values. They should never change. But the compiler complains when they are passed into the debugfs_create_file as a data pointer, because the function discards the qualifier. This patch typecasts the parameter to debugfs_create_file back to a void pointer. To remind the callbacks that they are pointing to a constant value, I also modified the callback local pointers to be const struct ftrace_pointer * as well. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 69bb54ec05f57da7f6fac2cec0820cbc970df20f Author: Steven Rostedt Date: Fri Nov 21 12:59:38 2008 -0500 ftrace: add ftrace_off_permanent Impact: add new API to disable all of ftrace on anomalies It case of a serious anomaly being detected (like something caught by lockdep) it is a good idea to disable all tracing immediately, without grabing any locks. This patch adds ftrace_off_permanent that disables the tracers, function tracing and ring buffers without a way to enable them again. This should only be used when something serious has been detected. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 033601a32b2012b6948e80e739cca40bff4de4a0 Author: Steven Rostedt Date: Fri Nov 21 12:41:55 2008 -0500 ring-buffer: add tracing_off_permanent Impact: feature to permanently disable ring buffer This patch adds a API to the ring buffer code that will permanently disable the ring buffer from ever recording. This should only be called when some serious anomaly is detected, and the system may be in an unstable state. When that happens, shutting down the recording to the ring buffers may be appropriate. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit e58918ab9d4cd375f6d842e6d88cf4d7a55cbfcc Author: Jim Radford Date: Thu Nov 20 19:48:39 2008 -0800 ftrace: scripts/recordmcount.pl support for ARM Impact: extend scripts/recordmcount.pl to ARM Arm uses %progbits instead of @progbits and requires only 4 byte alignment. [ Thanks to Sam Ravnborg for mentioning that ARM uses %progbits ] Signed-off-by: Jim Radford Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 3a3d04aed05add2247ea2ba5da5f90dba4062f3f Author: Matt Fleming Date: Thu Nov 20 21:49:52 2008 +0000 ftrace: specify $alignment for sh architecture Impact: extend scripts/recordmcount.pl with default alignment for SH Set $alignment=2 for the sh architecture so that a ".align 2" directive will be emitted for all __mcount_loc sections. Fix a whitspace error while I'm here (converted spaces to tabs). Signed-off-by: Matt Fleming Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 2bcd521a684cc94befbe2ce7d5b613c841b0d304 Author: Steven Rostedt Date: Fri Nov 21 01:30:54 2008 -0500 trace: profile all if conditionals Impact: feature to profile if statements This patch adds a branch profiler for all if () statements. The results will be found in: /debugfs/tracing/profile_branch For example: miss hit % Function File Line ------- --------- - -------- ---- ---- 0 1 100 x86_64_start_reservations head64.c 127 0 1 100 copy_bootdata head64.c 69 1 0 0 x86_64_start_kernel head64.c 111 32 0 0 set_intr_gate desc.h 319 1 0 0 reserve_ebda_region head.c 51 1 0 0 reserve_ebda_region head.c 47 0 1 100 reserve_ebda_region head.c 42 0 0 X maxcpus main.c 165 Miss means the branch was not taken. Hit means the branch was taken. The percent is the percentage the branch was taken. This adds a significant amount of overhead and should only be used by those analyzing their system. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit bac28bfe42ba98ee67503f78984d1d5e1ebbbb78 Author: Steven Rostedt Date: Fri Nov 21 01:51:53 2008 -0500 trace: branch profiling should not print percent without data Impact: cleanup on output of branch profiler When a branch has not been taken, it does not make sense to show a percentage incorrect or hit. This patch changes the behaviour to print out a 'X' when the branch has not been executed yet. For example: correct incorrect % Function File Line ------- --------- - -------- ---- ---- 2096 0 0 do_arch_prctl process_64.c 832 0 0 X do_arch_prctl process_64.c 804 2604 0 0 IS_ERR err.h 34 130228 5765 4 __switch_to process_64.c 673 0 0 X enable_TSC process_64.c 448 0 0 X disable_TSC process_64.c 431 Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 45b797492a0758e64dff74e9db70e1f65e0603a5 Author: Steven Rostedt Date: Fri Nov 21 00:40:40 2008 -0500 trace: consolidate unlikely and likely profiler Impact: clean up to make one profiler of like and unlikely tracer The likely and unlikely profiler prints out the file and line numbers of the annotated branches that it is profiling. It shows the number of times it was correct or incorrect in its guess. Having two different files or sections for that matter to tell us if it was a likely or unlikely is pretty pointless. We really only care if it was correct or not. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 42f565e116e0408b5ddc21a33c4a4d41fd572420 Author: Steven Rostedt Date: Thu Nov 20 23:57:47 2008 -0500 trace: remove extra assign in branch check Impact: clean up of branch check The unlikely/likely profiler does an extra assign of the f.line. This is not needed since it is already calculated at compile time. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit c204f7264c7de85aecd3638dc8fe07aba6d1fff5 Author: Steven Rostedt Date: Thu Nov 20 15:07:34 2008 -0500 ftrace: create default variables for archs in recordmcount.pl Impact: cleanup of recordmcount.pl Now that more architectures are being ported to the MCOUNT_RECORD method, there is no reason to have each declare their own arch specific variable if most of them share the same value. This patch creates a set of default values for the arch specific variables based off of i386. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 42e007d0400155fbc12c5344c808889e6ae33d32 Author: Steven Rostedt Date: Thu Nov 20 07:16:16 2008 -0800 ftrace: add support for powerpc to recordmcount.pl script Impact: Add PowerPC port to recordmcount.pl script This patch updates the recordmcount.pl script to process PowerPC. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 0da85c09b44bfea07e63ed5324aabc7cfc8a889a Author: Matt Fleming Date: Wed Nov 12 20:11:47 2008 +0900 sh: dynamic ftrace support. First cut at dynamic ftrace support. [ Steven Rostedt - only updated the recordmcount.pl file. There are updates for PowerPC that will conflict with this, and we need to base off of these changes. ] Signed-off-by: Matt Fleming Signed-off-by: Paul Mundt Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 4e42ebd57b2e727b28bf5f6068e95cd19b0e807b Author: Hannes Eder Date: Fri Nov 21 22:56:17 2008 +0100 x86: hypervisor - fix sparse warnings Impact: fix sparse build warning Fix the following sparse warnings: arch/x86/kernel/cpu/hypervisor.c:37:15: warning: symbol 'get_hypervisor_tsc_freq' was not declared. Should it be static? arch/x86/kernel/cpu/hypervisor.c:53:16: warning: symbol 'init_hypervisor' was not declared. Should it be static? Signed-off-by: Hannes Eder Cc: "Alok N Kataria" Cc: "Dan Hecht" Signed-off-by: Ingo Molnar commit 1d926f2756392c6909f60e0c9fe2a09d5462e376 Author: Will Newton Date: Fri Nov 21 14:08:59 2008 -0800 init/main.c: use ktime accessor function in initcall_debug code Impact: fix initcall debug output on non-scalar ktime platforms (32-bit embedded) The initcall_debug code access the tv64 member of ktime. This won't work correctly for large deltas on platforms that don't use the scalar ktime implementation. Signed-off-by: Will Newton Acked-by: Tim Bird Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar commit c450d7805b2c5cac8846c5f490fddfd9030d2207 Author: Hannes Eder Date: Fri Nov 21 23:17:09 2008 +0100 x86: vmware - fix sparse warnings Impact: fix sparse build warning Fix the following sparse warnings: arch/x86/kernel/cpu/vmware.c:69:5: warning: symbol 'vmware_platform' was not declared. Should it be static? arch/x86/kernel/cpu/vmware.c:89:15: warning: symbol 'vmware_get_tsc_khz' was not declared. Should it be static? arch/x86/kernel/cpu/vmware.c:107:16: warning: symbol 'vmware_set_feature_bits' was not declared. Should it be static? Signed-off-by: Hannes Eder Cc: "Alok N Kataria" Cc: "Dan Hecht" Signed-off-by: Ingo Molnar commit 2456d738ef051f85170bf018faef63f83fa84eb5 Author: Hiroshi Shimamoto Date: Fri Nov 21 17:38:57 2008 -0800 x86: signal: cosmetic unification of sys_rt_sigreturn() Impact: cleanup Add #ifdef directive for unification. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 666ac7be049ec290625e65d5922ff59f7bdec527 Author: Hiroshi Shimamoto Date: Fri Nov 21 17:38:25 2008 -0800 x86: signal: cosmetic unification of sys_sigaltstack() Impact: cleanup Add #ifdef directive for unification. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 5c9b3a0c7b8be3cdef3d7418f0a49127e7cdc998 Author: Hiroshi Shimamoto Date: Fri Nov 21 17:36:41 2008 -0800 x86: signal: cosmetic unification of including headers Impact: cleanup Make the headers portion of signal_32.c and signal_64.c the same. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit cbe2f5a6e84eebb98ab42fc5e58c3cd5b7767349 Author: Ingo Molnar Date: Sun Nov 23 10:37:12 2008 +0100 tracing: allow tracing of suspend/resume & hibernation code again Impact: widen function-tracing to suspend+resume (and hibernation) sequences Now that the ftrace kernel thread is gone, we can allow tracing during suspend/resume again. So revert these two commits: f42ac38c5 "ftrace: disable tracing for suspend to ram" 41108eb10 "ftrace: disable tracing for hibernation" This should be tested very carefully, as it could interact with altneratives instruction patching, etc. Signed-off-by: Ingo Molnar commit b54d3de9f3b8956653b06f1a32e9f9321c6d9027 Author: Török Edwin Date: Sat Nov 22 13:28:48 2008 +0200 tracing: identify which executable object the userspace address belongs to Impact: modify+improve the userstacktrace tracing visualization feature Store thread group leader id, and use it to lookup the address in the process's map. We could have looked up the address on thread's map, but the thread might not exist by the time we are called. The process might not exist either, but if you are reading trace_pipe, that is unlikely. Example usage: mount -t debugfs nodev /sys/kernel/debug cd /sys/kernel/debug/tracing echo userstacktrace >iter_ctrl echo sym-userobj >iter_ctrl echo sched_switch >current_tracer echo 1 >tracing_enabled cat trace_pipe >/tmp/trace& .... run application ... echo 0 >tracing_enabled cat /tmp/trace You'll see stack entries like: /lib/libpthread-2.7.so[+0xd370] You can convert them to function/line using: addr2line -fie /lib/libpthread-2.7.so 0xd370 Or: addr2line -fie /usr/lib/debug/libpthread-2.7.so 0xd370 For non-PIC/PIE executables this won't work: a.out[+0x73b] You need to run the following: addr2line -fie a.out 0x40073b (where 0x400000 is the default load address of a.out) Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit 74e2f334f4440cbcb63e9ebbcdcea430d41bdfa3 Author: Török Edwin Date: Sat Nov 22 13:28:48 2008 +0200 vfs, seqfile: make mangle_path() global Impact: expose new VFS API make mangle_path() available, as per the suggestions of Christoph Hellwig and Al Viro: http://lkml.org/lkml/2008/11/4/338 Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit 02b67518e2b1c490787dac7f35e1204e74fe21ba Author: Török Edwin Date: Sat Nov 22 13:28:47 2008 +0200 tracing: add support for userspace stacktraces in tracing/iter_ctrl Impact: add new (default-off) tracing visualization feature Usage example: mount -t debugfs nodev /sys/kernel/debug cd /sys/kernel/debug/tracing echo userstacktrace >iter_ctrl echo sched_switch >current_tracer echo 1 >tracing_enabled .... run application ... echo 0 >tracing_enabled Then read one of 'trace','latency_trace','trace_pipe'. To get the best output you can compile your userspace programs with frame pointers (at least glibc + the app you are tracing). Signed-off-by: Török Edwin Signed-off-by: Ingo Molnar commit 82f60f0bc854aada696f27d863c03bef91f1509d Author: Ingo Molnar Date: Sun Nov 23 09:18:56 2008 +0100 tracing/function-return-tracer: clean up task start/exit callbacks Impact: cleanup Eliminate #ifdefs in core code by using empty inline functions. Signed-off-by: Ingo Molnar commit f201ae2356c74bcae130b2177b3dca903ea98071 Author: Frederic Weisbecker Date: Sun Nov 23 06:22:56 2008 +0100 tracing/function-return-tracer: store return stack into task_struct and allocate it dynamically Impact: use deeper function tracing depth safely Some tests showed that function return tracing needed a more deeper depth of function calls. But it could be unsafe to store these return addresses to the stack. So these arrays will now be allocated dynamically into task_struct of current only when the tracer is activated. Typical scheme when tracer is activated: - allocate a return stack for each task in global list. - fork: allocate the return stack for the newly created task - exit: free return stack of current - idle init: same as fork I chose a default depth of 50. I don't have overruns anymore. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit a0a70c735ef714fe1b6777b571630c3d50c7b008 Merge: 9676e73... 60a5151... 0231022... 522a110... Author: Ingo Molnar Date: Sun Nov 23 09:10:32 2008 +0100 Merge branches 'tracing/profiling', 'tracing/options' and 'tracing/urgent' into tracing/core commit f377fa123d0ec621e8e361ecc3f2a8ee70e81a2e Author: Ingo Molnar Date: Sun Nov 23 09:02:26 2008 +0100 x86: clean up stack overflow debug check Impact: cleanup Simplify the irq-sampled stack overflow debug check: - eliminate an #idef - use WARN_ONCE() to emit a single warning (all bets are off after the first such warning anyway) Signed-off-by: Ingo Molnar commit 3aeb95d5b7839708a8d8e11aa274ee4d0d4042cc Author: jia zhang Date: Sun Nov 23 09:51:41 2008 +0800 x86_64: fix the check in stack_overflow_check Impact: make stack overflow debug check and printout narrower stack_overflow_check() should consider the stack usage of pt_regs, and thus it could warn us in advance. Additionally, it looks better for the warning time to start at INITIAL_JIFFIES. Assuming that rsp gets close to the check point before interrupt arrives: when interrupt really happens, thread_info will be partly overrode. Signed-off-by: jia zhang Signed-off-by: Ingo Molnar commit ca9eed76133c00e7f4b1eeb4c1a6cb800cd2654c Merge: 8652cb4... 13d428a... Author: Ingo Molnar Date: Sun Nov 23 08:55:47 2008 +0100 Merge commit 'v2.6.28-rc6' into x86/debug commit 3889d0cea2b73049bdca062d9ff1e5d33468289c Author: H. Peter Anvin Date: Sat Nov 22 23:39:23 2008 -0800 x86: revert default reboot method to REBOOT_KBD Impact: Reverts default reboot method. Checkin 14d7ca5c575853664d8fe4f225a77b8df1b7de7d changed the default reboot method to "pci", a.k.a. port CF9. Unfortunately this has been shown to cause lockups on at least two systems for which REBOOT_KBD worked, both Thinkpads with Intel chipsets. This reverts the default to REBOOT_KBD, while leaving the option to have "reboot=pci" specified explicitly or via a DMI match. Signed-off-by: H. Peter Anvin commit 4805286bffa9d7b85223ab2038f08b4b6322a176 Author: Wu Fengguang Date: Sat Nov 22 09:40:57 2008 +0800 ALSA: hda - fix build warning when CONFIG_PROC_FS=n Fix "defined but not used" build warning by moving eld_versoin_names[] and cea_edid_version_names[] into hdmi_print_eld_info(). Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 9415e1c418b33bf9b8d8903fb98876ec72673e3f Author: Wu Fengguang Date: Sat Nov 22 09:40:56 2008 +0800 ALSA: hda - fix DisplayPort naming DisplayPort is a digital display interface standard put forth by the Video Electronics Standards Association (VESA). It defines a new license-free, royalty-free, digital audio/video interconnect, intended to be used primarily between a computer and its display monitor, or a computer and a home-theater system. - From Wikipedia, the free encyclopedia Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit a5fcf89eff2372b50f2d47fbb3e1f3090f044ee3 Author: Wu Fengguang Date: Sat Nov 22 09:40:55 2008 +0800 ALSA: hda - document the ELD proc interface Describe what ELD proc interface provides and how to fix incorrect values. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit acb05993881005cdaf5f8291491b4edcb8f60ef3 Author: Wu Fengguang Date: Sat Nov 22 09:40:54 2008 +0800 ALSA: hda - ELD proc interface write updates - rename ELD proc write routine to hdmi_write_eld_info() - support modifying WMAPro's profile Write to some ELD fields (monitor_name, manufacture_id, product_id, eld_version, edid_version) are deliberately not supported, since that won't correct wrong behaviors and only leads to confusions. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 03284c8f23440479de79e8cbf368085ea872884e Author: Wu Fengguang Date: Sat Nov 22 09:40:53 2008 +0800 ALSA: hda - make HDMI messages more user friendly - make some messages more user friendly - add message prefix "HDMI:" to indicate the problem's domain (also easier to do `dmesg | grep HDMI` ;-) Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit cc02b83c904592ce8714787094256a9bf8e24b6f Author: Wu Fengguang Date: Sat Nov 22 09:40:52 2008 +0800 ALSA: hda - report selected CA index for Audio InfoFrame Print some CA selecting info, which could be valuable for debugging when something goes wrong. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit b83923a3931a43df7397a7491f0c9d9b9d46624a Author: Wu Fengguang Date: Sat Nov 22 09:40:51 2008 +0800 ALSA: hda - minor HDMI code cleanups Some minor code cleanups. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit c81084114f6ff957bc6b5a0048350479c1c1f7b3 Author: Alexander van Heukelum Date: Fri Nov 21 22:59:52 2008 +0100 x86: split out some macro's and move common code to paranoid_exit, fix Impact: fix bootup crash Even though it tested fine for me, there was still a bug in the first patch: I have overlooked a call to ptregscall_common. This patch fixes that, I think, but the code is never executed for me while running a debian install... (I tested this by putting an "1:jmp 1b" in there.) Signed-off-by: Ingo Molnar commit c46920dadba65856eb1a1f1ffa1b350875db1228 Merge: f5f4cf0... 6476a90... Author: David S. Miller Date: Fri Nov 21 21:30:58 2008 -0800 Merge branch 'for-david' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6 commit f5f4cf08467db10de061a1b90037a56a360d3554 Author: Alexander Duyck Date: Fri Nov 21 21:30:24 2008 -0800 igb: do not use phy ops in ethtool test cleanup for non-copper parts Currently the igb driver is experiencing a panic due to a null function pointer being used during the cleanup of the ethtool looback test on fiber/serdes parts. This patch prevents that and adds a check prior to calling any phy function. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 21fc578dcaa66dd30bad3c2f2cd7578e2865e8f2 Author: Scott Feldman Date: Fri Nov 21 21:29:25 2008 -0800 enic: misc cleanup items: Clarrify reading PBA has no side-effect (clearing). Add missing GPL license text. Signed-off-by: Scott Feldman Signed-off-by: David S. Miller commit 845964515a76381e204d3399af82c149f8abcc1c Author: Scott Feldman Date: Fri Nov 21 21:29:01 2008 -0800 enic: move wmb closer to where needed: before writing posted_index to hw Signed-off-by: Scott Feldman Signed-off-by: David S. Miller commit cb3c766975985885e64e20cc72c4a36d90da2b30 Author: Scott Feldman Date: Fri Nov 21 21:28:40 2008 -0800 enic: mask off some reserved bits in CQ descriptor for future use Signed-off-by: Scott Feldman Signed-off-by: David S. Miller commit 27372bf5fa5ffc0fee3ddb486a0da942295fd8e0 Author: Scott Feldman Date: Fri Nov 21 21:28:18 2008 -0800 enic: driver/firmware API updates Add driver/firmware compatibility check. Update firmware notify cmd to honor notify area size. Add new version of init cmd. Add link_down_cnt to notify area to track link down count. Signed-off-by: Scott Feldman Signed-off-by: David S. Miller commit 86ca9db794a285f18f31ed15601696b238ccb57a Author: Scott Feldman Date: Fri Nov 21 21:26:55 2008 -0800 enic: enable ethtool LRO support Enable ethtool support for get/set_flags so LRO can be turned on/off by fwding drivers such as the bridge driver. LRO is not compatible with fwding drivers. Signed-off-by: Scott Feldman Signed-off-by: David S. Miller commit 6476a907b57d9229de7807aeea534ad45e19a4ce Author: Krzysztof Hałasa Date: Thu Nov 20 15:51:05 2008 +0100 WAN pc300too.c: Fix PC300-X.21 detection pc300too driver works around a bug in PCI9050 bridge. Unfortunately it was doing that too late. Signed-off-by: Krzysztof Hałasa commit 72364706c3b7c09a658e356218a918c5f92dcad0 Author: Krzysztof Hałasa Date: Thu Aug 14 19:18:17 2008 +0200 WAN: syncppp.c is no longer used by any kernel code. Remove it. Signed-off-by: Krzysztof Hałasa commit e022c2f07ae52bfbd92faa273db0db2f34eb28e8 Author: Krzysztof Hałasa Date: Thu Aug 14 19:17:38 2008 +0200 WAN: new synchronous PPP implementation for generic HDLC. Signed-off-by: Krzysztof Hałasa commit e1f024eb5d88e5b4f8e58e99c95082c342f70a1a Author: Krzysztof Hałasa Date: Fri Jul 11 00:13:09 2008 +0200 WAN: Simplify sca_init_port() in HD64572 driver. Signed-off-by: Krzysztof Hałasa commit fcfe9ff3e2fb2b9606e2e375f34c157271b4555c Author: Krzysztof Hałasa Date: Thu Jul 10 00:30:51 2008 +0200 WAN: Correct comments in hd6457[02].c Signed-off-by: Krzysztof Hałasa commit 0b59cef885f7d451acad02f70c9712f1ef3638b1 Author: Krzysztof Hałasa Date: Wed Jul 9 23:39:12 2008 +0200 WAN: HD64572 drivers don't use next_desc() anymore. Signed-off-by: Krzysztof Hałasa commit 61e0a6a268947f7385282c6841f3e3d64b4c5cb9 Author: Krzysztof Hałasa Date: Wed Jul 9 23:13:49 2008 +0200 WAN: Simplify HD64572 drivers. Signed-off-by: Krzysztof Hałasa commit 967834361a4beb3bbd3069189c192dc6fdeef8a9 Author: Krzysztof Hałasa Date: Wed Jul 9 21:30:17 2008 +0200 WAN: don't print HD64572 driver versions anymore. Signed-off-by: Krzysztof Hałasa commit 0954ed826921bcf11352e05a58d598c493e6bdfb Author: Krzysztof Hałasa Date: Wed Jul 9 21:24:42 2008 +0200 WAN: Simplify HD64572 status handling. Signed-off-by: Krzysztof Hałasa commit 0446c3b1e6208c6563ff9a0b22fb3b5e5e3e775c Author: Krzysztof Hałasa Date: Wed Jul 9 19:28:45 2008 +0200 WAN: rework HD64572 interrupts a bit. Signed-off-by: Krzysztof Hałasa commit b0942f78dd6493c5590cc80fedd5e3b357a15334 Author: Krzysztof Hałasa Date: Wed Jul 9 20:01:23 2008 +0200 WAN: HD64572 already handles TX underruns with DMAC. Signed-off-by: Krzysztof Hałasa commit 09fd65aa8ac934ea4ce7e55945a687292731e9c9 Author: Krzysztof Hałasa Date: Wed Jul 9 19:47:05 2008 +0200 WAN: TX-done handler now uses the ownership bit in HD64572 drivers. Signed-off-by: Krzysztof Hałasa commit abc9d91a35a924c8db0e949cd443471672e37cdb Author: Krzysztof Hałasa Date: Wed Jul 9 16:49:37 2008 +0200 WAN: convert HD64572-based drivers to NAPI. Signed-off-by: Krzysztof Hałasa commit 302243922b374b147380f61774b44612eb2040fd Author: Krzysztof Hałasa Date: Mon Mar 24 20:24:23 2008 +0100 WAN: remove SCA support from SCA-II drivers Signed-off-by: Krzysztof Hałasa commit 88597364573a46a57496c62ff0ee4b8148831ed0 Author: Krzysztof Hałasa Date: Mon Mar 24 19:12:23 2008 +0100 WAN: remove SCA II support from SCA drivers Signed-off-by: Krzysztof Hałasa commit 6b40aba304e6f94c747ad9559e03ea03a49e8008 Author: Krzysztof Hałasa Date: Mon Mar 24 16:39:02 2008 +0100 WAN: split hd6457x.c into hd64570.c and hd64572.c Supporting both original SCA and SCA-II in one file was nice at some point but now it's increasingly painful. Signed-off-by: Krzysztof Hałasa commit 4e4fd4e485ad63a9074ff09a9b53ffc7a5c594ec Author: Stephen Hemminger Date: Fri Nov 21 17:39:02 2008 -0800 ne2k: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. This required some additional work to export common code ei_XXX. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 99921b7e64f7726e7134046f8e1e8004e2711f30 Author: Stephen Hemminger Date: Fri Nov 21 17:37:54 2008 -0800 eql: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 974acda0ea3261436ddf5fd7e79b56150acdb138 Author: Stephen Hemminger Date: Fri Nov 21 17:37:24 2008 -0800 sc92031: convert to net_device_ops Convert this driver to net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit da1c14a19b978a95180ea91ab0008b97a5843995 Author: Stephen Hemminger Date: Fri Nov 21 17:36:58 2008 -0800 qla3xxx: convert to net_device_ops Convert this driver to net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit a8652d237b599a03d7d982fcfdab276706babfa5 Author: Stephen Hemminger Date: Fri Nov 21 17:36:36 2008 -0800 hamachi: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit c64213cd138cf9815839f7278b5eee89d31fbacb Author: Stephen Hemminger Date: Fri Nov 21 17:36:04 2008 -0800 bnx2x: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 6557d7b8599c22819d16497ab6dcc33f2f3027a4 Author: Stephen Hemminger Date: Fri Nov 21 17:35:40 2008 -0800 ns83820: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit bfd82c35824016920c629ea55963dc6db6f9effe Author: Stephen Hemminger Date: Fri Nov 21 17:35:16 2008 -0800 yellowfin: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit a7bd89cbb1aa8342617c2f8a6dc0595e5f553115 Author: Stephen Hemminger Date: Fri Nov 21 17:34:56 2008 -0800 r6040: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 09ab9e7cddf0f10afd4695d098120d63183c74d1 Author: Stephen Hemminger Date: Fri Nov 21 17:34:32 2008 -0800 sis900: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 2f30b1f666b8fa13eb7a254243066e6b77b583f7 Author: Stephen Hemminger Date: Fri Nov 21 17:34:09 2008 -0800 tehuti: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit c3ecb9f3235ce6e39249690cdd24d678894c2c72 Author: Stephen Hemminger Date: Fri Nov 21 17:32:54 2008 -0800 sfc: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit 1abd266f091e4f281a7c1e8813106fdf1528bb56 Author: Stephen Hemminger Date: Fri Nov 21 17:32:15 2008 -0800 netxen: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Had to do some refactoring on multicast_list. Fix ethtool restart to propogate error code. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 876526443e64ae15bc3715dd6fbe8b9deadf89bc Author: Stephen Hemminger Date: Fri Nov 21 17:31:51 2008 -0800 dl2k: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0421eae68ffaf5ecfac860ee86e6a92e5b32a992 Author: Stephen Hemminger Date: Fri Nov 21 17:31:27 2008 -0800 bnx2: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3addc568a656e9c8e313e78cfe7ea1e289bf6fd8 Author: Stephen Hemminger Date: Fri Nov 21 17:30:58 2008 -0800 mlx4: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8126089f9f3ee2608b11dd6c629a71ae1806e4fc Author: Stephen Hemminger Date: Fri Nov 21 17:30:35 2008 -0800 myri10ge: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 5d1d07d8b0bbed82546b89e3222ec98567c1652b Author: Stephen Hemminger Date: Fri Nov 21 17:30:11 2008 -0800 via-rhine: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8668ae9241de085f046aa14fa3a97654a31a06e3 Author: Stephen Hemminger Date: Fri Nov 21 17:29:50 2008 -0800 qlge: fix sparse warnings Fix sparse warnings and one bug: * Several routines can be static * Don't lose __iomem annotation * fix locking on error path (bug) Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 25ed784910e43e61b5642dd8d2d8c13384a0d290 Author: Stephen Hemminger Date: Fri Nov 21 17:29:16 2008 -0800 qlge: convert to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 040250959da9b96e2fd30415e4ca15257a3460e4 Author: Stephen Hemminger Date: Fri Nov 21 17:28:55 2008 -0800 s2io: convert to net_device_ops Convert this driver to network device ops. Compile teseted only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit e48714baac0e81ed9e19a5785eee52e1eca8f56e Author: Stephen Hemminger Date: Fri Nov 21 17:28:33 2008 -0800 jme: convert driver to net_device_ops Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit e245a3855eec42127b722ed9688a49ec3f3c9a27 Author: Matt Carlson Date: Fri Nov 21 17:23:26 2008 -0800 tg3: Update version to 3.96 This patch updates the version number to 3.96. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 2fbb69aa576f4392c4a04e6874fa429b8bde0f68 Author: Matt Carlson Date: Fri Nov 21 17:22:53 2008 -0800 broadcom: Add 57780 support This patch adds the 57780 PHY ID to the broadcom module. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 321d32a052d6b5f71111ebad4fbebea5577f8974 Author: Matt Carlson Date: Fri Nov 21 17:22:19 2008 -0800 tg3: Add 57780 support This patch adds support for the 57780 ASIC revision. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 22435849a6dcde2ce10d1870aba461a54e347fe3 Author: Matt Carlson Date: Fri Nov 21 17:21:13 2008 -0800 tg3: Allow GPHY powerdown on 5761 The ENABLE_APE flag tells the driver whether or not the device has an Application Processing Engine (APE). The APE does not need the PHY to be powered unless it is running management firmware. For backwards compatibility, management firmware will still set the ENABLE_ASF bit. Consequently, there is no reason to consider the ENABLE_APE flag when deciding whether or not to power down the phy. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit d5fe488a7b59e41b98b91137805159466b7b49c2 Author: Matt Carlson Date: Fri Nov 21 17:20:32 2008 -0800 tg3: Embrace pci_ioremap_bar() Per Dave Miller's suggestion, replace the remaining ioremap_nocache() call with pci_ioremap_bar(). Remove the two IORESOURCE_MEM checks as they are redundant. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit dfe00d7d890134f9cafda49e3e60e6ce27af91ed Author: Matt Carlson Date: Fri Nov 21 17:19:41 2008 -0800 tg3: Extract FW ver from alt NVRAM formats This patch extracts the bootcode firmware version from the alternate selfboot patch NVRAM format. This format is used on the 5784, 5761 and some newer devices. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 6833c043f9fc03696fde623914c4a0277df2a0bc Author: Matt Carlson Date: Fri Nov 21 17:18:59 2008 -0800 tg3: Enable GPHY APD on select devices GPHY Autopowerdown (APD) is a way to save power when energy is not detected on the wire. At the moment, only the 5784 and 5761 are capable of enabling this mode. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 5e7dfd0fb94abed04f59481d1ce0cc06a892048a Author: Matt Carlson Date: Fri Nov 21 17:18:16 2008 -0800 tg3: Prevent corruption at 10 / 100Mbps w CLKREQ This patch disables CLKREQ at 10Mbps and 100Mbps to workaround a TX BD corruption issue. This problem only affects the 5784 and 5761 (and 57780 AX) ASIC revisions. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 52f4490c3b6dcb1e8dec7ff9f1c35f09bd7c136f Author: Matt Carlson Date: Fri Nov 21 17:17:04 2008 -0800 tg3: Qualify use of tp->pcix_cap This patch makes sure the device is a PCIX device before attempting to use the pcix_cap device structure member. This is prep work for the following patch. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit ad8292681a629cdb16bb19ee7d721b457c32a23a Author: Matt Carlson Date: Fri Nov 21 17:16:16 2008 -0800 tg3: Use NET_IP_ALIGN This patch replaces hardcoded 2's with the NET_IP_ALIGN constant or TG3_RAW_IP_ALIGN where appropriate. Some platforms can redefine the NET_IP_ALIGN definition to zero if unaligned DMA transfers cost more than the IP header alignment gains. This patch represents a performance improvement when using the 5701 on these platforms. The copy path can be avoided. TG3_RAW_IP_ALIGN is used in cases where we always want to align the IP header on dword boundaries. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit cf005b1d0e34d8c964347331c43de089c674a5a1 Author: Qinghuang Feng Date: Fri Nov 21 17:15:03 2008 -0800 net: remove redundant argument comments Remove redundant argument comments in files of net/* Signed-off-by: Qinghuang Feng Signed-off-by: David S. Miller commit 6c0bce37ffc8f000a516fadf6dee84579c4c8f9b Merge: e243455... a1eb5fe... Author: David S. Miller Date: Fri Nov 21 17:05:11 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit e243455d345ef62751723671bc2605a2f6032ceb Author: Bruce Allan Date: Fri Nov 21 17:02:41 2008 -0800 e1000e: check return code from NVM accesses and fix bank detection Check return code for all NVM accesses[1] and error out accordingly; log a debug message for failed accesses. For ICH8/9, the valid NVM bank detect function was not checking whether the SEC1VAL (sector 1 valid) bit in the EECD register was itself valid (bits 8 and 9 also have to be set). If invalid, it would have defaulted to the possibly invalid bank 0. Instead, try to use the valid bank detection method used by ICH10 which has been cleaned up a bit. [1] - reads and updates only; not writes because those are only writing to the Shadow RAM, the update following the write is the only thing actually writing the modified Shadow RAM contents to the NVM. Signed-off-by: Bruce Allan Signed-off-by: David S. Miller commit a20e4cf9e6a37e40532593e00df153d01e317baf Author: Bruce Allan Date: Fri Nov 21 17:01:35 2008 -0800 e1000e: fix incorrect link status when switch module pulled On 82571 with SerDes, the true link state is not always correct when read from the STATUS register; use existing e1000_has_link() function instead. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 8452759060ad46fc071a7d5bbf1647df5ea2ceab Author: Bruce Allan Date: Fri Nov 21 17:00:22 2008 -0800 e1000e: store EEPROM version number to prevent unnecessary NVM reads Rather than reading the NVM to get the EEPROM version number everytime the ethool get_drvinfo function is called, read it once during probe and save it for future reference. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 0285c8dcaeaa73ddadc4f38383e5bbc03c394a29 Author: Bruce Allan Date: Fri Nov 21 16:59:54 2008 -0800 e1000e: cosmetic newline in debug message Add missing newline from debug message. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5c48ef3e2028677a890d46d9a38b19174274f2e9 Author: Bruce Allan Date: Fri Nov 21 16:57:36 2008 -0800 e1000e: sync change flow control variables with ixgbe Sync flow control variables and usage model with that found in the ixgbe driver. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 8f12fe8653eb699a6bc4f88f1a80312466ea2b0e Author: Bruce Allan Date: Fri Nov 21 16:54:43 2008 -0800 e1000e: link up/down messages must follow a specific format The system log messages created on a link status change need to follow a specific format to work with tools some customers use. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 75eb0fad56da8494b43865097f362633debdc958 Author: Bruce Allan Date: Fri Nov 21 16:53:51 2008 -0800 e1000e: ESB2 config after link up On ESB2, the MAC-to-PHY (Kumeran) interface must be configured after link is up before any traffic is sent; a new PHY operations function pointer is provided for this. To facilitate read/write of the Kumeran registers without blocking PHY register writes, the driver/firmware synchronization method which previously used a hardware semaphore for both PHY and Kumeran register accesses is now split. New Kumeran register read/write functions utilize this new synchronization method. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 438b365a2758c012393a7be24d31a9c06aa0a504 Author: Bruce Allan Date: Fri Nov 21 16:51:33 2008 -0800 e1000e: check return of pci_save_state Check return of pci_save_state and error out accordingly. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 1605927fcee41fe205f1713725f47f0d52978489 Author: Bruce Allan Date: Fri Nov 21 16:51:06 2008 -0800 e1000e: update comments listing supported parts for each MAC family Some branding strings (displayed via lspci) are missing from the comments in various family-specific files in the driver. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 63dcf3d353f32ca7007bfa53a9384f3283076afc Author: Bruce Allan Date: Fri Nov 21 16:50:34 2008 -0800 e1000e: 82571 check for link fix on 82571 serdes Check for link test does not work properly for 82571 parts in a blade environment with an unterminated serdes link partner. Make the test more robust by checking the invalid bit. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5aa49c82118d2aa08c6cfaba01fd86f969b3f1d7 Author: Bruce Allan Date: Fri Nov 21 16:49:53 2008 -0800 e1000e: commit speed/duplex changes for m88 PHY Follow the convention used elsewhere in e1000e to 'commit' PHY changes instead of directly writing to the PHY CTRL register to reset it. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 005cbdfc29cfc23b8faadd3619eed43e6550bfc1 Author: Alexander Duyck Date: Fri Nov 21 16:49:10 2008 -0800 e1000e: disable correctable errors for quad ports while going to D3 There has been an issue seen with the pci-e quad port adapters that will cause them to generate a pci-e correctable error on some system while transitioning to D3. Since no action is needed on this correctable error the simplest solution is to mask off the reporting of correctable errors. Signed-off-by: Alexander Duyck Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 7e3aab4a9cd7d37f80eee75bebb6a71347f82476 Author: David S. Miller Date: Fri Nov 21 16:39:19 2008 -0800 inet_diag: Missed conversion after changing inet ehash lockl to spinlocks. They are no longer a rwlocks. Signed-off-by: David S. Miller commit 176301e82190adb70f9bdf37cd5cb08fcfcb25fb Author: Wang Chen Date: Fri Nov 21 16:36:22 2008 -0800 netdevice pc300: Add the reason about PC300 BROKEN in Kconfig When compile test my previous patch, I found PC300 driver was broken. And there is no explanation about the broken. Add the reason about why change this driver to broken in Kconfig. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 6636e1170d1e49818933ecea0e715e0c73e19bb8 Author: Wang Chen Date: Fri Nov 21 16:35:44 2008 -0800 netdevice pc300: Convert directly reference of netdev->priv netdev's private data should be hdlc. pc300dev_t is the private data of hdlc. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 2baf8a2daab65cdd3f20bfeb4676a2f6aff7c3bf Author: Wang Chen Date: Fri Nov 21 16:34:18 2008 -0800 netdevice hdlc: Convert directly reference of netdev->priv For killing directly reference of netdev->priv, use netdev->ml_priv to replace it. Because the private pvc data comes from add_pvc() and can't be allocated in alloc_netdev(). Signed-off-by: Wang Chen Acked-by: Krzysztof Halasa Signed-off-by: David S. Miller commit f757fec4b0d45dfcb52f9a914a12225a6a0a3e05 Author: Eric Dumazet Date: Fri Nov 21 15:49:19 2008 -0800 net: use net_eq() in INET_MATCH and INET_TW_MATCH We can avoid some useless instructions if !CONFIG_NET_NS Because of RCU, we use INET_MATCH or INET_TW_MATCH twice for the found socket, so thats six instructions less per incoming TCP packet. Yet another tbench speedup :) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b20222667d371bb9ddeadd47d18072efcab3f6d2 Author: Takashi Iwai Date: Fri Nov 21 21:24:03 2008 +0100 ALSA: hda - Fix build without CONFIG_PROC_FS snd_print_pcm_rates() and snd_print_pcm_bits() are used by both hda_proc.c and hda_eld.c, thus they have to be defined in the common place. Signed-off-by: Takashi Iwai commit b8b1d08bf6fe7c09e6cb2294bc0e5e964b361241 Author: Alexander van Heukelum Date: Fri Nov 21 16:44:28 2008 +0100 x86: entry_64.S: split out some macro's and move common code to paranoid_exit Impact: cleanup DISABLE_INTERRUPTS(CLBR_NONE)/TRACE_IRQS_OFF is now always executed just before paranoid_exit. Move it there. Split out paranoidzeroentry, paranoiderrorentry, and paranoidzeroentry_ist to get more readable macro's. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit e2f6bc25b98dbb10d809ee50262b43fcae67840a Author: Alexander van Heukelum Date: Fri Nov 21 16:43:18 2008 +0100 x86: entry_64.S: factor out save_paranoid and paranoid_exit Impact: cleanup, shrink kernel image size Also expand the paranoid_exit0 macro into nmi_exit inside the nmi stub in the case of enabled irq-tracing. This gives a few hundred bytes code size reduction. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit c002a1e6b6b6f07ae04e68987054bf1f2150ae48 Author: Alexander van Heukelum Date: Fri Nov 21 16:41:55 2008 +0100 x86: introduce save_rest and restructure the PTREGSCALL macro in entry_64.S Impact: cleanup The save_rest function completes a partial stack frame for use by the PTREGSCALL macro. This also avoids the indirect call in PTREGSCALLs. This adds the macro movq_cfi_restore to hide the CFI_RESTORE annotation when restoring a register from the stack frame. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit c70bfa8733e1ec4babe5a1b4a9a90053f79eb301 Merge: d6752a5... b0fc5e0... Author: Takashi Iwai Date: Fri Nov 21 18:02:57 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda commit d6752a532c700927fc7586cdd086391bfc50eaa9 Author: Takashi Iwai Date: Fri Nov 21 18:01:44 2008 +0100 ALSA: hda - mark Dell studio 1535 quirk Fixed the quirk string for Dell studio 1535 (the product name wasn't published at the time the patch was made). Signed-off-by: Takashi Iwai commit a1eb5fe319beb9e181aa52c8adf75ad9aab56a89 Author: Rami Rosen Date: Wed Nov 19 09:37:43 2008 +0200 wireless: missing include in lib80211.h This patch adds #include in lib80211.h to avoid these compilation erros. > In file included from /work/src/wireless-testing/net/wireless/lib80211.c:24: > /work/src/wireless-testing/include/net/lib80211.h:113: error: field > 'crypt_deinit_timer' has incomplete type > /work/src/wireless-testing/net/wireless/lib80211.c: In function > 'lib80211_crypt_info_init': > /work/src/wireless-testing/net/wireless/lib80211.c:83: error: implicit > declaration of function 'setup_timer' > /work/src/wireless-testing/net/wireless/lib80211.c: In function > 'lib80211_crypt_info_free': > /work/src/wireless-testing/net/wireless/lib80211.c:95: error: implicit > declaration of function 'del_timer_sync' > /work/src/wireless-testing/net/wireless/lib80211.c: In function > 'lib80211_crypt_deinit_handler': > /work/src/wireless-testing/net/wireless/lib80211.c:157: error: > implicit declaration of function 'add_timer' > /work/src/wireless-testing/net/wireless/lib80211.c: In function > 'lib80211_crypt_delayed_deinit': > /work/src/wireless-testing/net/wireless/lib80211.c:182: error: > implicit declaration of function 'timer_pending' > make[3]: *** [net/wireless/lib80211.o] Error 1 > make[2]: *** [net/wireless] Error 2 > make[1]: *** [net] Error 2 > make: *** [sub-make] Error 2 Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 3461fc12a423c09169c6bb350319808ca4ec4b86 Author: Larry Finger Date: Wed Nov 12 17:31:52 2008 -0600 rtl8187: Update file authorship in comments Modify the file comments to reflect the current maintainers. Signed-off-by: Larry Finger Acked-by: Herton Ronaldo Krzesinski Acked-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 59840488c207ca85ea3787b36169e7fa9582baaf Author: Larry Finger Date: Wed Nov 12 17:13:09 2008 -0600 Update of MAINTAINERS for RTL8187 As noted by John Linville, the RTL818X maintainers have "moved on", and the responsibilities for RTL8180 and RTL8187 have been split. This is the corresponding update of MAINTAINERS. Signed-off-by: Larry Finger Acked-by: Herton Ronaldo Krzesinski Acked-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 4f6d4d1e36f30ac05bc39bcbfdba09e64e0f918c Author: Johannes Berg Date: Tue Oct 28 14:00:54 2008 +0100 wireless: clean up sysfs code using %pM Remove converting the MAC address to a string by a direct byte conversion and use %pM instead, since the code is now boilerplate use a macro to define the show functions, and also use the shorter __ATTR_RO macro to define the attributes. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 96dd603f3817c5289a906539cb85bddae9536868 Author: John W. Linville Date: Wed Nov 12 14:51:56 2008 -0500 MAINTAINERS: claim maintenance over rtl818x drivers Michael and Andrea have moved-on, so we shouldn't be bothering them about these drivers anymore. Actually, Herton Ronaldo Krzesinski, Hin-Tak Leung, and Larry Finger have been handling the rtl8187 stuff for a while. So, I would welcome a patch from one of them changing this to just RTL8180 and adding an RTL8187 entry with their names... Signed-off-by: John W. Linville commit da81dede95cf69b0e51442cb472f1581583381e4 Author: John W. Linville Date: Wed Nov 12 14:37:11 2008 -0500 rtl8180: adapt for deprecated IEEE80211_CONF_SHORT_SLOT_TIME flag This updates rtl8180 handling for short slot after "mac80211: fix short slot handling". Only rtl8180_rtl8225 actually had code for handling short slot times, so the other RF devices are untouched by this change. Signed-off-by: John W. Linville commit 627271018df75c8861b9e75b39d5995842e6ec95 Author: John W. Linville Date: Wed Nov 12 10:01:41 2008 -0500 mac80211: add explicit padding in struct ieee80211_tx_info Otherwise, the BUILD_BUG_ON calls in ieee80211_tx_info_clear_status can fail on some architectures. Signed-off-by: John W. Linville commit beb2a7f331361bfe81e71acdb0739eae570475a2 Author: John W. Linville Date: Tue Nov 11 16:45:38 2008 -0500 net/ieee80211 -> drivers/net/ipw2x00/libipw_* rename The old ieee80211 code only remains as a support library for the ipw2100 and ipw2200 drivers. So, move the code and rename it appropriately to reflects it's true purpose and status. Signed-off-by: John W. Linville commit 0795cd29b6fe05107b40080cb1fccadb96320c96 Author: John W. Linville Date: Tue Nov 11 16:22:09 2008 -0500 ipw2x00: relocate ipw2100/ipw2200 to common directory Signed-off-by: John W. Linville commit 2ba4b32ecf748d5f45f298fc9677fa46d1dd9aff Author: John W. Linville Date: Tue Nov 11 16:00:06 2008 -0500 lib80211: consolidate crypt init routines Signed-off-by: John W. Linville commit 274bfb8dc5ffa16cb073801bebe76ab7f4e2e73d Author: John W. Linville Date: Wed Oct 29 11:35:05 2008 -0400 lib80211: absorb crypto bits from net/ieee80211 These bits are shared already between ipw2x00 and hostap, and could probably be shared both more cleanly and with other drivers. This commit simply relocates the code to lib80211 and adjusts the drivers appropriately. Signed-off-by: John W. Linville commit dfe1bafdbac1c7b48b636fb7ace799e78170e0d6 Author: Pavel Roskin Date: Mon Nov 10 09:25:53 2008 -0500 orinoco: fix last beacon reporting on 64-bit systems orinoco_translate_scan() and orinoco_translate_ext_scan() wrongly truncate last_scanned argument from unsigned long to unsigned int. Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 1d047def6d19106a91f7756f970ac8429033a4d8 Author: Rami Rosen Date: Mon Nov 10 09:01:09 2008 +0200 mac80211: remove unnecessary include. This patch removes unnecessary #include from /net/mac80211/mlme.c. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 8ff48a8bbe4a1ba29dea2836dfce74660f97c1be Author: Ivo van Doorn Date: Sun Nov 9 23:40:46 2008 +0100 rt2x00: Fix race condition when using inderect registers Indirect registers require multiple calls to the CSR register in order to access the indirect registers. This must be protected under a lock to prevent race conditions which could cause invalid data to be returned when reading from the indirect register or silent failures when writing data to the indirect register. USB drivers where already protected under a mutex, so rename the mutex and make PCI drivers use the mutex as well. This now means that BBP and RF registers are no longer accessible in interrupt context. That is not a bad situation since the slow behavior of accessing those registers means we don't _want_ to access them in interrupt context either. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit bad13639a30e1557fbe9d440adc1906673c9de4e Author: Ivo van Doorn Date: Sun Nov 9 20:47:00 2008 +0100 rt2x00: Optimize get_duration / get_duration_res We can optimize get_duration and get_duration_res by making them a macro. They are really simple calculation handlers so this doesn't matter much. Often (especially in rt2400pci and rt2500pci, the arguments are hardcoded, and the result value is passed into other hardcoded values. By making the functions a macro GCC can optimize the entire thing much better. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 87c1687d1a7bf0d4975d613cb699ba95b329359e Author: Julia Lawall Date: Sun Nov 9 17:56:10 2008 +0100 drivers/net/wireless/ath9k/rc.c: use ARRAY_SIZE ARRAY_SIZE is more concise to use when the size of an array is divided by the size of its type or the size of its first element. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @i@ @@ #include @depends on i using "paren.iso"@ type T; T[] E; @@ - (sizeof(E)/sizeof(E[...])) + ARRAY_SIZE(E) // Signed-off-by: Julia Lawall Signed-off-by: John W. Linville commit f9f88fed3433139b58962011c81597b44fd48458 Author: Jouni Malinen Date: Sun Nov 9 18:38:51 2008 +0200 mac80211_hwsim: Update documentation (AP mode enabled) AP mode is now enabled in mac80211, so there is no need to point users to an additional patch to enable the mode. In addition, add a pointer to more hwsim test cases in hostap.git. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 9902b1843ff460d08a40d6c99ad8f5362296c3d4 Author: Tomas Winkler Date: Sat Nov 8 23:50:55 2008 +0200 mac80211: rc80211_pid eliminate sparse warnings This patch eliminates sparse warnings in pid rate scale algorithm 'debugfs: allow access to signed values' patch hit the dead end year ago w/o much echo so I guess there is no real need to address this properly. Signed-off-by: Tomas Winkler Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 798b7adb4ed3533ab1282f51d16892034cfd8aae Author: Ivo van Doorn Date: Sat Nov 8 15:25:33 2008 +0100 rt2x00: Cleanup TX/RX entry handling Merge the callback functions init_txentry() and init_rxentry(). This makes life in rt2x00lib a lot simpler and we can cleanup several functions. rt2x00pci contained "fake" FIELD definitions for descriptor words. This is not flexible since it assumes the driver will always have the same field to indicate if a driver is available or not. This should be dependent on the driver, and we should add a callback function for this. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 0ed94eaaed618634f68197161203aac9f849471e Author: Randy Dunlap Date: Fri Nov 7 19:50:42 2008 -0800 mac80211: remove more excess kernel-doc Delete kernel-doc struct descriptions for fields that don't exist: Warning(include/net/mac80211.h:1263): Excess struct/union/enum/typedef member 'conf_ht' description in 'ieee80211_ops' Warning(net/mac80211/sta_info.h:309): Excess struct/union/enum/typedef member 'addr' description in 'sta_info' Warning(net/mac80211/sta_info.h:309): Excess struct/union/enum/typedef member 'aid' description in 'sta_info' Signed-off-by: Randy Dunlap cc: Johannes Berg cc: John W. Linville Signed-off-by: John W. Linville commit e4e58cf8cc646d93de852f32f972448a95387c60 Author: Zhu, Yi Date: Fri Nov 7 09:58:46 2008 -0800 iwlwifi: use Rx single frame mode (one Rx frame per RB) The RCSR default value for single frame mode is off (a RB contains more than one frames). But the driver assumes single frame mode apparently. This patch enables single frame mode for the hardware. It also adds a BUG_ON to make sure the allocated skb satisfies the hardware alignment requirement and removes a useless check. Signed-off-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 01ef932341de1fb69848ee0b9206e11baac9c340 Author: Winkler, Tomas Date: Fri Nov 7 09:58:45 2008 -0800 iwlwifi: get some more information about command failure This patch adds additional info about wrong command queue bug Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c24f0817458464fc9c54489dba19cd94787e5eaf Author: Kolekar, Abhijeet Date: Fri Nov 7 09:58:44 2008 -0800 iwl3945 : Simplify iwl3945_send_beacon_cmd Moved rate_msk calculation to iwl3945_rate_get_lowest_plcp. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit cb299bae8929705bf025fdbd6ce0ffcc62f5b3d0 Author: Winkler, Tomas Date: Fri Nov 7 09:58:43 2008 -0800 iwlwifi: move iwl_print_hex_dump to iwl-debug.h This patch moves iwl_print_hex_dump to iwl-debug.h where it belongs Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit e720ce9d15050d06e5162d5f70b133caccd64258 Author: Kolekar, Abhijeet Date: Fri Nov 7 09:58:42 2008 -0800 iwl3945 : Fix Sparse Warnings Patch fixes sparse warnings. No need to convert u8 variable to 32. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 21c339bf51ad46c6f8143df907b4bcce99dbe0b8 Author: Tomas Winkler Date: Fri Nov 7 09:58:41 2008 -0800 iwlwifi: move spectrum measurement code to iwl-spectrum.c file This patch moves spectrum measurement code into iwl-sepctrum.c file. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 4ddbb7d060061e584cb2137f4c7e41e502a560b4 Author: Tomas Winkler Date: Fri Nov 7 09:58:40 2008 -0800 iwlwifi: revamp tx scheduler byte count tables handling This moves byte count tables to tx domain removing completely ambivalent shared data. Changes handling of allocation byte count tables and keep warm consistent memory Moves general tx scheduler definitions from iwl-4956-hw.h to iwl-fh.h Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 8d86422a83d79e3d3241cf0f269fca0c2640bcee Author: Winkler, Tomas Date: Fri Nov 7 09:58:39 2008 -0800 iwlwifi: move rx queue read pointer into rxq This patch moves rx status/read registers into iwl_rx_queue structures. This solution is more memory hungry but is more structured and provides needed RX/TX separation Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 5c5aa3f13a50881b8f6e529e321bbefb5faec37b Author: Halperin, Daniel C Date: Fri Nov 7 09:58:38 2008 -0800 iwlwifi: update iwl-commands.h for 3 stream support This patch updates comments and constants to support 1, 2, or 3 spatial streams in rate_n_flags . Signed-off-by: Daniel Halperin Signed-off-by: Tomas Winkler Signed-off-by: John W. Linville commit a71c8f62d46e4496011182658dc058303960c068 Author: Winkler, Tomas Date: Fri Nov 7 09:58:37 2008 -0800 iwlwifi: don't fail power set when calibration is not done yet This patch doesn't fail power save setting when calibration is not done yet. The new power index is registered and will be evaluated again anyway upon calibration completion. This patch also eliminates WARN_ON in mac80211 hw_config during initialization Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 193357748979985498f21abc94c7a0a3ed5a3b8e Author: Winkler, Tomas Date: Fri Nov 7 09:58:36 2008 -0800 iwlwifi: trivial fix in includes This patch removes one FIXME: in rearranging includes Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9bdf5ecabf1cd2fb012f87d9742590fdd8290da0 Author: Mohamed Abbas Date: Fri Nov 7 09:58:35 2008 -0800 iwl3945: fix resume for ADHOC network ieee80211_notify_mac only reconnect BSS networks. Since IBSS does not need any auth or assoc steps we can just resume to the same condition before suspend. This patch will reestablish the ad-hoc network once it comes back from resume. http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1774 Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit ada1751346b5539f393c2e9c9dc04d9e7078e53a Author: Mohamed Abbas Date: Fri Nov 7 09:58:34 2008 -0800 iwlagn: fix resume for ADHOC network ieee80211_notify_mac only reconnect BSS networks. Since IBSS does not need any auth or assoc steps we can just resume to the same condition before suspend. This patch will reestablish the ad-hoc network once it comes back from resume. http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1774 Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 1e87d68083cd073c84edb3a71fa4365d7fc092bd Author: Johannes Berg Date: Thu Nov 6 17:20:24 2008 +0100 b43: remove rate index warning I frequently run into this warning, and added some debugging to see why, and got this: b43 bad rx: 00000000: 2f d2 e2 63 cf a7 14 04 28 18 c8 5f 88 4a a2 00 bogus junk | plcp | fctl| dur b43 bad rx: 00000010: 00 11 24 91 07 4d 00 06 25 ff 8f 78 00 06 25 ff my MAC address | BSSID | AP MAC b43 bad rx: 00000020: 8f 76 20 74 00 00 42 07 00 20 00 00 00 00 aa aa | seq | QoS | CCMP IV | data ... As you can see, there are 6 bogus bytes (sometimes only five) and then the frame. I don't know why, and I don't see how to recover, so let's just drop these frames. Signed-off-by: Johannes Berg Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 7f3704e992ee4044f8e0068e060458377004473a Author: Johannes Berg Date: Thu Nov 6 15:18:11 2008 +0100 b43legacy: implement short slot and basic rate handling This implements proper short slot handling and adds code to program the hardware for the correct response rates derived from the basic rate set for the current BSS. (port from b43) Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3e4127fa6db34765685599fb8d1177e51850a63c Author: Alexey Fisher Date: Thu Nov 6 09:51:16 2008 +0100 ipw2200: make association only if SSID is known. 'iwconfig eth1 channel 6' would trigger association to _something_, which is wrong. Changing the channel should (and does) trigger reassociation, but only if there is an SSID to associate with. Signed-off-by: Alexey Fisher Acked-by: Zhu Yi Signed-off-by: John W. Linville commit ffb826767bffda61426d964a8fc24a216a14b0bd Author: Luis R. Rodriguez Date: Mon Nov 3 14:43:01 2008 -0800 ath9k: enable RXing of beacons on STA/IBSS This enables beacons to come through on STA/IBSS. It should fix sporadic connection issues. Right now mac80211 expect beacons so give it beacons. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 296bf2aefdf7b4b1bf093a7b42a86ee21b46d07f Author: Luis R. Rodriguez Date: Mon Nov 3 14:43:00 2008 -0800 ath5k: allow APs to receive beacons Allow APs to receive beacons to detect when it needs to use protection to update the NAV correctly on 11b stations. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 6a53a8a99cb044e1873648ba184440db6d9c65b8 Author: Nick Kossifidis Date: Tue Nov 4 00:25:54 2008 +0200 ath5k: Fix IMR init *On a previous patch i splitted AR5K_INT_TX to multiple different TX interrupt flags for better handling but i forgot to unmask the new TXDESC and TXEOL interrupts on ath5k_init and only left TXOK. However for each queue we enable TXDESC and TXEOL interrupts, not TXOK so we don't handle TX interrupts at all (because these interrupts remain masked on PISR) and under load it results packet loss. Fix the problem by unmasking TXDESC and TXEOL on ath5k_init. Signed-Off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 392dff836f40370033bbe3b39e3b9bf4148d1435 Author: Benoit PAPILLAULT Date: Thu Nov 6 22:26:49 2008 +0100 ath9k : Display MAC/BB and RF version at startup (v2) This patch decodes the MAC/BB version (for instance: AR5416) and the RF part version (for instance: AR5133). It has been tested on AR5416/AR5133 which is a 2.4/5GHz 11n device. It also makes the differences between AR5416 (PCI) and AR5418 (PCI Express). Both are named AR5416 in the register definitions. Signed-off-by: Benoit Papillault Signed-off-by: John W. Linville commit 4821277f36e008b531728e359fbbedb229117f4b Author: Felix Fietkau Date: Mon Nov 3 21:05:01 2008 +0100 mac80211: fix BUILD_BUG_ON() caused by misalignment on arm On ARM alignment is done slightly different from other architectures. struct ieee80211_tx_rate is aligned to word size, even though it only has 3 single-byte members, which triggers the BUILD_BUG_ON in ieee80211_tx_info_clear_status This patch marks the struct ieee80211_tx_rate as packed, so that ARM behaves like the other architectures. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 8b0162a3dc5c30e862b7a73da29e32de3170f5e4 Author: Felix Fietkau Date: Mon Nov 3 11:27:38 2008 +0100 ath5k: ignore the return value of ath5k_hw_noise_floor_calibration Noise floor calibration occasionally fails on Atheros hardware. This is not fatal and can happen if there's simply too much noise on the air. Ignoring the calibration error is the right thing to do here, because when the error is ignored, the hardware will still work, whereas if the error causes the driver to bail out of a bigger configuration function and does not configure the tx queues or the IMR (as is the case in reset.c), the hw no longer works properly until the next reset. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 6d64360ac56cda95243f15738a06f2a123c663e5 Author: Ivo van Doorn Date: Sun Nov 2 00:38:10 2008 +0100 rt2x00: Fix BUG_ON() with antenna handling With the new configuration handling, and more specifically splitting the configuration of the antenna from the normal configuration steps allowed a BUG_ON() to be triggered in the driver because the SW_DIVERSITY was send to the driver. This fixes that by catching the value early in rt2x00config.c and replacing it with a sensible value. This also fixes a problem where the antenna is not being initialized at all when the radio is enabled. Since it no longer is part of the mac80211 configuration the only place where rt2x00 configured it was the SW diversity handler. Obviously this is broken for all non-diversity hardware and breaks SW diversity due to a broken initialization. When the radio is enabled the antenna will be configured once as soon as the config() callback function is called. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8058409c4fb8e38632207d572ed29943d2585520 Author: Ivo van Doorn Date: Sun Nov 2 00:37:25 2008 +0100 rt2x00: Block set_key() during suspend/shutdown mac80211 will call set_key() when the device is shutting down. When the device is unplugged the keys will be lost automatically due to the power loss. When the device is not plugged but the module is only unloaded the keys can remain in the device hardware, when the module is loaded the keys will be cleaned up during initialization. This should prevent the problem reported by Johannes Berg, where unplugging the device while suspended resulted in a NULL pointer error during set_key() which was caused because of the CSR base address being freed. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9a95dba32735534bda59def40c747bf606fedf05 Author: Ivo van Doorn Date: Sun Nov 2 00:37:09 2008 +0100 rt2x00: Fix LED state handling For every global LED state change (register/unregister, suspend/resume) we should force the LEDS to turn off. This makes sure that the LEDS will always be in a sane state after the state switch. Note that when unregister is called but the LED class wasn't resumed yet, we shouldn't change the LED state since we might not have access to the device (device was unplugged while suspended). Also remove the checks in the activity, assoc and radio LEDS which blocked calls to brightness_set() when the state hasn't changed. Some of those LEDS could be enabled by themselves when something happens in the hardware (e.g. firmware is loaded). We already did called rt2x00leds to switch the LED off, but those calls were blocked. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 3d8606a680529d41ad8985f36ecf83a7b393ecaf Author: Ivo van Doorn Date: Sun Nov 2 00:36:40 2008 +0100 rt2x00: Remove RATE_BASIC flag mac80211 is in charge of determining the basic rates, so we are not using the RATE_BASIC flag anymore. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 1c740ed2210a0d124674a477ea538468aba47810 Author: Larry Finger Date: Fri Oct 31 17:19:31 2008 -0700 Move all rtl818x files to a common directory. This change improves the maintainability of these drivers. No functionality is changed. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 55b3961953494c340b3625486f484af8ded31dd7 Author: Andrey Yurovsky Date: Fri Oct 31 23:23:35 2008 -0700 mac80211_hwsim: enable Mesh Point operation Initial mesh support: add Mesh Point to supported interfaces mask and allow hwsim to send beacons in mesh mode. Signed-off-by: Andrey Yurovsky Signed-off-by: John W. Linville commit a3c9aa512945aa5552d03c7d6d6c3b826a3f9e28 Author: Andrey Yurovsky Date: Fri Oct 31 14:50:12 2008 -0700 mac80211: disable BSSID filtering for mesh interfaces Mesh interfaces are currently opened with the FIF_ALLMULTI rx filter flag set, however there is no BSSID in mesh so BSSID filtering should be disabled by setting the FIF_OTHER_BSS flag as well. Also explicitly call ieee80211_configure_filter for mesh. Signed-off-by: Andrey Yurovsky Signed-off-by: Javier Cardona Acked-by: Johannes Berg Signed-off-by: John W. Linville commit b7b05fe7f92e21e933caa529fd8d78bbbbfbd293 Author: Kay Sievers Date: Thu Oct 30 15:51:57 2008 +0100 ssb: struct device - replace bus_id with dev_name(), dev_set_name() This patch is part of a larger patch series which will remove the "char bus_id[20]" name string from struct device. The device name is managed in the kobject anyway, and without any size limitation, and just needlessly copied into "struct device". To set and read the device name dev_name(dev) and dev_set_name(dev) must be used. If your code uses static kobjects, which it shouldn't do, "const char *init_name" can be used to statically provide the name the registered device should have. At registration time, the init_name field is cleared, to enforce the use of dev_name(dev) to access the device name at a later time. We need to get rid of all occurrences of bus_id in the entire tree to be able to enable the new interface. Please apply this patch, and possibly convert any remaining remaining occurrences of bus_id. We want to submit a patch to -next, which will remove bus_id from "struct device", to find the remaining pieces to convert, and finally switch over to the new api, which will remove the 20 bytes array and does no longer have a size limitation. CC: Michael Buesch Acked-by: Greg Kroah-Hartman Signed-Off-By: Kay Sievers Signed-off-by: John W. Linville commit 582c1b538fb47a2d6a41dbdadb031086c49446c1 Author: Anna Neal Date: Mon Oct 20 16:46:56 2008 -0700 libertas: Fine grained configuration of wake-on-lan. Based on a patch from Shailendra Govardhan . This patch allows implementation of more specific wake-on-lan rules than those of ethtool. Please note that only firmware 5.110.22.p20 and above supports this feature. This patch only implements the driver/firmware interface, not the userspace/driver interface. Signed-off-by: Anna Neal Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 50da3ead624d46f1b9f1007a184691bbb841eba7 Author: John W. Linville Date: Mon Nov 10 13:59:18 2008 -0500 ipw2100, ipw2200: select LIB80211 Otherwise some configs can result in missing print_ssid... Signed-off-by: John W. Linville commit 3d29b0c33d431ecc69ec778f8c236d382f59a85f Author: John W. Linville Date: Fri Oct 31 14:13:12 2008 -0400 netdevice zd1201: Convert directly reference of netdev->priv to netdev_priv() We have some reasons to kill netdev->priv: 1. netdev->priv is equal to netdev_priv(). 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously netdev_priv() is more flexible than netdev->priv. But we cann't kill netdev->priv, because so many drivers reference to it directly. OK, becasue Dave S. Miller said, "every direct netdev->priv usage is a bug", and I want to kill netdev->priv later, I decided to convert all the direct reference of netdev->priv first. (Original patch posted by Wang Chen w/ above changelog but using dev->ml_priv. That doesn't seem appropriate to me for this driver, so I've revamped it to use netdev_priv() instead. -- JWL) Reviewed-by: Wang Chen Signed-off-by: John W. Linville commit 4f904735c809e44c11f57cd4f82446aac1243e0e Author: Mark Brown Date: Fri Nov 21 15:08:23 2008 +0000 ALSA: ASoC: Fix typo in snd_soc_card update documentation Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 42e81c991a71909929f8d0cdcdf8ced68799388a Author: Hannes Eder Date: Fri Nov 21 16:03:24 2008 +0100 ALSA: hda - fix sparse warning Fix the following sparse warning: sound/pci/hda/patch_nvhdmi.c:161:25: warning: symbol 'snd_hda_preset_nvhdmi' was not declared. Should it be static? Signed-off-by: Hannes Eder Signed-off-by: Takashi Iwai commit 39639faba98eafeb327a30bc10b7d921c398a59a Author: Mark Brown Date: Fri Nov 21 14:28:49 2008 +0000 ASoC: Improve error reporting for AC97 reset failures Print something a bit more verbose to help make errors a little more obvious. Signed-off-by: Mark Brown commit 0e734ad5d16ad1d87a428a30d117bb3541a8e24d Author: Mark Brown Date: Fri Nov 21 14:05:48 2008 +0000 ASoC: Staticise pxa2xx_pcm_ops It's not exported. Signed-off-by: Mark Brown commit 0c758bdd678860fff3c4b600ec6f134e43526850 Author: Jarkko Nikula Date: Fri Nov 21 14:31:33 2008 +0200 ASoC: OMAP: Fix preprocessor filled DAI name in McBSP DAI Signed-off-by: Jarkko Nikula Signed-off-by: Mark Brown commit 2dac9217b26fd0a0a1712386ce2ea1411835ffb7 Author: Mark Brown Date: Fri Nov 21 14:01:41 2008 +0000 ASoC: Add Marvell Zylonite machine support Implement support for the Marvell Zylonite PXA3xx reference platform, supporting standard AC97 stereo and AUX interfaces together with the auxiliary I2S interface of the WM9713. The board has two options for the MCLK of the WM9713: either the standard AC97 system clock can be used or the 13MHz CLK_POUT output of the PXA3xx can be used, selected via SW15 on the board. Currently only the AC97 system clock is supported by this driver. Signed-off-by: Mark Brown commit 14ae22ba2b8bb3d53fb795f9b8074aa39ef7b6cd Author: Ingo Molnar Date: Fri Nov 21 15:20:47 2008 +0100 x86: entry_64.S: rename Impact: cleanup Rename: CFI_PUSHQ => pushq_cfi CFI_POPQ => popq_cfi CFI_MOVQ => movq_cfi To make it blend better into regular assembly code. Signed-off-by: Ingo Molnar commit e8a0e27662186f8856a0a6242e7a8386c9a64a53 Author: Ingo Molnar Date: Fri Nov 21 15:11:32 2008 +0100 x86: clean up after: move entry_64.S register saving out of the macros, fix Impact: build fix The break builds with older binutils (2.16.1): arch/x86/kernel/entry_64.S: Assembler messages: arch/x86/kernel/entry_64.S:282: Error: too many positional arguments arch/x86/kernel/entry_64.S:283: Error: too many positional arguments arch/x86/kernel/entry_64.S:284: Error: too many positional arguments arch/x86/kernel/entry_64.S:285: Error: too many positional arguments arch/x86/kernel/entry_64.S:286: Error: too many positional arguments arch/x86/kernel/entry_64.S:287: Error: too many positional arguments arch/x86/kernel/entry_64.S:288: Error: too many positional arguments arch/x86/kernel/entry_64.S:289: Error: too many positional arguments arch/x86/kernel/entry_64.S:290: Error: too many positional arguments Took some time to figure out the detail that GAS chokes on: it's negative offsets. Rearrange the calculations to make sure we never go negative. Signed-off-by: Ingo Molnar commit dee89c4d94433520e4e3977ae203d4cfbfe385fb Author: Mark Brown Date: Tue Nov 18 22:11:38 2008 +0000 ASoC: Merge snd_soc_ops into snd_soc_dai_ops Liam Girdwood's ASoC v2 work avoids having two different ops structures for DAIs by merging the members of struct snd_soc_ops into struct snd_soc_dai_ops, allowing per DAI configuration for everything. Backport this change. This paves the way for future work allowing any combination of DAIs to be connected rather than having fixed purpose CODEC and CPU DAIs and only allowing CODEC<->CPU interconnections. Signed-off-by: Mark Brown commit a47cbe7263236691ee0bbc392f7fd4ec0da1159f Author: Mark Brown Date: Wed Jul 23 14:03:07 2008 +0100 ASoC: Move DAI structure definitions into new soc-dai.h ASoC v2 factors most of the contents of soc.h out into separate headers, including soc-dai.h for the DAI. Factor the existing DAI API out into this file in order to prepare for backporting of the ASoC v2 DAI API. Also backport some of Liam's improvements to the documentation. Signed-off-by: Mark Brown commit 5de27b6cc0a8a1d27158ec9047cb5981745edfc0 Author: Karl Beldan Date: Thu Nov 20 15:39:31 2008 +0100 ASoC: ssm2602: Update supported stream formats Signed-off-by: Karl Beldan Signed-off-by: Mark Brown commit faab5a32f4d0784d6bde57963267be0453be3546 Author: Karl Beldan Date: Thu Nov 20 15:39:27 2008 +0100 ASoC: ssm2602: Fix priv substreams refs Clean up our record of the active streams in shutdown(), fixing subsequent failures of snd_pcm_hw_constraints_complete after closure of a stream. NOTE: - The ssm2602 allows pairs of non-matching PB/REC rates. - This is a fix for less evil: The logic is flawed (e.g. the slave might startup before the master's rate and sample_bits are set). Signed-off-by: Karl Beldan Signed-off-by: Mark Brown commit bd903bde7e0ad017cb87a228f451e05011e6d302 Author: Mark Brown Date: Wed Nov 19 19:16:05 2008 +0000 ASoC: Add abbreviation to maintainers for searchability Signed-off-by: Mark Brown commit 875065491fba8eb13219f16c36e79a6fb4e15c68 Author: Mark Brown Date: Tue Nov 18 20:50:34 2008 +0000 ASoC: Rename snd_soc_card to snd_soc_machine One of the issues with the ASoC v1 API which has been addressed in the ASoC v2 work that Liam Girdwood has done is that the ALSA card provided by ASoC is distributed around the ASoC structures. For example, machine wide data such as the struct snd_card are maintained as part of the CODEC data structure, preventing the use of multiple codecs. This has been addressed by refactoring the data structures so that all the data for the ALSA card is contained in a single structure snd_soc_card which replaces the existing snd_soc_machine and snd_soc_device. Begin the process of backporting this by renaming struct snd_soc_machine to struct snd_soc_card, better reflecting its function and bringing it closer to standard ALSA terminology. Signed-off-by: Mark Brown commit 98aa9c80f1fee01e98dfdc484ab7316af45f8f17 Author: Jarek Poplawski Date: Fri Nov 21 04:37:27 2008 -0800 pkt_sched: sch_drr: Fix qlen in drr_drop() Signed-off-by: Jarek Poplawski Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 9d2f4720971c00852a3fc8278a76f1a5e9add5c7 Author: Wang Chen Date: Fri Nov 21 01:56:07 2008 -0800 ixgbe: convert directly reference of netdev->priv Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 11b444d5627d87beb55029601cf8d2c9fa9324fd Author: Takashi Iwai Date: Fri Nov 21 09:32:40 2008 +0100 ALSA: hda - Move HD-audio Kconfig items to sound/pci/hda/Kconfig Signed-off-by: Takashi Iwai commit e7ee058cac89ec2f2c0c9ab0ec92a3776c182642 Author: Takashi Iwai Date: Fri Nov 21 09:26:20 2008 +0100 ALSA: hda - Make CONFIG_SND_HDA_RECONFIG for codec reconfiguration Make the codec re-configuration feature selectable via Kconfig, CONFIG_SND_HDA_RECONFIG. Also mark it as experimental (as it really is). Signed-off-by: Takashi Iwai commit f208dba97f2f3ff2fbcbe771195061e2a0dac870 Author: Takashi Iwai Date: Fri Nov 21 09:11:50 2008 +0100 ALSA: hda - Release ELD proc file Release ELD proc file when reconfigured so that no leak occurs. Signed-off-by: Takashi Iwai commit b94d3539de59ec6481e38f83c455324fd3aeabc1 Author: Takashi Iwai Date: Fri Nov 21 09:08:06 2008 +0100 ALSA: hda - Fix double free of jack instances The jack instances created in patch_sigmatel.c may be double-freed. The device management code checks the invalid element, and thus there is no real breakage, but it spews annoying warning messages. But, we can't simply remove the release calls of these jack instances because they have to be freed when the codec is re-configured. Now, a new flag, bus->shutdown is introduced to indicate that the bus is really being unloaded, i.e. the objects managed by the device manager will be automatically deleted. We release these objects only when this flag isn't set. Signed-off-by: Takashi Iwai commit 957ad0166e9f76a8561dafa5e14ef5bd3f5e9a3b Author: Vegard Nossum Date: Fri Nov 21 01:30:36 2008 +0100 sched: update comment for move_task_off_dead_cpu Impact: cleanup This commit: commit f7b4cddcc5aca03e80e357360c9424dfba5056c2 Author: Oleg Nesterov Date: Tue Oct 16 23:30:56 2007 -0700 do CPU_DEAD migrating under read_lock(tasklist) instead of write_lock_irq(ta Currently move_task_off_dead_cpu() is called under write_lock_irq(tasklist). This means it can't use task_lock() which is needed to improve migrating to take task's ->cpuset into account. Change the code to call move_task_off_dead_cpu() with irqs enabled, and change migrate_live_tasks() to use read_lock(tasklist). ...forgot to update the comment in front of move_task_off_dead_cpu. Reference: http://lkml.org/lkml/2008/6/23/135 Signed-off-by: Vegard Nossum Signed-off-by: Ingo Molnar commit fc02e90c34bacd5d7bc77b832c65a8f06e1bd60e Merge: ec4e0e2... 13d428a... Author: Ingo Molnar Date: Fri Nov 21 08:57:04 2008 +0100 Merge commit 'v2.6.28-rc6' into sched/core commit 0623536ca3e8fd7cb8b7468b0fd4d61d80f0b6ea Author: Takashi Iwai Date: Fri Nov 21 08:54:54 2008 +0100 ALSA: hda - Add missing static for snd_hda_eld_proc_new() inline funciton Signed-off-by: Takashi Iwai commit 3ddd972d970fdabbe6515aa2f95e0ef2c8df903d Author: Hiroshi Shimamoto Date: Thu Nov 20 18:32:17 2008 -0800 x86: signal: rename COPY_SEG_STRICT to COPY_SEG_CPL3 Impact: cleanup Rename macro COPY_SEG_STRICT to COPY_SEG_CPL3, as suggested by hpa. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit acdda7915eb5dae20b6e43b8b772b712b1ed32c3 Author: Wu Fengguang Date: Fri Nov 21 11:41:50 2008 +0800 ALSA: hda - support writing to the ELD proc file Allow users to fix quicks of ELD ROMs by writing new values to the ELD proc interface. The format is one or more lines of "name hex_value". Users can add/remove/modify up to 32 SAD(Short Audio Descriptor) entries. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit db742104704cfb047732aa66451c608382da3aee Author: Wu Fengguang Date: Fri Nov 21 12:34:05 2008 +0800 ALSA: hda: modify monitor name to be consistent with other ELD proc items Rename "monitor name" to "monitor_name" to conform with the keyword style. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 218b5ffc0d3fa852624e67a1bb2528ca29274d6e Author: Wu Fengguang Date: Fri Nov 21 09:42:59 2008 +0800 ALSA: hda - properly print ELD sample bits Fix bugs on printing the ELD sample bits. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 75a287d9a35a825cb758d2f8d8df93d41f9f8e3e Merge: 1725b82... 3a7abfd... Author: Takashi Iwai Date: Fri Nov 21 08:27:04 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda Conflicts: sound/pci/hda/patch_sigmatel.c commit c4900be053d376dfe4f603d000aa5e4c60745dec Author: Donald Skidmore Date: Thu Nov 20 21:11:42 2008 -0800 ixgbe: add SFP+ driver support This patch adds support for SFP+ PHY in the following device ID's (10DB, 10F1, 10E1). These SFP+ PHY's are accessed via an I2C interface so the patch also includes functions to support this. Another feature of note is that the PHY is pluggable and some rearchitecting was needed to support this. Signed-off-by: Donald Skidmore Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 859ee3c43812051e21816c6d6d4cc04fb7ce9b2e Author: Alexander Duyck Date: Thu Nov 20 21:10:23 2008 -0800 DCB: Add support for DCB BCN Adds an interface to configure the Backward Congestion Notification (BCN) feature. In a BCN capabale network, congestion notifications from congested points out in the network can cause the end station limit the rate of a given traffic flow. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: David S. Miller commit 0eb3aa9bab20217fb42244ccdcb5bf8a002f504c Author: Alexander Duyck Date: Thu Nov 20 21:09:23 2008 -0800 DCB: Add interface to query the state of PFC feature. Adds a netlink interface for Data Center Bridging (DCB) to get and set the enable state of the Priority Flow Control (PFC) feature. Primarily, this is a way to turn off PFC in the driver while DCB remains enabled. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: David S. Miller commit 33dbabc4a7f7bd72313c73a3c199f31f3900336f Author: Alexander Duyck Date: Thu Nov 20 21:08:19 2008 -0800 DCB: Add interface to query # of TCs supported by device Adds interface for Data Center Bridging (DCB) to query (and set if supported) the number of traffic classes currently supported by the device for the two (DCB) features: priority groups (PG) and priority flow control (PFC). Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: David S. Miller commit 46132188bf72e22ef097f16ed5c969ee8cea1e8b Author: Alexander Duyck Date: Thu Nov 20 21:05:08 2008 -0800 DCB: Add interface to query for the DCB capabilities of an device. Adds to the netlink interface for Data Center Bridging (DCB), allowing the DCB capabilities supported by a device to be queried. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: David S. Miller commit 2f90b8657ec942d1880f720e0177ee71df7c8e3c Author: Alexander Duyck Date: Thu Nov 20 20:52:10 2008 -0800 ixgbe: this patch adds support for DCB to the kernel and ixgbe driver This adds support for Data Center Bridging (DCB) features in the ixgbe driver and adds an rtnetlink interface for configuring DCB to the kernel. The DCB feature support included are Priority Grouping (PG) - which allows bandwidth guarantees to be allocated to groups to traffic based on the 802.1q priority, and Priority Based Flow Control (PFC) - which introduces a new MAC control PAUSE frame which works at granularity of the 802.1p priority instead of the link (IEEE 802.3x). Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: David S. Miller commit 9db66bdcc83749affe61c61eb8ff3cf08f42afec Author: Eric Dumazet Date: Thu Nov 20 20:39:09 2008 -0800 net: convert TCP/DCCP ehash rwlocks to spinlocks Now TCP & DCCP use RCU lookups, we can convert ehash rwlocks to spinlocks. /proc/net/tcp and other seq_file 'readers' can safely be converted to 'writers'. This should speedup writers, since spin_lock()/spin_unlock() only use one atomic operation instead of two for write_lock()/write_unlock() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b8c26a33c8b6f0a150e9cb38ed80b890be55395c Author: Stephen Hemminger Date: Thu Nov 20 20:34:29 2008 -0800 ipgre: convert to netdevice_ops Convert ipgre tunnel to netdevice ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1326c3d5a4b792a2b15877feb7fb691f8945d203 Author: Stephen Hemminger Date: Thu Nov 20 20:33:56 2008 -0800 ipv6: convert tunnels to net_device_ops Like IPV4, convert the tunnel virtual devices to use net_device_ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 23a12b14715e2dcd34dc8002927263ad3437344c Author: Stephen Hemminger Date: Thu Nov 20 20:33:21 2008 -0800 ipip: convert to net_device_ops Convert to network device ops. Needed to change to directly call the init routine since two sides share same ops. In the process found by inspection a device ref count leak if register_netdevice failed. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 748ff68fad9600593c6abe47856037602bd5d133 Author: Stephen Hemminger Date: Thu Nov 20 20:32:15 2008 -0800 hippi: convert driver to net_device_ops Convert the HIPPI infrastructure for use with net_device_ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit fd8f4997e35f2c9a8bfc4d797ec09a6ae7858e04 Author: Stephen Hemminger Date: Thu Nov 20 20:31:40 2008 -0800 defxx: convert driver to net_device_ops Convert this driver to net_device_ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 145186a39570244aead77dc2efc559e5cac90548 Author: Stephen Hemminger Date: Thu Nov 20 20:29:48 2008 -0800 fddi: convert to new network device ops Similar to ethernet. Convert infrastructure and the one lone FDDI driver (for the one lone user of that hardware??). Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 007c3838d9fdcc8fdaea87e4879ec3759f016ed5 Author: Stephen Hemminger Date: Thu Nov 20 20:28:35 2008 -0800 ipmr: convert ipmr virtual interface to net_device_ops Convert to new network device ops interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit aa18e9e88c863a58f6ea63eeee0e740be071fdcf Author: Stephen Hemminger Date: Thu Nov 20 20:28:00 2008 -0800 dummy: convert to net_device_ops Convert to new network device ops interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 008298231abbeb91bc7be9e8b078607b816d1a4a Author: Stephen Hemminger Date: Thu Nov 20 20:14:53 2008 -0800 netdev: add more functions to netdevice ops This patch moves neigh_setup and hard_start_xmit into the network device ops structure. For bisection, fix all the previously converted drivers as well. Bonding driver took the biggest hit on this. Added a prefetch of the hard_start_xmit in the fast path to try and reduce any impact this would have. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1725b82a6e2721612a3572d0336f51f1f1c3cf54 Author: Takashi Iwai Date: Fri Nov 21 02:25:48 2008 +0100 ALSA: hda - make laptop-eapd model back for AD1986A The changes specific for Samsung laptops seem unapplicable to other hardware models like ASUS. The mic inputs are lost on such hardware by the change 5d5d5f43f1b835c375de9bd270cce030d16e2871. This patch adds back the old laptop-eapd model, and create a new model "samsung" for the new one specific to Samsung laptops with automatic mic selection feature. Reference: kernel bugzilla #12070 http://bugzilla.kernel.org/show_bug.cgi?id=12070 Signed-off-by: Takashi Iwai commit 6ab33d51713d6d60c7677c0d020910a8cb37e513 Merge: 7be6065... 13d428a... Author: David S. Miller Date: Thu Nov 20 16:44:00 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/ixgbe/ixgbe_main.c include/net/mac80211.h net/phonet/af_phonet.c commit 7cc45e64323c8a1042f56e6a8d1dc982f98d52a8 Author: Steven Rostedt Date: Sat Nov 15 02:39:05 2008 -0500 powerpc/ppc32: ftrace, dynamic ftrace to handle modules Impact: add ability to trace modules on 32 bit PowerPC This patch performs the necessary trampoline calls to handle modules with dynamic ftrace on 32 bit PowerPC. Signed-off-by: Steven Rostedt commit f48cb8b48b0b10025ca9c451b9b32cac3fcd33ba Author: Steven Rostedt Date: Fri Nov 14 20:47:03 2008 -0800 powerpc/ppc64: ftrace, handle module trampolines for dyn ftrace Impact: Allow 64 bit PowerPC to trace modules with dynamic ftrace This adds code to handle the PPC64 module trampolines, and allows for PPC64 to use dynamic ftrace. Thanks to Paul Mackerras for these updates: - fix the mod and rec->arch.mod NULL checks. - fix to is_bl_op compare. Thanks to Milton Miller for: - finding the nasty race with using two nops, and recommending instead that I use a branch 8 forward. Signed-off-by: Steven Rostedt commit e4486fe316895e87672a563c4f36393218f84ff1 Author: Steven Rostedt Date: Fri Nov 14 16:21:20 2008 -0800 powerpc: ftrace, use probe_kernel API to modify code Impact: use cleaner probe_kernel API over assembly Using probe_kernel_read/write interface is a much cleaner approach than the current assembly version. Signed-off-by: Steven Rostedt commit 8fd6e5a8c81e2e9b912ea33c8425a10729db469b Author: Steven Rostedt Date: Fri Nov 14 16:21:19 2008 -0800 powerpc: ftrace, convert to new dynamic ftrace arch API Impact: update to PowerPC ftrace arch API This patch converts PowerPC to use the new dynamic ftrace arch API. Thanks to Paul Mackennas for pointing out the mistakes of my original test_24bit_addr function. Signed-off-by: Steven Rostedt commit 6d07bb47354174a9b52d3b03f9e38b069a93d341 Author: Steven Rostedt Date: Fri Nov 14 16:21:19 2008 -0800 powerpc: ftrace, do not latency trace idle Impact: fix for irq off latency tracer When idle is called, interrupts are disabled, but the idle function will still wake up on an interrupt. The problem is that the interrupt disabled latency tracer will take this call to idle as a latency. This patch disables the latency tracing when going into idle. Signed-off-by: Steven Rostedt commit dcd072e26055de600cecdc3f7a1e083ecd55c2e4 Author: Alexander van Heukelum Date: Thu Nov 20 14:40:11 2008 +0100 x86: clean up after: move entry_64.S register saving out of the macros This add-on patch to x86: move entry_64.S register saving out of the macros visually cleans up the appearance of the code by introducing some basic helper macro's. It also adds some cfi annotations which were missing. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit 018a7bf1e55000dd792194238c9043918d24d3dd Author: Andy Whitcroft Date: Thu Nov 20 15:59:56 2008 +0100 netfilter: ip{,6}t_policy.h should include xp_policy.h It seems that all of the include/netfilter_{ipv4,ipv6}/{ipt,ip6t}_*.h which share constants include the corresponding include/netfilter/xp_*.h files. Neither ipt_policy.h not ip6t_policy.h do. Make these consistant with the norm. Signed-off-by: Andy Whitcroft Signed-off-by: Patrick McHardy commit 7be6065b39c3f1cfa796667eac1a2170465acc91 Author: Wang Chen Date: Thu Nov 20 04:26:21 2008 -0800 netdevice wanrouter: Convert directly reference of netdev->priv 1. Make device driver to allocate memory for netdev. 2. Convert all directly reference of netdev->priv to netdev_priv(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 826dd0e1e3c83ce0cd8c295cd0f6e72b8b527809 Author: Wang Chen Date: Thu Nov 20 04:25:06 2008 -0800 netdevice ni65: Convert directly reference of netdev->priv This patch is to kill directly reference of netdev->priv too. Because the private data needs special memory: lower 16MB DMA. alloc_etherdev() can not do this work. So we can't use netdev->priv to point to netdev's private data. Use netdev->ml_priv instead. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit c8019bf3aff653cceb64f66489fc299ee5957b57 Author: Wang Chen Date: Thu Nov 20 04:24:17 2008 -0800 netdevice ppp: Convert directly reference of netdev->priv 1. Use netdev_priv(dev) to replace dev->priv. 2. Alloc netdev's private data by alloc_netdev(). Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit f7b29271c35ed38f990ca3419696ca148349c2d3 Author: Steve Glendinning Date: Thu Nov 20 04:19:21 2008 -0800 smsc95xx: add tx checksum offload support LAN9500 supports tx checksum offload, which slightly decreases cpu utilisation. The benefit isn't very large because we still require the skb to be linearized, but it does save a few cycles. This patch adds support for it, and enables it by default. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit 8761169cf15fdc9336abfddbb9c8dda59d974190 Author: Ben Hutchings Date: Thu Nov 20 04:17:42 2008 -0800 sfc: Fix dependency for SFC_MTD Randy Dunlap found that SFC_MTD was selected when sfc was built-in and the MTD core was a module. Don't allow that combination. Signed-off-by: Ben Hutchings Acked-by: Randy Dunlap Signed-off-by: David S. Miller commit 47a1a1d4be2910b13a8e90f75c17e253c39531ff Author: Patrick McHardy Date: Wed Nov 19 08:03:09 2008 +0000 pkt_sched: remove unnecessary xchg() in packet classifiers The use of xchg() hasn't been necessary since 2.2.something when proper locking was added to packet schedulers. In the case of classifiers they mostly weren't even necessary before that since they're mainly used to assign a NULL pointer to the filter root in the ->destroy path; the root is destroyed immediately after that. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b94c8afcba3ae6584653b98e315446ea83be6ea5 Author: Patrick McHardy Date: Thu Nov 20 04:11:36 2008 -0800 pkt_sched: remove unnecessary xchg() in packet schedulers The use of xchg() hasn't been necessary since 2.2.something when proper locking was added to packet schedulers. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c19d0369d4c791d90fe0b84d6040a897fe25cc14 Author: Harvey Harrison Date: Thu Nov 20 04:10:51 2008 -0800 isdn: isdn_net.c annotate struct ip_ports and trivial sparse fixes Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 13d2a1d2b032de08d7dcab6a1edcd47802681f96 Author: Patrick McHardy Date: Thu Nov 20 04:10:00 2008 -0800 pkt_sched: add DRR scheduler Add classful DRR scheduler as a more flexible replacement for SFQ. The main difference to the algorithm described in "Efficient Fair Queueing using Deficit Round Robin" is that this implementation doesn't drop packets from the longest queue on overrun because its classful and limits are handled by each individual child qdisc. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 0c19b0adb8dd33dbd10ff48e41971231c486855c Author: Patrick McHardy Date: Thu Nov 20 04:08:29 2008 -0800 netlink: avoid memset of 0 bytes sparse warning A netlink attribute padding of zero triggers this sparse warning: include/linux/netlink.h:245:8: warning: memset with byte count of 0 Avoid the memset when the size parameter is constant and requires no padding. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c0103606b7e3db191dcbaf988f28fa26aa711230 Author: Wang Chen Date: Thu Nov 20 04:05:56 2008 -0800 netdevice lance: Convert directly reference of netdev->priv This patch is to kill directly reference of netdev->priv too. Because the private data should be allocated in DMA area, alloc_etherdev() can't satisfy this needs. Use netdev->ml_priv to point to lance_private. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 537715226408b83c36b0688a1fb718f572d4dbe6 Author: Lennert Buytenhek Date: Thu Nov 20 03:59:04 2008 -0800 mv643xx_eth: calculate descriptor pointer only once in rxq_refill() Signed-off-by: Lennert Buytenhek Signed-off-by: David S. Miller commit f61e5547763338b793ed291f3de3130216d00430 Author: Lennert Buytenhek Date: Thu Nov 20 03:58:46 2008 -0800 mv643xx_eth: move receive error handling out of line Signed-off-by: Lennert Buytenhek Signed-off-by: David S. Miller commit 66e63ffbc04706568d8789cbb00eaa8ddbcae648 Author: Lennert Buytenhek Date: Thu Nov 20 03:58:27 2008 -0800 mv643xx_eth: implement ->set_rx_mode() Currently, if multiple unicast addresses are programmed into a mv643xx_eth interface, the core networking will resort to enabling promiscuous mode on the interface, as mv643xx_eth does not implement ->set_rx_mode(). This patch switches mv643xx_eth over from ->set_multicast_list() to ->set_rx_mode(), and implements support for secondary unicast addresses. The hardware can handle multiple unicast addresses as long as their first 11 nibbles are the same (i.e. are of the form xx:xx:xx:xx:xx:xy where the x part is the same for all addresses), so if that is the case, we use that mode. If it's not the case, we enable unicast promiscuous mode in the hardware, which is slightly better than enabling promiscuous mode for multicasts as well, which is what would happen before. While we are at it, change the programming sequence so that we don't clear all filter bits first, so we don't lose all incoming packets while the filter is being reprogrammed. Signed-off-by: Lennert Buytenhek Signed-off-by: David S. Miller commit 66823b928d746df21485deeff6744c77702abf29 Author: Lennert Buytenhek Date: Thu Nov 20 03:58:09 2008 -0800 mv643xx_eth: inline txq_alloc_desc_index() Since txq_alloc_desc_index() is a very simple function, and since descriptor ring index handling for transmit reclaim, receive processing and receive refill is already handled inline as well, inline txq_alloc_desc_index() into its two call sites. Signed-off-by: Lennert Buytenhek Signed-off-by: David S. Miller commit 37a6084f4b4693a408ac2fb229843af9f9f301ce Author: Lennert Buytenhek Date: Thu Nov 20 03:57:36 2008 -0800 mv643xx_eth: introduce per-port register area pointer The mv643xx_eth driver uses the rdl()/wrl() macros to read and write hardware registers. Per-port registers are accessed in the following way: #define PORT_STATUS(p) (0x0444 + ((p) << 10)) [...] static inline u32 rdl(struct mv643xx_eth_private *mp, int offset) { return readl(mp->shared->base + offset); } [...] port_status = rdl(mp, PORT_STATUS(mp->port_num)); By giving the per-port 'struct mv643xx_eth_private' its own 'void __iomem *base' pointer that points to the per-port register area, we can get rid of both the double indirection and the << 10 that is done for every per-port register access -- this patch does that. Signed-off-by: Lennert Buytenhek Signed-off-by: David S. Miller commit 10a9948d13eb51d757684da4354cf67891dc3481 Author: Lennert Buytenhek Date: Thu Nov 20 03:57:16 2008 -0800 mv643xx_eth: checkpatch fixes Fix up a couple of coding style issues caught by checkpatch. Signed-off-by: Lennert Buytenhek Signed-off-by: David S. Miller commit 21d1a161f6b1fff154e3614a6b5a2111fa7a4191 Author: Harvey Harrison Date: Thu Nov 20 01:54:27 2008 -0800 net: ip_sockglue.c add static, annotate ports' endianness Fixes sparse warnings: net/ipv4/ip_sockglue.c:146:15: warning: incorrect type in assignment (different base types) net/ipv4/ip_sockglue.c:146:15: expected restricted __be16 [assigned] [usertype] sin_port net/ipv4/ip_sockglue.c:146:15: got unsigned short [unsigned] [short] [usertype] net/ipv4/ip_sockglue.c:130:6: warning: symbol 'ip_cmsg_recv_dstaddr' was not declared. Should it be static? Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 00b5e50549aa9da770f1161907b4ed68aa4ece3a Author: Brice Goglin Date: Thu Nov 20 01:50:28 2008 -0800 myri10ge: remove hardcoded sram_size Removes the use of a hardcoded sram_size, determine string_spec location from the MCP header instead. Signed-off-by: Brice Goglin Signed-off-by: David S. Miller commit d6279c88f246adf94b7f7a014c5f19d527bc785b Author: Brice Goglin Date: Thu Nov 20 01:50:04 2008 -0800 myri10ge: fix per-slice rx/tx_dropped counters Properly attribute transmit and receive drops by incrementing the per-slice counter. Signed-off-by: Brice Goglin Signed-off-by: David S. Miller commit d99015b1abbad743aa049b439c1e1dede6d0fa49 Author: Alexander van Heukelum Date: Wed Nov 19 01:18:11 2008 +0100 x86: move entry_64.S register saving out of the macros Here is a combined patch that moves "save_args" out-of-line for the interrupt macro and moves "error_entry" mostly out-of-line for the zeroentry and errorentry macros. The save_args function becomes really straightforward and easy to understand, with the possible exception of the stack switch code, which now needs to copy the return address of to the calling function. Normal interrupts arrive with ((~vector)-0x80) on the stack, which gets adjusted in common_interrupt: : (5) addq $0xffffffffffffff80,(%rsp) /* -> ~(vector) */ (4) sub $0x50,%rsp /* space for registers */ (5) callq ffffffff80211290 (5) callq ffffffff80214290 : ... An apic interrupt stub now look like this: : (5) pushq $0xffffffffffffff05 /* ~(vector) */ (4) sub $0x50,%rsp /* space for registers */ (5) callq ffffffff80211290 (5) callq ffffffff80212b8f (5) jmpq ffffffff80211f93 Similarly the exception handler register saving function becomes simpler, without the need of any parameter shuffling. The stub for an exception without errorcode looks like this: : (6) callq *0x1cad12(%rip) # ffffffff803dd448 (2) pushq $0xffffffffffffffff /* no syscall */ (4) sub $0x78,%rsp /* space for registers */ (5) callq ffffffff8030e3b0 (3) mov %rsp,%rdi /* pt_regs pointer */ (2) xor %esi,%esi /* no error code */ (5) callq ffffffff80213446 (5) jmpq ffffffff8030e460 And one for an exception with errorcode like this: : (6) callq *0x1cab92(%rip) # ffffffff803dd448 (4) sub $0x78,%rsp /* space for registers */ (5) callq ffffffff8030e3b0 (3) mov %rsp,%rdi /* pt_regs pointer */ (5) mov 0x78(%rsp),%rsi /* load error code */ (9) movq $0xffffffffffffffff,0x78(%rsp) /* no syscall */ (5) callq ffffffff80213209 (5) jmpq ffffffff8030e460 Unfortunately, this last type is more than 32 bytes. But the total space savings due to this patch is about 2500 bytes on an smp-configuration, and I think the code is clearer than it was before. The tested kernels were non-paravirt ones (i.e., without the indirect call at the top of the exception handlers). Anyhow, I tested this patch on top of a recent -tip. The machine was an 2x4-core Xeon at 2333MHz. Measured where the delays between (almost-)adjacent rdtsc instructions. The graphs show how much time is spent outside of the program as a function of the measured delay. The area under the graph represents the total time spent outside the program. Eight instances of the rdtsctest were started, each pinned to a single cpu. The histogams are added. For each kernel two measurements were done: one in mostly idle condition, the other while running "bonnie++ -f", bound to cpu 0. Each measurement took 40 minutes runtime. See the attached graphs for the results. The graphs overlap almost everywhere, but there are small differences. Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit c032a2de4c1a82187e9a754511043be47c8a92b5 Merge: 722024d... cbe9ee0... Author: Ingo Molnar Date: Thu Nov 20 10:48:28 2008 +0100 Merge branch 'x86/cleanups' into x86/irq [ merged x86/cleanups into x86/irq to enable a wider IRQ entry code patch to be applied, which depends on a cleanup patch in x86/cleanups. ] commit 87f7606591aea6a8a38ea4c8911b5eeeee2740b8 Author: Yinghai Lu Date: Wed Nov 19 20:50:53 2008 -0800 x86: fix wakeup_cpu with numaq/es7000 v2 - call ->update_genapic() Impact: fix boot crash on 32-bit Hiroshi Shimamoto reported a boot failure on 32-bit x86. The setting of x86_quirks.wakeup_cpu is missing (when not passing in an explicit apic= boot parameter). Reported-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit a61fc1e995e6ccc884df50a1609b831a4b45a600 Author: Mike Frysinger Date: Mon Nov 17 21:23:40 2008 +0000 netdev/smc91x: unify Blackfin code a bit and use proper read/write functions Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: David S. Miller commit 3d3e35aa78c9498eed3209c9d82376085ed0c36f Author: Gerrit Renker Date: Thu Nov 20 01:03:08 2008 -0800 dccp: Fix bracing in dccp_feat_list_lookup. From: Gerrit Renker Signed-off-by: David S. Miller commit f4bdd264b43cc60dccb617afce2859dffdd7a935 Author: Wang Chen Date: Thu Nov 20 01:02:05 2008 -0800 netdevice hamradio: Convert directly reference of netdev->priv Since all the memory, which pointed by netdev->priv, are allocated in advance instead of by alloc_netdev(). Use netdev->ml_priv to point to those memory. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 56bc0f9603e45cf13db51e554e1541e289a7f8e9 Author: Alexey Dobriyan Date: Thu Nov 20 10:01:37 2008 +0100 netfilter: nf_conntrack_proto_gre: spread __exit Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit f3a216d1da1c034c425c4eafe27a1b45269985c7 Author: Wang Chen Date: Thu Nov 20 01:01:00 2008 -0800 netdevice: 82596: Convert netdev->priv to netdev_priv 1. When alloc_etherdev(), no memory be allocated to netdev->priv. 2. And it's need to get a whole page for priv. For these reasons, use netdev->ml_priv to point to the page is the best method to convert directly reference of netdev->priv. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 61d3015808d877eb4ea225b5924feb128b0c1bc7 Author: Alexey Dobriyan Date: Thu Nov 20 09:58:08 2008 +0100 netfilter: ip6table_filter: merge LOCAL_IN and FORWARD hooks Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit b0ceb560a4119f187dc50da655be389cb54ae4f9 Author: Alexey Dobriyan Date: Thu Nov 20 09:57:01 2008 +0100 netfilter: xt_recent: don't save proc dirs Not needed, since creation and removal are done by name. Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit d214c7537bbf2f247991fb65b3420b0b3d712c67 Author: Pablo Neira Ayuso Date: Thu Nov 20 00:49:27 2008 -0800 filter: add SKF_AD_NLATTR_NEST to look for nested attributes SKF_AD_NLATTR allows us to find the first matching attribute in a stream of netlink attributes from one offset to the end of the netlink message. This is not suitable to look for a specific matching inside a set of nested attributes. For example, in ctnetlink messages, if we look for the CTA_V6_SRC attribute in a message that talks about an IPv4 connection, SKF_AD_NLATTR returns the offset of CTA_STATUS which has the same value of CTA_V6_SRC but outside the nest. To differenciate CTA_STATUS and CTA_V6_SRC, we would have to make assumptions on the size of the attribute and the usual offset, resulting in horrible BSF code. This patch adds SKF_AD_NLATTR_NEST, which is a variant of SKF_AD_NLATTR, that looks for an attribute inside the limits of a nested attributes, but not further. This patch validates that we have enough room to look for the nested attributes - based on a suggestion from Patrick McHardy. Signed-off-by: Pablo Neira Ayuso Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 68fd991020fdf51bc94327d288ae4ae5d0b8dced Author: Alexander Duyck Date: Thu Nov 20 00:48:10 2008 -0800 igb: Fix tx/rx_ring_count parameters for igb on suspend/resume/ring resize When suspending the device the ring structure is freed which causes it to loose track of the count. To resolve this we need to move the ring count outside of the ring structure and store it in the adapter struct. In addition to resolving the suspend/resume issue this patch also addresses issues seen in the event of memory allocation errors causing uneven ring sizes on multiple queues. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit b2d565365e02947699a8e3d594275662a8d00646 Author: Alexander Duyck Date: Thu Nov 20 00:47:34 2008 -0800 igb: simplify swap in clean_rx_irq if using packet split This update replaces the xchg calls that were added with a pair of assignments as there is no need for the xchg calls and they were found to cause issues on some architectures. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 3ef6b2354f5ac340396e47a49b64b8da61ada3b7 Author: Alexander Duyck Date: Thu Nov 20 00:46:57 2008 -0800 igb: update name to reflect new hardware This patch adds the 82576 device to the description for igb in Kconfig. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 5caea4ea7088e80ac5410d04660346094608b909 Author: Eric Dumazet Date: Thu Nov 20 00:40:07 2008 -0800 net: listening_hash get a spinlock per bucket This patch prepares RCU migration of listening_hash table for TCP/DCCP protocols. listening_hash table being small (32 slots per protocol), we add a spinlock for each slot, instead of a single rwlock for whole table. This should reduce hold time of readers, and writers concurrency. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit bb5574608a8375026510b4f983ffbb06ece33fe2 Author: Richard A. Holden III Date: Wed Nov 19 16:05:15 2008 -0700 x86: fix arch/x86/kernel/setup.c build warning when !CONFIG_X86_RESERVE_LOW_64K Impact: cleanup Fix: arch/x86/kernel/setup.c:592: warning: 'dmi_low_memory_corruption' defined but not used this is only used if CONFIG_X86_RESERVE_LOW_64K is defined. Signed-off-by: Richard A. Holden III Signed-off-by: Ingo Molnar commit 90accd6fabf9b2fa2705945a4c601877a75d43bf Merge: b43d196... ee2f6cc... Author: Ingo Molnar Date: Thu Nov 20 09:03:38 2008 +0100 Merge branch 'linus' into x86/memory-corruption-check commit 77be80e437fec44f8b7a620314b7d7b605b8d93b Author: Richard A. Holden III Date: Wed Nov 19 16:05:14 2008 -0700 x86: fix arch/x86/kernel/genx2apic_uv_x.c build warning when !CONFIG_HOTPLUG_CPU Impact: cleanup, reduce size of the kernel image a bit Fix: arch/x86/kernel/genx2apic_uv_x.c:403: warning: 'uv_heartbeat_disable' defined but not used the function is only used when CONFIG_HOTPLUG_CPU is defined. Signed-off-by: Richard A. Holden III Signed-off-by: Ingo Molnar commit fbc2a06056c9aa3cb8c44bf1cfeb1d260e229e5c Merge: a3d732f... ee2f6cc... Author: Ingo Molnar Date: Thu Nov 20 09:02:39 2008 +0100 Merge branch 'linus' into x86/uv commit 5b2d1ecac2a79b9438aed731557b8912564cedfd Author: Vincent Petry Date: Tue Nov 18 22:21:57 2008 +0800 ALSA: hda: Added Realtek ALC888 model entry for Acer Aspire 4930G laptop Added Realtek ALC888 model entry for the Acer Aspire 4930G laptop that fixes the following features: - internal microphone - heaphone jack sense - channel mode Signed-off-by: Vincent Petry Signed-off-by: Takashi Iwai commit 41dda0fdd2cb22d989aa76fbbbd5a6514a3e0802 Author: Wu Fengguang Date: Thu Nov 20 09:24:52 2008 +0800 ALSA: azx_probe() cleanup Replace 5 free-and-return-err blocks with goto-out-free ones. This makes the main logic more outstanding. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit d8b83c57a7e497cba9b5cb156e63176323035785 Author: Stephen Hemminger Date: Wed Nov 19 22:28:46 2008 -0800 acenic: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 2c9171d4ef431d8ed897daf4fee6798979cbb432 Author: Stephen Hemminger Date: Wed Nov 19 22:27:43 2008 -0800 niu: convert to net_device_ops Convert this driver to network device ops. Compile tested only (give me hw!) Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b94426bd9d16fb2753ada1255c7a432f49dfebcb Author: Stephen Hemminger Date: Wed Nov 19 22:26:51 2008 -0800 forcedeth: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 7c7d64b8c00bcf9519e5ec38368bc7afdc185c51 Author: Stephen Hemminger Date: Wed Nov 19 22:25:36 2008 -0800 tg3: convert to net_device_ops Convert this driver to network device ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0edc352743156a39dfc3f21206b2bf7b9f371832 Author: Stephen Hemminger Date: Wed Nov 19 22:24:29 2008 -0800 ixgb: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit afe29f7a61b7b9b9dae9f443c34733c2b4f461ba Author: Stephen Hemminger Date: Wed Nov 19 22:23:26 2008 -0800 enic: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 52256cfc9f81cd8713e00a0713e68347bbffba5a Author: Stephen Hemminger Date: Wed Nov 19 22:22:30 2008 -0800 ppp: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit acc784263b0c46f3052fb4f155fdfe39b7001c98 Author: Stephen Hemminger Date: Wed Nov 19 22:21:53 2008 -0800 e100: convert to net_device_ops Convert to new network device ops interface. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 2e5c69228ef52b8fe6b3d38caf45f03b22fda7bd Author: Stephen Hemminger Date: Wed Nov 19 22:20:44 2008 -0800 igb: convert to net_device_ops Convert to new network device ops interface. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 39a11bd9102cf8601f02d595dc022b715103afde Author: Stephen Hemminger Date: Wed Nov 19 22:19:33 2008 -0800 via-velocity: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 0e7614bc3df034e2f92e0d424cc6f81dcdb7af65 Author: Stephen Hemminger Date: Wed Nov 19 22:18:22 2008 -0800 e1000: convert to net_device_ops Convert to new network device ops interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 80ff32b76f7969bf62206840c4e1d04674e41df9 Author: Stephen Hemminger Date: Wed Nov 19 22:17:06 2008 -0800 cxgb2: convert to net_device_ops Convert this driver to network device ops. Compile teseted only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit dd7526960ec2a7c85a5b8bfae8f297d317bf4b86 Author: Stephen Hemminger Date: Wed Nov 19 22:15:39 2008 -0800 cxgb3: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 825a84d1d3d612c2b8db77dd4719882690d01bae Author: Stephen Hemminger Date: Wed Nov 19 22:14:17 2008 -0800 atlx: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1e058ab58f03fedbd2aa202c3a81c777d623be3a Author: Stephen Hemminger Date: Wed Nov 19 22:12:06 2008 -0800 atl1e: convert to net_device_ops Convert this driver to network device ops. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 758e43b74c903ad368ceced31601ba5d96f31238 Author: Stephen Hemminger Date: Wed Nov 19 22:10:37 2008 -0800 tun: convert to net_device_ops Convert the TUN/TAP tunnel driver to net_device_ops. Split the ops in two, and retain compatability. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 48dfcde46ef23cfad1e0c0f13d4eae15c7f46efc Author: Stephen Hemminger Date: Wed Nov 19 22:09:07 2008 -0800 8139: convert to net_device_ops Convert to new network device ops interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8b4ab28dae8afa14f22d210c591046def2f4d742 Author: Francois Romieu Date: Wed Nov 19 22:05:25 2008 -0800 r8169: convert to net_device_ops Based upon a patch by Stephen Hemminger. Signed-off-by: David S. Miller commit f80d032b5fe95e3ce89f79210859b7ec799e1ccc Author: Stephen Hemminger Date: Wed Nov 19 22:01:26 2008 -0800 skge: convert to net_device_ops Convert to new network device ops interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1436b301ec2b184fc01dc29fa22d1fbac619b491 Author: Stephen Hemminger Date: Wed Nov 19 21:59:54 2008 -0800 sky2: convert to net_device_ops Convert to new network device ops interface. Slight additional complexity here because the second port does not allow netpoll and therefore has different virtual function table. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 651c24669316b955c3c7797bd535cdaa4533cb16 Author: Stephen Hemminger Date: Wed Nov 19 21:57:48 2008 -0800 e1000e: convert to net_device_ops Convert e1000e to network device ops. Signed-off-by: Stephen Hemminger commit eb7cc59a038b4e1914ae991d313f35904924759f Author: Stephen Hemminger Date: Wed Nov 19 21:56:05 2008 -0800 bonding: convert to net_device_ops Convert to net_device_ops table. Note: for some operations move error checking into generic networking layer (rather than looking at pointers in bonding). A couple of gratituous style cleanups to get rid of extra {} Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 656299f706e52e0409733d704c2761f1b12d6954 Author: Stephen Hemminger Date: Wed Nov 19 21:53:47 2008 -0800 vlan: convert to net_device_ops Convert vlan devices and function pointers to net_device_ops. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 5bc3eb7e2f0026f246d939851109df99e8e9f64a Author: Stephen Hemminger Date: Wed Nov 19 21:52:05 2008 -0800 ip: convert to net_device_ops for ioctl Convert to net_device_ops function table pointer for ioctl. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 54a30c975b6b27c0c9268461b647576b146d39bb Author: Stephen Hemminger Date: Wed Nov 19 21:51:06 2008 -0800 macvlan: convert to net_device_ops Convert to net_device_ops function table. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 4456e7bdf74c9f27e2312a6f197b2da467541433 Author: Stephen Hemminger Date: Wed Nov 19 21:50:10 2008 -0800 veth: convert to net_device_ops Convert to net_device_ops function table. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit a2dbb88210b9877f1c53d3798fd5d717a4d45256 Author: Stephen Hemminger Date: Wed Nov 19 21:49:00 2008 -0800 bridge: convert to net_device_ops Convert to net_device_ops function table. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8dfcdf342d9e8294a3292005f9158022289dfd67 Author: Stephen Hemminger Date: Wed Nov 19 21:47:07 2008 -0800 ifb: convert to net_device_ops Convert to new network device ops interface. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit c02373bf2759dd210dc8c72c9c9b4a8f1c279cac Author: Stephen Hemminger Date: Wed Nov 19 21:46:18 2008 -0800 netdev: convert loopback to net_device_ops First device to convert over is the loopback device. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit ccad637b0c57de1825ffd34c311bf71487545ac2 Author: Stephen Hemminger Date: Wed Nov 19 22:42:31 2008 -0800 netdev: expose ethernet address primitives When ethernet devices are converted, the function pointer setup by eth_setup() need to be done during intialization. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit eeda3fd64f75bcbfaa70ce946513abaf3f23b8e0 Author: Stephen Hemminger Date: Wed Nov 19 21:40:23 2008 -0800 netdev: introduce dev_get_stats() In order for the network device ops get_stats call to be immutable, the handling of the default internal network device stats block has to be changed. Add a new helper function which replaces the old use of internal_get_stats. Note: change return code to make it clear that the caller should not go changing the returned statistics. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d314774cf2cd5dfeb39a00d37deee65d4c627927 Author: Stephen Hemminger Date: Wed Nov 19 21:32:24 2008 -0800 netdev: network device operations infrastructure This patch changes the network device internal API to move adminstrative operations out of the network device structure and into a separate structure. This patch involves some hackery to maintain compatablity between the new and old model, so all 300+ drivers don't have to be changed at once. For drivers that aren't converted yet, the netdevice_ops virt function list still resides in the net_device structure. For old protocols, the new net_device_ops are copied out to the old net_device pointers. After the transistion is completed the nag message can be changed to an WARN_ON, and the compatiablity code can be made configurable. Some function pointers aren't moved: * destructor can't be in net_device_ops because it may need to be referenced after the module is unloaded. * neighbor setup is manipulated in a couple of places that need special consideration * hard_start_xmit is in the fast path for transmit. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 6b41e7dd90c6a628ab5fb8d781302d60a243b2ce Author: Eric Dumazet Date: Wed Nov 19 15:48:09 2008 -0800 net: af_unix should use KERN_INFO instead of KERN_DEBUG As spotted by Joe Perches, we should use KERN_INFO in unix_sock_destructor() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit d171235e712c11c0a0f47f62619024bf726125e1 Author: Joe Perches Date: Wed Nov 19 15:45:15 2008 -0800 drivers/s390/ - csum_partial - remove unnecessary casts The first argument to csum_partial is const void * casts to char/u8 * are not necessary Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 07f0757a6808f2f36a0e58c3a54867ccffdb8dc9 Author: Joe Perches Date: Wed Nov 19 15:44:53 2008 -0800 include/net net/ - csum_partial - remove unnecessary casts The first argument to csum_partial is const void * casts to char/u8 * are not necessary Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit a7a0d6a87b70f7b2bab5281fc0fd443772bd0795 Author: Eric Dumazet Date: Wed Nov 19 15:43:27 2008 -0800 net: inet_diag_handler structs can be const Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 14e943db133489c98d426a0dcfce4a99c6e8ad97 Author: Eric Dumazet Date: Wed Nov 19 15:14:01 2008 -0800 net: make /proc/net/protocols namespace aware Converting /proc/net/protocols to be namespace aware is quite easy and permits us to use sock_prot_inuse_get(). This provides seperate counters for each protocol. For example we can really count TCPv6 sockets and TCPv4 sockets, while previously, we had the same value, and this value was not namespace aware. Signed-off-by: Eric Dumazet Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 3680453c8be54fff0d23fdf33e8961a48e1f2cd6 Author: Eric Dumazet Date: Wed Nov 19 14:25:35 2008 -0800 net: af_packet should update its inuse counter This patch is a preparation to namespace conversion of /proc/net/protocols In order to have relevant information for PACKET protocols, we should use sock_prot_inuse_add() to update a (percpu and pernamespace) counter of inuse sockets. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 9789cfe22e5d7bc10cad841a4ea96ecedb34b267 Author: Randy Dunlap Date: Wed Nov 19 11:46:46 2008 -0800 nfsctl: add headers for credentials Needs headers help for current_cred: Adding only cred.h wasn't enough. linux-next-20081023/fs/nfsctl.c:45: error: implicit declaration of function 'current_cred' Signed-off-by: Randy Dunlap Cc: David Howells Cc: James Morris Signed-off-by: Andrew Morton Signed-off-by: James Morris commit 7596b27dbd8de7bcfa7a80b2756114b49bd5c018 Author: Randy Dunlap Date: Wed Nov 19 11:30:27 2008 -0800 coda: fix creds reference Needs a header file for credentials struct: linux-next-20081023/fs/coda/file.c:177: error: dereferencing pointer to incomplete type Signed-off-by: Randy Dunlap Cc: Jan Harkes Cc: David Howells Cc: James Morris Signed-off-by: Andrew Morton Signed-off-by: James Morris commit ec4e0e2fe018992d980910db901637c814575914 Author: Ken Chen Date: Tue Nov 18 22:41:57 2008 -0800 sched: fix inconsistency when redistribute per-cpu tg->cfs_rq shares Impact: make load-balancing more consistent In the update_shares() path leading to tg_shares_up(), the calculation of per-cpu cfs_rq shares is rather erratic even under moderate task wake up rate. The problem is that the per-cpu tg->cfs_rq load weight used in the sd_rq_weight aggregation and actual redistribution of the cfs_rq->shares are collected at different time. Under moderate system load, we've seen quite a bit of variation on the cfs_rq->shares and ultimately wildly affects sched_entity's load weight. This patch caches the result of initial per-cpu load weight when doing the sum calculation, and then pass it down to update_group_shares_cpu() for redistributing per-cpu cfs_rq shares. This allows consistent total cfs_rq shares across all CPUs. It also simplifies the rounding and zero load weight check. Signed-off-by: Ken Chen Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 9b0db7e7fd20d5a38844e9435f7d4246ea44978a Author: Mark Brown Date: Tue Nov 18 22:17:49 2008 +0000 ASoC: Convert blackfin machines to use DAI accessor functions Signed-off-by: Mark Brown commit d0c36631bbee9eb89f2fe4251e0e9583f37156cd Author: Mark Brown Date: Tue Nov 18 21:57:17 2008 +0000 ASoC: s3c24xx_uda134x DAI accessor functions and static cleanup Missed these during review. Signed-off-by: Mark Brown commit df573d2fd1b077b98ffc3eb62a9908075e69e578 Author: Arun KS Date: Wed Nov 19 17:45:19 2008 +0530 ASoC: Add support for omap2evm board This patch adds twl4030 audio support on omap2evm Signed-off-by: Arun KS Signed-off-by: Mark Brown commit 08bd16869645f435eba6a612d166532b3047c5f7 Author: Hugo Villeneuve Date: Wed Nov 19 01:37:32 2008 -0500 ASoC: Add driver for the Lyrtech SFFSDR board The PCM3008 is used on the Lyrtech SFFSDR board, in conjunction with an FPGA that generates the bit clock and the master clock [Downgraded the rate debug print to pr_debug() in hw_params, converted asm/gpio.h to linux/gpio.h -- broonie] Signed-off-by: Hugo Villeneuve Signed-off-by: Mark Brown commit 1c0090c280da18f79e3e94168b5f3bfe4eb5f1c8 Author: Hugo Villeneuve Date: Wed Nov 19 01:37:31 2008 -0500 ASoC: Add PCM3008 ALSA SoC driver The PCM3008 is a 16-bit stereo audio codec. It accepts left-justified format for ADC, and right-justified format for DAC. Independent power-down modes for ADC and DAC are provided, as well as a digital de-emphasis filter (4 modes). [Merged Makefile & Kconfig, changed asm/gpio.h to linux/gpio.h -- broonie] Signed-off-by: Hugo Villeneuve Signed-off-by: Mark Brown commit 8563964617a6685d790448d9d7e45b49be90a448 Author: Takashi Iwai Date: Wed Nov 19 14:14:50 2008 +0100 ALSA: hda - Show missing GPIO unsol bits The GPIO unsolicited event bits are read but not shown in the proc file. Let's fix it. Signed-off-by: Takashi Iwai commit 60a515132086b2c28a8141d873297fdf7a180ca7 Author: Andrew Morton Date: Tue Nov 18 22:20:10 2008 -0800 profiling: clean up profile_nop() Impact: cleanup No point in inlining this. Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar commit 9676e73a9e0cbdc521e1ebf4e13e6e5aada34247 Merge: 5a209c2... 86fa2f6... 6d5b43a... Author: Ingo Molnar Date: Wed Nov 19 10:04:25 2008 +0100 Merge branches 'tracing/ftrace' and 'tracing/urgent' into tracing/core Conflicts: kernel/trace/ftrace.c [ We conflicted here because we backported a few fixes to tracing/urgent - which has different internal APIs. ] commit 86fa2f60674540df0b34f5c547ed0c1cf3a8f212 Author: Ingo Molnar Date: Wed Nov 19 10:00:15 2008 +0100 ftrace: fix selftest locking Impact: fix self-test boot crash Self-test failure forgot to re-lock the BKL - crashing the next initcall: Testing tracer irqsoff: .. no entries found ..FAILED! initcall init_irqsoff_tracer+0x0/0x11 returned 0 after 3906 usecs calling init_mmio_trace+0x0/0xf @ 1 ------------[ cut here ]------------ Kernel BUG at c0c0a915 [verbose debug info unavailable] invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC last sysfs file: Pid: 1, comm: swapper Not tainted (2.6.28-rc5-tip #53704) EIP: 0060:[] EFLAGS: 00010286 CPU: 1 EIP is at unlock_kernel+0x10/0x2b EAX: ffffffff EBX: 00000000 ECX: 00000000 EDX: f7030000 ESI: c12da19c EDI: 00000000 EBP: f7039f54 ESP: f7039f54 DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 Process swapper (pid: 1, ti=f7038000 task=f7030000 task.ti=f7038000) Stack: f7039f6c c0164d30 c013fed8 a7d8d7b4 00000000 00000000 f7039f74 c12fb78a f7039fd0 c0101132 c12fb77d 00000000 6f727200 6f632072 2d206564 c1002031 0000000f f7039fa2 f7039fb0 3531b171 00000000 00000000 0000002f c12ca480 Call Trace: [] ? register_tracer+0x66/0x13f [] ? ktime_get+0x19/0x1b [] ? init_mmio_trace+0xd/0xf [] ? do_one_initcall+0x4a/0x111 [] ? init_mmio_trace+0x0/0xf [] ? init_irq_proc+0x46/0x59 [] ? kernel_init+0x104/0x152 [] ? kernel_init+0x0/0x152 [] ? kernel_thread_helper+0x7/0x10 Code: 58 14 43 75 0a b8 00 9b 2d c1 e8 51 43 7a ff 64 a1 00 a0 37 c1 89 58 14 5b 5d c3 55 64 8b 15 00 a0 37 c1 83 7a 14 00 89 e5 79 04 <0f> 0b eb fe 8b 42 14 48 85 c0 89 42 14 79 0a b8 00 9b 2d c1 e8 EIP: [] unlock_kernel+0x10/0x2b SS:ESP 0068:f7039f54 ---[ end trace a7919e7f17c0a725 ]--- Kernel panic - not syncing: Attempted to kill init! So clean up the flow a bit. Signed-off-by: Ingo Molnar commit 3ac3ba0b396fd99550e08034b0e4c27fdf39c252 Merge: 934352f... 7f0f598... Author: Ingo Molnar Date: Wed Nov 19 09:44:37 2008 +0100 Merge branch 'linus' into sched/core Conflicts: kernel/Makefile commit ae8cb4caa34af20311fcf5ef248afc54407aa9a8 Author: Wu Fengguang Date: Wed Nov 19 15:14:03 2008 +0800 ALSA: hda: compact ELD output messages Strip out some ELD printk messages that end user won't care, and make the output compact. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit d39b4352f2356bde9d4dae8591d4c8022360922f Author: Wu Fengguang Date: Wed Nov 19 15:14:02 2008 +0800 ALSA: hda: make global snd_print_pcm_bits() Introduce a global function snd_print_pcm_bits() and use it in the ELD code. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 06f69d17a90ced7d74ff12ce69b7b101aed4ffd9 Author: Wu Fengguang Date: Wed Nov 19 15:14:01 2008 +0800 ALSA: hda: minor output message cleanups Some minor user visible message cleanups. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 5b87ebb7a79455358c1910f2896112ac0fa0d0fa Author: Wu Fengguang Date: Wed Nov 19 15:14:00 2008 +0800 ALSA: hda: rename sink_eld to hdmi_eld Rename struct sink_eld to hdmi_eld. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 4e19c58f27af67735d64d9af0b184181cea7ca63 Author: Wu Fengguang Date: Wed Nov 19 15:13:59 2008 +0800 ALSA: hda: minor code cleanups Some minor code cleanups. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 198d6ba4d7f48c94f990f4604f0b3d73925e0ded Merge: 9a57f7f... 7f0f598... Author: David S. Miller Date: Tue Nov 18 23:38:23 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/isdn/i4l/isdn_net.c fs/cifs/connect.c commit c6798d2bd1805e32a92ba8db168ec51cdbb534b0 Author: Matthew Ranostay Date: Tue Nov 18 20:54:17 2008 -0500 ALSA: hda: EAPD mute on suspend Moved support for EAPD mute on suspend from stac92hd71xx_suspend to the generic stac92xx_suspend function. Signed-off-by: Matthew Ranostay Signed-off-by: Takashi Iwai commit 9c8641e8ee438273079337c86f4d739fbfdd8b33 Author: Wu Fengguang Date: Wed Nov 19 08:56:18 2008 +0800 ALSA: hda: HDMI channel mapping cleanups Refactor the channel mapping code for consistent naming and make it more informed about channel allocations. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 698544de8a31a7cadc26c27cbaa69ae82dd4f86c Author: Wu Fengguang Date: Wed Nov 19 08:56:17 2008 +0800 ALSA: hda: HDMI channel allocations for audio infoframe To play a 3+ channels LPCM/DSD stream via HDMI, - HDMI sink must tell HDMI source about its speaker placements (via ELD, speaker-allocation field) - HDMI source must tell the HDMI sink about channel allocation (via audio infoframe, channel-allocation field) (related docs: HDMI 1.3a spec section 7.4, CEA-861-D section 7.5.3 and 6.6) This patch attempts to set the CA(channel-allocation) byte in the audio infoframe according to - the number of channels in the current stream - the speakers attached to the HDMI sink A channel_allocations[] line must meet the following two criteria to be considered as a valid candidate for CA: 1) its number of allocated channels = substream->runtime->channels 2) its speakers are a subset of the available ones on the sink side If there are multiple candidates, the first one is selected. This simple policy shall cheat the sink into playing music, but may direct data to the wrong speakers. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 903b21d8b7bb49d3438abdd7b9d4145511e1cba2 Author: Wu Fengguang Date: Wed Nov 19 08:56:16 2008 +0800 ALSA: hda: make global snd_print_channel_allocation() code refactor: make a global function snd_print_channel_allocation(). Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 5457a98039cebf20b564b5c3d73a50615e2b2696 Author: Wu Fengguang Date: Wed Nov 19 08:56:15 2008 +0800 ALSA: hda: make standalone hdmi_fill_audio_infoframe() code refactor: make a standalone function hdmi_fill_audio_infoframe(). Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit cea555d384b85271035814c5adad23e6c7fc5d2a Merge: 78608dd... 7f0f598... Author: Paul Mackerras Date: Wed Nov 19 16:10:32 2008 +1100 Merge branch 'linux-2.6' into next commit 78608dd32ce46789e970d6c3c423cd668c138d6c Author: Milton Miller Date: Fri Oct 10 01:56:50 2008 +0000 powerpc/mpic: Use new smp_request_message_ipi MPIC has 4 ipis, so it can use the new smp_request_message_ipi to reduce pathlength when receiving an ipi. This has the side effect of using the common ipi names, and also continuing to try request the remaining messages when one fails. Signed-off-by: Milton Miller Signed-off-by: Paul Mackerras commit 25ddd738c2ebffb6c2d3cf29c91b986d1bb39c99 Author: Milton Miller Date: Fri Nov 14 20:11:49 2008 +0000 powerpc: Provide a separate handler for each IPI action With the new generic smp call function helpers, I noticed the code in smp_message_recv was a single function call in many cases. While getting the message number from the ipi data is easy, we can reduce the path length by a function and data-dependent switch by registering seperate IPI actions for these simple calls. Originally I left the ipi action array exposed, but then I realized the registration code should be common too. The three users each had their own name array, so I made a fourth to convert all users to use a common one. Signed-off-by: Milton Miller Signed-off-by: Paul Mackerras commit a6326e98a28d8a57f693369c82559543c6950f09 Author: Robert Jennings Date: Fri Nov 14 12:07:34 2008 +0000 powerpc: Correct page-in counter for CMM with 64k pages Linux will report the number of page-ins so that the hypervisor can better determine partition memory pressure. The hardware page size and the OS page size can be different. In the case where the hardware page size is 4k and the OS is running with 64k pages the code in commit 409001948d9f221c94a61c3ee96de112755fc04d ("powerpc: Update page-in counter for CMM") would under-report the number of pages. This corrects the reporting to the hypervisor by incrementing the page_in count by 1 << PAGE_FACTOR each time. Reported-by: Andrew Theurer Signed-off-by: Robert Jennings Signed-off-by: Paul Mackerras commit 22059a90b82d6cd02d488c48c27a4d0ad976c919 Author: Michael Ellerman Date: Wed Nov 12 18:20:43 2008 +0000 powerpc/pmac: Use of_find_node_with_property() in pmac_setup_arch() Signed-off-by: Michael Ellerman Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit ba82efbd3b48cb2a0e03c043911ce44c28f2825a Author: Michael Ellerman Date: Wed Nov 12 18:20:40 2008 +0000 powerpc: Use of_find_node_with_property() in cell_iommu_fixed_mapping_init() Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit 54018178ef05e32f140158cb7d7770b66042d131 Author: Michael Ellerman Date: Wed Nov 12 18:20:37 2008 +0000 powerpc: Use for_each_node_with_property() in of_irq_map_init() Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit 1e291b14c8f1101b9093434489bd4dc0e03f3d0f Author: Michael Ellerman Date: Wed Nov 12 18:54:42 2008 +0000 of: Add helpers for finding device nodes which have a given property This commit adds a routine for finding a device node which has a certain property. The contents of the property are not taken into account, merely the presence or absence of the property. Based on that routine, we add a for_each_ macro for iterating over all nodes that have a certain property. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit ae564c63b8311fa73c21e456e00dba1f4b1ff6bc Author: Nick Piggin Date: Tue Nov 11 17:54:15 2008 +0000 powerpc: Optimise mutex This implements an optimised mutex fastpath for powerpc, making use of acquire and release barrier semantics. This takes the mutex lock+unlock benchmark from 203 to 173 cycles on a G5. Signed-off-by: Nick Piggin Signed-off-by: Paul Mackerras commit 957ab07b44d839ee8267e827fc4e8f1853798f57 Author: Nick Piggin Date: Tue Nov 11 17:51:18 2008 +0000 powerpc: Optimise smp_rmb After commit 598056d5af8fef1dbe8f96f5c2b641a528184e5a ("[POWERPC] Fix rmb to order cacheable vs. noncacheable"), rmb() becomes a sync instruction, which is needed to order cacheable vs noncacheable loads. However smp_rmb() is #defined to rmb(), and smp_rmb() can be an lwsync. This restores smp_rmb() performance by using lwsync there and updates the comments. Signed-off-by: Nick Piggin Signed-off-by: Paul Mackerras commit 46d075be585eae2b74265e4e64ca38dde16a09c6 Author: Nick Piggin Date: Tue Nov 11 17:50:48 2008 +0000 powerpc: Optimise smp_wmb Change 2d1b2027626d5151fff8ef7c06ca8e7876a1a510 ("powerpc: Fixup lwsync at runtime") removed __SUBARCH_HAS_LWSYNC, causing smp_wmb to revert back to eieio for all CPUs. This restores the behaviour intorduced in 74f0609526afddd88bef40b651da24f3167b10b2 ("powerpc: Optimise smp_wmb on 64-bit processors"). Signed-off-by: Nick Piggin Signed-off-by: Paul Mackerras commit a4e22f02f5b6518c1484faea1f88d81802b9feac Author: Mark Nelson Date: Tue Nov 11 00:53:34 2008 +0000 powerpc: Update 64bit __copy_tofrom_user() using CPU_FTR_UNALIGNED_LD_STD In exactly the same way that we updated memcpy() with new feature sections in commit 25d6e2d7c58ddc4a3b614fc5381591c0cfe66556 ("powerpc: Update 64bit memcpy() using CPU_FTR_UNALIGNED_LD_STD"), we do the same thing here for __copy_tofrom_user(). Once again this is purely a performance tweak for Cell and Power6 - this has no effect on all the other 64bit powerpc chips. We can make these same changes to __copy_tofrom_user() because the basic copy algorithm is the same as in memcpy() - this version just has all the exception handling logic needed when copying to or from userspace as well as a special case for copying whole 4K pages that are page aligned. CPU_FTR_UNALIGNED_LD_STD CPU was added in commit 4ec577a28980a0790df3c3dfe9c81f6e2222acfb ("powerpc: Add new CPU feature: CPU_FTR_UNALIGNED_LD_STD"). We also make the same simple one line change from cmpldi r1,... to cmpldi cr1,... for consistency. Signed-off-by: Mark Nelson Signed-off-by: Paul Mackerras commit 7526ff76f84178f8c926de7e590e4c5f9d4a2e62 Author: Hollis Blanchard Date: Mon Nov 10 14:33:36 2008 +0000 powerpc: Remove superfluous WARN_ON() from dma-noncoherent.c I can't tell why this WARN_ON exists, and there's no comment explaining it. Whether the pmd is present or not, pte_alloc_kernel() seems to handle both cases. Booting a 440 kernel with 64K PAGE_SIZE triggers the warning, but boot successfully completes and I see no problems beyond that. Signed-off-by: Hollis Blanchard Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit efc3624c9419cad3cca93dfabb7b12664773d2b1 Author: Paul Mackerras Date: Wed Nov 5 18:39:27 2008 +0000 powerpc: Tell gcc when we clobber the carry in inline asm We have several instances of inline assembly code that use the addic or addic. instructions, but don't include XER in the list of clobbers. The addic and addic. instructions affect the carry bit, which is in the XER register. This adds "xer" to the list of clobbers for those inline asm statements that use addic or addic. and didn't already have it. Signed-off-by: Paul Mackerras commit d5e54913433fff89609adfc4b96fefcf807a9030 Author: David Gibson Date: Wed Nov 5 14:20:17 2008 +0000 powerpc: udbg-based backend for hvc_console This adds a new backend for the hvc console based on the low-level udbg callbacks. This effectively implements a working runtime console in terms of the simple udbg primitives. This is kind of a hack - since udbg isn't something you really want to be using routinely - but it's really useful during bringup. This can be used to quickly implement a userspace-usable console while you're working on a proper driver for whatever console I/O device the hardware has. Or, it can be used to avoid writing a full blown tty/console driver entirely for quick-and-dirty I/O hardware that will later be replaced by something else. Signed-off-by: David Gibson Signed-off-by: Paul Mackerras commit 8c6531868d4917adbd363030f28a734b76c7471a Author: Chris J Arges Date: Tue Nov 4 12:19:06 2008 +0000 serial/pmac_zilog: Add console polling support This implements poll_get_char and poll_put_char for console polling, which enables kgdb to work on machines that use the pmac_zilog serial driver, for example the Apple PowerMac G5. Signed-off-by: Chris J Arges Signed-off-by: Paul Mackerras commit 9b82f3e61758ed897200f0244b63a77c1791bcba Author: Geert Uytterhoeven Date: Thu Oct 30 08:12:58 2008 +0000 powerpc/ps3: Replace the flip_ctl logic in ps3av and ps3fb by a mutex Introduce ps3_gpu_mutex to synchronizes GPU-related operations, like: - invoking the L1GPU_CONTEXT_ATTRIBUTE_FB_BLIT command using the lv1_gpu_context_attribute() hypervisor call, - handling the PS3AV_CID_AVB_PARAM packet in the PS3 A/V Settings driver. Signed-off-by: Geert Uytterhoeven Signed-off-by: Geoff Levand Signed-off-by: Paul Mackerras commit a22506347d038a66506c6f57e9b97104128e280d Author: Heiko Carstens Date: Tue Nov 18 18:06:35 2008 +0100 ftrace: preemptoff selftest not working Impact: fix preemptoff and preemptirqsoff tracer self-tests I was wondering why the preemptoff and preemptirqsoff tracer selftests don't work on s390. After all its just that they get called from non-preemptible context: kernel_init() will execute all initcalls, however the first line in kernel_init() is lock_kernel(), which causes the preempt_count to be increased. Any later calls to add_preempt_count() (especially those from the selftests) will therefore not result in a call to trace_preempt_off() since the check below in add_preempt_count() will be false: if (preempt_count() == val) trace_preempt_off(CALLER_ADDR0, get_parent_ip(CALLER_ADDR1)); Hence the trace buffer will be empty. Fix this by releasing the BKL during the self-tests. Signed-off-by: Heiko Carstens Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit ca3ea02e90d63a6a91c1c2a445d6d71f9031a44a Author: Mark Brown Date: Tue Nov 18 20:40:36 2008 +0000 ASoC: Remove unused snd_soc_machine_config declaration Signed-off-by: Mark Brown commit 2af752936b311a846622668f8b0f1893d8eccade Author: Hannes Eder Date: Tue Nov 18 12:25:06 2008 -0500 sound: Fix warnings relating to ignored return value in snd_card_register Do not ignore the return of 'device_create_file' in 'snd_card_register' and thereby fixing the following warnings: sound/core/init.c: In function 'snd_card_register': sound/core/init.c:640: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result sound/core/init.c:641: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result Signed-off-by: Hannes Eder Signed-off-by: Takashi Iwai commit b5fe363b7d89577fcfda9b6cf0efc32760bbccc6 Author: Yinghai Lu Date: Tue Nov 18 08:14:14 2008 -0800 x86: use update_genapic to get rid of ES7000_CLUSTERED_APIC v2 Impact: clean up We can autodetect those system that need cluster apic, and update genapic accordingly. We can also remove wakeup.h for e7000, because it's default one is now the same as overall default mach_wakecpu.h Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar commit f632ddcc0786149c0e4bef9b6b44c96a75c0d074 Author: Ingo Molnar Date: Tue Nov 18 17:32:26 2008 +0100 x86: fix wakeup_cpu with numaq/es7000, v2, fix #2 Impact: fix boot crash fix default_update_genapic(). Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar commit 64977609e316c86fad513d9bf0afff998581e59d Author: Hiroshi Shimamoto Date: Mon Nov 17 15:49:14 2008 -0800 x86: ia32_signal: change order of storing in setup_sigcontext() Impact: cleanup Change order of storing to match the sigcontext_ia32. And add casting to make this code same as arch/x86/kernel/signal_32.c. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 047ce93581ca122442ed3c13a62a645249a7db1d Author: Hiroshi Shimamoto Date: Mon Nov 17 15:48:27 2008 -0800 x86: ia32_signal: remove using temporary variable Impact: cleanup No need to use temporary variable. Also rename the variable same as arch/x86/kernel/signal_32.c. Signed-off-by: Hiroshi Shimamoto Reviewed-by: WANG Cong Signed-off-by: Ingo Molnar commit 8c6e5ce0fd67c57ad5e19d1718e1250214e855db Author: Hiroshi Shimamoto Date: Mon Nov 17 15:47:48 2008 -0800 x86: ia32_signal: cleanup macro RELOAD_SEG Impact: cleanup Remove mask parameter because it's always 3. Cleanup coding styles. Signed-off-by: Hiroshi Shimamoto Reviewed-by: WANG Cong Signed-off-by: Ingo Molnar commit d71a68dca54756049e0eae62458a1705bf680d09 Author: Hiroshi Shimamoto Date: Mon Nov 17 15:47:06 2008 -0800 x86: ia32_signal: introduce COPY_SEG_CPL3 Impact: cleanup Introduce COPY_SEG_CPL3 for ia32_restore_sigcontext(). Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit b78a5b5260abf90d574911e7c7b8d35d5b48d6c0 Author: Hiroshi Shimamoto Date: Mon Nov 17 15:44:50 2008 -0800 x86: ia32_signal: cleanup macro COPY Impact: cleanup No need to use temporary variable in this case. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit cbe9ee00cea58d1f77b172fe22a51080e90877f2 Merge: 0bd7b79... 10db4ef... Author: Ingo Molnar Date: Tue Nov 18 15:41:36 2008 +0100 Merge branch 'x86/urgent' into x86/cleanups commit a1afd01c175324656d0e8f1c82ea94b474953c04 Author: Joerg Roedel Date: Tue Nov 18 12:44:21 2008 +0100 x86: default to SWIOTLB=y on x86_64 Impact: fixes korg bugzilla 11980 A kernel for a 64bit x86 system should always contain the swiotlb code in case it is booted on a machine without any hardware IOMMU supported by the kernel and more than 4GB of RAM. This patch changes Kconfig to always compile swiotlb into the kernel for x86_64. Signed-off-by: Joerg Roedel Cc: stable@kernel.org Signed-off-by: Ingo Molnar commit 72f2b894455775b980a5ac7ae70ab560b3d3d247 Author: Mark Brown Date: Tue Nov 18 12:25:46 2008 +0000 ASoC: Move uda134x_codec.h to uda134x.h For consistency with other ASoC codec drivers. Signed-off-by: Mark Brown commit a0bd65f45faae78bda7a2a07370c40c3e0a2502a Author: Mike Frysinger Date: Tue Nov 18 16:18:22 2008 +0800 ASoC: Blackfin: always set a default value for that GPIO range Cc: Cliff Cai Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit 27b9be5a7894f571bbfb87de19ad7cd8c7737d22 Author: Bryan Wu Date: Tue Nov 18 16:18:21 2008 +0800 ASoC: Blackfin: Simplify the MMAP_SUPPORT macros protected code Cc: Cliff Cai Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit caa45836d6bdfde603f3afd739ec3fc2360b1dac Author: Mike Frysinger Date: Tue Nov 18 16:18:20 2008 +0800 ASoC: Blackfin: do not force TWI bus for ssm2602 codec Cc: Cliff Cai Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit 0cade26e366549adcf211f67200b2934c8220f05 Author: Michael Hennerich Date: Tue Nov 18 16:18:19 2008 +0800 ASoC: Fix Blackfin AC97 DAI probe function return code A probe function should have a clean return 0 path. Cc: Cliff Cai Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit a89e611a1dfefbf5d21f6def54c958bf6c4971bc Author: Cliff Cai Date: Tue Nov 18 16:18:18 2008 +0800 ASoC: Blackfin: Fix AD1980/1 build with MMAP support disabled clean up redudent code and correct building problem in non-mmap mode Signed-off-by: Cliff Cai Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit 67f854b910613eeffec4fe71e35c0cd8c32c82ec Author: Cliff Cai Date: Tue Nov 18 16:18:17 2008 +0800 ASoC: Blackfin: add multi-channel function support This patch provides a option for users to enable multi-channel function support in Blackfin ASoC driver. Because Blackfin is without MMU, it is easy for us and the user to enable this function at compiling stage not dynamically on the fly. Signed-off-by: Cliff Cai Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit 9905ed35fdec0ebb3be8a724021ff3b104571667 Author: Cliff Cai Date: Tue Nov 18 16:18:16 2008 +0800 ASoC: AD1980 codec: add multi-channel function support We added multi-channel function to this codec driver and Blackfin ASoC driver as well. It was tested on Blackfin hardware. Signed-off-by: Cliff Cai Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit a11311d71d59145d920c19c0a4eed3fa7e26d222 Author: Mike Frysinger Date: Tue Nov 18 16:18:15 2008 +0800 ASoC: Blackfin: updates Kconfig for SPORT tweak SPORT range for non-BF54x so we get proper behavior for BF52x parts Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Mark Brown commit cb6e2063697e91ca6983f9fe6958d20469b43641 Author: Naresh Medisetty Date: Tue Nov 18 11:01:03 2008 +0530 ASoC: DaVinci: Fix audio stall when doing full duplex Fix concurrent capture/playback issue. The issue is caused by re-initialization of control registers used specifically for capture or playback in both capture and playback operations. Signed-off-by: Steve Chen Signed-off-by: Naresh Medisetty Signed-off-by: Mark Brown commit cd896c331dd442c43cd9e23de3f1a4f3c111c292 Author: Takashi Iwai Date: Tue Nov 18 12:36:33 2008 +0100 ALSA: hda - Allow multiple imux for matrix-type mixers of ALC codecs Allow the multiple imux instances for matrix-type mixers like ALC882. So far, only ALC260 used this feature, but other codecs may need a similar stuff. Signed-off-by: Takashi Iwai commit e17b666a468285409ab9f6caff9df16936d27d71 Author: Patrick McHardy Date: Tue Nov 18 12:24:17 2008 +0100 netfilter: nf_conntrack: fix warning and prototype mismatch net/netfilter/nf_conntrack_core.c:46:1: warning: symbol 'nfnetlink_parse_nat_setup_hook' was not declared. Should it be static? Including the proper header also revealed an incorrect prototype. Signed-off-by: Patrick McHardy commit d9e150071d18b5c87ba7a097af4063a5ad0c6a0c Author: Patrick McHardy Date: Tue Nov 18 12:16:52 2008 +0100 netfilter: nfnetlink_log: fix warning and prototype mismatch net/netfilter/nfnetlink_log.c:537:1: warning: symbol 'nfulnl_log_packet' was not declared. Should it be static? Including the proper header also revealed an incorrect prototype. Signed-off-by: Patrick McHardy commit 19abb7b090a6bce88d4e9b2914a0367f4f684432 Author: Pablo Neira Ayuso Date: Tue Nov 18 11:56:20 2008 +0100 netfilter: ctnetlink: deliver events for conntracks changed from userspace As for now, the creation and update of conntracks via ctnetlink do not propagate an event to userspace. This can result in inconsistent situations if several userspace processes modify the connection tracking table by means of ctnetlink at the same time. Specifically, using the conntrack command line tool and conntrackd at the same time can trigger unconsistencies. This patch also modifies the event cache infrastructure to pass the process PID and the ECHO flag to nfnetlink_send() to report back to userspace if the process that triggered the change needs so. Based on a suggestion from Patrick McHardy. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 226c0c0ef2abdf91b8d9cce1aaf7d4635a5e5926 Author: Pablo Neira Ayuso Date: Tue Nov 18 11:54:05 2008 +0100 netfilter: ctnetlink: helper modules load-on-demand support This patch adds module loading for helpers via ctnetlink. * Creation path: We support explicit and implicit helper assignation. For the explicit case, we try to load the module. If the module is correctly loaded and the helper is present, we return EAGAIN to re-start the creation. Otherwise, we return EOPNOTSUPP. * Update path: release the spin lock, load the module and check. If it is present, then return EAGAIN to re-start the update. This patch provides a refactorized function to lookup-and-set the connection tracking helper. The function removes the exported symbol __nf_ct_helper_find as it has not clients anymore. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 0231022cc32d5f2e7f3c06b75691dda0ad6aec33 Author: Frederic Weisbecker Date: Mon Nov 17 03:22:41 2008 +0100 tracing/function-return-tracer: add the overrun field Impact: help to find the better depth of trace We decided to arbitrary define the depth of function return trace as "20". Perhaps this is not enough. To help finding an optimal depth, we measure now the overrun: the number of functions that have been missed for the current thread. By default this is not displayed, we have to do set a particular flag on the return tracer: echo overrun > /debug/tracing/trace_options And the overrun will be printed on the right. As the trace shows below, the current 20 depth is not enough. update_wall_time+0x37f/0x8c0 -> update_xtime_cache (345 ns) (Overruns: 2838) update_wall_time+0x384/0x8c0 -> clocksource_get_next (1141 ns) (Overruns: 2838) do_timer+0x23/0x100 -> update_wall_time (3882 ns) (Overruns: 2838) tick_do_update_jiffies64+0xbf/0x160 -> do_timer (5339 ns) (Overruns: 2838) tick_sched_timer+0x6a/0xf0 -> tick_do_update_jiffies64 (7209 ns) (Overruns: 2838) vgacon_set_cursor_size+0x98/0x120 -> native_io_delay (2613 ns) (Overruns: 274) vgacon_cursor+0x16e/0x1d0 -> vgacon_set_cursor_size (33151 ns) (Overruns: 274) set_cursor+0x5f/0x80 -> vgacon_cursor (36432 ns) (Overruns: 274) con_flush_chars+0x34/0x40 -> set_cursor (38790 ns) (Overruns: 274) release_console_sem+0x1ec/0x230 -> up (721 ns) (Overruns: 274) release_console_sem+0x225/0x230 -> wake_up_klogd (316 ns) (Overruns: 274) con_flush_chars+0x39/0x40 -> release_console_sem (2996 ns) (Overruns: 274) con_write+0x22/0x30 -> con_flush_chars (46067 ns) (Overruns: 274) n_tty_write+0x1cc/0x360 -> con_write (292670 ns) (Overruns: 274) smp_apic_timer_interrupt+0x2a/0x90 -> native_apic_mem_write (330 ns) (Overruns: 274) irq_enter+0x17/0x70 -> idle_cpu (413 ns) (Overruns: 274) smp_apic_timer_interrupt+0x2f/0x90 -> irq_enter (1525 ns) (Overruns: 274) ktime_get_ts+0x40/0x70 -> getnstimeofday (465 ns) (Overruns: 274) ktime_get_ts+0x60/0x70 -> set_normalized_timespec (436 ns) (Overruns: 274) ktime_get+0x16/0x30 -> ktime_get_ts (2501 ns) (Overruns: 274) hrtimer_interrupt+0x77/0x1a0 -> ktime_get (3439 ns) (Overruns: 274) Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 0619faf657806b943e6acf51f60f1cd023a96c78 Author: Frederic Weisbecker Date: Mon Nov 17 19:26:30 2008 +0100 tracing/ftrace: make nop tracer using tracer flags Impact: give an example on how to use specific tracer flags This patch propose to use the nop tracer to provide an example for using the tracer's custom flags implementation. V2: replace structures and defines just after the headers includes for cleanliness. V3: replace defines by enum values. Signed-off-by: Frederic Weisbecker Acked-by: Steven Noonan Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit adf9f19574334c9a29a2bc956009fcac7edf1a6b Author: Frederic Weisbecker Date: Mon Nov 17 19:23:42 2008 +0100 tracing/ftrace: implement a set_flag callback for tracers Impact: give a way to send specific messages to tracers The current implementation of tracing uses some flags to control the output of general tracers. But we have no way to implement custom flags handling for a specific tracer. This patch proposes a new callback for the struct tracer which called set_flag and a structure that represents a 32 bits variable flag. A tracer can implement a struct tracer_flags on which it puts the initial value of the flag integer. Than it can place a range of flags with their name and their flag mask on the flag integer. The structure that implement a single flag is called struct tracer_opt. These custom flags will be available through the trace_options file like the general tracing flags. Changing their value is done like the other general flags. For example if you have a flag that calls "foo", you can activate it by writing "foo" or "nofoo" on trace_options. Note that the set_flag callback is optional and is only needed if you want the flags changing to be signaled to your tracer and let it to accept or refuse their assignment. V2: Some arrangements in coding style.... Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit a581780aa17f9027c422cb2d10f0bd88135c36f5 Merge: af9f341... c5d08bb... Author: Takashi Iwai Date: Tue Nov 18 10:57:07 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda commit af9f341a94482594ac28cb5b07c655b458bfe84e Author: Takashi Iwai Date: Tue Nov 18 10:38:56 2008 +0100 ALSA: hda - Fix restore of pin configs at resume for STAC/IDT codecs Fixed the restore of pin configs at resume for some STAC/IDT codec models. These models set explicitly the pin configs after the default init configs, and these aren't restored properly at resume. This patch introduces two changes: - Allocate always pin_configs array in stac_spec so that the driver can overwrite the value freely - Introduce stac_change_pin_config() to change the pin config value Signed-off-by: Takashi Iwai commit 2c885878c1b29293f04cfb4a5bd285c969148a8b Author: Takashi Iwai Date: Tue Nov 18 09:36:55 2008 +0100 ALSA: hda - Use init callback in stac92xx_resume() Call the init callback and remove duplicated codes in stac92xx_resume(). This also fixes the missing initialization such as digital I/O pins. Signed-off-by: Takashi Iwai commit e4973e1e5a42072ce88736ba0e39e4b8fc6c3c44 Author: Takashi Iwai Date: Tue Nov 18 09:32:42 2008 +0100 ALSA: hda - Create jack detection elements in build_controls The jack detection input elements should be created in build_controls callback instead of init callback because init can be called multiple times by suspend/resume and power-saving. Signed-off-by: Takashi Iwai commit f3a5c547012a09f38f7c27b17a8e3150b69cd259 Merge: e50a906... 4e14e83... Author: James Morris Date: Tue Nov 18 18:52:37 2008 +1100 Merge branch 'master' into next Conflicts: fs/cifs/misc.c Merge to resolve above, per the patch below. Signed-off-by: James Morris diff --cc fs/cifs/misc.c index ec36410,addd1dc..0000000 --- a/fs/cifs/misc.c +++ b/fs/cifs/misc.c @@@ -347,13 -338,13 +338,13 @@@ header_assemble(struct smb_hdr *buffer /* BB Add support for establishing new tCon and SMB Session */ /* with userid/password pairs found on the smb session */ /* for other target tcp/ip addresses BB */ - if (current->fsuid != treeCon->ses->linux_uid) { + if (current_fsuid() != treeCon->ses->linux_uid) { cFYI(1, ("Multiuser mode and UID " "did not match tcon uid")); - read_lock(&GlobalSMBSeslock); - list_for_each(temp_item, &GlobalSMBSessionList) { - ses = list_entry(temp_item, struct cifsSesInfo, cifsSessionList); + read_lock(&cifs_tcp_ses_lock); + list_for_each(temp_item, &treeCon->ses->server->smb_ses_list) { + ses = list_entry(temp_item, struct cifsSesInfo, smb_ses_list); - if (ses->linux_uid == current->fsuid) { + if (ses->linux_uid == current_fsuid()) { if (ses->server == treeCon->ses->server) { cFYI(1, ("found matching uid substitute right smb_uid")); buffer->Uid = ses->Suid; commit 5a209c2d58e70f9bc415b9cdf0e3b9aaefb70371 Merge: 3f8e402... 0c726da... e270219... Author: Ingo Molnar Date: Tue Nov 18 08:52:13 2008 +0100 Merge branches 'tracing/branch-tracer' and 'tracing/urgent' into tracing/core commit 5f1e71b1cc2cc788c0f452772e2ce5e7430c40c2 Author: Wu Fengguang Date: Tue Nov 18 11:47:53 2008 +0800 ALSA: ELD proc interface for HDMI sinks Create /proc/asound/card/eld# to reflect the audio configurations and capabilities of the attached HDMI sink. Some notes: - Shall we show an empty file if the ELD content is not valid? Well it's not that simple. There could be partially populated ELD, and there may be malformed ELD provided by buggy drivers/monitors. So expose ELD as it is. - The ELD retrieval routines rely on the Intel HDA interface, others are/could be universal and independent ones. - How do we name the proc file? If there are going to be two HDMI pins per codec, then the current naming scheme (eld#) will fail. Luckily the user space dependencies should be minimal, so it would be trivial to do the rename if that happens. - The ELD proc file content is designed to be easy for scripts and human reading. Its lines all have the pattern: \t[\t]* where is a keyword in c language, while could be any contents, including white spaces. could also be a null value. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 7f4a9f43427793bfe4d42e71f42e2b551bcfe354 Author: Wu Fengguang Date: Tue Nov 18 11:47:52 2008 +0800 ALSA: create hda_eld.c for ELD routines and proc interface ELD handling routines can be shared by all HDMI codecs, and they are large enough to make a standalone source file. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 33deeca3bb6a945677d70876ea9d044fc5797eb3 Author: Wu Fengguang Date: Tue Nov 18 11:47:51 2008 +0800 ALSA: introduce snd_print_pcm_rates() We want to share some code with print_pcm_rates(), so extract a common routine snd_print_pcm_rates() from it. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 2eca83ba9cc6f811f8c63314b22b4bc0532e2207 Author: Wu Fengguang Date: Tue Nov 18 10:21:55 2008 +0800 ALSA: hda: remove redundant get_amp_nid() Remove get_amp_nid(): it duplicates the one defined in hda_local.h Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit bc4a68fed4b4c01005ef3c71ede6a8cbe91b7dc9 Author: Risto Suominen Date: Tue Nov 18 07:35:14 2008 +0100 ALSA: snd-powermac: enable mic on iMac G4 Allow input from microphone on iMac G4 Flat-panel (Tumbler). Signed-off-by: Risto Suominen Signed-off-by: Takashi Iwai commit 54ac14a8e982ae6c7ac71ee2b0d0173b974509e2 Author: Yinghai Lu Date: Mon Nov 17 15:19:53 2008 -0800 x86: fix wakeup_cpu with numaq/es7000, v2, fix Impact: fix wakeup_secondary_cpu with hotplug We can not put that into x86_quirks, because that is __initdata. So try to move that to genapic, and add update_genapic in x86_quirks. later we even could use that stub to: 1. autodetect CONFIG_ES7000_CLUSTERED_APIC 2. more correct inquire_remote_apic with apic_verbosity setting. Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar commit 8d702f2376d25ab277c38b57015f4aa990bc7f16 Author: Mark Brown Date: Mon Nov 17 21:42:01 2008 +0000 ASoC: Build tlv320aic23 cleanly Also merge down a couple of last minute style changes that got lost in the shuffle. Signed-off-by: Mark Brown commit 2adb9833d1782262c20b21457d645163928cf2a2 Author: Mark Brown Date: Mon Nov 17 17:11:14 2008 +0000 ASoC: Manage VMID mode for WM8990 A small additional power saving can be achieved for the WM8990 by maintaining VMID using a 2*250k divider when in standby mode. Signed-off-by: Mark Brown commit be1b87c70af69acfadb8a27a7a76dfb61de92643 Author: Mark Brown Date: Mon Nov 17 17:09:34 2008 +0000 ASoC: Enable WM8990 ADC clocking workaround Enable a hardware workaround which avoids problems with the clocking of the ADCs in certain configurations. Signed-off-by: Mark Brown commit ba533e95b929c577d69237692ee588001347be8a Author: Mark Brown Date: Mon Nov 17 16:59:24 2008 +0000 ASoC: Allow writes to uncached registers in WM8990 Only fully documented registers are cached in the WM8990 but additional registers exist. Signed-off-by: Mark Brown commit 569712b2b0970fa5b19673544d62ae661d04a220 Author: Yinghai Lu Date: Sun Nov 16 03:12:49 2008 -0800 x86: fix wakeup_cpu with numaq/es7000, v2 Impact: fix secondary-CPU wakeup/init path with numaq and es7000 While looking at wakeup_secondary_cpu for WAKE_SECONDARY_VIA_NMI: |#ifdef WAKE_SECONDARY_VIA_NMI |/* | * Poke the other CPU in the eye via NMI to wake it up. Remember that the normal | * INIT, INIT, STARTUP sequence will reset the chip hard for us, and this | * won't ... remember to clear down the APIC, etc later. | */ |static int __devinit |wakeup_secondary_cpu(int logical_apicid, unsigned long start_eip) |{ | unsigned long send_status, accept_status = 0; | int maxlvt; |... | if (APIC_INTEGRATED(apic_version[phys_apicid])) { | maxlvt = lapic_get_maxlvt(); I noticed that there is no warning about undefined phys_apicid... because WAKE_SECONDARY_VIA_NMI and WAKE_SECONDARY_VIA_INIT can not be defined at the same time. So NUMAQ is using wrong wakeup_secondary_cpu. WAKE_SECONDARY_VIA_NMI, WAKE_SECONDARY_VIA_INIT and WAKE_SECONDARY_VIA_MIP are variants of a weird and fragile preprocessor-driven "HAL" mechanisms to specify the kind of secondary-CPU wakeup strategy a given x86 kernel will use. The vast majority of systems want to use INIT for secondary wakeup - NUMAQ uses an NMI, (old-style-) ES7000 uses 'MIP' (a firmware driven in-memory flag to let secondaries continue). So convert these mechanisms to x86_quirks and add a ->wakeup_secondary_cpu() method to specify the rare exception to the sane default. Extend genapic accordingly as well, for 32-bit. While looking further, I noticed that functions in wakecup.h for numaq and es7000 are different to the default in mach_wakecpu.h - but smpboot.c will only use default mach_wakecpu.h with smphook.h. So we need to add mach_wakecpu.h for mach_generic, to properly support numaq and es7000, and vectorize the following SMP init methods: int trampoline_phys_low; int trampoline_phys_high; void (*wait_for_init_deassert)(atomic_t *deassert); void (*smp_callin_clear_local_apic)(void); void (*store_NMI_vector)(unsigned short *high, unsigned short *low); void (*restore_NMI_vector)(unsigned short *high, unsigned short *low); void (*inquire_remote_apic)(int apicid); Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar commit 4dc06f9633444f426ef9960c53426f2d2ded64ac Author: Pablo Neira Ayuso Date: Mon Nov 17 16:01:42 2008 +0100 netfilter: nf_conntrack: connection tracking helper name persistent aliases This patch adds the macro MODULE_ALIAS_NFCT_HELPER that defines a way to provide generic and persistent aliases for the connection tracking helpers. This next patch requires this patch. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 528a3a6f67d4fbe708b9f306be194e78b29e8d7a Author: Pablo Neira Ayuso Date: Mon Nov 17 16:00:40 2008 +0100 netfilter: ctnetlink: get rid of module refcounting in ctnetlink This patch replaces the unnecessary module refcounting with the read-side locks. With this patch, all the dump and fill_info function are called under the RCU read lock. Based on a patch from Fabian Hugelshofer. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit bfe2967735e0e0f650bf698a5683db2b6cf4cfd7 Author: Pablo Neira Ayuso Date: Mon Nov 17 15:55:48 2008 +0100 netfilter: ctnetlink: use EOPNOTSUPP instead of EINVAL if the conntrack has no helper This patch changes the return value if the conntrack has no helper assigned. Instead of EINVAL, which is reserved for malformed messages, it returns EOPNOTSUPP. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 238ede8160443a32379fd8f9eb88d00456a09bb4 Author: Pablo Neira Ayuso Date: Mon Nov 17 15:53:33 2008 +0100 netfilter: ctnetlink: use nf_conntrack_get instead of atomic_inc Use nf_conntrack_get instead of the direct call to atomic_inc. Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 7ad933d7a6677c20ce1bdb17425e732cf1ebee8a Author: Christian Pellegrin Date: Sat Nov 15 08:58:32 2008 +0100 ASoC: Machine driver for for s3c24xx with uda134x Signed-off-by: Christian Pellegrin Signed-off-by: Mark Brown commit 1cad1de1b216b355a60d907c103b2daf1a285345 Author: Christian Pellegrin Date: Sat Nov 15 08:58:16 2008 +0100 ASoC: UDA134x codec driver Signed-off-by: Christian Pellegrin Signed-off-by: Mark Brown commit 0c726da983de0704254250ef6495ca152e7abcca Author: Aneesh Kumar K.V Date: Sun Nov 16 16:07:58 2008 +0530 tracing: branch tracer, fix writing to trace/trace_options Impact: fix trace_options behavior writing to trace/trace_options use the index of the array to find the value of the flag. With branch tracer flag defined conditionally, this breaks writing to trace_options with branch tracer disabled. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Ingo Molnar commit 6e5d9db271ab57789b09bcc61083ab71b7eabea9 Author: Peter Ujfalusi Date: Fri Nov 14 08:57:28 2008 +0200 ASoC: Fix for master playback/capture volume range for TWL4030 codec FGAIN for playback is in range of 0-0x3f, while for capture GAIN it is in the range of 0-0x1f. The original value of 128 (0x7f) would modify the CGAIN also for playback. Signed-off-by: Peter Ujfalusi Acked-by: Steve Sakoman Signed-off-by: Mark Brown commit 9a57f7fabd383920585ed8b74eacd117c6551f2d Author: Eric Dumazet Date: Mon Nov 17 02:41:00 2008 -0800 net: sctp should update its inuse counter This patch is a preparation to namespace conversion of /proc/net/protocols In order to have relevant information for SCTP protocols, we should use sock_prot_inuse_add() to update a (percpu and pernamespace) counter of inuse sockets. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit a8076d8db98de6da61394b2e942320e4612643ac Author: Eric Dumazet Date: Mon Nov 17 02:38:49 2008 -0800 net: af_unix should update its inuse counter This patch is a preparation to namespace conversion of /proc/net/protocols In order to have relevant information for UNIX protocol, we should use sock_prot_inuse_add() to update a (percpu and pernamespace) counter of inuse sockets. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 0bd7b79851d0f74b24a9ce87d088f2e7c718f668 Author: Alexander van Heukelum Date: Sun Nov 16 15:29:00 2008 +0100 x86: entry_64.S: remove whitespace at end of lines Impact: cleanup All blame goes to: color white,red "[^[:graph:]]+$" in .nanorc ;). Signed-off-by: Alexander van Heukelum Signed-off-by: Ingo Molnar commit 9dacc71ff31a008d1e689fc824d31f6696454f68 Merge: 19f47c6... 9bf1a24... Author: Ingo Molnar Date: Mon Nov 17 10:46:18 2008 +0100 Merge commit 'v2.6.28-rc5' into x86/cleanups commit 796359d150356adabb677d708a4e66a09d29d9d8 Author: Wu Fengguang Date: Mon Nov 17 16:57:33 2008 +0800 ALSA: hda-intel: reorder HDMI audio enabling sequence Reorder HDMI audio enabling sequence so that 1) the sink knows about the coming audio stream 2) unmute 3) start transferring audio samples The theory is that in the path A=>B=>C, we first make C ready, and then enable B, and lastly allow A to send audio samples. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit c0cea0d09d15350c398e2951e7cf4d6f0fc98977 Author: Matthew Ranostay Date: Sun Nov 16 11:42:34 2008 -0500 ALSA: hda: STAC_DELL_M6 EAPD Add support for EAPD on system suspend and disabling EAPD on headphone jack detection for STAC_DELL_M6 laptops. Signed-off-by: Matthew Ranostay Signed-off-by: Takashi Iwai commit 3ab909351a3c653a879a35b3342979ac483c0460 Author: Wu Fengguang Date: Mon Nov 17 09:51:09 2008 +0100 ALSA: hda: alc883 model for ASUS P5Q-EM boards Add a new alc883 model ALC1200_ASUS_P5Q for ASUS P5Q-EM boards. It is the same as ALC883_6ST_DIG except that the SPDIF digital output nid is 0x10. Tested-by: Andrei Tanas Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 3f8e402f34ecc7d1d00b54703d3baa401b8bdd78 Merge: 072b40a... e7d3737... 227a837... 5821e1b... Author: Ingo Molnar Date: Mon Nov 17 09:36:22 2008 +0100 Merge branches 'tracing/branch-tracer', 'tracing/ftrace', 'tracing/function-return-tracer', 'tracing/tracepoints' and 'tracing/urgent' into tracing/core commit 248969ae31e1b3276fc4399d67ce29a5d81e6fd9 Author: Eric Dumazet Date: Mon Nov 17 00:00:30 2008 -0800 net: af_unix can make unix_nr_socks visbile in /proc Currently, /proc/net/protocols displays socket counts only for TCP/TCPv6 protocols We can provide unix_nr_socks for free here, this counter being already maintained in af_unix Before patch : # grep UNIX /proc/net/protocols UNIX 428 -1 -1 NI 0 yes kernel After patch : # grep UNIX /proc/net/protocols UNIX 428 98 -1 NI 0 yes kernel Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit c3ccc12339afa2633c72131e2aa97d52d9ca1b8a Author: Wang Chen Date: Sun Nov 16 23:06:39 2008 -0800 netdevice chelsio: Convert directly reference of netdev->priv Several netdev share one adapter here. We use netdev->ml_priv of the netdevs point to the first netdev's priv. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 4d24b52ac5085ef8a264d044f1b302b7c029887a Author: Alexey Dobriyan Date: Sun Nov 16 23:01:49 2008 -0800 ematch: simpler tcf_em_unregister() Simply delete ops from list and let list debugging do the job. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 6eba6a372b501aa3cdfb7df21a8364099125b9c4 Author: Eric Dumazet Date: Sun Nov 16 22:58:44 2008 -0800 net: Cleanup of af_unix This is a pure cleanup of net/unix/af_unix.c to meet current code style standards Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 191029963630719e867d8bd0c315d32c822622cb Author: Gerrit Renker Date: Sun Nov 16 22:56:55 2008 -0800 dccp: Tidy up setsockopt calls This splits the setsockopt calls into two groups, depending on whether an integer argument (val) is required and whether routines being called do their own locking. Some options (such as setting the CCID) use u8 rather than int, so that for these the test with regard to integer-sizeof can not be used. The second switch-case statement now only has those statements which need locking and which make use of `val'. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Acked-by: Arnaldo Carvalho de Melo Reviewed-by: Eugene Teo Signed-off-by: David S. Miller commit dd9c0e363cef32b7d6f23d4c87e8dfe4f91fd1c5 Author: Gerrit Renker Date: Sun Nov 16 22:55:08 2008 -0800 dccp: Deprecate Ack Ratio sysctl This patch deprecates the Ack Ratio sysctl, since * Ack Ratio is entirely ignored by CCID-3 and CCID-4, * Ack Ratio currently doesn't work in CCID-2 (i.e. is always set to 1); * even if it would work in CCID-2, there is no point for a user to change it: - Ack Ratio is constrained by cwnd (RFC 4341, 6.1.2), - if Ack Ratio > cwnd, the system resorts to spurious RTO timeouts (since waiting for Acks which will never arrive in this window), - cwnd is not a user-configurable value. The only reasonable place for Ack Ratio is to print it for debugging. It is planned to do this later on, as part of e.g. dccp_probe. With this patch Ack Ratio is now under full control of feature negotiation: * Ack Ratio is resolved as a dependency of the selected CCID; * if the chosen CCID supports it (i.e. CCID == CCID-2), Ack Ratio is set to the default of 2, following RFC 4340, 11.3 - "New connections start with Ack Ratio 2 for both endpoints"; * what happens then is part of another patch set, since it concerns the dynamic update of Ack Ratio while the connection is in full flight. Thanks to Tomasz Grobelny for discussion leading up to this patch. Signed-off-by: Gerrit Renker Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 29450559849da7066813601effb7666966869853 Author: Gerrit Renker Date: Sun Nov 16 22:53:48 2008 -0800 dccp: Feature negotiation for minimum-checksum-coverage This provides feature negotiation for server minimum checksum coverage which so far has been missing. Since sender/receiver coverage values range only from 0...15, their type has also been reduced in size from u16 to u4. Feature-negotiation options are now generated for both sender and receiver coverage, i.e. when the peer has `forgotten' to enable partial coverage then feature negotiation will automatically enable (negotiate) the partial coverage value for this connection. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 49aebc66d6b896f9c7c5739d85c4548c00015aa7 Author: Gerrit Renker Date: Sun Nov 16 22:51:23 2008 -0800 dccp: Deprecate old setsockopt framework The previous setsockopt interface, which passed socket options via struct dccp_so_feat, is complicated/difficult to use. Continuing to support it leads to ugly code since the old approach did not distinguish between NN and SP values. This patch removes the old setsockopt interface and replaces it with two new functions to register NN/SP values for feature negotiation. These are essentially wrappers around the internal __feat_register functions, with checking added to avoid * wrong usage (type); * changing values while the connection is in progress. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit 0c1168398ecbfacbb27203b281bde20ec9f78017 Author: Gerrit Renker Date: Sun Nov 16 22:49:52 2008 -0800 dccp: Mechanism to resolve CCID dependencies This adds a hook to resolve features whose value depends on the choice of CCID. It is done at the server since it can only be done after the CCID values have been negotiated; i.e. the client will add its CCID preference list on the Change options sent in the Request, which will be reconciled with the local preference list of the server. The concept is documented on http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/feature_negotiation/\ implementation_notes.html#ccid_dependencies Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 3f2c31d90327f21d76d296af34aa4ca547932ff4 Author: Mark McLoughlin Date: Sun Nov 16 22:41:34 2008 -0800 virtio_net: VIRTIO_NET_F_MSG_RXBUF (imprive rcv buffer allocation) If segmentation offload is enabled by the host, we currently allocate maximum sized packet buffers and pass them to the host. This uses up 20 ring entries, allowing us to supply only 20 packet buffers to the host with a 256 entry ring. This is a huge overhead when receiving small packets, and is most keenly felt when receiving MTU sized packets from off-host. The VIRTIO_NET_F_MRG_RXBUF feature flag is set by hosts which support using receive buffers which are smaller than the maximum packet size. In order to transfer large packets to the guest, the host merges together multiple receive buffers to form a larger logical buffer. The number of merged buffers is returned to the guest via a field in the virtio_net_hdr. Make use of this support by supplying single page receive buffers to the host. On receive, we extract the virtio_net_hdr, copy 128 bytes of the payload to the skb's linear data buffer and adjust the fragment offset to point to the remaining data. This ensures proper alignment and allows us to not use any paged data for small packets. If the payload occupies multiple pages, we simply append those pages as fragments and free the associated skbs. This scheme allows us to be efficient in our use of ring entries while still supporting large packets. Benchmarking using netperf from an external machine to a guest over a 10Gb/s network shows a 100% improvement from ~1Gb/s to ~2Gb/s. With a local host->guest benchmark with GSO disabled on the host side, throughput was seen to increase from 700Mb/s to 1.7Gb/s. Based on a patch from Herbert Xu. Signed-off-by: Mark McLoughlin Signed-off-by: Rusty Russell (use netdev_priv) Signed-off-by: David S. Miller commit 0276b4972e932ea8bf2941dcd37e9caac5652ed7 Author: Mark McLoughlin Date: Sun Nov 16 22:40:36 2008 -0800 virtio_net: hook up the set-tso ethtool op Seems like an oversight that we have set-tx-csum and set-sg hooked up, but not set-tso. Also leads to the strange situation that if you e.g. disable tx-csum, then tso doesn't get disabled. Signed-off-by: Mark McLoughlin Signed-off-by: Rusty Russell Signed-off-by: David S. Miller commit 0a888fd1f6320d1d9318c58de9bca3cef41546d6 Author: Mark McLoughlin Date: Sun Nov 16 22:39:18 2008 -0800 virtio_net: Recycle some more rx buffer pages Each time we re-fill the recv queue with buffers, we allocate one too many skbs and free it again when adding fails. We should recycle the pages allocated in this case. A previous version of this patch made trim_pages() trim trailing unused pages from skbs with some paged data, but this actually caused a barely measurable slowdown. Signed-off-by: Mark McLoughlin Signed-off-by: Rusty Russell (use netdev_priv) Signed-off-by: David S. Miller commit 908cd2dabbfbbefb02f6b908a1188a62e685136a Author: Alexey Dobriyan Date: Sun Nov 16 19:50:35 2008 -0800 net: use %pF for /proc/net/ptype Technically, patch changes format for modules, but I think nobody cares. -86dd :ipv6:ipv6_rcv+0x0 +86dd ipv6_rcv+0x0/0x400 [ipv6] Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 5635c10d976716ef47ae441998aeae144c7e7387 Author: Eric Dumazet Date: Sun Nov 16 19:46:36 2008 -0800 net: make sure struct dst_entry refcount is aligned on 64 bytes As found in the past (commit f1dd9c379cac7d5a76259e7dffcd5f8edc697d17 [NET]: Fix tbench regression in 2.6.25-rc1), it is really important that struct dst_entry refcount is aligned on a cache line. We cannot use __atribute((aligned)), so manually pad the structure for 32 and 64 bit arches. for 32bit : offsetof(truct dst_entry, __refcnt) is 0x80 for 64bit : offsetof(truct dst_entry, __refcnt) is 0xc0 As it is not possible to guess at compile time cache line size, we use a generic value of 64 bytes, that satisfies many current arches. (Using 128 bytes alignment on 64bit arches would waste 64 bytes) Add a BUILD_BUG_ON to catch future updates to "struct dst_entry" dont break this alignment. "tbench 8" is 4.4 % faster on a dual quad core (HP BL460c G1), Intel E5450 @3.00GHz (2350 MB/s instead of 2250 MB/s) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 536533e69e3e4a9f0174509813f8df28970d6ebe Author: Eric Dumazet Date: Sun Nov 16 19:41:14 2008 -0800 rcu: documents rculist_nulls Adds Documentation/RCU/rculist_nulls.txt file to describe how 'nulls' end-of-list can help in some RCU algos. Signed-off-by: Eric Dumazet Acked-by: Peter Zijlstra Signed-off-by: David S. Miller commit 3ab5aee7fe840b5b1b35a8d1ac11c3de5281e611 Author: Eric Dumazet Date: Sun Nov 16 19:40:17 2008 -0800 net: Convert TCP & DCCP hash tables to use RCU / hlist_nulls RCU was added to UDP lookups, using a fast infrastructure : - sockets kmem_cache use SLAB_DESTROY_BY_RCU and dont pay the price of call_rcu() at freeing time. - hlist_nulls permits to use few memory barriers. This patch uses same infrastructure for TCP/DCCP established and timewait sockets. Thanks to SLAB_DESTROY_BY_RCU, no slowdown for applications using short lived TCP connections. A followup patch, converting rwlocks to spinlocks will even speedup this case. __inet_lookup_established() is pretty fast now we dont have to dirty a contended cache line (read_lock/read_unlock) Only established and timewait hashtable are converted to RCU (bind table and listen table are still using traditional locking) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 88ab1932eac721c6e7336708558fa5ed02c85c80 Author: Eric Dumazet Date: Sun Nov 16 19:39:21 2008 -0800 udp: Use hlist_nulls in UDP RCU code This is a straightforward patch, using hlist_nulls infrastructure. RCUification already done on UDP two weeks ago. Using hlist_nulls permits us to avoid some memory barriers, both at lookup time and delete time. Patch is large because it adds new macros to include/net/sock.h. These macros will be used by TCP & DCCP in next patch. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit bbaffaca4810de1a25e32ecaf836eeaacc7a3d11 Author: Eric Dumazet Date: Sun Nov 16 19:37:55 2008 -0800 rcu: Introduce hlist_nulls variant of hlist hlist uses NULL value to finish a chain. hlist_nulls variant use the low order bit set to 1 to signal an end-of-list marker. This allows to store many different end markers, so that some RCU lockless algos (used in TCP/UDP stack for example) can save some memory barriers in fast paths. Two new files are added : include/linux/list_nulls.h - mimics hlist part of include/linux/list.h, derived to hlist_nulls variant include/linux/rculist_nulls.h - mimics hlist part of include/linux/rculist.h, derived to hlist_nulls variant Only four helpers are declared for the moment : hlist_nulls_del_init_rcu(), hlist_nulls_del_rcu(), hlist_nulls_add_head_rcu() and hlist_nulls_for_each_entry_rcu() prefetches() were removed, since an end of list is not anymore NULL value. prefetches() could trigger useless (and possibly dangerous) memory transactions. Example of use (extracted from __udp4_lib_lookup()) struct sock *sk, *result; struct hlist_nulls_node *node; unsigned short hnum = ntohs(dport); unsigned int hash = udp_hashfn(net, hnum); struct udp_hslot *hslot = &udptable->hash[hash]; int score, badness; rcu_read_lock(); begin: result = NULL; badness = -1; sk_nulls_for_each_rcu(sk, node, &hslot->head) { score = compute_score(sk, net, saddr, hnum, sport, daddr, dport, dif); if (score > badness) { result = sk; badness = score; } } /* * if the nulls value we got at the end of this lookup is * not the expected one, we must restart lookup. * We probably met an item that was moved to another chain. */ if (get_nulls_value(node) != hash) goto begin; if (result) { if (unlikely(!atomic_inc_not_zero(&result->sk_refcnt))) result = NULL; else if (unlikely(compute_score(result, net, saddr, hnum, sport, daddr, dport, dif) < badness)) { sock_put(result); goto begin; } } rcu_read_unlock(); return result; Signed-off-by: Eric Dumazet Acked-by: Peter Zijlstra Signed-off-by: David S. Miller commit e8b2dfe9b4501ed0047459b2756ba26e5a940a69 Author: Balazs Scheidler Date: Sun Nov 16 19:32:39 2008 -0800 TPROXY: implemented IP_RECVORIGDSTADDR socket option In case UDP traffic is redirected to a local UDP socket, the originally addressed destination address/port cannot be recovered with the in-kernel tproxy. This patch adds an IP_RECVORIGDSTADDR sockopt that enables a IP_ORIGDSTADDR ancillary message in recvmsg(). This ancillary message contains the original destination address/port of the packet being received. Signed-off-by: Balazs Scheidler Signed-off-by: David S. Miller commit 8164f1b79731ad8ad9c713dc53d587a3b746f82f Author: Ben Greear Date: Sun Nov 16 19:19:38 2008 -0800 ipv4: Fix ARP behavior with many mac-vlans Ben Greear wrote: > I have 500 mac-vlans on a system talking to 500 other > mac-vlans. My problem is that the arp-table gets extremely > huge because every time an arp-request comes in on all mac-vlans, > a stale arp entry is added for each mac-vlan. I have filtering > turned on, but that doesn't help because the neigh_event_ns call > below will cause a stale neighbor entry to be created regardless > of whether a replay will be sent or not. > Maybe the neigh_event code should be below the checks for dont_send, > and only create check neigh_event_ns if we are !dont_send? The attached patch makes it work much better for me. The patch will cause the code to NOT create a stale neighbor entry if we are not going to respond to the ARP request. The old code *would* create a stale entry even if we are not going to respond. Signed-off-by: Ben Greear Signed-off-by: David S. Miller commit 6ea7ae1d0fc02a6c4ccd27e43346f67c44226e7a Author: Alexander Duyck Date: Fri Nov 14 06:54:36 2008 +0000 e1000e: enable ECC correction on 82571 silicon This change enables ECC correction for the packet buffer on all 82571 silicon. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit f004f3ea34209d8b836426b26ade3dc502631b18 Author: Paulius Zaleckas Date: Fri Nov 14 00:24:34 2008 +0000 phylib: make mdio-gpio work without OF (v4) make mdio-gpio work with non OpenFirmware gpio implementation. Aditional changes to mdio-gpio: - use gpio_request() and gpio_free() - place irq[] array in struct mdio_gpio_info - add module description, author and license - add note about compiling this driver as module - rename mdc and mdio function (were ugly names) - change MII to MDIO in bus name - add __init __exit to module (un)loading functions - probe fails if no phys added to the bus - kzalloc bitbang with sizeof(*bitbang) Changes since v3: - keep bus naming "%x" to be compatible with existing drivers. Changes since v2: - more #ifdefs reduction - platform driver will be registered on OF platforms also - unified platform and OF bus_id to phy%i Changes since v1: - removed NO_IRQ - reduced #idefs Laurent, please test this driver under OF. Signed-off-by: Paulius Zaleckas Signed-off-by: David S. Miller commit 72af187f216ed83c77ca3e6f22dfc9caf72e9347 Author: Paulius Zaleckas Date: Fri Nov 14 00:24:28 2008 +0000 phylib: rename mdio-ofgpio to mdio-gpio Signed-off-by: Paulius Zaleckas Signed-off-by: David S. Miller commit 6817ba2cd22cfed2e93d062dca3d7a82465d693d Author: David S. Miller Date: Sun Nov 16 12:41:35 2008 -0800 dm9000: Fix build error. Reported by Stephen Rothwell: drivers/net/dm9000.c:1450: error: expected ')' before ';' token drivers/net/dm9000.c:1455: error: expected ';' before '}' token Signed-off-by: David S. Miller commit 227a837567e339c74d9d4243d03a29bd943a018c Author: Ingo Molnar Date: Sun Nov 16 09:50:34 2008 +0100 markers/tracpoints: fix non-modular build fix: kernel/marker.c: In function 'marker_module_notify': kernel/marker.c:905: error: 'MODULE_STATE_COMING' undeclared (first use in this function) [...] Signed-off-by: Ingo Molnar commit cda2836dc66f814aecc58370251566e1c225c8d3 Author: David Brownell Date: Sun Nov 16 00:36:08 2008 -0800 pegasus: minor resource shrinkage Make pegasus driver not allocate a workqueue until the driver is bound to some device, which will need that workqueue if the device is brought up. This conserves resources when the driver is linked but there's no pegasus device connected. Also shrink the runtime footprint a smidgeon by moving some init-only code into its proper section, and move an obnoxious (frequent and meaningless) message to be debug-only. Signed-off-by: David Brownell Signed-off-by: David S. Miller commit 74ad0a5421edc6ef13a4059c6076cd7a4f3a1fd5 Author: PJ Waskiewicz Date: Fri Nov 7 12:16:08 2008 +0000 ixgbe: Fix usage of netif_*_all_queues() with netif_carrier_{off|on}() netif_carrier_off() is sufficient to stop Tx into the driver. Stopping the Tx queues is redundant and unnecessary. By the same token, netif_carrier_on() will be sufficient to re-enable Tx, so waking the queues is unnecessary. Signed-off-by: Peter P Waskiewicz Jr Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 0a7ad64531713e33e39af95bdbfb172f4f328b1e Author: Ingo Molnar Date: Sun Nov 16 08:54:36 2008 +0100 tracepoints: format documentation Impact: documentation update Properly format Documentation/tracepoints.txt - it was full of overlong lines and other typographical problems. Signed-off-by: Ingo Molnar commit 0dcf8fe5fe5d7279f1c479fa82f1f1ca6f22e814 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:49 2008 -0500 tracepoints, docs: marker_synchronize_unregister->tracepoint_synchronize_unregister Impact: documentation update. Signed-off-by: Zhaolei Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 8fd88d159031bd238dad1d7186a2030b9f9349de Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:48 2008 -0500 tracepoints: documentation fix for teardown Impact: documentation update Need a tracepoint_synchronize_unregister() before the end of exit() to make sure every probe callers have exited the non preemptible section and thus are not executing the probe code anymore. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 7e066fb870fcd1025ec3ba7bbde5d541094f4ce1 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:47 2008 -0500 tracepoints: add DECLARE_TRACE() and DEFINE_TRACE() Impact: API *CHANGE*. Must update all tracepoint users. Add DEFINE_TRACE() to tracepoints to let them declare the tracepoint structure in a single spot for all the kernel. It helps reducing memory consumption, especially when declaring a lot of tracepoints, e.g. for kmalloc tracing. *API CHANGE WARNING*: now, DECLARE_TRACE() must be used in headers for tracepoint declarations rather than DEFINE_TRACE(). This is the sane way to do it. The name previously used was misleading. Updates scheduler instrumentation to follow this API change. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 32f85742778dfc2c74975cf0b9f5bdb13470cb32 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:46 2008 -0500 tracepoints: use modules notifiers Impact: cleanup Use module notifiers for tracepoint updates rather than adding a hook in module.c. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 5f382671def7cb9c0f4b75d586dc5f60dca5e1c3 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:45 2008 -0500 tracepoints: do not put arguments in name Impact: cleanup That's overkill, takes space. We have a global tracepoint registery in header files anyway. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit c420970ef476d7d68df119711700666224001f43 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:44 2008 -0500 tracepoints: use unregister return value Impact: bugfix. Unregistering a tracepoint can fail. Return the error value. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit da7b3eab167091693ad215ad7692f7d0d24d1356 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:43 2008 -0500 tracepoints: use rcu_*_sched_notrace Make sure tracepoints can be called within ftrace callbacks. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit de0baf9ad661ac630a45a50ea1717cc4f4b33ace Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:42 2008 -0500 tracepoints: fix disable Impact: fix race Set the probe array pointer to NULL when the tracepoint is disabled. The probe array point not being NULL could generate a race condition where the reader would dereference a freed pointer. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 2504ea5edfebb14133b8571c20785cdc077e07d2 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:41 2008 -0500 tracepoints: samples, fix teardown Impact: fix a bug in sample tracepoints Need a tracepoint_synchronize_unregister() before the end of exit() to make sure every probe callers have exited the non preemptible section and thus are not executing the probe code anymore. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit a0bca6a59ebc052751eed6e3b182c153495672d8 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:40 2008 -0500 markers: create DEFINE_MARKER and GET_MARKER (new API) Impact: new API. Allow markers to be used only for declaration, without function call associated. Useful to create specialized probes. The problem we had is that two function calls were required when one wanted to put a marker in a tracepoint probe. Now the marker can be used simply for trace data type declaration, leaving the trace write work within the tracepoint probe without any additional function call. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit c1df1bd2c4d4b20c83755a0f41956b57aec4842a Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:39 2008 -0500 markers: auto enable tracepoints (new API : trace_mark_tp()) Impact: new API Add a new API trace_mark_tp(), which declares a marker within a tracepoint probe. When the marker is activated, the tracepoint is automatically enabled. No branch test is used at the marker site, because it would be a duplicate of the branch already present in the tracepoint. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit a419246ac7c2d9282dfd843103702895bb3f3fd7 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:38 2008 -0500 markers: use module notifier Impact: cleanup Use module notifiers instead of adding a hook in module.c. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 021aeb057fc48af03fe5f37d3dda366c0d97aaf3 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:37 2008 -0500 markers: use rcu_*_sched_notrace and notrace Make marker critical code use notrace to make sure they can be used as an ftrace callback. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit e3f8c4b9117d70127a8cab480af83bbfd048a28b Author: Arnaldo Carvalho de Melo Date: Fri Nov 14 17:47:36 2008 -0500 markers: add missing stdargs.h include, needed due to va_list usage Impact: build fix (for future changes) That seemed to cause built issue when marker.h is included early, even though stdargs.h is included in kernel.h. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 2bdba316c989da028a59becf7516c6350ce3c173 Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:35 2008 -0500 markers: fix unregister Impact: fix marker registers/unregister race get_marker() can return a NULL entry because the mutex is released in the middle of those functions. Make sure we check to see if it has been concurrently removed. Signed-off-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 954e100d2275cb2f150f2b18d5cddcdf67b956ac Author: Mathieu Desnoyers Date: Fri Nov 14 17:47:34 2008 -0500 rcu: add rcu_read_*_sched_notrace() Impact: new API, useful for tracepoints and markers. Add _notrace version to rcu_read_*_sched(). Signed-off-by: Mathieu Desnoyers Reviewed-by: Paul E McKenney Signed-off-by: Ingo Molnar commit e7d3737ea1b102030f44e96c97754101e41515f0 Author: Frederic Weisbecker Date: Sun Nov 16 06:02:06 2008 +0100 tracing/function-return-tracer: support for dynamic ftrace on function return tracer This patch adds the support for dynamic tracing on the function return tracer. The whole difference with normal dynamic function tracing is that we don't need to hook on a particular callback. The only pro that we want is to nop or set dynamically the calls to ftrace_caller (which is ftrace_return_caller here). Some security checks ensure that we are not trying to launch dynamic tracing for return tracing while normal function tracing is already running. An example of trace with getnstimeofday set as a filter: ktime_get_ts+0x22/0x50 -> getnstimeofday (2283 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1396 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1382 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1825 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1426 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1464 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1524 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1382 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1382 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1434 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1464 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1502 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1404 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1397 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1051 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1314 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1344 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1163 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1390 ns) ktime_get_ts+0x22/0x50 -> getnstimeofday (1374 ns) Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit b01c746617da5e260803eb10ed64ca043e9a1241 Author: Frederic Weisbecker Date: Sat Nov 15 02:37:44 2008 +0100 tracing/function-return-tracer: add a barrier to ensure return stack index is incremented in memory Impact: fix possible race condition in ftrace function return tracer This fixes a possible race condition if index incrementation is not immediately flushed in memory. Thanks for Andi Kleen and Steven Rostedt for pointing out this issue and give me this solution. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 985809608f758a8d3ddda4ce5a53ed0e57fb9e1b Merge: c91add5... 1c80025... Author: Ingo Molnar Date: Sun Nov 16 07:57:13 2008 +0100 Merge branch 'tracing/ftrace' into tracing/function-return-tracer commit 072b40a15616fe6bea68466e6bffcfcbf5c8f26f Author: Frederic Weisbecker Date: Sun Nov 16 05:59:52 2008 +0100 tracing/branch-tracer: fix a trace recursion on branch tracer Impact: fix crash when enabling the branch-tracer When the branch tracer inserts an event through probe_likely_condition(), it calls local_irq_save() and then results in a trace recursion. local_irq_save() -> trace_hardirqs_off() -> trace_hardirqs_off_caller() -> unlikely() The trace_branch.c file is protected by DISABLE_BRANCH_PROFILING but that doesn't prevent from external call to functions that use unlikely(). My box crashed each time I tried to set this tracer (sudden and hard reboot). Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 1c80025a49855b12fa09bb6db71820e3367b1369 Author: Frederic Weisbecker Date: Sun Nov 16 05:57:26 2008 +0100 tracing/ftrace: change the type of the init() callback Impact: extend the ->init() method with the ability to fail This bring a way to know if the initialization of a tracer successed. A tracer must return 0 on success and a traditional error (ie: -ENOMEM) if it fails. If a tracer fails to init, it is free to print a detailed warn. The tracing api will not and switch to a new tracer will just return the error from the init callback. Note: this will be used for the return tracer. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit e6e7a65aabdb696cf05a56cfd495c49a11fd4cde Author: Frederic Weisbecker Date: Sun Nov 16 05:53:19 2008 +0100 tracing/ftrace: fix unexpected -EINVAL when longest tracer name is set Impact: fix confusing write() -EINVAL when changing the tracer The following commit d9e540762f5cdd89f24e518ad1fd31142d0b9726 remade alive the bug which made the set of a new tracer returning -EINVAL if this is the longest name of tracer. This patch corrects it. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit ee02a2e5c88ca2e4d6921f08d037b46d5bf82641 Author: Steven Rostedt Date: Sat Nov 15 16:31:41 2008 -0500 ftrace: make filtered functions effective on setting Impact: set filtered functions at time the filter is set It can be confusing when the set_filter_functions is set (or cleared) and the functions being recorded by the dynamic tracer does not match. This patch causes the code to be updated if the function tracer is enabled and the filter is changed. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 982c350b9ec4b3564d67f3627a274ae61bbc7e95 Author: Steven Rostedt Date: Sat Nov 15 16:31:41 2008 -0500 ftrace: fix dyn ftrace filter Impact: correct implementation of dyn ftrace filter The old decisions made by the filter algorithm was complex and incorrect. This lead to inconsistent enabling or disabling of functions when the filter was used. This patch simplifies that code and in doing so, corrects the usage of the filters. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 20e5227e9f55ae1969934821ccbf581563785bbe Author: Steven Rostedt Date: Fri Nov 14 16:21:19 2008 -0800 ftrace: allow NULL pointers in mcount_loc Impact: make ftrace_convert_nops() more permissive Due to the way different architecture linkers combine the data sections of the mcount_loc (the section that lists all the locations that call mcount), there may be zeros added in that section. This is usually due to strange alignments that the linker performs, that pads in zeros. This patch makes the conversion code to nops skip any pointer in the mcount_loc section that is NULL. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 31e889098a80ceb3e9e3c555d522b2686a6663c6 Author: Steven Rostedt Date: Fri Nov 14 16:21:19 2008 -0800 ftrace: pass module struct to arch dynamic ftrace functions Impact: allow archs more flexibility on dynamic ftrace implementations Dynamic ftrace has largly been developed on x86. Since x86 does not have the same limitations as other architectures, the ftrace interaction between the generic code and the architecture specific code was not flexible enough to handle some of the issues that other architectures have. Most notably, module trampolines. Due to the limited branch distance that archs make in calling kernel core code from modules, the module load code must create a trampoline to jump to what will make the larger jump into core kernel code. The problem arises when this happens to a call to mcount. Ftrace checks all code before modifying it and makes sure the current code is what it expects. Right now, there is not enough information to handle modifying module trampolines. This patch changes the API between generic dynamic ftrace code and the arch dependent code. There is now two functions for modifying code: ftrace_make_nop(mod, rec, addr) - convert the code at rec->ip into a nop, where the original text is calling addr. (mod is the module struct if called by module init) ftrace_make_caller(rec, addr) - convert the code rec->ip that should be a nop into a caller to addr. The record "rec" now has a new field called "arch" where the architecture can add any special attributes to each call site record. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit d51ad7ac48f991c4a8834485727efa99a691cb87 Author: Steven Rostedt Date: Sat Nov 15 15:48:29 2008 -0500 ftrace: replace raw_local_irq_save with local_irq_save Impact: fix lockdep disabling itself when function tracing is enabled The raw_local_irq_saves used in ftrace is causing problems with lockdep. (it thinks the irq flags are out of sync and disables itself with a warning) The raw ops here are not needed, and the normal local_irq_save is fine. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 918c115410c6cc57033835b6a401e57697f9ea4f Author: Steven Rostedt Date: Fri Nov 14 16:21:19 2008 -0800 ftrace: do not process freed records Impact: keep from converting freed records When the tracer is started or stopped, it converts all code pointed to by the saved records into callers to ftrace or nops. When modules are unloaded, their records are freed, but they still exist within the record pages. This patch changes the code to skip over freed records. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit b17e8a37a13d0e87165054714434534bb7e69f2d Author: Steven Rostedt Date: Fri Nov 14 16:21:19 2008 -0800 ftrace: disable ftrace on anomalies in trace start and stop Impact: robust feature to disable ftrace on start or stop tracing on error Currently only the initial conversion to nops will disable ftrace on an anomaly. But if an anomaly happens on start or stopping of the tracer, it will silently fail. This patch adds a check there too, to disable ftrace and warn if the conversion fails. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit f3c7ac40a99f4044b843e6e2c4f46ab2d354c563 Author: Steven Rostedt Date: Fri Nov 14 16:21:19 2008 -0800 ftrace: remove condition from ftrace_record_ip Impact: let module functions be recorded when dyn ftrace not enabled When dynamic ftrace had a daemon and a hash to record the locations of mcount callers at run time, the recording needed to stop when ftrace was disabled. But now that the recording is done at compile time and the ftrace_record_ip is only called at boot up and when a module is loaded, we no longer need to check if ftrace_enabled is set. In fact, this breaks module load if it is not set because we skip over module functions. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit c91add5fa68ea9b1f2923b3788c5dae0e60e1f6b Merge: d1aaf8c... b3535c6... ee51a1d... Author: Ingo Molnar Date: Sun Nov 16 07:28:46 2008 +0100 Merge branches 'tracing/fastboot', 'tracing/ftrace' and 'tracing/urgent' into tracing/core commit e2da9ba570418fb4061f0a5cfe4338be6470c02b Merge: 127e82e... c39555d... Author: Takashi Iwai Date: Sat Nov 15 19:05:21 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda Conflicts: sound/pci/hda/patch_sigmatel.c commit e50a906e0200084f04f8f3b7c3a14b0442d1347f Author: Eric Paris Date: Thu Nov 13 18:37:25 2008 -0500 capabilities: define get_vfs_caps_from_disk when file caps are not enabled When CONFIG_SECURITY_FILE_CAPABILITIES is not set the audit system may try to call into the capabilities function vfs_cap_from_file. This patch defines that function so kernels can build and work. Signed-off-by: Eric Paris Signed-off-by: James Morris commit 71cfc9028d762419ce4dea62b4afc9c32c4b4820 Author: Mark Brown Date: Thu Nov 13 14:33:14 2008 +0000 ASoC: Add WM8728 codec driver The WM8728 is a high performance stereo DAC designed for applications such as DVD, home theatre and digital TV. Signed-off-by: Mark Brown commit 2bef901071448e0c86af8edb4797cd5f81b6240d Author: Mark Brown Date: Fri Nov 14 14:40:46 2008 +0000 ASoC: Revert "ASoC: Add new parameter to s3c24xx_pcm_enqueue" This reverts commit 8dc840f88d9c9f75f46d5dbe489242f8a114fab6. Christian Pellegrin reported that on some systems the patch caused DMA to fail which is much more serious than the original skipped audio issue. Further investigation by Dave shows that the behaviour depends on the clock speed of the SoC - a better fix is neeeded. Signed-off-by: Mark Brown commit 127e82e3bfaad29e78ff5d4b1c41ab5e2d69c17f Author: Takashi Iwai Date: Fri Nov 14 14:03:33 2008 +0100 ALSA: hda - Support Headphone and Speaker volumes control on VAIO Split the bound Master control to individual Headphone and Speaker volume controls for VAIO with STAC982x codecs. The Master controls is still created as a vmaster. Signed-off-by: Takashi Iwai commit 8a75f4fb28766878893b4335f4b5743ce9b931fe Author: Takashi Iwai Date: Fri Nov 14 13:58:43 2008 +0100 ALSA: pcsp - Use HRTIMER_CB_IRQSAFE_UNLOCKED HRTIMER_CB_IRQSAFE was removed in the upstream. Try to use HRTIMER_CB_IRQSAFE_UNLOCKED instead. Signed-off-by: Takashi Iwai commit ef711cf1d156428d4c2911b8c86c6ce90519dc45 Author: Eric Dumazet Date: Fri Nov 14 00:53:54 2008 -0800 net: speedup dst_release() During tbench/oprofile sessions, I found that dst_release() was in third position. CPU: Core 2, speed 2999.68 MHz (estimated) Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (Unhalted core cycles) count 100000 samples % symbol name 483726 9.0185 __copy_user_zeroing_intel 191466 3.5697 __copy_user_intel 185475 3.4580 dst_release 175114 3.2648 ip_queue_xmit 153447 2.8608 tcp_sendmsg 108775 2.0280 tcp_recvmsg 102659 1.9140 sysenter_past_esp 101450 1.8914 tcp_current_mss 95067 1.7724 __copy_from_user_ll 86531 1.6133 tcp_transmit_skb Of course, all CPUS fight on the dst_entry associated with 127.0.0.1 Instead of first checking the refcount value, then decrement it, we use atomic_dec_return() to help CPU to make the right memory transaction (ie getting the cache line in exclusive mode) dst_release() is now at the fifth position, and tbench a litle bit faster ;) CPU: Core 2, speed 3000.1 MHz (estimated) Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (Unhalted core cycles) count 100000 samples % symbol name 647107 8.8072 __copy_user_zeroing_intel 258840 3.5229 ip_queue_xmit 258302 3.5155 __copy_user_intel 209629 2.8531 tcp_sendmsg 165632 2.2543 dst_release 149232 2.0311 tcp_current_mss 147821 2.0119 tcp_recvmsg 137893 1.8767 sysenter_past_esp 127473 1.7349 __copy_from_user_ll 121308 1.6510 ip_finish_output 118510 1.6129 tcp_transmit_skb 109295 1.4875 tcp_v4_rcv Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit f30ab418a1d3c5a8b83493e7d70d6876a74aa0ce Author: Jarek Poplawski Date: Thu Nov 13 22:56:30 2008 -0800 pkt_sched: Remove qdisc->ops->requeue() etc. After implementing qdisc->ops->peek() and changing sch_netem into classless qdisc there are no more qdisc->ops->requeue() users. This patch removes this method with its wrappers (qdisc_requeue()), and also unused qdisc->requeue structure. There are a few minor fixes of warnings (htb_enqueue()) and comments btw. The idea to kill ->requeue() and a similar patch were first developed by David S. Miller. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 38a7ddffa4b79d7b1fbc9bf2fa82b21b72622858 Author: Petr Tesarik Date: Thu Nov 13 22:44:11 2008 -0800 tcp: remove an unnecessary field in struct tcp_skb_cb The urg_ptr field is not used anywhere and is merely confusing. Signed-off-by: Petr Tesarik Signed-off-by: David S. Miller commit 00bcd522ea0a62f5e2a9c6ad4924cbbd8d05b026 Author: Harvey Harrison Date: Thu Nov 13 22:41:29 2008 -0800 isdn: use %pI4, remove get_{u8/u16/u32} and put_{u8/u16/u32} inlines They would have been better named as get_be16, put_be16, etc. as they were hiding an endian shift inside. They don't add much over explicitly coding the byteshifting and gcc sometimes has a problem with builtin_constant_p inside inline functions, so it may do a better job of byteswapping at compile time rather than runtime. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 722024dbb74f3ea316c285c0a71a4512e113b0c4 Author: Alexander van Heukelum Date: Thu Nov 13 13:50:20 2008 +0100 x86: irq: fix apicinterrupts on 64 bits Impact: Fix interrupt via the apicinterrupt macro Checkin 939b787130bf22887a09d8fd2641a094dcef8c22 changed the "interrupt" macro, but the "interrupt" macro is also invoked indirectly from the "apicinterrupt" macro. The "apicinterrupt" macro probably should have its own collection of systematic stubs for the same reason the main IRQ code does; as is it is a huge amount of replicated code. Signed-off-by: Alexander van Heukelum Signed-off-by: H. Peter Anvin commit 2b828925652340277a889cbc11b2d0637f7cdaf7 Merge: 3a3b7ce... 58e20d8... Author: James Morris Date: Fri Nov 14 11:29:12 2008 +1100 Merge branch 'master' into next Conflicts: security/keys/internal.h security/keys/process_keys.c security/keys/request_key.c Fixed conflicts above by using the non 'tsk' versions. Signed-off-by: James Morris commit 3a3b7ce9336952ea7b9564d976d068a238976c9d Author: David Howells Date: Fri Nov 14 10:39:28 2008 +1100 CRED: Allow kernel services to override LSM settings for task actions Allow kernel services to override LSM settings appropriate to the actions performed by a task by duplicating a set of credentials, modifying it and then using task_struct::cred to point to it when performing operations on behalf of a task. This is used, for example, by CacheFiles which has to transparently access the cache on behalf of a process that thinks it is doing, say, NFS accesses with a potentially inappropriate (with respect to accessing the cache) set of credentials. This patch provides two LSM hooks for modifying a task security record: (*) security_kernel_act_as() which allows modification of the security datum with which a task acts on other objects (most notably files). (*) security_kernel_create_files_as() which allows modification of the security datum that is used to initialise the security data on a file that a task creates. The patch also provides four new credentials handling functions, which wrap the LSM functions: (1) prepare_kernel_cred() Prepare a set of credentials for a kernel service to use, based either on a daemon's credentials or on init_cred. All the keyrings are cleared. (2) set_security_override() Set the LSM security ID in a set of credentials to a specific security context, assuming permission from the LSM policy. (3) set_security_override_from_ctx() As (2), but takes the security context as a string. (4) set_create_files_as() Set the file creation LSM security ID in a set of credentials to be the same as that on a particular inode. Signed-off-by: Casey Schaufler [Smack changes] Signed-off-by: David Howells Signed-off-by: James Morris commit 1bfdc75ae077d60a01572a7781ec6264d55ab1b9 Author: David Howells Date: Fri Nov 14 10:39:27 2008 +1100 CRED: Add a kernel_service object class to SELinux Add a 'kernel_service' object class to SELinux and give this object class two access vectors: 'use_as_override' and 'create_files_as'. The first vector is used to grant a process the right to nominate an alternate process security ID for the kernel to use as an override for the SELinux subjective security when accessing stuff on behalf of another process. For example, CacheFiles when accessing the cache on behalf on a process accessing an NFS file needs to use a subjective security ID appropriate to the cache rather then the one the calling process is using. The cachefilesd daemon will nominate the security ID to be used. The second vector is used to grant a process the right to nominate a file creation label for a kernel service to use. Signed-off-by: David Howells Signed-off-by: James Morris commit 3b11a1decef07c19443d24ae926982bc8ec9f4c0 Author: David Howells Date: Fri Nov 14 10:39:26 2008 +1100 CRED: Differentiate objective and effective subjective credentials on a task Differentiate the objective and real subjective credentials from the effective subjective credentials on a task by introducing a second credentials pointer into the task_struct. task_struct::real_cred then refers to the objective and apparent real subjective credentials of a task, as perceived by the other tasks in the system. task_struct::cred then refers to the effective subjective credentials of a task, as used by that task when it's actually running. These are not visible to the other tasks in the system. __task_cred(task) then refers to the objective/real credentials of the task in question. current_cred() refers to the effective subjective credentials of the current task. prepare_creds() uses the objective creds as a base and commit_creds() changes both pointers in the task_struct (indeed commit_creds() requires them to be the same). override_creds() and revert_creds() change the subjective creds pointer only, and the former returns the old subjective creds. These are used by NFSD, faccessat() and do_coredump(), and will by used by CacheFiles. In SELinux, current_has_perm() is provided as an alternative to task_has_perm(). This uses the effective subjective context of current, whereas task_has_perm() uses the objective/real context of the subject. Signed-off-by: David Howells Signed-off-by: James Morris commit 98870ab0a5a3f1822aee681d2997017e1c87d026 Author: David Howells Date: Fri Nov 14 10:39:26 2008 +1100 CRED: Documentation Document credentials and the new credentials API. Signed-off-by: David Howells Signed-off-by: James Morris commit d76b0d9b2d87cfc95686e148767cbf7d0e22bdc0 Author: David Howells Date: Fri Nov 14 10:39:25 2008 +1100 CRED: Use creds in file structs Attach creds to file structs and discard f_uid/f_gid. file_operations::open() methods (such as hppfs_open()) should use file->f_cred rather than current_cred(). At the moment file->f_cred will be current_cred() at this point. Signed-off-by: David Howells Reviewed-by: James Morris Signed-off-by: James Morris commit 1d045980e1eff4800472f0e81df9460640c8eee9 Author: David Howells Date: Fri Nov 14 10:39:24 2008 +1100 CRED: Prettify commoncap.c Prettify commoncap.c. Signed-off-by: David Howells Acked-by: Serge Hallyn Reviewed-by: James Morris Signed-off-by: James Morris commit a6f76f23d297f70e2a6b3ec607f7aeeea9e37e8d Author: David Howells Date: Fri Nov 14 10:39:24 2008 +1100 CRED: Make execve() take advantage of copy-on-write credentials Make execve() take advantage of copy-on-write credentials, allowing it to set up the credentials in advance, and then commit the whole lot after the point of no return. This patch and the preceding patches have been tested with the LTP SELinux testsuite. This patch makes several logical sets of alteration: (1) execve(). The credential bits from struct linux_binprm are, for the most part, replaced with a single credentials pointer (bprm->cred). This means that all the creds can be calculated in advance and then applied at the point of no return with no possibility of failure. I would like to replace bprm->cap_effective with: cap_isclear(bprm->cap_effective) but this seems impossible due to special behaviour for processes of pid 1 (they always retain their parent's capability masks where normally they'd be changed - see cap_bprm_set_creds()). The following sequence of events now happens: (a) At the start of do_execve, the current task's cred_exec_mutex is locked to prevent PTRACE_ATTACH from obsoleting the calculation of creds that we make. (a) prepare_exec_creds() is then called to make a copy of the current task's credentials and prepare it. This copy is then assigned to bprm->cred. This renders security_bprm_alloc() and security_bprm_free() unnecessary, and so they've been removed. (b) The determination of unsafe execution is now performed immediately after (a) rather than later on in the code. The result is stored in bprm->unsafe for future reference. (c) prepare_binprm() is called, possibly multiple times. (i) This applies the result of set[ug]id binaries to the new creds attached to bprm->cred. Personality bit clearance is recorded, but now deferred on the basis that the exec procedure may yet fail. (ii) This then calls the new security_bprm_set_creds(). This should calculate the new LSM and capability credentials into *bprm->cred. This folds together security_bprm_set() and parts of security_bprm_apply_creds() (these two have been removed). Anything that might fail must be done at this point. (iii) bprm->cred_prepared is set to 1. bprm->cred_prepared is 0 on the first pass of the security calculations, and 1 on all subsequent passes. This allows SELinux in (ii) to base its calculations only on the initial script and not on the interpreter. (d) flush_old_exec() is called to commit the task to execution. This performs the following steps with regard to credentials: (i) Clear pdeath_signal and set dumpable on certain circumstances that may not be covered by commit_creds(). (ii) Clear any bits in current->personality that were deferred from (c.i). (e) install_exec_creds() [compute_creds() as was] is called to install the new credentials. This performs the following steps with regard to credentials: (i) Calls security_bprm_committing_creds() to apply any security requirements, such as flushing unauthorised files in SELinux, that must be done before the credentials are changed. This is made up of bits of security_bprm_apply_creds() and security_bprm_post_apply_creds(), both of which have been removed. This function is not allowed to fail; anything that might fail must have been done in (c.ii). (ii) Calls commit_creds() to apply the new credentials in a single assignment (more or less). Possibly pdeath_signal and dumpable should be part of struct creds. (iii) Unlocks the task's cred_replace_mutex, thus allowing PTRACE_ATTACH to take place. (iv) Clears The bprm->cred pointer as the credentials it was holding are now immutable. (v) Calls security_bprm_committed_creds() to apply any security alterations that must be done after the creds have been changed. SELinux uses this to flush signals and signal handlers. (f) If an error occurs before (d.i), bprm_free() will call abort_creds() to destroy the proposed new credentials and will then unlock cred_replace_mutex. No changes to the credentials will have been made. (2) LSM interface. A number of functions have been changed, added or removed: (*) security_bprm_alloc(), ->bprm_alloc_security() (*) security_bprm_free(), ->bprm_free_security() Removed in favour of preparing new credentials and modifying those. (*) security_bprm_apply_creds(), ->bprm_apply_creds() (*) security_bprm_post_apply_creds(), ->bprm_post_apply_creds() Removed; split between security_bprm_set_creds(), security_bprm_committing_creds() and security_bprm_committed_creds(). (*) security_bprm_set(), ->bprm_set_security() Removed; folded into security_bprm_set_creds(). (*) security_bprm_set_creds(), ->bprm_set_creds() New. The new credentials in bprm->creds should be checked and set up as appropriate. bprm->cred_prepared is 0 on the first call, 1 on the second and subsequent calls. (*) security_bprm_committing_creds(), ->bprm_committing_creds() (*) security_bprm_committed_creds(), ->bprm_committed_creds() New. Apply the security effects of the new credentials. This includes closing unauthorised files in SELinux. This function may not fail. When the former is called, the creds haven't yet been applied to the process; when the latter is called, they have. The former may access bprm->cred, the latter may not. (3) SELinux. SELinux has a number of changes, in addition to those to support the LSM interface changes mentioned above: (a) The bprm_security_struct struct has been removed in favour of using the credentials-under-construction approach. (c) flush_unauthorized_files() now takes a cred pointer and passes it on to inode_has_perm(), file_has_perm() and dentry_open(). Signed-off-by: David Howells Acked-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit d84f4f992cbd76e8f39c488cf0c5d123843923b1 Author: David Howells Date: Fri Nov 14 10:39:23 2008 +1100 CRED: Inaugurate COW credentials Inaugurate copy-on-write credentials management. This uses RCU to manage the credentials pointer in the task_struct with respect to accesses by other tasks. A process may only modify its own credentials, and so does not need locking to access or modify its own credentials. A mutex (cred_replace_mutex) is added to the task_struct to control the effect of PTRACE_ATTACHED on credential calculations, particularly with respect to execve(). With this patch, the contents of an active credentials struct may not be changed directly; rather a new set of credentials must be prepared, modified and committed using something like the following sequence of events: struct cred *new = prepare_creds(); int ret = blah(new); if (ret < 0) { abort_creds(new); return ret; } return commit_creds(new); There are some exceptions to this rule: the keyrings pointed to by the active credentials may be instantiated - keyrings violate the COW rule as managing COW keyrings is tricky, given that it is possible for a task to directly alter the keys in a keyring in use by another task. To help enforce this, various pointers to sets of credentials, such as those in the task_struct, are declared const. The purpose of this is compile-time discouragement of altering credentials through those pointers. Once a set of credentials has been made public through one of these pointers, it may not be modified, except under special circumstances: (1) Its reference count may incremented and decremented. (2) The keyrings to which it points may be modified, but not replaced. The only safe way to modify anything else is to create a replacement and commit using the functions described in Documentation/credentials.txt (which will be added by a later patch). This patch and the preceding patches have been tested with the LTP SELinux testsuite. This patch makes several logical sets of alteration: (1) execve(). This now prepares and commits credentials in various places in the security code rather than altering the current creds directly. (2) Temporary credential overrides. do_coredump() and sys_faccessat() now prepare their own credentials and temporarily override the ones currently on the acting thread, whilst preventing interference from other threads by holding cred_replace_mutex on the thread being dumped. This will be replaced in a future patch by something that hands down the credentials directly to the functions being called, rather than altering the task's objective credentials. (3) LSM interface. A number of functions have been changed, added or removed: (*) security_capset_check(), ->capset_check() (*) security_capset_set(), ->capset_set() Removed in favour of security_capset(). (*) security_capset(), ->capset() New. This is passed a pointer to the new creds, a pointer to the old creds and the proposed capability sets. It should fill in the new creds or return an error. All pointers, barring the pointer to the new creds, are now const. (*) security_bprm_apply_creds(), ->bprm_apply_creds() Changed; now returns a value, which will cause the process to be killed if it's an error. (*) security_task_alloc(), ->task_alloc_security() Removed in favour of security_prepare_creds(). (*) security_cred_free(), ->cred_free() New. Free security data attached to cred->security. (*) security_prepare_creds(), ->cred_prepare() New. Duplicate any security data attached to cred->security. (*) security_commit_creds(), ->cred_commit() New. Apply any security effects for the upcoming installation of new security by commit_creds(). (*) security_task_post_setuid(), ->task_post_setuid() Removed in favour of security_task_fix_setuid(). (*) security_task_fix_setuid(), ->task_fix_setuid() Fix up the proposed new credentials for setuid(). This is used by cap_set_fix_setuid() to implicitly adjust capabilities in line with setuid() changes. Changes are made to the new credentials, rather than the task itself as in security_task_post_setuid(). (*) security_task_reparent_to_init(), ->task_reparent_to_init() Removed. Instead the task being reparented to init is referred directly to init's credentials. NOTE! This results in the loss of some state: SELinux's osid no longer records the sid of the thread that forked it. (*) security_key_alloc(), ->key_alloc() (*) security_key_permission(), ->key_permission() Changed. These now take cred pointers rather than task pointers to refer to the security context. (4) sys_capset(). This has been simplified and uses less locking. The LSM functions it calls have been merged. (5) reparent_to_kthreadd(). This gives the current thread the same credentials as init by simply using commit_thread() to point that way. (6) __sigqueue_alloc() and switch_uid() __sigqueue_alloc() can't stop the target task from changing its creds beneath it, so this function gets a reference to the currently applicable user_struct which it then passes into the sigqueue struct it returns if successful. switch_uid() is now called from commit_creds(), and possibly should be folded into that. commit_creds() should take care of protecting __sigqueue_alloc(). (7) [sg]et[ug]id() and co and [sg]et_current_groups. The set functions now all use prepare_creds(), commit_creds() and abort_creds() to build and check a new set of credentials before applying it. security_task_set[ug]id() is called inside the prepared section. This guarantees that nothing else will affect the creds until we've finished. The calling of set_dumpable() has been moved into commit_creds(). Much of the functionality of set_user() has been moved into commit_creds(). The get functions all simply access the data directly. (8) security_task_prctl() and cap_task_prctl(). security_task_prctl() has been modified to return -ENOSYS if it doesn't want to handle a function, or otherwise return the return value directly rather than through an argument. Additionally, cap_task_prctl() now prepares a new set of credentials, even if it doesn't end up using it. (9) Keyrings. A number of changes have been made to the keyrings code: (a) switch_uid_keyring(), copy_keys(), exit_keys() and suid_keys() have all been dropped and built in to the credentials functions directly. They may want separating out again later. (b) key_alloc() and search_process_keyrings() now take a cred pointer rather than a task pointer to specify the security context. (c) copy_creds() gives a new thread within the same thread group a new thread keyring if its parent had one, otherwise it discards the thread keyring. (d) The authorisation key now points directly to the credentials to extend the search into rather pointing to the task that carries them. (e) Installing thread, process or session keyrings causes a new set of credentials to be created, even though it's not strictly necessary for process or session keyrings (they're shared). (10) Usermode helper. The usermode helper code now carries a cred struct pointer in its subprocess_info struct instead of a new session keyring pointer. This set of credentials is derived from init_cred and installed on the new process after it has been cloned. call_usermodehelper_setup() allocates the new credentials and call_usermodehelper_freeinfo() discards them if they haven't been used. A special cred function (prepare_usermodeinfo_creds()) is provided specifically for call_usermodehelper_setup() to call. call_usermodehelper_setkeys() adjusts the credentials to sport the supplied keyring as the new session keyring. (11) SELinux. SELinux has a number of changes, in addition to those to support the LSM interface changes mentioned above: (a) selinux_setprocattr() no longer does its check for whether the current ptracer can access processes with the new SID inside the lock that covers getting the ptracer's SID. Whilst this lock ensures that the check is done with the ptracer pinned, the result is only valid until the lock is released, so there's no point doing it inside the lock. (12) is_single_threaded(). This function has been extracted from selinux_setprocattr() and put into a file of its own in the lib/ directory as join_session_keyring() now wants to use it too. The code in SELinux just checked to see whether a task shared mm_structs with other tasks (CLONE_VM), but that isn't good enough. We really want to know if they're part of the same thread group (CLONE_THREAD). (13) nfsd. The NFS server daemon now has to use the COW credentials to set the credentials it is going to use. It really needs to pass the credentials down to the functions it calls, but it can't do that until other patches in this series have been applied. Signed-off-by: David Howells Acked-by: James Morris Signed-off-by: James Morris commit 745ca2475a6ac596e3d8d37c2759c0fbe2586227 Author: David Howells Date: Fri Nov 14 10:39:22 2008 +1100 CRED: Pass credentials through dentry_open() Pass credentials through dentry_open() so that the COW creds patch can have SELinux's flush_unauthorized_files() pass the appropriate creds back to itself when it opens its null chardev. The security_dentry_open() call also now takes a creds pointer, as does the dentry_open hook in struct security_operations. Signed-off-by: David Howells Acked-by: James Morris Signed-off-by: James Morris commit 88e67f3b8898c5ea81d2916dd5b8bc9c0c35ba13 Author: David Howells Date: Fri Nov 14 10:39:21 2008 +1100 CRED: Make inode_has_perm() and file_has_perm() take a cred pointer Make inode_has_perm() and file_has_perm() take a cred pointer rather than a task pointer. Signed-off-by: David Howells Acked-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 6cc88bc45ce8043171089c9592da223dfab91823 Author: David Howells Date: Fri Nov 14 10:39:21 2008 +1100 CRED: Rename is_single_threaded() to is_wq_single_threaded() Rename is_single_threaded() to is_wq_single_threaded() so that a new is_single_threaded() can be created that refers to tasks rather than waitqueues. Signed-off-by: David Howells Reviewed-by: James Morris Signed-off-by: James Morris commit bb952bb98a7e479262c7eb25d5592545a3af147d Author: David Howells Date: Fri Nov 14 10:39:20 2008 +1100 CRED: Separate per-task-group keyrings from signal_struct Separate per-task-group keyrings from signal_struct and dangle their anchor from the cred struct rather than the signal_struct. Signed-off-by: David Howells Reviewed-by: James Morris Signed-off-by: James Morris commit 275bb41e9d058fbb327e7642f077e1beaeac162e Author: David Howells Date: Fri Nov 14 10:39:19 2008 +1100 CRED: Wrap access to SELinux's task SID Wrap access to SELinux's task SID, using task_sid() and current_sid() as appropriate. Signed-off-by: David Howells Acked-by: James Morris Signed-off-by: James Morris commit c69e8d9c01db2adc503464993c358901c9af9de4 Author: David Howells Date: Fri Nov 14 10:39:19 2008 +1100 CRED: Use RCU to access another task's creds and to release a task's own creds Use RCU to access another task's creds and to release a task's own creds. This means that it will be possible for the credentials of a task to be replaced without another task (a) requiring a full lock to read them, and (b) seeing deallocated memory. Signed-off-by: David Howells Acked-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 86a264abe542cfececb4df129bc45a0338d8cdb9 Author: David Howells Date: Fri Nov 14 10:39:18 2008 +1100 CRED: Wrap current->cred and a few other accessors Wrap current->cred and a few other accessors to hide their actual implementation. Signed-off-by: David Howells Acked-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit f1752eec6145c97163dbce62d17cf5d928e28a27 Author: David Howells Date: Fri Nov 14 10:39:17 2008 +1100 CRED: Detach the credentials from task_struct Detach the credentials from task_struct, duplicating them in copy_process() and releasing them in __put_task_struct(). Signed-off-by: David Howells Acked-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit b6dff3ec5e116e3af6f537d4caedcad6b9e5082a Author: David Howells Date: Fri Nov 14 10:39:16 2008 +1100 CRED: Separate task security context from task_struct Separate the task security context from task_struct. At this point, the security data is temporarily embedded in the task_struct with two pointers pointing to it. Note that the Alpha arch is altered as it refers to (E)UID and (E)GID in entry.S via asm-offsets. With comment fixes Signed-off-by: Marc Dionne Signed-off-by: David Howells Acked-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 15a2460ed0af7538ca8e6c610fe607a2cd9da142 Author: David Howells Date: Fri Nov 14 10:39:15 2008 +1100 CRED: Constify the kernel_cap_t arguments to the capset LSM hooks Constify the kernel_cap_t arguments to the capset LSM hooks. Signed-off-by: David Howells Acked-by: Serge Hallyn Acked-by: James Morris Signed-off-by: James Morris commit 1cdcbec1a3372c0c49c59d292e708fd07b509f18 Author: David Howells Date: Fri Nov 14 10:39:14 2008 +1100 CRED: Neuter sys_capset() Take away the ability for sys_capset() to affect processes other than current. This means that current will not need to lock its own credentials when reading them against interference by other processes. This has effectively been the case for a while anyway, since: (1) Without LSM enabled, sys_capset() is disallowed. (2) With file-based capabilities, sys_capset() is neutered. Signed-off-by: David Howells Acked-by: Serge Hallyn Acked-by: Andrew G. Morgan Acked-by: James Morris Signed-off-by: James Morris commit 8bbf4976b59fc9fc2861e79cab7beb3f6d647640 Author: David Howells Date: Fri Nov 14 10:39:14 2008 +1100 KEYS: Alter use of key instantiation link-to-keyring argument Alter the use of the key instantiation and negation functions' link-to-keyring arguments. Currently this specifies a keyring in the target process to link the key into, creating the keyring if it doesn't exist. This, however, can be a problem for copy-on-write credentials as it means that the instantiating process can alter the credentials of the requesting process. This patch alters the behaviour such that: (1) If keyctl_instantiate_key() or keyctl_negate_key() are given a specific keyring by ID (ringid >= 0), then that keyring will be used. (2) If keyctl_instantiate_key() or keyctl_negate_key() are given one of the special constants that refer to the requesting process's keyrings (KEY_SPEC_*_KEYRING, all <= 0), then: (a) If sys_request_key() was given a keyring to use (destringid) then the key will be attached to that keyring. (b) If sys_request_key() was given a NULL keyring, then the key being instantiated will be attached to the default keyring as set by keyctl_set_reqkey_keyring(). (3) No extra link will be made. Decision point (1) follows current behaviour, and allows those instantiators who've searched for a specifically named keyring in the requestor's keyring so as to partition the keys by type to still have their named keyrings. Decision point (2) allows the requestor to make sure that the key or keys that get produced by request_key() go where they want, whilst allowing the instantiator to request that the key is retained. This is mainly useful for situations where the instantiator makes a secondary request, the key for which should be retained by the initial requestor: +-----------+ +--------------+ +--------------+ | | | | | | | Requestor |------->| Instantiator |------->| Instantiator | | | | | | | +-----------+ +--------------+ +--------------+ request_key() request_key() This might be useful, for example, in Kerberos, where the requestor requests a ticket, and then the ticket instantiator requests the TGT, which someone else then has to go and fetch. The TGT, however, should be retained in the keyrings of the requestor, not the first instantiator. To make this explict an extra special keyring constant is also added. Signed-off-by: David Howells Reviewed-by: James Morris Signed-off-by: James Morris commit e9e349b051d98799b743ebf248cc2d986fedf090 Author: David Howells Date: Fri Nov 14 10:39:13 2008 +1100 KEYS: Disperse linux/key_ui.h Disperse the bits of linux/key_ui.h as the reason they were put here (keyfs) didn't get in. Signed-off-by: David Howells Reviewed-by: James Morris Signed-off-by: James Morris commit 76aac0e9a17742e60d408be1a706e9aaad370891 Author: David Howells Date: Fri Nov 14 10:39:12 2008 +1100 CRED: Wrap task credential accesses in the core kernel Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Al Viro Cc: linux-audit@redhat.com Cc: containers@lists.linux-foundation.org Cc: linux-mm@kvack.org Signed-off-by: James Morris commit b103c59883f1ec6e4d548b25054608cb5724453c Author: David Howells Date: Fri Nov 14 10:39:11 2008 +1100 CRED: Wrap task credential accesses in the capabilities code Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Andrew G. Morgan Signed-off-by: James Morris commit 47d804bfa1857b0edcac972c86499dcd14df3cf2 Author: David Howells Date: Fri Nov 14 10:39:11 2008 +1100 CRED: Wrap task credential accesses in the key management code Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 8192b0c482d7078fcdcb4854341b977426f6f09b Author: David Howells Date: Fri Nov 14 10:39:10 2008 +1100 CRED: Wrap task credential accesses in the networking subsystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: netdev@vger.kernel.org Signed-off-by: James Morris commit 19d65624d38d6296dddf725d1b03baa8a491a553 Author: David Howells Date: Fri Nov 14 10:39:10 2008 +1100 CRED: Wrap task credential accesses in the UNIX socket protocol Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: netdev@vger.kernel.org Signed-off-by: James Morris commit 8f4194026bb1e3d95fedb340a2935895845ea1d5 Author: David Howells Date: Fri Nov 14 10:39:09 2008 +1100 CRED: Wrap task credential accesses in the SunRPC protocol Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Trond Myklebust Cc: J. Bruce Fields Cc: Neil Brown Cc: linux-nfs@vger.kernel.org Signed-off-by: James Morris commit c2a2b8d3b299feb7ac62c2825941dec57141f6f4 Author: David Howells Date: Fri Nov 14 10:39:08 2008 +1100 CRED: Wrap task credential accesses in the ROSE protocol Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Ralf Baechle Cc: linux-hams@vger.kernel.org Signed-off-by: James Morris commit ba95b2353cf1a7f7f236946530ccf5d0ccec6b38 Author: David Howells Date: Fri Nov 14 10:39:08 2008 +1100 CRED: Wrap task credential accesses in the netrom protocol Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Ralf Baechle Cc: linux-hams@vger.kernel.org Signed-off-by: James Morris commit f82b359023c8b7b343edef6c63322b900d9e74a1 Author: David Howells Date: Fri Nov 14 10:39:07 2008 +1100 CRED: Wrap task credential accesses in the IPv6 protocol Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: netdev@vger.kernel.org Signed-off-by: James Morris commit 734004072e05ae81c3cdd0a04ee37868fb09b71e Author: David Howells Date: Fri Nov 14 10:39:06 2008 +1100 CRED: Wrap task credential accesses in the AX25 protocol Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Ralf Baechle Cc: linux-hams@vger.kernel.org Signed-off-by: James Morris commit 414c0708d0d60eccf8345c405ac81cf32c43e901 Author: David Howells Date: Fri Nov 14 10:39:06 2008 +1100 CRED: Wrap task credential accesses in the SYSV IPC subsystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit da9592edebceeba1b9301beafe80ec8b9c2db0ce Author: David Howells Date: Fri Nov 14 10:39:05 2008 +1100 CRED: Wrap task credential accesses in the filesystem subsystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Al Viro Signed-off-by: James Morris commit 82ab8deda7fef36f067ccdeacc3b3caefc970f89 Author: David Howells Date: Fri Nov 14 10:39:04 2008 +1100 CRED: Wrap task credential accesses in the XFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: xfs@oss.sgi.com Signed-off-by: James Morris commit a5f773a65928a10eb5e5534fe6da6b427ac5b646 Author: David Howells Date: Fri Nov 14 10:39:04 2008 +1100 CRED: Wrap task credential accesses in the UFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Evgeniy Dushistov Signed-off-by: James Morris commit 7706bb39adff18a48ff98f203ffcbb00878d8589 Author: David Howells Date: Fri Nov 14 10:39:03 2008 +1100 CRED: Wrap task credential accesses in the UDF filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Jan Kara Signed-off-by: James Morris commit 26bf1946e69abf9528beda7adb4a783c439a5f7b Author: David Howells Date: Fri Nov 14 10:39:03 2008 +1100 CRED: Wrap task credential accesses in the UBIFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Artem Bityutskiy Cc: Adrian Hunter Cc: linux-mtd@lists.infradead.org Signed-off-by: James Morris commit fc7333deb741da8aafbda9ff905d3ff2c5e28a66 Author: David Howells Date: Fri Nov 14 10:39:02 2008 +1100 CRED: Wrap task credential accesses in the SYSV filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Christoph Hellwig Signed-off-by: James Morris commit e2950b178e8fa1cb0b122c212b6cd48e75e2b41f Author: David Howells Date: Fri Nov 14 10:39:01 2008 +1100 CRED: Wrap task credential accesses in the SMBFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Steven French Signed-off-by: James Morris commit 414cb209eaca52b708debc014a8085b7fbb15f14 Author: David Howells Date: Fri Nov 14 10:39:01 2008 +1100 CRED: Wrap task credential accesses in the ReiserFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: reiserfs-devel@vger.kernel.org Signed-off-by: James Morris commit 0785f4dad0f7173f3b7133e3c274fe130e8fdbc6 Author: David Howells Date: Fri Nov 14 10:39:00 2008 +1100 CRED: Wrap task credential accesses in the RAMFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit c222d53eb32ea0c9516261268a24c6f162423acd Author: David Howells Date: Fri Nov 14 10:38:59 2008 +1100 CRED: Wrap task credential accesses in the OMFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Bob Copeland Cc: linux-karma-devel@lists.sourceforge.net Signed-off-by: James Morris commit b19c2a3b839b9dfb3f258e8943dc3784ae20c7b0 Author: David Howells Date: Fri Nov 14 10:38:59 2008 +1100 CRED: Wrap task credential accesses in the OCFS2 filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Mark Fasheh Cc: Joel Becker Cc: ocfs2-devel@oss.oracle.com Signed-off-by: James Morris commit 5cc0a84076e172c18fb927781f44c6e47d6c5a06 Author: David Howells Date: Fri Nov 14 10:38:58 2008 +1100 CRED: Wrap task credential accesses in the NFS daemon Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: J. Bruce Fields Cc: Neil Brown Cc: linux-nfs@vger.kernel.org Signed-off-by: James Morris commit 48937024c65db88abafd0fb14021db31f09cd4ec Author: David Howells Date: Fri Nov 14 10:38:58 2008 +1100 CRED: Wrap task credential accesses in the NCPFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Petr Vandrovec Signed-off-by: James Morris commit 922c030f260df9d256fecea3164210e7cb2ce407 Author: David Howells Date: Fri Nov 14 10:38:57 2008 +1100 CRED: Wrap task credential accesses in the Minix filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 8f659adfa246a1e57d0cd3f109accfe071f2d0f1 Author: David Howells Date: Fri Nov 14 10:38:56 2008 +1100 CRED: Wrap task credential accesses in the JFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Dave Kleikamp Cc: jfs-discussion@lists.sourceforge.net Signed-off-by: James Morris commit 77c70de15a74801f427ee5fb85ddfdde48ed84f2 Author: David Howells Date: Fri Nov 14 10:38:56 2008 +1100 CRED: Wrap task credential accesses in the hugetlbfs filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: William Irwin Signed-off-by: James Morris commit de395b8ac25da56893d83cd5da67cf927dfa7e4d Author: David Howells Date: Fri Nov 14 10:38:55 2008 +1100 CRED: Wrap task credential accesses in the HPFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Mikulas Patocka Signed-off-by: James Morris commit 4ac8489a7294dcf92127825d74f2d981143e825d Author: David Howells Date: Fri Nov 14 10:38:54 2008 +1100 CRED: Wrap task credential accesses in the HFSplus filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Roman Zippel Signed-off-by: James Morris commit 94c9a5ee4cc7fb7eee2a9f9e47f7ccea6b1869ff Author: David Howells Date: Fri Nov 14 10:38:54 2008 +1100 CRED: Wrap task credential accesses in the HFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Roman Zippel Signed-off-by: James Morris commit 3de7be335593859bc84a122b1338ec358bf70e9b Author: David Howells Date: Fri Nov 14 10:38:53 2008 +1100 CRED: Wrap task credential accesses in the GFS2 filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Steven Whitehouse Cc: cluster-devel@redhat.com Signed-off-by: James Morris commit 2186a71cbcddda946dd3cfccd5285e210ec3af10 Author: David Howells Date: Fri Nov 14 10:38:53 2008 +1100 CRED: Wrap task credential accesses in the FUSE filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Miklos Szeredi Cc: fuse-devel@lists.sourceforge.net Signed-off-by: James Morris commit f0ce7ee3a8ec1e80b6f460983ef1f26e603026f5 Author: David Howells Date: Fri Nov 14 10:38:52 2008 +1100 CRED: Wrap task credential accesses in the FAT filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: OGAWA Hirofumi Signed-off-by: James Morris commit 4c9c544e4987efe6643ad5692af47a0abfd4e0d1 Author: David Howells Date: Fri Nov 14 10:38:51 2008 +1100 CRED: Wrap task credential accesses in the Ext4 filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Stephen Tweedie Cc: Andrew Morton Cc: adilger@sun.com Cc: linux-ext4@vger.kernel.org Signed-off-by: James Morris commit 6a2f90e9fae0824e8b6b123f1ea7d9fff9079ef3 Author: David Howells Date: Fri Nov 14 10:38:51 2008 +1100 CRED: Wrap task credential accesses in the Ext3 filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Stephen Tweedie Cc: Andrew Morton Cc: adilger@sun.com Cc: linux-ext4@vger.kernel.org Signed-off-by: James Morris commit a8dd4d67bdf9c48c5ebfa366592fde7e2d318b4f Author: David Howells Date: Fri Nov 14 10:38:50 2008 +1100 CRED: Wrap task credential accesses in the Ext2 filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: linux-ext4@vger.kernel.org Signed-off-by: James Morris commit 4eea03539d9a8e3f5056aed690efde1f75535e7b Author: David Howells Date: Fri Nov 14 10:38:49 2008 +1100 CRED: Wrap task credential accesses in the eCryptFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Mike Halcrow Cc: Phillip Hellewell Cc: ecryptfs-devel@lists.sourceforge.net Signed-off-by: James Morris commit ec4c2aacd16672febca053109eb9ddf672108ca1 Author: David Howells Date: Fri Nov 14 10:38:49 2008 +1100 CRED: Wrap task credential accesses in the devpts filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 97b7702cd1bdb8e89bde6c70aa983e7b82a52ec6 Author: David Howells Date: Fri Nov 14 10:38:48 2008 +1100 CRED: Wrap task credential accesses in the Coda filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Jan Harkes Cc: codalist@coda.cs.cmu.edu Signed-off-by: James Morris commit a001e5b558f25eb1e588522d73ac949b643b7a37 Author: David Howells Date: Fri Nov 14 10:38:47 2008 +1100 CRED: Wrap task credential accesses in the CIFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Steve French Cc: linux-cifs-client@lists.samba.org Signed-off-by: James Morris commit 1109b07b7dcb938de7a0d65efc1b4739dc4e9787 Author: David Howells Date: Fri Nov 14 10:38:47 2008 +1100 CRED: Wrap task credential accesses in the BFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Tigran A. Aivazian Signed-off-by: James Morris commit 0eb790e3a2d872192af8ceff2cabff8594c56440 Author: David Howells Date: Fri Nov 14 10:38:46 2008 +1100 CRED: Wrap task credential accesses in the autofs4 filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Ian Kent Cc: autofs@linux.kernel.org Signed-off-by: James Morris commit 73c646e4afb658e601a46bf1b57925450307a119 Author: David Howells Date: Fri Nov 14 10:38:45 2008 +1100 CRED: Wrap task credential accesses in the autofs filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: H. Peter Anvin Cc: autofs@linux.kernel.org Signed-off-by: James Morris commit 215599815d8977a4338fbd27d6fe2c1721200197 Author: David Howells Date: Fri Nov 14 10:38:45 2008 +1100 CRED: Wrap task credential accesses in the AFFS filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Roman Zippel Signed-off-by: James Morris commit f8b9d53a31dca2c1185232c5fe2731d99cc963c8 Author: David Howells Date: Fri Nov 14 10:38:44 2008 +1100 CRED: Wrap task credential accesses in 9P2000 filesystem Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Reviewed-by: Eric Van Hensbergen Cc: Ron Minnich Cc: Latchesar Ionkov Cc: v9fs-developer@lists.sourceforge.net Signed-off-by: James Morris commit cd80ca8a03fd712b046028c1f66e10f3aec43eee Author: David Howells Date: Fri Nov 14 10:38:43 2008 +1100 CRED: Wrap task credential accesses in the USB driver Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Greg Kroah-Hartman Cc: linux-usb@vger.kernel.org Signed-off-by: James Morris commit ee9785ada3573700efe77b78c03d4e26a4e1bf26 Author: David Howells Date: Fri Nov 14 10:38:43 2008 +1100 CRED: Wrap task credential accesses in the network device drivers Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: netdev@vger.kernel.org Signed-off-by: James Morris commit 0e164b685cab357546a9a09ef234922b82ecbfaf Author: David Howells Date: Fri Nov 14 10:38:42 2008 +1100 CRED: Wrap task credential accesses in the ISDN drivers Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Karsten Keil Cc: isdn4linux@listserv.isdn4linux.de Signed-off-by: James Morris commit 66303bce9b924e35e435d35409d3abc371755767 Author: David Howells Date: Fri Nov 14 10:38:41 2008 +1100 CRED: Wrap task credential accesses in the tty driver Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Alan Cox Signed-off-by: James Morris commit b0fafa816ece0080771355de6158b4dfa8531a95 Author: David Howells Date: Fri Nov 14 10:38:41 2008 +1100 CRED: Wrap task credential accesses in the block loopback driver Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Jens Axboe Signed-off-by: James Morris commit 350b4da71f8326b9319ada7b701f2bce2e1285b7 Author: David Howells Date: Fri Nov 14 10:38:40 2008 +1100 CRED: Wrap task credential accesses in the x86 arch Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Thomas Gleixner Cc: Ingo Molnar Cc: H. Peter Anvin Signed-off-by: James Morris commit e54237053204caebacb3eda3d37363f1a6118707 Author: David Howells Date: Fri Nov 14 10:38:39 2008 +1100 CRED: Wrap task credential accesses in the S390 arch Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Martin Schwidefsky Cc: Heiko Carstens Cc: linux-s390@vger.kernel.org Signed-off-by: James Morris commit 1330deb0f6e89525c8e9fcbd6b13522c9243bfc0 Author: David Howells Date: Fri Nov 14 10:38:39 2008 +1100 CRED: Wrap task credential accesses in the PowerPC arch Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: linuxppc-dev@ozlabs.org Signed-off-by: James Morris commit 25e15731af0c8d7adc58f72327dab7293857129f Author: David Howells Date: Fri Nov 14 10:38:38 2008 +1100 CRED: Wrap task credential accesses in the PA-RISC arch Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Kyle McMartin Cc: Matthew Wilcox Cc: Grant Grundler Cc: linux-parisc@vger.kernel.org Signed-off-by: James Morris commit b4212737a39e4cfb0fb66769acbc0bd182a93253 Author: David Howells Date: Fri Nov 14 10:38:37 2008 +1100 CRED: Wrap task credential accesses in the MIPS arch Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Acked-by: Ralf Baechle Cc: linux-mips@linux-mips.org Signed-off-by: James Morris commit ef81ee9855d6c605ed6090a8018c78572cc68b5c Author: David Howells Date: Fri Nov 14 10:38:37 2008 +1100 CRED: Wrap task credential accesses in the IA64 arch Wrap access to task credentials so that they can be separated more easily from the task_struct during the introduction of COW creds. Change most current->(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id(). Change some task->e?[ug]id to task_e?[ug]id(). In some places it makes more sense to use RCU directly rather than a convenient wrapper; these will be addressed by later patches. Signed-off-by: David Howells Reviewed-by: James Morris Acked-by: Serge Hallyn Cc: Tony Luck Cc: linux-ia64@vger.kernel.org Signed-off-by: James Morris commit d1aaf8cf8afe70a8c2235a565885291fe290c57c Author: Stephen Hemminger Date: Thu Nov 13 08:33:00 2008 -0800 tracing/fastboot: put error message on stderr Since this scripts output is usually redirected, put error messages on standard error and exit with error code if no data is found. Signed-off-by: Stephen Hemminger Acked-by: Arjan van de Ven Signed-off-by: Ingo Molnar commit b3535c6390f27d04273e4eee0bc687f171fbf5f4 Author: walimis Date: Fri Nov 14 00:21:02 2008 +0800 ftrace: remove unnecessary if condition of __unregister_ftrace_function Because it has goto out before ftrace_list == &ftrace_list_end, that's to say, we never meet this condition. Signed-off-by: walimis Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit cd80bc6f4811b48eb68716c8255bf7e5f0006caa Merge: c4da29c... 6a12afb... Author: Takashi Iwai Date: Thu Nov 13 14:38:00 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda Conflicts: sound/pci/hda/patch_sigmatel.c commit 0b6048561d5f505e3a027a519a6d0f488ba9a2bb Author: Jarkko Nikula Date: Wed Nov 12 17:05:51 2008 +0200 ASoC: OMAP: Add more supported sample rates into McBSP DAI driver Originally it was put too tight limits to support only 44.1 kHz and 48 kHz sample rates in McBSP DAI driver. Extend it now to 8 kHz - 96 kHz. With 96 kHz and 2*16 bits, bit clock is 3.072 MHz < 3.125 MHz (I2S max?). Tested on Nokia N810 with TVL320AIC33 from rates 8 - 96 kHz and on Texas Instruments Beagle with TWL4030 from rates 8 - 48 kHz. Signed-off-by: Jarkko Nikula Acked-by: Steve Sakoman Acked-by: Arun KS Signed-off-by: Mark Brown commit bbba944410310181de14a5c60a7c161ff2447dd9 Author: Jarkko Nikula Date: Wed Nov 12 17:05:41 2008 +0200 ASoC: Fix supported sample rates of TWL4030 audio codec TWL4030 currently supports rates between 8 kHz and 48 kHz and sets the codec mode register accordingly in twl4030_hw_params. Expose this info so that ASoC can match other rates than 44.1 kHz or 48 kHz as well. Signed-off-by: Jarkko Nikula Acked-by: Steve Sakoman Signed-off-by: Mark Brown commit c4da29ca08e09ed41a2030c1f7b5860f116573be Author: Yang, Libin Date: Thu Nov 13 11:07:07 2008 +0100 ALSA: hda - support detecting HD Audio devices with PCI class code The patch uses HD Audio PCI class code to detect AMD HD Audio cards. Signed-off-by: Libin Yang Signed-off-by: Takashi Iwai commit 12ef7d448613ead2babd41c3ebfa1fe03c20edef Author: Steven Rostedt Date: Wed Nov 12 17:52:38 2008 -0500 ftrace: CPU buffer start annotation clean ups Impact: better handling of CPU buffer start annotation Because of the confusion with the per CPU buffers wrapping where one CPU might be more active at the end of the trace than the other CPUs causing that one CPU to have a shorter history. Kernel developers were confused by the "missing" data of that one CPU at the beginning of the trace output. An annotation was added to the trace output to show that the buffer had started: # tracer: function # # TASK-PID CPU# TIMESTAMP FUNCTION # | | | | | ##### CPU 3 buffer started #### -0 [003] 158.192959: smp_apic_timer_interrupt [...] -0 [003] 161.556520: default_idle ##### CPU 1 buffer started #### -0 [001] 161.592494: hrtimer_force_reprogram [etc] But this annotation gets a bit messy when tracers do not fill the buffers. This patch does a couple of things: One) it adds a flag to trace_options to disable these annotations Two) it does not annotate if the tracer did not overflow its buffer. This makes the output much cleaner. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit ee6bce52276c0717ed3e63296e5d9465d339e923 Author: Steven Rostedt Date: Wed Nov 12 17:52:37 2008 -0500 ftrace: rename iter_ctrl to trace_options Impact: rename file /debug/tracing/iter_ctrl to /debug/tracing/trace_options The original ftrace had a file called "iter_ctrl" that would control the way the output was iterated. But this file grew into a catch all for different trace options. This patch renames the file from iter_ctrl to trace_options to reflect this change. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 1696b2b0f44a8d42f3e6b1ea90c21790871c04d9 Author: Steven Rostedt Date: Thu Nov 13 00:09:35 2008 -0500 ftrace: show buffer size in kilobytes Impact: change the units of buffer_size_kb to kilobytes This patch changes the units of the buffer_size_kb file to kilobytes. Reading and writing to the file uses kilobytes as units. To help users to know what units are used, the output of the file now looks like: # cat /debug/tracing/buffer_size_kb 1408 Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit a94c80e78bc9f4493ffc25a02d5d7bcd93c399d0 Author: Steven Rostedt Date: Wed Nov 12 17:52:36 2008 -0500 ftrace: rename trace_entries to buffer_size_kb Impact: rename of debugfs file trace_entries to buffer_size_kb The original ftrace had fixed size entries, and the number of entries was shown and modified via the file called trace_entries. By converting to the unified trace buffer, we now allow for variable size entries which makes the meaning of trace_entries pointless. Since trace_size might be confused to the size of the trace, this patch names it "buffer_size_kb" (thanks to Arjan van de Ven for this idea). [ mingo@elte.hu: changed from buffer_size to buffer_size_kb ] ( Note, the units are still bytes - the next patch changes that, to keep the wide rename patch separate from the unit-change patch. ) Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 24de38620dd3504782c90c0892eef888d0c351e9 Merge: 94b80ff... 68f96c0... 1dc1c6a... 47e74f2... Author: Ingo Molnar Date: Thu Nov 13 09:48:03 2008 +0100 Merge branches 'tracing/branch-tracer', 'tracing/fastboot', 'tracing/function-return-tracer' and 'tracing/urgent' into tracing/core commit 524ad0a79126efabf58d0a49eace6155ab5b4549 Author: Wang Chen Date: Wed Nov 12 23:39:10 2008 -0800 netdevice: safe convert to netdev_priv() #part-4 We have some reasons to kill netdev->priv: 1. netdev->priv is equal to netdev_priv(). 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously netdev_priv() is more flexible than netdev->priv. But we cann't kill netdev->priv, because so many drivers reference to it directly. This patch is a safe convert for netdev->priv to netdev_priv(netdev). Since all of the netdev->priv is only for read. But it is too big to be sent in one mail. I split it to 4 parts and make every part smaller than 100,000 bytes, which is max size allowed by vger. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 8f15ea42b64941001a401cf855a0869e24f3a845 Author: Wang Chen Date: Wed Nov 12 23:38:36 2008 -0800 netdevice: safe convert to netdev_priv() #part-3 We have some reasons to kill netdev->priv: 1. netdev->priv is equal to netdev_priv(). 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously netdev_priv() is more flexible than netdev->priv. But we cann't kill netdev->priv, because so many drivers reference to it directly. This patch is a safe convert for netdev->priv to netdev_priv(netdev). Since all of the netdev->priv is only for read. But it is too big to be sent in one mail. I split it to 4 parts and make every part smaller than 100,000 bytes, which is max size allowed by vger. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 4cf1653aa90c6320dc8032443b5e322820aa28b1 Author: Wang Chen Date: Wed Nov 12 23:38:14 2008 -0800 netdevice: safe convert to netdev_priv() #part-2 We have some reasons to kill netdev->priv: 1. netdev->priv is equal to netdev_priv(). 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously netdev_priv() is more flexible than netdev->priv. But we cann't kill netdev->priv, because so many drivers reference to it directly. This patch is a safe convert for netdev->priv to netdev_priv(netdev). Since all of the netdev->priv is only for read. But it is too big to be sent in one mail. I split it to 4 parts and make every part smaller than 100,000 bytes, which is max size allowed by vger. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 454d7c9b14e20fd1949e2686e9de4a2926e01476 Author: Wang Chen Date: Wed Nov 12 23:37:49 2008 -0800 netdevice: safe convert to netdev_priv() #part-1 We have some reasons to kill netdev->priv: 1. netdev->priv is equal to netdev_priv(). 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously netdev_priv() is more flexible than netdev->priv. But we cann't kill netdev->priv, because so many drivers reference to it directly. This patch is a safe convert for netdev->priv to netdev_priv(netdev). Since all of the netdev->priv is only for read. But it is too big to be sent in one mail. I split it to 4 parts and make every part smaller than 100,000 bytes, which is max size allowed by vger. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 7a12122c7a00347da9669cfcde82954c9e3d6f5e Author: Arnaud Ebalard Date: Wed Nov 12 23:28:15 2008 -0800 net: Remove unused parameter of xfrm_gen_index() In commit 2518c7c2b3d7f0a6b302b4efe17c911f8dd4049f ("[XFRM]: Hash policies when non-prefixed."), the last use of xfrm_gen_policy() first argument was removed, but the argument was left behind in the prototype. Signed-off-by: Arnaud Ebalard Acked-by: Herbert Xu Signed-off-by: David S. Miller commit 2378982487c492541d17adc0a870e7e83b07ba43 Author: Alexey Dobriyan Date: Wed Nov 12 23:25:32 2008 -0800 net: ifdef struct sock::sk_async_wait_queue Every user is under CONFIG_NET_DMA already, so ifdef field as well. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 3a95cb972bb0eb80dfdb42f11628e6d58bcdde29 Author: Wu Fengguang Date: Thu Nov 13 10:19:38 2008 +0800 ALSA: handle SiI1392 HDMI codec in patch_intelhdmi.c Move the handling of SiI1392 HDMI codec from patch_atihdmi.c to patch_intelhdmi.c, which makes our ASUS P5E-VM HDMI board work. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit e4412cb8a6b4190cf73ae44c859fd7e3727d8b13 Author: Michael Chan Date: Wed Nov 12 16:03:05 2008 -0800 bnx2: Update version to 1.8.2. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: David S. Miller commit 40105c0b0753515711318db87d36c8338dc74490 Author: Michael Chan Date: Wed Nov 12 16:02:45 2008 -0800 bnx2: Reorganize timeout constants. Move all related timeout constants to the same location. BNX2 prefix is also added to make them more consistent. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: David S. Miller commit d8026d939495c105cf747c0196a8fa738cf2ad20 Author: Michael Chan Date: Wed Nov 12 16:02:20 2008 -0800 bnx2: Set rx buffer water marks based on MTU. The default rx buffer water marks for XOFF/XON are for 1500 MTU. At larger MTUs, these water marks need to be adjusted for effective flow control. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: David S. Miller commit 5ec6d7bf195c2e70003ff30e4f51390ef7e85a31 Author: Michael Chan Date: Wed Nov 12 16:01:41 2008 -0800 bnx2: Restrict WoL support. On some quad-port cards that cannot support WoL on all ports due to excessive power consumption, the driver needs to restrict WoL on some ports by checking VAUX_PRESET bit. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: David S. Miller commit 1caacecb7cb2b72e798f06a32b5061075cf397fa Author: Michael Chan Date: Wed Nov 12 16:01:12 2008 -0800 bnx2: Add PCI ID for 5716S. Signed-off-by: Michael Chan Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: David S. Miller commit 1dc1c6adf38bc5799d1594681645ced40ced4b6b Author: Frederic Weisbecker Date: Wed Nov 12 22:49:23 2008 +0100 tracing/function-return-tracer: call prepare_ftrace_return by registers Impact: Optimize a bit the function return tracer This patch changes the calling convention of prepare_ftrace_return to pass its arguments by register. This will optimize it a bit and prepare it to support dynamic tracing. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 62d59d17a5f98edb48b171742dfa531488802f07 Author: Frederic Weisbecker Date: Wed Nov 12 22:47:54 2008 +0100 tracing/function-return-tracer: make the function return tracer lockless Impact: remove spinlocks and irq disabling in function return tracer. I've tried to figure out all of the race condition that could happen when the tracer pushes or pops a return address trace to/from the current thread_info. Theory: _ One thread can only execute on one cpu at a time. So this code doesn't need to be SMP-safe. Just drop the spinlock. _ The only race could happen between the current thread and an interrupt. If an interrupt is raised, it will increase the index of the return stack storage and then execute until the end of the tracing to finally free the index it used. We don't need to disable irqs. This is theorical. In practice, I've tested it with a two-core SMP and had no problem at all. Perhaps -tip testing could confirm it. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 94b80ffd650b22e1fd493ccf6bad7efda4b8ea85 Author: Steven Rostedt Date: Wed Nov 12 16:18:45 2008 -0500 ftrace: rename trace_unlikely.c file Impact: File name change of trace_unlikely.c The "unlikely" name for the tracer is quite ugly. We renamed all the parts of it to "branch" and now it is time to rename the file too. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 80e5ea4506791af206266c5921c97f11d3b17866 Author: Steven Rostedt Date: Wed Nov 12 15:24:24 2008 -0500 ftrace: add tracer called branch Impact: added new branch tracer Currently the tracing of branch profiling (unlikelys and likelys hit) is only activated by the iter_ctrl. This patch adds a tracer called "branch" that will just trace the branch profiling. The advantage of adding this tracer is that it can be added to the ftrace selftests on startup. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 9f029e83e968e5661d7be045bbcb620dbb909938 Author: Steven Rostedt Date: Wed Nov 12 15:24:24 2008 -0500 ftrace: rename unlikely iter_ctrl to branch Impact: rename of iter_ctrl unlikely to branch The unlikely name is ugly. This patch converts the iter_ctrl command "unlikely" and "nounlikely" to "branch" and "nobranch" respectively. It also renames a lot of internal functions to use "branch" instead of "unlikely". Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 2ed84eeb8808cf3c9f039213ca137ffd7d753f0e Author: Steven Rostedt Date: Wed Nov 12 15:24:24 2008 -0500 trace: rename unlikely profiler to branch profiler Impact: name change of unlikely tracer and profiler Ingo Molnar suggested changing the config from UNLIKELY_PROFILE to BRANCH_PROFILING. I never did like the "unlikely" name so I went one step farther, and renamed all the unlikely configurations to a "BRANCH" variant. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 8652cb4b0d87accbe78725fd2a13be2787059649 Author: Prarit Bhargava Date: Wed Nov 12 13:35:00 2008 -0500 x86: warn of incorrect cpu_khz on AMD systems Impact: add debug check If none of the perfctrs are free when calculating cpu_khz we default to using ctr 3 (ie, we just choose 3). This may lead to an incorrect tsc freq value which can cause the system to be unstable. To aid in future debugging, WARN the user of a potential problem. Signed-off-by: Prarit Bhargava Signed-off-by: Ingo Molnar commit 8665596ec05498525014436520b316ba174a068a Author: H. Peter Anvin Date: Wed Nov 12 10:27:35 2008 -0800 x86: fix up the new IRQ code for older versions of gas Older versions of gas don't implement the C-style != operator, they instead want the Pascal-style <> operator. Change != to <> so we don't break compilation with those old versions of gas. Signed-off-by: H. Peter Anvin commit 68f96c0c889b55bf62eee98e859cb686f8850188 Author: Stephen Hemminger Date: Wed Nov 12 10:21:01 2008 -0800 tracing/fastboot: fix perlcritic warning Impact: cleanup Fix the following warning from the perl syntax checking tool perlcritic. This tool is a lint like tool that checks for perl best practices. Loop iterator is not lexical at line 113, column 1. See page 108 of PBP. (Severity: 5) Signed-off-by: Stephen Hemminger Signed-off-by: Ingo Molnar commit c415b3dce30dfb41234e118662e8720f47343a4f Author: Eduardo Habkost Date: Wed Nov 12 11:34:44 2008 -0200 x86: disable IRQs before doing anything on nmi_shootdown_cpus() Impact: make nmi_shootdown_cpus() callable from preemptible context We need to know on which CPU we are running on, and we don't want to be preempted while doing this. Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit bb8dd270e62217e2d2172094c6c352c4ddc0a127 Author: Eduardo Habkost Date: Wed Nov 12 11:34:43 2008 -0200 x86: make nmi_shootdown_cpus() available on !SMP and !X86_LOCAL_APIC Impact: widen nmi_shootdown_cpus() availability The X86_LOCAL_APIC #ifdef was for kdump. For !SMP, the function simply does nothing. Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit 2ddded213895e41b9cfe1c084127e6c01632ac1a Author: Eduardo Habkost Date: Wed Nov 12 11:34:42 2008 -0200 x86: move nmi_shootdown_cpus() to reboot.c Impact: make nmi_shootdown_cpus() available to the rest of the x86 platform Now nmi_shootdown_cpus() is ready to be used by non-kdump code also. Move it to reboot.c. Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit c370e5e089adfd5b1b863f3464cccae9ebf33cca Author: Eduardo Habkost Date: Wed Nov 12 11:34:41 2008 -0200 x86 kdump: make nmi_shootdown_cpus() non-static Impact: make API available to the rest of x86 platform code Add prototype to asm/reboot.h. Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit 8e294786316aca41c66b8b73ba1ee74a4ae7d452 Author: Eduardo Habkost Date: Wed Nov 12 11:34:40 2008 -0200 x86 kdump: make kdump_nmi_callback() a function ptr on crash_nmi_callback() Impact: extend nmi_shootdown_cpus() with a callback The reboot code will use a different function on crash_nmi_callback(). Adding a function pointer parameter to nmi_shootdown_cpus() for that. Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit d1e7b91cfaa8fc5ed736dcfb8beb5134a2385228 Author: Eduardo Habkost Date: Wed Nov 12 11:34:39 2008 -0200 x86 kdump: create kdump_nmi_shootdown_cpus() Impact: cleanup For the kdump-specific code that was living on nmi_shootdown_cpus(). Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit b2bbe71b829564fb65a6bc7e1e25e02d70cffce8 Author: Eduardo Habkost Date: Wed Nov 12 11:34:38 2008 -0200 x86 kdump: move crashing_cpu assignment to nmi_shootdown_cpus() Impact: cleanup This variable will be moved to non-kdump-specific code. Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit a7d41820f683c35b53af719210a51f6aa0f86a6a Author: Eduardo Habkost Date: Wed Nov 12 11:34:37 2008 -0200 x86 kdump: extract kdump-specific code from crash_nmi_callback() Impact: cleanup The NMI CPU-halting code will be used on non-kdump cases, also (e.g. emergency_reboot when virtualization is enabled). Signed-off-by: Eduardo Habkost Signed-off-by: Ingo Molnar commit fd64138c0eff8351b93ef99f7da929bb8a49b9ed Author: Jaroslav Kysela Date: Wed Nov 12 16:53:47 2008 +0100 ALSA: include/sound/info.h - coding style changed Change coding style to be more acceptable by checkpatch.pl. Signed-off-by: Jaroslav Kysela Signed-off-by: Takashi Iwai commit 972d4c50fbbb1b9c10293ff90e4e1d45e7fb21ac Author: Jaroslav Kysela Date: Wed Nov 12 16:37:48 2008 +0100 ALSA: hdsp/hdspm: remove card->id from rawmidi device name The card->id (card text identification) can be changed at runtime. It might be confusing to have old text identification in device name. Signed-off-by: Jaroslav Kysela Signed-off-by: Takashi Iwai commit c2eb9c4ea383aee154e7139395872c4da629e715 Author: Jaroslav Kysela Date: Wed Nov 12 16:31:37 2008 +0100 ALSA: when card identification is changed, change also /proc/asound symlink Signed-off-by: Jaroslav Kysela Signed-off-by: Takashi Iwai commit 9fb6198e8c574c6547fbfac0ae1eaf7894ddfdcc Author: Jaroslav Kysela Date: Tue Nov 11 16:51:02 2008 +0100 ALSA: add /sys/class/sound/card#/id (r/w) and card#/number (r/o) files For udev, we need a way to rename soundcard names. The soundcard numbers (indexes) are hardwired but we have a text identification which can be changed at run-time. The ALSA user space tools already allow using of this text identification. Signed-off-by: Jaroslav Kysela Signed-off-by: Takashi Iwai commit eb42c75878e4d13941dcbcf2ef1027c257b099a6 Merge: 9868ee6... f21f237... Author: Ingo Molnar Date: Wed Nov 12 15:43:39 2008 +0100 Merge branch 'linus' into x86/crashdump commit 11843ee4d5ee130b84de01c019dde7bf0a3eca78 Author: Takashi Iwai Date: Wed Nov 12 15:18:41 2008 +0100 ALSA: powermac - Rename mic-analog loopback mixer element PCM Playback Volume:1 is actually assigned to a mic loopback volume on iBook G4. Let's rename it. Signed-off-by: Takashi Iwai commit 68d119f0a66f7e3663304343b072e56a2693446b Author: Ingo Molnar Date: Wed Nov 12 14:09:30 2008 +0100 tracing: finetune branch-tracer output Steve suggested the to change the output from this: > bash-3471 [003] 357.014755: [ MISS ] sched_info_dequeued:sched_stats.h:177 > bash-3471 [003] 357.014756: [ .... ] update_curr:sched_fair.c:489 > bash-3471 [003] 357.014758: [ .... ] calc_delta_fair:sched_fair.c:411 to this: > bash-3471 [003] 357.014755: [ MISS ] sched_info_dequeued:sched_stats.h:177 > bash-3471 [003] 357.014756: [ ok ] update_curr:sched_fair.c:489 > bash-3471 [003] 357.014758: [ ok ] calc_delta_fair:sched_fair.c:411 as it makes it clearer to the user what it means exactly. Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 2b7d0390a6d6d595f43ea3806639664afe5b9ebe Author: Ingo Molnar Date: Wed Nov 12 13:17:38 2008 +0100 tracing: branch tracer, fix vdso crash Impact: fix bootup crash the branch tracer missed arch/x86/vdso/vclock_gettime.c from disabling tracing, which caused such bootup crashes: [ 201.840097] init[1]: segfault at 7fffed3fe7c0 ip 00007fffed3fea2e sp 000077 also clean up the ugly ifdefs in arch/x86/kernel/vsyscall_64.c by creating DISABLE_UNLIKELY_PROFILE facility for code to turn off instrumentation on a per file basis. Signed-off-by: Ingo Molnar commit fb0ef645f2c546f8297b2fbf9b2b8fff4a7455e8 Author: Naresh Medisetty Date: Wed Nov 12 10:26:31 2008 +0530 ASoC: DaVinci: Audio: Fix swapping of channels at start of stereo playback Fixes swapping of channels at start of stereo playback. Channel swap can be observed while playing left-only or right-only audio data. The channel swap is fixed by handling the XSYNCERR condition. Signed-off-by: Naresh Medisetty Signed-off-by: Mark Brown commit 9cc3c49ed1b1dbf6e50de4055a6773bd162f24b7 Author: Hiroshi Shimamoto Date: Tue Nov 11 19:11:39 2008 -0800 x86: ia32_signal: remove unnecessary padding Impact: reduce structure padding Remove unnecessary paddings, this saves 4 bytes. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 4a61204856e8b28e9f5489a7875cb3a60afd1e43 Author: Hiroshi Shimamoto Date: Tue Nov 11 19:09:29 2008 -0800 x86: signal_32: introduce retcode and rt_retcode Impact: cleanup Introduce retcode and rt_retcode to replace setting up frame->retcode. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit f88c4ae9f8c3939bee4337c75c7a673b5de7a8a7 Author: Ingo Molnar Date: Wed Nov 12 11:55:41 2008 +0100 tracing: branch tracer, tweak output Impact: modify the tracer output, to make it a bit easier to read Change the output from: > bash-3471 [003] 357.014755: [INCORRECT] sched_info_dequeued:sched_stats.h:177 > bash-3471 [003] 357.014756: [correct] update_curr:sched_fair.c:489 > bash-3471 [003] 357.014758: [correct] calc_delta_fair:sched_fair.c:411 to: > bash-3471 [003] 357.014755: [ MISS ] sched_info_dequeued:sched_stats.h:177 > bash-3471 [003] 357.014756: [ .... ] update_curr:sched_fair.c:489 > bash-3471 [003] 357.014758: [ .... ] calc_delta_fair:sched_fair.c:411 it's good to have fields aligned vertically, and the only important information is a prediction miss, so display only that information. Signed-off-by: Ingo Molnar commit 52f232cb720a7babb752849cbc2cab2d24021209 Author: Steven Rostedt Date: Wed Nov 12 00:14:40 2008 -0500 tracing: likely/unlikely branch annotation tracer Impact: new likely/unlikely branch tracer This patch adds a way to record the instances of the likely() and unlikely() branch condition annotations. When "unlikely" is set in /debugfs/tracing/iter_ctrl the unlikely conditions will be added to any of the ftrace tracers. The change takes effect when a new tracer is passed into the current_tracer file. For example: bash-3471 [003] 357.014755: [INCORRECT] sched_info_dequeued:sched_stats.h:177 bash-3471 [003] 357.014756: [correct] update_curr:sched_fair.c:489 bash-3471 [003] 357.014758: [correct] calc_delta_fair:sched_fair.c:411 bash-3471 [003] 357.014759: [correct] account_group_exec_runtime:sched_stats.h:356 bash-3471 [003] 357.014761: [correct] update_curr:sched_fair.c:489 bash-3471 [003] 357.014763: [INCORRECT] calc_delta_fair:sched_fair.c:411 bash-3471 [003] 357.014765: [correct] calc_delta_mine:sched.c:1279 Which shows the normal tracer heading, as well as whether the condition was correct "[correct]" or was mistaken "[INCORRECT]", followed by the function, file name and line number. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 1f0d69a9fc815db82f15722bf05227190b1d714d Author: Steven Rostedt Date: Wed Nov 12 00:14:39 2008 -0500 tracing: profile likely and unlikely annotations Impact: new unlikely/likely profiler Andrew Morton recently suggested having an in-kernel way to profile likely and unlikely macros. This patch achieves that goal. When configured, every(*) likely and unlikely macro gets a counter attached to it. When the condition is hit, the hit and misses of that condition are recorded. These numbers can later be retrieved by: /debugfs/tracing/profile_likely - All likely markers /debugfs/tracing/profile_unlikely - All unlikely markers. # cat /debug/tracing/profile_unlikely | head correct incorrect % Function File Line ------- --------- - -------- ---- ---- 2167 0 0 do_arch_prctl process_64.c 832 0 0 0 do_arch_prctl process_64.c 804 2670 0 0 IS_ERR err.h 34 71230 5693 7 __switch_to process_64.c 673 76919 0 0 __switch_to process_64.c 639 43184 33743 43 __switch_to process_64.c 624 12740 64181 83 __switch_to process_64.c 594 12740 64174 83 __switch_to process_64.c 590 # cat /debug/tracing/profile_unlikely | \ awk '{ if ($3 > 25) print $0; }' |head -20 44963 35259 43 __switch_to process_64.c 624 12762 67454 84 __switch_to process_64.c 594 12762 67447 84 __switch_to process_64.c 590 1478 595 28 syscall_get_error syscall.h 51 0 2821 100 syscall_trace_leave ptrace.c 1567 0 1 100 native_smp_prepare_cpus smpboot.c 1237 86338 265881 75 calc_delta_fair sched_fair.c 408 210410 108540 34 calc_delta_mine sched.c 1267 0 54550 100 sched_info_queued sched_stats.h 222 51899 66435 56 pick_next_task_fair sched_fair.c 1422 6 10 62 yield_task_fair sched_fair.c 982 7325 2692 26 rt_policy sched.c 144 0 1270 100 pre_schedule_rt sched_rt.c 1261 1268 48073 97 pick_next_task_rt sched_rt.c 884 0 45181 100 sched_info_dequeued sched_stats.h 177 0 15 100 sched_move_task sched.c 8700 0 15 100 sched_move_task sched.c 8690 53167 33217 38 schedule sched.c 4457 0 80208 100 sched_info_switch sched_stats.h 270 30585 49631 61 context_switch sched.c 2619 # cat /debug/tracing/profile_likely | awk '{ if ($3 > 25) print $0; }' 39900 36577 47 pick_next_task sched.c 4397 20824 15233 42 switch_mm mmu_context_64.h 18 0 7 100 __cancel_work_timer workqueue.c 560 617 66484 99 clocksource_adjust timekeeping.c 456 0 346340 100 audit_syscall_exit auditsc.c 1570 38 347350 99 audit_get_context auditsc.c 732 0 345244 100 audit_syscall_entry auditsc.c 1541 38 1017 96 audit_free auditsc.c 1446 0 1090 100 audit_alloc auditsc.c 862 2618 1090 29 audit_alloc auditsc.c 858 0 6 100 move_masked_irq migration.c 9 1 198 99 probe_sched_wakeup trace_sched_switch.c 58 2 2 50 probe_wakeup trace_sched_wakeup.c 227 0 2 100 probe_wakeup_sched_switch trace_sched_wakeup.c 144 4514 2090 31 __grab_cache_page filemap.c 2149 12882 228786 94 mapping_unevictable pagemap.h 50 4 11 73 __flush_cpu_slab slub.c 1466 627757 330451 34 slab_free slub.c 1731 2959 61245 95 dentry_lru_del_init dcache.c 153 946 1217 56 load_elf_binary binfmt_elf.c 904 102 82 44 disk_put_part genhd.h 206 1 1 50 dst_gc_task dst.c 82 0 19 100 tcp_mss_split_point tcp_output.c 1126 As you can see by the above, there's a bit of work to do in rethinking the use of some unlikelys and likelys. Note: the unlikely case had 71 hits that were more than 25%. Note: After submitting my first version of this patch, Andrew Morton showed me a version written by Daniel Walker, where I picked up the following ideas from: 1) Using __builtin_constant_p to avoid profiling fixed values. 2) Using __FILE__ instead of instruction pointers. 3) Using the preprocessor to stop all profiling of likely annotations from vsyscall_64.c. Thanks to Andrew Morton, Arjan van de Ven, Theodore Tso and Ingo Molnar for their feed back on this patch. (*) Not ever unlikely is recorded, those that are used by vsyscalls (a few of them) had to have profiling disabled. Signed-off-by: Steven Rostedt Cc: Andrew Morton Cc: Frederic Weisbecker Cc: Theodore Tso Cc: Arjan van de Ven Cc: Steven Rostedt Signed-off-by: Ingo Molnar commit cb9382e5a94e54d0356d730954396c746ae66d6e Merge: 7423907... 642edba... Author: Ingo Molnar Date: Wed Nov 12 11:50:51 2008 +0100 Merge branches 'tracing/fastboot', 'tracing/function-return-tracer' and 'tracing/ring-buffer' into tracing/core commit 642edba5f5c545772b89907cf96134c73d6073c7 Author: Steven Rostedt Date: Wed Nov 12 00:01:26 2008 -0500 ring-buffer: fix deadlock from reader_lock in read_start Impact: deadlock fix in ring_buffer_read_start The ring_buffer_iter_reset was called from ring_buffer_read_start where both grabbed the reader_lock. This patch separates out the internals of ring_buffer_iter_reset to its own function so that both APIs may grab the reader_lock. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 92a77aac9812d5397abbe6f1920e085e50838635 Author: James Morris Date: Wed Nov 12 21:20:00 2008 +1100 security: remove broken and useless declarations Remove broken declarations for security_capable* functions, which were not needed anyway. Signed-off-by: James Morris commit a7d26f84cb76b962217ce277c3e3a9748a26ac11 Author: Jaroslav Kysela Date: Wed Nov 12 11:02:25 2008 +0100 ALSA: Release v1.0.18a Signed-off-by: Jaroslav Kysela Signed-off-by: Takashi Iwai commit 74239072830ef3f1398edeb1bc1076fc330fd4a2 Author: Frederic Weisbecker Date: Tue Nov 11 23:24:42 2008 +0100 tracing/fastboot: Use the ring-buffer timestamp for initcall entries Impact: Split the boot tracer entries in two parts: call and return Now that we are using the sched tracer from the boot tracer, we want to use the same timestamp than the ring-buffer to have consistent time captures between sched events and initcall events. So we get rid of the old time capture by the boot tracer and split the initcall events in two parts: call and return. This way we have the ring buffer timestamp of both. An example trace: [ 27.904149584] calling net_ns_init+0x0/0x1c0 @ 1 [ 27.904429624] initcall net_ns_init+0x0/0x1c0 returned 0 after 0 msecs [ 27.904575926] calling reboot_init+0x0/0x20 @ 1 [ 27.904655399] initcall reboot_init+0x0/0x20 returned 0 after 0 msecs [ 27.904800228] calling sysctl_init+0x0/0x30 @ 1 [ 27.905142914] initcall sysctl_init+0x0/0x30 returned 0 after 0 msecs [ 27.905287211] calling ksysfs_init+0x0/0xb0 @ 1 ##### CPU 0 buffer started #### init-1 [000] 27.905395: 1:120:R + [001] 11:115:S ##### CPU 1 buffer started #### -0 [001] 27.905425: 0:140:R ==> [001] 11:115:R init-1 [000] 27.905426: 1:120:D ==> [000] 0:140:R -0 [000] 27.905431: 0:140:R + [000] 4:115:S -0 [000] 27.905451: 0:140:R ==> [000] 4:115:R ksoftirqd/0-4 [000] 27.905456: 4:115:S ==> [000] 0:140:R udevd-11 [001] 27.905458: 11:115:R + [001] 14:115:R -0 [000] 27.905459: 0:140:R + [000] 4:115:S -0 [000] 27.905462: 0:140:R ==> [000] 4:115:R udevd-11 [001] 27.905462: 11:115:R ==> [001] 14:115:R ksoftirqd/0-4 [000] 27.905467: 4:115:S ==> [000] 0:140:R -0 [000] 27.905470: 0:140:R + [000] 4:115:S -0 [000] 27.905473: 0:140:R ==> [000] 4:115:R ksoftirqd/0-4 [000] 27.905476: 4:115:S ==> [000] 0:140:R -0 [000] 27.905479: 0:140:R + [000] 4:115:S -0 [000] 27.905482: 0:140:R ==> [000] 4:115:R ksoftirqd/0-4 [000] 27.905486: 4:115:S ==> [000] 0:140:R udevd-14 [001] 27.905499: 14:120:X ==> [001] 11:115:R udevd-11 [001] 27.905506: 11:115:R + [000] 1:120:D -0 [000] 27.905515: 0:140:R ==> [000] 1:120:R udevd-11 [001] 27.905517: 11:115:S ==> [001] 0:140:R [ 27.905557107] initcall ksysfs_init+0x0/0xb0 returned 0 after 3906 msecs [ 27.905705736] calling init_jiffies_clocksource+0x0/0x10 @ 1 [ 27.905779239] initcall init_jiffies_clocksource+0x0/0x10 returned 0 after 0 msecs [ 27.906769814] calling pm_init+0x0/0x30 @ 1 [ 27.906853627] initcall pm_init+0x0/0x30 returned 0 after 0 msecs [ 27.906997803] calling pm_disk_init+0x0/0x20 @ 1 [ 27.907076946] initcall pm_disk_init+0x0/0x20 returned 0 after 0 msecs [ 27.907222556] calling swsusp_header_init+0x0/0x30 @ 1 [ 27.907294325] initcall swsusp_header_init+0x0/0x30 returned 0 after 0 msecs [ 27.907439620] calling stop_machine_init+0x0/0x50 @ 1 init-1 [000] 27.907485: 1:120:R + [000] 2:115:S init-1 [000] 27.907490: 1:120:D ==> [000] 2:115:R kthreadd-2 [000] 27.907507: 2:115:R + [001] 15:115:R -0 [001] 27.907517: 0:140:R ==> [001] 15:115:R kthreadd-2 [000] 27.907517: 2:115:D ==> [000] 0:140:R -0 [000] 27.907521: 0:140:R + [000] 4:115:S -0 [000] 27.907524: 0:140:R ==> [000] 4:115:R udevd-15 [001] 27.907527: 15:115:D + [000] 2:115:D ksoftirqd/0-4 [000] 27.907537: 4:115:S ==> [000] 2:115:R udevd-15 [001] 27.907537: 15:115:D ==> [001] 0:140:R kthreadd-2 [000] 27.907546: 2:115:R + [000] 1:120:D kthreadd-2 [000] 27.907550: 2:115:S ==> [000] 1:120:R init-1 [000] 27.907584: 1:120:R + [000] 15: 0:D init-1 [000] 27.907589: 1:120:R + [000] 2:115:S init-1 [000] 27.907593: 1:120:D ==> [000] 15: 0:R udevd-15 [000] 27.907601: 15: 0:S ==> [000] 2:115:R ##### CPU 0 buffer started #### kthreadd-2 [000] 27.907616: 2:115:R + [001] 16:115:R ##### CPU 1 buffer started #### -0 [001] 27.907620: 0:140:R ==> [001] 16:115:R kthreadd-2 [000] 27.907621: 2:115:D ==> [000] 0:140:R udevd-16 [001] 27.907625: 16:115:D + [000] 2:115:D -0 [000] 27.907628: 0:140:R + [000] 4:115:S udevd-16 [001] 27.907629: 16:115:D ==> [001] 0:140:R -0 [000] 27.907631: 0:140:R ==> [000] 4:115:R ksoftirqd/0-4 [000] 27.907636: 4:115:S ==> [000] 2:115:R kthreadd-2 [000] 27.907644: 2:115:R + [000] 1:120:D kthreadd-2 [000] 27.907647: 2:115:S ==> [000] 1:120:R init-1 [000] 27.907657: 1:120:R + [001] 16: 0:D -0 [001] 27.907666: 0:140:R ==> [001] 16: 0:R [ 27.907703862] initcall stop_machine_init+0x0/0x50 returned 0 after 0 msecs [ 27.907850704] calling filelock_init+0x0/0x30 @ 1 [ 27.907926573] initcall filelock_init+0x0/0x30 returned 0 after 0 msecs [ 27.908071327] calling init_script_binfmt+0x0/0x10 @ 1 [ 27.908165195] initcall init_script_binfmt+0x0/0x10 returned 0 after 0 msecs [ 27.908309461] calling init_elf_binfmt+0x0/0x10 @ 1 Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 3f5ec13696fd4a33bde42f385406cbb1d3cc96fd Author: Frederic Weisbecker Date: Tue Nov 11 23:21:31 2008 +0100 tracing/fastboot: move boot tracer structs and funcs into their own header. Impact: Cleanups on the boot tracer and ftrace This patch bring some cleanups about the boot tracer headers. The functions and structures of this tracer have nothing related to ftrace and should have so their own header file. Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 60a011c736e7dd09a0b01ca6a051a416f3f52ffb Merge: d06bbd6... 19b3e96... Author: Ingo Molnar Date: Wed Nov 12 10:17:09 2008 +0100 Merge branch 'tracing/function-return-tracer' into tracing/fastboot commit d06bbd669539215405874d8fe32ab65105e6c4bb Merge: d844222... 3e89c7b... c1e7abb... Author: Ingo Molnar Date: Wed Nov 12 10:11:37 2008 +0100 Merge branches 'tracing/ftrace' and 'tracing/urgent' into tracing/core Conflicts: kernel/trace/ring_buffer.c commit 90d0be2fc33b4c4e11fc596da4736189be947d99 Merge: f43aa02... d7a8943... Author: Takashi Iwai Date: Wed Nov 12 10:02:04 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda Conflicts: sound/pci/hda/patch_sigmatel.c commit e42ea986e4a4cab4209d982feffcaf50f21e80e3 Author: Eric Dumazet Date: Wed Nov 12 00:54:54 2008 -0800 net: Cleanup of neighbour code Using read_pnet() and write_pnet() in neighbour code ease the reading of code. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 7a9546ee354ec6f23af403992b8c07baa50a23d2 Author: Eric Dumazet Date: Wed Nov 12 00:54:20 2008 -0800 net: ib_net pointer should depends on CONFIG_NET_NS We can shrink size of "struct inet_bind_bucket" by 50%, using read_pnet() and write_pnet() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 8f424b5f32d78b4f353b3cddca9804808ef063eb Author: Eric Dumazet Date: Wed Nov 12 00:53:30 2008 -0800 net: Introduce read_pnet() and write_pnet() helpers This patch introduces two helpers that deal with reading and writing struct net pointers in various network structures. Their implementation depends on CONFIG_NET_NS For symmetry, both functions work with "struct net **pnet". Their usage should reduce the number of #ifdef CONFIG_NET_NS, without adding many helpers for each network structure that hold a "struct net *pointer" Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 9eca0a47dee201a73967026985b5f0a79a46bd36 Author: Gerrit Renker Date: Wed Nov 12 00:48:44 2008 -0800 dccp: Resolve dependencies of features on choice of CCID This provides a missing link in the code chain, as several features implicitly depend and/or rely on the choice of CCID. Most notably, this is the Send Ack Vector feature, but also Ack Ratio and Send Loss Event Rate (also taken care of). For Send Ack Vector, the situation is as follows: * since CCID2 mandates the use of Ack Vectors, there is no point in allowing endpoints which use CCID2 to disable Ack Vector features such a connection; * a peer with a TX CCID of CCID2 will always expect Ack Vectors, and a peer with a RX CCID of CCID2 must always send Ack Vectors (RFC 4341, sec. 4); * for all other CCIDs, the use of (Send) Ack Vector is optional and thus negotiable. However, this implies that the code negotiating the use of Ack Vectors also supports it (i.e. is able to supply and to either parse or ignore received Ack Vectors). Since this is not the case (CCID-3 has no Ack Vector support), the use of Ack Vectors is here disabled, with a comment in the source code. An analogous consideration arises for the Send Loss Event Rate feature, since the CCID-3 implementation does not support the loss interval options of RFC 4342. To make such use explicit, corresponding feature-negotiation options are inserted which signal the use of the loss event rate option, as it is used by the CCID3 code. Lastly, the values of the Ack Ratio feature are matched to the choice of CCID. The patch implements this as a function which is called after the user has made all other registrations for changing default values of features. The table is variable-length, the reserved (and hence for feature-negotiation invalid, confirmed by considering section 19.4 of RFC 4340) feature number `0' is used to mark the end of the table. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit d90ebcbfa7f5a8b4e20518c9f94c5c4e4cd3c2e5 Author: Gerrit Renker Date: Wed Nov 12 00:47:26 2008 -0800 dccp: Query supported CCIDs This provides a data structure to record which CCIDs are locally supported and three accessor functions: - a test function for internal use which is used to validate CCID requests made by the user; - a copy function so that the list can be used for feature-negotiation; - documented getsockopt() support so that the user can query capabilities. The data structure is a table which is filled in at compile-time with the list of available CCIDs (which in turn depends on the Kconfig choices). Using the copy function for cloning the list of supported CCIDs is useful for feature negotiation, since the negotiation is now with the full list of available CCIDs (e.g. {2, 3}) instead of the default value {2}. This means negotiation will not fail if the peer requests to use CCID3 instead of CCID2. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit e8ef967a54f401ac5e8637b7f7f8bddb006144c4 Author: Gerrit Renker Date: Wed Nov 12 00:43:40 2008 -0800 dccp: Registration routines for changing feature values Two registration routines, for SP and NN features, are provided by this patch, replacing a previous routine which was used for both feature types. These are internal-only routines and therefore start with `__feat_register'. It further exports the known limits of Sequence Window and Ack Ratio as symbolic constants. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit f74e91b6cca5889e667193c7e794186db73c2000 Author: Gerrit Renker Date: Wed Nov 12 00:42:58 2008 -0800 dccp: Limit feature negotiation to connection setup phase This patch limits feature (capability) negotation to the connection setup phase: 1. Although it is theoretically possible to perform feature negotiation at any time (and RFC 4340 supports this), in practice this is prohibitively complex, as it requires to put traffic on hold for each new negotiation. 2. As a byproduct of restricting feature negotiation to connection setup, the feature-negotiation retransmit timer is no longer required. This part is now mapped onto the protocol-level retransmission. Details indicating why timers are no longer needed can be found on http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/feature_negotiation/\ implementation_notes.html This patch disables anytime negotiation, subsequent patches work out full feature negotiation support for connection setup. Signed-off-by: Gerrit Renker Signed-off-by: David S. Miller commit 6bb3ce25d05f2990c8a19adaf427531430267c1f Author: Alexey Dobriyan Date: Tue Nov 11 17:25:22 2008 -0800 net: remove struct dst_entry::entry_size Unused after kmem_cache_zalloc() conversion. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 9b739ba5e66c96938fbc07a4dbd9da5b81eac56f Author: Alexey Dobriyan Date: Tue Nov 11 16:47:44 2008 -0800 net: remove struct neigh_table::pde ->pde isn't actually needed, since name is stashed in ->id. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 14d7ca5c575853664d8fe4f225a77b8df1b7de7d Author: H. Peter Anvin Date: Tue Nov 11 16:19:48 2008 -0800 x86: attempt reboot via port CF9 if we have standard PCI ports Impact: Changes reboot behavior. If port CF9 seems to be safe to touch, attempt it before trying the keyboard controller. Port CF9 is not available on all chipsets (a significant but decreasing number of modern chipsets don't implement it), but port CF9 itself should in general be safe to poke (no ill effects if unimplemented) on any system which has PCI Configuration Method #1 or #2, as it falls inside the PCI configuration port range in both cases. No chipset without PCI is known to have port CF9, either, although an explicit "pci=bios" would mean we miss this and therefore don't use port CF9. An explicit "reboot=pci" can be used to force the use of port CF9. Signed-off-by: H. Peter Anvin commit 7e452baf6b96b5aeba097afd91501d33d390cc97 Merge: 3ac38c3... f21f237... Author: David S. Miller Date: Tue Nov 11 15:43:02 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/message/fusion/mptlan.c drivers/net/sfc/ethtool.c net/mac80211/debugfs_sta.c commit 3ac38c3a2e7dac3f8f35a56eb85c27881a4c3833 Merge: eb37b41... 9757d55... Author: David S. Miller Date: Tue Nov 11 14:40:06 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 939b787130bf22887a09d8fd2641a094dcef8c22 Author: H. Peter Anvin Date: Tue Nov 11 13:51:52 2008 -0800 x86: 64 bits: shrink and align IRQ stubs Move the IRQ stub generation to assembly to simplify it and for consistency with 32 bits. Doing it in a C file with asm() statements doesn't help clarity, and it prevents some optimizations. Shrink the IRQ stubs down to just over four bytes per (we fit seven into a 32-byte chunk.) This shrinks the total icache consumption of the IRQ stubs down to an even kilobyte, if all of them are in active use. The downside is that we end up with a double jump, which could have a negative effect on some pipelines. The double jump is always inside the same cacheline on any modern chips. To get the most effect, cache-align the IRQ stubs. This makes the 64-bit code match changes already done to the 32-bit code, and should open up irqinit*.c for unification. Signed-off-by: H. Peter Anvin commit 486936cd93e99c802153b3f2f629c5ce62b8c0d4 Merge: 1c1b777... f21f237... Author: Paul Mackerras Date: Wed Nov 12 08:43:22 2008 +1100 Merge branch 'linux-2.6' into next commit b7c6244f13d37592003b46e12500a90e9781ad9d Author: H. Peter Anvin Date: Tue Nov 11 13:24:58 2008 -0800 x86: 32 bits: shrink and align IRQ stubs Shrink the IRQ stubs on 32 bits down to just over four bytes per (we fit seven into a 32-byte chunk.) This shrinks the total icache consumption of the IRQ stubs down to an even kilobyte, if all of them are in active use. The downside is that we end up with a double jump, which could have a negative effect on some pipelines. The double jump is always inside the same cacheline on any modern chips (the exception being 486/Elan/Geode which have only 16-byte cachelines, but are unlikely to have too many interrupt sources.) To get the most effect, cache-align the IRQ stubs. Signed-off-by: H. Peter Anvin commit 4687518c4cb7807fbeff21770e309080f9eb7f2f Author: H. Peter Anvin Date: Tue Nov 11 13:03:07 2008 -0800 x86: 32 bit: interrupt stub consistency with 64 bit Don't generate interrupt stubs for interrupt vectors below FIRST_EXTERNAL_VECTOR, and make the table of interrupt vectors (interrupt[]) __initconst. Both of these changes both conserve memory and improve consistency with 64 bits. Signed-off-by: H. Peter Anvin commit 3e89c7bb92fc92bb964734341487798c8d497bae Author: Steven Rostedt Date: Tue Nov 11 15:28:41 2008 -0500 ring-buffer: clean up warn ons Impact: Restructure WARN_ONs in ring_buffer.c The current WARN_ON macros in ring_buffer.c are quite ugly. This patch cleans them up and uses a single RB_WARN_ON that returns the value of the condition. This allows the caller to abort the function if the condition is true. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 9ee670fd87b7d69c8633b94c42aadcbbcb96f28e Author: KOSAKI Motohiro Date: Tue Nov 11 11:49:01 2008 +0900 x86/doc: spelling fix for grub Impact: documentation fix I met okuji-san (GRUB maintainer) yesterday. He said GRuB isn't correct spelled and he want to fix it. Signed-off-by: KOSAKI Motohiro Signed-off-by: Ingo Molnar commit c280ea5e4c6ba0b38ed6b005150fe16a660e903b Author: Ingo Molnar Date: Sat Nov 8 13:29:45 2008 +0100 x86: fix documentation typo in arch/x86/Kconfig Impact: documentation update Chris Snook pointed out that it's Core i7, not Core 7i. Reported-by: Chris Snook Signed-off-by: Ingo Molnar commit a4c52791fa8c73e3cffe4a82865edb41e8fe8c3c Author: Jiri Slaby Date: Sat Nov 8 11:24:57 2008 +0100 x86, 64-bit: update address space documentation Impact: documentation update Commit a6523748bddd38bcec11431f57502090b6014a96 (paravirt/x86, 64-bit: move __PAGE_OFFSET to leave a space for hypervisor) changed address space without changing the documentation. Change it according to the code change -- direct mapping start: ffff810000000000 => ffff880000000000 which gives 57 TiB, something between 45 and 46 bits. Signed-off-by: Jiri Slaby Signed-off-by: Ingo Molnar commit 9757d55652f98836b9a4cac307a01f8b0232dbd9 Author: Sujith Date: Tue Nov 4 18:25:27 2008 +0530 ath9k: Fix compilation failure when RFKILL is enabled Signed-off-by: Sujith Signed-off-by: John W. Linville commit f83c9d0fe42a7544b4d4ffcebb2e6716fcfd95c0 Author: Steven Rostedt Date: Tue Nov 11 18:47:44 2008 +0100 ring-buffer: add reader lock Impact: serialize reader accesses to individual CPU ring buffers The code in the ring buffer expects only one reader at a time, but currently it puts that requirement on the caller. This is not strong enough, and this patch adds a "reader_lock" that serializes the access to the reader API of the ring buffer. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit a98f8fd24fb24fcb9a359553e64dd6aac5cf4279 Author: Thomas Gleixner Date: Thu Nov 6 01:13:39 2008 +0100 x86: apic reset counter on shutdown Impact: avoid spurious lapic timer events on shutdown The apic timer might be close to firing when it is shutdown. We can not really disable the timer - we just mask the interrupt. That way we can get an extra interrupt when it is reenabled. Set the counter to max on shutdown to avoid this. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit d3ec5cae0921611ceae06464ef6291012dd9849f Author: Ivan Vecera Date: Tue Nov 11 14:33:44 2008 +0100 x86: call machine_shutdown and stop all CPUs in native_machine_halt Impact: really halt all CPUs on halt Function machine_halt (resp. native_machine_halt) is empty for x86 architectures. When command 'halt -f' is invoked, the message "System halted." is displayed but this is not really true because all CPUs are still running. There are also similar inconsistencies for other arches (some uses power-off for halt or forever-loop with IRQs enabled/disabled). IMO there should be used the same approach for all architectures OR what does the message "System halted" really mean? This patch fixes it for x86. Signed-off-by: Ivan Vecera Signed-off-by: Ingo Molnar commit 50ee91765e25e7967a7b69cd5cc2bcab85e2eeb8 Author: Dhaval Giani Date: Tue Nov 11 18:13:23 2008 +0530 sched/rt: removed unneeded defintion Impact: cleanup This function no longer exists, so remove the defintion. Signed-off-by: Dhaval Giani Signed-off-by: Ingo Molnar commit 934352f214b3251eb0793c1209d346595a661d80 Author: Bharata B Rao Date: Mon Nov 10 20:41:13 2008 +0530 sched: add hierarchical accounting to cpu accounting controller Impact: improve CPU time accounting of tasks under the cpu accounting controller Add hierarchical accounting to cpu accounting controller and include cpuacct documentation. Currently, while charging the task's cputime to its accounting group, the accounting group hierarchy isn't updated. This patch charges the cputime of a task to its accounting group and all its parent accounting groups. Reported-by: Srivatsa Vaddagiri Signed-off-by: Bharata B Rao Reviewed-by: Paul Menage Acked-by: Balbir Singh Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 19b3e9671c5a219b8c34da2cc66e0ce7c3a501ae Author: Ingo Molnar Date: Tue Nov 11 11:57:02 2008 +0100 tracing: function return tracer, build fix fix: arch/x86/kernel/ftrace.c: In function 'ftrace_return_to_handler': arch/x86/kernel/ftrace.c:112: error: implicit declaration of function 'cpu_clock' cpu_clock() is implicitly included via a number of ways, but its real location is sched.h. (Build failure is triggerable if enough other kernel components are turned off.) Signed-off-by: Ingo Molnar commit 066746796bd2f0a1ba210c0dded3b6ee4032692a Author: Eric Paris Date: Tue Nov 11 22:02:57 2008 +1100 Currently SELinux jumps through some ugly hoops to not audit a capbility check when determining if a process has additional powers to override memory limits or when trying to read/write illegal file labels. Use the new noaudit call instead. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Signed-off-by: James Morris commit a2f2945a99057c7d44043465906c6bb63c3368a0 Author: Eric Paris Date: Tue Nov 11 22:02:54 2008 +1100 The oomkiller calculations make decisions based on capabilities. Since these are not security decisions and LSMs should not record if they fall the request they should use the new has_capability_noaudit() interface so the denials will not be recorded. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Signed-off-by: James Morris commit 06112163f5fd9e491a7f810443d81efa9d88e247 Author: Eric Paris Date: Tue Nov 11 22:02:50 2008 +1100 Add a new capable interface that will be used by systems that use audit to make an A or B type decision instead of a security decision. Currently this is the case at least for filesystems when deciding if a process can use the reserved 'root' blocks and for the case of things like the oom algorithm determining if processes are root processes and should be less likely to be killed. These types of security system requests should not be audited or logged since they are not really security decisions. It would be possible to solve this problem like the vm_enough_memory security check did by creating a new LSM interface and moving all of the policy into that interface but proves the needlessly bloat the LSM and provide complex indirection. This merely allows those decisions to be made where they belong and to not flood logs or printk with denials for thing that are not security decisions. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Signed-off-by: James Morris commit 637d32dc720897616e8a1a4f9e9609e29d431800 Author: Eric Paris Date: Wed Oct 29 15:42:12 2008 +1100 Capabilities: BUG when an invalid capability is requested If an invalid (large) capability is requested the capabilities system may panic as it is dereferencing an array of fixed (short) length. Its possible (and actually often happens) that the capability system accidentally stumbled into a valid memory region but it also regularly happens that it hits invalid memory and BUGs. If such an operation does get past cap_capable then the selinux system is sure to have problems as it already does a (simple) validity check and BUG. This is known to happen by the broken and buggy firegl driver. This patch cleanly checks all capable calls and BUG if a call is for an invalid capability. This will likely break the firegl driver for some situations, but it is the right thing to do. Garbage into a security system gets you killed/bugged Signed-off-by: Eric Paris Acked-by: Arjan van de Ven Acked-by: Serge Hallyn Acked-by: Andrew G. Morgan Signed-off-by: James Morris commit e68b75a027bb94066576139ee33676264f867b87 Author: Eric Paris Date: Tue Nov 11 21:48:22 2008 +1100 When the capset syscall is used it is not possible for audit to record the actual capbilities being added/removed. This patch adds a new record type which emits the target pid and the eff, inh, and perm cap sets. example output if you audit capset syscalls would be: type=SYSCALL msg=audit(1225743140.465:76): arch=c000003e syscall=126 success=yes exit=0 a0=17f2014 a1=17f201c a2=80000000 a3=7fff2ab7f060 items=0 ppid=2160 pid=2223 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=1 comm="setcap" exe="/usr/sbin/setcap" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null) type=UNKNOWN[1322] msg=audit(1225743140.465:76): pid=0 cap_pi=ffffffffffffffff cap_pp=ffffffffffffffff cap_pe=ffffffffffffffff Signed-off-by: Eric Paris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 3fc689e96c0c90b6fede5946d6c31075e9464f69 Author: Eric Paris Date: Tue Nov 11 21:48:18 2008 +1100 Any time fcaps or a setuid app under SECURE_NOROOT is used to result in a non-zero pE we will crate a new audit record which contains the entire set of known information about the executable in question, fP, fI, fE, fversion and includes the process's pE, pI, pP. Before and after the bprm capability are applied. This record type will only be emitted from execve syscalls. an example of making ping use fcaps instead of setuid: setcap "cat_net_raw+pe" /bin/ping type=SYSCALL msg=audit(1225742021.015:236): arch=c000003e syscall=59 success=yes exit=0 a0=1457f30 a1=14606b0 a2=1463940 a3=321b770a70 items=2 ppid=2929 pid=2963 auid=0 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=pts0 ses=3 comm="ping" exe="/bin/ping" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null) type=UNKNOWN[1321] msg=audit(1225742021.015:236): fver=2 fp=0000000000002000 fi=0000000000000000 fe=1 old_pp=0000000000000000 old_pi=0000000000000000 old_pe=0000000000000000 new_pp=0000000000002000 new_pi=0000000000000000 new_pe=0000000000002000 type=EXECVE msg=audit(1225742021.015:236): argc=2 a0="ping" a1="127.0.0.1" type=CWD msg=audit(1225742021.015:236): cwd="/home/test" type=PATH msg=audit(1225742021.015:236): item=0 name="/bin/ping" inode=49256 dev=fd:00 mode=0100755 ouid=0 ogid=0 rdev=00:00 obj=system_u:object_r:ping_exec_t:s0 cap_fp=0000000000002000 cap_fe=1 cap_fver=2 type=PATH msg=audit(1225742021.015:236): item=1 name=(null) inode=507915 dev=fd:00 mode=0100755 ouid=0 ogid=0 rdev=00:00 obj=system_u:object_r:ld_so_t:s0 Signed-off-by: Eric Paris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 851f7ff56d9c21272f289dd85fb3f1b6cf7a6e10 Author: Eric Paris Date: Tue Nov 11 21:48:14 2008 +1100 This patch will print cap_permitted and cap_inheritable data in the PATH records of any file that has file capabilities set. Files which do not have fcaps set will not have different PATH records. An example audit record if you run: setcap "cap_net_admin+pie" /bin/bash /bin/bash type=SYSCALL msg=audit(1225741937.363:230): arch=c000003e syscall=59 success=yes exit=0 a0=2119230 a1=210da30 a2=20ee290 a3=8 items=2 ppid=2149 pid=2923 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts0 ses=3 comm="ping" exe="/bin/ping" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null) type=EXECVE msg=audit(1225741937.363:230): argc=2 a0="ping" a1="www.google.com" type=CWD msg=audit(1225741937.363:230): cwd="/root" type=PATH msg=audit(1225741937.363:230): item=0 name="/bin/ping" inode=49256 dev=fd:00 mode=0104755 ouid=0 ogid=0 rdev=00:00 obj=system_u:object_r:ping_exec_t:s0 cap_fp=0000000000002000 cap_fi=0000000000002000 cap_fe=1 cap_fver=2 type=PATH msg=audit(1225741937.363:230): item=1 name=(null) inode=507915 dev=fd:00 mode=0100755 ouid=0 ogid=0 rdev=00:00 obj=system_u:object_r:ld_so_t:s0 Signed-off-by: Eric Paris Acked-by: Serge Hallyn Signed-off-by: James Morris commit c0b004413a46a0a5744e6d2b85220fe9d2c33d48 Author: Eric Paris Date: Tue Nov 11 21:48:10 2008 +1100 This patch add a generic cpu endian caps structure and externally available functions which retrieve fcaps information from disk. This information is necessary so fcaps information can be collected and recorded by the audit system. Signed-off-by: Eric Paris Acked-by: Serge Hallyn Signed-off-by: James Morris commit 9d36be76c55ad2c2bb29683b752b0d9ad2e4eeef Author: Eric Paris Date: Tue Nov 11 21:48:07 2008 +1100 Document the order of arguments for cap_issubset. It's not instantly clear which order the argument should be in. So give an example. Signed-off-by: Eric Paris Acked-by: Serge Hallyn Signed-off-by: James Morris commit ff9b48c3598732926fa09afd7f526981c32a48cc Author: Bharata B Rao Date: Mon Nov 10 21:34:09 2008 +0530 sched: include group statistics in /proc/sched_debug Impact: extend /proc/sched_debug info Since the statistics of a group entity isn't exported directly from the kernel, it becomes difficult to obtain some of the group statistics. For example, the current method to obtain exec time of a group entity is not always accurate. One has to read the exec times of all the tasks(/proc//sched) in the group and add them. This method fails (or becomes difficult) if we want to collect stats of a group over a duration where tasks get created and terminated. This patch makes it easier to obtain group stats by directly including them in /proc/sched_debug. Stats like group exec time would help user programs (like LTP) to accurately measure the group fairness. An example output of group stats from /proc/sched_debug: cfs_rq[3]:/3/a/1 .exec_clock : 89.598007 .MIN_vruntime : 0.000001 .min_vruntime : 256300.970506 .max_vruntime : 0.000001 .spread : 0.000000 .spread0 : -25373.372248 .nr_running : 0 .load : 0 .yld_exp_empty : 0 .yld_act_empty : 0 .yld_both_empty : 0 .yld_count : 4474 .sched_switch : 0 .sched_count : 40507 .sched_goidle : 12686 .ttwu_count : 15114 .ttwu_local : 11950 .bkl_count : 67 .nr_spread_over : 0 .shares : 0 .se->exec_start : 113676.727170 .se->vruntime : 1592.612714 .se->sum_exec_runtime : 89.598007 .se->wait_start : 0.000000 .se->sleep_start : 0.000000 .se->block_start : 0.000000 .se->sleep_max : 0.000000 .se->block_max : 0.000000 .se->exec_max : 1.000282 .se->slice_max : 1.999750 .se->wait_max : 54.981093 .se->wait_sum : 217.610521 .se->wait_count : 50 .se->load.weight : 2 Signed-off-by: Bharata B Rao Acked-by: Srivatsa Vaddagiri Acked-by: Dhaval Giani Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit a3d732f93785da17e0137210deadb4616f5536fc Author: Cliff Wickman Date: Mon Nov 10 16:16:31 2008 -0600 x86, UV: fix redundant creation of sgi_uv Impact: fix double entry creation in /proc There is a collision between two UV functions: both uv_ptc_init() and gru_proc_init() try to make /proc/sgi_uv So move it's creation to a single place: uv_system_init() Signed-off-by: Cliff Wickman Signed-off-by: Ingo Molnar commit 867f7fb3ebb831970847b179e7df5a9ab10da16d Author: Ingo Molnar Date: Tue Nov 11 11:18:14 2008 +0100 tracing, x86: function return tracer, fix assembly constraints fix: arch/x86/kernel/ftrace.c: Assembler messages: arch/x86/kernel/ftrace.c:140: Error: missing ')' arch/x86/kernel/ftrace.c:140: Error: junk `(%ebp))' after expression arch/x86/kernel/ftrace.c:141: Error: missing ')' arch/x86/kernel/ftrace.c:141: Error: junk `(%ebp))' after expression the [parent_replaced] is used in an =rm fashion, so that constraint is correct in isolation - but [parent_old] aliases register %0 and uses it in an addressing mode that is only valid with registers - so change the constraint from =rm to =r. This fixes the build failure. Signed-off-by: Ingo Molnar commit 8587b33f4adee4e7614ea7f443346c3b6bb5427a Author: Wim Van Sebroeck Date: Tue Nov 11 09:56:00 2008 +0000 [PATCH] nvram - convert PRINT_PROC to seq_file Convert the /proc/drivers/nvram file from the old PRINT_PROC macro to the new seq_file filesystem. Signed-off-by: Wim Van Sebroeck commit 971ddcf8ad3aa88e0daee6799925858e9f820cb4 Author: Wim Van Sebroeck Date: Tue Nov 11 09:44:07 2008 +0000 [PATCH] nvram - CodingStyle Bring drivers/char/nvram.c in line with the Coding Style. Signed-off-by: Wim Van Sebroeck commit f1c4be5edad3756212cbbbeab39428fe90c27109 Author: Ingo Molnar Date: Tue Nov 11 10:22:36 2008 +0100 tracing, x86: clean up FUNCTION_RET_TRACER Kconfig Impact: cleanup move FUNCTION_RET_TRACER to the X86 select section, where we have all the other options. Signed-off-by: Ingo Molnar commit 15e6cb3673ea6277999642802406a764b49391b0 Author: Frederic Weisbecker Date: Tue Nov 11 07:14:25 2008 +0100 tracing: add a tracer to catch execution time of kernel functions Impact: add new tracing plugin which can trace full (entry+exit) function calls This tracer uses the low level function return ftrace plugin to measure the execution time of the kernel functions. The first field is the caller of the function, the second is the measured function, and the last one is the execution time in nanoseconds. - v3: - HAVE_FUNCTION_RET_TRACER have been added. Each arch that support ftrace return should enable it. - ftrace_return_stub becomes ftrace_stub. - CONFIG_FUNCTION_RET_TRACER depends now on CONFIG_FUNCTION_TRACER - Return traces printing can be used for other tracers on trace.c - Adapt to the new tracing API (no more ctrl_update callback) - Correct the check of "disabled" during insertion. - Minor changes... Signed-off-by: Frederic Weisbecker Cc: Steven Rostedt Signed-off-by: Ingo Molnar commit caf4b323b02a16c92fba449952ac6515ddc76d7a Author: Frederic Weisbecker Date: Tue Nov 11 07:03:45 2008 +0100 tracing, x86: add low level support for ftrace return tracing Impact: add infrastructure for function-return tracing Add low level support for ftrace return tracing. This plug-in stores return addresses on the thread_info structure of the current task. The index of the current return address is initialized when the task is the first one (init) and when a process forks (the child). It is not needed when a task does a sys_execve because after this syscall, it still needs to return on the kernel functions it called. Note that the code of return_to_handler has been suggested by Steven Rostedt as almost all of the ideas of improvements in this V3. For purpose of security, arch/x86/kernel/process_32.c is not traced because __switch_to() changes the current task during its execution. That could cause inconsistency in the stored return address of this function even if I didn't have any crash after testing with tracing on this function enabled. Signed-off-by: Frederic Weisbecker Cc: Steven Rostedt Signed-off-by: Ingo Molnar commit d844222a54c33a960755b44b934cd1b01b05dceb Author: Ingo Molnar Date: Tue Nov 11 09:58:36 2008 +0100 Merge branches 'tracing/ftrace' and 'tracing/urgent' into tracing/core commit f536aafc5a2e6f0c8f1577a155e6f93db5e469f0 Author: Steven Rostedt Date: Mon Nov 10 23:07:30 2008 -0500 ring-buffer: replace most bug ons with warn on and disable buffer This patch replaces most of the BUG_ONs in the ring_buffer code with RB_WARN_ON variants. It adds some more variants as needed for the replacement. This lets the buffer die nicely and still warn the user. One BUG_ON remains in the code, and that is because it detects a bad pointer passed in by the calling function, and not a bug by the ring buffer code itself. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 5aa1ba6a6c710e747838a22d798ac97a8b248745 Author: Steven Rostedt Date: Mon Nov 10 23:07:30 2008 -0500 ftrace: prevent ftrace_special from recursion Impact: stop ftrace_special from recursion The ftrace_special is used to help debug areas of the kernel. Because of this, if it is put in certain locations, the fact that it allows recursion can become a problem if the kernel developer using does not realize that. This patch changes ftrace_special to not allow recursion into itself to make it more robust. It also changes from preempt disable interrupts disable to prevent any loss of trace entries. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit e0cb4ebcd9e5b4ddd8216c20f54445c91b1fa4b9 Merge: a309720... 45b86a9... Author: Ingo Molnar Date: Tue Nov 11 09:40:18 2008 +0100 Merge branch 'tracing/urgent' into tracing/ftrace Conflicts: kernel/trace/trace.c commit ae1e9130bfb9ad55eb97ec3fb17a122b7a118f98 Author: Ingo Molnar Date: Tue Nov 11 09:05:16 2008 +0100 sched: rename SCHED_NO_NO_OMIT_FRAME_POINTER => SCHED_OMIT_FRAME_POINTER Impact: cleanup, change .config option name We had this ugly config name for a long time for hysteric raisons. Rename it to a saner name. We still cannot get rid of it completely, until /proc//stack usage replaces WCHAN usage for good. We'll be able to do that in the v2.6.29/v2.6.30 timeframe. Signed-off-by: Ingo Molnar commit eb37b41cc2274cdecfc19d371717c321fe2ab426 Author: Jesse Brandeburg Date: Mon Nov 10 16:48:03 2008 -0800 pktgen: add full reset functionality While testing pktgen, I found that sometimes my configurations from previous runs would be left over, particularly when going from a test with 8 threads down to a test with 4 threads. This adds new functionality to pktgen where you can call pgset "reset" and it will be just like you just insmod'ed pktgen again. Signed-off-by: Jesse Brandeburg Signed-off-by: Jeff Kirsher Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit 9b1582d4513a2102c68fe12ac1106595f3c09120 Author: Rémi Denis-Courmont Date: Mon Nov 10 16:21:05 2008 -0800 Phonet: use net_device built-in stats for GPRS Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit fb28ad35906af2f042c94e2f9c0f898ef9acfa37 Author: Kay Sievers Date: Mon Nov 10 13:55:14 2008 -0800 net: struct device - replace bus_id with dev_name(), dev_set_name() Acked-by: Marcel Holtmann Acked-by: Greg Kroah-Hartman Signed-off-by: Kay Sievers Signed-off-by: David S. Miller commit 23779897546c1effb546ff89b89803d9d955d517 Merge: f574179... c483246... Author: David S. Miller Date: Mon Nov 10 13:24:44 2008 -0800 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit c4832467a5c8c2ae96d6dad882be4d4ab9eefad7 Author: Larry Finger Date: Fri Oct 31 09:40:44 2008 -0700 rtl8187: Change TX power settings The latest vendor driver (rtl8187B_linux_26.1036.0708.2008) has a different CCK power setting code as compared with the Linux driver. Signed-off-by: Larry Finger Tested-by: Piter Punk Signed-off-by: John W. Linville commit b2e53b338b7b4608372d070bb477f3bae3971e5a Author: David Kilroy Date: Fri Oct 31 13:35:21 2008 +0000 orinoco: Move sources to a subdirectory Keeping all the orinoco drivers in a common directory will make maintenance easier. Signed-off by: David Kilroy Signed-off-by: John W. Linville commit 5166ccd220f187b2e9edfc5f01eb49f4a0ebf586 Author: Luis R. Rodriguez Date: Thu Oct 30 13:33:56 2008 -0700 cfg80211: Add kdoc for struct regulatory_request As regulatory_request gets bigger there will be more questions of what things means, so clarify documenation for it and keep track of the special alpha2 codes we use internally and on the userspace regulatory agents. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit b219cee191e7cfe88a695a57249a295d0d5b22e9 Author: Luis R. Rodriguez Date: Thu Oct 30 13:33:55 2008 -0700 cfg80211: make use of reg macros on REG_RULE Ensure regulatory converstion macros safely accept multiple arguments and make REG_RULE() use them. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 9c96477d10763d4314012425ecc8a3cff9e60ea9 Author: Luis R. Rodriguez Date: Thu Oct 30 13:33:53 2008 -0700 cfg80211: Add regulatory domain intersection capability There are certain scenerios where we require intersecting two regulatory domains. This adds intersection support. When we enable 802.11d support we will use this to intersect the regulatory domain from the AP's country IE and what our regulatory agent believes is correct for a country. This patch enables intersection for now in the case where the last regdomain was set by a country IE which was parsed and the user then wants to set the regulatory domain. Since we don't support country IE parsing yet this code path will not be hit, however this allows us to pave the way for 11d support. Intersection code has been tested in userspace with CRDA. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d71aaf6053e380996e40c9ecfe39a8dced52694c Author: Luis R. Rodriguez Date: Thu Oct 30 13:33:52 2008 -0700 cfg80211: a reg rule is invalid if freq diff is 0 A regulatory rule is invalid when the frequency difference between the end of the frequency range and the start is 0. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit fc6971d491517ba15e800540ff88caa55dc65b01 Author: Jouni Malinen Date: Thu Oct 30 19:59:05 2008 +0200 mac80211_hwsim: Add support for client PS mode This introduces a debugfs file (ieee80211/phy#/hwsim/ps) that can be used to force a simulated radio into power save mode. Following values can be written into this file to change PS mode: 0 = power save disabled (constantly awake) 1 = power save enabled (drop all frames; do not send PS-Poll) 2 = power save enabled (send PS-Poll frames automatically to receive buffered unicast frames); not yet fully implemented 3 = manual PS-Poll trigger (send a single PS-Poll frame) Two different behavior for power save mode processing can be tested: - move between modes 1 and 0 (i.e., receive all buffered frames at a time) - move to mode 1 and use manual PS-Poll frames (write 3 to the 'ps' debugfs file) to fetch power save buffered frames one at a time Mode 2 (automatic PS-Poll) does not yet parse Beacon frames, but eventually, it should take a look at TIM IE and send PS-Poll if a traffic bit is set for our AID. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit fbf189273926d83d71c4c321f1215162569506ac Author: Jouni Malinen Date: Thu Oct 30 19:50:30 2008 +0200 mac80211: Allow AP mode to be enabled With the addition of basic rate set and TX queue parameter configuration and confirmation that power save buffering is working again, mac80211 is now in state that allows AP mode to be used without major problems. Consequently, it is time to allow this mode to be enabled without having to patch the kernel. AP mode requires hostapd for management frame processing and as such, configuring this mode is only allowed through cfg80211 (not with iwconfig and WEXT). Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit d61272cbb35fa1c08fe94898583d880256f2dbd3 Author: Tomas Winkler Date: Thu Oct 30 17:08:08 2008 +0200 mac80211: fix basic rates setting from association response In previous code all the rates were marked as basic. Signed-off-by: Tomas Winkler Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit ab1ef980504ca7f17b675b3a53a88956f800fce3 Author: Jouni Malinen Date: Thu Oct 30 16:59:25 2008 +0200 mac80211_hwsim: Make sure beacon_timer gets deleted It was possible to trigger a kernel panic because beacon_timer may not have been deleted in all cases when the kernel module was removed while hostapd was still running. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 318884875bdddca663ecc373c813cf8e117d9e43 Author: Jouni Malinen Date: Thu Oct 30 16:59:24 2008 +0200 nl80211: Add TX queue parameter configuration Add a new attribute, NL80211_ATTR_WIPHY_TXQ_PARAMS, that can be used with NL80211_CMD_SET_WIPHY for userspace (e.g., hostapd) to set TX queue parameters (txop, cwmin, cwmax, aifs). Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 1e898ff83c31c303f73c3893d1ac519e4d9b59e5 Author: Jouni Malinen Date: Thu Oct 30 16:59:23 2008 +0200 mac80211_hwsim: Debug info for TX queue parameters Provide detailed information on TX queue parameter changes to make it easier to debug mac80211 functionality. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 90c97a040d6b08cc4890328aa262fdc37336ab01 Author: Jouni Malinen Date: Thu Oct 30 16:59:22 2008 +0200 nl80211: Add basic rate configuration for AP mode Add a new attribute, NL80211_ATTR_BSS_BASIC_RATES, that can be used with NL80211_CMD_SET_BSS for userspace (e.g., hostapd) to set which rates are in the basic rate set. Signed-off-by: Jouni Malinen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit fe63bfa3669dbdd4985ed35d9a0ed08881f62516 Author: Jouni Malinen Date: Thu Oct 30 16:59:21 2008 +0200 mac80211_hwsim: Debug info for BSS config changes Provide detailed information on BSS configuration changes to make it easier to debug mac80211 functionality. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 95f8e38deffc55f7108bcfa3e180bd5b3d53fc04 Author: Ilpo Järvinen Date: Thu Oct 30 13:43:41 2008 +0200 b43legacy: reindent misleading statement Signed-off-by: Ilpo Järvinen Signed-off-by: John W. Linville commit ccf5dd14f8a4273f40d8319e75b377edb1f5220d Author: Johannes Berg Date: Wed Oct 29 23:24:14 2008 +0100 libertas_tf: fix skb tail pointer skb->tail can't be meant here because it's not the same across 32/64 bit compilations. This means there's no way the current driver can work on 64-bit architectures. Signed-off-by: Johannes Berg Cc: stable@kernel.org [2.6.27] Signed-off-by: John W. Linville commit 9483407d09077c0bfc612c72835b1e9bbdda0a10 Author: Chr Date: Wed Oct 29 22:39:50 2008 +0100 p54: initialize all deprecated fields The new mechanism for allocing space for control frames, didn't "zero" out the payload data... However I haven't heard of any hiccups so far... Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit c8034c44851ba4c6b55ec6e6b60573cf51589be3 Author: Pavel Roskin Date: Wed Oct 29 17:31:43 2008 -0400 p54: don't report known but unhandled EEPROM codes as unknown Signed-off-by: Pavel Roskin Signed-off-by: John W. Linville commit 61780ee313846b29bfb06dfcb2f3bdf0b7ba3f66 Author: Mohamed Abbas Date: Wed Oct 29 14:05:49 2008 -0700 iwlwifi: do not call statistics from rfkill Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit eb48dcaf57d4e9b6521aeb593fe95a36db6c2109 Author: Winkler, Tomas Date: Wed Oct 29 14:05:48 2008 -0700 iwlwifi: iwl-agn-rs: initialize rs with valid antenna This patch fix rate scaling initialization. Rate scaling was initialized always with B antenna. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 6a63578ddf6148927a80c07a73b40ccc8f3ac8e2 Author: Emmanuel Grumbach Date: Wed Oct 29 14:05:47 2008 -0700 iwlwifi: rename double inclusion protection name in iwl-commands.h This patch change the name of the double inclusion protection in iwl-commands.h Signed-off-by: Emmanuel Grumbach Reviewed-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 5b9f8cd3eea04770ff186b853bbde1741f321866 Author: Emmanuel Grumbach Date: Wed Oct 29 14:05:46 2008 -0700 iwlwifi: rename generic iwlagn functions that had a HW specific name This patch renames functions that are generic in iwl-agn and had a iwl4965 prefix. Signed-off-by: Emmanuel Grumbach Reviewed-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 60294de3af99586bb4a205274d02a7c8b910c0c3 Author: Zhu, Yi Date: Wed Oct 29 14:05:45 2008 -0700 iwlwifi: fix priv->iw_mode setting when multiple vif are configured mac80211 supports multiple virtual interfaces for a single device. For example, a managed interface (wlan0) and a monitor interface (mon0) can exist at the same time. Thus priv->iw_mode is not sufficient to track the wireless mode any more. The patch redefines priv->iw_mode as the first interface mode (the same as priv->vif->type if priv->vif != NULL). If another monitor type interface is created later, we don't change priv->iw_mode into monitor. This way, the original interface still works. The patch also requests mac80211 to do reassociation after we change the Rx filter flags. Signed-off-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit eb4779c40549f8e0dd45c9a30f279134c9a86131 Author: Winkler, Tomas Date: Wed Oct 29 14:05:44 2008 -0700 iwlwifi: trivial removal of some 4965 remaining from iwl-agn-rs.h This patch removes 4965 prefix from comments and one function in iwl-agn-rs.h Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9c80c50211d638555bc4b160d9ccd348e98eedad Author: Winkler, Tomas Date: Wed Oct 29 14:05:43 2008 -0700 iwlwifi: reorganize flow handler bitology This patch cleans up FH bits and adds missing register values that will be used later in TX initialization rewrite Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit c7ab5ef9bcd281135c21b4732c9be779585181be Author: Johannes Berg Date: Wed Oct 29 20:02:12 2008 +0100 b43: implement short slot and basic rate handling This implements proper short slot handling and adds code to program the hardware for the correct response rates derived from the basic rate set for the current BSS. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit bd815252720e4b667d9946d050d003ec89bda099 Author: Johannes Berg Date: Wed Oct 29 20:00:45 2008 +0100 wireless: implement basic rate helper function This adds a helper function that, given a bitmap of basic rates and a bitrate returns the response rate for this rate. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 743b97caf98036ec8ee4bfc6fc6f85ad94e04783 Author: Ivo van Doorn Date: Wed Oct 29 19:41:03 2008 +0100 rt2x00: Remove debugfs CSR access wrappers Move calculation of CSR register offset into rt2x00debug.c and remove the wrapper functions from each individual driver. (Except rt2500usb, which still needs to wrap for the different value type argument). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit f161796700ed89b07dff2ad4ba3a932bc721af7e Author: John W. Linville Date: Fri Oct 31 16:45:15 2008 -0400 ath9k: correct warning about unintialized variable 'tid' drivers/net/wireless/ath9k/xmit.c: In function ‘ath_tx_start’: drivers/net/wireless/ath9k/xmit.c:1858: warning: ‘tid’ may be used uninitialized in this function Signed-off-by: John W. Linville commit 74508b29c51158e5b45bca13e702c68ef5c3b641 Author: Larry Finger Date: Fri Oct 31 09:54:49 2008 -0700 rtl8187: Reduce channel switch delay The latest vendor driver (rtl8187B_linux_26.1036.0708.2008) has a 10 msec delay after the call to set a new channel, but not before. Signed-off-by: Larry Finger Tested-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 94d4fe9824e5c62240f3ae2a33b2dd5a8a32a01b Author: Larry Finger Date: Fri Oct 31 09:54:30 2008 -0700 rtl8187: Remove primitive write delays Each of the primary write routines, rtl8187_write_phy(), rtl8225_write_bitbang(), and rtl8225_write_8051() all conclude with an msleep() command. Testing shows that these are not needed. Signed-off-by: Larry Finger Tested-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 946d1c22644a5de07efc1c847fb64bb0cf8f82f2 Author: Larry Finger Date: Fri Oct 31 09:54:13 2008 -0700 rtl8187: Remove msleep calls after calls to rtl8225_write Routine rtl8225_write() calls either rtl8225_write_bitbang() or rtl8225_write_8051(), both of which end with an msleep() command. As a result, a rtl8225_write() immediately followed by an msleep() is not needed. Signed-off-by: Larry Finger Tested-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit a3d67bc2e9e25f09151971192946fe3b68543649 Author: Larry Finger Date: Fri Oct 31 09:52:58 2008 -0700 rtl8187: Remove CCK delays Routine rtl8225_write_phy_cck() calls rtl8225_write_phy(), which concludes with a sleep of 1 msec; therefore a call to rtl8225_write_phy_cck() immediately followed by an msleep(1) is not needed. Signed-off-by: Larry Finger Tested-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 35cc988a5620cea03fd97e96c530e1f259ef913b Author: Larry Finger Date: Fri Oct 31 09:52:39 2008 -0700 rtl8187: Remove OFDM delays Routine rtl8225_write_phy_ofdm() calls rtl8225_write_phy(), which concludes with a sleep of 1 msec; therefore a call to rtl8225_write_phy_ofdm() immediately followed by an msleep(1) is not needed. Signed-off-by: Larry Finger Tested-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 2f20596b50ee964715f9ad44d848802f0baba5d8 Author: Larry Finger Date: Fri Oct 31 09:52:07 2008 -0700 rtl8187: Remove large delays The rtl8187 driver contains 3 sleep statements that are longer than a second. Testing has shown no bad effects when they are removed. Signed-off-by: Larry Finger Tested-by: Herton Ronaldo Krzesinski Tested-by: Hin-Tak Leung Signed-off-by: John W. Linville commit 9344e86e577df483475845096dba07f2deb11ce3 Author: Ivo van Doorn Date: Wed Oct 29 17:19:29 2008 +0100 rt2x00: Release rt2x00 2.2.2 Version bump. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 3514a441265c6788d85e8222dcca10cd66433123 Author: Ivo van Doorn Date: Wed Oct 29 17:18:46 2008 +0100 rt2x00: Improve interface_modes initialization All operating modes which require beaconing should depend on the availability of beacon entries from the hardware. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit c3fd7b41cae2fa213858d6501e6065f24097c0a8 Author: Ivo van Doorn Date: Wed Oct 29 17:18:22 2008 +0100 rt2x00: Remove ieee80211_bss_conf from rt2x00_intf We can safely remove ieee80211_bss_conf from rt2x00_intf, it is provided by mac80211 in ieee80211_vif as well. (rt2x00_intf is the drv_priv field of ieee80211_vif). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit e4ea1c403acece78c271bf9cd6f797d1cb093df9 Author: Ivo van Doorn Date: Wed Oct 29 17:17:57 2008 +0100 rt2x00: Optimize configuration handling Implement latest changed from mac80211 configuration handling to optmize configuration handling in rt2x00. * Remove set_retry_limit callback function, handled through config() * Move config_antenna to its own callback function, it isn't handled by mac80211 anymore * Use IEEE80211_CONF_CHANGED_* flags and remove manual checks * Removed deprecated short slot setting through config() and put it in config_erp() through which mac80211 now configures it * Remove config_phymode() and move contents to config_erp() since it only managed the basic rates which is now determined by mac80211 through config_erp(). Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 3f64b435ab76e79bfb3b4d36f043e6f892093b71 Author: Bob Copeland Date: Wed Oct 29 23:19:14 2008 -0400 ath5k: update keycache to support TKIP handling Newer parts have slots at entry+64 for michael mic and can do WPA-TKIP in hardware. The open-sourced Atheros HAL has code for accessing this portion so now we know how where to put the key material. Signed-off-by: Bob Copeland Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 9ad9a26e7b7b6671a9aefbb1edb2e8a9ed50ee8d Author: Bob Copeland Date: Wed Oct 29 08:30:54 2008 -0400 ath5k: enable hardware encryption for WEP This change re-enables hardware encryption for ath5k after setting up mac80211 to handle the initialization vectors which happens to make it work. Add a module param (nohwcrypt) to optionally turn it off. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 2a941ecb5178cb8c94190f17a42f35a772cbc5c6 Author: Holger Schurig Date: Wed Oct 29 09:43:50 2008 +0100 wireless: fix two bad print_ssid conversions This patch fixes two current compilation problems. They showed up with CONFIG_IEEE80211_DEBUG defined. Signed-off-by: Holger Schurig Signed-off-by: John W. Linville commit 8469cdef1f123e2e3e56645f1ac26c7cfb333d9c Author: Sujith Date: Wed Oct 29 10:19:28 2008 +0530 mac80211: Add a new event in ieee80211_ampdu_mlme_action Send a notification to the driver on succesful reception of an ADDBA response, add IEEE80211_AMPDU_TX_RESUME for this purpose. Signed-off-by: Sujith Signed-off-by: John W. Linville commit dca3edb88ef567671886a85c5e40d491ccecf934 Author: Sujith Date: Wed Oct 29 10:19:01 2008 +0530 ath9k: Remove internal RX A-MPDU processing mac80211 has RX A-MPDU reordering support. Use that and remove redundant RX processing within the driver. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 7f959032bbee5eedaf4c606d11f0c5d41498644e Author: Sujith Date: Wed Oct 29 10:18:39 2008 +0530 ath9k: Clear HT info on starting the driver Doing an interface down/up leaves the old HT assoc information, clear it. Signed-off-by: Sujith Signed-off-by: John W. Linville commit ccc75c526611e62c4c9adcb4a62bf4a164478d2c Author: Sujith Date: Wed Oct 29 10:18:14 2008 +0530 ath9k: Remove ath_tx_aggr_resp() Accessing mac80211's internal state machine is wrong. Will add resumption of a TID in a later patch. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 05a1e2d111c98340fb17ec702cf09450eec3a947 Author: Sujith Date: Wed Oct 29 10:17:54 2008 +0530 ath9k: Enable interrupts at the proper place config_interface() was the wrong place to enable interrupts when bringing up an interface, move it to ath_open(). Signed-off-by: Sujith Signed-off-by: John W. Linville commit 154662a6356ec3ccfea0a22218cf149220ea6373 Author: Sujith Date: Wed Oct 29 10:17:34 2008 +0530 ath9k: Remove unnecessary TSF reset The TSF is already reset properly via mac80211's callback. Resetting it in config_interface() is not needed. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 9c84b7978f1b99048bf31be5a0218cd509e74148 Author: Sujith Date: Wed Oct 29 10:17:13 2008 +0530 ath9k: Streamline attach/detach Simplify attach and detach routines by consolidating the stop and suspend functions. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 50fdae2c7bcb6417997f90c3d9853a59a9ed06ce Author: Sujith Date: Wed Oct 29 10:16:52 2008 +0530 ath9k: Remove unused function ath_get_currentCountry() Signed-off-by: Sujith Signed-off-by: John W. Linville commit f1dc56003b23d2d5bb5a756de6b1633a76c9e697 Author: Sujith Date: Wed Oct 29 10:16:30 2008 +0530 ath9k: Refactor hw.c Split hw.c into more manageable files: ani.c calib.c eeprom.c mac.c Signed-off-by: Sujith Signed-off-by: John W. Linville commit 5640b08ef7e88b606c740e746cb77bc97d78508e Author: Sujith Date: Wed Oct 29 10:16:06 2008 +0530 ath9k: Revamp VAP management Remove the internal VAP management routines and embed ath_vap in mac80211's driver private area provided in ieee80211_vif. Signed-off-by: Sujith Signed-off-by: John W. Linville commit a37c2c79404940dfc5e88c851c3de5328975b1a9 Author: Sujith Date: Wed Oct 29 10:15:40 2008 +0530 ath9k: Use bitfields to store tid's state in a single variable Signed-off-by: Sujith Signed-off-by: John W. Linville commit 102e0572d330e6cdb89a8f8fbd3999e3c67a1f9e Author: Sujith Date: Wed Oct 29 10:15:16 2008 +0530 ath9k: Ensure ath_node is not NULL when updating tx chainmask Also, random indentation and whitespace cleanup. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 43453b3392c1ecfdd1471383ad42ba926533a722 Author: Sujith Date: Wed Oct 29 10:14:52 2008 +0530 ath9k: Remove SM Power Save as it is not supported now Signed-off-by: Sujith Signed-off-by: John W. Linville commit 528f0c6b3b6bbed1328ee49bfc906543daa00866 Author: Sujith Date: Wed Oct 29 10:14:26 2008 +0530 ath9k: Revamp transmit control block Use the ath_buf instance associated with each tx frame directly and remove all redundant information in ath_tx_control. Signed-off-by: Sujith Signed-off-by: John W. Linville commit c51701632c8becdf0ffedb96d9cedc1149f2183a Author: Sujith Date: Wed Oct 29 10:13:59 2008 +0530 ath9k: Simplify node attach/detach routines Signed-off-by: Sujith Signed-off-by: John W. Linville commit b5aa9bf9460f9e97f2c10940b029d75c6557ad7c Author: Sujith Date: Wed Oct 29 10:13:31 2008 +0530 ath9k: Node cleanup Start removing the internal node list in ath9k, in preparation for using mac80211's STA list. Remove lists, locks, routines, flags, functions managing nodes in ath9k. Signed-off-by: Sujith Signed-off-by: John W. Linville commit 17683c65c8a5f3f29f5408334992986b996d8205 Author: Bob Copeland Date: Wed Oct 29 23:24:26 2008 -0400 ath5k: fix keytable type buglet in ath5k_hw_reset_key Be sure we clear out both the mic (if applicable) and the encryption key type. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit f07a6c495e88ae0143e3c20b1ed666314197277f Author: Nick Kossifidis Date: Wed Oct 29 04:28:28 2008 +0200 ath5k: Update PCU code * In set_opmode don't handle antenna settings and preserve other STA_ID1 settings (shouldn't matter because we call it during reset but it makes things cleaner) Also set properly AP/ADHOC indicator flag on CFG while setting AP/ADHOC modes and always enable key search mode. * Properly set BSSID Mask during reset (cache it and reuse it durring set_associd) * Update beacon_init to flush pending BMISS interrupts and handle setting of adhoc beacon ATIM policy flag for ad-hoc mode. Also set TSF to 0 to start TSF increment on AP mode. We need to handle sleep timers for AR5212 there + add support for PCF. * Properly clean MIC key from keytable when TKIP is used (Bob is working on set_key function etc so i leave it for now). Tested on AR5212 (Hainan) and AR5413 and works fine v2 Set PISR on AR5211+ and ISR on AR5210, got to sleep more ;-) Changes-Licensed-under: ISC Signed-Off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 2c706002fc147decdba2658ea48e4436faca3af2 Author: Johannes Berg Date: Thu Oct 30 22:09:54 2008 +0100 don't use net/ieee80211.h Convert all the drivers using net/ieee80211.h to use linux/ieee80211.h. Contains a bugfix in libertas where the SSID parsing could overrun the buffer when the AP sends invalid information. Signed-off-by: Johannes Berg Acked-by: Dan Williams [airo, libertas] Acked-by: Pavel Roskin [orinoco] Acked-by: David Kilroy [orinoco] Signed-off-by: John W. Linville commit 9b1fbae4b242cf86a878771eb59dc600dde72ec8 Author: Johannes Berg Date: Wed Oct 29 01:02:27 2008 +0100 iwl3945: remove bogus comment I added this comment myself, but it's clearly wrong. I had meant to place it in iwl_mac_add_interface, which at the time didn't honour the MAC address setting, but it does now. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 41bb73eeac5ff5fb217257ba33b654747b3abf11 Author: Johannes Berg Date: Wed Oct 29 01:09:37 2008 +0100 mac80211: remove SSID driver code Remove the SSID from the driver API since now there is no driver that requires knowing the SSID and I think it's unlikely that any hardware design that does require the SSID will play well with mac80211. This also removes support for setting the SSID in master mode which will require a patch to hostapd to not try. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit b23f99bcfa12c7b452f7ad201ea5921534d4e9ff Author: Johannes Berg Date: Tue Oct 28 18:50:12 2008 +0100 adm8211: remove SSID code Since adm8211 currently doesn't implement IBSS mode anyway, it can't be using the SSID. And if/when it does implement IBSS mode, we'll have to see how to make it beacon anyway. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 71c11fb57b924c160297ccd9e1761db598d00ac2 Author: Johannes Berg Date: Tue Oct 28 18:29:48 2008 +0100 b43/legacy: remove SSID code The SSID programmed into the device is used by the ucode only to reply to probe requests, a functionality we disable anyway because it doesn't fit with the mac80211/hostapd programming model. Therefore, it isn't useful to program the SSID into device. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 4607816f608b42a5379aca97ceed08378804c99f Author: Johannes Berg Date: Tue Oct 28 18:25:43 2008 +0100 iwlwifi: remove unused essid variable Now the essid stuff is unused, so remove it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit a57a59f247b651e8ed6d3eeb7e2f9d83b83134c9 Author: Johannes Berg Date: Tue Oct 28 18:21:05 2008 +0100 iwlwifi: remove implicit direct scan When an undirected scan is requested and iwlwifi is not associated but the user has set an SSID (and maybe was associated with that network at some point) then iwlwifi will assume the user wanted to scan for this SSID which seems wrong. Remove this code. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 430cfe95a401baa0dc2022deaad02cb75d63c73c Author: Johannes Berg Date: Tue Oct 28 18:06:02 2008 +0100 iwl3945: remove dead code Was wondering about this code since supposedly the firmware will add the SSID element. Turns out it's dead, so remove it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e5704bf0ba4bb2ca54a1c74f6a6dca53dfccc33d Author: Johannes Berg Date: Tue Oct 28 16:59:57 2008 +0100 ath9k: remove useless NULL initialisers When I added .set_frag_threshold I didn't realise it was already there which now generated a sparse warning. Therefore, remove the .set_frag_threshold NULL initialiser, and while at it all the other useless ones. Signed-off-by: Johannes Berg Acked-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 2df78167ade3d0542f0f95be7cc58861343cce3a Author: Johannes Berg Date: Tue Oct 28 16:49:41 2008 +0100 wireless: fix a few sparse warnings Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 1239cd58d237fa6ad501acaec8776262a5784ec8 Author: Johannes Berg Date: Tue Oct 28 11:12:57 2008 +0100 wireless: move mesh config length constant This is a constant from the 802.11 specification. Signed-off-by: Johannes Berg Cc: Javier Cardona Signed-off-by: John W. Linville commit 97c8b013da7a8ec7aa0a192489d4e7a33c4127fc Author: Zhu Yi Date: Tue Oct 28 15:58:31 2008 +0800 mac80211: print reason code for deauth/dissoc frames The patch prints reason code for deauth/dissoc frames to give users more ideas what's happened for the disconnection. Signed-off-by: Zhu Yi Acked-by: Johannes Berg Signed-off-by: John W. Linville commit db4186cf15a5a7e8e8526f7c158f042ccc3ed576 Author: John W. Linville Date: Fri Oct 31 15:53:12 2008 -0400 p54: eliminate warning for uninitialized variable 'tim_len' drivers/net/wireless/p54/p54common.c: In function ‘p54_tx’: drivers/net/wireless/p54/p54common.c:1058: warning: ‘tim_len’ may be used uninitialized in this function Signed-off-by: John W. Linville commit e5ea92a7528d304e8e327d0d261653e98b163e8a Author: Christian Lamparter Date: Sat Oct 18 23:19:00 2008 +0200 p54: AP & Ad-hoc testing This patch finally adds all necessary code to test Ad-hoc & AP mode with p54. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 94585b090baf982a850678a1dc3395bce0c1e302 Author: Christian Lamparter Date: Sat Oct 18 23:18:44 2008 +0200 p54: put broadcast frames into the right queues stlc45xx's specs finally brought some light what all the 4 extra queues for. now CAB data and managment frames have their own queue. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 9e7f3f8e4acdc480584d6b5e6a6be5d1f7bda8fa Author: Christian Lamparter Date: Sat Oct 18 23:18:01 2008 +0200 p54: more definitions form lmac_longbow.h and pda.h This patch ports more useful features to p54 - PDR definitions for the synth chips & regulatory domain. - honour IEEE80211_TX_CTL_ASSIGN_SEQ flag, if it's set. - adds some lost mutex_lock & mutex_unlock. - replace two more "magic values" that sneaked past. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 9a8675d712d57da0993ad2e43b168c9585892097 Author: Christian Lamparter Date: Sat Oct 18 23:04:15 2008 +0200 p54: introduce new names for device firmwares Johannes thought it would have been a good idea to change the firmware names. Note: we still have fallbacks in case our users don't want to "break their running system", but we won't advertise them with MODULE_FIRMWARE. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 4ceb7b6ae2cf5b6e32c403a11bb54081bf8f8b83 Author: Wang Chen Date: Fri Sep 5 11:28:47 2008 +0800 netdevice libertas: Fix directly reference of netdev->priv We have some reasons to kill netdev->priv: 1. netdev->priv is equal to netdev_priv(). 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously netdev_priv() is more flexible than netdev->priv. But we cann't kill netdev->priv, because so many drivers reference to it directly. OK, becasue Dave S. Miller said, "every direct netdev->priv usage is a bug", and I want to kill netdev->priv later, I decided to convert all the direct reference of netdev->priv first. Different to readonly reference of netdev->priv, in this driver, netdev->priv was changed. I use netdev->ml_priv to replace netdev->priv. Signed-off-by: Wang Chen Signed-off-by: John W. Linville commit f43aa025b7de79d6a615ea4c1e6be7e6b1cea538 Author: Takashi Iwai Date: Mon Nov 10 16:24:26 2008 +0100 ALSA: hda - Fix another cache list management Fix another silly bug in the amp cache list management. Signed-off-by: Takashi Iwai commit b402dff8739cd82c58b632ba472caf26ae8741ed Author: Hugo Villeneuve Date: Sat Nov 8 13:26:09 2008 -0500 ASoC: Add Right-Justified mode and Codec clock master to davinci-i2s The TI DVEVM board uses the SND_SOC_DAIFMT_CBM_CFM & I2S formats, but the Lyrtech SFFSDR board uses the SND_SOC_DAIFMT_CBM_CFS & RIGHT-JUSTIFIED formats. Signed-off-by: Hugo Villeneuve Signed-off-by: Mark Brown commit 53599bbc30343f0cbfe750d2af19c9c45b841b82 Author: Christian Pellegrin Date: Sat Nov 8 08:44:16 2008 +0100 ASoC: s3c24xx 8 bit sound fix fixes playing/recording of 8 bit audio files. Generated on 20081108 against v2.6.27 Signed-off-by: Christian Pellegrin Signed-off-by: Mark Brown commit ba21ebb6abac5c46e1d818d2ceda82420bd099ba Author: Cyrill Gorcunov Date: Mon Nov 10 09:16:41 2008 +0100 x86: apic - use pr_ macros for logging Impact: cleanup It saves us some source lines and shift the code a bit righter. And a multiline comment style is fixed too :-) Signed-off-by: Cyrill Gorcunov Acked-by: "Maciej W. Rozycki" Signed-off-by: Ingo Molnar commit 4e0304310f5180eee11b4edc72cf4cb78acdc634 Author: Cyrill Gorcunov Date: Mon Nov 10 09:16:40 2008 +0100 x86: apic - calibrate_APIC_clock remove redundant irq-enable-disable Impact: cleanup lapic_timer_setup is self-protected with local_irq_save/restore no need to use them in caller and levt is the per-cpu variable so no concurrent access from another cpu. Signed-off-by: Cyrill Gorcunov Acked-by: "Maciej W. Rozycki" Signed-off-by: Ingo Molnar commit 4ecd33d930591d41fe356160593a9076467b961c Merge: 7d5a78c... f7160c7... Author: Ingo Molnar Date: Mon Nov 10 09:16:27 2008 +0100 Merge commit 'v2.6.28-rc4' into x86/apic commit f4166c54bfe04f64603974058e44fbd7cfef0ccc Author: Markus Metzger Date: Sun Nov 9 14:29:21 2008 +0100 x86, bts: DS and BTS initialization Impact: widen BTS/PEBS ptrace enablement to more CPU models Move BTS initialisation out of an #ifdef CONFIG_X86_64 guard. Assume core2 BTS and DS layout for future models of family 6 processors. Signed-off-by: Markus Metzger Signed-off-by: Ingo Molnar commit 19f47c634ea8c5a10ff7bb1a08c52fd0f49bc54c Author: Harvey Harrison Date: Sun Nov 9 21:28:15 2008 -0800 x86: x86_32 has its own irq_regs definition Impact: cleanup Arches that have their own irq_regs definition are expected to define ARCH_HAS_OWN_IRQ_REGS or else a generic (unused) set will also be defined in lib/irq_regs.c Sparse noticed the unused generic one had no prototype: lib/irq_regs.c:15:1: warning: symbol 'per_cpu____irq_regs' was not declared. Should it be static? Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar commit 87135d92b4ae73208c53242f3cfec5b20b772cb3 Merge: 4fcc50a... f7160c7... Author: Ingo Molnar Date: Mon Nov 10 08:41:38 2008 +0100 Merge commit 'v2.6.28-rc4' into x86/cleanups commit 4fcc50abdffb517cee36cec9cb22138d84fb62d0 Author: Ingo Molnar Date: Sun Nov 9 08:10:03 2008 +0100 x86: clean up vget_cycles() Impact: remove unused variable I forgot to remove the now unused "cycles_t cycles" parameter from vget_cycles() - which triggers build warnings as tsc.h is included in a number of files. Remove it. Signed-off-by: Ingo Molnar commit 39c9aede2b4a252bd296c0a86be832c3d3d0a273 Author: Eric Paris Date: Wed Nov 5 09:34:42 2008 -0500 SELinux: Use unknown perm handling to handle unknown netlink msg types Currently when SELinux has not been updated to handle a netlink message type the operation is denied with EINVAL. This patch will leave the audit/warning message so things get fixed but if policy chose to allow unknowns this will allow the netlink operation. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Signed-off-by: James Morris commit cb9e35dce94a1b9c59d46224e8a94377d673e204 Author: Ingo Molnar Date: Sat Nov 8 20:27:00 2008 +0100 x86: clean up rdtsc_barrier() use Impact: cleanup Move rdtsc_barrier() use to vsyscall_64.c where it's relied on, and point out its role in the context of its use. Signed-off-by: Ingo Molnar commit 895e031707954a9ca26ed4f5f794575313854ed1 Merge: 838e8bb... a622cf6... Author: Ingo Molnar Date: Sat Nov 8 20:23:02 2008 +0100 Merge branch 'linus' into x86/cleanups commit 15002fa9bf3a79ac9dcafba7ff308586936088b2 Author: Hiroshi Shimamoto Date: Fri Nov 7 19:25:36 2008 -0800 x86: signal: cosmetic unification of setup_sigcontext() Impact: cleanup Make setup_sigcontext() same. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit a309720c876d7ad2e224bfd1982c92ae4364c82e Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: display start of CPU buffer in trace output Impact: change in trace output Because the trace buffers are per cpu ring buffers, the start of the trace can be confusing. If one CPU is very active at the end of the trace, its history will not go as far back as the other CPU traces. This means that output for a particular CPU may not appear for the first part of a trace. To help annotate what is happening, and to prevent any more confusion, this patch adds a line that annotates the start of a CPU buffer output. For example: automount-3495 [001] 184.596443: dnotify_parent <-vfs_write [...] automount-3495 [001] 184.596449: dput <-path_put automount-3496 [002] 184.596450: down_read_trylock <-do_page_fault [...] sshd-3497 [001] 184.597069: up_read <-do_page_fault -0 [000] 184.597074: __exit_idle <-exit_idle [...] automount-3496 [002] 184.597257: filemap_fault <-__do_fault -0 [003] 184.597261: exit_idle <-smp_apic_timer_interrupt Note, parsers of a trace output should always ignore any lines that start with a '#'. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 769c48eb2530c5c1a393e2c82063f4f050571d24 Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: force pass of preemptoff selftest Impact: preemptoff not tested in selftest Due to the BKL not being preemptable anymore, the selftest of the preemptoff code can not be tested. It requires that it is called with preemption enabled, but since the BKL is held, that is no longer the case. This patch simply skips those tests if it detects that the context is not preemptable. The following will now show up in the tests: Testing tracer preemptoff: can not test ... force PASSED Testing tracer preemptirqsoff: can not test ... force PASSED When the BKL is removed, or it becomes preemptable once again, then the tests will be performed. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 7d5222a6afa4e429f55df8c086adb747837cbdf5 Author: Matt Fleming Date: Fri Nov 7 13:26:25 2008 +0000 ftrace: align __mcount_loc sections Impact: add alignment option for recordmcount.pl script Align the __mcount_loc sections so that architectures with strict alignment requirements need not worry about performing unaligned accesses. This fixes an issue where I was seeing unaligned accesses, which are not supported on our architecture (the results of an unaligned access are undefined). Signed-off-by: Matt Fleming Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit c76f06945be50564f925799ddfb6235ee4c26aa0 Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: remove trace array ctrl Impact: remove obsolete variable in trace_array structure With the new start / stop method of ftrace, the ctrl variable in the trace_array structure is now obsolete. Remove it. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit bbf5b1a0cecb56de6236db8b01c5bfb7ab8ba8b2 Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: remove ctrl_update method Impact: Remove the ctrl_update tracer method With the new quick start/stop method of tracing, the ctrl_update method is out of date. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 49833fc232bd6a5076496994d855f601354501d7 Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: enable trace_printk by default Impact: have the ftrace_printk enabled on startup It is confusing to have to "echo trace_printk > /debug/tracing/iter_ctrl" after adding ftrace_printk in the kernel. Currently the trace_printk is set to off by default. ftrace_printk should only be in open kernel code when used for debugging, and thus it should be enabled by default. It may also be used to record data within a tracer, but those ftrace_printks should be within wrappers that are either enabled by trace_points or have a variable protecting the code path from being entered when the tracer is disabled. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 451931702017951f74624ddc4f7f02e4641b0e20 Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: irqsoff tracer incorrect reset Impact: fix to irqsoff tracer output In converting to the new start / stop ftrace handling, the irqsoff tracer start called the irqsoff reset function. irqsoff tracer is not the same as the other traces, and it resets the buffers while searching for the longest latency. The reset that the irqsoff stop method calls disables the function tracing. That means that, by starting the tracer, the function tracer is disabled incorrectly. This patch simply removes the call to reset which keeps the function tracing enabled. Reset is not needed for the irqsoff stop method. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit e168e0516e476070faa9e8e7b23dfcba79b76d82 Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: fix sched_switch API Impact: fix for sched_switch that broke dynamic ftrace startup The commit: tracing/fastboot: use sched switch tracer from boot tracer broke the API of the sched_switch trace. The use of the tracing_start/stop_cmdline record is for only recording the cmdline, NOT recording the schedule switches themselves. Seeing that the boot tracer broke the API to do something that it wanted, this patch adds a new interface for the API while puting back the original interface of the old API. Signed-off-by: Steven Rostedt Acked-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 75f5c47da386445ba0c5a8b7e3ca0c906e763369 Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: fix boot trace sched startup Impact: boot tracer startup modified The boot tracer calls into some of the schedule tracing private functions that should not be exported. This patch cleans it up, and makes way for further changes in the ftrace infrastructure. This patch adds a api to assign a tracer array to the schedule context switch tracer. Signed-off-by: Steven Rostedt Acked-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 0183fb1c94b74862b073590fc52c56b7364b7bad Author: Steven Rostedt Date: Fri Nov 7 22:36:02 2008 -0500 ftrace: fix set_ftrace_filter Impact: fix of output of set_ftrace_filter Commit ftrace: do not show freed records in available_filter_functions Removed a bit too much from the set_ftrace_filter code, where we now see all functions in the set_ftrace_filter file even when we set a filter. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit a6b0786f7f83bcc4d414a2977aaebe2941ebe1de Merge: 3e03fb7... 6a60dd1... 072ba49... Author: Ingo Molnar Date: Sat Nov 8 09:34:35 2008 +0100 Merge branches 'tracing/ftrace', 'tracing/fastboot', 'tracing/nmisafe' and 'tracing/urgent' into tracing/core commit f574179b63e48f5285468b5ee40f3c480221f708 Author: Harvey Harrison Date: Fri Nov 7 23:37:50 2008 -0800 tipc: trivial endian annotation in debug statement Use htonl rather than ntohl on a u32. net/tipc/name_table.c:557:2: warning: cast to restricted __be32 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit f400923735ecbb67cbe4a3606c9479f694754f51 Author: Thomas Graf Date: Fri Nov 7 22:56:00 2008 -0800 pkt_sched: Control group classifier The classifier should cover the most common use case and will work without any special configuration. The principle of the classifier is to directly access the task_struct via get_current(). In order for this to work, classification requests from softirqs must be ignored. This is not a problem because the vast majority of packets in softirq context are not assigned to a task anyway. For this to work, a mechanism is needed to trace softirq context. This repost goes back to the method of relying on the number of nested bh disable calls for the sake of not adding too much complexity and the option to come up with something more reliable if actually needed. Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 505d4f73dda9e20d59da05008f1f5eb432613e71 Author: Eric W. Biederman Date: Fri Nov 7 22:54:20 2008 -0800 net: Guaranetee the proper ordering of the loopback device. v2 I was recently hunting a bug that occurred in network namespace cleanup. In looking at the code it became apparrent that we have and will continue to have cases where if we have anything going on in a network namespace there will be assumptions that the loopback device is present. Things like sending igmp unsubscribe messages when we bring down network devices invokes the routing code which assumes that at least the loopback driver is present. Therefore to avoid magic initcall ordering hackery that is hard to follow and hard to get right insert a call to register the loopback device directly from net_dev_init(). This guarantes that the loopback device is the first device registered and the last network device to go away. But do it carefully so we register the loopback device after we clear dev_boot_phase. Signed-off-by: Eric W. Biederman Signed-off-by: David S. Miller commit 5d6d480908300a0c0b3be8b58567dfcef62c83a5 Author: Eric W. Biederman Date: Fri Nov 7 22:52:34 2008 -0800 net: fib_rules ordering fixes. We need to setup the network namespace state before we register the notifier. Otherwise if a network device is already registered we get a nasty NULL pointer dereference. Signed-off-by: Eric W. Biederman Signed-off-by: David S. Miller commit 3d8160b1493bcadca74fbb635d79b3928b8999cf Author: David S. Miller Date: Fri Nov 7 22:52:14 2008 -0800 Revert "net: Guaranetee the proper ordering of the loopback device." This reverts commit ae33bc40c0d96d02f51a996482ea7e41c5152695. commit 0edb94543092535a2c6ef33e7285004168ca73d7 Author: Takashi Iwai Date: Fri Nov 7 14:53:09 2008 +0100 ALSA: hda - Fix probe errors on Dell Studio Desktop BIOS on Dell Studio Desktop tells wrong codec probe masks. This patch gives the preset mask value to avoid invalid access. Reference: Novell bug#440907 https://bugzilla.novell.com/show_bug.cgi?id=440907 Signed-off-by: Takashi Iwai commit 30cde0aacc5f6786b0c4d4fafaac95eac845b8d7 Author: Takashi Iwai Date: Fri Nov 7 14:49:28 2008 +0100 ALSA: hda - Fix ALC260 hp3013 master switch The master switch doesn't influence on NID 0x15, the headphone jack on HP 3013 model because alc260_hp_master_update() ignores the passed arguments. Also, corrected the wrong arguments of hp3013 (0x10 and 0x15) although this doesn't change any behavior. Signed-off-by: Takashi Iwai commit 26df91c36fb976af9d08c20028b5cb1317eedcb3 Author: Troy Kisky Date: Wed Nov 5 18:53:28 2008 +0000 ASoC: TLV320AIC23B Support more sample rates Add support for more sample rates, different crystals and split playback/capture rates. Signed-off-by: Troy Kisky Acked-by: Arun KS Signed-off-by: Mark Brown commit 167c6274c30d17c41742096d1a12c32bd3b7e366 Merge: 5c7f033... a827206... Author: David S. Miller Date: Fri Nov 7 01:37:16 2008 -0800 Merge branch 'davem-next' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit 6d21cd62516a9697cb7ec33cc52e6b814fb65a13 Author: Li Zefan Date: Fri Nov 7 17:03:18 2008 +0800 sched: clean up SCHED_CPUMASK_ALLOC Impact: cleanup The #if/#endif is ugly. Change SCHED_CPUMASK_ALLOC and SCHED_CPUMASK_FREE to static inline functions. Signed-off-by: Li Zefan Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 258594a138f4ca9adf214f5272592d7f21def610 Merge: a87d091... ca3273f... Author: Ingo Molnar Date: Fri Nov 7 10:29:58 2008 +0100 Merge branch 'sched/urgent' into sched/core commit f66fcedc84dd06d42a0dba3894d238498509e8b7 Author: Takashi Iwai Date: Fri Nov 7 09:37:22 2008 +0100 ALSA: Document debug macros Add descriptions of snd_BUG() and snd_BUG_ON(). Also fixed a typo in the comment of snd_printk(), too. Signed-off-by: Takashi Iwai commit a8272061fe533f6d0261b38c58c93bd0855baebe Author: Komuro Date: Mon Nov 3 10:56:04 2008 +0900 fmvj18x_cs: write interrupt ack bit for lan and modem to work simultaneously. Write interrupt ack bit in fjn_interrupt for lan and modem to work simultaneously. Signed-off-by: Komuro Signed-off-by: Jeff Garzik commit 945eed02cd619f525e097319cd3d18c58d01da87 Author: Takashi Iwai Date: Fri Nov 7 09:08:15 2008 +0100 ALSA: Evaluate condition in snd_BUG_ON() in non-debugging case Change snd_BUG_ON() to evaluate the given condition, at least, in syntax for avoiding compile warnings such as unused variables. The compiler should optimize out the condition evaluation in the real code, though. Signed-off-by: Takashi Iwai commit 077402317291437521ed86d3326b3bcc62d40529 Merge: ea2da6e... 959973b... Author: Takashi Iwai Date: Fri Nov 7 09:06:45 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda commit 63cf123bf5d538a066e4a899390c9ce56ab6df9f Merge: 6834d7c... fcef783... Author: Takashi Iwai Date: Fri Nov 7 09:06:05 2008 +0100 Merge branch 'topic/fix/misc' into topic/misc commit 5c7f0333584128c745fbda845abbe3a32c22d467 Author: Harvey Harrison Date: Thu Nov 6 23:10:50 2008 -0800 phonet: sparse annotations of protocol, remove forward declaration net/phonet/af_phonet.c:38:36: error: marked inline, but without a definition net/phonet/pep-gprs.c:63:10: warning: incorrect type in return expression (different base types) net/phonet/pep-gprs.c:63:10: expected int net/phonet/pep-gprs.c:63:10: got restricted __be16 [usertype] net/phonet/pep-gprs.c:65:10: warning: incorrect type in return expression (different base types) net/phonet/pep-gprs.c:65:10: expected int net/phonet/pep-gprs.c:65:10: got restricted __be16 [usertype] net/phonet/pep-gprs.c:124:16: warning: incorrect type in assignment (different base types) net/phonet/pep-gprs.c:124:16: expected restricted __be16 [usertype] protocol net/phonet/pep-gprs.c:124:16: got unsigned short [unsigned] [usertype] protocol Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit ca62059b7ec7267d1d2cab0791d3ed6d033e0583 Author: Harvey Harrison Date: Thu Nov 6 23:09:56 2008 -0800 ipvs: oldlen, newlen should be be16, not be32 Noticed by sparse: net/netfilter/ipvs/ip_vs_proto_tcp.c:195:6: warning: incorrect type in argument 5 (different base types) net/netfilter/ipvs/ip_vs_proto_tcp.c:195:6: expected restricted __be16 [usertype] oldlen net/netfilter/ipvs/ip_vs_proto_tcp.c:195:6: got restricted __be32 [usertype] net/netfilter/ipvs/ip_vs_proto_tcp.c:196:6: warning: incorrect type in argument 6 (different base types) net/netfilter/ipvs/ip_vs_proto_tcp.c:196:6: expected restricted __be16 [usertype] newlen net/netfilter/ipvs/ip_vs_proto_tcp.c:196:6: got restricted __be32 [usertype] net/netfilter/ipvs/ip_vs_proto_tcp.c:270:6: warning: incorrect type in argument 5 (different base types) net/netfilter/ipvs/ip_vs_proto_tcp.c:270:6: expected restricted __be16 [usertype] oldlen net/netfilter/ipvs/ip_vs_proto_tcp.c:270:6: got restricted __be32 [usertype] net/netfilter/ipvs/ip_vs_proto_tcp.c:271:6: warning: incorrect type in argument 6 (different base types) net/netfilter/ipvs/ip_vs_proto_tcp.c:271:6: expected restricted __be16 [usertype] newlen net/netfilter/ipvs/ip_vs_proto_tcp.c:271:6: got restricted __be32 [usertype] net/netfilter/ipvs/ip_vs_proto_udp.c:206:6: warning: incorrect type in argument 5 (different base types) net/netfilter/ipvs/ip_vs_proto_udp.c:206:6: expected restricted __be16 [usertype] oldlen net/netfilter/ipvs/ip_vs_proto_udp.c:206:6: got restricted __be32 [usertype] net/netfilter/ipvs/ip_vs_proto_udp.c:207:6: warning: incorrect type in argument 6 (different base types) net/netfilter/ipvs/ip_vs_proto_udp.c:207:6: expected restricted __be16 [usertype] newlen net/netfilter/ipvs/ip_vs_proto_udp.c:207:6: got restricted __be32 [usertype] net/netfilter/ipvs/ip_vs_proto_udp.c:282:6: warning: incorrect type in argument 5 (different base types) net/netfilter/ipvs/ip_vs_proto_udp.c:282:6: expected restricted __be16 [usertype] oldlen net/netfilter/ipvs/ip_vs_proto_udp.c:282:6: got restricted __be32 [usertype] net/netfilter/ipvs/ip_vs_proto_udp.c:283:6: warning: incorrect type in argument 6 (different base types) net/netfilter/ipvs/ip_vs_proto_udp.c:283:6: expected restricted __be16 [usertype] newlen net/netfilter/ipvs/ip_vs_proto_udp.c:283:6: got restricted __be32 [usertype] Signed-off-by: Harvey Harrison Acked-by: Simon Horman Signed-off-by: David S. Miller commit 76acfdb9b78acf73023307974f6d38a269e9967a Author: Alexey Dobriyan Date: Thu Nov 6 23:06:44 2008 -0800 net: mark flow_cache_cpu_prepare() as __init It's called from __init code only. And__devinit in generic networking code is pretty strange :^) Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 9eeda9abd1faf489f3df9a1f557975f4c8650363 Merge: 61c9eaf... 4bab0ea... Author: David S. Miller Date: Thu Nov 6 22:43:03 2008 -0800 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/ath5k/base.c net/8021q/vlan_core.c commit ea2da6e898033b9736a26cf588b9ce841a433337 Author: Takashi Iwai Date: Fri Nov 7 00:49:48 2008 +0100 ALSA: hda - Fix broken hash chain allocation The chaining for amp hash got broken due to the rewrite with snd_array. Fixed now. Signed-off-by: Takashi Iwai commit b910d9ae5b370cf5bf9d6a71028119861b6ea8a4 Author: Takashi Iwai Date: Fri Nov 7 00:26:52 2008 +0100 ALSA: hda - Add max allocation check in array allocator Added a check for max allocation size in snd_array_new() for a debugging purpose. Signed-off-by: Takashi Iwai commit c217429b14708999d6ac5de964c452600e8797d3 Author: Takashi Iwai Date: Fri Nov 7 00:23:30 2008 +0100 ALSA: hda - Add missing NULL check in amp hash allocation Added the missing NULL check from allocator in get_alloc_hash(). Signed-off-by: Takashi Iwai commit a87d091434ed2a34d647979ab12084139ee1fe41 Author: Ken Chen Date: Thu Nov 6 11:10:49 2008 -0800 x86, sched: enable wchan config menu item on 64-bit Enable the wchan config menu item for now on x86-64 arch? This will at least allow people to enable/disable frame pointers on scheduler functions. Signed-off-by: Ken Chen Signed-off-by: Ingo Molnar commit 6a60dd121c5b6c2d827e99b38c1326f2600c3891 Author: Steven Rostedt Date: Thu Nov 6 15:55:21 2008 -0500 ftrace: split out hardirq ftrace code into own header Impact: moving of function prototypes into own header file ftrace.h is too big of a file for hardirq.h, and some archs will fail to build because of the include dependencies not being met. This patch pulls out the required prototypes for hardirq.h into a smaller and safer ftrace_irq.h file. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit cf7f8690e864c6fe11e77202dd847fa60f483418 Author: Sripathi Kodi Date: Wed Nov 5 18:57:14 2008 +0530 sched, lockdep: inline double_unlock_balance() We have a test case which measures the variation in the amount of time needed to perform a fixed amount of work on the preempt_rt kernel. We started seeing deterioration in it's performance recently. The test should never take more than 10 microseconds, but we started 5-10% failure rate. Using elimination method, we traced the problem to commit 1b12bbc747560ea68bcc132c3d05699e52271da0 (lockdep: re-annotate scheduler runqueues). When LOCKDEP is disabled, this patch only adds an additional function call to double_unlock_balance(). Hence I inlined double_unlock_balance() and the problem went away. Here is a patch to make this change. Signed-off-by: Sripathi Kodi Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 64154835c58a99370c3b7fbf85d2451d6906b3b4 Author: Tony Vroon Date: Thu Nov 6 15:08:49 2008 +0000 ALSA: hda - Add lifebook model for Realtek ALC269 The widget layout of the Fujitsu Lifebook S6420 (which is ICH9M-based and uses an ALC269) is similar but not identical to the Lifebook S6410/E8410 (which are ICH8M-based and use an ALC262). It is named lifebook as fujitsu is in use for Amilo machines. This builds on the Quanta FL1 work and supports all analog inputs & outputs that I am aware of. Microphone autoswitch is implemented. The laptop mic port takes precedence over the dock mic port if both happen to have a jack plugged in. This made sense to me as a design decision (imagine a presentation environment with the dock fully wired in and the presenter quickly wanting to override the mic with a headset). There is mention of a digital audio path on the codec graph, so perhaps the headphone socket is dual-function analog/digital. I will follow up with another patch if I can acquire equipment to test this. Signed-off-by: Tony Vroon Signed-off-by: Takashi Iwai commit 6ce4a3bc1b93e8ca50b142b00dd73bfdb5c4a172 Author: Takashi Iwai Date: Thu Nov 6 17:11:10 2008 +0100 ALSA: hda - Make codec-probing more robust When an error occurs during the codec probing, typically accessing to an non-existing codec slot, the controller chip gets often screwed up and can no longer communicate with the codecs. This patch adds a preparation phase just to probe codec addresses before actually creating codec instances. If any error occurs during this probing phase, the driver resets the controller to recover. This will (hopefully) fix the famous "single_cmd" errors. Signed-off-by: Takashi Iwai commit 33fa35ed0d7e8996cc68cc2ffc21f12b38fa03c1 Author: Takashi Iwai Date: Thu Nov 6 16:50:40 2008 +0100 ALSA: hda - simplify hda_bus ops callbacks The hda_bus ops callback take struct hda_bus pointer. Also, the command callback takes the composed command word, instead of each small bits in arguments. Signed-off-by: Takashi Iwai commit e18c94d20224f3df584531a48d944d8cccfda46d Author: Grazvydas Ignotas Date: Wed Nov 5 23:51:05 2008 +0200 ALSA: ASoC: TWL4030 codec - fix 256*Fs clock According to TRM, 256*Fs clock output should be enabled when TWL4030 is in slave mode, not master. This allows sound to work on OMAP3 Pandora, which uses 256*Fs clock. Signed-off-by: Grazvydas Ignotas Acked-by: Steve Sakoman Signed-off-by: Mark Brown commit fd51b2d7d5df932767b89e00d0871a38a2c53e74 Author: KOSAKI Motohiro Date: Wed Nov 5 02:27:19 2008 +0900 x86: update CONFIG_NUMA description Impact: clarify/update CONFIG_NUMA text CONFIG_NUMA description talk about a bit old thing. So, following changes are better. o CONFIG_NUMA is no longer EXPERIMENTAL o Opteron is not the only processor of NUMA topology on x86_64 no longer, but also Intel Core7i has it. Signed-off-by: KOSAKI Motohiro Signed-off-by: Ingo Molnar commit 90080bf4b803efbc9b9cd3a7ed1639f1e036238e Author: Randy Dunlap Date: Tue Nov 4 14:37:25 2008 -0800 sched, documentation: update scheduler header file paths Impact: update documentation Update Documentation/scheduler/ files to reflect changed header files locations. Signed-off-by: Randy Dunlap Signed-off-by: Ingo Molnar commit 8735b7d0a2a6246faa406a8cdd1376bd0e689ba3 Author: Hiroshi Shimamoto Date: Wed Nov 5 18:34:35 2008 -0800 x86: signal_64: make setup_sigcontext() similar Impact: cleanup remove passing task struct. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit ee7d523c124a186ce3a886868de9cd1d8bc991f3 Author: Hiroshi Shimamoto Date: Wed Nov 5 18:33:35 2008 -0800 x86: signal_64: setup fpstate in setup_sigcontext() Impact: cleanup set fpstate field of signal context at setup_sigcontext(). Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 99ea1b93bf80a287dd70499b96d9c4d06f320ff2 Author: Hiroshi Shimamoto Date: Wed Nov 5 18:32:54 2008 -0800 x86: ia32_signal: do save_i387_xstate_ia32 at get_sigframe() Impact: cleanup move calling save_i387_xstate_ia32() into get_sigframe() from setup_sigcontext(). Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 4b33669e817a01dd99ff91df330d504ccfb2e99c Author: Hiroshi Shimamoto Date: Wed Nov 5 18:30:25 2008 -0800 x86: signal_32: do save_i387_xstate() at get_sigframe() Impact: cleanup move calling save_i387_xstate() into get_sigframe() from setup_sigcontext() like 64bit. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 3e03fb7f1da2e691644526c0d6df42d778716349 Author: Steven Rostedt Date: Thu Nov 6 00:09:43 2008 -0500 ring-buffer: convert to raw spinlocks Impact: no lockdep debugging of ring buffer The problem with running lockdep on the ring buffer is that the ring buffer is the core infrastructure of ftrace. What happens is that the tracer will start tracing the lockdep code while lockdep is testing the ring buffers locks. This can cause lockdep to fail due to testing cases that have not fully finished their locking transition. This patch converts the spin locks used by the ring buffer back into raw spin locks which lockdep does not check. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 9036990d462e09366f7297a2d1da6582c3e6b1d3 Author: Steven Rostedt Date: Wed Nov 5 16:05:44 2008 -0500 ftrace: restructure tracing start/stop infrastructure Impact: change where tracing is started up and stopped Currently, when a new tracer is selected via echo'ing a tracer name into the current_tracer file, the startup is only done if tracing_enabled is set to one. If tracing_enabled is changed to zero (by echo'ing 0 into the tracing_enabled file) a full shutdown is performed. The full startup and shutdown of a tracer can be expensive and the user can lose out traces when echo'ing in 0 to the tracing_enabled file, because the process takes too long. There can also be places that the user would like to start and stop the tracer several times and doing the full startup and shutdown of a tracer might be too expensive. This patch performs the full startup and shutdown when a tracer is selected. It also adds a way to do a quick start or stop of a tracer. The quick version is just a flag that prevents the tracing from taking place, but the overhead of the code is still there. For example, the startup of a tracer may enable tracepoints, or enable the function tracer. The stop and start will just set a flag to have the tracer ignore the calls when the tracepoint or function trace is called. The overhead of the tracer may still be present when the tracer is stopped, but no tracing will occur. Setting the tracer to the 'nop' tracer (or any other tracer) will perform the shutdown of the tracer which will disable the tracepoint or disable the function tracer. The tracing_enabled file will simply start or stop tracing. This change is all internal. The end result for the user should be the same as before. If tracing_enabled is not set, no trace will happen. If tracing_enabled is set, then the trace will happen. The tracing_enabled variable is static between tracers. Enabling tracing_enabled and going to another tracer will keep tracing_enabled enabled. Same is true with disabling tracing_enabled. This patch will now provide a fast start/stop method to the users for enabling or disabling tracing. Note: There were two methods to the struct tracer that were never used: The methods start and stop. These were to be used as a hook to the reading of the trace output, but ended up not being necessary. These two methods are now used to enable the start and stop of each tracer, in case the tracer needs to do more than just not write into the buffer. For example, the irqsoff tracer must stop recording max latencies when tracing is stopped. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 0f04870148ecb825133bc2733f473b1c5773ac0b Author: Steven Rostedt Date: Wed Nov 5 16:05:44 2008 -0500 ftrace: soft tracing stop and start Impact: add way to quickly start stop tracing from the kernel This patch adds a soft stop and start to the trace. This simply disables function tracing via the ftrace_disabled flag, and disables the trace buffers to prevent recording. The tracing code may still be executed, but the trace will not be recorded. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 60a7ecf42661f2b22168751298592da6ee210c9e Author: Steven Rostedt Date: Wed Nov 5 16:05:44 2008 -0500 ftrace: add quick function trace stop Impact: quick start and stop of function tracer This patch adds a way to disable the function tracer quickly without the need to run kstop_machine. It adds a new variable called function_trace_stop which will stop the calls to functions from mcount when set. This is just an on/off switch and does not handle recursion like preempt_disable(). It's main purpose is to help other tracers/debuggers start and stop tracing fuctions without the need to call kstop_machine. The config option HAVE_FUNCTION_TRACE_MCOUNT_TEST is added for archs that implement the testing of the function_trace_stop in the mcount arch dependent code. Otherwise, the test is done in the C code. x86 is the only arch at the moment that supports this. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 79c81d220c8e25163f56edcdfaf23f83a4c88e6b Merge: 3299b4d... 79a9d46... Author: Ingo Molnar Date: Thu Nov 6 07:43:47 2008 +0100 Merge branch 'tracing/fastboot' into tracing/ftrace commit fd9abb3d97c2ab883e4732ec1214fe64190236e7 Author: Steve Glendinning Date: Wed Nov 5 00:35:37 2008 +0000 SMSC LAN911x and LAN921x vendor driver Attached is a driver for SMSC's LAN911x and LAN921x families of embedded ethernet controllers. There is an existing smc911x driver in the tree; this is intended to replace it. Dustin McIntire (the author of the smc911x driver) has expressed his support for switching to this driver. This driver contains workarounds for all known hardware issues, and has been tested on all flavours of the chip on multiple architectures. This driver now uses phylib, so this patch also adds support for the device's internal phy Signed-off-by: Steve Glendinning Signed-off-by: Bahadir Balban Signed-off-by: Dustin Mcintire Signed-off-by: Bill Gatliff Signed-off-by: Jeff Garzik commit c5916cf8dbd3ac5ec675d9347aeaa796b546b50e Author: Hannes Hering Date: Wed Nov 5 13:18:21 2008 +0100 ehea: Fix some whitespace issues This patch removes some trailing whitespaces and spaces before tabs. Signed-off-by: Hannes Hering Signed-off-by: Jeff Garzik commit 739bb23d722313e37322f485eb65f700b060d817 Author: Ben Hutchings Date: Tue Nov 4 20:35:36 2008 +0000 sfc: Do not reset when hardware monitor detects a fault The TX watchdog should trigger a reset, but a temperature/power alarm should not as this is unlikely to solve the problem. Signed-off-by: Ben Hutchings Signed-off-by: Jeff Garzik commit 3e133c44d24a094118caee182200462d46c55b56 Author: Ben Hutchings Date: Tue Nov 4 20:34:56 2008 +0000 sfc: Use lm87 and lm90 drivers for board temperature/power monitoring Add board monitoring to periodic work whenever link is down. For SFE4001, report when a fault has caused the PHY to turn off. For SFE4002, switch XFP PHY into low-power state in case of a fault. Signed-off-by: Ben Hutchings Signed-off-by: Jeff Garzik commit f41507245ef8b079685aba8da5b5b2b5e87e70bc Author: Ben Hutchings Date: Tue Nov 4 20:34:28 2008 +0000 sfc: Expose flash region storing boot code as MTD The boot code that appears as a PCI expansion ROM on the SFC4000 is stored in flash. Expose this as a standard MTD device to allow for in-place upgrades. Signed-off-by: Ben Hutchings Signed-off-by: Jeff Garzik commit 0a95f56323ce93dac354c1b2d54bf959a985cf7d Author: Ben Hutchings Date: Tue Nov 4 20:33:11 2008 +0000 sfc: Clean up non-volatile memory partitioning Move flash and EEPROM partition boundary constants into spi.h and rename them to be consistent. Add a comment on the partitioning. Signed-off-by: Ben Hutchings Signed-off-by: Jeff Garzik commit 2883f552f2c6c6ccb2021643652c6d930f205f6f Author: Ben Hutchings Date: Tue Nov 4 20:32:45 2008 +0000 sfc: Correct address of gPXE boot configuration in EEPROM Due to a hardware bug, the originally assigned range cannot reliably be used for boot configuration and must not be modifiable through ethtool. Signed-off-by: Ben Hutchings Signed-off-by: Jeff Garzik commit fd989c83325cb34795bc4d4aa6b13c06f90eac99 Author: Jay Vosburgh Date: Tue Nov 4 17:51:16 2008 -0800 bonding: alternate agg selection policies for 802.3ad This patch implements alternative aggregator selection policies for 802.3ad. The existing policy, now termed "stable," selects the active aggregator by greatest bandwidth, and only reselects a new aggregator if the active aggregator is entirely disabled (no more ports or all ports down). This patch adds two new policies: bandwidth and count, selecting the active aggregator by total bandwidth (like the stable policy) or by the number of ports in the aggregator, respectively. These two policies also differ from the stable policy in that they will reselect the active aggregator when availability-related changes occur in the bond (e.g., link state change). This permits "gang failover" within 802.3ad, allowing redundant aggregators along parallel paths to always maintain the "best" aggregator as the active aggregator (rather than having to wait for the active to entirely fail). This patch also updates the driver version to 3.5.0. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 6146b1a4da98377e4abddc91ba5856bef8f23f1e Author: Jay Vosburgh Date: Tue Nov 4 17:51:15 2008 -0800 bonding: Fix ALB mode to balance traffic on VLANs The current ALB function that processes incoming ARPs does not handle traffic for VLANs configured above bonding. This causes traffic on those VLANs to all be assigned the same slave. This patch corrects that misbehavior by locating the bonding interface nested below the VLAN interface. Bug reported by Sven Anders , who also tested an earlier version of this patch and confirmed that it resolved the problem. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 305d552accae6afb859c493ebc7d98ca3371dae2 Author: Brian Haley Date: Tue Nov 4 17:51:14 2008 -0800 bonding: send IPv6 neighbor advertisement on failover This patch adds better IPv6 failover support for bonding devices, especially when in active-backup mode and there are only IPv6 addresses configured, as reported by Alex Sidorenko. - Creates a new file, net/drivers/bonding/bond_ipv6.c, for the IPv6-specific routines. Both regular bonds and VLANs over bonds are supported. - Adds a new tunable, num_unsol_na, to limit the number of unsolicited IPv6 Neighbor Advertisements that are sent on a failover event. Default is 1. - Creates two new IPv6 neighbor discovery functions: ndisc_build_skb() ndisc_send_skb() These were required to support VLANs since we have to be able to add the VLAN id to the skb since ndisc_send_na() and friends shouldn't be asked to do this. These two routines are basically __ndisc_send() split into two pieces, in a slightly different order. - Updates Documentation/networking/bonding.txt and bumps the rev of bond support to 3.4.0. On failover, this new code will generate one packet: - An unsolicited IPv6 Neighbor Advertisement, which helps the switch learn that the address has moved to the new slave. Testing has shown that sending just the NA results in pretty good behavior when in active-back mode, I saw no lost ping packets for example. Signed-off-by: Brian Haley Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 7d9d1f25c3872080ce599e5dd0dac3305d0a028b Author: Dean Nelson Date: Wed Nov 5 17:29:48 2008 -0600 sgi-xp: support getting the address of a partition's reserved page Add support for getting the address of a partition's reserved page. Signed-off-by: Dean Nelson Signed-off-by: H. Peter Anvin commit 31de5ece351a218a35b9bf83ab05a14373261bb6 Author: Dean Nelson Date: Wed Nov 5 17:28:35 2008 -0600 sgi-xp: define xp_partition_id and xp_region_size Define xp_partition_id and xp_region_size to their correct values. Signed-off-by: Dean Nelson Signed-off-by: H. Peter Anvin commit 2525789b4694d78df4f001063f042b2b74227d26 Author: Dean Nelson Date: Wed Nov 5 17:28:00 2008 -0600 sgi-xp: create activate and notify gru message queues For UV add the code to create the activate and notify gru message queues. Signed-off-by: Dean Nelson Signed-off-by: H. Peter Anvin commit 6c1c325de908cbc444cf284f59c3a892161012e9 Author: Dean Nelson Date: Wed Nov 5 17:27:22 2008 -0600 sgi-xp: define xp_expand_memprotect() and xp_restrict_memprotect() Define xp_expand_memprotect() and xp_restrict_memprotect() so they can be tailered to the hardware they are run on. Signed-off-by: Dean Nelson Signed-off-by: H. Peter Anvin commit 23c357003b3671cdfb17bc4d5383589e74b71511 Author: Russ Anderson Date: Wed Nov 5 22:15:13 2008 -0600 x86: uv: Add UV reserved page bios call Add UV bios call to get the address of the reserved page. Signed-off-by: Russ Anderson Signed-off-by: H. Peter Anvin commit e8929c8a6acbecbd629b8e3f2d1a2546ec4ebdfc Author: Russ Anderson Date: Wed Nov 5 22:13:44 2008 -0600 x86: uv: Add UV memory protection bios call Add UV bios call to change memory protections. Signed-off-by: Russ Anderson Signed-off-by: H. Peter Anvin commit 64ccf2f9a70a06ba56cd8cedfa610b4e77181587 Author: Russ Anderson Date: Wed Nov 5 22:11:56 2008 -0600 x86: uv: Add UV watchlist bios call Add UV bios calls to allocate and free watchlists. Signed-off-by: Russ Anderson Signed-off-by: H. Peter Anvin commit 61c9eaf90081cbe6dc4f389e0056bff76eca19ec Author: Jarek Poplawski Date: Wed Nov 5 16:02:34 2008 -0800 pkt_sched: Fix qdisc len in qdisc_peek_dequeued() A packet dequeued and stored as gso_skb in qdisc_peek_dequeued() should be seen as part of the queue for sch->q.qlen queries until it's really dequeued with qdisc_dequeue_peeked(), so qlen needs additional updating in these functions. (Updating qstats.backlog shouldn't matter here.) Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 0a36b345ab99d6b3c96999e7e3b79bd243cf9bf7 Author: Eric W. Biederman Date: Wed Nov 5 16:00:24 2008 -0800 net: Don't leak packets when a netns is going down I have been tracking for a while a case where when the network namespace exits the cleanup gets stck in an endless precessess of: unregister_netdevice: waiting for lo to become free. Usage count = 3 unregister_netdevice: waiting for lo to become free. Usage count = 3 unregister_netdevice: waiting for lo to become free. Usage count = 3 unregister_netdevice: waiting for lo to become free. Usage count = 3 unregister_netdevice: waiting for lo to become free. Usage count = 3 unregister_netdevice: waiting for lo to become free. Usage count = 3 unregister_netdevice: waiting for lo to become free. Usage count = 3 It turns out that if you listen on a multicast address an unsubscribe packet is sent when the network device goes down. If you shutdown the network namespace without carefully cleaning up this can trigger the unsubscribe packet to be sent over the loopback interface while the network namespace is going down. All of which is fine except when we drop the packet and forget to free it leaking the skb and the dst entry attached to. As it turns out the dst entry hold a reference to the idev which holds the dev and keeps everything from being cleaned up. Yuck! By fixing my earlier thinko and add the needed kfree_skb and everything cleans up beautifully. Signed-off-by: Eric W. Biederman Signed-off-by: David S. Miller commit ae33bc40c0d96d02f51a996482ea7e41c5152695 Author: Eric W. Biederman Date: Wed Nov 5 16:00:02 2008 -0800 net: Guaranetee the proper ordering of the loopback device. I was recently hunting a bug that occurred in network namespace cleanup. In looking at the code it became apparrent that we have and will continue to have cases where if we have anything going on in a network namespace there will be assumptions that the loopback device is present. Things like sending igmp unsubscribe messages when we bring down network devices invokes the routing code which assumes that at least the loopback driver is present. Therefore to avoid magic initcall ordering hackery that is hard to follow and hard to get right insert a call to register the loopback device directly from net_dev_init(). This guarantes that the loopback device is the first device registered and the last network device to go away. Signed-off-by: Eric W. Biederman Signed-off-by: David S. Miller commit d0c082cea6dfb9b674b4f6e1e84025662dbd24e8 Author: Eric W. Biederman Date: Wed Nov 5 15:59:38 2008 -0800 netns: Delete virtual interfaces during namespace cleanup When physical devices are inside of network namespace and that network namespace terminates we can not make them go away. We have to keep them and moving them to the initial network namespace is the best we can do. For virtual devices left in a network namespace that is exiting we have no need to preserve them and we now have the infrastructure that allows us to delete them. So delete virtual devices when we exit a network namespace. Keeping the necessary user space clean up after a network namespace exits much more tractable. Acked-by: Daniel Lezcano Acked-by: Pavel Emelyanov Signed-off-by: Eric W. Biederman Signed-off-by: David S. Miller commit 1c1b777a5673b57a6c0377ba60a790d05e4a0676 Author: Harvey Harrison Date: Wed Nov 5 09:51:12 2008 -0800 powerpc: Use the new byteorder headers Signed-off-by: Harvey Harrison Signed-off-by: Paul Mackerras commit 1f29fae29709b4668979e244c09b2fa78ff1ad59 Author: Serge E. Hallyn Date: Wed Nov 5 16:08:52 2008 -0600 file capabilities: add no_file_caps switch (v4) Add a no_file_caps boot option when file capabilities are compiled into the kernel (CONFIG_SECURITY_FILE_CAPABILITIES=y). This allows distributions to ship a kernel with file capabilities compiled in, without forcing users to use (and understand and trust) them. When no_file_caps is specified at boot, then when a process executes a file, any file capabilities stored with that file will not be used in the calculation of the process' new capability sets. This means that booting with the no_file_caps boot option will not be the same as booting a kernel with file capabilities compiled out - in particular a task with CAP_SETPCAP will not have any chance of passing capabilities to another task (which isn't "really" possible anyway, and which may soon by killed altogether by David Howells in any case), and it will instead be able to put new capabilities in its pI. However since fI will always be empty and pI is masked with fI, it gains the task nothing. We also support the extra prctl options, setting securebits and dropping capabilities from the per-process bounding set. The other remaining difference is that killpriv, task_setscheduler, setioprio, and setnice will continue to be hooked. That will be noticable in the case where a root task changed its uid while keeping some caps, and another task owned by the new uid tries to change settings for the more privileged task. Changelog: Nov 05 2008: (v4) trivial port on top of always-start-\ with-clear-caps patch Sep 23 2008: nixed file_caps_enabled when file caps are not compiled in as it isn't used. Document no_file_caps in kernel-parameters.txt. Signed-off-by: Serge Hallyn Acked-by: Andrew G. Morgan Signed-off-by: James Morris commit e21e696edb498c7f7eed42ba3096f6bbe13927b6 Merge: 2f99db2... 75fa677... Author: James Morris Date: Thu Nov 6 07:12:34 2008 +0800 Merge branch 'master' into next commit 2f99db28af90957271a6448479c3e492ccf7c697 Author: Michal Schmidt Date: Wed Nov 5 13:35:06 2008 +0100 selinux: recognize netlink messages for 'ip addrlabel' In enforcing mode '/sbin/ip addrlabel' results in a SELinux error: type=SELINUX_ERR msg=audit(1225698822.073:42): SELinux: unrecognized netlink message type=74 for sclass=43 The problem is missing RTM_*ADDRLABEL entries in SELinux's netlink message types table. Reported in https://bugzilla.redhat.com/show_bug.cgi?id=469423 Signed-off-by: Michal Schmidt Acked-by: Stephen Smalley Signed-off-by: James Morris commit 5b4d2189446fd31cd618bbd1c24566b8d0ab11c8 Author: Sebastian Siewior Date: Sat Nov 1 10:00:56 2008 +0000 powerpc/boot: Allocate more memory for dtb David Gibson suggested that since we are now unconditionally copying the dtb into a malloc()ed buffer, it would be sensible to add a little padding to the buffer at that point, so that further device tree manipulations won't need to reallocate it. This implements that suggestion. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Paul Mackerras commit 7d4320f3d5ace5758111f2beac931376737f80f5 Author: Jon Tollefson Date: Thu Oct 30 12:03:57 2008 +0000 powerpc: Hugetlb pgtable cache access cleanup Andrew Morton suggested that using a macro that makes an array reference look like a function call makes it harder to understand the code. This therefore removes the huge_pgtable_cache(psize) macro and replaces its uses with pgtable_cache[HUGE_PGTABLE_INDEX(psize)]. Signed-off-by: Jon Tollefson Cc: Nick Piggin Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Acked-by: David Gibson Signed-off-by: Paul Mackerras commit d4ad304841a9790d4fa35e51d6aa9baeba631559 Author: Masakazu Mokuno Date: Thu Oct 30 08:17:18 2008 +0000 powerpc/ps3: Fix memory leak in device init Free dynamically allocated device data structures when device registration fails. This fixes memory leakage when the registration fails. Signed-off-by: Masakazu Mokuno Signed-off-by: Geoff Levand Signed-off-by: Paul Mackerras commit 3cc698789a3f44dabc5eed389b6c123caf787c0f Author: Paul Mackerras Date: Tue Oct 28 00:18:11 2008 +0000 powerpc: Eliminate unused do_gtod variable Since we started using the generic timekeeping code, we haven't had a powerpc-specific version of do_gettimeofday, and hence there is now nothing that reads the do_gtod variable in arch/powerpc/kernel/time.c. This therefore removes it and the code that sets it. Signed-off-by: Paul Mackerras commit 597bc5c00b666fe123abb0af64f6e86f7ab72a90 Author: Paul Mackerras Date: Mon Oct 27 23:56:03 2008 +0000 powerpc: Improve resolution of VDSO clock_gettime Currently the clock_gettime implementation in the VDSO produces a result with microsecond resolution for the cases that are handled without a system call, i.e. CLOCK_REALTIME and CLOCK_MONOTONIC. The nanoseconds field of the result is obtained by computing a microseconds value and multiplying by 1000. This changes the code in the VDSO to do the computation for clock_gettime with nanosecond resolution. That means that the resolution of the result will ultimately depend on the timebase frequency. Because the timestamp in the VDSO datapage (stamp_xsec, the real time corresponding to the timebase count in tb_orig_stamp) is in units of 2^-20 seconds, it doesn't have sufficient resolution for computing a result with nanosecond resolution. Therefore this adds a copy of xtime to the VDSO datapage and updates it in update_gtod() along with the other time-related fields. Signed-off-by: Paul Mackerras commit c73049f6aa58ac1d1a9ca8cb2b415ef97240b2d3 Author: Mark Nelson Date: Mon Oct 27 20:38:14 2008 +0000 powerpc: Remove map_/unmap_single() from dma_mapping_ops Now that all of the remaining dma_mapping_ops have had their map_/unmap_single functions updated to become map/unmap_page functions, there is no need to have the map_/unmap_single function pointers in the dma_mapping_ops. So, this removes them and also removes the code that does the checking for which set of functions to use. Signed-off-by: Mark Nelson Acked-by: Becky Bruce Signed-off-by: Paul Mackerras commit 7eef440a545c7f812ed10b49d4a10a351df9cad6 Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:56 2008 +0000 powerpc/pci: Cosmetic cleanups of pci-common.c This does a few cosmetic cleanups, moving a couple of things around but without actually changing what the code does. (There is a minor change in ordering of operations in pcibios_setup_bus_devices but it should have no impact). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit fd6852c8fa060bd45c82a2593e18f933f6c6204f Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:52 2008 +0000 powerpc/pci: Fix various pseries PCI hotplug issues The pseries PCI hotplug code has a number of issues, ranging from incorrect resource setup to crashes, depending on what is added, when, whether it contains a bridge, etc etc.... This fixes a whole bunch of these, while actually simplifying the code a bit, using more generic code in the process and factoring out common code between adding of a PHB, a slot or a device. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit b5ae5f911d221ad85090d6805ab9ab020f6e4703 Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:44 2008 +0000 powerpc/pci: Make pcibios_allocate_bus_resources more robust To properly fix PCI hotplug, it's useful to be able to make the fixup passes on all devices whether they were just hot plugged or already there. However, pcibios_allocate_bus_resources() wouldn't cope well with being called twice for a given bus. This makes it ignore resources that have already been allocated, along with adding a bit of debug output. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 57b066ff4ec53a0ac7cbf7fb363bb670cf58ddae Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:41 2008 +0000 powerpc/eeh: Make EEH device add/remove more robust To properly fix PCI hotplug, it's useful to be able to make the fixup passes on all devices whether they were just hot plugged or already there. The EEH code however used to not be very friendly with calling eeh_add_device_late() multiple time, and not very rebust in the way it generally tests whether a device is in the expected state vs. the EEH code. This improves it, along with cleaning up a couple of debug printk's. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 8b8da35804bb89eee23f9bcd5638e1f754bd4c91 Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:37 2008 +0000 powerpc/pci: Split pcibios_fixup_bus() into bus setup and device setup Currently, our PCI code uses the pcibios_fixup_bus() callback, which is called by the generic code when probing PCI buses, for two different things. One is to set up things related to the bus itself, such as reading bridge resources for P2P bridges, fixing them up, or setting up the iommu's associated with bridges on some platforms. The other is some setup for each individual device under that bridge, mostly setting up DMA mappings and interrupts. The problem is that this approach doesn't work well with PCI hotplug when an existing bus is re-probed for new children. We fix this problem by splitting pcibios_fixup_bus into two routines: pcibios_setup_bus_self() is now called to setup the bus itself pcibios_setup_bus_devices() is now called to setup devices pcibios_fixup_bus() is then modified to call these two after reading the bridge bases, and the OF based PCI probe is modified to avoid calling into the first one when rescanning an existing bridge. [paulus@samba.org - fixed eeh.h for 32-bit compile now that pci-common.c is including it unconditionally.] Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 8dc840f88d9c9f75f46d5dbe489242f8a114fab6 Author: David Anders Date: Wed Nov 5 07:39:47 2008 -0800 ASoC: Add new parameter to s3c24xx_pcm_enqueue The S3C24xx dma does not allow more than one buffer to be enqueue prior to the dma transfers starting. This patch adds an additional parameter to s3c24xx_pcm_enqueue() to allow for passing an initial dma maximum load value. Signed-off-by: David Anders Signed-off-by: Mark Brown commit ea913940c39a61214c799cc7093d7b20fe11a94c Author: Mark Brown Date: Wed Nov 5 11:13:21 2008 +0000 ASoC: Remove core version number Rather than try to remember to keep the core version number updated (which hasn't been happening) just remove it. It was much more useful when ASoC was out of tree. Signed-off-by: Mark brown commit 74e722015fe47c8f0e7ef7c0b4cf32d3e4ae11a0 Author: Marek Vasut Date: Mon Nov 3 12:02:12 2008 +0000 ASoC: Add Palm/PXA27x unified ASoC audio driver this patch adds asoc audio driver for pxa27x based Palm PDAs. I tested it for palmtx, t5 and ld, it should work with palmz72 as well (slapin, please test). I sent it here some time ago, but now I got to fixing bugs in it. It should be somehow mostly ok and ready for applying. [Converted to use snd_soc_dapm_nc_pin() and bool Kconfig -- broonie] Signed-off-by: Marek Vasut Signed-off-by: Mark Brown commit 838e8bb71dc0c892bf8f84abd3c709d8fe3a8d3c Author: Uros Bizjak Date: Fri Oct 24 16:53:33 2008 +0200 x86: Implement change_bit with immediate operand as "lock xorb" Impact: Minor optimization. Implement change_bit with immediate bit count as "lock xorb". This is similar to "lock orb" and "lock andb" for set_bit and clear_bit functions. Signed-off-by: Uros Bizjak Signed-off-by: H. Peter Anvin commit 6834d7ce224a6f6a1dd05da3a867730c40943154 Author: Takashi Iwai Date: Wed Nov 5 17:41:23 2008 +0100 ALSA: ice1724 - Re-fix IRQ mask initialization The previous IRQ mask initialization was wrong. It must set the bits to be masked. Signed-off-by: Takashi Iwai commit c238b4f4038e0e49bb241640610584a088b268b1 Author: Takashi Iwai Date: Wed Nov 5 14:57:20 2008 +0100 ALSA: hda - Split ALC268 acer model There are actually two variants of ALC268 Acer implementation, one with an analog built-in mic (pin 0x19) and another with a digital mic (pin 0x12). Created a new model, acer-dmic, for the latter case now. So far, all known models are assigned to be analog-mic, according to the BIOS setup. If this doesn't match with the actual case, one needs to try model=acer-dmic, and fix the entry to point ALC268_ACER_DMIC if it works. Signed-off-by: Takashi Iwai commit ab56ced9c57b66862c687f3158045d15133f02d6 Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:33 2008 +0000 powerpc/pci: Remove pcibios_do_bus_setup() The function pcibios_do_bus_setup() was used by pcibios_fixup_bus() to perform setup that is different between the 32-bit and 64-bit code. This difference no longer exists, thus the function is removed and the setup now done directly from pci-common.c. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 53280323350621985b3f2f8ffe649215304bcc5f Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:29 2008 +0000 powerpc/pci: Use common PHB resource hookup The 32-bit and 64-bit powerpc PCI code used to set up the resource pointers of the root bus of a given PHB in completely different places. This unifies this in large part, by making 32-bit use a routine very similar to what 64-bit does when initially scanning the PCI busses. The actual setup of the PHB resources itself is then moved to a common function in pci-common.c. This should cause no functional change on 64-bit. On 32-bit, the effect is that the PHB resources are going to be setup a bit earlier, instead of being setup from pcibios_fixup_bus(). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit b0494bc8ee449f0534afa92a51e2e3bb27bab69b Author: Benjamin Herrenschmidt Date: Mon Oct 27 19:48:22 2008 +0000 powerpc/pci: Cleanup debug printk's This removes the various DBG() macro from the powerpc PCI code and makes it use the standard pr_debug instead. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 25d6e2d7c58ddc4a3b614fc5381591c0cfe66556 Author: Mark Nelson Date: Mon Oct 27 00:46:51 2008 +0000 powerpc: Update 64bit memcpy() using CPU_FTR_UNALIGNED_LD_STD Update memcpy() to add two new feature sections: one for aligning the destination before copying and one for copying using aligned load and store doubles. These new feature sections will only affect Power6 and Cell because the CPU feature bit was only added to these two processors. Power6 gets its best performance in memcpy() when aligning neither the source nor the destination, while Cell gets its best performance when just the destination is aligned. But in order to save on CPU feature bits we can use the previously added CPU_FTR_CP_USE_DCBTZ feature bit to differentiate between Power6 and Cell (because CPU_FTR_CP_USE_DCBTZ was added to Cell but not Power6). The first feature section acts to nop out the branch that takes us to the code that aligns us to an eight byte boundary for the destination. We only want to nop out this branch on Power6. So the ALT_FTR_SECTION_END() for this feature section creates a test mask of the two feature bits ORed together and provides an expected result of just CPU_FTR_UNALIGNED_LD_STD, thus we nop out the branch if we're on a CPU that has CPU_FTR_UNALIGNED_LD_STD set and CPU_FTR_CP_USE_DCBTZ unset. For the second feature section added, if we're on a CPU that has the CPU_FTR_UNALIGNED_LD_STD bit set then we don't want to do the copy with aligned loads and stores (and the appropriate shifting left and right instructions), so we want to nop out the branch to .Lsrc_unaligned. The andi. used for this branch is moved to just above the branch because this allows us to nop out both instructions with just one feature section which gives us better performance and doesn't hurt readability which two separate feature sections did. Moving the andi. to just above the branch doesn't have any noticeable negative effect on the remaining 64bit processors (the ones that didn't have this feature bit added). On Cell this simple modification results in an improvement to measured memcpy() bandwidth of up to 50% in the hot cache case and up to 15% in the cold cache case. On Power6 we get memory bandwidth results that are up to three times faster in the hot cache case and up to 50% faster in the cold cache case. Commit 2a9294369bd020db89bfdf78b84c3615b39a5c84 ("powerpc: Add new CPU feature: CPU_FTR_CP_USE_DCBTZ") was where CPU_FTR_CP_USE_DCBTZ was added. To say that Cell gets its best performance in memcpy() with just the destination aligned is true but only for the reason that the indirect shift and rotate instructions, sld and srd, are microcoded on Cell. This means that either the destination or the source can be aligned, but not both, and seeing as we get better performance with the destination aligned we choose this option. While we're at it make a one line change from cmpldi r1,... to cmpldi cr1,... for consistency. Signed-off-by: Mark Nelson Signed-off-by: Paul Mackerras commit 4ec577a28980a0790df3c3dfe9c81f6e2222acfb Author: Mark Nelson Date: Mon Oct 27 00:43:02 2008 +0000 powerpc: Add new CPU feature: CPU_FTR_UNALIGNED_LD_STD Add a new CPU feature bit, CPU_FTR_UNALIGNED_LD_STD, to be added to the 64bit powerpc chips that can do unaligned load double and store double without any performance hit. This is added to Power6 and Cell and will be used in the next commit to disable the code that gets the destination address aligned on those CPUs where doing that doesn't improve performance. Signed-off-by: Mark Nelson Signed-off-by: Paul Mackerras commit 409001948d9f221c94a61c3ee96de112755fc04d Author: Brian King Date: Wed Oct 22 05:53:45 2008 +0000 powerpc: Update page-in counter for CMM A new field has been added to the VPA as a method for the client OS to communicate to firmware the number of page-ins it is performing when running collaborative memory overcommit. The hypervisor will use this information to better determine if a partition is experiencing memory pressure and needs more memory allocated to it. Signed-off-by: Brian King Signed-off-by: Paul Mackerras commit 1ef8014debb6410ed1960c4477d0006df11157c1 Author: Sebastien Dugue Date: Wed Oct 22 04:36:32 2008 +0000 powerpc/pseries: Fix getting the server number size The 'ibm,interrupt-server#-size' properties are not in the cpu nodes, which is where we currently look for them, but rather live under the interrupt source controller nodes (which have "ibm,ppc-xics" in their compatible property). This moves the code that looks for the ibm,interrupt-server#-size properties from xics_update_irq_servers() into xics_init_IRQ(). Also this adds a check for mismatched sizes across the interrupt source controller nodes. Not sure this is necessary as in this case the firmware might be seriously busted. This property only appears on POWER6 boxes and is only used in the set-indicator(gqirm) call, and apparently firmware currently ignores the value we pass. Nevertheless we need to fix it in case future firmware versions use it. Signed-off-by: Sebastien Dugue Cc: Benjamin Herrenschmidt Acked-by: Milton Miller Signed-off-by: Paul Mackerras commit 691de57679e3f05b708b98ca2ab27657c768843f Author: Anton Vorontsov Date: Tue Oct 21 08:58:44 2008 +0000 powerpc: Remove device_type = "rtc" properties in .dts files We don't want to encourage the device_type usage. It isn't used in the code, so we can simply remove it from the dts files. Suggested-by: Scott Wood Signed-off-by: Anton Vorontsov Acked-by: Grant Likely Acked-by: David Gibson Signed-off-by: Paul Mackerras commit a6a8e009b118b4906cbb4b382f8cc17195cff860 Author: Benjamin Herrenschmidt Date: Tue Oct 14 18:25:28 2008 +0000 powerpc: Silence software timebase sync When no hardware method is provided to sync the timebase registers across the machine, and the platform doesn't sync them for us, then we use a generic software implementation. Currently, the code for that has many printks, and they don't have log levels. Most of the printks are only useful for debugging the code, and since we haven't had any problems with it for years, this turns them into pr_debug. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 1fd0f52583a85b21a394201b007bc1ee104b235d Author: Benjamin Herrenschmidt Date: Thu Oct 2 14:12:51 2008 +0000 powerpc: Fix domain numbers in /proc on 64-bit The code to properly expose domain numbers in /proc is somewhat bogus on ppc64 as it depends on the "buid" field being non-0, but that field is really pseries specific. This removes that code and makes ppc64 use the same code as 32-bit which effectively decides whether to expose domains based on ppc_pci_flags set by the platform, and sets the default for 64-bit to enable domains and enable compatibility for domain 0 (which strips the domain number for domain 0 to help with X servers). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 270acefafeb74ce2fe93d35b75733870bf1e11e7 Author: Eric Dumazet Date: Wed Nov 5 01:38:06 2008 -0800 net: sk_free_datagram() should use sk_mem_reclaim_partial() I noticed a contention on udp_memory_allocated on regular UDP applications. While tcp_memory_allocated is seldom used, it appears each incoming UDP frame is currently touching udp_memory_allocated when queued, and when received by application. One possible solution is to use sk_mem_reclaim_partial() instead of sk_mem_reclaim(), so that we keep a small reserve (less than one page) of memory for each UDP socket. We did something very similar on TCP side in commit 9993e7d313e80bdc005d09c7def91903e0068f07 ([TCP]: Do not purge sk_forward_alloc entirely in tcp_delack_timer()) A more complex solution would need to convert prot->memory_allocated to use a percpu_counter with batches of 64 or 128 pages. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit d99a7bd210a14001007fc5233597c78877f0a11c Author: Gerrit Renker Date: Tue Nov 4 23:56:30 2008 -0800 dccp: Cleanup routines for feature negotiation This inserts the required de-allocation routines for memory allocated by feature negotiation in the socket destructors, replacing dccp_feat_clean() in one instance. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit ac75773c2742d82cbcb078708df406e9017224b7 Author: Gerrit Renker Date: Tue Nov 4 23:55:49 2008 -0800 dccp: Per-socket initialisation of feature negotiation This provides feature-negotiation initialisation for both DCCP sockets and DCCP request_sockets, to support feature negotiation during connection setup. It also resolves a FIXME regarding the congestion control initialisation. Thanks to Wei Yongjun for help with the IPv6 side of this patch. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 61e6473efbd6087e1db3aaa93a5266c5bfd8aa99 Author: Gerrit Renker Date: Tue Nov 4 23:54:04 2008 -0800 dccp: List management for new feature negotiation This adds list initial fields and list management functions for the new feature negotiation implementation. Thanks to Arnaldo for suggestions and improvements. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Signed-off-by: David S. Miller commit 7d43d1a0f2cf535167ec7247f110a1f85cecac43 Author: Gerrit Renker Date: Tue Nov 4 23:43:47 2008 -0800 dccp: Implement lookup table for feature-negotiation information A lookup table for feature-negotiation information, extracted from RFC 4340/42, is provided by this patch. All currently known features can be found in this table, along with their feature location, their default value, and type. Signed-off-by: Gerrit Renker Acked-by: Ian McDonald Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit bd012f2e7be9f69a47d240ded0fa491967d9827c Author: Gerrit Renker Date: Tue Nov 4 23:38:20 2008 -0800 dccp: Basic data structure for feature negotiation This patch prepares for the new and extended feature-negotiation routines. The following feature-negotiation data structures are provided: * a container for the various (SP or NN) values, * symbolic state names to track feature states, * an entry struct which holds all current information together, * elementary functions to fill in and process these structures. Entry structs are arranged as FIFO for the following reason: RFC 4340 specifies that if multiple options of the same type are present, they are processed in the order of their appearance in the packet; which means that this order needs to be preserved in the local data structure (the later insertion code also respects this order). The struct list_head has been chosen for the following reasons: the most frequent operations are * add new entry at tail (when receiving Change or setting socket options); * delete entry (when Confirm has been received); * deep copy of entire list (cloning from listening socket onto request socket). The NN value has been set to 64 bit, which is a currently sufficient upper limit (Sequence Window feature has 48 bit). Thanks to Arnaldo, who contributed the streamlined layout of the entry struct. Signed-off-by: Gerrit Renker Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 13c947444f4355293b49f83b809f178393a0a4d9 Author: Takashi Iwai Date: Wed Nov 5 08:06:08 2008 +0100 ALSA: hda - Add ASUS V1Sn support Asus V1s series laptops have an ALC660VD with PCI id: 0x1043, 0x1633. 1.) remove the previous behaviour of mapping that to the ALC861VD_LENOVO device. 2.) add a new ALC660VD_V1S device based on ALC861VD_LENOVO, with an added digital out. Signed-off-by: Tristan Aston Signed-off-by: Takashi Iwai commit beb0b9cf78b56b0f30f5defe62b7b9712cd02a50 Author: Takashi Iwai Date: Wed Nov 5 07:58:25 2008 +0100 ALSA: hda - Fix unused function in patch_intelhdmi.c Add a proper ifdef to shut out a compile warning: CC [M] sound/pci/hda/patch_intelhdmi.o sound/pci/hda/patch_intelhdmi.c:286: warning: ‘hdmi_get_dip_index’ defined but \ not used Signed-off-by: Takashi Iwai commit 91504877c50a792412e2043a1c2099f054d7254a Author: Wu, Fengguang Date: Wed Nov 5 11:16:56 2008 +0800 ALSA: hda - Intel HDMI audio support Add support for Intel G45 integrated HDMI audio codecs. This initial release supports: - 2 channel stereo sound output - report monitor's ELD information Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit d5f642384e9da75393160350f75bbb9a527f7c58 Author: Alexey Dobriyan Date: Tue Nov 4 14:45:58 2008 -0800 net: #ifdef ->sk_security Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit fd8cd7e1919fc1c27fe2fdccd2a1cd32f791ef0f Author: Alok Kataria Date: Mon Nov 3 15:50:38 2008 -0800 x86: vmware: look for DMI string in the product serial key Impact: Should permit VMware detection on older platforms where the vendor is changed. Could theoretically cause a regression if some weird serial number scheme contains the string "VMware" by pure chance. Seems unlikely, especially with the mixed case. In some user configured cases, VMware may choose not to put a VMware specific DMI string, but the product serial key is always there and is VMware specific. Add a interface to check the serial key, when checking for VMware in the DMI information. Signed-off-by: Alok N Kataria Signed-off-by: H. Peter Anvin commit 41d9f9c524a53477467b7e0111ff3d644198f191 Author: Eric Paris Date: Tue Nov 4 15:18:26 2008 -0500 SELinux: hold tasklist_lock and siglock while waking wait_chldexit SELinux has long been calling wake_up_interruptible() on current->parent->signal->wait_chldexit without holding any locks. It appears that this operation should hold the tasklist_lock to dereference current->parent and we should hold the siglock when waking up the signal->wait_chldexit. Signed-off-by: Eric Paris Signed-off-by: James Morris commit 0ee4663617fb0f78cec4cc6558a096ccbd8c3ffc Author: Takashi Iwai Date: Tue Nov 4 18:06:23 2008 +0100 ALSA: ASoC - Remove unnecessary inclusion of linux/version.h Signed-off-by: Takashi Iwai commit 3865675c60aec3e81d72d484680b544afc6fc51d Author: Huang Weiyi Date: Fri Oct 31 22:50:00 2008 +0800 ALSA: ASoC codec: remove unused #include The file(s) below do not use LINUX_VERSION_CODE nor KERNEL_VERSION. sound/soc/codecs/ad73311.c This patch removes the said #include . Signed-off-by: Huang Weiyi Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit bfc5c26fb692fa7a196108c3b23d9c747d105c00 Author: Takashi Iwai Date: Tue Nov 4 17:48:39 2008 +0100 ALSA: hda - Don't create empty PCM streams Due to the hda-reconfiguration patches, the check of empty stream is gone, and this results in an error with the codec setup with empty streams. This patch adds the check again to avoid the error at probing. Signed-off-by: Takashi Iwai commit 79a9d461fd521f133f0e66485aa9ed09c21f5191 Author: Frederic Weisbecker Date: Fri Oct 31 13:34:45 2008 +0100 tracing/ftrace: fix a bug when switch current tracer to sched tracer Impact: fix boot tracer + sched tracer coupling bug Fix a bug that made the sched_switch tracer unable to run if set as the current_tracer after the boot tracer. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit efade6e7821c4219818e9da08f9315dfa617048b Author: Frederic Weisbecker Date: Fri Oct 31 13:28:58 2008 +0100 tracing/ftrace: types and naming corrections for sched tracer Impact: cleanup This patch applies some corrections suggested by Steven Rostedt. Change the type of shed_ref into int since it is used into a Mutex, we don't need it anymore as an atomic variable in the sched_switch tracer. Also change the name of the register mutex. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit d7ad44b697c9d13e445ddc7d16f736fbac333249 Author: Frederic Weisbecker Date: Fri Oct 31 13:20:08 2008 +0100 tracing/fastboot: use sched switch tracer from boot tracer Impact: enhance boot trace output with scheduling events Use the sched_switch tracer from the boot tracer. We also can trace schedule events inside the initcalls. Sched tracing is disabled after the initcall has finished and then reenabled before the next one is started. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit e55f605c14679c30be41473e60b7ad26524cdc35 Author: Frederic Weisbecker Date: Fri Oct 31 13:14:28 2008 +0100 tracing/ftrace: remove unused code in sched_switch tracer Impact: cleanup When init_sched_switch_trace() is called, it has no reason to start the sched tracer if the sched_ref is not zero. _ If this is non-zero, the tracer is already used, but we can register it to the tracing engine. There is already a security which avoid the tracer probes not to be resgistered twice. _ If this is zero, this block will not be used. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 07695fa04e8a3384b0c855398ce1f7885bd7dc3b Author: Frederic Weisbecker Date: Fri Oct 31 13:08:28 2008 +0100 tracing/ftrace: fix a race condition in sched_switch tracer Impact: fix race condition in sched_switch tracer This patch fixes a race condition in the sched_switch tracer. If several tasks (IE: concurrent initcalls) are playing with tracing_start_cmdline_record() and tracing_stop_cmdline_record(), the following situation could happen: _ Task A and B are using the same tracepoint probe. Task A holds it. Task B is sleeping and doesn't hold it. _ Task A frees the sched tracer, then sched_ref is decremented to 0. _ Task A is preempted and hadn't yet unregistered its tracepoint probe, then B runs. _ B increments sched_ref, sees it's 1 and then guess it has to register its probe. But it has not been freed by task A. _ A lot of bad things can happen after that... Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 71566a0d161edec70361b7f90f6e54af6a6d5d05 Author: Frederic Weisbecker Date: Fri Oct 31 12:57:20 2008 +0100 tracing/fastboot: Enable boot tracing only during initcalls Impact: modify boot tracer We used to disable the initcall tracing at a specified time (IE: end of builtin initcalls). But we don't need it anymore. It will be stopped when initcalls are finished. However we want two things: _Start this tracing only after pre-smp initcalls are finished. _Since we are planning to trace sched_switches at the same time, we want to enable them only during the initcall execution. For this purpose, this patch introduce two functions to enable/disable the sched_switch tracing during boot. Signed-off-by: Frederic Weisbecker Signed-off-by: Ingo Molnar commit 6e3354c1e9946fa585de40e93ad917ec7abd006e Author: Simon Arlott Date: Tue Nov 4 14:35:39 2008 +0100 netfilter: nf_nat: remove warn_if_extra_mangle In net/ipv4/netfilter/nf_nat_rule.c, the function warn_if_extra_mangle was added in commit 5b1158e909ecbe1a052203e0d8df15633f829930 (2006-12-02). I have a DNAT target in the OUTPUT chain than changes connections with dst 2.0.0.1 to another address which I'll substitute with 66.102.9.99 below. On every boot I get the following message: [ 146.252505] NAT: no longer support implicit source local NAT [ 146.252517] NAT: packet src 66.102.9.99 -> dst 2.0.0.1 As far as I can tell from reading the function doing this, it should warn if the source IP for the route to 66.102.9.99 is different from 2.0.0.1 but that is not the case. It doesn't make sense to check the DNAT target against the local route source. Either the function should be changed to correctly check the route, or it should be removed entirely as it's been nearly 2 years since it was added. Signed-off-by: Simon Arlott Signed-off-by: Patrick McHardy commit 249b62035ca247b9cedbefa1acf6bdc53b96e678 Author: Alexey Dobriyan Date: Tue Nov 4 14:31:29 2008 +0100 netfilter: netns ebtables: br_nf_pre_routing_finish() fixup Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit b71b30a626fd0e43c825a05036e7a2c3f377a563 Author: Alexey Dobriyan Date: Tue Nov 4 14:30:46 2008 +0100 netfilter: netns ebtables: ebtable_nat in netns Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit 4aad10938d4e4e8364b664cd5420c3bfeb9b679b Author: Alexey Dobriyan Date: Tue Nov 4 14:29:58 2008 +0100 netfilter: netns ebtables: ebtable_filter in netns Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit 8157e6d16af86e4a8d31a035db7be02a8a171c26 Author: Alexey Dobriyan Date: Tue Nov 4 14:29:03 2008 +0100 netfilter: netns ebtables: ebtable_broute in netns Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit dbcdf85a2e3d2aa584dafd10b5a1f42764e673e7 Author: Alexey Dobriyan Date: Tue Nov 4 14:28:04 2008 +0100 netfilter: netns ebtables: more cleanup during ebt_unregister_table() Now that ebt_unregister_table() can be called during netns stop, and module pinning scheme can't prevent netns stop, do table cleanup by hand. Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit 6beceee5aa2cb94c4ae9f0784c7d3135d343f5b5 Author: Alexey Dobriyan Date: Tue Nov 4 14:27:15 2008 +0100 netfilter: netns ebtables: part 2 * return ebt_table from ebt_register_table(), module code will save it into per-netns data for unregistration * duplicate ebt_table at the very beginning of registration -- it's added into list, so one ebt_table wouldn't end up in many lists (and each netns has different one) * introduce underscored tables in individial modules, this is temporary to not break bisection. Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit 511061e2dd1b84bb21bb97c9216a19606c29ac02 Author: Alexey Dobriyan Date: Tue Nov 4 14:22:55 2008 +0100 netfilter: netns ebtables: part 1 * propagate netns from userspace, register table in passed netns * remporarily register every ebt_table in init_net P. S.: one needs to add ".netns_ok = 1" to igmp_protocol to test with ebtables(8) in netns. Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit 19223f26d97077da8cf25251458afe00cae20cbb Author: Alexey Dobriyan Date: Tue Nov 4 14:22:13 2008 +0100 netfilter: arptable_filter: merge forward hook It's identical to NF_ARP_IN hook. Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit d4ec52bae739409b2372fea30dba0e7a8d6b9181 Author: Alexey Dobriyan Date: Tue Nov 4 14:21:48 2008 +0100 netfilter: netns-aware ipt_addrtype Signed-off-by: Alexey Dobriyan Signed-off-by: Patrick McHardy commit 5f7340eff8f68f41b7e5c7ad47ec4cd1ea1afb40 Author: Eric Leblond Date: Tue Nov 4 14:21:08 2008 +0100 netfilter: xt_NFLOG: don't call nf_log_packet in NFLOG module. This patch modifies xt_NFLOG to suppress the call to nf_log_packet() function. The call of this wrapper in xt_NFLOG was causing NFLOG to use the first initialized module. Thus, if ipt_ULOG is loaded before nfnetlink_log all NFLOG rules are treated as plain LOG rules. Signed-off-by: Eric Leblond Signed-off-by: Patrick McHardy commit 3299b4dd1180762da831be5eb6adc44553eaec26 Author: Peter Zijlstra Date: Tue Nov 4 11:58:21 2008 +0100 ftrace: sysctl typo Impact: fix sysctl name typo Steve must have needed more coffee ;-) Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 69f698adcf43930a283f630395a1bb781962cfe6 Author: Peter Zijlstra Date: Sat Nov 1 19:53:34 2008 +0100 ftrace: sysrq-z to dump the buffers Impact: add SysRq-z support to dump trace buffers Allows one to force an ftrace dump from sysrq Signed-off-by: Peter Zijlstra Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 6cf87efbc7a3676e0ad7c9622ec6aec244a593bc Author: Ingo Molnar Date: Tue Nov 4 10:42:23 2008 +0100 x86 debug: mark early_printk.o as notrace Impact: do not do function-tracing in the early-printk code this is useful when earlyprintk=vga,keep is used to debug tracer plugins. Signed-off-by: Ingo Molnar commit faa2f98f856e89d1afb6e4a91707284d242e816e Author: Li Zefan Date: Tue Nov 4 16:20:23 2008 +0800 sched: add sanity check in partition_sched_domains() Impact: cleanup, add debug check It's wrong to make dattr_new = NULL if doms_new == NULL, it introduces memory leak if dattr_new != NULL. Fortunately dattr_new is always NULL in this case. So remove the code and add a sanity check. Signed-off-by: Li Zefan Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit a17e2260926f681a0eb983c1e3cb859ba2064bce Author: Li Zefan Date: Tue Nov 4 16:19:13 2008 +0800 sched: remove redundant call to unregister_sched_domain_sysctl() Impact: cleanup The sysctl has been unregistered by partition_sched_domains(). Signed-off-by: Li Zefan Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 0a0db8f5c9d4bbb9bbfcc2b6cb6bce2d0ef4d73d Author: Li Zefan Date: Tue Nov 4 16:17:05 2008 +0800 sched debug: remove NULL checking in print_cfs/rt_rq() Impact: cleanup cfs->tg is initialized in init_tg_cfs_entry() with tg != NULL, and will never be invalidated to NULL. And the underlying cgroup of a valid task_group is always valid. Same for rt->tg. Signed-off-by: Li Zefan Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit eefd796a8e831408ce17e633d73d70430748c47a Author: Li Zefan Date: Tue Nov 4 16:15:37 2008 +0800 sched debug: remove sd_level_to_string() Impact: cleanup Just use the newly introduced sd->name. Signed-off-by: Li Zefan Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit b2a866f9344cb30d7ddf5d67b5b8393daf8bef07 Author: Steven Rostedt Date: Mon Nov 3 23:15:57 2008 -0500 ftrace: function tracer with irqs disabled Impact: disable interrupts during trace entry creation (as opposed to preempt) To help with performance, I set the ftracer to not disable interrupts, and only to disable preemption. If an interrupt occurred, it would not be traced, because the function tracer protects itself from recursion. This may be faster, but the trace output might miss some traces. This patch makes the fuction trace disable interrupts, but it also adds a runtime feature to disable preemption instead. It does this by having two different tracer functions. When the function tracer is enabled, it will check to see which version is requested (irqs disabled or preemption disabled). Then it will use the corresponding function as the tracer. Irq disabling is the default behaviour, but if the user wants better performance, with the chance of missing traces, then they can choose the preempt disabled version. Running hackbench 3 times with the irqs disabled and 3 times with the preempt disabled function tracer yielded: tracing type times entries recorded ------------ -------- ---------------- irq disabled 43.393 166433066 43.282 166172618 43.298 166256704 preempt disabled 38.969 159871710 38.943 159972935 39.325 161056510 Average: irqs disabled: 43.324 166287462 preempt disabled: 39.079 160300385 preempt is 10.8 percent faster than irqs disabled. I wrote a patch to count function trace recursion and reran hackbench. With irq disabled: 1,150 times the function tracer did not trace due to recursion. with preempt disabled: 5,117,718 times. The thousand times with irq disabled could be due to NMIs, or simply a case where it called a function that was not protected by notrace. But we also see that a large amount of the trace is lost with the preempt version. Signed-off-by: Steven Rostedt Cc: Peter Zijlstra Cc: Andrew Morton Cc: Steven Rostedt Signed-off-by: Ingo Molnar commit 182e9f5f704ed6b9175142fe8da33c9ce0c52b52 Author: Steven Rostedt Date: Mon Nov 3 23:15:56 2008 -0500 ftrace: insert in the ftrace_preempt_disable()/enable() functions Impact: use new, consolidated APIs in ftrace plugins This patch replaces the schedule safe preempt disable code with the ftrace_preempt_disable() and ftrace_preempt_enable() safe functions. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 8f0a056fcb2f83a069fb5d60c2383304b7456687 Author: Steven Rostedt Date: Mon Nov 3 23:15:55 2008 -0500 ftrace: introduce ftrace_preempt_disable()/enable() Impact: add new ftrace-plugin internal APIs Parts of the tracer needs to be careful about schedule recursion. If the NEED_RESCHED flag is set, a preempt_enable will call schedule. Inside the schedule function, the NEED_RESCHED flag is cleared. The problem arises when a trace happens in the schedule function but before NEED_RESCHED is cleared. The race is as follows: schedule() >> tracer called trace_function() preempt_disable() [ record trace ] preempt_enable() <<- here's the issue. [check NEED_RESCHED] schedule() [ Repeat the above, over and over again ] The naive approach is simply to use preempt_enable_no_schedule instead. The problem with that approach is that, although we solve the schedule recursion issue, we now might lose a preemption check when not in the schedule function. trace_function() preempt_disable() [ record trace ] [Interrupt comes in and sets NEED_RESCHED] preempt_enable_no_resched() [continue without scheduling] The way ftrace handles this problem is with the following approach: int resched; resched = need_resched(); preempt_disable_notrace(); [record trace] if (resched) preempt_enable_no_sched_notrace(); else preempt_enable_notrace(); This may seem like the opposite of what we want. If resched is set then we call the "no_sched" version?? The reason we do this is because if NEED_RESCHED is set before we disable preemption, there's two reasons for that: 1) we are in an atomic code path 2) we are already on our way to the schedule function, and maybe even in the schedule function, but have yet to clear the flag. Both the above cases we do not want to schedule. This solution has already been implemented within the ftrace infrastructure. But the problem is that it has been implemented several times. This patch encapsulates this code to two nice functions. resched = ftrace_preempt_disable(); [ record trace] ftrace_preempt_enable(resched); This way the tracers do not need to worry about getting it right. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 124ffe1456d6efea5b32cc6d36e3fa434cdc84d9 Author: Hiroshi Shimamoto Date: Mon Nov 3 19:23:01 2008 -0800 x86: signal_64: remove unused code in __setup_rt_frame() Impact: cleanup sizeof(*set) is always 8 on x86_64. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit b91f080f517cf9dd52023c11127a0ca33190e31a Author: Takashi Iwai Date: Tue Nov 4 08:43:08 2008 +0100 ALSA: hda - Fix possible NULL dereference Add NULL-check of the return value of snd_kctl_new1() before accessing it. Also, make a sanity NULL check to snd_BUG_ON() for debugging only. Signed-off-by: Takashi Iwai commit dce908e26fa0ea7d504d3f294c7411ed1eba5077 Author: Troy Kisky Date: Mon Nov 3 12:22:07 2008 -0700 ALSA: SOC: Fix setting codec register with debugfs filesystem merge error Call device_create_file only once in snd_soc_dapm_sys_add function. Signed-off-by: Troy Kisky Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit d2ad3ca88da02baeccd5216780f1fe983c6953ba Author: David S. Miller Date: Mon Nov 3 22:01:07 2008 -0800 net/: Kill now superfluous ->last_rx stores. The generic packet receive code takes care of setting netdev->last_rx when necessary, for the sake of the bonding ARP monitor. Signed-off-by: David S. Miller commit 265eb67fb4e16be8e46a51e1e4e2ecd99fb15219 Author: Stephen Hemminger Date: Mon Nov 3 21:13:26 2008 -0800 netem: eliminate unneeded return values All these individual parsing functions never return an error, so they can be void. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit babcda74e9d96bb58fd9c6c5112dbdbff169e695 Author: David S. Miller Date: Mon Nov 3 21:11:17 2008 -0800 drivers/net: Kill now superfluous ->last_rx stores. The generic packet receive code takes care of setting netdev->last_rx when necessary, for the sake of the bonding ARP monitor. Drivers need not do it any more. Some cases had to be skipped over because the drivers were making use of the ->last_rx value themselves. Signed-off-by: David S. Miller commit ab2910921064b657610a3b501358a305e13087ea Author: Jianjun Kong Date: Mon Nov 3 18:23:09 2008 -0800 net: remove two duplicated #include Removed duplicated #include in net/9p/trans_rdma.c and #include in net/socket.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit 6d9f239a1edb31d6133230f478fd1dc2da338ec5 Author: Alexey Dobriyan Date: Mon Nov 3 18:21:05 2008 -0800 net: '&' redux I want to compile out proc_* and sysctl_* handlers totally and stub them to NULL depending on config options, however usage of & will prevent this, since taking adress of NULL pointer will break compilation. So, drop & in front of every ->proc_handler and every ->strategy handler, it was never needed in fact. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 6cf3f41e6c08bca6641a695449791c38a25f35ff Author: Jay Vosburgh Date: Mon Nov 3 18:16:50 2008 -0800 bonding, net: Move last_rx update into bonding recv logic The only user of the net_device->last_rx field is bonding. This patch adds a conditional update of last_rx to the bonding special logic in skb_bond_should_drop, causing last_rx to only be updated when the ARP monitor is running. This frees network device drivers from the necessity of updating last_rx, which can have cache line thrash issues. Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 24f8b2385e03a4f4c8dac513d03b5eaa475822b9 Author: Stephen Hemminger Date: Mon Nov 3 17:14:38 2008 -0800 net: increase receive packet quantum This patch gets about 1.25% back on tbench regression. My change to NAPI for multiqueue support changed the time limit on network receive processing. Under sustained loads like tbench, this can cause the receiver to reschedule prematurely. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b9ac99855dcc0316ba2feee2b0d3e578f8315b75 Author: Harvey Harrison Date: Mon Nov 3 17:09:55 2008 -0800 printk: ipv4 address digits printed in reverse order put_dec_trunc prints the digits in reverse order and is reversed inside number(). Continue using put_dec_trunc, but reverse each quad in ip4_addr_string. [Noticed by Julius Volz] Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 48148938b494cd57029a43c758e9972307a31d2a Author: Julius Volz Date: Mon Nov 3 17:08:56 2008 -0800 IPVS: Remove supports_ipv6 scheduler flag Remove the 'supports_ipv6' scheduler flag since all schedulers now support IPv6. Signed-off-by: Julius Volz Signed-off-by: David S. Miller commit 445483758e35e0aaff5256d1b104a346ba77aafe Author: Julius Volz Date: Mon Nov 3 17:08:28 2008 -0800 IPVS: Add IPv6 support to LBLC/LBLCR schedulers Add IPv6 support to LBLC and LBLCR schedulers. These were the last schedulers without IPv6 support, but we might want to keep the supports_ipv6 flag in the case of future schedulers without IPv6 support. Signed-off-by: Julius Volz Acked-by: Simon Horman Signed-off-by: David S. Miller commit fa228b3fcb724ce2281a61737e09a8afa4fed542 Author: Matt Carlson Date: Mon Nov 3 16:58:53 2008 -0800 tg3: Update version to 3.95 This patch updates the version to 3.95. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 772638b6c87da7043c50914dbb033c08155508dd Author: Matt Carlson Date: Mon Nov 3 16:56:51 2008 -0800 broadcom: Add support for BCM50610 This patch adds the BCM50610 to the list of phys supported by the broadcom driver. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 042a75b99fbda6bf7c7bf4496e205e3e7acc953a Author: Matt Carlson Date: Mon Nov 3 16:56:29 2008 -0800 broadcom: Refine expansion register access routine This patch makes the expansion register access routines a little more formal. They will be used by the following bcm50610 support patch. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 5e0c676c717316f315dcf76da52dc0002c43632a Author: Matt Carlson Date: Mon Nov 3 16:56:07 2008 -0800 broadcom: Add flow control support This patch adds flow control support to Broadcom phys. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit fcb389dfd842be54545cb436b3437f07da10115c Author: Matt Carlson Date: Mon Nov 3 16:55:44 2008 -0800 tg3: 5785 enhancements This patch refines support for the 5785 device. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 9c61d6bc56bf0a5fb1ebfcf4c168cc5ce30e153b Author: Matt Carlson Date: Mon Nov 3 16:54:56 2008 -0800 tg3: Refine phylib support This patch refines the phylib support in the tg3 driver. The patch does the following things : * Rename tg3_mdio_config() to tg3_mdio_config_5785(). The 5785 will be the only device that will use it so the name might as well reflect that. * Fix a memory leak if mdiobus_register() fails. * Add code to deal with phy device detection failures. * Add code to correct the supported list of phy features based on the MAC <=> PHY interface. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 0a459aac9d151c2e36ec65723b9b845b24c5cbc3 Author: Matt Carlson Date: Mon Nov 3 16:54:15 2008 -0800 tg3: Allow WOL for phylib controlled Broadcom phys This patch allows WOL to be enabled for Broadcom phys under phylib control. The only exception is the AC131, which has a completely different register set. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 05ac4cb7dff4515447dce6e9a56c4de6b7e426d5 Author: Matt Carlson Date: Mon Nov 3 16:53:46 2008 -0800 tg3: Refine power management and WOL code Commit 12dac0756d357325b107fe6ec24921ec38661839 ("tg3: adapt tg3 to use reworked PCI PM code") introduced the new PCI PM API to the tg3 driver. The patch was understandably conservative, so this patch elaborates on that work. The patch starts by creating a single point in tg3_set_power_state() to decide whether or not to enable WOL. The rest of the code in tg3_set_power_state() was then pivoted to use the result of this decision. The patch then makes sure the device is allowed to wakeup before reporting whether or not WOL is currently enabled. The final hunks of the patch consolidate where the WOL capability and WOL enabled flags are set to a single location. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit df59c9403557397aafbe291533d113b752da7661 Author: Matt Carlson Date: Mon Nov 3 16:52:56 2008 -0800 tg3: Move phylib report to end of tg3_init_one Currently, phylib reports appear with a eth%d prefix. Move the line after register_netdev() and place it alongside the other informative messages. Update nearby informative messages accordingly. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit b2b98d4acc58a6f36b731e666c6ebd901cd6a27e Author: Matt Carlson Date: Mon Nov 3 16:52:32 2008 -0800 tg3: Do not enable APE on bcm5700 With older versions of the NVRAM format, the driver may mistakenly determine that APE is enabled. Make sure this doesn't happen by restricting the ENABLE_APE check to devices known to have more recent NVRAM image formats. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit bcb37f6cb57e565e7bd342272652c3a50cf88761 Author: Matt Carlson Date: Mon Nov 3 16:52:09 2008 -0800 tg3: Reclaim TG3_FLG3_5761_5784_AX_FIXES flag This patch reclaims the TG3_FLG3_5761_5784_AX_FIXES flag. It only used twice in non-fast paths. This patch also consolidates some other places where specific 5784 AX chip revisions can be generalized. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 3f007891da0ad3d9192e9aa13ce4e3aaf20c33fa Author: Matt Carlson Date: Mon Nov 3 16:51:36 2008 -0800 tg3: Preserve LAA when device control is released This patch moves the __tg3_set_mac_addr() function earlier in the file listing, to avoid a function prototype, and calls the function to restore the LAA after a driver unload chip reset. With this code in place, the administrator can wake the machine using the LAA. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit b2aee1545dc3c05c8d5cf116de1e92907e98009b Author: Matt Carlson Date: Mon Nov 3 16:51:11 2008 -0800 tg3: Preserve DASH connectivity when WOL enabled DASH firmware runs on the APE side of the chip, but it requires a few MAC to be programmed correctly. When WOL is enabled and management firmware is disabled, incoming packets are evaluated and discarded at the chip's rule processor. When management firmware is enabled, the hardware must be informed that there are agents further up the stack that still use the incoming frames. Normally management firmware will configure the MAC correctly on its own, but there can be cases where the setting could get clobbered by the driver. The first hunk of this patch preserves this setting. The second hunk of this patch wipes out the driver present signature of the APE memory space. By doing so, the DASH firmware can assume driver absent behavior. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 63532394af307795ea637a283bd1fd057f5dfcea Author: Matt Carlson Date: Mon Nov 3 16:49:57 2008 -0800 tg3: Use pci_ioremap_bar() This patch replaces the existing APE register mapping code with a call to pci_ioremap_bar(). The code that maps the main device register space did not undergo a similar change because the information derived from the pci_resource_start() and pci_resource_len() is still used to populate the (optional) mem_start and mem_end netdevice members. Replace hardcoded constants where appropriate. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit c88e668b52c8cd8bc55b6734c7dfbb0cb005d445 Author: Matt Carlson Date: Mon Nov 3 16:49:18 2008 -0800 tg3: Add 5761S support This patch adds support for the 5761S chip variants. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 6bdbfe99916398dbb28d83833cc04757110f2738 Author: Alok Kataria Date: Mon Nov 3 11:31:28 2008 -0800 x86: VMware: Fix vmware_get_tsc code Impact: Fix possible failure to calibrate the TSC on Vmware near 4 GHz The current version of the code to get the tsc frequency from the VMware hypervisor, will be broken on processor with frequency (4G-1) HZ, because on such processors eax will have UINT_MAX and that would be legitimate. We instead check that EBX did change to decide if we were able to read the frequency from the hypervisor. Signed-off-by: Alok N Kataria Signed-off-by: H. Peter Anvin commit 4ef0ef1966dae9e9e29762e4e719af3cfd146ca0 Author: Takashi Iwai Date: Mon Nov 3 17:47:49 2008 +0100 ALSA: hda - Fix missing ADC list in ALC260 auto-probe mode The commit f9e336f65b666b8f1764d17e9b7c21c90748a37e ALSA: hda - Unify capture mixer creation in realtek codes removed the ADC check for ALC260 auto-probe mode accidentally. Re-added to patch_alc260() again. Signed-off-by: Takashi Iwai commit 26f5df265f06b8c8fe9f5d0942b7d8df00e5edec Author: Takashi Iwai Date: Mon Nov 3 17:39:46 2008 +0100 ALSA: hda - Add ALC299 fujitsu preset model Added a preset model for FSC Amilo with ALC269 codec chip. Signed-off-by: Takashi Iwai commit 67305ebc992abf2121fb2149fd8a707cd7cfcbd2 Author: Jarek Poplawski Date: Mon Nov 3 02:52:50 2008 -0800 pkt_sched: sch_generic: Kfree gso_skb in qdisc_reset() Since gso_skb is re-used for qdisc_peek_dequeued(), and this skb is counted in the qdisc->q.qlen, it has to be kfreed during qdisc_reset() when qlen is zeroed. With help from David S. Miller Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 5799de0b12c773874282444052da401989075df6 Author: Jianjun Kong Date: Mon Nov 3 02:49:10 2008 -0800 net: clean up net/ipv4/tcp_ipv4.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit 539afedfccb39577c9264b29f11ec9556fd45022 Author: Jianjun Kong Date: Mon Nov 3 02:48:48 2008 -0800 net: clean up net/ipv4/devinet.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit f4cca7ffb2700bff5752fbbc28f49d58ed2c5cb3 Author: Jianjun Kong Date: Mon Nov 3 02:48:14 2008 -0800 net: clean up net/ipv4/pararp.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit fd3f8c4cb632c28ef915a535617a0fcddcfe3f80 Author: Jianjun Kong Date: Mon Nov 3 02:47:38 2008 -0800 net: clean up net/ipv4/ip_fragment.c tcp_timer.c ip_input.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit e113a745f693af196c8081b328bf42def086989b Author: Dimitri Sivanich Date: Fri Oct 31 08:03:41 2008 -0500 sched/rt: small optimization to update_curr_rt() Impact: micro-optimization to SCHED_FIFO/RR scheduling A very minor improvement, but might it be better to check sched_rt_runtime(rt_rq) before taking the rt_runtime_lock? Peter Zijlstra observes: > Yes, I think its ok to do so. > > Like pointed out in the other thread, there are two races: > > - sched_rt_runtime() going to RUNTIME_INF, and that will be handled > properly by sched_rt_runtime_exceeded() > > - sched_rt_runtime() going to !RUNTIME_INF, and here we can miss an > accounting cycle, but I don't think that is something to worry too > much about. Signed-off-by: Dimitri Sivanich Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar -- kernel/sched_rt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 7e5e26a3d8ac4bcadb380073dc9604c07a9a6198 Author: Steven Rostedt Date: Fri Oct 31 09:36:38 2008 -0400 ftrace: fix hardirq header for non ftrace archs Impact: build fix for non-ftrace architectures Not all archs implement ftrace, and therefore do not have an asm/ftrace.h. This patch corrects the problem. The ftrace_nmi_enter/exit now must be defined for all archs that implement dynamic ftrace. Currently, only x86 does. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 7a895f53cda9d9362c30144e42c124a1ae996b9e Merge: d9e5407... 5d9881e... fd3fdf1... a26a2a2... 127cafb... c2c8052... Author: Ingo Molnar Date: Mon Nov 3 10:34:23 2008 +0100 Merge branches 'tracing/ftrace', 'tracing/markers', 'tracing/mmiotrace', 'tracing/nmisafe', 'tracing/tracepoints' and 'tracing/urgent' into tracing/core commit 127cafbb276266b1b8da967bfe25a062ab1d42ab Author: Lai Jiangshan Date: Tue Oct 28 10:51:53 2008 +0800 tracepoint: introduce *_noupdate APIs. Impact: add new tracepoint APIs to allow the batched registration of probes new APIs separate tracepoint_probe_register(), tracepoint_probe_unregister() into 2 steps. The first step of them is just update tracepoint_entry, not connect or disconnect. this patch introduces tracepoint_probe_update_all() for update all. these APIs are very useful for registering lots of probes but just updating once. Another very important thing is that *_noupdate APIs do not require module_mutex. Signed-off-by: Lai Jiangshan Acked-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 19dba33c43a2f0f2aa727ae075ec3b11330775ef Author: Lai Jiangshan Date: Tue Oct 28 10:51:49 2008 +0800 tracepoint: simplification for tracepoints using RCU Impact: simplify implementation Now, unused memory is handled by struct tp_probes. old code use these three field to handle unused memory. struct tracepoint_entry { ... struct rcu_head rcu; void *oldptr; unsigned char rcu_pending:1; ... }; in this way, unused memory is handled by struct tracepoint_entry. it bring reenter bug(it was fixed) and tracepoint.c is filled full of ".*rcu.*" code statements. this patch removes all these. and: rcu_barrier_sched() is removed. Do not need regain tracepoints_mutex after tracepoint_update_probes() several little cleanup. Signed-off-by: Lai Jiangshan Acked-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 3555105333ae55414d0fe051557bd7dc590f5255 Author: Gary Hade Date: Fri Oct 31 10:52:03 2008 -0700 x86: add memory hotremove config option Impact: enable CONFIG_MEMORY_HOTREMOVE feature on x86. (default-off) Memory hotremove functionality can currently be configured into the ia64, powerpc, and s390 kernels. This patch makes it possible to configure the memory hotremove functionality into the x86 kernel as well. Signed-off-by: Badari Pulavarty Signed-off-by: Gary Hade Signed-off-by: Ingo Molnar commit c354e1246348e25c714e6b2973f3257183d06e2c Author: Jianjun Kong Date: Mon Nov 3 00:28:02 2008 -0800 net: clean up net/ipv4/ipmr.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit 09cb105ea78d5644570d52085e2149f784575872 Author: Jianjun Kong Date: Mon Nov 3 00:27:11 2008 -0800 net: clean up net/ipv4/ip_sockglue.c tcp_output.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit a7e9ff735bd5e3437a8e5ecbbc2db3865974a523 Author: Jianjun Kong Date: Mon Nov 3 00:26:09 2008 -0800 net: clean up net/ipv4/igmp.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit 6ed2533e55889943c478d11b1f63aaed2fd767cc Author: Jianjun Kong Date: Mon Nov 3 00:25:16 2008 -0800 net: clean up net/ipv4/fib_frontend.c fib_hash.c ip_gre.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit 5a5f3a8db9d70c90e9d55b46e02b2d8deb1c2c2e Author: Jianjun Kong Date: Mon Nov 3 00:24:34 2008 -0800 net: clean up net/ipv4/ipip.c raw.c tcp.c tcp_minisocks.c tcp_yeah.c xfrm4_policy.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit d9319100c1ad7d0ed4045ded767684ad25670436 Author: Jianjun Kong Date: Mon Nov 3 00:23:42 2008 -0800 net: clean up net/ipv4/ah4.c esp4.c fib_semantics.c inet_connection_sock.c inetpeer.c ip_output.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit 5b9a0e14eb4bf40a7cb780af4723560e06753f2d Author: Cyrill Gorcunov Date: Sat Nov 1 18:06:51 2008 +0300 x86: nmi - nmi_watchdog boot param docs cleanup Impact: documentation update 1) nmi_watchdog boot parameter is common to 32/64 bit modes. So move it from Documentation/x86/x86_64/boot-options.txt to Documentation/kernel-parameters.txt and integrate with. 2) Also fix [panic] keyword placement -- it ought to be at first position otherwise it will not be recognized. 3) Document lapic and ioapic keywords. Signed-off-by: Cyrill Gorcunov Signed-off-by: Ingo Molnar commit d9e540762f5cdd89f24e518ad1fd31142d0b9726 Author: Peter Zijlstra Date: Sat Nov 1 19:57:37 2008 +0100 ftrace: ftrace_dump_on_oops=[tracer] Impact: add new (optional) debug boot option In order to facilitate early boot trouble, allow one to specify a tracer on the kernel boot line. Signed-off-by: Peter Zijlstra Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 36609469c8278554b046aa4cc9a5fa9ccea35306 Merge: b3acf29... 45beca0... Author: Ingo Molnar Date: Mon Nov 3 09:11:13 2008 +0100 Merge commit 'v2.6.28-rc3' into tracing/ftrace commit 8bb8c4386d08f2cc5d871d22f220d35032213f84 Author: Peter Zijlstra Date: Sat Nov 1 00:13:49 2008 +0100 sched, ftrace: trace sched.c Impact: allow function tracing within sched.c Its useful to see what happens in sched.c. Signed-off-by: Peter Zijlstra Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit db5935001a43528e673ad26ffec9d98c60a496a9 Merge: 34f3a81... 45beca0... Author: Ingo Molnar Date: Mon Nov 3 08:57:41 2008 +0100 Merge commit 'v2.6.28-rc3' into sched/core commit e0db4a786bbd73145b4feb45c75d49b6e60fe72c Author: David S. Miller Date: Sun Nov 2 23:57:06 2008 -0800 sunrpc: Fix build warning due to typo in %pI4 format changes. Noticed by Stephen Hemminger. Signed-off-by: David S. Miller commit 20971a0afb8bc0eeb6865ceadd435e4a2dba0fd7 Author: Julius Volz Date: Sat Nov 1 13:13:19 2008 +0000 IPVS: Add IPv6 support to SH and DH schedulers Add IPv6 support to SH and DH schedulers. I hope this simple IPv6 address hashing is good enough. The 128 bit are just XORed into 32 before hashing them like an IPv4 address. Signed-off-by: Julius Volz Acked-by: Simon Horman Signed-off-by: David S. Miller commit 2a6cf35543302e9a5c807eaf13298f510fbdf8f2 Merge: 8ba25da... 3f8b4b1... Author: David S. Miller Date: Sun Nov 2 13:13:07 2008 -0800 Merge branch 'davem-next' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit 3f8b4b13785c2737413d3241c21c7c86a41535ef Author: Andy Gospodarek Date: Wed Oct 22 11:19:48 2008 +0000 bonding: update docs to correctly reflect arp_ip_target behavior This documentation patch hopes to clarify that the '+' was only needed for Fedora 7 and Red Hat Enterprise Linux 5.0 and 5.1. After that the IP addreses could be added as a comma separated list just like the module option. Signed-off-by: Andy Gospodarek Signed-off-by: Jeff Garzik commit 237f3e1d80bb9d4c6eaf684552f422568ba04ffe Author: Mike Frysinger Date: Fri Oct 31 22:11:06 2008 +0000 smc91x: add __init markings to smc_drv_probe() The smc_drv_probe() is the platform_driver probe function and it is only called during init. Further, it calls smc_probe() which is marked as __init already. Signed-off-by: Mike Frysinger Signed-off-by: Jeff Garzik commit dccd547e2bf2c01a13c967ae03a705338394fad6 Author: Joe Korty Date: Wed Oct 29 14:22:16 2008 -0700 forcdeth: increase max_interrupt_work This eliminates the following often-generated warning from my 64 bit Opteron SMP test stand: eth0: too many iterations (6) in nv_nic_irq According to the web, the problem is that the forcedeth driver has a too-low value for max_interrupt_work. Grepping the kernel I see that forcedeth has the second lowest value of all ethernet drivers (ie, 6). Most are in the 20-40 range. So this patch increases this a bit, from 6 to 15 (at 15 forcedeth becomes the driver with third-lowest max_interrupt_work value). My test stand, which used to print out the above warnings repetitively whenever it was under heavy net load, no longer does so. Signed-off-by: Joe Korty Cc: Ayaz Abdulla Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 0befdb3e0a26a8949063915274e1bec8873c526b Author: Jesse Brandeburg Date: Fri Oct 31 00:46:40 2008 -0700 ixgbe: add device support for 82598AT (copper 10GbE) adapters Intel is currently shipping support for adapters with a phy that does 10GBase-T (copper), which is 10 Gigabit ethernet over standard Category 6 cabling. Signed-off-by: Jesse Brandeburg Signed-off-by: Jeff Kirsher Signed-off-by: Jeff Garzik commit e053b628d367cd7b39ae2c4bb0124edc2e058a41 Author: Stephen Hemminger Date: Fri Oct 31 16:52:04 2008 -0700 atlx: timer cleanup Do some cleanup on timer usage in this driver: * Use round_jiffies to align wakeups and reduce power. * Remove atl1_watchdog which does nothing but rearm itself * Use setup_timer() function Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 02e7173149c3ffcf963075ec2bdc5f7be8335a78 Author: Stephen Hemminger Date: Fri Oct 31 16:52:03 2008 -0700 atlx: use embedded net_device_stats There is now a net_device_stats structure inside net_device that should be used if possible by devices. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 8ba25dad0ac78850cd46d91186a27d60f7314752 Author: Jarek Poplawski Date: Sun Nov 2 00:36:03 2008 -0700 sch_netem: Replace ->requeue() method with open code After removing netem classful functionality we are sure its inner qdisc is tfifo, so we can replace qdisc->ops->requeue() method with open code. After this patch there are no more ops->requeue() users. The idea of this patch is by Patrick McHardy. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 02201464119334690fe209849843881b8e9cfa9f Author: Jarek Poplawski Date: Sun Nov 2 00:35:24 2008 -0700 sch_netem: Remove classful functionality Patrick McHardy noticed that: "a lot of the functionality of netem requires the inner tfifo anyways and rate-limiting is usually done on top of netem. So I would suggest so either hard-wire the tfifo qdisc or at least make the assumption that inner qdiscs are work-conserving.", and later: "- a lot of other qdiscs still don't work as inner qdiscs of netem [...]". So, according to his suggestion, this patch removes classful options of netem. The main reason of this change is to remove ops->requeue() method, which is currently used only by netem. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit ae27e98a51526595837ab7498b23d6478a198960 Author: Sangtae Ha Date: Wed Oct 29 00:07:18 2008 -0400 [TCP] CUBIC v2.3 Signed-off-by: Sangtae Ha Signed-off-by: David S. Miller commit e27dfcea48372a4105d9fdf2e8450926737f6215 Author: Jianjun Kong Date: Sat Nov 1 21:38:31 2008 -0700 af_unix: clean up net/unix/af_unix.c garbage.c sysctl_net_unix.c clean up net/unix/af_unix.c garbage.c sysctl_net_unix.c Signed-off-by: Jianjun Kong Signed-off-by: David S. Miller commit c37ccc0d4e2a4ee52f1a40cff1be0049f2104bba Author: Eric Dumazet Date: Sat Nov 1 21:19:18 2008 -0700 udp: add a missing smp_wmb() in udp_lib_get_port() Corey Minyard spotted a missing memory barrier in udp_lib_get_port() We need to make sure a reader cannot read the new 'sk->sk_next' value and previous value of 'sk->sk_hash'. Or else, an item could be deleted from a chain, and inserted into another chain. If new chain was empty before the move, 'next' pointer is NULL, and lockless reader can not detect it missed following items in original chain. This patch is temporary, since we expect an upcoming patch to introduce another way of handling the problem. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 7e3a42a12c4b9d99bfe81cb929cadf0e08a37c49 Author: Nicolas Dichtel Date: Sat Nov 1 21:12:07 2008 -0700 xfrm6: handling fragment RFC4301 Section 7.1 says: "7.1. Tunnel Mode SAs that Carry Initial and Non-Initial Fragments All implementations MUST support tunnel mode SAs that are configured to pass traffic without regard to port field (or ICMP type/code or Mobility Header type) values. If the SA will carry traffic for specified protocols, the selector set for the SA MUST specify the port fields (or ICMP type/code or Mobility Header type) as ANY. An SA defined in this fashion will carry all traffic including initial and non-initial fragments for the indicated Local/Remote addresses and specified Next Layer protocol(s)." But for IPv6, fragment is treated as a protocol. This change catches protocol transported in fragmented packet. In IPv4, there is no problem. Signed-off-by: Nicolas Dichtel Signed-off-by: David S. Miller commit 395628ef4ea12ff0748099f145363b5e33c69acb Author: Alok Kataria Date: Fri Oct 24 17:22:01 2008 -0700 x86: Skip verification by the watchdog for TSC clocksource. Impact: Changes timekeeping on Vmware (or with tsc=reliable). This is achieved by resetting the CLOCKSOURCE_MUST_VERIFY flag. We add a tsc=reliable commandline option to enable this. This enables legacy hardware without HPET, LAPIC, or ACPI timers to enter high-resolution timer mode. Along with that have extended this to be used in virtualization environement too. Now we also set this flag if the X86_FEATURE_TSC_RELIABLE bit is set. This is important since there is a wrap-around problem with the acpi_pm timer. The acpi_pm counter is just 24bits and this can overflow in ~4 seconds. With the NO_HZ kernels in virtualized environment, there can be situations when the guest is descheduled for longer duration, as a result we may miss the wrap of the acpi counter. When TSC is used as a clocksource and acpi_pm timer is being used as the watchdog clocksource this error in acpi_pm results in TSC being marked as unstable, and essentially results in time dropping in chunks of 4 seconds whenever this wrap is missed. Since the virtualized TSC is reliable on VMware, we should always use the TSCs clocksource on VMware, so we skip the verfication at runtime, by checking for the feature bit. Since we reset the flag for mgeode systems too, i have combined the mgeode case with the feature bit check. Signed-off-by: Jeff Hansen Signed-off-by: Alok N Kataria Signed-off-by: Dan Hecht Signed-off-by: H. Peter Anvin commit eca0cd028bdf0f6aaceb0d023e9c7501079a7dda Author: Alok Kataria Date: Fri Oct 31 12:01:58 2008 -0700 x86: Add a synthetic TSC_RELIABLE feature bit. Impact: Changes timebase calibration on Vmware. Use the synthetic TSC_RELIABLE bit to workaround virtualization anomalies. Virtual TSCs can be kept nearly in sync, but because the virtual TSC offset is set by software, it's not perfect. So, the TSC synchronization test can fail. Even then the TSC can be used as a clocksource since the VMware platform exports a reliable TSC to the guest for timekeeping purposes. Use this bit to check if we need to skip the TSC sync checks. Along with this also set the CONSTANT_TSC bit when on VMware, since we still want to use TSC as clocksource on VM running over hardware which has unsynchronized TSC's (opteron's), since the hypervisor will take care of providing consistent TSC to the guest. Signed-off-by: Alok N Kataria Signed-off-by: Dan Hecht Signed-off-by: H. Peter Anvin commit 88b094fb8d4fe43b7025ea8d487059e8813e02cd Author: Alok Kataria Date: Mon Oct 27 10:41:46 2008 -0700 x86: Hypervisor detection and get tsc_freq from hypervisor Impact: Changes timebase calibration on Vmware. v3->v2 : Abstract the hypervisor detection and feature (tsc_freq) request behind a hypervisor.c file v2->v1 : Add a x86_hyper_vendor field to the cpuinfo_x86 structure. This avoids multiple calls to the hypervisor detection function. This patch adds function to detect if we are running under VMware. The current way to check if we are on VMware is following, # check if "hypervisor present bit" is set, if so read the 0x40000000 cpuid leaf and check for "VMwareVMware" signature. # if the above fails, check the DMI vendors name for "VMware" string if we find one we query the VMware hypervisor port to check if we are under VMware. The DMI + "VMware hypervisor port check" is needed for older VMware products, which don't implement the hypervisor signature cpuid leaf. Also note that since we are checking for the DMI signature the hypervisor port should never be accessed on native hardware. This patch also adds a hypervisor_get_tsc_freq function, instead of calibrating the frequency which can be error prone in virtualized environment, we ask the hypervisor for it. We get the frequency from the hypervisor by accessing the hypervisor port if we are running on VMware. Other hypervisors too can add code to the generic routine to get frequency on their platform. Signed-off-by: Alok N Kataria Signed-off-by: Dan Hecht Signed-off-by: H. Peter Anvin commit 49ab56ac6e1b907b7dadb72a4012460359feaf0e Author: Alok Kataria Date: Sat Nov 1 18:34:37 2008 -0700 x86: add X86_FEATURE_HYPERVISOR feature bit Impact: Number declaration only. Add X86_FEATURE_HYPERVISOR bit (CPUID level 1, ECX, bit 31). Signed-off-by: H. Peter Anvin commit 4074ea21493fe668501bfc7548d10657ca6f14c2 Author: Takashi Iwai Date: Sat Nov 1 11:01:50 2008 +0100 ALSA: ice1724 - Fix IRQ register initialization The IRQMASK register has to be set to zero expclitily at the initialization otherwise you'll get no interrupts properly at later operations. Also, removed the old commented out codes. Signed-off-by: Takashi Iwai commit e25cf4a6945e0f859186231be7164ba565412e0a Author: Johannes Berg Date: Thu Oct 23 08:51:20 2008 +0200 mac80211: fix two kernel-doc warnings One parameter wasn't described and one I forgot to update when renaming it; also update TBDs in sta_info. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 4c2442980043b9585be12b4f59e1bbe7e1f7a801 Author: Luis R. Rodriguez Date: Mon Oct 27 10:17:29 2008 -0700 ath9k: use ETH_P_PAE It was being discussed where we would put this, but now it found a home so use its define. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 9371dd685d212599f0f07e6bf1510c751f70bb37 Author: Bob Copeland Date: Sun Oct 26 11:24:48 2008 -0400 ath9k: remove useless conditional ath9k_hw_keyreset returns true in either branch. Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit 4fb30784c720b863203957f76e3fde0d53932746 Author: Andrey Borzenkov Date: Sun Oct 19 12:06:11 2008 +0400 orinoco: cache downloadable firmware image in memory for use during resume If card is using downloadable firmware (like Agere 9.x), firmware has to be reloaded during resume. It is not possible to use request_firmware for that, because tasks are still frozen, so request_firmware will just timeout and fail. So cache firmware image in memory for later reuse in ->resume method. Signed-off-by: Andrey Borzenkov Signed-off-by: John W. Linville commit 0df6cbb7d8a0a8fea69138e9e463671a8ad99f16 Author: Andrey Borzenkov Date: Sun Oct 12 20:15:43 2008 +0400 orinoco: reload firmware on resume On resume card state is likely lost so we have to reload firmware again. Signed-off-by: Andrey Borzenkov Acked-by: David Kilroy Signed-off-by: John W. Linville commit 4c674c60bd567597f1224973712b352f4f474890 Author: Nick Kossifidis Date: Sun Oct 26 20:40:25 2008 +0200 ath5k: Update interrupt masking code *Properly get/set all available ISR/IMR values and review common/uncommon bits *Better handling of per-txq interrupts (we can now resolve what q is generating each interrupt -this will help in debuging wme later) *Some minor updates from legacy-hal *Properly handle RXNOFRM and TXNOFRM interrupt masking (even when we don't set them on IMR they keep showing up, so we disable them by zeroing AR5K_RXNOFRM and AR5K_TXNOFRM registers). This doesn't exist on legacy-hal but i've tested it on various cards and it works fine. Changes-Licensed-under: ISC Signed-Off-by: Nick Kossifidis Signed-off-by: John W. Linville commit 84fa4f43c418d2eaad06734ea780a74c869f79c3 Author: Johannes Berg Date: Fri Oct 24 20:32:23 2008 +0200 wireless regulatory: move ignore_request This function is only used once, move it closer to its caller. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2083c4997b95fffe8d4f71741bef2298810805a3 Author: Johannes Berg Date: Fri Oct 24 20:32:22 2008 +0200 wireless: clean up regulatory ignore_request function This function has a few WARNs that may eventually trigger when an AP sends rogue beacons, those must be removed. Some of the comments in the function are also inappropriate as this function is concerned with the global hint, not a per- wiphy thing (which a multidomain flag on a wiphy would imply). I'm convinced that we don't need to do anything to implement multi-domain capability as 802.11-2007 specifies it because it makes only two things mandatory: * starting of BSS/IBSS must have country information (this can easily be done with a mac80211 patch) * a STA must adopt the country information (we already have the framework for this) But we don't have anything implemented anyway for now. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit be3d48106c1e5d075784e5e67928a6b5ffc0f3b6 Author: Johannes Berg Date: Fri Oct 24 20:32:21 2008 +0200 wireless: remove struct regdom hinting The code needs to be split out and cleaned up, so as a first step remove the capability, to add it back in a subsequent patch as a separate function. Also remove the publically facing return value of the function and the wiphy argument. A number of internal functions go from being generic helpers to just being used for alpha2 setting. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d2372b315289aec9f565a855023c40654a5bff68 Author: Johannes Berg Date: Fri Oct 24 20:32:20 2008 +0200 wireless: make regdom passing semantics simpler The regdom struct is given to the core, so it might as well free it in error conditions. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7dddaf1a36a372c14ca96a0b5fdfbe2015c43841 Author: Daniel Halperin Date: Thu Oct 23 23:48:58 2008 -0700 iwlwifi: Update reclaim flag The reclaim flag should include REPLY_RX_MPDU_CMD in the list of commands issued by uCode. This is for safety in case the SEQ_RX_FRAME bit is set incorrectly. Signed-off-by: Daniel Halperin Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9fe1c5052019da3d2770abd7b727cbc1083f7937 Author: Fabrice Bellet Date: Thu Oct 23 23:48:57 2008 -0700 iwl3945: iwl3945_mac_get_tsf() should not return zero The problem fixed here is that iwl3945_mac_get_tsf() returns 0, as the function is not implemented, and this is considered as a valid value by the mac layer in mlme.c:1605. The consequence is that the STA in ad-hoc mode is inserted/removed quite frequently due to IBSS merging. This patch fixes : http://www.intellinuxwireless.org/bugzilla/show_bug.cgi?id=1781 and https://bugzilla.redhat.com/show_bug.cgi?id=459401 Signed-off-by: Fabrice Bellet Acked-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit a96a27f97f2bbfc1fca54bc3c0b0d41484152740 Author: Tomas Winkler Date: Thu Oct 23 23:48:56 2008 -0700 iwlwifi: run through spell checker Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 127901ab69bbb263fb2b46e850cf20c57ac321d3 Author: Tomas Winkler Date: Thu Oct 23 23:48:55 2008 -0700 iwlwifi: refactor tx byte count table usage This patch drops unreadable usage of IWL_SET/GET_BITS16 in byte count tables handling This patch also cleans a bit the byte count table code and adds WARN_ON traps on invalid values This patch is pure cleanup, no functional changes. Signed-off-by: Tomas Winkler Cc: Johannes Berg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 951891c7ef844919d30aac7b1fc7396fd8be23ff Author: Mohamed Abbas Date: Thu Oct 23 23:48:54 2008 -0700 iwlwifi: clear scanning bits upon failure In iwl_bg_request_scan function, if we could not send a scan command it will go to done. In done it does the right thing to call mac80211 with scan complete, but the problem is STATUS_SCAN_HW is still set causing any future scan to fail. Fix by clearing the scanning status bits if scan fails. Signed-off-by: Mohamed Abbas Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 60d32215a94ebba2517b8d92612200ab610943fd Author: Daniel C. Halperin Date: Thu Oct 23 23:48:53 2008 -0700 iwlwifi: convert correctly rate_n_flags to PLCP index for mimo3 packets The driver does not properly convert rate_n_flags to PLCP index for mimo3 packets. This makes mac80211 drop the packets Signed-off-by: Daniel C. Halperin Reviewed-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit f69f42a6bbefb311ccb1626fdb61f723160afbfd Author: Tomas Winkler Date: Thu Oct 23 23:48:52 2008 -0700 iwlwifi: calibration command namespace renaming Since calibration framework is not HW specific remove 5000 and 4965 prefix This patch doesn't provide any functional changes only code renaming and movement Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 0ef2ca67b19e2286eed8eeb7ef7a35ce57d6d629 Author: Tomas Winkler Date: Thu Oct 23 23:48:51 2008 -0700 iwlwifi: parametrize eeprom versions This patch uses new parameters eeprom_ver and eeprom_calib_ver to support additional HW. Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit ed7fafec5e566a30fb21586c98cbef76c306d209 Author: Tomas Winkler Date: Thu Oct 23 23:48:50 2008 -0700 iwlwifi: don't update TFD free counter for invalid station This patch makes sure that station table is not accessed with invalid station id in 4965 TX response path Signed-off-by: Tomas Winkler Reported-by: Johannes Berg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3fd07a1e5aba89d4be3696c46cb7297f1873195a Author: Tomas Winkler Date: Thu Oct 23 23:48:49 2008 -0700 iwlwifi: refactor TX response flow This patch utilize 5000 new TX response command which contains all necessary information and avoids back referencing to the original TX frame. It also change handling of software queue tracking 4965 flow is aligned with changes as much as possible. Signed-off-by: Tomas Winkler Reviewed-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 8b30b1fe368ab03049435884c11c5c50e4c4ef0b Author: Sujith Date: Fri Oct 24 09:55:27 2008 +0530 mac80211: Re-enable aggregation Wireless HW without any dedicated queues for aggregation do not need the ampdu_queues mechanism present right now in mac80211. Since mac80211 is still incomplete wrt TX MQ changes, do not allow aggregation sessions for drivers that set ampdu_queues. This is only an interim hack until Intel fixes the requeue issue. Signed-off-by: Sujith Signed-off-by: Luis Rodriguez Signed-off-by: John W. Linville commit 4393dce9402c58744433c7a4f3931e17ddde4fb4 Author: Andrey Yurovsky Date: Thu Oct 23 13:10:53 2008 -0700 mac80211: allow all interfaces types to handle RX action frames Eliminate the vif.type check in ieee80211_rx_h_action. This check is unnecessary (these action frames can be handled by all interface types) and currently prevents, for example, AP interfaces from handling BACK action frames such as ADDBA and DELBA requests. Signed-off-by: Andrey Yurovsky Acked-by: Johannes Berg Signed-off-by: John W. Linville commit f3e63db2e5998bf01852c72d8fa3d8cf988fb6cd Author: Johannes Berg Date: Thu Oct 23 09:40:01 2008 +0200 wireless: remove write-only 'granted' variable Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit a4510bf8d96698496d7d2bb242917b4bbfa9bf28 Author: Sujith Date: Thu Oct 23 12:15:19 2008 +0530 ath9k: Check if the STA supports HT when initializing rate control Signed-off-by: Sujith Signed-off-by: John W. Linville commit 075cbc9eb15da8f4cba7c7eaadedd8b030d3a87a Author: Sujith Date: Thu Oct 23 12:14:02 2008 +0530 mac80211: Change WARN_ON to WARN_ON_ONCE A warning would be printed for every packet that is transmitted if the rate control information isn't setup. Change this to WARN_ON_ONCE. Signed-off-by: Sujith Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 5c020dc6a0f75de3cd75d9cca3b589abc1826fc5 Author: Luis R. Rodriguez Date: Wed Oct 22 13:28:45 2008 -0700 ath9k: Allow user to change tx power when asked We were also changing tx power even when we were not asked to, this enforces the change only when we are asked nicely. When not asked we simply try to use the max power, we don't tx power at all for rate control. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit f97e40078e44c1db96269286adc0b12dc8eae3c2 Author: Luis R. Rodriguez Date: Wed Oct 22 13:28:44 2008 -0700 ath9k: enable RX interrupt mitigation This enables hardware interrupt mitigation on RX. It should alleviate system interrupt load intelligently. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit b139a10a0aaf3c8041af348c2268d59e1610dc83 Author: Luis R. Rodriguez Date: Wed Oct 22 13:28:43 2008 -0700 ath9k: remove pointless sc_txintrperiod and spin_lock_bh on tx prepare sc_txintrperiod is currently set to 0 and never updated. We won't be using this, if anything we will consider using TX interrupt mitigation but that is different and not yet tested. So remove sc_txintrperiod and the pointless spin_lock_bh() on tx prepare. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d9d2925713d92bbe33b2edff3d7de1ce5646ab54 Author: Luis R. Rodriguez Date: Wed Oct 22 13:13:53 2008 -0700 mac80211: make use of regulatory tx power settings on change of tx power We do not know what max power to allow until a device is targeting a channel, therefore only allow changing tx power if a channel is defined. Also make use of the channel's max power setting as defined by regulatory rules before allowing the user to use the requested power setting. If the user asked us to figure it out we use the max allowed by regulatory. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit e2ef12d3fdb771002e7c7b6bd8f19902b1934e03 Author: Rami Rosen Date: Wed Oct 22 09:58:39 2008 +0200 mac80211: check return value of dev_alloc_skb() in ieee80211_sta_join_ibss(). This patch add a check on the return value of dev_alloc_skb() in ieee80211_sta_join_ibss() in net/mac80211/mlme.c. Signed-off-by: Rami Rosen Signed-off-by: John W. Linville commit 72118015271e6d3852cb9f647efe0987d131adaa Author: John W. Linville Date: Tue Sep 30 21:43:03 2008 -0400 wireless: avoid some net/ieee80211.h vs. linux/ieee80211.h conflicts There is quite a lot of overlap in definitions between these headers... Signed-off-by: John W. Linville commit 9387b7caf3049168fc97a8a9111af8fe2143af18 Author: John W. Linville Date: Tue Sep 30 20:59:05 2008 -0400 wireless: use individual buffers for printing ssid values Also change escape_ssid to print_ssid to match print_mac semantics. Signed-off-by: John W. Linville commit 2819f8ad6da1e24b5dd94a221978e61f2a9c972a Author: John W. Linville Date: Tue Sep 30 17:50:31 2008 -0400 wireless: escape_ssid should handle non-printables Also use common backslash sequences like \t, \n, \r, and \\ as well as \0. Signed-off-by: John W. Linville commit c5d3dce875ef055ed9b14f169cc967cc2c8faf1f Author: John W. Linville Date: Tue Sep 30 17:17:26 2008 -0400 wireless: remove NETWORK_EMPTY_ESSID flag It is unnecessary and of questionable value. Also remove is_empty_ssid, as it is also unnecessary. Signed-off-by: John W. Linville commit 7e272fcff6f0a32a3d46e600ea5895f6058f4e2d Author: John W. Linville Date: Wed Sep 24 18:13:14 2008 -0400 wireless: consolidate on a single escape_essid implementation Signed-off-by: John W. Linville commit ddf4ac53fb8a12a027c0486db743ae040f45b56a Author: Johannes Berg Date: Wed Oct 22 11:41:38 2008 +0200 mac80211: insert AP sta entry after filling it We never clearly defined the semantics of the sta_notify callback and it was originally posted for iwlwifi which still doesn't use it at all. With the recent HT rework ath9k started relying on it, but I made a mistake there in that I made ath9k assume the HT information has already been filled in at sta_notify time. This isn't a hard thing to do, so do it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit cfa3fa405a5eafd5d5c53b18abc00ca998c35eef Author: Zhaolei Date: Wed Oct 22 17:07:25 2008 +0800 Fix debugfs_create_*'s error checking method for wireless/rt2x00/ debugfs_create_*() returns NULL if an error occurs, returns -ENODEV when debugfs is not enabled in the kernel. Signed-off-by: Zhao Lei Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9b24001db145cf1da76a479918373c18aa10bb4b Author: Zhaolei Date: Wed Oct 22 17:06:12 2008 +0800 Fix debugfs_create_bool's error checking method for wireless/iwlwifi/ debugfs_create_bool() returns NULL if an error occurs, returns -ENODEV when debugfs is not enabled in the kernel. Signed-off-by: Zhao Lei Signed-off-by: John W. Linville commit ac9440a4e4b284d3469120f0e049dff7c73c72a4 Author: Johannes Berg Date: Tue Oct 21 11:08:27 2008 +0200 wireless: fix EU check http://en.wikipedia.org/wiki/De_Morgan%27s_laws is useful. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit f6037d09e2b58e5483ab63f75d4d57ae70f9ae6a Author: Johannes Berg Date: Tue Oct 21 11:01:33 2008 +0200 wireless: get rid of pointless request list We really only need to know the last request at each point in time. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit f3b407fba52e1b86ca286ee7c218a4fb00bd29e0 Author: Johannes Berg Date: Tue Oct 21 09:57:41 2008 +0200 wireless: remove cfg80211_reg_mutex This mutex is wrong, we use cfg80211_drv_mutex (which should possibly be renamed to just cfg80211_mutex) everywhere except in one place, fix that and get rid of the extra mutex. Also get rid of a spurious regulatory_requests list definition. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit cf03268e6ed6cfacaa5e32db41ea832c4d10438b Author: Johannes Berg Date: Tue Oct 21 09:42:38 2008 +0200 wireless: don't publish __regulatory_hint This function requires an internal lock to be held, so it cannot be published to other modules in the kernel. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e37d4dffdffb7f834bd28d4ae8e3dcdf07fce508 Author: Bob Copeland Date: Mon Oct 20 21:20:27 2008 -0400 mac80211: fix a few typos in mac80211 kernel doc Correct a handful of errors found while reading the mac80211 book. Signed-off-by: Bob Copeland Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 558875112c28c7b2744a92c9836c256dd57bc5b6 Author: John Daiker Date: Fri Oct 17 12:16:17 2008 -0700 rt2x00: reduce checkpatch.pl errors A few changes to reduce checkpatch.pl errors in the rt2x00 driver. For the most part, I only fixed cosmetic things, and left the actual 'code flow' untouched (hopefully)! Diff is against wireless-testing HEAD. Signed-off-by: John Daiker Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 0bbac08f0a23898787978c0b405474e453e9824c Author: John Daiker Date: Fri Oct 17 12:16:00 2008 -0700 ath5k: reduce checkpatch.pl errors A few changes to reduce checkpatch.pl errors in the ath5k driver. For the most part, I only fixed cosmetic things, and left the actual 'code flow' untouched (hopefully)! Diff is against wireless-testing HEAD. Signed-off-by: John Daiker Reviewed-by: Bob Copeland Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 93da9cc17c5ae8a751886fd4732db89ad5e9bdb9 Author: colin@cozybit.com Date: Tue Oct 21 12:03:48 2008 -0700 Add nl80211 commands to get and set o11s mesh networking parameters The two new commands are NL80211_CMD_GET_MESH_PARAMS and NL80211_CMD_SET_MESH_PARAMS. There is a new attribute enum, NL80211_ATTR_MESH_PARAMS, which enumerates the various mesh configuration parameters. Moved struct mesh_config from mac80211/ieee80211_i.h to net/cfg80211.h. nl80211_get_mesh_params and nl80211_set_mesh_params unpack the netlink messages and ask the driver to get or set the configuration. This is done via two new function stubs, get_mesh_params and set_mesh_params, in struct cfg80211_ops. Signed-off-by: Colin McCabe Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 4a68ec535ef1043319928f601d633f78e650a16f Author: Johannes Berg Date: Thu Oct 16 21:44:44 2008 +0200 mac80211: inform userspace of probe/auth/assoc timeout I noticed that when for some reason [1] the probe or auth times out, wpa_supplicant doesn't realise this and only tries the next AP when it runs into its own timeout, which is ten seconds, and that's quite long. Fix this by making mac80211 notify userspace that it didn't associate. [1] my wrt350n in mixed B/G/HT mode often runs into this, maybe it's because one of the antennas is broken off and for whatever reason it decides to use that antenna to transmit the response frames (auth, probe); I do see beacons fine so it's not totally broken. Works fine in pure-G mode. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8216bfe2518c25f16a60485636e477c9a3b795d5 Author: Larry Finger Date: Thu Oct 16 16:44:03 2008 -0700 hostap: Fix sparse warnings A compilation with the command "make C=2 CF="-D__CHECK_ENDIAN__" \ drivers/net/wireless/hostap/" yields the following warnings: CHECK drivers/net/wireless/hostap/hostap_info.c drivers/net/wireless/hostap/hostap_info.c:156:43: warning: incorrect type in argument 2 (different signedness) drivers/net/wireless/hostap/hostap_info.c:156:43: expected unsigned long volatile *addr drivers/net/wireless/hostap/hostap_info.c:156:43: got long * drivers/net/wireless/hostap/hostap_info.c:294:44: warning: incorrect type in argument 2 (different signedness) drivers/net/wireless/hostap/hostap_info.c:294:44: expected unsigned long volatile *addr drivers/net/wireless/hostap/hostap_info.c:294:44: got long * drivers/net/wireless/hostap/hostap_info.c:487:12: warning: incorrect type in argument 2 (different signedness) drivers/net/wireless/hostap/hostap_info.c:487:12: expected unsigned long volatile *addr drivers/net/wireless/hostap/hostap_info.c:487:12: got long * drivers/net/wireless/hostap/hostap_info.c:491:12: warning: incorrect type in argument 2 (different signedness) drivers/net/wireless/hostap/hostap_info.c:491:12: expected unsigned long volatile *addr drivers/net/wireless/hostap/hostap_info.c:491:12: got long * The warnings are fixed with the following compile-tested fix: Signed-off-by: Larry Finger Acked-by: Jouni Malinen Signed-off-by: John W. Linville commit 50fb2e4572141770380f5919793c6e575fa3474b Author: Johannes Berg Date: Thu Oct 16 11:21:49 2008 +0200 mac80211: remove rate_control_clear "Clearing" the rate control algorithm is pointless, none of the algorithms actually uses this operation and it's not even invoked properly for all channel switching. Also, there's no need to since rate control algorithms work per station. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 65a0667b43ff746b2964b2a257ffff1a4747e19d Author: Tomas Winkler Date: Wed Oct 15 11:06:23 2008 -0700 iwlwifi: protect headers from double inclusion This patch protects iwl-csr.h and iwl-fh.h from double inclusion by ifndef define endif idiom Signed-off-by: Tomas Winkler Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit f4a8cd94fc43829d065aae94f6d379c6f0f1301c Author: Felix Fietkau Date: Wed Oct 15 19:13:59 2008 +0200 minstrel: improve performance for non-MRR drivers This patch enhances minstrel's performance for non-MRR setups, by preventing it from sampling slower rates with >95% success probability and by putting at least 1 non-sample frame between several sample frames. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 0a9542ee12fb57d408f19aac738e8abe8670be7a Author: Johannes Berg Date: Wed Oct 15 11:54:04 2008 +0200 nl80211: fix monitor flags NLA_NESTED attributes cannot be empty, but we want to be able to specify "no flags" (empty attribute) vs. "no change" (no attribute). Therefore, remove the NLA_NESTED policy so it can work as an empty attribute. I guess I should have used a u32 for these flags instead, but we're stuck with it now. Haven't noticed earlier because of a bug in iw... Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 27df605ebe2c106c53957dfdaee5d948f01cfc97 Author: John W. Linville Date: Wed Oct 22 16:41:55 2008 -0400 p54: integrate parts of lmac_longbow.h and other parts of stlc45xx This patch removes most/all? of the "magic" numbers and unknown structure variables inside the code and replaces them with meaningful prototypes. (Plus a one line warning fix from Larry Finger .) Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 5e73444e91889ea6c7a83bc174ef8e8b6aaeea9b Author: Christian Lamparter Date: Wed Oct 15 04:07:56 2008 +0200 p54: borrow some setup code from stlc45xx This patch initialize all remaining values which are necessary for SPI firmwares. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit b92f30d65aeb0502e2ed8beb80c8465578b40002 Author: Christian Lamparter Date: Wed Oct 15 04:07:16 2008 +0200 p54: fix memory management We have to be careful if multiple "control frames" are passed in a very short intervals to the device's firmware. As p54_assign_address always put them into same memory location. To guarantee that this won't happen anymore, we have to treat control frames like normal data frames in the devices own memory management. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 9de5776ff33a006b864341a6ec8d31f1a3c628cf Author: Christian Lamparter Date: Wed Oct 15 04:05:51 2008 +0200 p54: p54: refactor p54_rx_frame_sent the long names and the nesting in p54_rx_frame_sent really became a "line longer than 80 characters" problem. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 0f1be978910092bed5d8dac0774e5cf85d4b4e12 Author: Christian Lamparter Date: Wed Oct 15 03:56:20 2008 +0200 p54: refactor statistic timer code Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 0fdd7c5d2defe8c6873eb8a40a880eb0dc59573d Author: Christian Lamparter Date: Wed Oct 15 03:55:37 2008 +0200 p54: broken out edcf changes This patch series hopefully increases p54's "longterm" stability. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit b88b15dfbddc8837569c6dea49348791357de4aa Author: Tomas Winkler Date: Tue Oct 14 12:32:49 2008 -0700 iwlwifi: tx command must run on same tfd as packet This patch makes clear that tx command is attached to the same tfd as the tx packet Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 499b1883038a7db2dcf8b64229f8533ce2c8f0fc Author: Tomas Winkler Date: Tue Oct 14 12:32:48 2008 -0700 iwlwifi: fix TX cmd dma unmapping This patch: 1. fixes command DMA unmapping, this might be visible only on platforms where DMA unmapping is no noop such as PPC64 (not tested) 2. attaches correctly high memory part of the host command buffer 3. changes structure of TFD TB instead of describing transmit buffer (TB) tuple it describes single TB and makes code more readable on price of one unaligned access 4. eliminates using of IWL_GET/SET_BITs for TFD handling 5. renames TFD structures to mach the HW spec 6. reduces iwl_tx_info size by reserving first TB to the host command This patch should not have any visible effect on x86 32 This patch is rework of iwlwifi: fix DMA code and bugs from Johannes Berg Signed-off-by: Tomas Winkler Cc: Johannes Berg Reviewed-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 76eff18bdc5feaa53f1be33709b67df02f1d55e9 Author: Tomas Winkler Date: Tue Oct 14 12:32:45 2008 -0700 iwlwifi: unify tx antenna toggling TX antenna toggling is requested for management frames in tx and scanning. I addition toggling in scanning was incorrect; Signed-off-by: Tomas Winkler Reviewed-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 961ba60abe02517d0c8252f9befb1478f4e008a4 Author: Tomas Winkler Date: Tue Oct 14 12:32:44 2008 -0700 iwlwifi: add iwl_cmd_queue_free for readability This patch adds iwl_cmd_queue_free function and separate cmd queue freeing from regular tx queue freeing. This improves readability and adds one more step in restructuring of cmd queue handling Signed-off-by: Tomas Winkler Reviewed-by: Zhu Yi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3257e5d4eb418e4656542207720aef5f0f547701 Author: Tomas Winkler Date: Tue Oct 14 12:32:43 2008 -0700 iwlwifi: remove host commands structures from iwl_cmd This patch removes host commands structures from iwl_cmd to make more HW oblivious tx cmd was left it needs special treatment. Signed-off-by: Tomas Winkler Reviewed-by: Zhu Yi Signed-off-by: John W. Linville commit 56e1261596334e60210fb8ecd9eb6a3db53aba94 Author: Jay Sternberg Date: Tue Oct 14 12:32:42 2008 -0700 iwlwifi: expand error lookup and align output change desc_lookup from hard coded switch to a simple lookup table and expand list to include all errors. Also corrected output using this string so info is aligned and easier to read when debugging issues. Signed-off-by: Jay Sternberg Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 4e062f99af771173b601742b0c1c98eb4d52ea08 Author: Jay Sternberg Date: Tue Oct 14 12:32:41 2008 -0700 iwlwifi: define firmware file name once string repeated for definition of ucode firmware file and in preparation for multiple firmware files need to consolidate location for their definition. Signed-off-by: Jay Sternberg Acked-by: Tomas Winkler Signed-off-by: John W. Linville commit 4acf07497140b1504a799d6a1b4da7d1b1e35af5 Author: Johannes Berg Date: Tue Oct 14 19:49:22 2008 +0200 make ieee80211 invisible This makes CONFIG_IEEE80211 invisible. The drivers that require it (ipw2100, ipw2200, hostap) select it, and everybody else really shouldn't even think about using it. Also, since there really is no point in compiling anything without crypto support these days, remove the crypto options and just enable them, leaving only the debugging option which only shows up when a driver is select that requires it. This makes it hard to enable, but most people wouldn't want to anyway. Signed-off-by: Johannes Berg Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit 5c7f9b7363bfd10e40cf1a28dfc9048417df7028 Author: Tim Gardner Date: Tue Oct 14 10:38:03 2008 -0600 ipw2x00: change default policy for auto-associate Do not attempt association until directed to do so by a user space application. In particular, this avoids race conditions with NetworkManager association state. Signed-off-by: Tim Gardner Acked-by: Dan Williams Signed-off-by: John W. Linville commit c12abae333ac550acacf9d324ed54b7d17ead0c0 Author: Johannes Berg Date: Tue Oct 14 16:56:51 2008 +0200 p54: implement MRR This implements multi-rate retry in p54. With lots of help and testing from Christian and the limiting idea from nbd. Signed-off-by: Johannes Berg Cc: Christian Lamparter Signed-off-by: John W. Linville commit e6a9854b05c1a6af1308fe2b8c68f35abf28a3ee Author: Johannes Berg Date: Tue Oct 21 12:40:02 2008 +0200 mac80211/drivers: rewrite the rate control API So after the previous changes we were still unhappy with how convoluted the API is and decided to make things simpler for everybody. This completely changes the rate control API, now taking into account 802.11n with MCS rates and more control, most drivers don't support that though. Signed-off-by: Felix Fietkau Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit cb121bad67a32cde37adc2729b7e18aa4fd3063e Author: Johannes Berg Date: Tue Oct 14 16:38:55 2008 +0200 mac80211: add might_sleep to hw_config Just to catch bugs when changing mac80211. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit faf3994a9f65fd95a68bbcc03c318a427cd1e7d3 Author: Wang Chen Date: Tue Oct 14 13:30:33 2008 +0800 airo: Kill directly reference of netdev->priv We have some reasons to kill netdev->priv: 1. netdev->priv is equal to netdev_priv(). 2. netdev_priv() wraps the calculation of netdev->priv's offset, obviously netdev_priv() is more flexible than netdev->priv. But we cann't kill netdev->priv, because so many drivers reference to it directly. OK, becasue Dave S. Miller said, "every direct netdev->priv usage is a bug", and I want to kill netdev->priv later, I decided to convert all the direct reference of netdev->priv first. In this driver, I don't simply use netdev_priv() to replace netdev->priv. The reason is: Pointer netdev->priv was changed in this driver, but it shouldn't. Because the memory was allocated when alloc_netdev() and netdev->priv should always point to that memory. So I use netdev->ml_priv to replace netdev->priv. After replacing, both ai and ai->wifidev->ml_priv point to the same memory. Signed-off-by: Wang Chen Cc: John W. Linville Cc: Dan Williams Signed-off-by: John W. Linville commit b706e65b40417e03c2451bb3f92488f3736843fa Author: Andrey Yurovsky Date: Mon Oct 13 18:23:07 2008 -0700 ath5k: fix mesh point operation This patch fixes mesh point operation (thanks to YanBo for pointing out the problem): make mesh point interfaces start beaconing when they come up and configure the RX filter in mesh mode so that mesh beacons and action frames are received. Add mesh point to the check in ath5k_add_interface. Tested with multiple AR5211 cards. Signed-off-by: Andrey Yurovsky Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit 6e0e0bf80c963d83f511e1cda652630cf31ebf85 Author: Luis R. Rodriguez Date: Mon Oct 13 14:08:10 2008 -0700 ath5k: correct ath5k signal quality This adjusts ath5k's signal quality reporting taking into consideration received beacons at an RSSI of 35 should indicate you can use of 54 Mbps on a single stream card (all ath5k cards) reliably. Signed-off-by: Luis R. Rodriguez Acked-by: Nick Kossifidis Signed-off-by: John W. Linville commit c49d154a800c55b8948e6d34563e593b500b31b9 Author: Luis R. Rodriguez Date: Mon Oct 13 14:08:09 2008 -0700 ath9k: correct signal quality report This adjusts ath9k's signal quality reporting taking into consideration received beacons at an RSSI of 45 should indicate you can use of MCS 15 rate (144 Mbps) reliably on dual stream card. Keep in mind mac80211 does not yet have aggregation fixed but this should still provide more accurate results. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 4fe0657ed41590ea4c2d4920c76836cb4a483caf Author: Luis R. Rodriguez Date: Mon Oct 13 14:08:07 2008 -0700 ath5k/ath9k: correct signal quality Now that we officially are supporting ath5k I can do this at work hours. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit f8288317b5076fde0bb4e91cd4754379c850be7a Author: Herton Ronaldo Krzesinski Date: Mon Oct 13 18:11:00 2008 +0000 rtl8187: add short slot handling for 8187B This change adds short slot handling for 8187B variant of rtl8187 chips. Some things to note about changes done: * Values used are chosen to met 802.11-2007 spec. This raised a question about SIFS value used with 8187L: 0x22 (34) doesn't match any spec value. For now just don't change 8187L, but is something to be looked at. * On 8187B, the location of EIFS register is at the same place as BRSR+1 of struct rtl818x_csr. Unfortunately there is no clean way to accomodate 8187B differences currently, just use address of BRSR+1 and comment about it. The same thing happens for Ack timeout register, that is on CARRIER_SENSE_COUNTER location of 8187L. The eifs and ack timeout values are in units of 4us. All these registers information was gathered from references being the vendor gpl driver and 8180 datasheet, unfortunately there is no information about this on 8187B datasheet. Also the ack timeout value was inspired by the same calculation as done on rt2x00. Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: John W. Linville commit 64761077f815660276f69b497edb9842d880df9a Author: Herton Ronaldo Krzesinski Date: Mon Oct 13 18:10:59 2008 +0000 rtl8187: adapt for deprecated IEEE80211_CONF_SHORT_SLOT_TIME flag This updates 8187L handling for short slot after "mac80211: fix short slot handling". For 8187B, there was no handling done for short slot timing so nothing done, support for it will come in a following patch. Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: John W. Linville commit da966bcae70e4012b7d999820b728dd6502047e0 Author: Jiri Slaby Date: Sun Oct 12 22:54:10 2008 +0200 Ath5k: add AP mode Add support for AP mode. This involves: - enablement in ath5k_beacon_config -- initialize beacon timer - add AP to the supported modes in ath5k_add_interface - handle beacon change even for AP in ath5k_config_interface - remove useless test for IBSS in ath5k_beacon_update Note that it doesn't enable the AP mode for the driver. It must be enabled by NL80211_IFTYPE_AP bit added to interface_modes. v2: Fixed opmode constant (IEEE80211_ to NL80211_) Signed-off-by: Jiri Slaby Cc: Nick Kossifidis Cc: Luis R. Rodriguez Signed-off-by: John W. Linville commit 7eb27af766e4a1db3dbc02a5b3d175885bf2ce93 Author: Johannes Berg Date: Sun Oct 12 00:39:55 2008 +0200 p54/rtl8187: fix up the seqno patch Sorry about that, for some reason I didn't notice that I'd left some unused variables in there. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit ae5eb02641233a4e9d1b92d22090f1b1afa14466 Author: Johannes Berg Date: Tue Oct 14 16:58:37 2008 +0200 mac80211: rewrite HT handling The HT handling has the following deficiencies, which I've (partially) fixed: * it always uses the AP info even if there is no AP, hence has no chance of working as an AP * it pretends to be HW config, but really is per-BSS * channel sanity checking is left to the drivers * it generally lets the driver control too much HT enabling is still wrong with this patch if you have more than one virtual STA mode interface, but that never happens currently. Once WDS, IBSS or AP/VLAN gets HT capabilities, it will also be wrong, see the comment in ieee80211_enable_ht(). Additionally, this fixes a number of bugs: * mac80211: ieee80211_set_disassoc doesn't notify the driver any more since the refactoring * iwl-agn-rs: always uses the HT capabilities from the wrong stuff mac80211 gives it rather than the actual peer STA * ath9k: a number of bugs resulting from the broken HT API I'm not entirely happy with putting the HT capabilities into struct ieee80211_sta as restricted to our own HT TX capabilities, but I see no cleaner solution for now. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit bda3933a8aceedd03e0dd410844bd310033ca756 Author: Johannes Berg Date: Sat Oct 11 01:51:51 2008 +0200 mac80211: move bss_conf into vif Move bss_conf into the vif struct so that drivers can access it during ->tx without having to store it in the private data or similar. No driver updates because this is only for when they want to start using it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 9124b07740c51cbc6e358dd0c4abc6ee8ded084d Author: Johannes Berg Date: Tue Oct 14 19:17:54 2008 +0200 mac80211: make retry limits part of hw config Instead of having a separate callback, use the HW config callback with a new flag to change retry limits. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 525181891fb5ed323b6ba0f141c422f1395acfb9 Author: Johannes Berg Date: Sat Oct 11 01:46:25 2008 +0200 iwl3945: fix station stuff in RC algorithm Probably bugs I added. Signed-off-by: Johannes Berg Acked-by: Reinette Chatre Signed-off-by: John W. Linville commit d51626df5747efaa8d2c00678f64cb503845effe Author: Johannes Berg Date: Thu Oct 9 12:20:13 2008 +0200 nl80211: export HT capabilities This exports the local HT capabilities in nl80211. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 94778280fabdb6bc76db5509bd95859f1141385b Author: Johannes Berg Date: Fri Oct 10 13:21:59 2008 +0200 mac80211: provide sequence numbers I've come to think that not providing sequence numbers for the normal STA mode case was a mistake, at least two drivers now had to implement code they wouldn't otherwise need, and I believe at76_usb and adm8211 might be broken. This patch makes mac80211 assign a sequence number to all those frames that need one except beacons. That means that if a driver only implements modes that do not do beaconing it need not worry about the sequence number. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2e20cc3986cbee410fbe8e3e116bdcb12d70fcce Author: Larry Finger Date: Thu Oct 9 17:38:52 2008 -0700 p54: Move rx_mtu to struct bootrec_desc The patch entitled "[PATCH] p54: Fix sparse warnings" added the __le16 variable rx_mtu to struct bootrec, but it could equally well be placed in the struct bootrec_desc, which overlays the 'data' section of bootrec. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 78236571a538860dc2f0842ff6c7789522eb1e63 Author: Henrique de Moraes Holschuh Date: Thu Oct 9 18:15:33 2008 -0300 rfkill: rate-limit rfkill-input workqueue usage (v3) Limit the number of "expensive" rfkill workqueue operations per second, in order to not hog system resources too much when faced with a rogue source of rfkill input events. The old rfkill-input code (before it was refactored) had such a limit in place. It used to drop new events that were past the rate limit. This behaviour was not implemented as an anti-DoS measure, but rather as an attempt to work around deficiencies in input device drivers which would issue multiple KEY_FOO events too soon for a given key FOO (i.e. ones that do not implement mechanical debouncing properly). However, we can't really expect such issues to be worked around by every input handler out there, and also by every userspace client of input devices. It is the input device driver's responsability to do debouncing instead of spamming the input layer with bogus events. The new limiter code is focused only on anti-DoS behaviour, and tries to not lose events (instead, it coalesces them when possible). The transmitters are updated once every 200ms, maximum. Care is taken not to delay a request to _enter_ rfkill transmitter Emergency Power Off (EPO) mode. If mistriggered (e.g. by a jiffies counter wrap), the code delays processing *once* by 200ms. Signed-off-by: Henrique de Moraes Holschuh Cc: Ivo van Doorn Cc: Dmitry Torokhov Signed-off-by: John W. Linville commit 176707997bc3da2c4e32715c35cfebba0334ed68 Author: Henrique de Moraes Holschuh Date: Thu Oct 9 18:15:32 2008 -0300 rfkill: honour EPO state when resuming a rfkill controller rfkill_resume() would always restore the rfkill controller state to its pre-suspend state. Now that we know when we are under EPO, kick the rfkill controller to SOFT_BLOCKED state instead of to its pre-suspend state when it is resumed while EPO mode is active. Signed-off-by: Henrique de Moraes Holschuh Cc: Ivo van Doorn Signed-off-by: John W. Linville commit d003922dab6a66027344a787e9846ecf35a706a8 Author: Henrique de Moraes Holschuh Date: Thu Oct 9 21:49:33 2008 -0300 rfkill: add master_switch_mode and EPO lock to rfkill and rfkill-input Add of software-based sanity to rfkill and rfkill-input so that it can reproduce what hardware-based EPO switches do, blocking all transmitters and locking down any further attempts to unblock them until the switch is deactivated. rfkill-input is responsible for issuing the EPO control requests, like before. While an rfkill EPO is active, all transmitters are locked to one of the BLOCKED states and all attempts to change that through the rfkill API (userspace and kernel) will be either ignored or return -EPERM errors. The lock will be released upon receipt of EV_SW SW_RFKILL_ALL ON by rfkill-input, or should modular rfkill-input be unloaded. This makes rfkill and rfkill-input extend the operation of an existing wireless master kill switch to all wireless devices in the system, even those that are not under hardware or firmware control. Since the above is the expected operational behavior for the master rfkill switch, the EPO lock functionality is not optional. Also, extend rfkill-input to allow for three different behaviors when it receives an EV_SW SW_RFKILL_ALL ON input event. The user can set which behavior he wants through the master_switch_mode parameter: master_switch_mode = 0: EV_SW SW_RFKILL_ALL ON just unlocks rfkill controller state changes (so that the rfkill userspace and kernel APIs can now be used to change rfkill controller states again), but doesn't change any of their states (so they will all remain blocked). This is the safest mode of operation, as it requires explicit operator action to re-enable a transmitter. master_switch_mode = 1: EV_SW SW_RFKILL_ALL ON causes rfkill-input to attempt to restore the system to the state before the last EV_SW SW_RFKILL_ALL OFF event, or to the default global states if no EV_SW SW_RFKILL_ALL OFF ever happened. This is the recommended mode of operation for laptops. master_switch_mode = 2: tries to unblock all rfkill controllers (i.e. enable all transmitters) when an EV_SW SW_RFKILL_ALL ON event is received. This is the default mode of operation, as it mimics the previous behavior of rfkill-input. In order to implement these features in a clean way, the entire event handling of rfkill-input was refactored into a single worker function. Protection against input event DoS (repeatedly firing rfkill events for rfkill-input to process) was removed during the code refactoring. It will be added back in a future patch. Note that with these changes, rfkill-input doesn't need to explicitly handle any radio types for which KEY_ or SW_ events do not exist yet. Code to handle EV_SW SW_{WLAN,WWAN,BLUETOOTH,WIMAX,...} was added as it might be needed in the future (and its implementation is not that obvious), but is currently #ifdef'd out to avoid wasting resources. Signed-off-by: Henrique de Moraes Holschuh Cc: Ivo van Doorn Cc: Dmitry Torokhov Signed-off-by: John W. Linville commit 68d2413bec7e1d97e906eafb05e78d925a5ca128 Author: Henrique de Moraes Holschuh Date: Thu Oct 9 18:15:30 2008 -0300 rfkill: export global states to rfkill-input Export the the global switch states to rfkill-input. This is needed to properly implement KEY_* handling without disregarding the initial state. Signed-off-by: Henrique de Moraes Holschuh Cc: Ivo van Doorn Signed-off-by: John W. Linville commit cf4b4aab552f5f658ed400dd0cd41f9ac8aac7c1 Author: Henrique de Moraes Holschuh Date: Thu Oct 9 18:15:29 2008 -0300 rfkill: use killable locks instead of interruptible Apparently, many applications don't expect to get EAGAIN from fd read/write operations, since POSIX doesn't mandate it. Use mutex_lock_killable instead of mutex_lock_interruptible, which won't cause issues. Signed-off-by: Henrique de Moraes Holschuh Cc: Ivo van Doorn Signed-off-by: John W. Linville commit e8975581f63870be42ff4662b293d1b0c8c21350 Author: Johannes Berg Date: Thu Oct 9 12:18:51 2008 +0200 mac80211: introduce hw config change flags This makes mac80211 notify the driver which configuration actually changed, e.g. channel etc. No driver changes, this is just plumbing, driver authors are expected to act on this if they want to. Also remove the HW CONFIG debug printk, it's incorrect, often we configure something else. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 0f4ac38b5999c3d51adad52d61c56c1b99c247ec Author: Johannes Berg Date: Thu Oct 9 12:18:04 2008 +0200 mac80211: kill hw.conf.antenna_sel_{rx,tx} Never actually used. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d9fe60dea7779d412b34679f1177c5ca1940ea8d Author: Johannes Berg Date: Thu Oct 9 12:13:49 2008 +0200 802.11: clean up/fix HT support This patch cleans up a number of things: * the unusable definition of the HT capabilities/HT information information elements * variable names that are hard to understand * mac80211: move ieee80211_handle_ht to ht.c and remove the unused enable_ht parameter * mac80211: fix bug with MCS rate 32 in ieee80211_handle_ht * mac80211: fix bug with casting the result of ieee80211_bss_get_ie to an information element _contents_ rather than the whole element, add size checking (another out-of-bounds access bug fixed!) * mac80211: remove some unused return values in favour of BUG_ON checking * a few minor other things Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 40333e4fb476014cdd939d27e20eb54573172b32 Author: Christian Lamparter Date: Wed Oct 8 20:52:22 2008 +0200 p54: honour bss_info_changed's short slot time settings This patch was made on behalf of Johannes request. "mac80211 and IEEE80211_CONF_SHORT_SLOT_TIME" Of course, bss_info_changed provides some more useful data. e.g.: basic_rates, dtim_period, beacon_int and maybe even more. Everything can be hooked up if it's necessary. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 5d6924eaf07bec9ce7527cad9d2537e448574738 Author: Rami Rosen Date: Wed Oct 8 11:18:27 2008 +0200 mac80211: use HWSIM_STA_MAGIC in hwsim_check_sta_magic() and hwsim_set_sta_magic(). This patch fixes a typo in mac80211_hwsim.c: use HWSIM_STA_MAGIC in hwsim_check_sta_magic() and hwsim_set_sta_magic() instead of HWSIM_VIF_MAGIC. Signed-off-by: Rami Rosen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 3195c1f3499912b207ae600968488759b16037fc Author: Tomas Winkler Date: Wed Oct 8 09:37:30 2008 +0800 iwlwifi: refactor rxon time command This patch refactors rxon time command. It removes the usage of union tsf in favor of u64 value and hopefully makes code more readable. There are no functional changes in this patch. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 5d664a41a0a8c612f66bcb3c2a6f395e9afa6beb Author: Tomas Winkler Date: Wed Oct 8 09:37:29 2008 +0800 iwlwifi: take a valid antenna upon rate scale init This patch selects a valid antennae upon rate scale init. This solves a SYSASSERT complaining that the driver is setting a non valid antenna in the LQ CMD. Signed-off-by: Emmanuel Grumbach Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit be5d56ed885a2897ec813eab4a8055d495816e9a Author: Tomas Winkler Date: Wed Oct 8 09:37:27 2008 +0800 iwlwifi: make initial calibration set configurable This patch adds ability to configure initial calibration set. Not all HW supported by iwlwifi use the same calibration set, XTAL is one example. Some clean ups are also included in this patch. Signed-off-by: Tomas Winkler Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 1397dcebd8f1d66528e8f86b0dfb603281558f79 Author: Rami Rosen Date: Tue Oct 7 16:29:11 2008 +0200 mac80211: remove unused declaration of struct sta_attribute. This patch removes unused definition of struct sta_attribute in net/mac80211/ieee80211_i.h. Signed-off-by: Rami Rosen Acked-by: Johannes Berg Signed-off-by: John W. Linville commit 7a5158ef8da70fdedeb0530faaa8128aa645be3c Author: Johannes Berg Date: Wed Oct 8 10:59:33 2008 +0200 mac80211: fix short slot handling This patch makes mac80211 handle short slot requests from the AP properly. Also warn about uses of IEEE80211_CONF_SHORT_SLOT_TIME and optimise out the code since it cannot ever be hit anyway. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e87a2feea75e3cba7af43ed9317b56b282d87742 Author: Johannes Berg Date: Tue Oct 7 12:04:35 2008 +0200 mac80211: remove max_antenna_gain config The antenna gain isn't exactly configurable, despite the belief of some unnamed individual who thinks that the EEPROM might influence it. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d73782fdde76554016abf73b46f843b29f520848 Author: Johannes Berg Date: Tue Oct 7 12:04:34 2008 +0200 mac80211: clean up ieee80211_hw_config errors Warn when ieee80211_hw_config returns an error, it shouldn't happen; remove a number of printks that would happen in such a case and one printk that is user-triggerable. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 3db594380b8452eda4d88b12844077809607caaa Author: Johannes Berg Date: Tue Oct 7 12:04:33 2008 +0200 mac80211: remove wiphy_to_hw This isn't used by anyone, if we ever need it we can add it back, until then it's useless. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit c6a1fa12d206882757264869f8e32d606b930e2a Author: Johannes Berg Date: Tue Oct 7 12:04:32 2008 +0200 mac80211: minor code cleanups Nothing very interesting, some checkpatch inspired stuff, some other things. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 36ff382d0065c9980c203c7cd3b3eb26251e9397 Author: Johannes Berg Date: Tue Oct 7 12:04:31 2008 +0200 mac80211: remove writable debugs mesh parameters These parameters shouldn't be configurable via debugfs, if they need to be configurable nl80211 support has to be added, if not then they don't need to be writable here either. Signed-off-by: Johannes Berg Cc: Javier Cardona Cc: Luis Carlos Cobo Signed-off-by: John W. Linville commit 804feeb826f8a32c8c71a09101fae31804b40ad1 Author: Johannes Berg Date: Tue Oct 7 12:04:30 2008 +0200 mac80211: remove aggregation status write support from debugfs This code uses static variables and thus cannot be kept. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit b2bcc7b299f37037b4a78dc1538e5d6508ae8110 Author: Alok Kataria Date: Fri Oct 31 11:59:53 2008 -0700 x86: add a synthetic TSC_RELIABLE feature bit Impact: None, bit reservation only Add a synthetic TSC_RELIABLE feature bit which will be used to mark TSC as reliable so that we could skip all the runtime checks for TSC stablity, which have false positives in virtual environment. Signed-off-by: Alok N Kataria Signed-off-by: Dan Hecht Signed-off-by: H. Peter Anvin commit 3c3e9892a1dacca2ba9e05c196ab1ea99c544360 Author: Takashi Iwai Date: Fri Oct 31 17:48:56 2008 +0100 ALSA: hda - Re-add input-source control for Realtek Re-added again "Input Source" control that was removed mistakenly in the previous patchset. Signed-off-by: Takashi Iwai commit f9e336f65b666b8f1764d17e9b7c21c90748a37e Author: Takashi Iwai Date: Fri Oct 31 16:37:07 2008 +0100 ALSA: hda - Unify capture mixer creation in realtek codes Unified the capture mixer creation in patch_realtek.c. ALC268 is still an exception since it has no AMP in ADC but in MUX widget. Signed-off-by: Takashi Iwai commit 54cbc9abe57cf0a36619f394802448c62402599a Author: Takashi Iwai Date: Fri Oct 31 15:24:04 2008 +0100 ALSA: hda - Unify capture callbacks in realtek codes Unify the capture callbacks in patch_realtek.c. The difference of matrix or mux style is checked via spec->is_mix_capture flag. Signed-off-by: Takashi Iwai commit d88897eaea53f0fae62d528a24e76b8643082db3 Author: Takashi Iwai Date: Fri Oct 31 15:01:37 2008 +0100 ALSA: hda - Use macros to check array overflow Use macro to add mixer and verb elements to check the possible array overflow. Signed-off-by: Takashi Iwai commit afecd78cd2ec81512d6ec451906f71d9671a0b3b Merge: 1b063c3... ee956e0... Author: Takashi Iwai Date: Fri Oct 31 17:24:01 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda commit 7b3b6e42032e94a6132a85642e95106f5346650e Merge: 04172c0... 0173a32... Author: Takashi Iwai Date: Fri Oct 31 17:13:10 2008 +0100 Merge commit 'v2.6.28-rc2' into topic/asoc commit 04172c0b9ea5861e5cba7909da5297b3aedac9e1 Merge: 5b99e6c... 13d622b... Author: Takashi Iwai Date: Fri Oct 31 14:39:49 2008 +0100 Merge branch 'topic/fix/asoc' into topic/asoc commit 5b99e6ccf964e733f0afe2b7bd09559a51a540ca Author: Sedji Gaouaou Date: Fri Oct 3 16:58:58 2008 +0200 ASoC: Add audio support for the Atmel AT91SAM9G20ek board(uing wolfson 8731). Add audio support for the Atmel AT91SAM9G20ek board(uing wolfson 8731). It is based on the former eti_b1_wm8731.c file, using the atmel scc API. Signed-off-by: Sedji Gaouaou Signed-off-by: Mark Brown commit 6c7425095c9ee23d080dba3e27217a254cce4562 Author: Sedji Gaouaou Date: Fri Oct 3 16:57:50 2008 +0200 ASoC: Merge AT91 and AVR32 support into a single atmel architecture The Ateml AT91 and AVR32 SoC share common IP for audio and can share the same driver code using the atmel-ssc API provided for both architectures. Do this, creating a new unified atmel ASoC architecture to replace the previous at32 and at91 ones. [This was contributed as a patch series for reviewability but has been squashed down to a single commit to help preserve both the history and bisectability. A small bugfix from Jukka is included.] Tested-by: Jukka Hynninen Signed-off-by: Sedji Gaouaou Signed-off-by: Mark Brown commit dc06102a0c8b5aa0dd7f9a40ce241e793c252a87 Author: Steve Sakoman Date: Thu Oct 30 21:55:24 2008 -0700 ASoC: Add support for Beagleboard Signed-off-by: Steve Sakoman Signed-off-by: Mark Brown commit 4e207873736adc55cbf92796eb4f26f280f84034 Author: Steve Sakoman Date: Thu Oct 30 21:50:13 2008 -0700 ASoC: Add support for Gumstix Overo Signed-off-by: Steve Sakoman Signed-off-by: Mark Brown commit cc17557e7876a92e11d4b406a367d28e103e42e6 Author: Steve Sakoman Date: Thu Oct 30 21:35:26 2008 -0700 ASoC: Add support for TWL4030 audio codec Signed-off-by: Steve Sakoman Signed-off-by: Mark Brown commit a376f30a95a796cde81d6dffde0f5243c8bd8f92 Author: Zhaolei Date: Fri Oct 31 17:43:04 2008 +0800 x86: avoid duplicate running of pud_offset and pmd_offset in one_md_table_init() Impact: simplify implementation, cleanup If !(pgd_val(*pgd) & _PAGE_PRESENT) in PAE mode, we need not get value of pmd_table again. Signed-off-by: Zhao Lei Signed-off-by: Ingo Molnar commit a26a2a27396c0a0877aa701f8f92d08ba550a6c9 Author: Steven Rostedt Date: Fri Oct 31 00:03:22 2008 -0400 ftrace: nmi safe code clean ups Impact: cleanup This patch cleans up the NMI safe code for dynamic ftrace as suggested by Andrew Morton. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 9868ee63b896ee4d2ceb8c292e88d7f4e66caaf9 Author: Huang Ying Date: Fri Oct 31 09:48:15 2008 +0800 kexec/i386: setup kexec page table in C Impact: change the kexec bootstrap code implementation from assembly to C This patch transforms the kexec page tables setup code from assembler code to C code in machine_kexec_prepare. This improves readability and reduces code line number. Signed-off-by: Huang Ying Signed-off-by: Ingo Molnar commit 92be3d6bdf2cb34972ab50e12ad4da1076e690da Author: Huang Ying Date: Fri Oct 31 09:48:08 2008 +0800 kexec/i386: allocate page table pages dynamically Impact: save .text size when kexec is built in but not loaded This patch adds an architecture specific struct kimage_arch into struct kimage. The pointers to page table pages used by kexec are added to struct kimage_arch. The page tables pages are dynamically allocated in machine_kexec_prepare instead of statically from BSS segment. This will save up to 20k memory when kexec image is not loaded. Signed-off-by: Huang Ying Signed-off-by: Ingo Molnar commit 31498a01496ffca3b542bae72b8ec499cd9302db Author: Huang Ying Date: Fri Oct 31 09:48:02 2008 +0800 kexec/i386: remove PAGE_SIZE alignment from relocate_kernel Impact: save kernel .text by loosening kexec page alignment This patch removes PAGE_SIZE alignment from relocate_kernel(). Before kexec jump patches are merged, control page is mapped to relocate_kernel in kexec page tables, so relocate_kernel must be PAGE_SIZE aligned. Now, control page is mapped to identity mapped address, so relocate_kernel need not to be PAGE_SIZE aligned any more. This can reduce a few KB from kernel text segement. Signed-off-by: Huang Ying Signed-off-by: Ingo Molnar commit 3685f25de1b0447fff381c420de1e25bd57c9efb Author: Harvey Harrison Date: Fri Oct 31 00:56:49 2008 -0700 misc: replace NIPQUAD() Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit be859405487324ed548f1ba11dc949b8230ab991 Author: Harvey Harrison Date: Fri Oct 31 00:56:28 2008 -0700 fs: replace NIPQUAD() Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 63779436ab4ad0867bcea53bf853b0004d7b895d Author: Harvey Harrison Date: Fri Oct 31 00:56:00 2008 -0700 drivers: replace NIPQUAD() Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 21454aaad30651ba0dcc16fe5271bc12ee21f132 Author: Harvey Harrison Date: Fri Oct 31 00:54:56 2008 -0700 net: replace NIPQUAD() in net/*/ Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 14d5e834f6b36667c7da56374645f99b6cf30814 Author: Harvey Harrison Date: Fri Oct 31 00:54:29 2008 -0700 net: replace NIPQUAD() in net/netfilter/ Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 673d57e72398edfedc93fb50ff58048077c9d587 Author: Harvey Harrison Date: Fri Oct 31 00:53:57 2008 -0700 net: replace NIPQUAD() in net/ipv4/ net/ipv6/ Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit cffee385d7f367e80b288abf4261256477f7760e Author: Harvey Harrison Date: Fri Oct 31 00:53:08 2008 -0700 net: replace NIPQUAD() in net/ipv4/netfilter/ Using NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u can be replaced with %pI4 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 77be155cba4e163e8bba9fd27222a8b6189ec4f7 Author: Jarek Poplawski Date: Fri Oct 31 00:47:01 2008 -0700 pkt_sched: Add peek emulation for non-work-conserving qdiscs. This patch adds qdisc_peek_dequeued() wrapper to emulate peek method with qdisc->dequeue() and storing "peeked" skb in qdisc->gso_skb until dequeuing. This is mainly for compatibility reasons not to break some strange configs because peeking is expected for non-work-conserving parent qdiscs to query work-conserving child qdiscs. This implementation requires using qdisc_dequeue_peeked() wrapper instead of directly calling qdisc->dequeue() for all qdiscs ever querried with qdisc->ops->peek() or qdisc_peek_dequeued(). Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 03c05f0d4bb0c267edf12d614025a40e33c5a6f9 Author: Jarek Poplawski Date: Fri Oct 31 00:46:19 2008 -0700 pkt_sched: Use qdisc->ops->peek() instead of ->dequeue() & ->requeue() Use qdisc->ops->peek() instead of ->dequeue() & ->requeue() pair. After this patch the only remaining user of qdisc->ops->requeue() is netem_enqueue(). Based on ideas of Herbert Xu, Patrick McHardy and David S. Miller. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 8e3af97899db433111287e07d5105189f56fe191 Author: Jarek Poplawski Date: Fri Oct 31 00:45:55 2008 -0700 pkt_sched: Add qdisc->ops->peek() implementation. Add qdisc->ops->peek() implementation for work-conserving qdiscs. With feedback from Patrick McHardy. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 99c0db26797edb39cf83c8c5f8972067f5426b4e Author: Jarek Poplawski Date: Fri Oct 31 00:45:27 2008 -0700 pkt_sched: sch_generic: Add generic qdisc->ops->peek() implementation. With feedback from Patrick McHardy. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 48a8f519e0fe22a5c98523286b2a120841a11dd5 Author: Patrick McHardy Date: Fri Oct 31 00:44:18 2008 -0700 pkt_sched: Add ->peek() methods for fifo, prio and SFQ qdiscs. From: Patrick McHardy Just as a demonstration how easy adding a peek operation to the work-conserving qdiscs actually is. It doesn't need to keep or change any internal state in many cases thanks to the guarantee that the packet will either be dequeued or, if another packet arrives, the upper qdisc will immediately ->peek again to reevaluate the state. (This is only slightly modified Patrick's patch.) Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 90d841fd0a5e02affd4e2bbdde4f710c61599281 Author: Jarek Poplawski Date: Fri Oct 31 00:43:45 2008 -0700 pkt_sched: sch_generic: Add Qdisc_ops peek() method. Add Qdisc_ops peek() method in order to replace requeuing. Based on ideas and patches of Herbert Xu, Patrick McHardy and David S. Miller. Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit cc0fe83525d734bdd9c883b45eca6bb22f286daa Author: Alexey Dobriyan Date: Fri Oct 31 00:42:25 2008 -0700 xfrm: remove unused struct xfrm_policy::next Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit d5917a35ac0d8ebfb4a7d0db3b66054009bd4f37 Author: Alexey Dobriyan Date: Fri Oct 31 00:41:59 2008 -0700 xfrm: C99 for xfrm_dev_notifier Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit a1744d3bee19d3b9cbfb825ab316a101b9c9f109 Merge: 275f165... a4322266... Author: David S. Miller Date: Fri Oct 31 00:17:34 2008 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/wireless/p54/p54common.c commit 57b41898c2ecd13a9d338b66ef23f66caab5c4e9 Author: Stephen Rothwell Date: Fri Oct 31 14:41:06 2008 +1100 ALSA: ASoC - restore removed variable declaration sound/soc/soc-dapm.c: In function 'snd_soc_dapm_sys_add': sound/soc/soc-dapm.c:828: error: 'ret' undeclared (first use in this function) Signed-off-by: Stephen Rothwell Signed-off-by: Takashi Iwai commit 275f165fa970174f8a98205529750e8abb6c0a33 Author: Arjan van de Ven Date: Mon Oct 20 21:42:39 2008 -0700 pci: use pci_ioremap_bar() in drivers/net Use the newly introduced pci_ioremap_bar() function in drivers/net. pci_ioremap_bar() just takes a pci device and a bar number, with the goal of making it really hard to get wrong, while also having a central place to stick sanity checks. Signed-off-by: Arjan van de Ven Signed-off-by: Jeff Garzik commit 842e08bd6891bd78b4c3d2e0c4a94bebb32ab3ad Author: Atsushi Nemoto Date: Tue Oct 28 22:30:23 2008 +0900 tc35815: Define more Rx status bits Signed-off-by: Atsushi Nemoto Signed-off-by: Jeff Garzik commit 04ecb07241d8731b16490f10bec6ccedf5cfc792 Author: Divy Le Ray Date: Tue Oct 28 22:40:32 2008 -0700 cxgb3 - enable lro control through ethtool Implement ethtool's get_flags and set_flags methods. It enables ethtool to control the LRO settings. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit bc79fc8409b3dccbde072e8113cc1fb3fd876fc5 Author: Rafael J. Wysocki Date: Wed Oct 29 14:22:18 2008 -0700 e100: adapt to the reworked PCI PM Adapt the e100 driver to the reworked PCI PM * Use the observation that it is sufficient to call pci_enable_wake() once, unless it fails Signed-off-by: Rafael J. Wysocki Tested-by: Jeff Kirsher Acked-by: Jeff Kirsher Cc: Jesse Barnes Cc: Jeff Garzik Cc: Frans Pop Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 6b1abbaefa31b84cc02bf4006ba8a63393de1136 Author: Adrian Bunk Date: Wed Oct 29 14:22:15 2008 -0700 The overdue eepro100 removal. Signed-off-by: Adrian Bunk Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 5177b3240a6608fc0c9c05cc32f4855c6540f8d5 Author: Rafael J. Wysocki Date: Wed Oct 29 14:22:14 2008 -0700 skge: adapt skge to use reworked PCI PM Adapt the skge driver to the reworked PCI PM * Use device_set_wakeup_enable() and friends as needed * Remove an open-coded reference to the standard PCI PM registers * Use pci_prepare_to_sleep() and pci_back_from_sleep() in the ->suspend() and ->resume() callbacks * Use the observation that it is sufficient to call pci_enable_wake() once, unless it fails Tested on Asus L5D (Yukon-Lite rev 7). Signed-off-by: Rafael J. Wysocki Cc: Stephen Hemminger Cc: Jeff Garzik Cc: Jesse Barnes Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit b3acf29afda06c76774dc6df6246c37ae707836b Author: Steven Rostedt Date: Wed Oct 29 15:30:26 2008 -0400 ftrace, kbuild: condense recordmcount.pl parameter code Impact: cleanup Sam Ravnborg pointed out that I could condense the code for the parameters of recordmcount.pl by using an $(if ...) condition. Signed-off-by: Steven Rostedt Acked-by: Sam Ravnborg Signed-off-by: Ingo Molnar commit e1e302d8a9ab06ba8d7d5ec503d8996e6cf0eca4 Merge: 944ac42... 7f82f00... Author: Ingo Molnar Date: Fri Oct 31 00:38:21 2008 +0100 Merge branch 'linus' into tracing/ftrace commit c8db3fec5b02f4cefe441903fe1c142ff14e1771 Author: Eric Dumazet Date: Thu Oct 30 14:00:53 2008 -0700 udp: Should use spin_lock_bh()/spin_unlock_bh() in udp_lib_unhash() Spotted by Alexander Beregalov Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b807c3d0f8e39ed7cbbbe6da162650e305e8de15 Author: Steven Rostedt Date: Thu Oct 30 16:08:33 2008 -0400 ftrace: nmi update statistics Impact: add more debug info to /debugfs/tracing/dyn_ftrace_total_info This patch adds dynamic ftrace NMI update statistics to the /debugfs/tracing/dyn_ftrace_total_info stat file. Signed-off-by: Steven Rostedt Cc: Peter Zijlstra Cc: Andrew Morton Cc: Linus Torvalds Cc: Steven Rostedt Signed-off-by: Ingo Molnar commit 17666f02b118099028522dfc3df00a235700e216 Author: Steven Rostedt Date: Thu Oct 30 16:08:32 2008 -0400 ftrace: nmi safe code modification Impact: fix crashes that can occur in NMI handlers, if their code is modified Modifying code is something that needs special care. On SMP boxes, if code that is being modified is also being executed on another CPU, that CPU will have undefined results. The dynamic ftrace uses kstop_machine to make the system act like a uniprocessor system. But this does not address NMIs, that can still run on other CPUs. One approach to handle this is to make all code that are used by NMIs not be traced. But NMIs can call notifiers that spread throughout the kernel and this will be very hard to maintain, and the chance of missing a function is very high. The approach that this patch takes is to have the NMIs modify the code if the modification is taking place. The way this works is that just writing to code executing on another CPU is not harmful if what is written is the same as what exists. Two buffers are used: an IP buffer and a "code" buffer. The steps that the patcher takes are: 1) Put in the instruction pointer into the IP buffer and the new code into the "code" buffer. 2) Set a flag that says we are modifying code 3) Wait for any running NMIs to finish. 4) Write the code 5) clear the flag. 6) Wait for any running NMIs to finish. If an NMI is executed, it will also write the pending code. Multiple writes are OK, because what is being written is the same. Then the patcher must wait for all running NMIs to finish before going to the next line that must be patched. This is basically the RCU approach to code modification. Thanks to Ingo Molnar for suggesting the idea, and to Arjan van de Ven for his guidence on what is safe and what is not. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 1cbd8b3fdcf56a3c39a7596512095c9e33221fa1 Author: Jan Beulich Date: Thu Oct 30 10:45:36 2008 +0000 x86: add two missing unwind annotations Impact: improve debuginfo Signed-off-by: Jan Beulich Signed-off-by: Ingo Molnar commit 8a1c8eb75be492e20003966652c9cd5ff57a559d Author: Aristeu Rozanski Date: Thu Oct 30 13:08:50 2008 -0400 x86, nmi-watchdog: update procfs nmi_watchdog file documentation v2 Impact: improve documentation This patch updates the /proc/sys/kernel/nmi_watchdog documentation. Updated: included Randy Dunlap's corrections. Signed-off-by: Aristeu Rozanski Acked-by: Randy Dunlap Signed-off-by: Ingo Molnar commit b062f841b569791d3054e975cd85f48562161565 Author: Cyrill Gorcunov Date: Thu Oct 30 19:16:46 2008 +0300 x86: nmi - add sensible names to nmi_watchdog boot param Impact: introduce nmi_watchdog=lapic and nmi_watchdog=ioapic aliases Add sensible names as "lapic" and "ioapic" to nmi_watchdog boot parameter. Sometimes it is not that easy to recall what exactly nmi_watchdog=1 does mean so we allow the using of symbolic names here. Old numeric values remain valid. Signed-off-by: Cyrill Gorcunov Signed-off-by: Ingo Molnar commit 7a5276889cfa96619bf863c87581005f46139986 Author: Jan Beulich Date: Thu Oct 30 10:38:24 2008 +0000 x86: simplify X86_MPPARSE config option Impact: cleanup Signed-off-by: Jan Beulich Signed-off-by: Ingo Molnar commit 0763722d28b7b58fa1f9b83d3378efcde855b18a Author: Takashi Iwai Date: Thu Oct 30 17:53:19 2008 +0100 ALSA: ASoC - Fix a typo in Kconfig The last change to Kconfig ca53fb24dd21bff32c4b41b2be1035a1adfc0135 added a wrong item SND_SOC_AC97, which must be SND_SOC_AC97_CODEC. Signed-off-by: Takashi Iwai commit 0c235d1e837c142b7565814318b6ba5917d5ac32 Author: Timur Tabi Date: Thu Aug 7 11:22:32 2008 -0500 ASoC: Disable automatic volume control in the CS4270 sound driver Disable the automatic volume control feature of the CS4270 audio codec. This feature, which is enabled by default, causes volume change commands to be delayed. Sometimes the volume change happens after playback is started. Signed-off-by: Timur Tabi Signed-off-by: Mark Brown commit ca53fb24dd21bff32c4b41b2be1035a1adfc0135 Author: Mark Brown Date: Wed Oct 22 22:41:11 2008 +0100 ASoC: Use finer grained dependencies in SND_SOC_ALL_CODECS Move the bus dependencies in SND_SOC_ALL_CODECS into the individual codec options rather than have them centrally. This allows the inclusion of AC97 codecs when testing on platforms with AC97 support and will also handle codecs on multi-function devices more gracefully. Signed-off-by: Mark Brown commit e775f6c0fb6ac25ab8845d4ad1e17b4b015487f0 Author: Mark Brown Date: Tue Oct 28 15:04:35 2008 +0000 ASoC: Do a warm reset after cold when resetting the WM9713 The WM9713 comes out of cold reset in low power mode so always requires a warm reset to bring up the AC97 link after a cold reset. Signed-off-by: Mark Brown commit 1b340bd7e444f20eb2df88c65fa34960c4736ee9 Author: Mark Brown Date: Wed Jul 30 19:12:04 2008 +0100 ASoC: Add PXA SSP support The SSP ports PXA series processors can be used to implement a variety of audio interface formats. This patch implements support for I2S, DSP A and DSP B modes on these ports. This patch is based on the previous out of tree pxa2xx-ssp driver (which was originally written by Liam Girdwood with updates from Philipp Zabel and Nicola Perrino) and pxa3xx-ssp driver (originally written by Seth Forsee based on the pxa2xx-ssp driver). Testing coverage is not complete currently. Tested-by: Daniel Ribeiro Signed-off-by: Mark Brown commit 8b6a5a37f87a414ef8636e36ec75accb27bb7508 Author: Eric Paris Date: Wed Oct 29 17:06:46 2008 -0400 SELinux: check open perms in dentry_open not inode_permission Some operations, like searching a directory path or connecting a unix domain socket, make explicit calls into inode_permission. Our choices are to either try to come up with a signature for all of the explicit calls to inode_permission and do not check open on those, or to move the open checks to dentry_open where we know this is always an open operation. This patch moves the checks to dentry_open. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Signed-off-by: James Morris commit 219b93f5252086c8c8d647c77fc9e1377aab0c8d Author: Mark Brown Date: Tue Oct 28 13:02:31 2008 +0000 ASoC: Remove DAPM restriction on mixer control name lengths As well as ensuring that UI-relevant parts of control names don't get truncated in the DAPM code this avoids conflicts in long control names that differ only at the end of a long string. Signed-off-by: Mark Brown commit f24368c2fb524e911b831b86b5f0acfb38c70317 Author: Mark Brown Date: Tue Oct 21 21:45:08 2008 +0100 ASoC: Convert core to use standard debug print macros Signed-off-by: Mark Brown commit d45f6219d256b4e02f9ebee2e3911f4ea80bac70 Author: Mark Brown Date: Tue Oct 14 13:58:36 2008 +0100 ASoC: Fix handling of DAPM suspend work Since we can query the playback stream power state directly we do not need to infer if it is powered up from the timer being scheduled. Doing this avoids problems that previously existed with streams being incorrectly determined to be powered up caused when the timer is scheduled when streams are closed after being partially set up. Reported-by: Nobin Mathew Reported-by: Jukka Hynninen Signed-off-by: Mark Brown commit 12ef193d5817504621e503e78d641265f6a86ac4 Author: Troy Kisky Date: Mon Oct 13 17:42:14 2008 -0700 ASoC: Allow setting codec register with debugfs filesystem i.e. echo 6 59 >/sys/kernel/debug/soc-audio.0/codec_reg will set register 0x06 to a value of 0x59. Also, pop_time debugfs interface setup is moved so that it is setup in the same function as codec_reg Signed-off-by: Troy Kisky Signed-off-by: Mark Brown commit 57917752f51bcead3bb6c83d74137fbe342504ec Author: Hiroshi Shimamoto Date: Wed Oct 29 18:46:40 2008 -0700 x86: signal: cosmetic unification of NR_restart_syscall Impact: cleanup Add #ifdef directive to unify NR_restart_syscall. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit cabf503588961d202a33b3fd872767e9f6abbef7 Author: Hiroshi Shimamoto Date: Wed Oct 29 18:46:07 2008 -0700 x86: signal: cosmetic unification of macros for setup_rt_frame() Impact: cleanup Add #ifdef directive for unification. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 96bf84b71255b0ee4fcee91e9acd1b5e73030eaf Author: Hiroshi Shimamoto Date: Wed Oct 29 18:44:08 2008 -0700 x86: signal: cosmetic unification of signr_convert() Impact: cleanup Make signr_convert() same. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 34f3a814eef8069a24e5b3ebcf27aba9dabac2ea Author: Li Zefan Date: Thu Oct 30 15:23:32 2008 +0800 sched: switch sched_features to seqfile Impact: cleanup So handling of sched_features read is simplified. Signed-off-by: Li Zefan Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 8cf14e38372d84ea09ba45fb60b61f6e36c18546 Author: Harvey Harrison Date: Wed Oct 29 22:43:33 2008 -0700 net: easy removals of HIPQUAD using %pI4 format As a bonus, removes some unnecessary byteswapping. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 9edb8bb68b5ea63061ba833831b00c229ac9fbd2 Author: Stephen Hemminger Date: Wed Oct 29 15:31:53 2008 -0700 macvlan: add support for ethtool get settings If macvlan's are used, it is useful to propgate speed and other settings from underlying device up for application usage. Signed-off-by: Stephen Hemminger Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 6b9a1066f8d4c57c1b778affd91fc38e1121b6f8 Author: Harvey Harrison Date: Wed Oct 29 12:53:10 2008 -0700 printk: remove %p6 format specifier, fix up comments Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 5b095d98928fdb9e3b75be20a54b7a6cbf6ca9ad Author: Harvey Harrison Date: Wed Oct 29 12:52:50 2008 -0700 net: replace %p6 with %pI6 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 4b7a4274ca63dadd9c4f17fc953f3a5d19855c4c Author: Harvey Harrison Date: Wed Oct 29 12:50:24 2008 -0700 net: replace %#p6 format specifier with %pi6 gcc warns when using the # modifier with the %p format specifier, so we can't use this to omit the colons when needed, introduces %pi6 instead. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 4aa996066ffc0dba24036c961ee38dfdfbfc061c Author: Harvey Harrison Date: Wed Oct 29 12:49:58 2008 -0700 printk: add %I4, %I6, %i4, %i6 format specifiers For use in printing IPv4, or IPv6 addresses in the usual way: %i4 and %I4 are currently equivalent and print the address in dot-separated decimal x.x.x.x %I6 prints 16-bit network order hex with colon separators: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx %i6 omits the colons. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 96631ed16c514cf8b28fab991a076985ce378c26 Author: Eric Dumazet Date: Wed Oct 29 11:19:58 2008 -0700 udp: introduce sk_for_each_rcu_safenext() Corey Minyard found a race added in commit 271b72c7fa82c2c7a795bc16896149933110672d (udp: RCU handling for Unicast packets.) "If the socket is moved from one list to another list in-between the time the hash is calculated and the next field is accessed, and the socket has moved to the end of the new list, the traversal will not complete properly on the list it should have, since the socket will be on the end of the new list and there's not a way to tell it's on a new list and restart the list traversal. I think that this can be solved by pre-fetching the "next" field (with proper barriers) before checking the hash." This patch corrects this problem, introducing a new sk_for_each_rcu_safenext() macro. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit f52b5054ec108aaa9e903850d6b62af8ae3fe6ae Author: Eric Dumazet Date: Wed Oct 29 11:19:11 2008 -0700 udp: udp_get_next() should use spin_unlock_bh() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit e78a37bc7776955a142317b622818962c3ee75dd Author: Takashi Iwai Date: Wed Oct 29 16:08:01 2008 +0100 ALSA: Fix a typo in Kconfig The previous commit bbaf5e97337287479eb78dbc3822d9560bbfd2e2 has an obvious typo. Fixed now. Signed-off-by: Takashi Iwai commit 9cbbb3ac628227ec5b65fc043539949db606cd17 Author: Jaroslav Kysela Date: Wed Oct 29 13:41:35 2008 +0100 ALSA: Release v1.0.18 Signed-off-by: Jaroslav Kysela Signed-off-by: Takashi Iwai commit eab172294d5e24464f332dd8e94a57a9819c81c4 Author: Li Zefan Date: Wed Oct 29 17:03:22 2008 +0800 sched: cleanup for alloc_rt/fair_sched_group() Impact: cleanup Remove checking parent == NULL. It won't be NULLL, because we dynamically create sub task_group only, and sub task_group always has its parent. (root task_group is statically defined) Also replace kmalloc_node(GFP_ZERO) with kzalloc_node(). Signed-off-by: Li Zefan Signed-off-by: Ingo Molnar commit 8203efb3c612743fecb1ed67cf1daf9d9c127462 Author: Eric Dumazet Date: Wed Oct 29 02:32:32 2008 -0700 udp: calculate udp_mem based on low memory instead of all memory This patch mimics commit 57413ebc4e0f1e471a3b4db4aff9a85c083d090e (tcp: calculate tcp_mem based on low memory instead of all memory) The udp_mem array which contains limits on the total amount of memory used by UDP sockets is calculated based on nr_all_pages. On a 32 bits x86 system, we should base this on the number of lowmem pages. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 271b72c7fa82c2c7a795bc16896149933110672d Author: Eric Dumazet Date: Wed Oct 29 02:11:14 2008 -0700 udp: RCU handling for Unicast packets. Goals are : 1) Optimizing handling of incoming Unicast UDP frames, so that no memory writes should happen in the fast path. Note: Multicasts and broadcasts still will need to take a lock, because doing a full lockless lookup in this case is difficult. 2) No expensive operations in the socket bind/unhash phases : - No expensive synchronize_rcu() calls. - No added rcu_head in socket structure, increasing memory needs, but more important, forcing us to use call_rcu() calls, that have the bad property of making sockets structure cold. (rcu grace period between socket freeing and its potential reuse make this socket being cold in CPU cache). David did a previous patch using call_rcu() and noticed a 20% impact on TCP connection rates. Quoting Cristopher Lameter : "Right. That results in cacheline cooldown. You'd want to recycle the object as they are cache hot on a per cpu basis. That is screwed up by the delayed regular rcu processing. We have seen multiple regressions due to cacheline cooldown. The only choice in cacheline hot sensitive areas is to deal with the complexity that comes with SLAB_DESTROY_BY_RCU or give up on RCU." - Because udp sockets are allocated from dedicated kmem_cache, use of SLAB_DESTROY_BY_RCU can help here. Theory of operation : --------------------- As the lookup is lockfree (using rcu_read_lock()/rcu_read_unlock()), special attention must be taken by readers and writers. Use of SLAB_DESTROY_BY_RCU is tricky too, because a socket can be freed, reused, inserted in a different chain or in worst case in the same chain while readers could do lookups in the same time. In order to avoid loops, a reader must check each socket found in a chain really belongs to the chain the reader was traversing. If it finds a mismatch, lookup must start again at the begining. This *restart* loop is the reason we had to use rdlock for the multicast case, because we dont want to send same message several times to the same socket. We use RCU only for fast path. Thus, /proc/net/udp still takes spinlocks. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 645ca708f936b2fbeb79e52d7823e3eb2c0905f8 Author: Eric Dumazet Date: Wed Oct 29 01:41:45 2008 -0700 udp: introduce struct udp_table and multiple spinlocks UDP sockets are hashed in a 128 slots hash table. This hash table is protected by *one* rwlock. This rwlock is readlocked each time an incoming UDP message is handled. This rwlock is writelocked each time a socket must be inserted in hash table (bind time), or deleted from this table (close time) This is not scalable on SMP machines : 1) Even in read mode, lock() and unlock() are atomic operations and must dirty a contended cache line, shared by all cpus. 2) A writer might be starved if many readers are 'in flight'. This can happen on a machine with some NIC receiving many UDP messages. User process can be delayed a long time at socket creation/dismantle time. This patch prepares RCU migration, by introducing 'struct udp_table and struct udp_hslot', and using one spinlock per chain, to reduce contention on central rwlock. Introducing one spinlock per chain reduces latencies, for port randomization on heavily loaded UDP servers. This also speedup bindings to specific ports. udp_lib_unhash() was uninlined, becoming to big. Some cleanups were done to ease review of following patch (RCUification of UDP Unicast lookups) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 1b063c3d090c45298a37ebc879c71379cf845d9c Merge: d301fc3... c1e99bd... Author: Takashi Iwai Date: Wed Oct 29 08:17:05 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda commit d301fc320f3e673a49200d9ce51036caa9abd768 Author: Takashi Iwai Date: Wed Oct 29 08:15:30 2008 +0100 ALSA: hda - Fix indentation in hda_local.h Just cosmetic fixes of spacing that annoyed me. Signed-off-by: Takashi Iwai commit b189db5d299c6824780af5590564ff608adb3dea Author: Harvey Harrison Date: Tue Oct 28 22:38:52 2008 -0700 net: remove NIP6(), NIP6_FMT, NIP6_SEQFMT and final users Open code NIP6_FMT in the one call inside sscanf and one user of NIP6() that could use %p6 in the netfilter code. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit a20fd0a783551831bb6b9b69710e5bbb93dc2730 Author: Harvey Harrison Date: Tue Oct 28 22:38:06 2008 -0700 uwb: use the %pM formatting specifier in eda.c Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 8c165a8383ef56e84b541fa638be5cf1440010e7 Author: Harvey Harrison Date: Tue Oct 28 22:37:41 2008 -0700 infiniband: remove IPOIB_GID_RAW_ARG, IPOIB_GID_ARG, IPOIB_GID_FMT Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit fcace2fe7a86237c451b09aaf7e2e9d19e09887f Author: Harvey Harrison Date: Tue Oct 28 22:37:22 2008 -0700 infiniband: ipoib replace IPOIB_GID_FMT with %p6 Replace all uses of IPOIB_GID_FMT, IPOIB_GID_RAW_ARG() and IPOIB_GID_ARG() Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 8867cd7c8678ff2d9d0382dbbfbcc7a3e7e61cbc Author: Harvey Harrison Date: Tue Oct 28 22:36:33 2008 -0700 infiniband: use %p6 for printing message ids Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit b30200616f97a81243e6d0c644d8ab06bf0b8115 Author: Stephen Hemminger Date: Tue Oct 28 22:12:36 2008 -0700 vlan: propogate ethtool speed values This enables more ethtool information. The speed and settings of the underlying device are propagated up. This makes services like SNMP that use ethtool to get speed setting, work when managing a vlan, without adding silly heurtistics into SNMP daemon. For the driver info, just use existing driver strings. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 3717746ef8b5a9279281b5d318496710984ed739 Author: Daniel Lezcano Date: Tue Oct 28 22:08:46 2008 -0700 veth: remove unused list The veth network device is stored in a list in the netdev private. AFAICS, this list is never used so I removed this list from the code. Signed-off-by: Daniel Lezcano Signed-off-by: David S. Miller commit bb7bba3d56963be59bc6764c8021290ed55205ad Author: Daniel Lezcano Date: Tue Oct 28 22:08:19 2008 -0700 veth: Remove useless veth field The veth private structure contains a netdev pointer refering to its peer. This field is never used and it is pointless because if we can access, the veth_priv, that means we already have the netdev which is stored in veth_priv->dev. Signed-off-by: Daniel Lezcano Signed-off-by: David S. Miller commit fdb46ee752ed05c94bac71fe3decdb5175ec6e1f Author: Harvey Harrison Date: Tue Oct 28 16:10:17 2008 -0700 net, misc: replace uses of NIP6_FMT with %p6 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 0c6ce78abf6e228d44c3840edb8a4ae0c1299825 Author: Harvey Harrison Date: Tue Oct 28 16:09:23 2008 -0700 net: replace uses of NIP6_FMT with %p6 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 38ff4fa49bef77e86b21d95d9ce341a098f02839 Author: Harvey Harrison Date: Tue Oct 28 16:08:13 2008 -0700 netfilter: replace uses of NIP6_FMT with %p6 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 1afa67f5e70b4733d5b237df61e6d639af6283bb Author: Harvey Harrison Date: Tue Oct 28 16:06:44 2008 -0700 misc: replace NIP6_FMT with %p6 format specifier The iscsi_ibft.c changes are almost certainly a bugfix as the pointer 'ip' is a u8 *, so they never print the last 8 bytes of the IPv6 address, and the eight bytes they do print have a zero byte with them in each 16-bit word. Other than that, this should cause no difference in functionality. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit b071195deba14b37ce896c26f20349b46e5f9fd2 Author: Harvey Harrison Date: Tue Oct 28 16:05:40 2008 -0700 net: replace all current users of NIP6_SEQFMT with %#p6 The define in kernel.h can be done away with at a later time. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 689afa7da106032a3e859ae35494f80dd6eac640 Author: Harvey Harrison Date: Tue Oct 28 16:04:44 2008 -0700 printk: add %p6 format specifier for IPv6 addresses Takes a pointer to a IPv6 address and formats it in the usual colon-separated hex format: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx Each 16 bit word is printed in network-endian byteorder. %#p6 is also supported and will omit the colons. %p6 is a replacement for NIP6_FMT and NIP6() %#p6 is a replacement for NIP6_SEQFMT and NIP6() Note that NIP6() took a struct in6_addr whereas this takes a pointer to a struct in6_addr. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 3a2dfbe8acb154905fdc2fd03ec56df42e6c4cc4 Author: Martin Willi Date: Tue Oct 28 16:01:07 2008 -0700 xfrm: Notify changes in UDP encapsulation via netlink Add new_mapping() implementation to the netlink xfrm_mgr to notify address/port changes detected in UDP encapsulated ESP packets. Signed-off-by: Martin Willi Signed-off-by: David S. Miller commit 93adcc80f3288f1827baf6f821af818f6eeef7f9 Author: Alexey Dobriyan Date: Tue Oct 28 13:25:09 2008 -0700 net: don't use INIT_RCU_HEAD call_rcu() will unconditionally rewrite RCU head anyway. Applies to struct neigh_parms struct neigh_table struct net struct cipso_v4_doi struct in_ifaddr struct in_device rt->u.dst Signed-off-by: Alexey Dobriyan Acked-by: Paul E. McKenney Signed-off-by: David S. Miller commit def8b4faff5ca349beafbbfeb2c51f3602a6ef3a Author: Alexey Dobriyan Date: Tue Oct 28 13:24:06 2008 -0700 net: reduce structures when XFRM=n ifdef out * struct sk_buff::sp (pointer) * struct dst_entry::xfrm (pointer) * struct sock::sk_policy (2 pointers) Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit b057efd4d226fcc3a92b0dc6d8ea8e8185ecb260 Author: Patrick McHardy Date: Tue Oct 28 11:59:11 2008 -0700 netlink: constify struct nlattr * arg to parsing functions Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ad38dab01323a01e825555fc46863b73cd0efdc7 Author: Harvey Harrison Date: Mon Oct 27 13:30:56 2008 -0700 x86: use the new byteorder headers Impact: cleanup, no functionality changed Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar commit d4f1b10365d4f03dd802433e0014cf503e6e930c Author: Jike Song Date: Fri Oct 17 13:25:07 2008 +0800 x86: clean up comments wrt. rd{msr|tsc|pmc} The rdmsr instruction(et al) for i386 and x86-64 are semantically same. The only difference is how gcc interpret constraint "A" for these targets. Signed-off-by: Jike Song Signed-off-by: Ingo Molnar commit 2011a067281565494494aee194ca5081e52d6c3f Merge: 63fb708... 0173a32... Author: Ingo Molnar Date: Tue Oct 28 16:46:59 2008 +0100 Merge commit 'v2.6.28-rc2' into x86/doc commit 30604bb410b53efa9c93ee8f03d7aa7494094faa Author: Yinghai Lu Date: Tue Oct 14 18:59:18 2008 -0700 x86: break up mtrr_cleanup() into several small functions. Ingo said mtrr_cleanup() is big and ugly. so break it up into more functions and make it more readable. Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar commit 7a9787e1eba95a166265e6a260cf30af04ef0a99 Merge: 41b9eb2... 0173a32... Author: Ingo Molnar Date: Tue Oct 28 16:26:12 2008 +0100 Merge commit 'v2.6.28-rc2' into x86/pci-ioapic-boot-irq-quirks commit 163d4c53e3efb457eee96f7487ba3baef2be7796 Merge: 34c2535... e044c39... Author: Takashi Iwai Date: Tue Oct 28 11:44:45 2008 +0100 Merge branch 'topic/fix/hda' into topic/hda commit 34c25350acfc792747e861d1e36874abf7e73255 Author: Takashi Iwai Date: Tue Oct 28 11:38:58 2008 +0100 ALSA: hda - Remove old codec-probe limitation Removed the old workaround to avoid the non-existing codec slot. The current code should work without that workaround. If any, we can add a quirk table. Signed-off-by: Takashi Iwai commit 15ad9a531a64d46af54839ab13542a81ad4c82a5 Merge: 911fc25... c3e5203... Author: Takashi Iwai Date: Tue Oct 28 11:41:18 2008 +0100 Merge branch 'topic/fix/asoc' into topic/asoc commit 3891845e1ef6e6807075d4241966b26f6ecb0a5c Author: Eric W. Biederman Date: Mon Oct 27 17:51:47 2008 -0700 netns: Coexist with the sysfs limitations v2 To make testing of the network namespace simpler allow the network namespace code and the sysfs code to be compiled and run at the same time. To do this only virtual devices are allowed in the additional network namespaces and those virtual devices are not placed in the kobject tree. Since virtual devices don't actually do anything interesting hardware wise that needs device management there should be no loss in keeping them out of the kobject tree and by implication sysfs. The gain in ease of testing and code coverage should be significant. Changelog: v2: As pointed out by Benjamin Thery it only makes sense to call device_rename in the initial network namespace for now. Signed-off-by: Eric W. Biederman Acked-by: Benjamin Thery Tested-by: Serge Hallyn Acked-by: Serge Hallyn Acked-by: Daniel Lezcano Signed-off-by: David S. Miller commit 7c510e4b730a92cecf94ada45c989d8be0200d47 Author: Johannes Berg Date: Mon Oct 27 17:47:26 2008 -0700 net: convert more to %pM A number of places still use %02x:...:%02x because it's in debug statements or for no real reason. Make a few of them use %pM. Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit e174961ca1a0b28f7abf0be47973ad57cb74e5f0 Author: Johannes Berg Date: Mon Oct 27 15:59:26 2008 -0700 net: convert print_mac to %pM This converts pretty much everything to print_mac. There were a few things that had conflicts which I have just dropped for now, no harm done. I've built an allyesconfig with this and looked at the files that weren't built very carefully, but it's a huge patch. Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit 0c68ae2605dbcf67414d8d1f19af93be44b355fb Author: Johannes Berg Date: Mon Oct 27 15:56:10 2008 -0700 mac80211: convert to %pM away from print_mac Also remove a few stray DECLARE_MAC_BUF that were no longer used at all. Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit dd45c9cf687682c9ce256ab14bd8914db77410bb Author: Harvey Harrison Date: Mon Oct 27 15:47:12 2008 -0700 printk: add %pM format specifier for MAC addresses Add format specifiers for printing out six colon-separated bytes: MAC addresses (%pM): xx:xx:xx:xx:xx:xx %#pM is also supported and omits the colon separators. Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 1080d709fb9d8cd4392f93476ee46a9d6ea05a5b Author: Neil Horman Date: Mon Oct 27 12:28:25 2008 -0700 net: implement emergency route cache rebulds when gc_elasticity is exceeded This is a patch to provide on demand route cache rebuilding. Currently, our route cache is rebulid periodically regardless of need. This introduced unneeded periodic latency. This patch offers a better approach. Using code provided by Eric Dumazet, we compute the standard deviation of the average hash bucket chain length while running rt_check_expire. Should any given chain length grow to larger that average plus 4 standard deviations, we trigger an emergency hash table rebuild for that net namespace. This allows for the common case in which chains are well behaved and do not grow unevenly to not incur any latency at all, while those systems (which may be being maliciously attacked), only rebuild when the attack is detected. This patch take 2 other factors into account: 1) chains with multiple entries that differ by attributes that do not affect the hash value are only counted once, so as not to unduly bias system to rebuilding if features like QOS are heavily used 2) if rebuilding crosses a certain threshold (which is adjustable via the added sysctl in this patch), route caching is disabled entirely for that net namespace, since constant rebuilding is less efficient that no caching at all Tested successfully by me. Signed-off-by: Neil Horman Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 69a72a0e9337aad8c730e8e9942d5aa022bc4c5c Author: Mike Travis Date: Mon Oct 27 07:51:20 2008 -0700 x86/uv: update SCIR driver to use the idle_cpu() function Impact: cleanup Change UV heartbeat function to use idle_cpu to determine cpu's "idleness". Realign uv_hub definitions. Signed-of-by: Mike Travis Signed-off-by: Ingo Molnar commit 878719e831d9e076961aa15d4049a57a6668c67a Author: Neil Horman Date: Thu Oct 23 10:40:06 2008 -0400 x86: unify appropriate bits from dumpstack_32 and dumpstack_64 Impact: cleanup As promised, now that dumpstack_32 and dumpstack_64 have so many bits in common, we should merge the in-sync bits into a common file, to prevent them from diverging again. This patch removes bits which are common between dumpstack_32.c and dumpstack_64.c and places them in a common dumpstack.c which is built for both 32 and 64 bit arches. Signed-off-by: Neil Horman Acked-by: Alexander van Heukelum Signed-off-by: Ingo Molnar Makefile | 2 arch/x86/kernel/Makefile | 2 arch/x86/kernel/Makefile | 2 arch/x86/kernel/Makefile | 2 arch/x86/kernel/Makefile | 2 arch/x86/kernel/Makefile | 2 arch/x86/kernel/dumpstack.c | 319 +++++++++++++++++++++++++++++++++++++++++ arch/x86/kernel/dumpstack.h | 39 +++++ arch/x86/kernel/dumpstack_32.c | 294 ------------------------------------- arch/x86/kernel/dumpstack_64.c | 285 ------------------------------------ 5 files changed, 363 insertions(+), 576 deletions(-) commit 7d5a78cd98c3a5eb83bd6a061c5ea6ef1e9b8fcb Author: Aristeu Rozanski Date: Mon Oct 27 12:42:35 2008 -0400 x86, NMI watchdog: disable NMIs on LVT0 in case NMI watchdog is not working Impact: change NMI watchdog detection and disabling sequence Currently, if the NMI watchdog fails using IOAPIC method, it'll only disable interrupts on 8259 if the timer is passing thru it. This patch disables NMI delivery on LINT0 if the NMI watchdog initial test fails, just for safety. Signed-off-by: Aristeu Rozanski Cc: "Maciej W. Rozycki" Signed-off-by: Ingo Molnar commit 6f290b4e016d6c61511542cf6d9ebdef1965978e Author: Aristeu Rozanski Date: Mon Oct 27 12:42:34 2008 -0400 x86, NMI watchdog: add support to enable and disable IOAPIC NMI Impact: change/improve the way /proc/sys/kernel/nmi_watchdog works This patch adds support to enable/disable IOAPIC NMI watchdog in runtime via procfs. Signed-off-by: Aristeu Rozanski Cc: "Maciej W. Rozycki" Signed-off-by: Ingo Molnar commit b43d196c4d3fe46d6dda7c987c47792612b80b1b Author: Arjan van de Ven Date: Sun Oct 5 12:21:32 2008 -0700 x86: corruption-check: some post-move cleanups Impact: cleanup now that the code is moved and converted to a work queue, there's some minor cleanups that can be done. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar commit 304e629bf4a3150a0bf6556fc45c52c5c082340f Author: Arjan van de Ven Date: Sun Oct 5 12:09:03 2008 -0700 x86: corruption check: run the corruption checks from a work queue Impact: change the implementation of the debug feature the periodic corruption checks are better off run from a work queue; there's nothing time critical about them and this way the amount of interrupt-context work is reduced. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar commit 6784f7d0a5016a397d38be1134e63fc784c1ca8e Author: Arjan van de Ven Date: Sun Oct 5 11:33:42 2008 -0700 x86: corruption check: move the corruption checks into their own file Impact: cleanup The corruption check code is rather sizable and it's likely to grow over time when we add checks for more types of corruptions (there's a few candidates in kerneloops.org that I want to add checks for)... so lets move it to its own file Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar commit 04d2aac33eb54fd3084140f2db130530d71e97c6 Author: Arjan van de Ven Date: Sun Oct 5 11:08:10 2008 -0700 x86: corruption-check: fix some style issues Impact: cleanup Before moving the code to it's own file, fix some style issues in the corruption check code. Signed-off-by: Arjan van de Ven Signed-off-by: Ingo Molnar commit 944ac4259e39801c843a915c3da8194ac9af0440 Author: Steven Rostedt Date: Thu Oct 23 19:26:08 2008 -0400 ftrace: ftrace dump on oops control Impact: add (default-off) dump-trace-on-oops flag Currently, ftrace is set up to dump its contents to the console if the kernel panics or oops. This can be annoying if you have trace data in the buffers and you experience an oops, but the trace data is old or static. Usually when you want ftrace to dump its contents is when you are debugging your system and you have set up ftrace to trace the events leading to an oops. This patch adds a control variable called "ftrace_dump_on_oops" that will enable the ftrace dump to console on oops. This variable is default off but a developer can enable it either through the kernel command line by adding "ftrace_dump_on_oops" or at run time by setting (or disabling) /proc/sys/kernel/ftrace_dump_on_oops. v2: Replaced /** with /* as Randy explained that kernel-doc does not yet handle variables. Signed-off-by: Steven Rostedt Signed-off-by: Ingo Molnar commit c63dfefd48d92b1db3400fe8de4886a519ac3949 Author: Dan McGee Date: Thu Oct 23 15:44:02 2008 -0500 x86: remove dead IRQBALANCE code Impact: cleanup CONFIG_IRQBALANCE was removed in commit 8b8e8c1bf; this ifdef was still around. Signed-off-by: Dan McGee Signed-off-by: Ingo Molnar commit fd4a2030a358b4818646031049d9631bd45b9915 Author: Hiroshi Shimamoto Date: Thu Oct 23 17:15:28 2008 -0700 x86: signal_64.c: get_stack() doesn't need entire regs Impact: cleanup get_stack() uses sp only, entire regs is not needed. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit 709110bd5624094992579f5311541f2e2b7ce58a Author: Hiroshi Shimamoto Date: Thu Oct 23 17:14:25 2008 -0700 x86: signal: cosmetic unification of restore_sigcontext() Impact: cleanup Make restore_sigcontext() the same. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Ingo Molnar commit fd3fdf11d3c649769e02459c5f1b8081a15e9007 Author: Pekka Paalanen Date: Fri Oct 24 20:08:11 2008 +0300 trace: add the MMIO-tracer to the tracer menu, cleanup Impact: cleanup We can remove MMIOTRACE_HOOKS and replace it with just MMIOTRACE. MMIOTRACE_HOOKS is a remnant from the time when I thought that something else could also use the kmmio facilities. Signed-off-by: Pekka Paalanen Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 5d9881ea1440f046ee851bbaa2a2962543336a11 Author: Zhaolei Date: Wed Oct 22 11:38:01 2008 +0800 markers: break the redundant loop in kernel/marker.c Impact: cleanup, no functionality changed Because e->name is unique in list, we don't need to continue the iteration after matched. Signed-off-by: Zhao Lei Acked-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 4de62748e69c31fc4fd5bc43b73e9cf60a17ec53 Author: Lai Jiangshan Date: Wed Oct 15 14:56:47 2008 +0800 markers: let marker_table be close to its comments marker_table is defined far from its comments, this fix make cleanup for it. Signed-off-by: Lai Jiangshan Acked-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 505e371da195fad20cb8aaf45407a2849774d6d0 Author: Lai Jiangshan Date: Wed Oct 15 14:56:42 2008 +0800 markers: remove exported symbol marker_probe_cb_noarg() marker_probe_cb_noarg() should not be seen by outer code. this patch remove it. Signed-off-by: Lai Jiangshan Acked-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 0eec481e8fb000a209fda9bf8f466aca87dc1150 Author: Lai Jiangshan Date: Wed Oct 15 14:56:37 2008 +0800 markers: simplify marker_set_format() current marker_set_format() is complex this patch simplify it, and decrease the overhead of marker_update_probes(). Signed-off-by: Lai Jiangshan Acked-by: Mathieu Desnoyers Signed-off-by: Ingo Molnar commit 7f1baa063e2582dd52d83bb31508e9e84468c666 Author: Mike Travis Date: Fri Oct 24 15:24:29 2008 -0700 x86/uv: provide a System Activity Indicator driver Impact: start per CPU heartbeat LED timers on SGI UV systems The SGI UV system has no LEDS but uses one of the system controller regs to indicate the online internal state of the cpu. There is a heartbeat bit indicating that the cpu is responding to interrupts, and an idle bit indicating whether the cpu is idle when the heartbeat interrupt occurs. The current period is one second. When a cpu panics, an error code is written by BIOS to this same reg. This patchset provides the following: * x86_64: Add base functionality for writing to the specific SCIR's for each cpu. * heartbeat: Invert "heartbeat" bit to indicate the cpu is "interruptible". If the current thread is the idle thread, then indicate system is "idle". * if hotplug enabled, all bits are set (0xff) when the cpu is disabled. Signed-off-by: Mike Travis Signed-off-by: Ingo Molnar commit 5292ae11babca23c3ff82593630d2d7eebc350a9 Merge: b0f2098... 0173a32... Author: Ingo Molnar Date: Mon Oct 27 12:38:02 2008 +0100 Merge commit 'v2.6.28-rc2' into x86/uv commit f4a2a0d9a4226846693b5b4462d4350c1bfd58ea Author: Frederic Weisbecker Date: Mon Oct 27 02:05:25 2008 +0100 ftrace: add a script to produce a hierarchical view of a function trace This script parses a function trace and then produces a hierarchical view of the function call stack after processing it into a tree. Changes on V2 thanks to the trace sent by Steven: - Support both the files "trace" and "trace_pipe" (comments and space differences) - Correct the mini HOW-TO at the beginning. Signed-off-by: Frederic Weisbecker Acked-by: Steven Rostedt Signed-off-by: Ingo Molnar commit 8479d94e9f6a44b5050cbacf653272a561fbe0d0 Author: Mikael Pettersson Date: Mon Oct 27 09:30:57 2008 +0100 x86, signals: remove duplicated register setup code in ia32 signal delivery Impact: cleanup, no functionality changed ia32_setup_rt_frame() has a duplicated code block labelled "Make -mregparm=3 work" for setting up the register parameters to the user-mode signal handler. This is harmless but ugly. Remove the redundant assignments. Signed-off-by: Mikael Pettersson Signed-off-by: Ingo Molnar commit 4fc85e451ff5e9b6ccd7f5cac7f65684755370e2 Merge: 9f50bba... 67679b1... Author: Takashi Iwai Date: Mon Oct 27 08:50:43 2008 +0100 Merge branch 'topic/misc-next' into topic/misc commit 911fc25dda145f4f7313535466eec0c9f4a51ea1 Merge: 4b7d283... 6b93311... Author: Takashi Iwai Date: Mon Oct 27 08:37:08 2008 +0100 Merge branch 'topic/asoc-next' into topic/asoc commit 42dc2378b52bb6e155dd2e4fb4ca694785bf2c1d Merge: da74ae3... 74aeaab... Author: Takashi Iwai Date: Mon Oct 27 08:36:48 2008 +0100 Merge branch 'topic/hda-next' into topic/hda commit 74aeaabc3e452b29bc1b9eac5aa48923569f8a4e Author: Matthew Ranostay Date: Sat Oct 25 01:06:04 2008 -0400 ALSA: hda: add support for jack detection on IDT codecs. This patch adds support to the IDT codec families to report jack status to the jack abstraction layer. This required some reorganization in the stac92xx_unsol_event function in which the index value is changed to reporting the nid with the event. Also adds an sigmatel_jack struct to keep track of the nid relation to the jack abstraction layer instance. Also adds functions to set and retrieve data values for each nid, this is used in stac92xx_unsol_event to retrieve the GPIO mask for STAC_VREF_EVENT. Signed-off-by: Matthew Ranostay Signed-off-by: Takashi Iwai commit 50a9f7905fb3e6ae25e80ba443a14d878caef0c9 Author: Matthew Ranostay Date: Sat Oct 25 01:05:45 2008 -0400 ALSA: hda: add snd_hda_get_jack* functions This patch adds snd_hda_get_jack* functions for reporting jack location, device, and connectivity type. Signed-off-by: Matthew Ranostay Signed-off-by: Takashi Iwai commit a53ccab3ccac9e8676a683df9822a2daec83ef54 Author: Matthew Ranostay Date: Sat Oct 25 01:05:04 2008 -0400 ALSA: jack: lineout support to jack abstraction layer This patch introduces support for reporting SW_LINEOUT_INSERT detection events via the jack abstraction layer. Also adds a SND_JACK_LINEOUT define to the input system header. Signed-off-by: Matthew Ranostay Cc: Dmitry Torokhov Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit 282cd76ffca781013151344c4b0f9229e9ea3c35 Author: Matthew Ranostay Date: Sat Oct 25 01:05:29 2008 -0400 ALSA: hda: dynamic jack id This patch duplicates the jack->id pointer with kstrdup() to prevent scoping issues from calling autoprobing functions from the HDA section. Signed-off-by: Matthew Ranostay Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit bbaf5e97337287479eb78dbc3822d9560bbfd2e2 Author: Takashi Iwai Date: Fri Oct 24 18:16:50 2008 +0200 ALSA: Add hrtimer backend for ALSA timer interface Added the hrtimer backend for ALSA timer interface. It can be used for the sequencer timer source. Signed-off-by: Takashi Iwai commit 63fb70859f987f2b3b8028fa467fd63336315e9c Author: Sitsofe Wheeler Date: Sat Oct 11 20:27:53 2008 +0100 x86: change OPTIMIZE_INLINING help to say enabling makes smaller kernels Impact: clarify Kconfig help text The OPTIMIZE_INLINING help currently says "The gcc 4.x series have a rewritten inlining algorithm and disabling this option will generate a smaller kernel there." This contradicts other parts of the help text and my own tests: 5463127 2008-10-11 19:51 vmlinux.no-opt 5456152 2008-10-11 19:56 vmlinux.opt Reword text to say that enabling OPTIMIZE_INLINING will lead to smaller kernels with gcc 4.x or later. Signed-off-by: Sitsofe Wheeler Signed-off-by: Ingo Molnar commit 67679b1fd166da8398e70b7dbffe12cfccf9c7bf Author: Vedran Miletic Date: Thu Oct 23 18:51:00 2008 +0200 ALSA: emu10k1: fix coding style for emu10k1_main.c I fixed all of coding style errors and some warnings, now it is down to: checkpatch.pl-0.24 --no-tree --file --strict --terse emu10k1_main.c total: 0 errors, 62 warnings, 7 checks, 2075 lines checked Signed-off-by: Vedran Miletic Signed-off-by: Takashi Iwai commit 888dcb7cb26fb85dfe3486d28a2431d69d3e8148 Author: Johannes Berg Date: Thu Oct 23 15:47:56 2008 +0200 ALSA: aoa: clean up file names This cleans up the apple onboard audio driver filenames. Signed-off-by: Johannes Berg Signed-off-by: Takashi Iwai commit 871d3779cba18b028e34d0d2f6cc6caae76a97b6 Author: Alexander van Heukelum Date: Wed Oct 22 12:00:14 2008 +0200 i386, dumpstack: unify die() Make i386's die() equal to x86_64's version. Whitespace-only changes on x86_64, to make it equal to i386's version. (user_mode and user_mode_vm are equal on x86_64.) Signed-off-by: Alexander van Heukelum Acked-by: Neil Horman Signed-off-by: Ingo Molnar commit e06ca430c3d0fddbd1c901ab3fb3e1f0bc8a786b Author: Alexander van Heukelum Date: Wed Oct 22 12:00:13 2008 +0200 i386, dumpstack: use oops_begin/oops_end in die_nmi Use oops_begin and oops_end in die_nmi. Whitespace-only changes on x86_64, to make it equal to i386's version. Signed-off-by: Alexander van Heukelum Acked-by: Neil Horman Signed-off-by: Ingo Molnar commit e4955cfd2f5c81eb708f55769aa60173f207fd63 Author: Alexander van Heukelum Date: Wed Oct 22 12:00:12 2008 +0200 i386, dumpstack: use x86_64's method to account die_nest_count oops_begin/oops_end should always be used in pairs. On x86_64 oops_begin increments die_nest_count, and oops_end decrements die_nest_count. Doing this makes oops_begin and oops_end equal to the x86_64 versions. Signed-off-by: Alexander van Heukelum Acked-by: Neil Horman Signed-off-by: Ingo Molnar commit 10b14cb7eb7dd5bff8023f76a55c8ac20e586128 Author: Alexander van Heukelum Date: Wed Oct 22 12:00:11 2008 +0200 x86, dumpstack: always call oops_exit from oops_end Always call oops_exit from oops_end, even if signr==0. Also, move add_taint(TAINT_DIE) from __die to oops_end on x86_64 and interchange two lines to make oops_end more similar to the i386-version. Signed-off-by: Alexander van Heukelum Acked-by: Neil Horman Signed-off-by: Ingo Molnar commit 0ed7a498f416dcfa1cca478a559238a2a3396240 Author: Alexander van Heukelum Date: Wed Oct 22 12:00:10 2008 +0200 x86_64, dumpstack: move kexec_crash from __die to oops_end oops_end is preceded by either a call to __die, or a conditional call to crash_kexec. Move the conditional call to crash_kexec from the end of __die to the start of oops_end and remove the superfluous call to crash_kexec in die_nmi. Signed-off-by: Alexander van Heukelum Acked-by: Neil Horman Signed-off-by: Ingo Molnar commit 874d93d11823b2b861addac6a5dc31162e924ab2 Author: Alexander van Heukelum Date: Wed Oct 22 12:00:09 2008 +0200 x86, dumpstack: let signr=0 signal no do_exit Change oops_end such that signr=0 signals that do_exit is not to be called. Currently, each use of __die is soon followed by a call to oops_end and 'regs' is set to NULL if oops_end is expected not to call do_exit. Change all such pairs to set signr=0 instead. On x86_64 oops_end is used 'bare' in die_nmi; use signr=0 instead of regs=NULL there, too. Signed-off-by: Alexander van Heukelum Acked-by: Neil Horman Signed-off-by: Ingo Molnar commit b4b8f87bf4958cbad620654efc0882ac46c19846 Author: Alexander van Heukelum Date: Wed Oct 22 12:00:08 2008 +0200 i386, dumpstack: move crash_kexec before bust_spinlocks(0) in oops_end crash_kexec should not be called with console_sem held. Move the call before bust_spinlocks(0) in oops_end to avoid the problem. Signed-off-by: Alexander van Heukelum Acked-by: "Neil Horman" Signed-off-by: Ingo Molnar commit 9e899816d126cc6f7d405c349f65363214fe7399 Author: Nick Piggin Date: Wed Oct 22 12:33:16 2008 +0200 x86, mm: enable GBPAGES option by default DIRECT_GBPAGES was under DEBUG_KERNEL && EXPERIMENTAL and disabled by default. Turn it on by default and put it under EMBEDDED. Signed-off-by: Nick Piggin Signed-off-by: Ingo Molnar commit b0f209898f1a177bd503d49215b8c6628797a81c Author: Russ Anderson Date: Tue Oct 21 14:09:51 2008 -0500 x86, uv: use consistent names for region size and conherence id on x86 and ia64 Use consistent names for region size and conherence id on x86 and ia64. The SGI xp drivers are used on both ia64 and x86. Using the same names (sn_coherency_id, sn_region_size) simplies the driver code. Signed-off-by: Russ Anderson Signed-off-by: Ingo Molnar commit 718a2594b6a8c1c050fea85abbb4932b11105c17 Author: Vedran Miletic Date: Tue Oct 21 21:31:27 2008 +0200 ALSA: emu10k1: fix faulty commit 18c71092 Commit 18c7109289625106cdc810b20b628cd13b46d6dd had #endif leftoff from compilation. This patch fixes it. Also, I replaced a misplaced comment by a useful one, that explains why are here #ifdef and #endif added in compilation. Signed-off-by: Vedran Miletic Signed-off-by: Takashi Iwai commit 18c7109289625106cdc810b20b628cd13b46d6dd Author: Vedran Miletic Date: Tue Oct 21 17:42:54 2008 +0200 ALSA: emu10k1: fix device names for Live!/Audigy1/2/4/E-mu * added missing SBxxxx, CTxxxx, PCxxx and MAEMxxxx where they were missing, and fixed some of them which were wrong (according to kx.inf, which is pretty accurate compared to anything out there) * fixed device names to make them more consistent across various cards * fixed order of devices where appropriate Signed-off-by: Vedran Miletic Signed-off-by: Takashi Iwai commit 1083206ff44af4baa03573b4a6bac430d9d70404 Author: Takashi Iwai Date: Mon Aug 11 10:18:39 2008 +0200 ALSA: ice1724 - Fix TX IRQ lockup MPU TX causes IRQ floods on VT172x devices mysteriously. Disable TX IRQ if the IRQ flood is detected. Signed-off-by: Takashi Iwai commit c872e8cab5b7cab0696bcf09c6f03c972edc1c49 Author: Takashi Iwai Date: Tue Aug 12 13:39:01 2008 +0200 ALSA: Enable SPDIF output on ALC655 Some hardwares with ALC655 codec don't indicate the proper ext id bit for SPDIF output although it supports. Force to enable the bit. Signed-off-by: Takashi Iwai commit 96c7d478efad594e483ee8a826395b1342404885 Author: Takashi Iwai Date: Mon Aug 11 10:18:39 2008 +0200 ALSA: pcsp - Fix locking messes in snd-pcsp snd-pcsp driver takes chip->substream_lock together with PCM substream lock. These are even mixed up with hrtimer's lock, resulting in messy lock depencies. Right now, snd-pcsp driver resolves the deadlock by using HRTIMER_CB_SOFTIRQ. However, this isn't nice for a really fast path like bit-flipping. This patch introduces a tasklet for PCM period handling so that the hrtimer callback can be handled fast. This also reduce the use of chip->substream_lock to avoid deadlocks. It's still used in pointer callback, but even this could be removed with a proper barrier. Another good solution is to introduce async trigger callback. But, this will involve with a major rewrite of the PCM core code, so I take first this easy fix. Signed-off-by: Takashi Iwai commit ebaa0470586eec83627fa03dcd0a1107f54258f8 Author: Takashi Iwai Date: Thu Oct 16 16:39:56 2008 +0200 ALSA: hda - Release jack instance for dynamic reconfigure The jack instance has to be release manually in free callback in patch_sigmatel.c for dynamic reconfiguration. Signed-off-by: Takashi Iwai commit dd125b28c1523a857b7657b5d8aa774ed1563687 Merge: 45a6ac1... 1e1be43... Author: Takashi Iwai Date: Thu Oct 16 16:39:46 2008 +0200 Merge branch 'topic/hda-reconfig' into topic/hda-next commit 76a4d10e522bfc238ddf70f35272088d420d2dcf Author: Takashi Iwai Date: Thu Oct 16 16:17:30 2008 +0200 ALSA: Print function symbol in the error messages Use the new %pF for error messages in snd_device_*() functions to give more understandable results. Signed-off-by: Takashi Iwai commit 6b9331165e9827e055389e22d1cbdb5fe3cff835 Author: Mark Brown Date: Thu Oct 16 11:00:07 2008 +0100 ALSA: ASoC: Remove snd_soc_dapm_connect_input() This was marked as deprecated in 2.6.27 and all users except for playpaq_wm8510 fixed in that release. Signed-off-by: Mark Brown Signed-off-by: Takashi Iwai commit 8ae6a5523f4188dbe2b98a9385f5860df6ee47a3 Author: Jean Delvare Date: Wed Oct 15 19:58:12 2008 +0200 ALSA: ASoC: Convert wm8900 to a new-style i2c driver Convert the wm8900 codec driver to the new (standard) device driver binding model. Signed-off-by: Jean Delvare Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit 17be5522f6de1d4920e7d9235bfb0e0c682c6f8f Author: Jean Delvare Date: Wed Oct 15 19:57:12 2008 +0200 ALSA: ASoC: Convert wm8580 to a new-style i2c driver Convert the wm8580 codec driver to the new (standard) device driver binding model. Signed-off-by: Jean Delvare Acked-by: Mark Brown Signed-off-by: Takashi Iwai commit 45a6ac16c2136e4b902b09bf0b6192b940e8d732 Author: Matthew Ranostay Date: Wed Oct 15 14:45:38 2008 -0400 ALSA: hda: add support for jack detection on IDT/Sigmatel Added support for jack detection reporting to userspace for IDT/Sigmatel codecs. Signed-off-by: Matthew Ranostay Signed-off-by: Takashi Iwai commit 1e1be4329f2aec6a8ec63737a69258fedf34c55d Author: Takashi Iwai Date: Wed Jul 30 15:01:46 2008 +0200 ALSA: hda - Add hints for reconfig This patch adds the "hints" for reconfiguring codecs. The hints are simply string arrays and can be freely used/parsed by the codec patch. The hints can be input via hwdep sysfs files. Signed-off-by: Takashi Iwai commit 11aeff082ad9bd00e8475bf1630c3264344d3764 Author: Takashi Iwai Date: Wed Jul 30 15:01:46 2008 +0200 ALSA: hda - Add init_verbs entries This patch enables the additional init verbs for each codec. The verbs can be entered via hwdep sysfs file. These verbs are executed at reconfiguring the codec for non-standard setups like overriding the pin-defcfg. Signed-off-by: Takashi Iwai commit d7ffba19ce4c1b153d502a89d829400bf76d6c11 Author: Takashi Iwai Date: Wed Jul 30 15:01:46 2008 +0200 ALSA: hda - Add sysfs entries to hwdep devices Added the sysfs entries to hwdep devices so that the new features like reconfiguration can be done via sysfs. Signed-off-by: Takashi Iwai commit 6c1f45ea89b59ad2cdbfa6779e23d77b274da0a7 Author: Takashi Iwai Date: Wed Jul 30 15:01:45 2008 +0200 ALSA: hda - Add codec reconfiguration feature Added the reconfiguration feature of any individual codec. Via the reconfiguration, the old resources are released and the patch is called again to recreate the PCM and mixers in addition to the re-initialization. Signed-off-by: Takashi Iwai commit d13bd412dce23eed8bc35a2499d7d88cb39a1581 Author: Takashi Iwai Date: Wed Jul 30 15:01:45 2008 +0200 ALSA: hda - Manage kcontrol lists Manage all kcontrol elements created in the hda-intel driver. This makes it possible to remove and reconfigure the controls of each codec. Signed-off-by: Takashi Iwai commit f44ac8378d3d84b912b34f08afaff64182ee1b41 Author: Takashi Iwai Date: Wed Jul 30 15:01:45 2008 +0200 ALSA: hda - Allocate name string of each codec Allocate dynamically the name string of each codec instead of pointing to a static string. Signed-off-by: Takashi Iwai commit 603c40199252f0c3b91fca02fd3283c4f8e55179 Author: Takashi Iwai Date: Wed Jul 30 15:01:44 2008 +0200 ALSA: hda - Use generic array helpers Use generic array helpers to simplify array handling in snd-hda-intel. Signed-off-by: Takashi Iwai commit b2e1859745b783922533d29e3b03af29378a23f0 Author: Takashi Iwai Date: Wed Jul 30 15:01:44 2008 +0200 ALSA: hda - Add generic arrays Added helper functions to handle generic arrays. Signed-off-by: Takashi Iwai commit 176d5335fe66f379a339b0ab99cc7566e90ff1a9 Author: Takashi Iwai Date: Wed Jul 30 15:01:44 2008 +0200 ALSA: hda - Add infrastructure for dynamic stream allocation Added the infrastructure for dynamic stream allocation on HD-audio. Signed-off-by: Takashi Iwai commit 41b9eb264c8407655db57b60b4457fe1b2ec9977 Author: Stefan Assmann Date: Tue Jul 15 13:48:55 2008 +0200 x86, pci: introduce config option for pci reroute quirks (was: [PATCH 0/3] Boot IRQ quirks for Broadcom and AMD/ATI) This is against linux-2.6-tip, branch pci-ioapic-boot-irq-quirks. From: Stefan Assmann Subject: Introduce config option for pci reroute quirks The config option X86_REROUTE_FOR_BROKEN_BOOT_IRQS is introduced to enable (or disable) the redirection of the interrupt handler to the boot interrupt line by default. Depending on the existence of interrupt masking / threaded interrupt handling in the kernel (vanilla, rt, ...) and the maturity of the rerouting patch, users can enable or disable the redirection by default. This means that the reroute quirk can be applied to any kernel without changing it. Interrupt sharing could be increased if this option is enabled. However this option is vital for threaded interrupt handling, as done by the RT kernel. It should simplify the consolidation with the RT kernel. The option can be overridden by either pci=ioapicreroute or pci=noioapicreroute. Signed-off-by: Stefan Assmann Signed-off-by: Olaf Dabrunz Cc: Jesse Barnes Cc: Jon Masters Cc: Ihno Krumreich Cc: Sven Dietrich Cc: Daniel Gollub Cc: Felix Foerster Signed-off-by: Ingo Molnar commit 3e370b29d35fb01bfb92c2814d6f79bf6a2cb970 Merge: 88d1dce... 5b664cb... Author: Ingo Molnar Date: Fri Jul 18 19:31:12 2008 +0200 Merge branch 'linus' into x86/pci-ioapic-boot-irq-quirks Conflicts: drivers/pci/quirks.c Signed-off-by: Ingo Molnar commit 88d1dce3a74367291f65a757fbdcaf17f042f30c Author: Olaf Dabrunz Date: Tue Jul 8 15:59:48 2008 +0200 PCI quirks: call boot IRQ quirks at end of device init and during resume It is not necessary to call boot IRQ quirks before the BARs of the bridges are probed. The normal case is to use DECLARE_PCI_FIXUP_FINAL, so we use this instead now. After a resume, we need to call the quirks again. Signed-off-by: Olaf Dabrunz Signed-off-by: Stefan Assmann Cc: Jon Masters Cc: Olaf Dabrunz Cc: Stefan Assmann Cc: Ihno Krumreich Cc: Sven Dietrich Cc: Daniel Gollub Cc: Felix Foerster Signed-off-by: Ingo Molnar commit 542622da899be17250b8cae2ef5203025b91230a Author: Olaf Dabrunz Date: Tue Jul 8 15:59:48 2008 +0200 PCI quirks: disable AMD/ATI legacy boot interrupt generation Add quirks for several AMD/ATI chipsets to prevent generation of legacy boot interrupts. Integrates a separate older quirk to make IO-APIC mode work on AMD 8131 rev. A0 and B0, which was due to an AMD erratum. Signed-off-by: Olaf Dabrunz Signed-off-by: Stefan Assmann Cc: Jon Masters Cc: Olaf Dabrunz Cc: Stefan Assmann Cc: Ihno Krumreich Cc: Sven Dietrich Cc: Daniel Gollub Cc: Felix Foerster Signed-off-by: Ingo Molnar commit 7725118815537bd481a81828fa125ee154ee74fc Author: Olaf Dabrunz Date: Tue Jul 8 15:59:47 2008 +0200 PCI quirks: add quirk to disable boot interrupt generation on broadcom HT1000 Signed-off-by: Olaf Dabrunz Signed-off-by: Stefan Assmann Cc: Jon Masters Cc: Olaf Dabrunz Cc: Stefan Assmann Cc: Ihno Krumreich Cc: Sven Dietrich Cc: Daniel Gollub Cc: Felix Foerster Signed-off-by: Ingo Molnar commit dbbcfb2211761fa69e831a78119c9288fb87eb9d Merge: b0356cd... 9df2fe9... Author: Ingo Molnar Date: Sun Jul 13 22:52:27 2008 +0200 Merge branch 'linus' into x86/pci-ioapic-boot-irq-quirks Conflicts: arch/x86/mm/ioremap.c Signed-off-by: Ingo Molnar commit b0356cd0e7497252a2c45ecb07b79d931390c8b2 Author: Bernhard Walle Date: Fri Jun 20 17:05:33 2008 +0200 pci, acpi: reroute PCI interrupt to legacy boot interrupt equivalent, warning fix This patch just fixes the compiler warning: drivers/pci/quirks.c: In function ‘quirk_reroute_to_boot_interrupts_intel’: drivers/pci/quirks.c:1375: warning: unused variable ‘i’ Signed-off-by: Bernhard Walle Cc: sassmann@suse.de Signed-off-by: Ingo Molnar commit 33be8333421f842789fa7e363ce4142947e094f0 Author: Ingo Molnar Date: Wed Jun 18 14:47:09 2008 +0200 x86: boot IRQ quirks and rerouting, fix fix: init/built-in.o: In function `nosmp': main.c:(.init.text+0x14): undefined reference to `noioapicquirk' main.c:(.init.text+0x1e): undefined reference to `noioapicreroute' init/built-in.o: In function `maxcpus': main.c:(.init.text+0x133): undefined reference to `noioapicquirk' main.c:(.init.text+0x13d): undefined reference to `noioapicreroute' arch/x86/kernel/built-in.o: In function `parse_noapic': io_apic_32.c:(.init.text+0x7836): undefined reference to `noioapicquirk' io_apic_32.c:(.init.text+0x7840): undefined reference to `noioapicreroute' Signed-off-by: Ingo Molnar commit e1d3a90846b40ad3160bf4b648d36c6badad39ac Author: Stefan Assmann Date: Wed Jun 11 16:35:17 2008 +0200 pci, acpi: reroute PCI interrupt to legacy boot interrupt equivalent Some chipsets (e.g. intel 6700PXH) generate a legacy INTx when the IRQ entry in the chipset's IO-APIC is masked (as, e.g. the RT kernel does during interrupt handling). On chipsets where this INTx generation cannot be disabled, we reroute the valid interrupts to their legacy equivalent to get rid of spurious interrupts that might otherwise bring down (vital) interrupt lines through spurious interrupt detection in note_interrupt(). This patch benefited from discussions with Alexander Graf, Torsten Duwe, Ihno Krumreich, Daniel Gollub, Hannes Reinecke. The conclusions we drew and the patch itself are the authors' responsibility alone. Signed-off-by: Stefan Assmann Signed-off-by: Olaf Dabrunz Signed-off-by: Ingo Molnar commit 426b3b8d535e3e141331dc19c40f457b997c4d6d Author: Stefan Assmann Date: Wed Jun 11 16:35:16 2008 +0200 pci: add quirk to disable boot interrupt generation on intel 6300ESB Add a quirk to disable legacy boot interrupt generation on intel devices that support disabling it. This patch benefited from discussions with Alexander Graf, Torsten Duwe, Ihno Krumreich, Daniel Gollub, Hannes Reinecke. The conclusions we drew and the patch itself are the authors' responsibility alone. Signed-off-by: Stefan Assmann Signed-off-by: Olaf Dabrunz Signed-off-by: Ingo Molnar commit 9197979b518573999d52d9e85bce1680682ed85c Author: Stefan Assmann Date: Wed Jun 11 16:35:15 2008 +0200 x86, pci: introduce pci=ioapicreroute kernel cmdline option Introduce pci=ioapicreroute kernel cmdline option to enable rerouting of boot interrupts to the primary io-apic. Signed-off-by: Stefan Assmann Signed-off-by: Olaf Dabrunz Signed-off-by: Ingo Molnar commit a9322f6488b432ddc1e89be88242c827c633fb63 Author: Stefan Assmann Date: Wed Jun 11 16:35:14 2008 +0200 x86, pci: introduce pci=noioapicquirk kernel cmdline option Introduce pci=noioapicquirk kernel cmdline option to disable all boot interrupt quirks Signed-off-by: Stefan Assmann Signed-off-by: Olaf Dabrunz Signed-off-by: Ingo Molnar commit 747ada36ee23225d81657e4d633ac93b8ccbea7d Author: Olaf Dabrunz Date: Wed Jun 11 16:35:13 2008 +0200 pci: add PCI IDs for devices that need boot irq quirks Signed-off-by: Stefan Assmann Signed-off-by: Olaf Dabrunz Signed-off-by: Ingo Molnar