summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: patch for the useless 'break' removal in kirkwoodWan ZongShun2010-06-071-1/+0
| | | | | | | | | | | This patch to remove the 'break;', when the 'switch' jumps to the 'default' branch, the 'return -EINVAL' will be return with a error number, so the 'break;' code never be run, it is unuseful and should be removed here. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: atmel: trivial code cleanupWan ZongShun2010-06-071-1/+0
| | | | | | | | | Remove break after return, it is not needed. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: ep93xx i2s audio driverRyan Mallon2010-06-078-0/+865
| | | | | | | | Add ep93xx i2s audio driver Signed-off-by: Ryan Mallon <ryan@bluewatersys.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: imx: add eukrea-tlv320Eric Bénard2010-06-033-0/+146
| | | | | | | | | Add the necessary files to support the TLV320AIC23B wired in I2S on our i.MX platforms. Signed-off-by: Eric Bénard <eric@eukrea.com> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
* ASoC: imx-ssi.c: add new choices to platform configurationEric Bénard2010-06-032-2/+12
| | | | | | | | | | | | | | | * introduce 3 new flags to allow a more detailed configuration of the SSI link : IMX_SSI_NET : enable Network Mode IMX_SSI_SYN : enable Synchronous Mode IMX_SSI_USE_I2S_SLAVE : enable I2S Slave Mode * new platform can use these settings without breaking actual platforms. Signed-off-by: Eric Bénard <eric@eukrea.com> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: s3c: patch for the unnecessary variable 'state' removalWan ZongShun2010-06-031-1/+0
| | | | | | | | | The variable 'state' of structure 's3c_ac97_info' seems no use here, so this patch is to remove the unnecessary variable. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: atmel: patch for the unnecessary variable removalWan ZongShun2010-06-031-1/+0
| | | | | | | | | | The variable 'periods' of structure 'atmel_runtime_data' seems no use in whole atmel alsa driver,so I make a patch to remove the unnecessary variable. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: use resource_size for au1xWan ZongShun2010-06-033-17/+10
| | | | | | | | | | | Use the resource_size function instead of manually calculating the resource size.This patch can reduce the chance of introducing off-by-one errors. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Manuel Lauss <manuel.lauss@googlemail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: s6000: use resource_size for {request/release}_mem_region and ioremapWan ZongShun2010-06-021-21/+17
| | | | | | | | | | | The size calculation is end - start + 1. But,sometimes, the '1' can be forgotten carelessly, witch will have potential risk, so use resource_size for {request/release}_mem_region and ioremap here should be good habit. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Daniel Glöckner <dg@emlix.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Merge branch 'for-2.6.35' into for-2.6.36Mark Brown2010-06-021-1/+10
|\
| * ASoC: MX31ads sound support should depend on MACH_MX31ADS_WM1133_EV1Sascha Hauer2010-05-311-1/+1
| | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * ASoC: Add missing Kconfig entry for Phytec boardsSascha Hauer2010-05-311-0/+9
| | | | | | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: nuc900: patch for modifing the ac97 delays to minimumWan ZongShun2010-06-021-12/+2
| | | | | | | | | | | | | | | | | | | | | | | | This patch is to modify the ac97 delays to minimum, all these 1000 micro seconds delays seem over spec for the AC97 interface. I deleted some unnecessary delays here and changed the AC97 cold and warm reset delays from 1000us to 100us. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: nuc900: fix a typo and rename the header fileWan ZongShun2010-06-022-1/+1
| | | | | | | | | | | | | | | | | | | | Fix a '#include "nuc900-audio.h' typo, I think it should be 'audio'. At the same time, this patch renames the 'nuc900-auido.h' file to 'nuc900-audio.h'. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: nuc900: fix a wait loop bugWan ZongShun2010-06-021-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The current implement meant ACTL_ACCON was only accessed once when read or write proceeding, which is not right, if so,we have to wait the 'timeout=0x10000' to end every times. We need to polling the bit AC_R_FINISH and AC_W_FINISH of ACTL_ACCON register to identify whether read or write is finished or not,so I make the patch to fix the issue. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: nuc900: patch for SUBSTREAM_TYPE', 'PCM_TX' and 'PCM_RX' removalWan ZongShun2010-06-023-15/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch is to remove the 'SUBSTREAM_TYPE','PCM_TX' and 'PCM_RX' definition. There is no need to redefine SNDRV_PCM_STREAM_PLAYBACK as PCM_TX, the SUBSTREAM_TYPE(substream) can be deleted too, the playback or record can be judged by 'if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)' directly rather than 'if (PCM_TX == stype)', which makes the codes easy to read. Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-2.6.36' of ↵Takashi Iwai2010-05-3135-8/+3482
|\ \ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc
| * | ASoC: Fix S/PDIF buildMark Brown2010-05-312-0/+2
| | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: kirkwood: Add audio support to openrd client platformsapatard@mandriva.com2010-05-313-0/+138
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is adding support for openrd client platforms. It's using the cs42l51 codec and has one mic and one speaker plugs. Signed-off-by: Arnaud Patard <apatard@mandriva.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: kirkwood: Add i2s supportapatard@mandriva.com2010-05-319-0/+1047
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables support for the i2s controller available on kirkwood platforms Signed-off-by: Arnaud Patard <apatard@mandriva.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | openrd-client: initialise audioapatard@mandriva.com2010-05-311-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | This patch is reponsible for enabling audio on the openrd client board Signed-off-by: Arnaud Patard <apatard@mandriva.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | orion/kirkwood: add audio functions.apatard@mandriva.com2010-05-314-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch add audio related definitions and functions Signed-off-by: Arnaud Patard <apatard@mandriva.com> Acked-by: Nicolas Pitre <nico@fluxnic.net> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Add driver for cs42l51apatard@mandriva.com2010-05-314-0/+932
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is adding a ASoC driver for the cs42l51 from Cirrus Logic. Master mode and spi mode are not supported. Signed-off-by: Arnaud Patard <apatard@mandriva.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.ul> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Add SND_SOC_DAPM_PRE_POST_PMD eventapatard@mandriva.com2010-05-311-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some systems codecs need to configure some registers before and after powering down some of their part. As a convenience add a macro for that. Signed-off-by: Arnaud Patard <apatard@mandriva.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: spdif: Add codec driver to use spdif stand-aloneSeungwhan Youn2010-05-311-1/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds spdif dummy codec driver for using spdif-dit as a stand-alone. Until this, spdif-dit can be used only with other codecs like tlv320aci3x in davinci platform. Signed-off-by: Seungwhan Youn <sw.youn@samsung.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | Merge commit 'v2.6.35-rc1' into for-2.6.36Mark Brown2010-05-3110815-279755/+641074
| |\ \
| * | | ASOC: S5PV210: Enable AC97 supportJassi Brar2010-05-272-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The S5PV210 and S5PC110 has the AC97 controller same as S3C6410. Simply enable the options to build the drivers for S5PC110 and S5PV210 also. Signed-off-by: Jassi Brar <jassi.brar@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | ASOC: S5PC100: Enable AC97 supportJassi Brar2010-05-272-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The S5PC100 has the AC97 controller same as S3C6410. Simply enable the options to build the drivers for S5PC100 also. Signed-off-by: Jassi Brar <jassi.brar@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | ASoC: Fix dB scales for WM8990Mark Brown2010-05-251-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These should be regular, not linear. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
| * | | ASoC: Fix dB scales for WM8400Mark Brown2010-05-251-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These scales should be regular, not linear. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
| * | | ASoC: Fix dB scales for WM835xMark Brown2010-05-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These should be regular rather than linear scales. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
| * | | ASoC: Remove version display from WM8990Mark Brown2010-05-251-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | It's not needed and the version number never gets updated anyway. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | ASoC: ad193x: add set_sysclk entry to support different clock inputBarry Song2010-05-212-1/+45
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Barry Song <21cnbao@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | Merge branch 'topic/asoc' of ↵Mark Brown2010-05-2010-65/+347
| |\ \ \ | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into for-2.6.36
| * | | | ASoC: NUC900/audio: add nuc900 audio driver supportWan ZongShun2010-05-198-0/+1036
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for NUC900 AC97 Signed-off-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | ASoC: Add SOC_DOUBLE_R_SX_TLV controlapatard@mandriva.com2010-05-162-0/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is adding a new control which has the following capabilities: - tlv - variable data size (for instance, 7 ou 8 bit) - double mixer - data range centered around 0 Signed-off-by: Arnaud Patard <apatard@mandriva.com> Acked-by: Liam Girdwood <lrg@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | | | | Merge branch 'for-2.6.36' of ↵Takashi Iwai2010-05-313-126/+170
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc
| * | | | ASoC: TWL4030: Add functionalty to reset the registersPeter Ujfalusi2010-05-312-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Machine driver can instruct the codec driver to reset the chip registers to their default values at probe time. If machine driver does not provide setup data, then the registers are going to be reseted to their defaults, to be safe. If the developer on the platform confirms that the register reset is not needed, than it can be skipped, saving ~20ms time in probe. As safety measure do the register reset at remove time also. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL4030: Use BIAS_OFF instead of BIAS_STANDBY, when not in usePeter Ujfalusi2010-05-311-35/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Restructure the codec power code in order to be able to hit off when the codec is not in use. Since the audio registers are accessible while the codec is powered down, there is no need for additional safety mechanism. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL4030: Correct the ARXR2_APGA_CTL chip defaultPeter Ujfalusi2010-05-311-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It seams at least on twl5031 that the ARXR2_APGA_CTL register does not have the same default value as it is written in the TRM. Since the codec part of the PM chip has not been actually changed according to TI, assuming, that all version has the same problem, so writing there the TRM value. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL4030: Helper to check chip default registersPeter Ujfalusi2010-05-312-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the twl4030 codec driver supports different version of the PM chip, a helper function can come handy, which can check the driver's default versus the chip values. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL4030: Optimize the power up sequencePeter Ujfalusi2010-05-311-73/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the reg cache now contains the chip default values for all registers (REG_OPTION is reset to it's default within this patch), there is no longer need to rewrite _all_ registers. Initialize only few selected registers. According to the latest information, the offset cancellation need to be done only once, when the codec is powered on, so there is no need for the power up wrapper. Move all chip initialization code under chip_init, and do it when the codec is initialized. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL4030: Make offset cancellation path configurablePeter Ujfalusi2010-05-312-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add means for machine drivers to select the path for offset cancellation. Reset the reg cache value to the chip reset value at the same time. Machine drivers can specify which path need to be used for offset cancellation via the twl4030_setup.offset_cncl_path. For paths use the defines from include/linux/mfd/twl4030-codec.h: TWL4030_OFFSET_CNCL_SEL_* Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL4030: Remove wrapper for power downPeter Ujfalusi2010-05-311-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need for the power down wrapper. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL4030: Revisit codec defaultsPeter Ujfalusi2010-05-311-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reset most of the codec registers to their chip reset value. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | | | ASoC: TWL6040: Fix playback with 19.2 Mhz MCLKJorge Eduardo Candelaria2010-05-211-1/+1
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using MCLK is configured for 19.2 Mhz, clock slicer should be enabled and HPPLL should be bypassed in clock path. Signed-off-by: Jorge Eduardo Candelaria <jorge.candelaria@ti.com> Signed-off-by: Margarita Olaya Cabrera <magi.olaya@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
* | | | Linux 2.6.35-rc1v2.6.35-rc1Linus Torvalds2010-05-301-2/+2
| | | | | | | | | | | | | | | | .. and thus endeth the merge window.
* | | | Merge branch 'slub/urgent' of ↵Linus Torvalds2010-05-302-29/+15
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 * 'slub/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: SLUB: Allow full duplication of kmalloc array for 390 slub: move kmem_cache_node into it's own cacheline
| * | | | SLUB: Allow full duplication of kmalloc array for 390Christoph Lameter2010-05-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 756dee75872a2a764b478e18076360b8a4ec9045 ("SLUB: Get rid of dynamic DMA kmalloc cache allocation") makes S390 run out of kmalloc caches. Increase the number of kmalloc caches to a safe size. Cc: <stable@kernel.org> [ .33 and .34 ] Reported-by: Heiko Carstens <heiko.carstens@de.ibm.com> Tested-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Christoph Lameter <cl@linux-foundation.org> Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
| * | | | slub: move kmem_cache_node into it's own cachelineAlexander Duyck2010-05-242-28/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is meant to improve the performance of SLUB by moving the local kmem_cache_node lock into it's own cacheline separate from kmem_cache. This is accomplished by simply removing the local_node when NUMA is enabled. On my system with 2 nodes I saw around a 5% performance increase w/ hackbench times dropping from 6.2 seconds to 5.9 seconds on average. I suspect the performance gain would increase as the number of nodes increases, but I do not have the data to currently back that up. Bugzilla-Reference: http://bugzilla.kernel.org/show_bug.cgi?id=15713 Cc: <stable@kernel.org> Reported-by: Alex Shi <alex.shi@intel.com> Tested-by: Alex Shi <alex.shi@intel.com> Acked-by: Yanmin Zhang <yanmin_zhang@linux.intel.com> Acked-by: Christoph Lameter <cl@linux-foundation.org> Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
OpenPOWER on IntegriCloud