summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-09-19HID: logitech-dj: re-add device enumeration on probelogitech-wtpPeter Wu1-6/+12
The query part got removed in "HID: Workaround for Logitech Unifying Receiver on XHCI systems" because it would not work reliable for some XHCI systems. This also has as side-effect that enumeration will happen delayed (e.g. when a mouse is moved, or a key is pressed). As it also breaks module reloads, revert that part. (When the HID module is reloaded, it is possible that the receiver still has a radio link to a HID device. Then when a HID++ report is received (type 0x10 or 0x11), this packet would be dropped because the device is not yet known.) Small spelling fixes, and sync the return/break change to https://chromium-review.googlesource.com/167554 Signed-off-by: Peter Wu <lekensteyn@gmail.com>
2013-09-05HID: logitech-wtp: fix pressure level for TPRXYPeter Wu1-2/+6
This T650 always reports pressure level 0, even if I sit with my full body on it (ok, not my full body, but I pushed it pretty hard with my fingers). As a result, the pointer does not move! Let's fake some high value for now... raw[5] is the area, if you put a big hand on the touchpad then obviously you will get the pointer moving. raw[4] (Force) is the correct field here. Signed-off-by: Peter Wu <lekensteyn@gmail.com>
2013-09-05HID: logitech-wtp: more verbose debugging messagePeter Wu1-1/+1
Seeing many "wtp_input_mapping:" in the logs is useless, I actually want to know whether the function does anything useful or just returns -1. Signed-off-by: Peter Wu <lekensteyn@gmail.com>
2013-09-05HID: logitech-wtp: read full status bitsPeter Wu1-1/+1
The Contact Status field is two bits: 00 - no finger (released) 01 - touch 10 - hover 11 - reserved These constants are already defined, but unused. This patch does not have functional effects (as the status bit is only printed for debugging right now). Signed-off-by: Peter Wu <lekensteyn@gmail.com>
2013-09-04HID: logitech-wtp: remove crapBenjamin Tissoires1-48/+3
The driver was handling its own tracking id whereas it should not. The release tracking can be done in input-mt core now. The mouse emulation is handled in input-mt core now. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Conflicts: drivers/hid/hid-logitech-wtp.c [ Peter: small difference in input_mt_init_slots parameters which got deleted anyway ]
2013-09-04HID: Workaround for Logitech Unifying Receiver on XHCI systems (v2)Peter Wu1-43/+50
This patch addresses the following problem: On some systems (at least XHCI, it seems), either the request to enumerate connected devices issued during probe(), or the reply packets, fail. The fallout of this is that the driver never allocates the downstream devices (e.g. keyboards and mice). To fix, we do the following: - No longer issue a request to enumerate devices during probe. This was often failing anyway. - When we get a message for a nonexisting device (often CONNECTION_STATUS set to connected), send a request to enumerate devices at that time. - Before, we'd keep track of whether a device was connected in a struct that was allocated when the device was paired. However, with the changes above, we now get connected set before the device is paired, so we move this status out from the downstream device's struct and into the receiver struct. - When a device is paired, if it was already known to be connected previously, we handle it being connected at this time. This means allocating the Linux HID input device (something that happens when a device is connected, not paired). With these changes, Logitech devices work on our problematic XHCI systems. BUG=chrome-os-partner:22224 TEST=Tested M570 mouse, K400 keyboard, and Logitech T650 touchpad on Falco. Tested both insertion/removal of receiver and boot while inserted. Change-Id: I088a38164fb87ef1328fdc9047cb15f8505630f2 Signed-off-by: Andrew de los Reyes <adlr@chromium.org> - v2: assume connected when receiving a message from a device with no known device; properly initialise 'connected' variable for Device Paired notification (Peter Wu)
2013-08-26HID: logitech-dj: validate output reportPeter Wu1-4/+11
Userspace can write data of arbitrary size and contents using the hidraw API. This patch adds validation of the data length and prevents reading too many bytes for short messages. The full report is now also copied, previously the last byte was missing from the report. I assume that 1 (report type) + report_count equals HIDPP_REPORT_LONG_LENGTH (or HIDPP_REPORT_SHORT_LENGTH for short reports). Signed-off-by: Peter Wu <lekensteyn@gmail.com>
2013-08-26CHROMIUM: hid-logitech-wtp: Fixed button issue on WTPDennis Kempin1-4/+9
The buttons on WTP do not work when a finger is present on the touchpad. This is caused by the raw event overriding the button state. WTP does not send button states in the raw events. This CL adds a new event format to distinguish between those two cases. BUG=chromium:240850 TEST=manual test on WTP device Change-Id: Ia00cf88bd0733727eecb7ea625670a26b152ecfc Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57280
2013-08-26CHROMIUM: hid-logitech-wtp: fixed mouse supportDennis Kempin3-10/+120
The BluetoothTouchMouse Feature was not supported by the driver which breaks some devices. BUG=chromium:240850 TEST=manual test with various devices Change-Id: Ifdcab3c5c88b24a4a421326d149d7f49137369c0 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57258
2013-08-26CHROMIUM: hid-logitech-wtp: Support Touch Mice T400/T620Dennis Kempin4-2/+164
Add support for touch mice and implement the TouchMouseRawTouchPoints feature to support the models T400 and T620. BUG=chromium:240850 TEST=manual testing with both devices Change-Id: I263e85674dc5742d37cf30ba632496319b11da23 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57257
2013-08-26CHROMIUM: hid.h: Added HID_DJ_DEVICE macroDennis Kempin3-4/+6
This macro allows devices on the DJ bus to be defined the same way as devices on the bluetooth and usb bus. Most importantly it has the same API for Kernel 3.8 and 3.4, which is not the case for the HID_DEVICE macro. BUG=chromium:240850 TEST=no functional change. Change-Id: Id34ab2d21fe80c4cf19b750f245be677dbdf7774 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57655 Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
2013-08-26CHROMIUM: hid-logitech-wtp: Fixed bug which prevents TP from entering raw modeDennis Kempin1-3/+3
The command ID has been fixed. BUG=chromium:240850 TEST=manual test with T650 Change-Id: Ie87c0c15313b76a58750b548f8bb63b378915ae6 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57256 Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
2013-08-26CHROMIUM: hid-logitech-wtp: refactoring for extensibilityDennis Kempin2-278/+401
Refactored the driver to allow for future devices to be added. - Changed the initialization procedure to support multiple hidpp features. Each feature has methods attached to it, that take care of init, polling and parsing of events. - During init, the driver selects the first available feature that is supported (Currently only TouchPadRawXY is supported). - All device-specific branches are happening during the init method. e.q. don't send T651 to raw mode. - TouchpadRawXY allows two different event formats. Raw or attached to the end of the mouse events. The init method decides which one to use. - The data structures now reflect the data required to generate the output, no longer the data available from the device. - Reordered and renamed to reflect feature-specific code and generic code. BUG=chromium:240850 TEST=manually test with all 3 previously supported touchpads. Change-Id: I6d88d5cb3037d1f150d507926b481adaf3ff7a00 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57255 Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
2013-08-26CHROMIUM: HID: Support for Logitech T651 TouchpadAndrew de los Reyes5-13/+75
This touchpad is similar to the T650, but has a few notable differences: - It connects via Bluetooth as opposed to the Unifying Receiver - The raw data reports are in a unique format appended to normal mouse reports. The mouse reports must be ignored. Putting this pad into raw data mode will work as the T650 does, but Nestor Lopez Casado of Logitech advises against as that mode as it's not officially supported. BUG=chromium:223138 TEST=Manually tested on device. Will add base regression tests. Change-Id: Ic264d9f6034546fecee8fc387308460e1c4b14a5 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57253 Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
2013-08-26CHROMIUM: HID: MT-B driver for Logitech wireless touchpadsAndrew de los Reyes8-1/+571
This is part of the next iteration of Nestor Lopez Casado's introduction of HID++ support to the kernel from his patch "[PATCH 1/1] HID: Add full MT support for Logitech Wireless Touchpad" This driver provides an MT-B driver for Logitech wireless touchpads. It currently supports two models: - Logitech Wireless Touchpad - Logitech Wireless Rechargeable Touchpad T650 Documentation is provided at https://drive.google.com/a/logitech.com/?tab=mo#folders/0BxbRzx7vEV7eWmgwazJ3NUFfQ28 BUG=chromium-os:39354 TEST=manually tested on Link Change-Id: I3d88dd0099d5c940626ec80b4a99f296bf9ec80a Signed-off-by: Dennis Kempin <denniskempin@chromium.org>:wq Reviewed-on: https://gerrit.chromium.org/gerrit/57252 Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
2013-08-26HID: Helper functions for Logitech HID++ (v2)Andrew de los Reyes6-34/+638
This is part of the next iteration of Nestor Lopez Casado's introduction of HID++ support to the kernel from his patch "[PATCH 1/1] HID: Add full MT support for Logitech Wireless Touchpad" HID++ is a Logitech-specific protocol for communicating with HID devices. It can be used, for example, to probe properties of devices (like touch surface dimensions, battery status, and more), and to set state on a device (like a request to put the device into raw mode). Documentation is provided at https://drive.google.com/a/logitech.com/?tab=mo#folders/0BxbRzx7vEV7eWmgwazJ3NUFfQ28 BUG=chromium-os:39354 TEST=manually tested on Link Change-Id: Ia26573ae4098153aa74f33410f0c830bd9bd0706 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57251 Reviewed-by: Andrew de los Reyes <adlr@chromium.org> - v2: replace usbhid_submit_report by hid_hw_request (Peter Wu)
2013-08-26CHROMIUM: HID: logitech-dj: move .h file info .c file.Andrew de los Reyes2-126/+98
This is part of the next iteration of Nestor Lopez Casado's introduction of HID++ support to the kernel from his patch "[PATCH 1/1] HID: Add full MT support for Logitech Wireless Touchpad" These definitions are only used by the .c file. BUG=chromium-os:39354 TEST=manually tested on Link Change-Id: I61feca8bf108fc7b22d286699cfd77706d6647e7 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57250 Reviewed-by: Andrew de los Reyes <adlr@chromium.org> Conflicts: drivers/hid/hid-logitech-dj.h solved by adding 'bool querying_devices' to .c
2013-08-26CHROMIUM: HID: logitech-dj: Delay creation of enumerated devices until ↵Andrew de los Reyes2-9/+27
connected. This is necessary because it's impossible to communicate with devices that aren't connected and future patches will need to communicate with devices during probe(). By waiting until the device is connected, we ensure that we only register the device when it's active and ready for use. BUG=chromium-os:39354 TEST=manually tested on Link Change-Id: Id91f554f683d454e5de31e3741b448271623e02b Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57249 Reviewed-by: Andrew de los Reyes <adlr@chromium.org> Conflicts: drivers/hid/hid-logitech-dj.c
2013-08-25Linux 3.11-rc7Linus Torvalds1-1/+1
2013-08-25Merge tag 'staging-3.11-rc7' of ↵Linus Torvalds2-2/+3
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging Pull staging fixes from Greg KH: "Here are two tiny staging tree fixes (well, one is for an iio driver, but those updates come through the staging tree due to dependancies) One fixes a problem with an IIO driver, and the other fixes a bug in the comedi driver core" * tag 'staging-3.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: staging: comedi: bug-fix NULL pointer dereference on failed attach iio: adjd_s311: Fix non-scan mode data read
2013-08-25Merge tag 'usb-3.11-rc7' of ↵Linus Torvalds3-2/+7
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb Pull USB fixes from Greg KH: "Here are two USB fixes for 3.11-rc7 One fixes a reported regression in the OHCI driver, and the other fixes a reported build breakage in the USB phy drivers" * tag 'usb-3.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: usb: phy: fix build breakage USB: OHCI: add missing PCI PM callbacks to ohci-pci.c
2013-08-25Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-armLinus Torvalds3-4/+9
Pull ARM fixes from Russell King: "This round of fixes is smaller than previous: a couple more updates for the security fixes, and a one-liner kexec fix" * 'fixes' of git://git.linaro.org/people/rmk/linux-arm: ARM: 7816/1: CONFIG_KUSER_HELPERS: fix help text ARM: 7815/1: kexec: offline non panic CPUs on Kdump panic ARM: 7819/1: fiq: Cast the first argument of flush_icache_range()
2013-08-25Merge branch 'for-linus' of ↵Linus Torvalds8-19/+17
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs Pull vfs fixes from Al Viro: "Assorted fixes from the last week or so" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: VFS: collect_mounts() should return an ERR_PTR bfs: iget_locked() doesn't return an ERR_PTR efs: iget_locked() doesn't return an ERR_PTR() proc: kill the extra proc_readfd_common()->dir_emit_dots() cope with potentially long ->d_dname() output for shmem/hugetlb
2013-08-24Merge tag 'acpi-3.11-rc7' of ↵Linus Torvalds1-8/+3
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm Pull ACPI fix from Rafael Wysocki: "I really hoped that it wouldn't be necessary to change anything in ACPI at this point, but it turns out that we need to revert one more ACPI video commit causing trouble. This reverts a change in the ACPI video driver that caused the ACPI backlight initialization to be carried out even if acpi_backlight=vendor is passed in the kernel command line which turns out to break things at least on one system" * tag 'acpi-3.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: Revert "ACPI / video: Always call acpi_video_init_brightness() on init"
2013-08-24Merge tag 'scsi-fixes' of ↵Linus Torvalds6-19/+110
git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi Pull SCSI fixes from James Bottomley: "This is a set of small bug fixes for lpfc and zfcp and a fix for a fairly nasty bug in sg where a process which cancels I/O completes in a kernel thread which would then try to write back to the now gone userspace and end up writing to a random kernel address instead" * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: [SCSI] zfcp: remove access control tables interface (keep sysfs files) [SCSI] zfcp: fix schedule-inside-lock in scsi_device list loops [SCSI] zfcp: fix lock imbalance by reworking request queue locking [SCSI] sg: Fix user memory corruption when SG_IO is interrupted by a signal [SCSI] lpfc: Don't force CONFIG_GENERIC_CSUM on
2013-08-24ARC: [lib] strchr breakage in Big-endian configurationJoern Rennecke1-0/+10
For a search buffer, 2 byte aligned, strchr() was returning pointer outside of buffer (buf - 1) ------------->8---------------- // Input buffer (default 4 byte aigned) char *buffer = "1AA_"; // actual search start (to mimick 2 byte alignment) char *current_line = &(buffer[2]); // Character to search for char c = 'A'; char *c_pos = strchr(current_line, c); printf("%s\n", c_pos) --> 'AA_' as oppose to 'A_' ------------->8---------------- Reported-by: Anton Kolesov <Anton.Kolesov@synopsys.com> Debugged-by: Anton Kolesov <Anton.Kolesov@synopsys.com> Cc: <stable@vger.kernel.org> # [3.9 and 3.10] Cc: Noam Camus <noamc@ezchip.com> Signed-off-by: Joern Rennecke <joern.rennecke@embecosm.com> Signed-off-by: Vineet Gupta <vgupta@synopsys.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-08-24VFS: collect_mounts() should return an ERR_PTRDan Carpenter1-1/+1
This should actually be returning an ERR_PTR on error instead of NULL. That was how it was designed and all the callers expect it. [AV: actually, that's what "VFS: Make clone_mnt()/copy_tree()/collect_mounts() return errors" missed - originally collect_mounts() was expected to return NULL on failure] Cc: <stable@vger.kernel.org> # 3.10+ Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-08-24bfs: iget_locked() doesn't return an ERR_PTRDan Carpenter1-1/+1
iget_locked() returns a NULL on error, it doesn't return an ERR_PTR. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-08-24efs: iget_locked() doesn't return an ERR_PTR()Dan Carpenter1-1/+1
The iget_locked() function returns NULL on error and never an ERR_PTR. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-08-24proc: kill the extra proc_readfd_common()->dir_emit_dots()Oleg Nesterov1-2/+0
proc_readfd_common() does dir_emit_dots() twice in a row, we need to do this only once. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-08-24cope with potentially long ->d_dname() output for shmem/hugetlbAl Viro4-14/+14
dynamic_dname() is both too much and too little for those - the output may be well in excess of 64 bytes dynamic_dname() assumes to be enough (thanks to ashmem feeding really long names to shmem_file_setup()) and vsnprintf() is an overkill for those guys. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-08-23Merge branch 'for-3.11-fixes' of ↵Linus Torvalds3-10/+11
git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata Pull libata fixes from Tejun Heo: "This contains three commits all of which are updates for specific devices which aren't too widespread. Pretty limited scope and nothing too interesting or dangerous" * 'for-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: sata_fsl: save irqs while coalescing libata: apply behavioral quirks to sil3826 PMP sata, highbank: fix ordering of SGPIO signals
2013-08-23Merge branch 'for-3.11-fixes' of ↵Linus Torvalds1-5/+9
git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup Pull cgroup fix from Tejun Heo: "A late fix for cgroup. This fixes a behavior regression visible to userland which was created by a commit merged during -rc1. While the behavior change isn't too likely to be noticeable, the fix is relatively low risk and we'll need to backport it through -stable anyway if the bug gets released" * 'for-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: cpuset: fix a regression in validating config change
2013-08-23Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linuxLinus Torvalds18-49/+114
Pull drm fixes from Dave Airlie: "Ben was on holidays for a week so a few nouveau regression fixes backed up, but they all seem necessary. Otherwise one i915 and one gma500 fix" * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: gma500: Fix SDVO turning off randomly drm/nv04/disp: fix framebuffer pin refcounting drm/nouveau/mc: fix race condition between constructor and request_irq() drm/nouveau: fix reclocking on nv40 drm/nouveau/ltcg: fix allocating memory as free drm/nouveau/ltcg: fix ltcg memory initialization after suspend drm/nouveau/fb: fix null derefs in nv49 and nv4e init drm/i915: Invalidate TLBs for the rings after a reset
2013-08-23usb: phy: fix build breakageAnatolij Gustschin2-2/+2
Commit 94ae9843 (usb: phy: rename all phy drivers to phy-$name-usb.c) renamed drivers/usb/phy/otg_fsm.h to drivers/usb/phy/phy-fsm-usb.h but changed drivers/usb/phy/phy-fsm-usb.c to include not existing "phy-otg-fsm.h" instead of new "phy-fsm-usb.h". This breaks building: ... drivers/usb/phy/phy-fsm-usb.c:32:25: fatal error: phy-otg-fsm.h: No such file or directory compilation terminated. make[3]: *** [drivers/usb/phy/phy-fsm-usb.o] Error 1 This commit also missed to modify drivers/usb/phy/phy-fsl-usb.h to include new "phy-fsm-usb.h" instead of "otg_fsm.h" resulting in another build breakage: ... In file included from drivers/usb/phy/phy-fsl-usb.c:46:0: drivers/usb/phy/phy-fsl-usb.h:18:21: fatal error: otg_fsm.h: No such file or directory compilation terminated. make[3]: *** [drivers/usb/phy/phy-fsl-usb.o] Error 1 Fix both issues. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: stable <stable@vger.kernel.org> # 3.10+ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-08-23USB: OHCI: add missing PCI PM callbacks to ohci-pci.cAlan Stern1-0/+5
Commit c1117afb8589 (USB: OHCI: make ohci-pci a separate driver) neglected to preserve the entries for the pci_suspend and pci_resume driver callbacks. As a result, OHCI controllers don't work properly during suspend and after hibernation. This patch adds the missing callbacks to the driver. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Reported-and-tested-by: Steve Cotton <steve@s.cotton.clara.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-08-23staging: comedi: bug-fix NULL pointer dereference on failed attachIan Abbott1-1/+1
Commit dcd7b8bd63cb81c5b973bf86510ca3c80bbbd162 ("staging: comedi: put module _after_ detach" by myself) reversed a couple of calls in `comedi_device_attach()` when recovering from an error returned by the low-level driver's 'attach' handler. Unfortunately, that introduced a NULL pointer dereference bug as `dev->driver` is NULL after the call to `comedi_device_detach()`. We still have a pointer to the low-level comedi driver structure in the `driv` variable, so use that instead. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Cc: <stable@vger.kernel.org> # 3.10+ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-08-23Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netLinus Torvalds36-175/+282
Merge networking fixes from David Miller: 1) Revert Johannes Berg's genetlink locking fix, because it causes regressions. Johannes and Pravin Shelar are working on fixing things properly. 2) Do not drop ipv6 ICMP messages without a redirected header option, they are legal. From Duan Jiong. 3) Missing error return propagation in probing of via-ircc driver. From Alexey Khoroshilov. 4) Do not clear out broadcast/multicast/unicast/WOL bits in r8169 when initializing, from Peter Wu. 5) realtek phy driver programs wrong interrupt status bit, from Giuseppe CAVALLARO. 6) Fix statistics regression in AF_PACKET code, from Willem de Bruijn. 7) Bridge code uses wrong bitmap length, from Toshiaki Makita. 8) SFC driver uses wrong indexes to look up MAC filters, from Ben Hutchings. 9) Don't pass stack buffers into usb control operations in hso driver, from Daniel Gimpelevich. 10) Multiple ipv6 fragmentation headers in one packet is illegal and such packets should be dropped, from Hannes Frederic Sowa. 11) When TCP sockets are "repaired" as part of checkpoint/restart, the timestamp field of SKBs need to be refreshed otherwise RTOs can be wildly off. From Andrey Vagin. 12) Fix memcpy args (uses 'address of pointer' instead of 'pointer') in hostp driver. From Dan Carpenter. 13) nl80211hdr_put() doesn't return an ERR_PTR, but some code believes it does. From Dan Carpenter. 14) Fix regression in wireless SME disconnects, from Johannes Berg. 15) Don't use a stack buffer for DMA in zd1201 USB wireless driver, from Jussi Kivilinna. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (33 commits) ipv4: expose IPV4_DEVCONF ipv6: handle Redirect ICMP Message with no Redirected Header option be2net: fix disabling TX in be_close() Revert "genetlink: fix family dump race" hso: Fix stack corruption on some architectures hso: Earlier catch of error condition sfc: Fix lookup of default RX MAC filters when steered using ethtool bridge: Use the correct bit length for bitmap functions in the VLAN code packet: restore packet statistics tp_packets to include drops net: phy: rtl8211: fix interrupt on status link change r8169: remember WOL preferences on driver load via-ircc: don't return zero if via_ircc_open() failed macvtap: Ignore tap features when VNET_HDR is off macvtap: Correctly set tap features when IFF_VNET_HDR is disabled. macvtap: simplify usage of tap_features tcp: set timestamps for restored skb-s bnx2x: set VF DMAE when first function has 0 supported VFs bnx2x: Protect against VFs' ndos when SR-IOV is disabled bnx2x: prevent VF benign attentions bnx2x: Consider DCBX remote error ...
2013-08-23Merge branch 'akpm' (patches from Andrew Morton)Linus Torvalds8-14/+12
Merge fixes from Andrew Morton: "A few fixes. One is a licensing change and I don't do licensing, so please eyeball that one" Licensing eye-balled. * emailed patches from Andrew Morton <akpm@linux-foundation.org>: lib/lz4: correct the LZ4 license memcg: get rid of swapaccount leftovers nilfs2: fix issue with counting number of bio requests for BIO_EOPNOTSUPP error detection nilfs2: remove double bio_put() in nilfs_end_bio_write() for BIO_EOPNOTSUPP error drivers/platform/olpc/olpc-ec.c: initialise earlier
2013-08-23lib/lz4: correct the LZ4 licenseRichard Laager3-7/+7
The LZ4 code is listed as using the "BSD 2-Clause License". Signed-off-by: Richard Laager <rlaager@wiktel.com> Acked-by: Kyungsik Lee <kyungsik.lee@lge.com> Cc: Chanho Min <chanho.min@lge.com> Cc: Richard Yao <ryao@gentoo.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> [ The 2-clause BSD can be just converted into GPL, but that's rude and pointless, so don't do it - Linus ] Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-08-23memcg: get rid of swapaccount leftoversMichal Hocko3-3/+2
The swapaccount kernel parameter without any values has been removed by commit a2c8990aed5a ("memsw: remove noswapaccount kernel parameter") but it seems that we didn't get rid of all the left overs. Make sure that menuconfig help text and kernel-parameters.txt are clear about value for the paramter and remove the stalled comment which is not very much useful on its own. Signed-off-by: Michal Hocko <mhocko@suse.cz> Reported-by: Gergely Risko <gergely@risko.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-08-23nilfs2: fix issue with counting number of bio requests for BIO_EOPNOTSUPP ↵Vyacheslav Dubeyko1-1/+1
error detection Fix the issue with improper counting number of flying bio requests for BIO_EOPNOTSUPP error detection case. The sb_nbio must be incremented exactly the same number of times as complete() function was called (or will be called) because nilfs_segbuf_wait() will call wail_for_completion() for the number of times set to sb_nbio: do { wait_for_completion(&segbuf->sb_bio_event); } while (--segbuf->sb_nbio > 0); Two functions complete() and wait_for_completion() must be called the same number of times for the same sb_bio_event. Otherwise, wait_for_completion() will hang or leak. Signed-off-by: Vyacheslav Dubeyko <slava@dubeyko.com> Cc: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Tested-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-08-23nilfs2: remove double bio_put() in nilfs_end_bio_write() for BIO_EOPNOTSUPP ↵Vyacheslav Dubeyko1-2/+1
error Remove double call of bio_put() in nilfs_end_bio_write() for the case of BIO_EOPNOTSUPP error detection. The issue was found by Dan Carpenter and he suggests first version of the fix too. Signed-off-by: Vyacheslav Dubeyko <slava@dubeyko.com> Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Tested-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-08-23drivers/platform/olpc/olpc-ec.c: initialise earlierDaniel Drake1-1/+1
Being a low-level component, various drivers (e.g. olpc-battery) assume that it is ok to communicate with the OLPC Embedded Controller during probe. Therefore the OLPC EC driver must be initialised before other drivers try to use it. This was the case until it was recently moved out of arch/x86 and restructured around commits ac2504151f5a ("Platform: OLPC: turn EC driver into a platform_driver") and 85f90cf6ca56 ("x86: OLPC: switch over to using new EC driver on x86"). Use arch_initcall so that olpc-ec is readied earlier, matching the previous behaviour. Fixes a regression introduced in Linux-3.6 where various drivers such as olpc-battery and olpc-xo1-sci failed to load due to an inability to communicate with the EC. The user-visible effect was a lack of battery monitoring, missing ebook/lid switch input devices, etc. Signed-off-by: Daniel Drake <dsd@laptop.org> Cc: Andres Salomon <dilinger@queued.net> Cc: Paul Fox <pgf@laptop.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-08-23Merge tag 'drm-intel-fixes-2013-08-23' of ↵Dave Airlie2-0/+14
git://people.freedesktop.org/~danvet/drm-intel into drm-fixes Just one patch that soaked for quite a bit to fix a resume issue, resulting in gpu hangs (or worse) due to tlb containing garbage. * tag 'drm-intel-fixes-2013-08-23' of git://people.freedesktop.org/~danvet/drm-intel: drm/i915: Invalidate TLBs for the rings after a reset
2013-08-22ipv4: expose IPV4_DEVCONFstephen hemminger2-33/+35
IP sends device configuration (see inet_fill_link_af) as an array in the netlink information, but the indices in that array are not exposed to userspace through any current santized header file. It was available back in 2.6.32 (in /usr/include/linux/sysctl.h) but was broken by: commit 02291680ffba92e5b5865bc0c5e7d1f3056b80ec Author: Eric W. Biederman <ebiederm@xmission.com> Date: Sun Feb 14 03:25:51 2010 +0000 net ipv4: Decouple ipv4 interface parameters from binary sysctl numbers Eric was solving the sysctl problem but then the indices were re-exposed by a later addition of devconf support for IPV4 commit 9f0f7272ac9506f4c8c05cc597b7e376b0b9f3e4 Author: Thomas Graf <tgraf@infradead.org> Date: Tue Nov 16 04:32:48 2010 +0000 ipv4: AF_INET link address family Putting them in /usr/include/linux/ip.h seemed the logical match for the DEVCONF_ definitions for IPV6 in /usr/include/linux/ip6.h Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2013-08-22ipv6: handle Redirect ICMP Message with no Redirected Header optionDuan Jiong3-1/+26
rfc 4861 says the Redirected Header option is optional, so the kernel should not drop the Redirect Message that has no Redirected Header option. In this patch, the function ip6_redirect_no_header() is introduced to deal with that condition. Signed-off-by: Duan Jiong <duanj.fnst@cn.fujitsu.com> Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
2013-08-22be2net: fix disabling TX in be_close()Sathya Perla1-1/+1
commit fba875591 ("disable TX in be_close()") disabled TX in be_close() to protect be_xmit() from touching freed up queues in the AER recovery flow. But, TX must be disabled *before* cleaning up TX completions in the close() path, not after. This allows be_tx_compl_clean() to free up all TX-req skbs that were notified to the HW. Signed-off-by: Sathya Perla <sathya.perla@emulex.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2013-08-22Revert "ACPI / video: Always call acpi_video_init_brightness() on init"Rafael J. Wysocki1-8/+3
Revert commit c04c697 (ACPI / video: Always call acpi_video_init_brightness() on init), because it breaks eDP backlight at 1920x1080 on Acer Aspire S3 for Trevor Bortins. References: https://bugs.freedesktop.org/show_bug.cgi?id=68355 Reported-and-bisected-by: Trevor Bortins <enabfluw@gmail.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-08-22Merge branch 'sfc-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfcDavid S. Miller1-1/+1
Merge in a fix for RX MAC address filter programming bug in the sfc driver. Signed-off-by: David S. Miller <davem@davemloft.net>