summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-05-26powerpc/e6500: hw tablewalk: fix recursive tlb lock on cpu 0Scott Wood
Commit e2929e1e0ab910995090ce0714beab75618db694 "powerpc/e6500: Make TLB lock recursive" introduced a bug whereby cpu 0 uses the same value for "lock held" as is used to indicate that the lock is free. This means that cpu 1 can acquire the lock whenever it wants, regardless of whether cpu 0 has it locked, which in turn means we can get duplicate TLB entries. Add one to the CPU value to ensure we do not use zero as a "lock held" value. Signed-off-by: Scott Wood <scottwood@freescale.com> Change-Id: I8c8013adc2e153f19d780a3b202c993054feb47f Reviewed-on: http://git.am.freescale.net:8181/12823 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Mihai Claudiu Caraman <mihai.caraman@freescale.com> Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
2014-05-24fsl_qbman: Fix DCP assignment for version of QManJeffrey Ladouceur
For QMan version 3.1.2 the DCE Channel number is different. QMan contains a cfg revision number which is a direct correlation. Add this attribute and fix up the dce channel number based on qman revision info. Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com> Change-Id: I0ff79ec01f741fb71caf0a9d4f0a9f3760d64f15 Reviewed-on: http://git.am.freescale.net:8181/12851 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Haiying Wang <Haiying.Wang@freescale.com> Reviewed-by: Geoff Thorpe <Geoff.Thorpe@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-23powerpc/t104x: fix the deep sleep issue on T1042Chenhui Zhao
T1042 will trigger an Machine Check Exception when clearing the EPU registers in resume process. The cause is that the sequence of clearing the EPU registers is critical to make things right, especiallly for T1042. Therefore, follow the exact sequence in RM to clear the EPU registers. Change-Id: Icec8b3fd37b0e122801c19eede81592000abb5f5 Signed-off-by: Chenhui Zhao <chenhui.zhao@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12784 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Dongsheng Wang <dongsheng.wang@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-23mmc: esdhc: enable interrupt mode for T1040Haijun Zhang
Interrupt mode for t1040RDB is working. Enable it to avoid redundant poling mode. Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com> Change-Id: I686faa7c763758815f7c6146670ab4061a76a63d Reviewed-on: http://git.am.freescale.net:8181/12830 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Shengzhou Liu <Shengzhou.Liu@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-23Revert "cpufreq/powerpc: Fix overflow on 32-bit OS and rounding errors"Jose Rivera
This reverts commit a2b468f094846bca51c49c28c071accb46a18daa. Change-Id: If862fe836cf057ec254aab4c45c2091071cfd996 Reviewed-on: http://git.am.freescale.net:8181/12827 Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22Revert "Patch to modify default ICV lengh of SHA2 to 128 bits."Kim Phillips
This reverts commit c9b7e8bcef1fb9476e4198c66bc066d1a22acb24. Horia is right - this issue must be fixed in userspace to avoid inter-kernel version compatibility (e.g., this now makes the SDK kernel not able to run IPSec SHA2 with any other kernel). If the tools you are using don't support it, either use a tool that does, or fix the tool itself. Change-Id: I48db232b1e55bc5bd9957667b88fe27e66114546 Reviewed-on: http://git.am.freescale.net:8181/12825 Reviewed-by: Scott Wood <scottwood@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22Patch to modify default ICV lengh of SHA2 to 128 bits.Ganga Negi
As per RFC 4868,the ICV length of SHA2 should be 128 bits. Signed-off-by: Biao Cao <B32719@freescale.com> Signed-off-by: Ganga Negi <ganga.negi@freescale.com> Change-Id: I54ee3eef1c6c9b3c5abe678a24126ddc46082397 Reviewed-on: http://git.am.freescale.net:8181/12814 Reviewed-by: Hemant Agrawal <hemant@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22dpa_offload: Fix IPSec general stats issue on B4 and T platformsMarian Chereji
The IPSec general statistics were displayed incorrectly on B4 and T platforms because in kernel compatibility mode (32bit user space apps combined with 64bit kernel) the DPA_IPSEC_IOC_GET_STATS message processing was not updated with the support for multiple IPSec instances. Signed-off-by: Marian Chereji <marian.chereji@freescale.com> Change-Id: I694324154ee70b9f54bdf941dfe78aa42f77823b Reviewed-on: http://git.am.freescale.net:8181/12781 Reviewed-by: Ioana Tibuleac <ioana.tibuleac@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22powerpc/85xx/defconfig: enable CONFIG_RTC_DRV_DS1307Shengzhou Liu
By default we enable CONFIG_RTC_DRV_DS1307 to support DS1339 RTC on some boards. Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com> Change-Id: Ic0370434e00ff4616b2ea563a0e3e8b99efa649a Reviewed-on: http://git.am.freescale.net:8181/12665 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Shaohui Xie <Shaohui.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22t2080rdb/dts: update i2c and spi node for t2080rdbShengzhou Liu
- fix i2c nodes for pca9546, adt7481, rtc ds1339, eeprom. - remove incorrect sst25wf040 device node, only one Micron n25q512a on t2080rdb. Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com> Change-Id: I4c0d6a549e5f7164ec14cb2e59468ca14df19317 Reviewed-on: http://git.am.freescale.net:8181/12663 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Shaohui Xie <Shaohui.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22mtd/spi: support en25s64 deviceShengzhou Liu
Add support for EON en25s64 spi device. Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com> Change-Id: Ia16f275a272c0fa338d7c22d1b3bc95897c7ba28 Reviewed-on: http://git.am.freescale.net:8181/12664 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Shaohui Xie <Shaohui.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22t2080qds/dts: update spi nodes for t2080qdsShengzhou Liu
- update SPI nodes to support 3 SPI devices: Micron n25q128a11, SST sst25wf040 and EON en25s64. - remove unnecessary spi partition nodes, which is replaced by mtdparts. Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com> Change-Id: I20cf48f886507d5c31859d8a2e3491f4489bb518 Reviewed-on: http://git.am.freescale.net:8181/12662 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Shaohui Xie <Shaohui.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22tdm/device: Add configuration to enable use of internal clockSandeep Singh
TDM can either use an external (on-board) oscillator or use platform clock as source. On the boards which do not have an external clock enable TDM to use internal clock. Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: Ic07aa8c419bb2fa4f61db17195638acf4914df0a Reviewed-on: http://git.am.freescale.net:8181/12415 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-22n_tty: Fix n_tty_write crash when echoing in raw modePeter Hurley
The tty atomic_write_lock does not provide an exclusion guarantee for the tty driver if the termios settings are LECHO & !OPOST. And since it is unexpected and not allowed to call TTY buffer helpers like tty_insert_flip_string concurrently, this may lead to crashes when concurrect writers call pty_write. In that case the following two writers: * the ECHOing from a workqueue and * pty_write from the process race and can overflow the corresponding TTY buffer like follows. If we look into tty_insert_flip_string_fixed_flag, there is: int space = __tty_buffer_request_room(port, goal, flags); struct tty_buffer *tb = port->buf.tail; ... memcpy(char_buf_ptr(tb, tb->used), chars, space); ... tb->used += space; so the race of the two can result in something like this: A B __tty_buffer_request_room __tty_buffer_request_room memcpy(buf(tb->used), ...) tb->used += space; memcpy(buf(tb->used), ...) ->BOOM B's memcpy is past the tty_buffer due to the previous A's tb->used increment. Since the N_TTY line discipline input processing can output concurrently with a tty write, obtain the N_TTY ldisc output_lock to serialize echo output with normal tty writes. This ensures the tty buffer helper tty_insert_flip_string is not called concurrently and everything is fine. Note that this is nicely reproducible by an ordinary user using forkpty and some setup around that (raw termios + ECHO). And it is present in kernels at least after commit d945cb9cce20ac7143c2de8d88b187f62db99bdc (pty: Rework the pty layer to use the normal buffering logic) in 2.6.31-rc3. js: add more info to the commit log js: switch to bool js: lock unconditionally js: lock only the tty->ops->write call References: CVE-2014-0196 Reported-and-tested-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 4291086b1f081b869c6d79e5b7441633dc3ace00) Signed-off-by: Scott Wood <scottwood@freescale.com> Change-Id: Ia026d31182516be7ff8e70017422a3522cfeb425 Reviewed-on: http://git.am.freescale.net:8181/12529 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yusong Sun <yorksun@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-21dpaa: remove FMan dynamic algorithm dependenciesCristian Bercaru
The DPAA jumbo frames optimizations do not depend anymore on the FMan dynamic resource allocation algorithm and are available on all platforms. Signed-off-by: Cristian Bercaru <cristian.bercaru@freescale.com> Change-Id: Ia270d0aeba9801d67fa401bae4215ab1f25040fe Reviewed-on: http://git.am.freescale.net:8181/12501 Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com> Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Cristian-Constantin Sovaiala <Cristian.Sovaiala@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-21drivers/usb : Add affected configs for Erratum A005697 workaroundNikhil Badola
Add following affected SOCs and their variants P1010 rev2.0 B4860 rev1.0 rev2.0 rev2.1 rev2.2 T2080 rev1.0 T2081 rev1.0 Signed-off-by: Nikhil Badola <nikhil.badola@freescale.com> Change-Id: I954877e5b878abf63667b0215aa41a8a3a93eddf Reviewed-on: http://git.am.freescale.net:8181/12743 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Ramneek Mehresh <ramneek.mehresh@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-21cpufreq/powerpc: Fix overflow on 32-bit OS and rounding errorsZhang Zhuoyu
12*NSEC_PER_SEC will overflow on 32-bit OS. Besides, The transition latency is "12 internal platform clocks", rounding errors might lead to a result that it is shorter than 12 platform clocks which is not we expected. Signed-off-by: Zhang Zhuoyu <Zhuoyu.Zhang@freescale.com> Change-Id: Ic8627f70abb70e964abdec0a5b4d86aa15833a7d Reviewed-on: http://git.am.freescale.net:8181/12555 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yuantian Tang <yuantian.tang@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-21fsl_qbman: fix access to alloc->used list in DPA allocatorHoria Geanta
The operation of adding the newly allocated node in alloc->used list must be protected by the alloc->lock. Change-Id: I8f80006b59102dd4563f36d0d196afe3c5307489 Signed-off-by: Horia Geanta <horia.geanta@freescale.com> Tested-by: Mircea Pop <mircea.pop@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12525 Reviewed-by: Alexandru Porosanu <alexandru.porosanu@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Bogdan Hamciuc <bogdan.hamciuc@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-21powerpc/e6500: hw tablewalk: clear TID in kernel indirect entriesScott Wood
Previously TID was being cleared before the tlbsx, but not after. This can lead to a multiway hit between a TLB entry with TID=0 (previously inserted when PID=0) and a TLB entry with TID!=0 that matches PID. This can theoretically result in undefined behavior, though we probably get lucky due to the details of the overlap. It also results in the inability to use multihit detection to detect other conflicting TLB entries, as well as poorer TLB utilization due to duplicating kernel TLB entries. Rather than try to patch up MAS1 after tlbsx, the entire value is saved/restored as with MAS2. I observed a slight improvement in TLB miss performance with this patch applied. Signed-off-by: Scott Wood <scottwood@freescale.com> Reported-by: Ed Swarthout <ed.swarthout@freescale.com> Change-Id: Ia756411e110c245781357a3b1985fade648d791a Reviewed-on: http://git.am.freescale.net:8181/12509 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Edward L Swarthout <ed.swarthout@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-21powerpc/85xx: p1025twr: add module conditional to fix QE-uart issueXie Xiaobo
A ioport setting was needed when used the QE uart function on TWR-P1025. Added a conditional definition to avoid missing this setting when the QE-uart driver was bulit to a module. Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Change-Id: I95b40c760335ce5fa7a27a94287dbef28219b5fa Reviewed-on: http://git.am.freescale.net:8181/6643 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Thomas Trefny <Tom.Trefny@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12045 Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-21fmd: disabling OH ports no longer availableCristian Bercaru
With this patch, the option FMAN_DISABLE_OH_TO_REUSE_RESOURCES is not availeble anymore because it depends on FMAN_RESOURCE_ALLOCATION_ALGORITHM, which no longer exists. Signed-off-by: Cristian Bercaru <cristian.bercaru@freescale.com> Change-Id: I67a1e45f8b8b11c9b191cae0d8c9b56bdc912876 Reviewed-on: http://git.am.freescale.net:8181/12502 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-19fmd: change p1023 DEFAULT_totalFifoSize to 49KBMandy Lavi
49KB can accomodate buffers for 2x1G + 1xOH + 1xOP Change-Id: Ib2da4bb8e9d393f207bb756cf1b5a3ab1e75cdd2 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12499 Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-19powerpc: Enable erratum A-008007 workaorund for T1040 Rev1.0Priyanka Jain
Erratum A-008007 states that PVR register value is unreliable for e5500 cores (Major revision 1.0, Minor revision 2.0) which are present in T1040 Rev1.0 SoC. This workaround implementation -adds a new config option 'CONFIG_FSL_ERRATUM_A_008007' in t1040 specific defconfig files. This config option is used to make sure that changes does not impact non-T1040 platforms. -replaces mfspr(x) macro defintion to check if above erratum is defined and if x is same as SPRN_PVR, then return static value else call mfspr instruction. -Similarly replaces mfpvr() calls TODO: 1.Use some cleaner approach like reading SVR rgeister or parse device tree to check if T1040 Rev1.0 Si instead of using config option. 2.This patch only replaces current accesses of PVR register but does not restrict any new code which tries to read this. A mechanism needs to be implemented to restrict this. Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Change-Id: Ib5f17dec01ca0d98c5f506b1be23dfe06a541015 Reviewed-on: http://git.am.freescale.net:8181/12350 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-19fmd: change fmanV3L DEFAULT_totalFifoSize to 142KMandy Lavi
142KB can accomodate buffers for 5x1G + 1xOH + 1xOP 5*0x6400+0xa00+0x3200=140KB Change-Id: I37d7a1713101796cf3ab942ad4981d0070df4a98 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12473 Reviewed-by: Jianhua Xie <jianhua.xie@freescale.com> Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-19fmd: tgec and dtsec adjust to NO_IRQ eq 0Mandy Lavi
Change-Id: Ided02763bb84061238a52d00bc3976a6681c5bfc Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12455 Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16gianfar: Revert BQL support in GianfarClaudiu Manoil
Remove BQL support from Gianfar. The original upstream commit that added BQL to Gianfar does not revert cleanly: "d8a0f1b gianfar: Add support for byte queue limits." BQL has been integrated in Gianfar by the upstream comunity with no clear reason why would it be required / how would it benefit to this particular driver. Only a few drivers have it integrated. BQL adds processing overhead to the Tx path and potential functional issues as it may stop the transmission, which could result in tx timeout. Change-Id: I71e0a99d9616bf86dd98c795a927c89f881b4b08 Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12254 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jianhua Xie <jianhua.xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16fsl_dce: add error check in testJeffrey Ladouceur
If there was a error during the process operation the output of zero bytes was still being allocated. This causes a trace to occur in vmalloc. Skip allocating and copying output on error. Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com> Change-Id: Ie4f0462902a15aae44a20a7de2478a6488da0e1d Reviewed-on: http://git.am.freescale.net:8181/12426 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Roy Pledge <roy.pledge@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16tdm/test: Added SLIC loopback test.Sandeep Singh
Modified test to cover SLIC loopback also. This test can now be run for internal as well as external loopback. To choose which test (internal/external) is to be executed can be controlled by module param "in_loopback". When in_loopback=1 test is configured for internal loopback, when in_loopback=0 test is configured for external(SLIC) loopback. Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: I1244e9930e00ea7e17cff28f28e351814cc0d249 Reviewed-on: http://git.am.freescale.net:8181/12414 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16iommu/fsl: enable workaround for erratum A-007907 on T4080Shengzhou Liu
The workaround for erratum A-007907 is needed for T4080. Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com> Change-Id: I249329c174b853f7f4cccb2dfcb51017d2a3f8de Reviewed-on: http://git.am.freescale.net:8181/12437 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16powerpc/dts: Add 1588 timer node for bsc9131rdbYangbo Lu
Add 1588 timer node in file: arch/powerpc/boot/dts/fsl/bsc9131si-post.dtsi Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com> Change-Id: I1dbbcab7ed38d136d3d8bd589adbf5e451db612c Reviewed-on: http://git.am.freescale.net:8181/12433 Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16fmd: fmanv1 dt chosen node to change fifo-sizeMandy Lavi
Change-Id: I8acfcfe0da35031c20b55a67626f0fbe13a42246 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12367 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16fmd: fman advanced args should not be mandatoryMandy Lavi
Change-Id: I0080ab68d4658bf8eb855b6c4b43ed2526f2a878 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12366 Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16fmd: remove wrong assumption wrt num of portsMandy Lavi
Change-Id: I54409ee49f85935ced3f9c2038a8dfcc801e6f6e Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12365 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-15xfrm: avoid creating temporary SA when there are no listenersHoria Geanta
In the case when KMs have no listeners, km_query() will fail and temporary SAs are garbage collected immediately after their allocation. This causes strain on memory allocation, leading even to OOM since temporary SA alloc/free cycle is performed for every packet and garbage collection does not keep up the pace. The sane thing to do is to make sure we have audience before temporary SA allocation. Signed-off-by: Horia Geanta <horia.geanta@freescale.com> Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Change-Id: I241fdd8133f4974aaf14a9bc12be089aaa1730ae Reviewed-on: http://git.am.freescale.net:8181/12383 Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-14Merge remote-tracking branch 'origin/sdk-v1.6.x' into sdk-v1.6.xScott Wood
2014-05-14FMD: Added functions for fm soc configuration during Deep SleepEyal Harari
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com> Change-Id: I2b775e3609510a0290e751adc1cf3726cf11904f Reviewed-on: http://git.am.freescale.net:8181/12341 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Cristian-Constantin Sovaiala <Cristian.Sovaiala@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-14Merge branch 'rtmerge' into sdk-v1.6.xScott Wood
2014-05-14Linux 3.12.19-rt30 REBASESteven Rostedt (Red Hat)
2014-05-14net: gianfar: Fix missing return of gfar_clean_tx_ring()Steven Rostedt (Red Hat)
The patch "net: gianfar: do not try to cleanup TX packets if they are not done" for 3.12-rt left out the return value for gfar_clean_tx_ring(). This would cause an error when building this module. Note, this module does not build on x86 and was not tested because of that. Reported-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2014-05-14rt: Move migrate_disable up in trylocksSteven Rostedt
The changes to move the migrate_disable() down in the trylocks() caused race conditions to appear in the cpu hotplug code. The migrate disables must be done before any of the rtmutexes are taken, otherwise a lock may be held that prevents hotplug from moving forward. Link: http://lkml.kernel.org/r/20140429201308.63292691@gandalf.local.home Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Cc: Mike Galbraith <umgwanakikbuti@gmail.com> Cc: Nicholas Mc Guire <der.herr@hofr.at> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: linux-rt-users <linux-rt-users@vger.kernel.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: John Kacur <jkacur@redhat.com> Cc: Clark Williams <williams@redhat.com>
2014-05-14localversion.patchThomas Gleixner
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/n/tip-8vdw4bfcsds27cvox6rpb334@git.kernel.org
2014-05-14md: disable bcacheSebastian Andrzej Siewior
It uses anon semaphores |drivers/md/bcache/request.c: In function ‘cached_dev_write_complete’: |drivers/md/bcache/request.c:1007:2: error: implicit declaration of function ‘up_read_non_owner’ [-Werror=implicit-function-declaration] | up_read_non_owner(&dc->writeback_lock); | ^ |drivers/md/bcache/request.c: In function ‘request_write’: |drivers/md/bcache/request.c:1033:2: error: implicit declaration of function ‘down_read_non_owner’ [-Werror=implicit-function-declaration] | down_read_non_owner(&dc->writeback_lock); | ^ either we get rid of those or we have to introduce them… Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
2014-05-14rt,ntp: Move call to schedule_delayed_work() to helper threadSteven Rostedt
The ntp code for notify_cmos_timer() is called from a hard interrupt context. schedule_delayed_work() under PREEMPT_RT_FULL calls spinlocks that have been converted to mutexes, thus calling schedule_delayed_work() from interrupt is not safe. Add a helper thread that does the call to schedule_delayed_work and wake up that thread instead of calling schedule_delayed_work() directly. This is only for CONFIG_PREEMPT_RT_FULL, otherwise the code still calls schedule_delayed_work() directly in irq context. Note: There's a few places in the kernel that do this. Perhaps the RT code should have a dedicated thread that does the checks. Just register a notifier on boot up for your check and wake up the thread when needed. This will be a todo. Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2014-05-14a few open coded completionsSebastian Andrzej Siewior
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
2014-05-14completion: Use simple wait queuesThomas Gleixner
Completions have no long lasting callbacks and therefor do not need the complex waitqueue variant. Use simple waitqueues which reduces the contention on the waitqueue lock. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2014-05-14rcu-more-swait-conversions.patchThomas Gleixner
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Merged Steven's static void rcu_nocb_gp_cleanup(struct rcu_state *rsp, struct rcu_node *rnp) { - swait_wake(&rnp->nocb_gp_wq[rnp->completed & 0x1]); + wake_up_all(&rnp->nocb_gp_wq[rnp->completed & 0x1]); } Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
2014-05-14kernel/treercu: use a simple waitqueueSebastian Andrzej Siewior
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
2014-05-14simple-wait: rename and export the equivalent of waitqueue_active()Paul Gortmaker
The function "swait_head_has_waiters()" was internalized into wait-simple.c but it parallels the waitqueue_active of normal waitqueue support. Given that there are over 150 waitqueue_active users in drivers/ fs/ kernel/ and the like, lets make it globally visible, and rename it to parallel the waitqueue_active accordingly. We'll need to do this if we expect to expand its usage beyond RT. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
2014-05-14wait-simple: Rework for use with completionsThomas Gleixner
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2014-05-14wait-simple: Simple waitqueue implementationThomas Gleixner
wait_queue is a swiss army knife and in most of the cases the complexity is not needed. For RT waitqueues are a constant source of trouble as we can't convert the head lock to a raw spinlock due to fancy and long lasting callbacks. Provide a slim version, which allows RT to replace wait queues. This should go mainline as well, as it lowers memory consumption and runtime overhead. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> smp_mb() added by Steven Rostedt to fix a race condition with swait wakeups vs adding items to the list.