aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2010-09-07skb: Add tracepoints to freeing skbKoki Sanagi1-0/+17
This patch adds tracepoint to consume_skb and add trace_kfree_skb before __kfree_skb in skb_free_datagram_locked and net_tx_action. Combinating with tracepoint on dev_hard_start_xmit, we can check how long it takes to free transmitted packets. And using it, we can calculate how many packets driver had at that time. It is useful when a drop of transmitted packet is a problem. sshd-6828 [000] 112689.258154: consume_skb: skbaddr=f2d99bb8 Signed-off-by: Koki Sanagi <[email protected]> Acked-by: David S. Miller <[email protected]> Acked-by: Neil Horman <[email protected]> Cc: Mathieu Desnoyers <[email protected]> Cc: Kaneshige Kenji <[email protected]> Cc: Izumo Taku <[email protected]> Cc: Kosaki Motohiro <[email protected]> Cc: Lai Jiangshan <[email protected]> Cc: Scott Mcmillan <[email protected]> Cc: Steven Rostedt <[email protected]> Cc: Eric Dumazet <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Frederic Weisbecker <[email protected]>
2010-09-07netdev: Add tracepoints to netdev layerKoki Sanagi1-0/+82
This patch adds tracepoint to dev_queue_xmit, dev_hard_start_xmit, netif_rx and netif_receive_skb. These tracepoints help you to monitor network driver's input/output. <idle>-0 [001] 112447.902030: netif_rx: dev=eth1 skbaddr=f3ef0900 len=84 <idle>-0 [001] 112447.902039: netif_receive_skb: dev=eth1 skbaddr=f3ef0900 len=84 sshd-6828 [000] 112447.903257: net_dev_queue: dev=eth4 skbaddr=f3fca538 len=226 sshd-6828 [000] 112447.903260: net_dev_xmit: dev=eth4 skbaddr=f3fca538 len=226 rc=0 Signed-off-by: Koki Sanagi <[email protected]> Acked-by: David S. Miller <[email protected]> Acked-by: Neil Horman <[email protected]> Cc: Mathieu Desnoyers <[email protected]> Cc: Kaneshige Kenji <[email protected]> Cc: Izumo Taku <[email protected]> Cc: Kosaki Motohiro <[email protected]> Cc: Lai Jiangshan <[email protected]> Cc: Scott Mcmillan <[email protected]> Cc: Steven Rostedt <[email protected]> Cc: Eric Dumazet <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Frederic Weisbecker <[email protected]>
2010-09-07napi: Convert trace_napi_poll to TRACE_EVENTNeil Horman1-2/+23
This patch converts trace_napi_poll from DECLARE_EVENT to TRACE_EVENT to improve the usability of napi_poll tracepoint. <idle>-0 [001] 241302.750777: napi_poll: napi poll on napi struct f6acc480 for device eth3 <idle>-0 [000] 241302.852389: napi_poll: napi poll on napi struct f5d0d70c for device eth1 The original patch is below: http://marc.info/?l=linux-kernel&m=126021713809450&w=2 [ [email protected]: And add a fix by Steven Rostedt: http://marc.info/?l=linux-kernel&m=126150506519173&w=2 ] Signed-off-by: Neil Horman <[email protected]> Acked-by: David S. Miller <[email protected]> Acked-by: Neil Horman <[email protected]> Cc: Mathieu Desnoyers <[email protected]> Cc: Kaneshige Kenji <[email protected]> Cc: Izumo Taku <[email protected]> Cc: Kosaki Motohiro <[email protected]> Cc: Lai Jiangshan <[email protected]> Cc: Scott Mcmillan <[email protected]> Cc: Steven Rostedt <[email protected]> Cc: Eric Dumazet <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Koki Sanagi <[email protected]> Signed-off-by: Frederic Weisbecker <[email protected]>
2010-09-07irq: Add tracepoint to softirq_raiseLai Jiangshan2-3/+31
Add a tracepoint for tracing when softirq action is raised. This and the existing tracepoints complete softirq's tracepoints: softirq_raise, softirq_entry and softirq_exit. And when this tracepoint is used in combination with the softirq_entry tracepoint we can determine the softirq raise latency. Signed-off-by: Lai Jiangshan <[email protected]> Acked-by: Mathieu Desnoyers <[email protected]> Acked-by: Neil Horman <[email protected]> Cc: David Miller <[email protected]> Cc: Kaneshige Kenji <[email protected]> Cc: Izumo Taku <[email protected]> Cc: Kosaki Motohiro <[email protected]> Cc: Lai Jiangshan <[email protected]> Cc: Scott Mcmillan <[email protected]> Cc: Steven Rostedt <[email protected]> Cc: Eric Dumazet <[email protected]> LKML-Reference: <[email protected]> [ factorize softirq events with DECLARE_EVENT_CLASS ] Signed-off-by: Koki Sanagi <[email protected]> Signed-off-by: Frederic Weisbecker <[email protected]>
2010-09-07agp/intel: Fix cache control for SandybridgeZhenyu Wang1-0/+20
Sandybridge GTT has new cache control bits in PTE, which controls graphics page cache in LLC or LLC/MLC, so we need to extend the mask function to respect the new bits. And set cache control to always LLC only by default on Gen6. Signed-off-by: Zhenyu Wang <[email protected]> Cc: [email protected] Signed-off-by: Chris Wilson <[email protected]>
2010-09-05cgroups: fix API thinkoMichael S. Tsirkin1-1/+10
cgroup_attach_task_current_cg API that have upstream is backwards: we really need an API to attach to the cgroups from another process A to the current one. In our case (vhost), a priveledged user wants to attach it's task to cgroups from a less priveledged one, the API makes us run it in the other task's context, and this fails. So let's make the API generic and just pass in 'from' and 'to' tasks. Add an inline wrapper for cgroup_attach_task_current_cg to avoid breaking bisect. Signed-off-by: Michael S. Tsirkin <[email protected]> Acked-by: Li Zefan <[email protected]> Acked-by: Paul Menage <[email protected]>
2010-09-05io-mapping: Fix the address space annotationsFrancisco Jerez1-12/+12
Fixes a bunch of sparse warnings in io-mapping.h because of the inconsistent __iomem usage. Signed-off-by: Francisco Jerez <[email protected]> LKML-Reference: <[email protected]> Cc: Andrew Morton <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
2010-09-03serial: fix port type conflict between NS16550A & U6_16550APhilippe Langlais2-3/+3
Bug seen by Dr. David Alan Gilbert with sparse Signed-off-by: Philippe Langlais <[email protected]> Cc: stable <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2010-09-03cls_cgroup: Fix rcu lockdep warningLi Zefan1-2/+8
Dave reported an rcu lockdep warning on 2.6.35.4 kernel task->cgroups and task->cgroups->subsys[i] are protected by RCU. So we avoid accessing invalid pointers here. This might happen, for example, when you are deref-ing those pointers while someone move @task from one cgroup to another. Reported-by: Dave Jones <[email protected]> Signed-off-by: Li Zefan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-09-03mutex: Fix annotations to include it in kernel-locking docbookRandy Dunlap1-0/+8
Fix kernel-doc notation in linux/mutex.h and kernel/mutex.c, then add these 2 files to the kernel-locking docbook as the Mutex API reference chapter. Add one API function to mutex-design.txt and correct a typo in that file. Signed-off-by: Randy Dunlap <[email protected]> Cc: Rusty Russell <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
2010-09-01gpiolib: Add 'struct gpio_chip' forward declaration for !GPIOLIB caseAnton Vorontsov1-0/+1
With CONFIG_GPIOLIB=n, the 'struct gpio_chip' is not declared, so the following pops up on PowerPC: cc1: warnings being treated as errors In file included from arch/powerpc/platforms/52xx/mpc52xx_common.c:19: include/linux/of_gpio.h:74: warning: 'struct gpio_chip' declared inside parameter list include/linux/of_gpio.h:74: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/of_gpio.h:75: warning: 'struct gpio_chip' declared inside parameter list make[2]: *** [arch/powerpc/platforms/52xx/mpc52xx_common.o] Error 1 This patch fixes the issue by providing the proper forward declaration. Signed-off-by: Anton Vorontsov <[email protected]> Signed-off-by: Grant Likely <[email protected]>
2010-08-31powerpc/85xx: Add P1021 PCI IDs and quirksAnton Vorontsov1-0/+2
This is needed for proper PCI-E support on P1021 SoCs. Signed-off-by: Anton Vorontsov <[email protected]> Signed-off-by: Kumar Gala <[email protected]>
2010-08-28Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds1-4/+14
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: net/ipv4: Eliminate kstrdup memory leak net/caif/cfrfml.c: use asm/unaligned.h ax25: missplaced sock_put(sk) qlge: reset the chip before freeing the buffers l2tp: test for ethernet header in l2tp_eth_dev_recv() tcp: select(writefds) don't hang up when a peer close connection tcp: fix three tcp sysctls tuning tcp: Combat per-cpu skew in orphan tests. pxa168_eth: silence gcc warnings pxa168_eth: update call to phy_mii_ioctl() pxa168_eth: fix error handling in prope pxa168_eth: remove unneeded null check phylib: Fix race between returning phydev and calling adjust_link caif-driver: add HAS_DMA dependency 3c59x: Fix deadlock between boomerang_interrupt and boomerang_start_tx qlcnic: fix poll implementation netxen: fix poll implementation bridge: netfilter: fix a memory leak
2010-08-28Merge branch 'for-linus' of git://git.infradead.org/users/eparis/notifyLinus Torvalds2-10/+4
* 'for-linus' of git://git.infradead.org/users/eparis/notify: fsnotify: drop two useless bools in the fnsotify main loop fsnotify: fix list walk order fanotify: Return EPERM when a process is not privileged fanotify: resize pid and reorder structure fanotify: drop duplicate pr_debug statement fanotify: flush outstanding perm requests on group destroy fsnotify: fix ignored mask handling between inode and vfsmount marks fanotify: add MAINTAINERS entry fsnotify: reset used_inode and used_vfsmount on each pass fanotify: do not dereference inode_mark when it is unset
2010-08-28Merge branch 'drm-fixes' of ↵Linus Torvalds1-2/+13
git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: vgaarb: Wrap vga_(get|put) in CONFIG_VGA_ARB drm/radeon/kms: add missing scratch update in dp_detect drm/modes: Fix CVT-R modeline generation drm: fix regression in drm locking since BKL removal. drm/radeon/kms: remove stray radeon_i2c_destroy drm: mm: fix range restricted allocations drm/nouveau: drop drm_global_mutex before sleeping in submission path drm: export drm_global_mutex for drivers to use drm/nv20: Don't use pushbuf calls on the original nv20. drm/nouveau: Fix TMDS on some DCB1.5 boards. drm/nouveau: Fix backlight control on PPC machines with an internal TMDS panel. drm/nv30: Apply modesetting to the correct slave encoder drm/nouveau: Use a helper function to match PCI device/subsystem IDs. drm/nv50: add dcb type 14 to enum to prevent compiler complaint
2010-08-28NOMMU: Stub out vm_get_page_prot() if there's no MMUDavid Howells1-0/+8
Stub out vm_get_page_prot() if there's no MMU. This was added by commit 804af2cf6e7a ("[AGPGART] remove private page protection map") and is used in commit c07fbfd17e61 ("fbmem: VM_IO set, but not propagated") in the fbmem video driver, but the function doesn't exist on NOMMU, resulting in an undefined symbol at link time. Signed-off-by: David Howells <[email protected]> Reviewed-by: Konrad Rzeszutek Wilk <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-08-28Merge branch 'for-linus' of ↵Linus Torvalds5-11/+12
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: pxa27x_keypad - remove input_free_device() in pxa27x_keypad_remove() Input: mousedev - fix regression of inverting axes Input: uinput - add devname alias to allow module on-demand load Input: hil_kbd - fix compile error USB: drop tty argument from usb_serial_handle_sysrq_char() Input: sysrq - drop tty argument form handle_sysrq() Input: sysrq - drop tty argument from sysrq ops handlers
2010-08-27fanotify: resize pid and reorder structureTvrtko Ursulin1-3/+3
resize pid and reorder the fanotify_event_metadata so it is naturally aligned and we can work towards dropping the packed attributed Signed-off-by: Tvrtko Ursulin <[email protected]> Cc: Andreas Dilger <[email protected]> Signed-off-by: Eric Paris <[email protected]>
2010-08-27vgaarb: Wrap vga_(get|put) in CONFIG_VGA_ARBChris Wilson1-2/+13
Fix link failure without the vga arbitrator. Signed-off-by: Chris Wilson <[email protected]> Cc: Dave Airlie <[email protected]> Cc: Jesse Barnes <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2010-08-25Merge branch 'linus' into perf/coreIngo Molnar42-123/+458
Merge reason: pick up perf fixes Signed-off-by: Ingo Molnar <[email protected]>
2010-08-25tcp: Combat per-cpu skew in orphan tests.David S. Miller1-4/+14
As reported by Anton Blanchard when we use percpu_counter_read_positive() to make our orphan socket limit checks, the check can be off by up to num_cpus_online() * batch (which is 32 by default) which on a 128 cpu machine can be as large as the default orphan limit itself. Fix this by doing the full expensive sum check if the optimized check triggers. Reported-by: Anton Blanchard <[email protected]> Signed-off-by: David S. Miller <[email protected]> Acked-by: Eric Dumazet <[email protected]>
2010-08-25workqueue: fix cwq->nr_active underflowTejun Heo1-7/+9
cwq->nr_active is used to keep track of how many work items are active for the cpu workqueue, where 'active' is defined as either pending on global worklist or executing. This is used to implement the max_active limit and workqueue freezing. If a work item is queued after nr_active has already reached max_active, the work item doesn't increment nr_active and is put on the delayed queue and gets activated later as previous active work items retire. try_to_grab_pending() which is used in the cancellation path unconditionally decremented nr_active whether the work item being cancelled is currently active or delayed, so cancelling a delayed work item makes nr_active underflow. This breaks max_active enforcement and triggers BUG_ON() in destroy_workqueue() later on. This patch fixes this bug by adding a flag WORK_STRUCT_DELAYED, which is set while a work item in on the delayed list and making try_to_grab_pending() decrement nr_active iff the work item is currently active. The addition of the flag enlarges cwq alignment to 256 bytes which is getting a bit too large. It's scheduled to be reduced back to 128 bytes by merging WORK_STRUCT_PENDING and WORK_STRUCT_CWQ in the next devel cycle. Signed-off-by: Tejun Heo <[email protected]> Reported-by: Johannes Berg <[email protected]>
2010-08-24ACPI/PCI: Negotiate _OSC control bits before requesting them Rafael J. Wysocki1-2/+2
It is possible that the BIOS will not grant control of all _OSC features requested via acpi_pci_osc_control_set(), so it is recommended to negotiate the final set of _OSC features with the query flag set before calling _OSC to request control of these features. To implement it, rework acpi_pci_osc_control_set() so that the caller can specify the mask of _OSC control bits to negotiate and the mask of _OSC control bits that are absolutely necessary to it. Then, acpi_pci_osc_control_set() will run _OSC queries in a loop until the mask of _OSC control bits returned by the BIOS is equal to the mask passed to it. Also, before running the _OSC request acpi_pci_osc_control_set() will check if the caller's required control bits are present in the final mask. Using this mechanism we will be able to avoid situations in which the BIOS doesn't grant control of certain _OSC features, because they depend on some other _OSC features that have not been requested. Signed-off-by: Rafael J. Wysocki <[email protected]> Signed-off-by: Jesse Barnes <[email protected]>
2010-08-24ACPI/PCI: Do not preserve _OSC control bits returned by a query Rafael J. Wysocki1-3/+0
There is the assumption in acpi_pci_osc_control_set() that it is always sufficient to compare the mask of _OSC control bits to be requested with the result of an _OSC query where all of the known control bits have been checked. However, in general, that need not be the case. For example, if an _OSC feature A depends on an _OSC feature B and control of A, B plus another _OSC feature C is requested simultaneously, the BIOS may return A, B, C, while it would only return C if A and C were requested without B. That may result in passing a wrong mask of _OSC control bits to an _OSC control request, in which case the BIOS may only grant control of a subset of the requested features. Moreover, acpi_pci_run_osc() will return error code if that happens and the caller of acpi_pci_osc_control_set() will not know that it's been granted control of some _OSC features. Consequently, the system will generally not work as expected. Apart from this acpi_pci_osc_control_set() always uses the mask of _OSC control bits returned by the very first invocation of acpi_pci_query_osc(), but that is done with the second argument equal to OSC_PCI_SEGMENT_GROUPS_SUPPORT which generally happens to affect the returned _OSC control bits. For these reasons, make acpi_pci_osc_control_set() always check if control of the requested _OSC features will be granted before making the final control request. As a result, the osc_control_qry and osc_queried members of struct acpi_pci_root are not necessary any more, so drop them and remove the remaining code referring to them. Signed-off-by: Rafael J. Wysocki <[email protected]> Signed-off-by: Jesse Barnes <[email protected]>
2010-08-24Merge branch 'perf-fixes-for-linus' of ↵Linus Torvalds1-2/+6
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: watchdog: Don't throttle the watchdog tracing: Fix timer tracing
2010-08-24guard page for stacks that grow upwardsLuck, Tony1-1/+7
pa-risc and ia64 have stacks that grow upwards. Check that they do not run into other mappings. By making VM_GROWSUP 0x0 on architectures that do not ever use it, we can avoid some unpleasant #ifdefs in check_stack_guard_page(). Signed-off-by: Tony Luck <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-08-24workqueue: improve destroy_workqueue() debuggabilityTejun Heo1-0/+2
Now that the worklist is global, having works pending after wq destruction can easily lead to oops and destroy_workqueue() have several BUG_ON()s to catch these cases. Unfortunately, BUG_ON() doesn't tell much about how the work became pending after the final flush_workqueue(). This patch adds WQ_DYING which is set before the final flush begins. If a work is requested to be queued on a dying workqueue, WARN_ON_ONCE() is triggered and the request is ignored. This clearly indicates which caller is trying to queue a work on a dying workqueue and keeps the system working in most cases. Locking rule comment is updated such that the 'I' rule includes modifying the field from destruction path. Signed-off-by: Tejun Heo <[email protected]>
2010-08-24Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6Linus Torvalds3-34/+58
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: kobject_uevent: fix typo in comments firmware_class: fix typo in error path kobject: Break the kobject namespace defs into their own header
2010-08-24Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6Linus Torvalds1-0/+1
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (29 commits) ARM: imx: fix build failure concerning otg/ulpi USB: ftdi_sio: add product ID for Lenz LI-USB USB: adutux: fix misuse of return value of copy_to_user() USB: iowarrior: fix misuse of return value of copy_to_user() USB: xHCI: update ring dequeue pointer when process missed tds USB: xhci: Remove buggy assignment in next_trb() USB: ftdi_sio: Add ID for Ionics PlugComputer USB: serial: io_ti.c: don't return 0 if writing the download record failed USB: otg: twl4030: fix wrong assumption of starting state USB: gadget: Return -ENOMEM on memory allocation failure USB: gadget: fix composite kernel-doc warnings USB: ssu100: set tty_flags in ssu100_process_packet USB: ssu100: add disconnect function for ssu100 USB: serial: export symbol usb_serial_generic_disconnect USB: ssu100: rework logic for TIOCMIWAIT USB: ssu100: add register parameter to ssu100_setregister USB: ssu100: remove duplicate #defines in ssu100 USB: ssu100: refine process_packet in ssu100 USB: ssu100: add locking for port private data in ssu100 USB: r8a66597-udc: return -ENOMEM if kzalloc() fails ...
2010-08-23USB: gadget: fix composite kernel-doc warningsRandy Dunlap1-0/+1
Warning(include/linux/usb/composite.h:284): No description found for parameter 'disconnect' Warning(drivers/usb/gadget/composite.c:744): No description found for parameter 'c' Warning(drivers/usb/gadget/composite.c:744): Excess function parameter 'cdev' description in 'usb_string_ids_n' Signed-off-by: Randy Dunlap <[email protected]> Cc: David Brownell <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2010-08-23Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds12-26/+58
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (27 commits) netfilter: fix CONFIG_COMPAT support isdn/avm: fix build when PCMCIA is not enabled header: fix broken headers for user space e1000e: don't check for alternate MAC addr on parts that don't support it e1000e: disable ASPM L1 on 82573 ll_temac: Fix poll implementation netxen: fix a race in netxen_nic_get_stats() qlnic: fix a race in qlcnic_get_stats() irda: fix a race in irlan_eth_xmit() net: sh_eth: remove unused variable netxen: update version 4.0.74 netxen: fix inconsistent lock state vlan: Match underlying dev carrier on vlan add ibmveth: Fix opps during MTU change on an active device ehea: Fix synchronization between HW and SW send queue bnx2x: Update bnx2x version to 1.52.53-4 bnx2x: Fix PHY locking problem rds: fix a leak of kernel memory netlink: fix compat recvmsg netfilter: fix userspace header warning ...
2010-08-23Merge branch 'for-upstream/pvhvm' of ↵Linus Torvalds1-5/+9
git://xenbits.xensource.com/people/ianc/linux-2.6 * 'for-upstream/pvhvm' of git://xenbits.xensource.com/people/ianc/linux-2.6: xen: pvhvm: make it clearer that XEN_UNPLUG_* define bits in a bitfield xen: pvhvm: rename xen_emul_unplug=ignore to =unnnecessary xen: pvhvm: allow user to request no emulated device unplug
2010-08-23Merge branch 'drm-core-next' of ↵Linus Torvalds7-23/+39
git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (33 commits) drm/radeon/kms: fix typo in radeon_compute_pll_gain drm/radeon/kms: try to detect tv vs monitor for underscan drm/radeon/kms: fix sideport detection on newer rs880 boards drm/radeon: fix passing wrong type to gem object create. drm/radeon/kms: set encoder type to DVI for HDMI on evergreen drm/radeon/kms: add back missing break in info ioctl drm/radeon/kms: don't enable MSIs on AGP boards drm/radeon/kms: fix agp mode setup on cards that use pcie bridges drm: move dereference below check drm: fix end of loop test drm/radeon/kms: rework radeon_dp_detect() logic drm/radeon/kms: add missing asic callback assignment for evergreen drm/radeon/kms/DCE3+: switch pads to ddc mode when going i2c drm/radeon/kms/pm: bail early if nothing's changing drm/radeon/kms/atom: clean up dig atom handling drm/radeon/kms: DCE3/4 transmitter fixes drm/radeon/kms: rework encoder handling drm/radeon/kms: DCE3/4 AdjustPixelPll updates drm/radeon: Fix stack data leak drm/radeon/kms: fix GTT/VRAM overlapping test ...
2010-08-23kobject: Break the kobject namespace defs into their own headerDavid Howells3-34/+58
Break the kobject namespace defs into their own header to avoid a header file inclusion ordering problem between linux/sysfs.h and linux/kobject.h. This fixes the build breakage on older versions of gcc. Signed-off-by: David Howells <[email protected]> Cc: Eric Biederman <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2010-08-23block: add function call to switch the IO scheduler from a driverJens Axboe1-0/+1
Currently drivers must do an elevator_exit() + elevator_init() to switch IO schedulers. There are a few problems with this: - Since commit 1abec4fdbb142e3ccb6ce99832fae42129134a96, elevator_init() requires a zeroed out q->elevator pointer. The two existing in-kernel users don't do that. - It will only work at initialization time, since using the above two-staged construct does not properly quisce the queue. So add elevator_change() which takes care of this, and convert the elv_iosched_store() sysfs interface to use this helper as well. Reported-by: Peter Oberparleiter <[email protected]> Reported-by: Kevin Vigor <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
2010-08-23xen: pvhvm: make it clearer that XEN_UNPLUG_* define bits in a bitfieldIan Campbell1-6/+9
by defining in terms of (1<<N). XEN_UNPLUG_UNNECESSARY and XEN_UNPLUG_NEVER are only used within the kernel and are not defined as a bit on the unplug IO port. Therefore use a bit which is outside the potentially valid range of the 16 bit IO port. Signed-off-by: Ian Campbell <[email protected]> Acked-by: Jeremy Fitzhardinge <[email protected]> Acked-by: Stefano Stabellini <[email protected]>
2010-08-23xen: pvhvm: rename xen_emul_unplug=ignore to =unnnecessaryIan Campbell1-1/+1
It is not immediately clear what this option causes to become ignored. The actual meaning is that it is not necessary to unplug the emulated devices to safely use the PV ones, even if the platform does not support the unplug protocol. (pressumably the user will only add this option if they have ensured that their domain configuration is safe). I think xen_emul_unplug=unnecessary better captures this. Signed-off-by: Ian Campbell <[email protected]> Acked-by: Jeremy Fitzhardinge <[email protected]> Acked-by: Stefano Stabellini <[email protected]>
2010-08-23xen: pvhvm: allow user to request no emulated device unplugIan Campbell1-0/+1
this allows the user to disable pvhvm and revert to emulated devices in case of a system misconfiguration (e.g. initramfs with only emulated drivers in it). Signed-off-by: Ian Campbell <[email protected]> Acked-by: Jeremy Fitzhardinge <[email protected]> Acked-by: Stefano Stabellini <[email protected]>
2010-08-22header: fix broken headers for user spaceChangli Gao10-26/+26
__packed is only defined in kernel space, so we should use __attribute__((packed)) for the code shared between kernel and user space. Two __attribute() annotations are replaced with __attribute__() too. Signed-off-by: Changli Gao <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-08-22fanotify: flush outstanding perm requests on group destroyEric Paris2-7/+1
When an fanotify listener is closing it may cause a deadlock between the listener and the original task doing an fs operation. If the original task is waiting for a permissions response it will be holding the srcu lock. The listener cannot clean up and exit until after that srcu lock is syncronized. Thus deadlock. The fix introduced here is to stop accepting new permissions events when a listener is shutting down and to grant permission for all outstanding events. Thus the original task will eventually release the srcu lock and the listener can complete shutdown. Reported-by: Andreas Gruenbacher <[email protected]> Cc: Andreas Gruenbacher <[email protected]> Signed-off-by: Eric Paris <[email protected]>
2010-08-22Merge branch 'for-linus' of ↵Linus Torvalds1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: slab: fix object alignment slub: add missing __percpu markup in mm/slub_def.h
2010-08-21workqueue: Add basic tracepoints to track workqueue executionArjan van de Ven1-0/+62
With the introduction of the new unified work queue thread pools, we lost one feature: It's no longer possible to know which worker is causing the CPU to wake out of idle. The result is that PowerTOP now reports a lot of "kworker/a:b" instead of more readable results. This patch adds a pair of tracepoints to the new workqueue code, similar in style to the timer/hrtimer tracepoints. With this pair of tracepoints, the next PowerTOP can correctly report which work item caused the wakeup (and how long it took): Interrupt (43) i915 time 3.51ms wakeups 141 Work ieee80211_iface_work time 0.81ms wakeups 29 Work do_dbs_timer time 0.55ms wakeups 24 Process Xorg time 21.36ms wakeups 4 Timer sched_rt_period_timer time 0.01ms wakeups 1 Signed-off-by: Arjan van de Ven <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-08-21mm: make the vma list be doubly linkedLinus Torvalds1-1/+1
It's a really simple list, and several of the users want to go backwards in it to find the previous vma. So rather than have to look up the previous entry with 'find_vma_prev()' or something similar, just make it doubly linked instead. Tested-by: Ian Campbell <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-08-21Input: uinput - add devname alias to allow module on-demand loadKay Sievers2-1/+1
Recent modprobe and udev versions allow to create device nodes for modules which are not loaded. Only the first access will cause the in-kernel module loader to pull-in the module. Systems which never access the device node will not needlessly load the module, and no longer need init scripts or other facilities to unconditionally load it. Signed-off-by: Kay Sievers <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-21USB: drop tty argument from usb_serial_handle_sysrq_char()Dmitry Torokhov1-2/+1
Since handle_sysrq() does not take tty as argument anymore we can drop it from usb_serial_handle_sysrq_char() as well. Acked-by: Alan Cox <[email protected]> Acked-by: Jason Wessel <[email protected]> Acked-by: Greg Kroah-Hartman <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-21Input: sysrq - drop tty argument form handle_sysrq()Dmitry Torokhov2-8/+6
Sysrq operations do not accept tty argument anymore so no need to pass it to us. [Stephen Rothwell <[email protected]>: fix build breakage in drm code caused by sysrq using bool but not including linux/types.h] [Sachin Sant <[email protected]>: fix build breakage in s390 keyboadr driver] Acked-by: Alan Cox <[email protected]> Acked-by: Jason Wessel <[email protected]> Acked-by: Greg Kroah-Hartman <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-20kfifo: implement missing __kfifo_skip_r()Andrea Righi1-0/+2
kfifo_skip() is currently broken, due to the missing of the internal helper function. Add it. Signed-off-by: Andrea Righi <[email protected]> Cc: Greg KH <[email protected]> Acked-by: Stefani Seibold <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-08-19Input: sysrq - drop tty argument from sysrq ops handlersDmitry Torokhov1-1/+5
Noone is using tty argument so let's get rid of it. Acked-by: Alan Cox <[email protected]> Acked-by: Jason Wessel <[email protected]> Acked-by: Greg Kroah-Hartman <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2010-08-19tracing: Fix timer tracingArjan van de Ven1-2/+6
PowerTOP would like to be able to trace timers. Unfortunately, the current timer tracing is not very useful: the actual timer function is not recorded in the trace at the start of timer execution. Although this is recorded for timer "start" time (when it gets armed), this is not useful; most timers get started early, and a tracer like PowerTOP will never see this event, but will only see the actual running of the timer. This patch just adds the function to the timer tracing; I've verified with PowerTOP that now it can get useful information about timers. Signed-off-by: Arjan van de Ven <[email protected]> Cc: [email protected] Cc: Steven Rostedt <[email protected]> Cc: Frederic Weisbecker <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: <[email protected]> # .35.x, .34.x, .33.x LKML-Reference: <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
2010-08-19Merge branch 'tip/perf/urgent' of ↵Ingo Molnar477-4670/+12490
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core