Steve French [Sat, 16 Nov 2013 02:41:32 +0000 (20:41 -0600)]
setfacl removes part of ACL when setting POSIX ACLs to Samba
setfacl over cifs mounts can remove the default ACL when setting the
(non-default part of) the ACL and vice versa (we were leaving at 0
rather than setting to -1 the count field for the unaffected
half of the ACL. For example notice the setfacl removed
the default ACL in this sequence:
David S. Miller [Sat, 16 Nov 2013 02:11:16 +0000 (21:11 -0500)]
net: Handle CHECKSUM_COMPLETE more adequately in pskb_trim_rcsum().
Currently pskb_trim_rcsum() just balks on CHECKSUM_COMPLETE packets
and remarks them as CHECKSUM_NONE, forcing a software checksum
validation later.
We have all of the mechanics available to fixup the skb->csum value,
even for complicated fragmented packets, via the helpers
skb_checksum() and csum_sub().
Eric Dumazet [Fri, 15 Nov 2013 16:58:14 +0000 (08:58 -0800)]
pkt_sched: fq: fix pacing for small frames
For performance reasons, sch_fq tried hard to not setup timers for every
sent packet, using a quantum based heuristic : A delay is setup only if
the flow exhausted its credit.
Problem is that application limited flows can refill their credit
for every queued packet, and they can evade pacing.
This problem can also be triggered when TCP flows use small MSS values,
as TSO auto sizing builds packets that are smaller than the default fq
quantum (3028 bytes)
This patch adds a 40 ms delay to guard flow credit refill.
Johannes Berg [Fri, 15 Nov 2013 13:19:08 +0000 (14:19 +0100)]
genetlink: unify registration functions
Now that the ops assignment is just two variables rather than a
long list iteration etc., there's no reason to separately export
__genl_register_family() and __genl_register_family_with_ops().
Unify the two functions into __genl_register_family() and make
genl_register_family_with_ops() call it after assigning the ops.
Linus Torvalds [Sat, 16 Nov 2013 00:48:22 +0000 (16:48 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
Pull HID updates from Jiri Kosina:
- i2c-hid is not querying init reports any more, as it's not mandated
by the spec, and annoys quite a few devices during enumeration, by
Bibek Basu
- a lot of fixes for Logitech devices, by Simon Wood
- hid-apple now has an option to switch between Option and Command
mode, by Nanno Langstraat
- Some more workarounds for severely broken ELO devices, by Oliver
Neukum
- more devm conversions, by Benjamin Tissoires
- wiimote correctness fixes, by David Herrmann
- a lot of added support for various new device IDs and random small
fixes here and there"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (34 commits)
HID: enable Mayflash USB Gamecube Adapter
HID: sony: Add force feedback support for Dualshock3 USB
Input: usbtouchscreen: ignore eGalax/D-Wav/EETI HIDs
HID: don't ignore eGalax/D-Wav/EETI HIDs
HID: roccat: add missing special driver declarations
HID:hid-lg4ff: Correct Auto-center strength for wheels other than MOMO and MOMO2
HID:hid-lg4ff: Initialize device properties before we touch autocentering.
HID:hid-lg4ff: ensure ConstantForce is disabled when set to 0
HID:hid-lg4ff: Switch autocentering off when strength is set to zero.
HID:hid-lg4ff: Scale autocentering force properly on Logitech wheel
HID: roccat: fix Coverity CID 141438
HID: multitouch: add manufacturer to Kconfig help text
HID: logitech-dj: small cleanup in rdcat()
HID: remove self-assignment from hid_input_report
HID: hid-sensor-hub: fix report size
HID: i2c-hid: Stop querying for init reports
HID: roccat: add support for Ryos MK keyboards
HID: roccat: generalize some common code
HID: roccat: add new device return value
HID: wiimote: add pro-controller analog stick calibration
...
Linus Torvalds [Sat, 16 Nov 2013 00:47:22 +0000 (16:47 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial
Pull trivial tree updates from Jiri Kosina:
"Usual earth-shaking, news-breaking, rocket science pile from
trivial.git"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (23 commits)
doc: usb: Fix typo in Documentation/usb/gadget_configs.txt
doc: add missing files to timers/00-INDEX
timekeeping: Fix some trivial typos in comments
mm: Fix some trivial typos in comments
irq: Fix some trivial typos in comments
NUMA: fix typos in Kconfig help text
mm: update 00-INDEX
doc: Documentation/DMA-attributes.txt fix typo
DRM: comment: `halve' -> `half'
Docs: Kconfig: `devlopers' -> `developers'
doc: typo on word accounting in kprobes.c in mutliple architectures
treewide: fix "usefull" typo
treewide: fix "distingush" typo
mm/Kconfig: Grammar s/an/a/
kexec: Typo s/the/then/
Documentation/kvm: Update cpuid documentation for steal time and pv eoi
treewide: Fix common typo in "identify"
__page_to_pfn: Fix typo in comment
Correct some typos for word frequency
clk: fixed-factor: Fix a trivial typo
...
Linus Torvalds [Sat, 16 Nov 2013 00:43:53 +0000 (16:43 -0800)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull input updates from Dmitry Torokhov:
"Updates for the input subsystem. You will get an new drivers for
Hyper-V synthetic keyboard and for Neonode zForce touchscreens, plus a
bunch of driver fixes and cleanups"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (49 commits)
Revert "Input: ALPS - add support for model found on Dell XT2"
arm: dts: am335x sk: add touchscreen support
Input: ti_am335x_tsc - fix spelling mistake in TSC/ADC DT binding
Input: cyttsp4 - replace IS_ERR and PTR_ERR with PTR_ERR_OR_ZERO
Input: mma8450 - add missing i2c_set_clientdata() in mma8450_probe()
Input: mpu3050 - add missing i2c_set_clientdata() in mpu3050_probe()
Input: tnetv107x-keypad - make irqs signed for error handling
Input: add driver for Neonode zForce based touchscreens
Input: sh_keysc - enable the driver on all ARM platforms
Input: remove a redundant max() call
Input: mousedev - allow disabling even without CONFIG_EXPERT
Input: allow deselecting serio drivers even without CONFIG_EXPERT
Input: i8042 - add PNP modaliases
Input: evdev - fall back to vmalloc for client event buffer
Input: cypress_ps2 - do not consider data bad if palm is detected
Input: cypress_ps2 - remove useless cast
Input: fix PWM-related undefined reference errors
Input: ALPS - change secondary device's name
Input: wacom - not all multi-interface devices support touch
Input: nspire-keypad - add missing clk_disable_unprepare() on error path
...
Linus Torvalds [Sat, 16 Nov 2013 00:37:40 +0000 (16:37 -0800)]
Merge tag 'mfd-3.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next
Pull MFD updates from Samuel Ortiz:
"For the 3.13 merge window we have a couple of new drivers for the AMS
AS3722 PMIC and for STMicroelectronics STw481x PMIC.
Although this is a smaller update than usual, we also have:
- Device tree support for the max77693 driver
- linux/of.h inclusion for all DT compatible MFD drivers, to avoid
build breakage in the future
- Support for Intel Wildcat Point-LP PCH through the lpc_ich driver
- A small arizona update for new wm5110 DSP registers and a few fixes
- A small palmas update as well, including an of_device table
addition and a few minor fixes
- Two small mfd-core changes, one including a memory leak fix for
when mfd_add_device() fails
- Our usual round of minor cleanups and janitorial fixes"
* tag 'mfd-3.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next: (63 commits)
Documentation: mfd: Update s2mps11.txt
mfd: pm8921: Potential NULL dereference in pm8921_remove()
mfd: Fix memory leak in mfd_add_devices()
mfd: Stop setting refcounting pointers in original mfd_cell arrays
mfd: wm5110: Enable micd clamp functionality
mfd: lpc_ich: Add Device IDs for Intel Wildcat Point-LP PCH
mfd: max77693: Fix up bug of wrong interrupt number
mfd: as3722: Don't export the regmap config
mfd: twl6040: Remove obsolete cleanup for i2c clientdata
mfd: tps65910: Remove warning during dt node parsing
mfd: lpc_sch: Ignore resource conflicts when adding mfd cells
mfd: ti_am335x_tscadc: Avoid possible deadlock of reg_lock
mfd: syscon: Return -ENOSYS if CONFIG_MFD_SYSCON is not enabled
mfd: Add support for ams AS3722 PMIC
mfd: max77693: Include linux/of.h header
mfd: tc3589x: Detect the precise version
mfd: omap-usb: prepare/unprepare clock while enable/disable
mfd: max77686: Include linux/of.h header
mfd: max8907: Include linux/of.h header
mfd: max8997: Include linux/of.h header
...
Linus Torvalds [Sat, 16 Nov 2013 00:35:10 +0000 (16:35 -0800)]
Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging
Pull hwmon fixes and updates from Jean Delvare:
"All lm90 driver fixes and improvements"
* 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
Documentation: dt: hwmon: Add OF document for LM90
hwmon: (lm90) Add power control
hwmon: (lm90) Add support for TI TMP451
hwmon: (lm90) Use enums for the indexes of temp8 and temp11
hwmon: (lm90) Add support to handle IRQ
hwmon: (lm90) Define status bits
hwmon: (lm90) Fix max6696 alarm handling
Linus Torvalds [Sat, 16 Nov 2013 00:33:41 +0000 (16:33 -0800)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
Pull second round of block driver updates from Jens Axboe:
"As mentioned in the original pull request, the bcache bits were pulled
because of their dependency on the immutable bio vecs. Kent re-did
this part and resubmitted it, so here's the 2nd round of (mostly)
driver updates for 3.13. It contains:
- The bcache work from Kent.
- Conversion of virtio-blk to blk-mq. This removes the bio and request
path, and substitutes with the blk-mq path instead. The end result
almost 200 deleted lines. Patch is acked by Asias and Christoph, who
both did a bunch of testing.
- A removal of bootmem.h include from Grygorii Strashko, part of a
larger series of his killing the dependency on that header file.
- Removal of __cpuinit from blk-mq from Paul Gortmaker"
* 'for-linus' of git://git.kernel.dk/linux-block: (56 commits)
virtio_blk: blk-mq support
blk-mq: remove newly added instances of __cpuinit
bcache: defensively handle format strings
bcache: Bypass torture test
bcache: Delete some slower inline asm
bcache: Use ida for bcache block dev minor
bcache: Fix sysfs splat on shutdown with flash only devs
bcache: Better full stripe scanning
bcache: Have btree_split() insert into parent directly
bcache: Move spinlock into struct time_stats
bcache: Kill sequential_merge option
bcache: Kill bch_next_recurse_key()
bcache: Avoid deadlocking in garbage collection
bcache: Incremental gc
bcache: Add make_btree_freeing_key()
bcache: Add btree_node_write_sync()
bcache: PRECEDING_KEY()
bcache: bch_(btree|extent)_ptr_invalid()
bcache: Don't bother with bucket refcount for btree node allocations
bcache: Debug code improvements
...
Daniel Mack [Fri, 15 Nov 2013 07:29:16 +0000 (08:29 +0100)]
net: ethernet: ti/cpsw: do not crash on single-MAC machines during resume
During resume, use for_each_slave to walk the slaves of the cpsw, and
soft-reset each of them. This prevents oopses if there is only one
slave configured.
David S. Miller [Fri, 15 Nov 2013 22:55:58 +0000 (17:55 -0500)]
Merge branch 'macvlan'
Michal Kubecek says:
====================
macvlan: disable LRO on lowerdev instead of a macvlan
A customer of ours encountered a problem with LRO on an ixgbe network
card. Analysis showed that it was a known conflict of forwarding and LRO
but the forwarding was enabled in an LXC container where only a macvlan
was, not the ethernet device itself.
I believe the solution is exactly the same as what we do for "normal"
(802.1q) VLAN devices: if dev_disable_lro() is called for such device,
LRO is disabled on the underlying "real" device instead.
v2: adapt to changes merged from net-next
v3: use BUG() in macvlan_dev_real_dev() if compiled without macvlan
====================
Michal Kubeček [Fri, 15 Nov 2013 05:18:50 +0000 (06:18 +0100)]
macvlan: disable LRO on lower device instead of macvlan
A macvlan device has always LRO disabled so that calling
dev_disable_lro() on it does nothing. If we need to disable LRO
e.g. because
- the macvlan device is inserted into a bridge
- IPv6 forwarding is enabled for it
- it is in a different namespace than lowerdev and IPv4
forwarding is enabled in it
we need to disable LRO on its underlying device instead (as we
do for 802.1q VLAN devices).
Michal Kubeček [Fri, 15 Nov 2013 05:18:40 +0000 (06:18 +0100)]
macvlan: introduce macvlan_dev_real_dev() helper function
Introduce helper function macvlan_dev_real_dev which returns the
underlying device of a macvlan device, similar to vlan_dev_real_dev()
for 802.1q VLAN devices.
v2: IFF_MACVLAN flag and equivalent of is_macvlan_dev() were
introduced in the meantime
Tim Kryger [Thu, 14 Nov 2013 21:02:13 +0000 (13:02 -0800)]
i2c: bcm-kona: Introduce Broadcom I2C Driver
Introduce support for Broadcom Serial Controller (BSC) I2C bus found
in the Kona family of Mobile SoCs. FIFO hardware is utilized but only
standard mode (100kHz), fast mode (400kHz), fast mode plus (1MHz), and
I2C high-speed (3.4 MHz) bus speeds are supported.
the wrong ip address will transfor to 245.245.245.244 and add
to the ip target success, it is uncorrect, so I add checks to avoid
adding wrong address.
The in4_pton() will set wrong ip address to 0.0.0.0, it will return by
the next check and will not add to ip target.
v2
According Veaceslav's opinion, simplify the code.
v3
According Veaceslav's opinion, add broadcast check and make a micro
definition to package it.
v4
Solve the problem of the format which David point out.
Linus Torvalds [Fri, 15 Nov 2013 22:27:22 +0000 (14:27 -0800)]
Merge tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux
Pull blackfin updates from Steven Miao:
"Blackfin gpio changes, add adi pinctrl driver, and bug fixes"
* tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux:
blackfin: fix build warning for unused variable
smp: bf561: and smb_wmb()/smp_rmb() at ipi send/receive
pm: use GFP_ATOMIC when pm core call this function
blackfin: serial: Add serial port_fer and port_mux early platform resources.
blackfin: pinctrl-adi2: code cleanup after using pinctrl-adi2
blackfin: adi gpio driver and pinctrl driver support
bf609: update default config for spi
Blackfin: bfin_gpio: Use proper mask for comparing pfunc
Aaron Lu [Fri, 15 Nov 2013 06:39:12 +0000 (14:39 +0800)]
ACPI / video: clean up DMI table for initial black screen problem
With commit 2c62333a408f "ACPI / video: Quirk initial backlight level 0"
we do not need to have the following systems in DMI table, so remove them.
HP Pavilion m4, HP 1000 Notebook PC, HP Pavilion g6 Notebook PC,
HP Pavilion dm4, Fujitsu E753, HP Folio 13-2000.
With this change, the use_bios_initial_backlight module parameter is no
longer needed and thus removed.
Puneet Kumar [Fri, 15 Nov 2013 19:41:29 +0000 (11:41 -0800)]
ACPI / EC: Ensure lock is acquired before accessing ec struct members
A bug was introduced by commit b76b51ba0cef ('ACPI / EC: Add more debug
info and trivial code cleanup') that erroneously caused the struct member
to be accessed before acquiring the required lock. This change fixes
it by ensuring the lock acquisition is done first.
Linus Torvalds [Fri, 15 Nov 2013 22:09:15 +0000 (14:09 -0800)]
Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
Pull misc kbuild changes from Michal Marek:
- make tags fixes again
- scripts/show_delta fix for newer python
- scripts/kernel-doc does not fail on unknown function prototype
- one less coccinelle check this time
* 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
scripts/tags.sh: remove obsolete __devinit[const|data]
scripts/kernel-doc: make unknown function prototype a Warning instead of an Error
show_delta: Update script to support python versions 2.5 through 3.3
scripts/coccinelle/api: remove devm_request_and_ioremap.cocci
scripts/tags.sh: Increase identifier list
Linus Torvalds [Fri, 15 Nov 2013 22:08:15 +0000 (14:08 -0800)]
Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
Pull kconfig changes from Michal Marek:
- xconfig stores its setting in a meaningful path
(~/.config/kernel.org/qconf.conf)
- kconfig symbol search fix
- documentation fixes
- cleanup & comment update
- fix warning when a kconfig symbol is defined with two different types
- Yann is now officially listed as maintainer of kconfig, but he
prefers me to send pull requests for now
* 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
MAINTAINERS: New kconfig maintainer
xconfig: Fix the filename for GUI settings
kconfig: fix bug in search results string: use strlen(gstr->s), not gstr->len
kconfig: remove unused definition from scanner
kconfig: adjust warning message for conflicting types
kconfig: fix trivial typos and update mconf documentation
kconfig: add short explanation to SYMBOL_WRITE
Documentation/kbuild/kconfig.txt: 'make listnewconfig' replaces: yes "" | make oldconfig
Linus Torvalds [Fri, 15 Nov 2013 22:06:38 +0000 (14:06 -0800)]
Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
Pull kbuild changes from Michal Marek:
- LTO fixes, but the kallsyms part had to be reverted
- Pass -Werror=implicit-int and -Werror=strict-prototypes to the
compiler by default
- snprintf fix in modpost
- remove GREP_OPTIONS from the environment to be immune against exotic
grep option settings
* 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
kallsyms: Revert back to 128 max symbol length
Kbuild: Ignore GREP_OPTIONS env variable
scripts: kallsyms: Use %zu to print 'size_t'
scripts/bloat-o-meter: use .startswith rather than fragile slicing
scripts/bloat-o-meter: ignore changes in the size of linux_banner
kbuild: replace unbounded sprintf call in modpost
kbuild, bloat-o-meter: fix static detection
Kbuild: Handle longer symbols in kallsyms.c
kbuild: Increase kallsyms max symbol length
Makefile: enable -Werror=implicit-int and -Werror=strict-prototypes by default
Linus Torvalds [Fri, 15 Nov 2013 22:05:15 +0000 (14:05 -0800)]
Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming
Pull Kconfig cleanups from Mark Salter:
"Remove some unused config options from C6X and clean up PC_PARPORT
dependencies. The latter was discussed here:
Alex Deucher [Thu, 14 Nov 2013 15:21:29 +0000 (10:21 -0500)]
drm/radeon: enable DPM by default in TN asics
After adjusting the dpm parameters this seems to be
stable on most TN systems. DPM is important for APUs
since the boot clocks are generally pretty low.
Andrew Lewycky [Wed, 13 Nov 2013 20:54:17 +0000 (15:54 -0500)]
drm/radeon: use a single doorbell for cik kms compute
A single doorbell page is plenty for cik kms compute.
Use a single page and manage doorbell allocation by
individual doorbells rather than pages. Identify
doorbells by their index rather than byte offset.
Alex Deucher [Wed, 13 Nov 2013 20:25:35 +0000 (15:25 -0500)]
drm/radeon/vm: don't attempt to update ptes if ib allocation fails
If we fail to allocate an indirect buffer (ib) when updating
the ptes, return an error instead of trying to use the ib.
Avoids a null pointer dereference.
Jerome Glisse [Tue, 12 Nov 2013 15:51:16 +0000 (10:51 -0500)]
radeon: workaround pinning failure on low ram gpu
GPU with low amount of ram can fails at pinning new framebuffer before
unpinning old one. On such failure, retry with unpinning old one before
pinning new one allowing to work around the issue. This is somewhat
ugly but only affect those old GPU we care about.
Larry Finger [Mon, 11 Nov 2013 04:11:16 +0000 (22:11 -0600)]
rtlwifi: rtl8192cu: Fix more pointer arithmetic errors
This driver uses a number of macros to get and set various fields in the
RX and TX descriptors. To work correctly, a u8 pointer to the descriptor
must be used; however, in some cases a descriptor structure pointer is used
instead. In addition, a duplicated statement is removed.
Ujjal Roy [Fri, 15 Nov 2013 03:10:42 +0000 (19:10 -0800)]
mwifiex: fix issues in driver unload path for USB chipsets
1) After driver load failure, clear 'card->adapter' instead of
card pointer so that card specific cleanup is performed later
when user unloads the driver.
2) Clear usb_card pointer in disconnect handler to avoid invalid
memory access when user unloads the driver after removing the
card.
Amitkumar Karwar [Fri, 15 Nov 2013 03:10:41 +0000 (19:10 -0800)]
mwifiex: fix memory leak issue for sdio and pcie cards
When driver is failed to load, card pointer doesn't get
freed. We will free it in cleanup handler which is called
in failure as well as unload path.
Also, update drvdata in init/cleanup handlers instead of
register/unregister handlers.
Amitkumar Karwar [Fri, 15 Nov 2013 03:10:40 +0000 (19:10 -0800)]
mwifiex: fix potential mem leak in .del_virtual_intf
1) Currently we freeing wdev for each interface in driver unload
path. We may leak memory if user have already deleted an interface.
mwifiex_add_virtual_intf() allocates wdev structure. So it should
be freed in mwifiex_del_virtual_intf().
This will make sure that wdev will be freed when user deletes an
interface and also in unload path.
2) "priv->netdev->ieee80211_ptr" should also be cleared in
mwifiex_del_virtual_intf.
Amitkumar Karwar [Fri, 15 Nov 2013 03:10:39 +0000 (19:10 -0800)]
mwifiex: fix NULL pointer dereference in mwifiex_fw_dpc
We don't need to free/unregister wiphy when
mwifiex_register_cfg80211() fails. The routine internally takes
care of it. This redundant code can cause NULL pointer dereference,
for adapter->wiphy.
Amitkumar Karwar [Fri, 15 Nov 2013 03:10:38 +0000 (19:10 -0800)]
mwifiex: failure path handling in mwifiex_add_virtual_intf()
1) If register_netdevice() is failed, we are freeing netdev
pointer, but priv->netdev is not cleared. This gives kernel
paging request error when driver is unloaded or interface is
deleted. Fix the problem by clearing the pointer.
2) Fix memory leak issue by freeing 'wdev' in failure paths.
Also, clear priv->wdev pointer.
As mwifiex_add_virtual_intf() successfully handles the
failure conditions, redundant code under err_add_intf label
is removed in this patch.
Felix Fietkau [Thu, 14 Nov 2013 20:33:15 +0000 (21:33 +0100)]
rt2x00: fix a crash bug in the HT descriptor handling fix
Commit "rt2x00: fix HT TX descriptor settings regression"
assumes that the control parameter to rt2x00mac_tx is always non-NULL.
There is an internal call in rt2x00lib_bc_buffer_iter where NULL is
passed. Fix the resulting crash by adding an initialized dummy on-stack
ieee80211_tx_control struct.
Sujith Manoharan [Thu, 14 Nov 2013 09:56:06 +0000 (15:26 +0530)]
ath9k: Fix issue with MCS15
On some boards which are based on AR9300, AR9580 or
AR9550, MCS15 usage is problematic.
This is because these boards use a "frequency doubler",
which doubles the refclk to get better EVM, but causes
spurs. Handle this properly in the driver to recover
throughput.
A world regulatory domain check was in place that
prevents user dynamic regulatory hints from being
processed. This was there for historical reasons
as this was only possible previously for world
roaming cards and dynamic regulatory settings was
only possible for country IEs. Fix this by enforcing
the world regulatory domain check only for when the
initiator is a country IE. Support for dynamic user
regulatory support is already checked.
Daniel Vetter [Mon, 4 Nov 2013 07:13:45 +0000 (08:13 +0100)]
drm/i915: flush cursors harder
Apparently they need the same treatment as primary planes. This fixes
modesetting failures because of stuck cursors (!) on Thomas' i830M
machine.
I've figured while at it I'll also roll it out for the ivb 3 pipe
version of this function. I didn't do this for i845/i865 since Bspec
says the update mechanism works differently, and there's some
additional rules about what can be updated in which order.
Olof Johansson [Fri, 15 Nov 2013 19:10:41 +0000 (11:10 -0800)]
Merge tag 'at91-fixes-non-critical' of git://github.com/at91linux/linux-at91 into fixes
From Nicolas Ferre, fixes for early boot hangs on at91:
Fixes for RTT & RTC interrupts that can fire early during boot process
and kill the system.
* tag 'at91-fixes-non-critical' of git://github.com/at91linux/linux-at91:
ARM: at91: fix hanged boot due to early rtt-interrupt
ARM: at91: fix hanged boot due to early rtc-interrupt
Defaulting to m seem to prevent building the pnfs layout modules into the
kernel. Default to the value of CONFIG_NFS_V4 make sure they are
built in for built-in NFSv4 support and modular for a modular NFSv4.
NeilBrown [Thu, 14 Nov 2013 02:00:17 +0000 (13:00 +1100)]
NFS: correctly report misuse of "migration" mount option.
The current test on valid use of the "migration" mount option can never
report an error as it will only do so if
mnt->version !=4 && mnt->minor_version != 0
(and some other condition), but if that test would succeed, then the previous
test has already gone-to out_minorversion_mismatch.
So change the && to an || to get correct semantics.
Eli Cohen [Thu, 31 Oct 2013 13:26:35 +0000 (15:26 +0200)]
IB/mlx4: Fix endless loop in resize CQ
When calling get_sw_cqe() we need pass the consumer_index and not the
masked value. Failure to do so will cause incorrect result of
get_sw_cqe() possibly leading to endless loop.
This problem was reported and analyzed by Michael Rice from HP.
Tony Lindgren [Fri, 15 Nov 2013 16:27:29 +0000 (08:27 -0800)]
ARM: OMAP2+: Fix build for dra7xx without omap4 and 5
Otherwise we can get errors like:
arch/arm/mach-omap2/prm44xx.c:274: error: redefinition of ‘omap44xx_prm_reconfigure_io_chain’
arch/arm/mach-omap2/built-in.o: In function `default_finish_suspend':
arch/arm/mach-omap2/omap-mpuss-lowpower.c:95: undefined reference to `omap_do_wfi'
Nishanth Menon [Thu, 14 Nov 2013 17:05:16 +0000 (11:05 -0600)]
ARM: OMAP2+: omap_device: maintain sane runtime pm status around suspend/resume
OMAP device hooks around suspend|resume_noirq ensures that hwmod
devices are forced to idle using omap_device_idle/enable as part of
the last stage of suspend activity.
For a device such as i2c who uses autosuspend, it is possible to enter
the suspend path with dev->power.runtime_status = RPM_ACTIVE.
As part of the suspend flow, the generic runtime logic would increment
it's dev->power.disable_depth to 1. This should prevent further
pm_runtime_get_sync from succeeding once the runtime_status has been
set to RPM_SUSPENDED.
Now, as part of the suspend_noirq handler in omap_device, we force the
following: if the device status is !suspended, we force the device
to idle using omap_device_idle (clocks are cut etc..). This ensures
that from a hardware perspective, the device is "suspended". However,
runtime_status is left to be active.
*if* an operation is attempted after this point to
pm_runtime_get_sync, runtime framework depends on runtime_status to
indicate accurately the device status, and since it sees it to be
ACTIVE, it assumes the module is functional and returns a non-error
value. As a result the user will see pm_runtime_get succeed, however a
register access will crash due to the lack of clocks.
To prevent this from happening, we should ensure that runtime_status
exactly indicates the device status. As a result of this change
any further calls to pm_runtime_get* would return -EACCES (since
disable_depth is 1). On resume, we restore the clocks and runtime
status exactly as we suspended with. These operations are not expected
to fail as we update the states after the core runtime framework has
suspended itself and restore before the core runtime framework has
resumed.
Lokesh Vutla [Fri, 8 Nov 2013 05:37:36 +0000 (11:07 +0530)]
ARM: dts: doc: Document missing compatible property for omap-sham driver
A new compatible property "ti,omap5-sham" is added to the omap-sham driver
recently to support SHA/MD5 for OMAP5,DRA7 and AM43XX. Documenting the
same.
Wei Yongjun [Wed, 30 Oct 2013 05:23:21 +0000 (13:23 +0800)]
ARM: OMAP3: Beagle: fix return value check in beagle_opp_init()
In case of error, the function get_cpu_device() returns NULL pointer
not ERR_PTR(). The IS_ERR() test in the return value check should be
replaced with NULL test.
Chris Mason [Fri, 15 Nov 2013 11:14:55 +0000 (12:14 +0100)]
btrfs: fix empty_zero_page misusage
Heiko Carstens noticed that btrfs was using empty_zero_page
incorrectly. He explained:
The definition of empty_zero_page is architecture specific. It
is (currently) either a character array, an unsigned long
containing the address of the empty_zero_page, or even worse
only the address of the struct page belonging to the
empty_zero_page.
This commit changes btrfs to use a for-loop instead. On x86
the resulting .ko is smaller, and we're no longer worrying about
how each arch builds its zeros.
Sebastian Ott [Fri, 15 Nov 2013 12:56:08 +0000 (13:56 +0100)]
s390/pci: implement hotplug notifications
When the availability of a pci function has changed by means
outside of our control we receive an availability event.
Implement/improve the handling of these notifications.
Sebastian Ott [Thu, 14 Nov 2013 09:44:56 +0000 (10:44 +0100)]
s390/scm_block: do not hide eadm subchannel dependency
Stop hiding scm_block's dependency to the eadm subchannel driver
(by using functions provided by the eadm subchannel instead of
wrappers provided by the scm bus).
This will help userspace recognizing module dependencies (e.g. for
building a ramdisk). As a side effect we can get rid of some code
reimplementing refcounting between those modules.
Sebastian Ott [Tue, 12 Nov 2013 18:33:06 +0000 (19:33 +0100)]
s390/pci: improve handling of bus resources
Cleanup the functions for allocation and setup of bus resources. Do
not allocate the same name for each resource but use a per-bus name.
Also provide means to cleanup all resources allocated by a bus.
Unloading the fs3270 kernel module does not remove the created
"3270/tub" device. Reloading the module then causes a sysfs warning:
"sysfs: cannot create duplicate filename '/devices/virtual/3270/3270!tub'".
Call device_destroy() in the module exit function to solve this issue.
s390/boot: Install bzImage as default kernel image
The compressed kernel image is built since commit "[S390] add support for
compressed kernels" (1844c9bc0b2fed3023551c1affe033ab38e90b9a).
Now install the compressed kernel image (bzImage) as default.
Johan Hovold [Wed, 16 Oct 2013 09:56:15 +0000 (11:56 +0200)]
ARM: at91: fix hanged boot due to early rtt-interrupt
Make sure the RTT-interrupts are masked at boot by adding a new helper
function to be used at SOC-init.
This fixes hanged boot on all AT91 SOCs with an RTT, for example, if an
RTT-alarm goes off after a non-clean shutdown (e.g. when using RTC
wakeup).
The RTC and RTT-peripherals are powered by backup power (VDDBU) (on all
AT91 SOCs but RM9200) and are not reset on wake-up, user, watchdog or
software reset. This means that their interrupts may be enabled during
early boot if, for example, they where not disabled during a previous
shutdown (e.g. due to a buggy driver or a non-clean shutdown such as a
user reset). Furthermore, an RTC or RTT-alarm may also be active.
The RTC and RTT-interrupts use the shared system-interrupt line, which
is also used by the PIT, and if an interrupt occurs before a handler
(e.g. RTC-driver) has been installed this leads to the system interrupt
being disabled and prevents the system from booting.
Note that when boot hangs due to an early RTC or RTT-interrupt, the only
way to get the system to start again is to remove the backup power (e.g.
battery) or to disable the interrupt manually from the bootloader. In
particular, a user reset is not sufficient.
Johan Hovold [Wed, 16 Oct 2013 09:56:14 +0000 (11:56 +0200)]
ARM: at91: fix hanged boot due to early rtc-interrupt
Make sure the RTC-interrupts are masked at boot by adding a new helper
function to be used at SOC-init.
This fixes hanged boot on all AT91 SOCs with an RTC (but RM9200), for
example, after a reset during an RTC-update or if an RTC-alarm goes off
after shutdown (e.g. when using RTC wakeup).
The RTC and RTT-peripherals are powered by backup power (VDDBU) (on all
AT91 SOCs but RM9200) and are not reset on wake-up, user, watchdog or
software reset. This means that their interrupts may be enabled during
early boot if, for example, they where not disabled during a previous
shutdown (e.g. due to a buggy driver or a non-clean shutdown such as a
user reset). Furthermore, an RTC or RTT-alarm may also be active.
The RTC and RTT-interrupts use the shared system-interrupt line, which
is also used by the PIT, and if an interrupt occurs before a handler
(e.g. RTC-driver) has been installed this leads to the system interrupt
being disabled and prevents the system from booting.
Note that when boot hangs due to an early RTC or RTT-interrupt, the only
way to get the system to start again is to remove the backup power (e.g.
battery) or to disable the interrupt manually from the bootloader. In
particular, a user reset is not sufficient.
Sonic Zhang [Mon, 17 Jun 2013 08:29:59 +0000 (16:29 +0800)]
blackfin: serial: Add serial port_fer and port_mux early platform resources.
The serial driver sets up port function manually in early platform probe stage
if the ADI GPIO2 driver is used. Remove the bfin_sport_uart early platform
devices.
- Change fdt pointer (passed from head.S) from unsigned int to void *,
which allows to kill a cast, and makes it compatible with __dtb_start.
- Use pr_info(),
- Extract common part.