Commit Graph

400340 Commits

Author SHA1 Message Date
lyz
dff8dc932f usb: udc: receive 1 SETUP packet in BDMA mode 2014-08-05 09:06:59 +08:00
Minchan Kim
66db73c14b zram: don't grab mutex in zram_slot_free_noity
[1] introduced down_write in zram_slot_free_notify to prevent race
between zram_slot_free_notify and zram_bvec_[read|write]. The race
could happen if somebody who has right permission to open swap device
is reading swap device while it is used by swap in parallel.

However, zram_slot_free_notify is called with holding spin_lock of
swap layer so we shouldn't avoid holing mutex. Otherwise, lockdep
warns it.

This patch adds new list to handle free slot and workqueue
so zram_slot_free_notify just registers slot index to be freed and
registers the request to workqueue. If workqueue is expired,
it holds mutex_lock so there is no problem any more.

If any I/O is issued, zram handles pending slot-free request
caused by zram_slot_free_notify right before handling issued
request because workqueue wouldn't be expired yet so zram I/O
request handling function can miss it.

Lastly, when zram is reset, flush_work could handle all of pending
free request so we shouldn't have memory leak.

NOTE: If zram_slot_free_notify's kmalloc with GFP_ATOMIC would be
failed, the slot will be freed when next write I/O write the slot.

[1] [57ab0485, zram: use zram->lock to protect zram_free_page()
    in swap free notify path]

* from v2
  * refactoring

* from v1
  * totally redesign

Cc: Nitin Gupta <ngupta@vflare.org>
Cc: Jiang Liu <jiang.liu@huawei.com>
Cc: stable@vger.kernel.org
Signed-off-by: Minchan Kim <minchan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a0c516cbfc)

Conflicts:
	drivers/staging/zram/zram_drv.c
2014-08-04 16:34:53 +08:00
luowei
9d90fdd84e spi:fix the bug while read one byte 2014-08-04 13:47:27 +08:00
郭毅
671282cef0 inv_mpu: only setup timer once. 2014-08-04 09:06:22 +08:00
zyc
f1634b7e9e camsys_drv : v0.0x12.0 ,camsys_head : v0.0x8.0 2014-07-31 18:01:30 +08:00
CMY
8b08536e09 Revert "rk: cma: attempt to allocate same range memory while cma allocation failure"
This reverts commit 17beed5e65.
2014-07-31 17:54:27 +08:00
xxm
7f0ffc5dbc rockchip:iommu:fix build error when iommu disabled 2014-07-31 16:16:47 +08:00
郭毅
b3b1d3fa61 rk3288: Adjust the temp-limit to 100 degrees Celsius 2014-07-31 15:49:24 +08:00
xxm
6da6bf7d78 rockchip:iommu:define function use inline instead of #define when iommu disabled 2014-07-31 11:32:35 +08:00
xxm
3bc178e8bc rockchip:iommu:fix build error when iommu disabled 2014-07-30 17:28:33 +08:00
xxm
6a805bcf2b rockchip:midgard:1,update gpu version to r4p1-00rel0 2,add input handler when runtime on/off 3,version to 0x09 2014-07-29 14:19:17 +08:00
wlf
0a9753f2db USB: Fix usb debug log 2014-07-29 10:32:44 +08:00
zyc
a6a2a7c6a9 camsys_drv : v0.0x11.0 2014-07-29 09:38:12 +08:00
陈亮
1304b6022d rockchip: kernel add efuse support
Signed-off-by: 陈亮 <cl@rock-chips.com>
2014-07-28 04:51:31 -07:00
CMY
d38e801e1d rk: ion: iommu: fix build error 2014-07-28 16:26:04 +08:00
dkl
550553622a rockchip: rockchip_defconfig select rk818 2014-07-25 17:51:54 +08:00
dkl
e41271d341 pmic: rk818: modify shutdown function and fix compile errors
1. Modify the rk818 shutdown function refering to rk808.
2. Fix some compile errors.
2014-07-25 16:23:54 +08:00
xjh
745d2a3def MIPI: 1.fixed compile error; 2.support VOP BIG/LIT 2014-07-23 12:44:21 +08:00
陈亮
91191c2a72 ddr_test: use dvfs_clk_set_rate() when change freq
Signed-off-by: 陈亮 <cl@rock-chips.com>
2014-07-21 05:28:39 -07:00
CMY
17beed5e65 rk: cma: attempt to allocate same range memory while cma allocation failure 2014-07-21 18:18:36 +08:00
郭毅
a874c3009d rk32: gmac: better support 1000M 2014-07-21 16:30:46 +08:00
gwl
6d2d02f268 Wifi:RTL8188EU: modify to creat p2p0 interface for wifi direct. 2014-07-21 16:25:25 +08:00
xxm
bac65c4e71 rockchip:midgard:1,keep gpu clock when runtime resume 2,version to 0x07 2014-07-21 15:07:36 +08:00
gwl
3202904257 Wifi:RTL8188EU: fix driver compile warning. version 4.60.WFD. 2014-07-21 15:01:35 +08:00
dalon.zhang
b3ddb5fbbc camsys: v0.0x10.0 2014-07-21 09:56:45 +08:00
xxm
d62934e924 rockchip:midgard:
1.use list_for_each_safe instead of list_for_each ,_list_del may happend in
  interrupt,may cause the unsync operation

2.add msleep(500) in the entry of kbase_release to postpone the operation when app quit

3.version to 0x06
2014-07-21 09:08:15 +08:00
郭毅
ca2a3016b0 rk: dts: default uboot-logo-on 2014-07-18 17:30:29 +08:00
郭毅
3c0b172c05 rk: tb: adjust lowmem/vmalloc area to 496/504 MB 2014-07-18 17:22:31 +08:00
郭毅
124f143d3a rk: ion: enable CMA that placed in highmem zone and default ion 640M 2014-07-18 17:20:48 +08:00
zwl
6269d4f44c rk fb: add support 4k video rotate and cancel map rotate fb 2014-07-18 10:40:59 +08:00
郭毅
6f36aed227 cw201x: shielding unnecessary dev_info 2014-07-18 10:03:20 +08:00
zwl
b9b169334e rk fb: add support yuv format rotate through rga module that used for HDMI 2014-07-17 17:21:05 +08:00
zyc
13fa2b6f68 camsys_drv : v0.f.0 2014-07-17 15:57:16 +08:00
wlf
531563a29f USB: fix dwc_otg hcd desc dma allocate memory with GFP_ATOMIC. 2014-07-16 18:06:43 +08:00
lintao
0fb06128f9 mmc: rk_sdmmc: fix calculation of erase unbusy timeout 2014-07-16 18:00:16 +08:00
wlf
86d84a1a6b USB: fix ep_queue request buf dma map and unmap.
1. For 0 length buf, perform dma map with length 4
   to avoid kernel stack dump occurred.
2. Do dma unmap before req->complete to avoid dma
   addr reused after unmapped.
2014-07-16 14:13:57 +08:00
wlf
6d10fa81b3 USB: fix otg pcd DMA allocate memory with GFP_ATOMIC.
In dwc_otg_pcd_ep_queue, allocate DMA memory for
align buf. Because dwc_otg_pcd_ep_queue can be
called in irq, so it must be used GFP_ATOMIC to
avoid sleep in irq.
2014-07-16 14:09:10 +08:00
hcy
dfdb9c2af8 ddr_rk32.c: fix ddr change freq deidle bug 2014-07-15 18:24:27 +08:00
郭毅
da7a0f21ea rk3288: act8846: modify sd init voltage 2014-07-14 13:51:58 +08:00
lintao
541c41ff1d mmc: fix drv_e for sd in ultraHS sw 2014-07-14 11:43:27 +08:00
张晴
d8737bae4d rk3288:act8846:modify sd init voltage 2014-07-14 10:50:18 +08:00
郭毅
782e6a55c3 dts: add uboot-logo-on 2014-07-11 18:24:02 +08:00
郭毅
bfe4d39941 dts: fix no vmmc regulator found 2014-07-11 18:14:45 +08:00
CMY
e2d17b6af4 rk: mm: CMA memory busy error may have a variety of reasons, in the larger one is:
the pages being used in the system come from CMA, and now need recycling
them for new CMA allocation, it need to allocate a new page for storing data
that will be reclaim CMA's pages, but new page may also be come from CMA memory
when memory allocate fall back to MIGRATE_CMA freelist.

Now we protect the CMA's pages in the memory fallback allocate

[ 1637.058550] alloc_contig_range test_pages_isolated(431a0, 431c0) failed
2014-07-11 15:17:00 +08:00
黄涛
2e5c136b16 ARM: rockchip: ddr_test: fix compilation warning 2014-07-10 20:50:59 +08:00
lintao
00cb3fa786 mmc: update dev_e to default 8ma 2014-07-10 11:33:34 +08:00
郭毅
77040e121b tb_8846 : default support mpu6050 for sdk_v2.0 2014-07-10 10:47:51 +08:00
陈亮
3418d6a86e remove reboot_config_done flag, do not close ddrfreq thread after reboot notify, because that may cause ddrfreq_system_status_notifier_call block forever
Signed-off-by: 陈亮 <cl@rock-chips.com>
2014-07-09 04:31:07 -07:00
lintao
bfc40850c4 mmc: support drv_e and sr modify 2014-07-09 18:09:20 +08:00
张晴
5ef7714bb4 rk3288:tsadc:slove pull down power_hold when power on 2014-07-09 15:16:58 +08:00