Commit Graph

288180 Commits (550cf00dbc8ee402bef71628cb71246493dd4500)

Author SHA1 Message Date
Linus Torvalds 550cf00dbc MMC fixes for 3.3:
* atmel-mci: oops fix against regression introduced in 3.2
 * core: power saving regression fix against 3.3-rc1
 * core: suspend/resume fix for UHS-I cards
 * esdhc-imx: MMC card regression fix against 3.0
 * mmci: oops fix for ARM systems with large (64k) pages
 * MAINTAINERS update for atmel-mci.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJPVKonAAoJEHNBYZ7TNxYMipUP/3mLTeCnOr7zLRv1Oawl9T6C
 InsAO02aITGAUWINaIQlOzTTXPnjHEsVdTFc/FujnlJr96lfvYpI06RNzKu7GbLg
 NWA7VCvNOnbGfOY4GpmfHjx7urOm0kxBR3SBeWQWgB7npXECzqiMV6MI1yyfTm7C
 n4qZDSPzRlcsEaNE0IPuX8sNsSpR01geJm0mG5kCceGLDwVXI4dUsthrkza32pHl
 SIZFr3CJ5hp2JDUntJzuxYgyDacOae5Yk6yXYlEEubqGrOrPZjYpxcpqdm1AkefQ
 iy3wKCFVhK9HYD7/1PN2sKs9bYorXDtrY7M0iwOJKs9r1evlAvWWCvqm4ZtGEHIs
 PD9NC2x3RJlhk1snjyuIs5WG7LqtaqXarcHe6Yyejh67UVpiFrLfABcOV6G2gm4/
 2rWd0yc5AvKy2G2hfEDsLXRMlBbrmuxIrfka29iYDOnutiPPQiH4n138ksWmNq0+
 MDtJMvYfz73MiXAKLSZ7RmSg0duGWdOvy8UpZ0AkhTUR0iVBhByN8UnIk5yUmVDK
 Uti2ivq/9GsGK9s9NHxFDpieU2iQzXEz7E+5JfkD23xUbxnFB/Uphn/lXobKbRhT
 mNTBz0bapE09UWXwV5vH/UAfD53CZbVX2h7Zc/RGj/oF4dBw3xkIe2Oe6d9u+jpv
 Bwe04US4nWqVHas8tcXW
 =Fby1
 -----END PGP SIGNATURE-----

Merge tag 'mmc-fixes-for-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc

MMC fixes from Chris Ball for 3.3:
 - atmel-mci: oops fix against regression introduced in 3.2
 - core: power saving regression fix against 3.3-rc1
 - core: suspend/resume fix for UHS-I cards
 - esdhc-imx: MMC card regression fix against 3.0
 - mmci: oops fix for ARM systems with large (64k) pages
 - MAINTAINERS update for atmel-mci.

* tag 'mmc-fixes-for-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc:
  mmc: core: Fixup suspend/resume issues for UHS-I cards
  mmc: mmci: reduce max_blk_count to avoid overflowing max_req_size
  mmc: sdhci-esdhc-imx: fix for mmc cards on i.MX5
  mmc: core: fix regression: set default clock gating delay to 0
  MAINTAINERS: hand over atmel-mci (sd/mmc interface)
  mmc: atmel-mci: don't use dma features when using DMA with no chan available
2012-03-05 08:51:10 -08:00
Linus Torvalds 5d329e245f Merge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
Pull from Jiri Kosina:
 "Please pull to receive updates for HID layer.  Nikolai's patch is
  rather important and should still go in for 3.3, as it's a regression
  fix for commit b4b583d."

* 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
  HID: hid-input: allow array fields out of range
  HID: usbhid: Add NOGET quirk for the AIREN Slim+ keyboard
2012-03-05 08:48:24 -08:00
Nikolai Kondrashov 883e0e3662 HID: hid-input: allow array fields out of range
Allow array field values out of range as per HID 1.11 specification,
section 6.2.25:

	Rather than returning a single bit for each button in the group, an
	array returns an index in each field that corresponds to the pressed
	button (like keyboard scan codes). An out-of range value in and array
	field is considered no controls asserted.

Apparently, "and" above is a typo and should be "an".

This fixes at least Waltop tablet pen clicks - otherwise BTN_TOUCH is never
released.

The relevant part of Waltop tablet report descriptors is this:

	0x09, 0x42,         /*          Usage (Tip Switch),         */
	0x09, 0x44,         /*          Usage (Barrel Switch),      */
	0x09, 0x46,         /*          Usage (Tablet Pick),        */
	0x15, 0x01,         /*          Logical Minimum (1),        */
	0x25, 0x03,         /*          Logical Maximum (3),        */
	0x75, 0x04,         /*          Report Size (4),            */
	0x95, 0x01,         /*          Report Count (1),           */
	0x80,               /*          Input,                      */

This is a regression fix for commit b4b583d ("HID: be more strict when
ignoring out-of-range fields").

Signed-off-by: Nikolai Kondrashov <spbnick@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2012-03-05 10:28:58 +01:00
Linus Torvalds a5939eefdc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6
MFD fixes from Samuel Ortiz:
 "This is the pull request for the MFD fixes for 3.3.  We have a few
  NULL pointer dereferences fixes, an ACPI conflict check fix, and a
  couple of wm8994 fixes."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6:
  mfd: Correct readability of WM8994 DC servo 4E register
  mfd: Initialize tps65912 irq platform data properly
  mfd: Fix ACPI conflict check
  mfd: Fix ab8500 error path bug
  mfd: Test for jack detection when deciding if wm8994 should suspend
  mfd: Initialize tps65910 irq platform data properly
  mfd: Fix possible s5m null pointer dereference
  mfd: wm8350 variable dereferenced before check
2012-03-04 17:10:06 -08:00
Linus Torvalds 5483f18e98 vfs: move dentry_cmp from <linux/dcache.h> to fs/dcache.c
It's only used inside fs/dcache.c, and we're going to play games with it
for the word-at-a-time patches.  This time we really don't even want to
export it, because it really is an internal function to fs/dcache.c, and
has been since it was introduced.

Having it in that extremely hot header file (it's included in pretty
much everything, thanks to <linux/fs.h>) is a disaster for testing
different versions, and is utterly pointless.

We really should have some kind of header file diet thing, where we
figure out which parts of header files are really better off private and
only result in more expensive compiles.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-04 15:51:42 -08:00
Ulf Hansson e7747475b6 mmc: core: Fixup suspend/resume issues for UHS-I cards
Even if cards supports 1.8V I/O voltage those should anyway be
initialized at 3.3V I/O according to (e)MMC, SD and SDIO specs.
Some eMMC and embedded SDIO devices are able to be initialized
at 1.8V as well, but it is better to be safe.

Do note that initialization in this context means that the card
has been completely powered off, otherwise the card will remain
at the last I/O voltage level that were negotitiated.

Due to the above being taken care of the suspend/resume issues
for UHS-I SD-cards has been fixed.

Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Acked-by: Philip Rakity <prakity@marvell.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Subhash Jadavani <subhashj@codeaurora.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
2012-03-04 12:25:15 -05:00
Will Deacon 8f7f6b7e46 mmc: mmci: reduce max_blk_count to avoid overflowing max_req_size
On a system with large pages (64k in my case), the following BUG is
triggered in MMC core:

[    2.338023] BUG: failure at drivers/mmc/core/core.c:221/mmc_start_request()!
[    2.338102] Kernel panic - not syncing: BUG!
[    2.338155] Call trace:
[    2.338228] [<ffffffc00008635c>] dump_backtrace+0x0/0x120
[    2.338317] [<ffffffc0003365ec>] dump_stack+0x14/0x1c
[    2.338403] [<ffffffc000336990>] panic+0xbc/0x1f0
[    2.338498] [<ffffffc00027a494>] mmc_start_request+0x154/0x184
[    2.338600] [<ffffffc00027abdc>] mmc_start_req+0x110/0x140
[    2.338701] [<ffffffc00028604c>] mmc_blk_issue_rw_rq+0x7c/0x39c
[    2.338804] [<ffffffc00028652c>] mmc_blk_issue_rq+0x1c0/0x468
[    2.338905] [<ffffffc000287564>] mmc_queue_thread+0x68/0x118
[    2.338995] [<ffffffc0000bc308>] kthread+0x84/0x8c

This is because of a 64k request with a max_req_size of 64k-1 bytes.

The following patch fixes the problem by limiting the max_blk_count
such that max_blk_count * max_blk_size == max_req_size. I couldn't
pursuade the compiler to emit a shift instead of a div without encoding
the shift explicitly.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
2012-03-04 12:25:14 -05:00
Sascha Hauer 5b6b0ad6e5 mmc: sdhci-esdhc-imx: fix for mmc cards on i.MX5
On i.MX53 we have to write a special SDHCI_CMD_ABORTCMD to the
SDHCI_TRANSFER_MODE register during a MMC_STOP_TRANSMISSION
command. This works for SD cards. However, with MMC cards
the MMC_SET_BLOCK_COUNT command is used instead, but this
needs the same handling. Fix MMC cards by testing for the
MMC_SET_BLOCK_COUNT command aswell. Tested on a custom i.MX53
board with a Transcend MMC+ card and eMMC.

The kernel started used MMC_SET_BLOCK_COUNT in 3.0, so this
is a regression for these boards introduced in 3.0; it should
go to 3.0/3.1/3.2-stable.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
2012-03-04 12:25:02 -05:00
Guennadi Liakhovetski c84f15aed2 mmc: core: fix regression: set default clock gating delay to 0
A recent commit "mmc: core: Use delayed work in clock gating framework"
(597dd9d79c) introduced a default 200ms delay before clock gating
actually takes place.  This means that every time an MMC interface
becomes idle it first stays on for 200ms before gating its clock. This
leads to increased power consumption and is therefore a clear regression.
This patch restores the original behaviour by setting the default delay
to 0. Users prioritising throughput over power efficiency can still
modify the delay via sysfs.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
2012-03-04 12:18:40 -05:00
Nicolas Ferre 24e1511f67 MAINTAINERS: hand over atmel-mci (sd/mmc interface)
Modify MAINTAINERS entry for Atmel SD/MMC drivers.
I hand the atmel-mci and at91_mci drivers over to Ludovic.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
2012-03-04 12:18:39 -05:00
Linus Torvalds 192cfd5877 Linux 3.3-rc6 2012-03-03 17:08:09 -08:00
Linus Torvalds 8482a0abe9 SCSI fixes on 20120303
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
 iQEcBAABAgAGBQJPUrf8AAoJEDeqqVYsXL0Ma0cH/1hcV4G3U7ZNbKJsijl7eowP
 GON1pme9XvUIHxWibIEZhUaaycWhN3oaShdEO+IAYSVoRSC6pu1H+/Be8VgvVpdT
 +1N9a41sXmuMeTadwfdZJ6k0Gs9gtbuxfvO4Z6WRbrpjik5S/3ZP3A/US8jESbCW
 rOK9evTUCs+rBFXiyOwyz3Li335/zEbq3E3N14VgbA05vYvw3+AuNQ0e8zS2A9/D
 3yLiQfIPhVZmH5majf+4qqyvBqQ0Jacj5TZrKyRehYZpB1c+fHwTDRYBko9vWdEH
 Tojk/mz3hPu48BNJyawb0Kemei+hNGKyejj8jbjBT1cb8/FTOGeZsYRa83YA6Hg=
 =joKr
 -----END PGP SIGNATURE-----

Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6

SCSI fixes from James Bottomley:
 "There's just a single fix in here: the osd max device number fix."

* tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
  [SCSI] osd_uld: Bump MAX_OSD_DEVICES from 64 to 1,048,576
2012-03-03 16:42:30 -08:00
Linus Torvalds 233ba2c5ff PARISC fixes on 20120303
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
 iQEcBAABAgAGBQJPUqnkAAoJEDeqqVYsXL0MyTwH/14R9sIt+IdQgMGje6Dys6U1
 3wxmNHcxNBB461212i+XVToH72GiPtUyWY8Q3LT+Qcq4Rab9oq8wDffxdgflDLja
 sZq9COLR8dmXJM0hduyuysCiNIlmuURV20uIMsDbYutBVtAKKqMd7ZrJBmkVh7xT
 slBJf+0lcD5IBYPYwf8lbxAI7E/C5TarMCIZk4z21I8ovF321RlGcyyo6NM62q/P
 wvLw4bJuW7nJa3q3B7BznzBcoHLmzo9tiY+CbtQlGhSdasDKJ8HuAegTVyofl6s8
 0/RTvaUcqTWUlFxXzLVDT+MCWAUP4GFR66tR2T5tygRi9st70TcpMzISiyZzKi8=
 =WzAJ
 -----END PGP SIGNATURE-----

Merge tag 'parisc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6

PARISC fixes from James Bottomley:
 "This is a set of build fixes to get the cross compiled architecture
  testbeds building again"

* tag 'parisc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6:
  [PARISC] don't unconditionally override CROSS_COMPILE for 64 bit.
  [PARISC] include <linux/prefetch.h> in drivers/parisc/iommu-helpers.h
  [PARISC] fix compile break caused by iomap: make IOPORT/PCI mapping functions conditional
2012-03-03 16:33:51 -08:00
Linus Torvalds 001f3a4887 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  perf/x86/kvm: Fix Host-Only/Guest-Only counting with SVM disabled
2012-03-03 09:32:31 -08:00
Linus Torvalds 2ce3f2b3b1 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull from Herbert Xu:
  "This push fixes a bug in mv_cesa that causes all hash operations
   that supply data on a final operation to fail."

* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
  crypto: mv_cesa - fix final callback not ignoring input data
2012-03-03 09:31:49 -08:00
Linus Torvalds ae942ae719 vfs: export full_name_hash() function to modules
Commit 5707c87f "vfs: uninline full_name_hash()" broke the modular
build, because it needs exporting now that it isn't inlined any more.

Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-02 19:40:57 -08:00
Linus Torvalds 62d222b8c8 Four commits since v3.3-rc5:
15d1ad0 hwmon: (f75375s) Catch some attempts to write to r/o registers
 b17d656 hwmon: (f75375s) Properly map the F75387 automatic modes to pwm_enable
 edeea10 hwmon: (f75375s) Make pwm*_mode writable for the F75387
 331255d hwmon: (f75375s) Fix writes to the pwm* attribute for the F75387
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iQIcBAABAgAGBQJPUShhAAoJEMsfJm/On5mBm74P/2fQB4aY+iseQRpnNjido+W1
 FUGL/Kb2FcWafHRvoLE7ddsMccj4rrvIbe81ad8R/HI9LFC/fUZijLwQA5Zb0IO9
 RE5KG3kVy5B0x0c2eP+NgMhrNWerKBfh3fdVQXNiqtS+r1cU2Vq1JMm5gDMK/5we
 yyqnqm4WbmMhb4Droj19h365yvMd0sckmO0nXnA0vHMCFDjNIFg6hf4IT7C0tGRM
 tFMhGiUJciDur7eoOhOhVWUF6hz2ug38stllO0s7E+5D97gU7VyRrdTh7qqomiKT
 CblZshuQXsRmwiRPHBAXFYgFTuPZf8SptaivhzIj7VDKqh5w7cjlXGmAJt7JP09s
 Pi4tTupUC7NPrQncM00LrvulFXJAVmucv9K7POnEjrJbAAH7msRNSMt+7JYrgsR4
 kRZQIQsosvquLcwR0GShypCi3G1g81CKTwfO4nHcbioPeFWSOM2a4YWjALmCLgUr
 FXtICHFJbTEPGbCkTfYwN5Rt7cwZbHg7VBX5oJsVsxv8YNG7Lc2mnDf1V1vGu88R
 O4WILvqeUIfveYbt8gucijJGTiaxNbcOmLgRVh5/LWgjHe1SSVC9EIK6lLtrtERC
 i3KdJ32Aigsoj7jDaEcCkOatyy5VK14xB1Y16KpbOOU2ITT7TT41SKWLeW6vCarE
 HA0WCE+4tPdYsEElU4K/
 =e4hU
 -----END PGP SIGNATURE-----

Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging

hhwmon fixes for 3.3-rc6 from Guenter Roeck:

These patches are necessary for correct operation and management of
F75387.

* tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
  hwmon: (f75375s) Catch some attempts to write to r/o registers
  hwmon: (f75375s) Properly map the F75387 automatic modes to pwm_enable
  hwmon: (f75375s) Make pwm*_mode writable for the F75387
  hwmon: (f75375s) Fix writes to the pwm* attribute for the F75387
2012-03-02 15:21:48 -08:00
Linus Torvalds d085a09cf3 fbdev fixes for 3.3
It includes:
 - two fixes for OMAP HDMI
 - one fix to make new OMAP functions behave as they are supposed to
 - one Kconfig dependency fix
 - two fixes for viafb for modesetting on VX900 hardware
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.12 (GNU/Linux)
 
 iQIcBAABAgAGBQJPUTAuAAoJECSVL5KnPj1PwIoP/3BosrH3mE7hDAXLI6EoXTmo
 SaePt271FV+RqlG5Tjd07IDceXaCz3zf+ZyS9sKZXvGi9QNMKKs52Ah0PeWDfalM
 MJVtRh2FBvaSKFvSqKjN3Fzv+bHpJZwekQBLDaHYHNdtQjWNW8Nnkth6n9xNDwau
 Xp5owI/p9ZECoCcj/D17LF59t8kiynqKdDOmhzZ1bp/c1LgL4waSXnP5/ToQxmcL
 zjUrvR4u3RNDqTxJmScswyDZq4u8qLx4fovhScoPe1OpU2cVXV69UdivzoF4A30c
 t02ZPEE+NM5tFfPMtUNn3zCEN+I893e4ABHoZlDfzS8Ab7JJjnDFduvUzJdSPa8H
 3kMZH7YmQhs1KhbrEcZPeBuxmZaNXpojRYmlbnw7w+kHtcaxVUxhR87TI8kYZIaS
 oqsTXmO+f9T8cMy3WbhUylj+uUpcBQYbIHd4QUhGFvylU24mrrJJQtwsPTFTElE7
 CBKPavbtFMkQepeXRX0Sig/xwVcKA7UUfdvirsD4BjfxZqsOxWeBCQN/scEDcSwo
 KOsLN4Kc4T3On3vNHc2fdq4f+sd2rlGeB9tH/NRtt7UBjGhxK+9lD5YmiavUopyH
 ectsoEMXg9FMQS1GwmQZwQx7r1QXRylBRgrHV/l1XwBU/QfQp3WFqBrVTFZkw4rg
 9U0wHlmQYnnU66rUChUt
 =+UnE
 -----END PGP SIGNATURE-----

Merge tag 'fbdev-fixes-for-3.3-2' of git://github.com/schandinat/linux-2.6

fbdev fixes for 3.3 from Florian Tobias Schandinat

It includes:
 - two fixes for OMAP HDMI
 - one fix to make new OMAP functions behave as they are supposed to
 - one Kconfig dependency fix
 - two fixes for viafb for modesetting on VX900 hardware

* tag 'fbdev-fixes-for-3.3-2' of git://github.com/schandinat/linux-2.6:
  OMAPDSS: APPLY: make ovl_enable/disable synchronous
  OMAPDSS: panel-dvi: Add Kconfig dependency on I2C
  viafb: fix IGA1 modesetting on VX900
  viafb: select HW scaling on VX900 for IGA2
  OMAPDSS: HDMI: hot plug detect fix
  OMAPDSS: HACK: Ensure DSS clock domain gets out of idle when HDMI is enabled
2012-03-02 15:21:15 -08:00
Linus Torvalds 5e8063d758 sound fixes for 3.3-rc6
This contains again regression fixes for various HD-audio and ASoC
 regarding SSI and dapm shutdown path.  In addition, a minor azt3328
 fix and the correction of the new jack-notification strings in HD-audio.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
 iQIcBAABAgAGBQJPURbWAAoJEGwxgFQ9KSmkgqsQAJSt2wHCAtsOWV/1KO814AQQ
 S6VL1/RAzy0HKI2R4Dv9+27Jxf2k74IozD46YgpWvYcuq5nYGjMp3aiQfw8Qdoi6
 8VmzRfbyByKH669Q4nkuQqFI5icHMxWHVLpzue6WJQT2H/WbeqP9nWlE+Y12kSss
 hf3CznOP434Ea1atJyRf9hSiUAFH0XlLtJJA9AL1gsZvYqrSE5MIPnCGw/4rmKVh
 20CTEP03QtNByHWR/Ago23boYNyejGV61bmYQo5c9QnkdLTxbF3FXW2BMzQlSy6u
 EhKCvD2TlhAByiTZ3MPn/YLup4nWNqLK0gAwEBShmRfhD0ww442hKJWUvSnINeV+
 V6GbKlkfaYlsDSlwDNWksw1lym0sjQv0WNrI0VnzSWG3UEToCh1GTshyKdmZC/Mt
 9Wy4l3lxciFfUHsQk68E1w8FTRSovr+8NkcY6zOj1Y77q/PEvmw+A5M5mRuNApy4
 T9wkjfkqzTjNoHh0IBzbyRI9K2B5vtQKw8OlpWsz+6qdwbY/fNrm71BQeT1Wx5mP
 9wAxLC0KOV0+FngfesNYSpBwW4eK2tSsSspC/0y5ElYpT58w3Zp5xqb6Iz9Yv+M+
 QGNgdyWyAO+kzTblZ3tcnbQoejk7zzzk4d31yUygNVejad4XG6GbopS20dzg8kIJ
 DlQTryZbw0OCnQMCT1SX
 =uTH2
 -----END PGP SIGNATURE-----

Merge tag 'sound-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

sound fixes for 3.3-rc6 from Takashi Iwai

This contains again regression fixes for various HD-audio and ASoC
regarding SSI and dapm shutdown path.  In addition, a minor azt3328
fix and the correction of the new jack-notification strings in HD-audio.

* tag 'sound-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ALSA: hda - Kill hyphenated names
  ALSA: hda - Add a fake mute feature
  ALSA: hda - Always set HP pin in unsol handler for STAC/IDT codecs
  ALSA: azt3328 - Fix NULL ptr dereference on cards without OPL3
  ALSA: hda/realtek - Fix resume of multiple input sources
  ASoC: i.MX SSI: Fix DSP_A format.
  ASoC: dapm: Check for bias level when powering down
2012-03-02 15:20:41 -08:00
Linus Torvalds 200e9ef7ab vfs: split up name hashing in link_path_walk() into helper function
The code in link_path_walk() that finds out the length and the hash of
the next path component is some of the hottest code in the kernel.  And
I have a version of it that does things at the full width of the CPU
wordsize at a time, but that means that we *really* want to split it up
into a separate helper function.

So this re-organizes the code a bit and splits the hashing part into a
helper function called "hash_name()".  It returns the length of the
pathname component, while at the same time computing and writing the
hash to the appropriate location.

The code generation is slightly changed by this patch, but generally for
the better - and the added abstraction actually makes the code easier to
read too.  And the new interface is well suited for replacing just the
"hash_name()" function with alternative implementations.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-02 14:49:24 -08:00
Linus Torvalds 5707c87f20 vfs: clarify and clean up dentry_cmp()
It did some odd things for unclear reasons.  As this is one of the
functions that gets changed when doing word-at-a-time compares, this is
yet another of the "don't change any semantics, but clean things up so
that subsequent patches don't get obscured by the cleanups".

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-02 14:47:15 -08:00
Linus Torvalds 0145acc202 vfs: uninline full_name_hash()
.. and also use it in lookup_one_len() rather than open-coding it.

There aren't any performance-critical users, so inlining it is silly.
But it wouldn't matter if it wasn't for the fact that the word-at-a-time
dentry name patches want to conditionally replace the function, and
uninlining it sets the stage for that.

So again, this is a preparatory patch that doesn't change any semantics,
and only prepares for a much cleaner and testable word-at-a-time dentry
name accessor patch.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-02 14:32:59 -08:00
Linus Torvalds 8966be9030 vfs: trivial __d_lookup_rcu() cleanups
These don't change any semantics, but they clean up the code a bit and
mark some arguments appropriately 'const'.

They came up as I was doing the word-at-a-time dcache name accessor
code, and cleaning this up now allows me to send out a smaller relevant
interesting patch for the experimental stuff.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-02 14:23:30 -08:00
Ludovic Desroches ef8781989a mmc: atmel-mci: don't use dma features when using DMA with no chan available
Some callbacks are set too early -- i.e. we can have dma capabilities but
we can't get a dma channel. So wait to get the dma channel before setting
callbacks and change logs consequently.

Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
[Should be applied to 3.2-stable.]
Cc: <stable@vger.kernel.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
2012-03-02 16:06:40 -05:00
Nikolaus Schulz 15d1ad0cc9 hwmon: (f75375s) Catch some attempts to write to r/o registers
It makes no sense to attempt to manually configure the fan in auto mode,
or set the duty cycle directly in closed loop mode.  The corresponding
registers are then read-only.  If the user tries it nonetheless, error out
with EINVAL instead of silently doing nothing.

Signed-off-by: Nikolaus Schulz <mail@microschulz.de>
[guenter.roeck@ericsson.com: Minor formatting cleanup]
Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
2012-03-02 12:02:23 -08:00
Nikolaus Schulz b17d6561ac hwmon: (f75375s) Properly map the F75387 automatic modes to pwm_enable
The F75387 supports automatic fan control using either PWM duty cycle or
RPM speed values.  Make the driver detect the latter mode, and expose the
different modes in sysfs as per pwm_enable, so that the user can switch
between them.

The interpretation of the pwm_enable attribute for the F75387 is adjusted
to be a superset of those values used for similar Fintek chips which do
not support automatic duty mode, with 2 mapping to automatic speed mode,
and moving automatic duty mode to the new value 4.

Toggling the duty mode via pwm_enable is currently denied for the F75387,
as the chip then simply reinterprets the fan configuration register values
according to the new mode, switching between RPM and PWM units, which
makes this a dangerous operation.

This patch introduces a new pwm mode into the driver. This is necessary
because the new mode (automatic pwm mode, 4) may already be enabled by the
BIOS, and the driver should not break existing functionality. This was seen
on at least one board.

Signed-off-by: Nikolaus Schulz <mail@microschulz.de>
Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
2012-03-02 11:56:43 -08:00
Linus Torvalds 2273d5ccb8 Merge branches 'core-urgent-for-linus', 'perf-urgent-for-linus' and 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pulling latest branches from Ingo:

* 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  memblock: Fix size aligning of memblock_alloc_base_nid()

* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  perf probe: Ensure offset provided is not greater than function length without DWARF info too
  perf tools: Ensure comm string is properly terminated
  perf probe: Ensure offset provided is not greater than function length
  perf evlist: Return first evsel for non-sample event on old kernel
  perf/hwbp: Fix a possible memory leak

* 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  CPU hotplug, cpusets, suspend: Don't touch cpusets during suspend/resume
2012-03-02 11:38:43 -08:00
H. Peter Anvin 5189fa19a4 regset: Return -EFAULT, not -EIO, on host-side memory fault
There is only one error code to return for a bad user-space buffer
pointer passed to a system call in the same address space as the
system call is executed, and that is EFAULT.  Furthermore, the
low-level access routines, which catch most of the faults, return
EFAULT already.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Roland McGrath <roland@hack.frob.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-02 11:38:15 -08:00
H. Peter Anvin c8e252586f regset: Prevent null pointer reference on readonly regsets
The regset common infrastructure assumed that regsets would always
have .get and .set methods, but not necessarily .active methods.
Unfortunately people have since written regsets without .set methods.

Rather than putting in stub functions everywhere, handle regsets with
null .get or .set methods explicitly.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Roland McGrath <roland@hack.frob.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-03-02 11:38:15 -08:00
Joerg Roedel 1018faa6cf perf/x86/kvm: Fix Host-Only/Guest-Only counting with SVM disabled
It turned out that a performance counter on AMD does not
count at all when the GO or HO bit is set in the control
register and SVM is disabled in EFER.

This patch works around this issue by masking out the HO bit
in the performance counter control register when SVM is not
enabled.

The GO bit is not touched because it is only set when the
user wants to count in guest-mode only. So when SVM is
disabled the counter should not run at all and the
not-counting is the intended behaviour.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Avi Kivity <avi@redhat.com>
Cc: Stephane Eranian <eranian@google.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Gleb Natapov <gleb@redhat.com>
Cc: Robert Richter <robert.richter@amd.com>
Cc: stable@vger.kernel.org # v3.2
Link: http://lkml.kernel.org/r/1330523852-19566-1-git-send-email-joerg.roedel@amd.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2012-03-02 12:16:39 +01:00
Takashi Iwai e49a3434f1 ALSA: hda - Kill hyphenated names
Kill hyphens from "Line-Out" name strings, as suggested by Mark Brown.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2012-03-02 08:59:23 +01:00
Ingo Molnar 5d85d97c9f perf/urgent fixes.
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJPTpj0AAoJENZQFvNTUqpAp0MP/AtR30eyEKl6zKPB6OlegcgY
 /RF0nIqVz6gCdlERReoF/zIzOQkk/ltHSMhhXgByfSALZJGDFyy3VomnN3ReOE4t
 dCeQIlNtKYHvT6EbWB5cGWevxS+hGV8C78MQNai7VQuoWGS5FucTgI6XyF4+0WE4
 n22elCQszLM6ofC1OqkZ0alfA5ypEe0kN7RVqSdXYBVxPgapj0Sc8u4SlgL/a6pn
 eb7EnhB7Ue2+bXI3JnPwoy7agqJC/rWgDWb1pYJCc+tGSZ1SG2UAxcasD1syWRgP
 k8Ocli8oNfdLYguAAyNnifUwMJEGASEEeDo9FtQp5JumI78HpCppfAvQnrJ4jVT1
 gGlXt1GLVBw5sgr6cLT77aLVKW48VGJWbzH3ON/R28RK5wuk2wOkPJRHMh6uo3ID
 lqT12W3T0bRCWWogP5UrWDfMR1zOi5a3ok5nvPjmZiuVygkRph8Cvcmwx36gQRDV
 rf5+RvoqzxovLolYU50ZaYZkNJQOLMNa7d+TUHS4v9wEdpfDjykOiLZzg/GrBuFR
 gTslV3zOeHgRwEOXi9dHV6vIITSrshCVOzTzpYqw4/PsXpdjV3LVIWaac5/QByMP
 xbbjKpgaq2LILwuC/oYyniyB2X3S19E/6xpC7vVr1iPYmiDsSwtNLmgRCaNGE09t
 yP0XsZezFOnZP4V2lTI3
 =OU3v
 -----END PGP SIGNATURE-----

Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

Various smaller perf/urgent fixes.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
2012-03-02 08:40:45 +01:00
Linus Torvalds 1f033c1a6e Merge git://www.linux-watchdog.org/linux-watchdog
Watchdog updates from Wim Van Sebroeck:

* git://www.linux-watchdog.org/linux-watchdog:
  watchdog: fix GETTIMEOUT ioctl in booke_wdt
  watchdog: update maintainers git entry
  watchdog: Fix typo in pnx4008_wdt.c
  watchdog: Fix typo in Kconfig
  watchdog: fix error in probe() of s3c2410_wdt (reset at booting)
  watchdog: hpwdt: clean up set_memory_x call for 32 bit
2012-03-01 18:27:43 -08:00
Linus Torvalds 13fb2d1037 A simple, driver specific fix. This device isn't widely used outside of
Marvell reference boards most of which are probably used with their BSPs
 rather than with mainline so low risk.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJPR6XBAAoJEBus8iNuMP3dvjgP/1DKa3TUSNze7BqCspdPxzLr
 DCxfkfCpdBGX97EE7VTjp7XyrnsSESg5LQ1/r8tvJqwqm3DtC1/AhiROhoSRIDFe
 mAerCTiZCGrJQUURUfAw07cq5yyM/F9Shz6TH1EoPn8e/Dtw23Rkb4PrXCUYXgG8
 3ecPAQ11dDo+bTO/jFvnKEMaa3PpL8EFu8UIaiCGmGDuAHXEr1OALF83tDOkbl/j
 J7MvW0XcyhQQ+/chCn7oV13k9mApbsohNi3tcQdlpl533Zlf06TxW00jpqtoZyMf
 aP3Cl71uHgkr9hjU310R2rsJ3zocBl+QT+rWmiJ89gm/bawgNkycKYA9Q9pnyvuM
 Eoo56E96oWLB1ld8gGzCVB1gxCLSOeewFEAsNxZEx4PVnaa373waOCkXGXTBqCTD
 MM/BgM4z4fa2IwsjlX+UO6cz3Zpkhfx7KpTOoxjM9gXh2ovKSn5TjmuwowMqWo0r
 B52nRs3liglV5O2q4eMSe2TXFkfaYO9TTKwmUMPl+o7WfmqmgUuCthFOzZG3S4BE
 sWClFq2ASHdAGHoytJyJHMfjvqX8egD61aVrAQua0r13EvgNuxAk2lkxrxojCZOG
 KP2lLd6b2NKlyUZIcD9CYPz30QHgmSe9cOhM2LSmvLkL1tmMgeMhLt+oCIkG5mcs
 Peds63YpiarhWd7IwToJ
 =HVC8
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator

Pull from Mark Brown:
 "A simple, driver specific fix.  This device isn't widely used outside
  of Marvell reference boards most of which are probably used with their
  BSPs rather than with mainline so low risk."

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
  regulator: fix the ldo configure according to 88pm860x spec
2012-03-01 18:26:48 -08:00
Linus Torvalds a223c52280 Merge branch 'i2c-embedded/for-3.3' of git://git.pengutronix.de/git/wsa/linux-2.6
i2c bugfix from Wolfram Sang:
  "This patch fixes a wrong assumption in the mxs-i2c-driver about a
   command queue being done.  Without it, we have seen races when the
   bus was under load."

* 'i2c-embedded/for-3.3' of git://git.pengutronix.de/git/wsa/linux-2.6:
  i2c: mxs: only flag completion when queue is completely done
2012-03-01 18:24:52 -08:00
Linus Torvalds cfa5555cab Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
DRM fixes from Dave Airlie:
  intel: fixes for output regression on 965GM, an oops and a machine
  hang

  radeon: uninitialised var (that gcc didn't warn about for some reason)
  + a couple of correctness fixes.

  exynos: fixes for various things, drop some chunks of unused code.

* 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
  drm/radeon/kms/vm: fix possible bug in radeon_vm_bo_rmv()
  drm/radeon: fix uninitialized variable
  drm/radeon/kms: fix radeon_dp_get_modes for LVDS bridges (v2)
  drm/i915: Remove use of the autoreported ringbuffer HEAD position
  drm/i915: Prevent a machine hang by checking crtc->active before loading lut
  drm/i915: fix operator precedence when enabling RC6p
  drm/i915: fix a sprite watermark computation to avoid divide by zero if xpos<0
  drm/i915: fix mode set on load pipe. (v2)
  drm/exynos: exynos_drm.h header file fixes
  drm/exynos: added panel physical size.
  drm/exynos: added postclose to release resource.
  drm/exynos: removed exynos_drm_fbdev_recreate function.
  drm/exynos: fixed page flip issue.
  drm/exynos: added possible_clones setup function.
  drm/exynos: removed pageflip_event_list init code when closed.
  drm/exynos: changed priority of mixer layers.
  drm/exynos: Fix typo in exynos_mixer.c
2012-03-01 18:23:43 -08:00
Linus Torvalds 6bba07c613 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
Pull s390 fixes from Martin Schwidefsky

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
  [S390] memory hotplug: prevent memory zone interleave
  [S390] crash_dump: remove duplicate include
  [S390] KEYS: Enable the compat keyctl wrapper on s390x
2012-03-01 18:22:55 -08:00
Takashi Iwai b399997008 A small fix for the SSI driver and a fix for system shutdown with modern
devices.  Most of the modern devices will never get shut down normally
 with a visible kernel log as the systems they're in tend not to shut
 down often and when they do it's usually in form factors that don't have
 a user visible console.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJPT2d3AAoJEBus8iNuMP3d5Y0P/iM8j26/TQ27/5r9WroKKHXL
 BeIt+xT2hB1xuCf8KUMmq4JZUQQQZBz2mhlcR5oG93A5S6QmLXl8bXJ2qdmGb3KW
 YmtWo1kCMj44Z/mVt9u9lIy+EnlxrgogwCA/Ph3Fb+GppR+f27rXr87g3OaYEJgu
 1W1u9AYrmJ9SkWrjSxlihfQiQ7v4gojGQKrWsG6uFq4ZJIBDah9nqsfpvT1/XdeF
 ciijoSk1sRAHOz92MPDRvwPxVaWbyv4ehkE3O7Zckcm+8z0bBWL26U5Nq4thhIjz
 CCqhqSP/22XvJxOM6xQwnH3VmxyON+F7bOdmk9fZdwEIJ5zVpvK1gkBQSeykUn6F
 Ow6g5L2cH2azmswWCVsUt6+NjfnpaNI/g8+J/Jy9aDQbyx0LWeN89AUJBC+KCGUL
 YLAzzsx2e4cKcILx6PiDhDCkoPkszacPrsoWZWr5QvNc+32HQhXX/KEqUcYHhxGR
 N/b046oVzLjcAfOFDoSvER5G1Ep6wJCxgNKjo+b4uYk2UYQBt/haYqSjqQwFnRi1
 JjkC/FZjHTS4z1dexdSx5SGsRl+dDvr9rlmYtq+u/5SqLb+eq+iDUhberrgP6vGh
 P7Nkt9PEHzJ+ifqlmvJXyKf54mlozmS5MzDn9JopGnZjLp5QVHIVqdd+inqGpFSg
 wpwymYcKQ3BXeJC0aGQH
 =FzOc
 -----END PGP SIGNATURE-----

Merge tag 'asoc-3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

A small fix for the SSI driver and a fix for system shutdown with modern
devices.  Most of the modern devices will never get shut down normally
with a visible kernel log as the systems they're in tend not to shut
down often and when they do it's usually in form factors that don't have
a user visible console.
2012-03-01 14:17:07 +01:00
Tejun Heo 847854f598 memblock: Fix size aligning of memblock_alloc_base_nid()
memblock allocator aligns @size to @align to reduce the amount
of fragmentation.  Commit:

 7bd0b0f0da ("memblock: Reimplement memblock allocation using reverse free area iterator")

Broke it by incorrectly relocating @size aligning to
memblock_find_in_range_node().  As the aligned size is not
propagated back to memblock_alloc_base_nid(), the actually
reserved size isn't aligned.

While this increases memory use for memblock reserved array,
this shouldn't cause any critical failure; however, it seems
that the size aligning was hiding a use-beyond-allocation bug in
sparc64 and losing the aligning causes boot failure.

The underlying problem is currently being debugged but this is a
proper fix in itself, it's already pretty late in -rc cycle for
boot failures and reverting the change for debugging isn't
difficult. Restore the size aligning moving it to
memblock_alloc_base_nid().

Reported-by: Meelis Roos <mroos@linux.ee>
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: David S. Miller <davem@davemloft.net>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Link: http://lkml.kernel.org/r/20120228205621.GC3252@dhcp-172-17-108-109.mtv.corp.google.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
LKML-Reference: <alpine.SOC.1.00.1202130942030.1488@math.ut.ee>
2012-03-01 10:53:18 +01:00
Mark Brown ac5ff1b358 mfd: Correct readability of WM8994 DC servo 4E register
It should be marked as readable but wasn't, breaking DC servo operation.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2012-03-01 01:42:52 +01:00
Linus Torvalds d7e53922aa Autogenerated GPG tag for Rusty D1ADB8F1: 15EE 8D6C AB0E 7F0C F999 BFCB D920 0E6C D1AD B8F1
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJPTq2iAAoJENkgDmzRrbjxrYEQAI9KNoASqsTd3v0R6Cnt2B78
 UVRgD/fbbObqHw7uONrAxf/oh5OJWgdC05MrkifJcPjb7TNJeaYxSHgchuGLg853
 kKKr2E9/laJ0+tYAmTTPKpZ11JPjIDvVAJ3Qg+WK3W+ILe2oFgzLALI9/Ilmfwj2
 /fRD0HxYZRU9/vuHXa79fnHazH8VakZClqqrdVqhlRXThiGFIgGs/74s3lmjSix3
 I0C/TtenpsLSKvWjUct6pLCS53xiDrxXMBDgd9SStjhjFbiAr0nIFdWekAcAZ5ln
 +qWP/cJY85bwzfsYPn4umynfBmmu5GSz1IMP9UZQBHaahQV2eVeKLTp3//qeTVsa
 3VCTwHXFnbxnrGzC/yPhA/Vudcx6ekuH2iwLmnnOQnii+A+mDZT/pMIiNZJNpTPD
 cxZxiBLHEsIOixEuDXiDw93tBCT2rtTaeFRcmd52YyOLtJStFHLEwwS4udYsTM9h
 KkQ2r3fXEslpRV7o65Vu7fHDLEzGvKUE2bolrhwmcMvUZ1rNwegogTwPnZ2KHFxt
 F/wHGsmc5gOYfFk97bxGQtQE5QZ7sQHdb/zk/10awTII/YlpY/28+trz9ljbhZmD
 dnn62TRtlqUB4qBGguXZiUc3nTN1+WO9yVrR+hW9enHHwxmnKXeaXu1k+IErl4yV
 N7iypO4+PtSsxKtNqBU4
 =6Q0J
 -----END PGP SIGNATURE-----

Merge tag 'for-linus' of git://github.com/rustyrussell/linux

Merge virtio pull request from Rusty Russell.

* tag 'for-linus' of git://github.com/rustyrussell/linux:
  virtio: balloon: leak / fill balloon across S4
2012-02-29 15:14:33 -08:00
Amit Shah 4eb05d562e virtio: balloon: leak / fill balloon across S4
commit e562966dba added support for S4 to
the balloon driver.  The freeze function did nothing to free the pages,
since reclaiming the pages from the host to immediately give them back
(if S4 was successful) seemed wasteful.  Also, if S4 wasn't successful,
the guest would have to re-fill the balloon.  On restore, the pages were
supposed to be marked freed and the free page counters were incremented
to reflect the balloon was totally deflated.

However, this wasn't done right.  The pages that were earlier taken away
from the guest during a balloon inflation operation were just shown as
used pages after a successful restore from S4.  Just a fancy way of
leaking lots of memory.

Instead of trying that, just leak the balloon on freeze and fill it on
restore/thaw paths.  This works properly now.  The optimisation to not
leak can be added later on after a bit of refactoring of the code.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-01 09:28:41 +10:30
Tomi Valkeinen a3d0e4aeca OMAPDSS: APPLY: make ovl_enable/disable synchronous
ovl->enable/disable are meant to be synchronous so that they can handle
the configuration of fifo sizes. The current kernel doesn't configure
fifo sizes yet, and so the code doesn't need to block to function (from
omapdss driver's perspective).

However, for the users of omapdss a non-blocking ovl->disable is
confusing, because they don't know when the memory area is not used
any more.

Furthermore, when the fifo size configuration is added in the next merge
window, the change from non-blocking to blocking could cause side
effects to the users of omapdss. So by making the functions block
already will keep them behaving in the same manner.

And, while not the main purpose of this patch, this will also remove the
compile warning:

drivers/video/omap2/dss/apply.c:350: warning:
'wait_pending_extra_info_updates' defined but not used

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2012-02-29 22:42:28 +00:00
Tomi Valkeinen c9043ff9e6 OMAPDSS: panel-dvi: Add Kconfig dependency on I2C
panel-dvi uses i2c, but the Kconfig didn't have dependency on I2C. Add
it.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2012-02-29 22:42:28 +00:00
Prashanth Nageshappa 1c1bc92233 perf probe: Ensure offset provided is not greater than function length without DWARF info too
The 'perf probe' command allows kprobe to be inserted at any offset from
a function start, which results in adding kprobes to unintended
location.  (example: perf probe do_fork+10000 is allowed even though
size of do_fork is ~904).

My previous patch https://lkml.org/lkml/2012/2/24/42 addressed the case
where DWARF info was available for the kernel. This patch fixes the
case where perf probe is used on a kernel without debuginfo available.

Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Jason Baron <jbaron@redhat.com>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Link: http://lkml.kernel.org/r/4F4C544D.1010909@linux.vnet.ibm.com
Signed-off-by: Prashanth Nageshappa <prashanth@linux.vnet.ibm.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2012-02-29 18:29:46 -03:00
David Ahern cfbd70c17c perf tools: Ensure comm string is properly terminated
If threads in a multi-threaded process have names shorter than the main
thread the comm for the named threads is not properly terminated.

E.g., for the process 'namedthreads' where each thread is named noploop%d
where %d is the thread number:

Before:
    perf script -f comm,tid,ip,sym,dso
    noploop:4ads 21616  400a49 noploop (/tmp/namedthreads)
The 'ads' in the thread comm bleeds over from the process name.

After:
    perf script -f comm,tid,ip,sym,dso
       noploop:4 21616  400a49 noploop (/tmp/namedthreads)

Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1330111898-68071-1-git-send-email-dsahern@gmail.com
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2012-02-29 18:29:45 -03:00
Prashanth Nageshappa 26b7952494 perf probe: Ensure offset provided is not greater than function length
The perf probe command allows kprobe to be inserted at any offset from a
function start, which results in adding kprobes to unintended location.

Example: perf probe do_fork+10000 is allowed even though size of do_fork
is ~904.

This patch will ensure probe addition fails when the offset specified is
greater than size of the function.

Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Jason Baron <jbaron@redhat.com>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Link: http://lkml.kernel.org/r/4F473F33.4060409@linux.vnet.ibm.com
Signed-off-by: Prashanth Nageshappa <prashanth@linux.vnet.ibm.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2012-02-29 18:29:45 -03:00
Namhyung Kim 30e68bcc67 perf evlist: Return first evsel for non-sample event on old kernel
On old kernels that don't support sample_id_all feature,
perf_evlist__id2evsel() returns NULL for non-sampling events.

This breaks perf top when multiple events are given on command line. Fix
it by using first evsel in the evlist. This will also prevent getting
the same (potential) problem in such new tool/ old kernel combo.

Suggested-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1329702447-25045-1-git-send-email-namhyung.kim@lge.com
Signed-off-by: Namhyung Kim <namhyung.kim@lge.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2012-02-29 18:29:44 -03:00
Linus Torvalds c5f2ac92c6 Another set of arm-soc bug fixes on top of v3.3-rc5. The few larger
bits are all for devices that still need to get set up in board code.
 
 Only three platforms are in this set of fixes: omap2+, pxa and lpc32xx.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIVAwUAT05lqGCrR//JCVInAQK+lhAAhWkKqdXyIswvg5p5Q1oOQziH1MGmXw87
 ufu/XgoKE7W8gr/oDfRgUPtzmlg0LVkm/ObvUr2JgNstvZpE6AU1irxLbhNxCbJt
 3UJCqc3XWJL08aC0N4s0fj8j2iYv/2ZmO9litBPH1NOhIk+hm3iVqrnSFpdwtcYm
 DZhOJg9WXRk93xYZx/CTTjxF+2pnd8XBmz7q6nJFKN6rRslbKuUpHlc6IlfXkQma
 btayG2EMWxmXsevOUq9oCGkbp9MozlOfuuSHCfZaUeDXVgf+DUfyx+ZppC/ZS14k
 cz9u7U+yRuhGX2lC+7lRC+Bek/i7c8NPTgVb1lRbvitnEzkUcz/8tkrztlSrC5ws
 49dKSZUq3jJMb8tl0xFxzKHIQfE+xTrJ7Mor4Tj72XCwIOEcIhAwMYEOCmjpMzER
 4g7IypNM0UFdN6/cywAYHX2X/pjjrQfJC1ridqzzUZjcw4b+FEsaWcp5+IV/Yi+D
 z41VdlrN0pK3AhDq9IMpDwHtbtOGYJFBl6QdLvLFwR9kEudvDt7cFGHZKT4hsE5L
 NqpASxZUfrcX5AQraZqnYMH8EJcOmxPOSp/iFWdOe4m3L1goE2R5oxIwg3ptIjYK
 Im2Ye6RrDVjF3bkyAdXXOxiu0OAo17Jt4vX+FvORug12mfxJGiWsdypSBXFDy5go
 ozkUx/YTHv0=
 =ElaK
 -----END PGP SIGNATURE-----

Merge tag 'fixes-3.3-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Arnd Bergmann says:
 "Another set of arm-soc bug fixes on top of v3.3-rc5.  The few larger
  bits are all for devices that still need to get set up in board code.

  Only three platforms are in this set of fixes: omap2+, pxa and lpc32xx."

* tag 'fixes-3.3-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (22 commits)
  ARM: LPC32xx: serial.c: Fixed loop limit
  ARM: LPC32xx: serial.c: HW bug workaround
  ARM: LPC32xx: irq.c: Clear latched event
  ARM: LPC32xx: Fix interrupt controller init
  ARM: LPC32xx: Fix irq on GPI_28
  ARM: OMAP2: fix mailbox init code
  ARM: OMAP2+: gpmc-smsc911x: add required smsc911x regulators
  ARM: OMAP1: Fix out-of-bounds array access for Innovator
  OMAP3 EVM: remove out-of-bounds array access of gpio_leds
  ARM: OMAP: Fix build error when mmc_omap is built as module
  ARM: OMAP: Fix kernel panic with HSMMC when twl4030_gpio is a module
  pxa/hx4700: add platform device and I2C info for AK4641 codec
  arch/arm/mach-pxa/: included linux/gpio.h twice
  arch/arm/mach-mmp/: some files include some headers twice
  ARM: pxa: fix error handling in pxa2xx_drv_pcmcia_probe
  ARM: pxa: fix including linux/gpio.h twice
  ARM: pxa: fix mixed declarations and code in sharpsl_pm
  ARM: pxa: fix wrong parsing gpio event on spitz
  ARM: OMAP2+: usb-host: fix compile warning
  ARM: OMAP4: Move the barrier memboclk_steal() as part of reserve callback
  ...
2012-02-29 11:24:39 -08:00
Linus Torvalds 88ebdda615 Build fixes for 3.3
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iEYEABECAAYFAk9N7bQACgkQ70gcjN2673NSHACgp162blpKTwkDoFKnSHMh2KjQ
 VLAAn0rx+4JbbWvMN+TyGRAjHA0CueOx
 =t3M1
 -----END PGP SIGNATURE-----

Merge tag 'for-3.3' of git://openrisc.net/jonas/linux

Build fixes for 3.3 from Jonas Bonn

* tag 'for-3.3' of git://openrisc.net/jonas/linux:
  openrisc: Fix up audit_syscall_[entry|exit]() usage
  openrisc: include export.h for EXPORT_SYMBOL
2012-02-29 10:23:45 -08:00