| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
A free user space implementation doesn't seem to exist and they are not needed otherwise
also unset accessory as none of the drivers is set anyway
Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
|
|
|
|
| |
Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
Conflicts:
Makefile
firmware/Makefile
firmware/epen/W9001_B713.bin.ihex
firmware/epen/W9001_B746.bin.ihex
firmware/epen/W9001_B746JD.bin.ihex
firmware/epen/W9001_B746L.bin.ihex
firmware/epen/W9001_B746S.bin.ihex
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[1] When entering NUD_PROBE state via neigh_update(), perhaps received
from userspace, correctly (re)initialize the probes count to zero.
This is useful for forcing revalidation of a neighbor (for example
if the host is attempting to do DNA [IPv4 4436, IPv6 6059]).
[2] Notify listeners when a neighbor goes into NUD_PROBE state.
By sending notifications on entry to NUD_PROBE state listeners get
more timely warnings of imminent connectivity issues.
The current notifications on entry to NUD_STALE have somewhat
limited usefulness: NUD_STALE is a perfectly normal state, as is
NUD_DELAY, whereas notifications on entry to NUD_FAILURE come after
a neighbor reachability problem has been confirmed (typically after
three probes).
[Cherry-pick of upstream 765c9c639fbb132af0cafc6e1da22fe6cea26bb8]
Signed-off-by: Erik Kline <ek@google.com>
Acked-By: Lorenzo Colitti <lorenzo@google.com>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Change-Id: I3a48f267a1bf752daeb3ff8a28de926ac66f5ad8
|
| |
| |
| |
| | |
Change-Id: I987c949a42d49c8e5daf9b4a83822b459aac657d
|
| |
| |
| |
| |
| |
| |
| |
| | |
If a node page is trucated, we'd better drop the page in the node_inode's page
cache for better memory footprint.
Change-Id: I3c7187676b5899c211857b9b94fad4f2a412e34d
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds NODE_MAPPING which is similar as META_MAPPING introduced by
Gu Zheng.
Change-Id: I535e5fc3573f408245c4630934a308db06e1f999
Cc: Gu Zheng <guz.fnst@cn.fujitsu.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As the orphan_blocks may be max to 504, so it is not security
and rigorous to store such a large array in the kernel stack
as Dan Carpenter said.
In fact, grab_meta_page has locked the page in the page cache,
and we can use find_get_page() to fetch the page safely in the
downstream, so we can remove the page array directly.
Change-Id: Ie73897038bc06f6a6342d6fbdab8f8ff36b2cd96
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Gu Zheng <guz.fnst@cn.fujitsu.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Introduce help function META_MAPPING() to get the cache meta blocks'
address space.
Change-Id: I5dcfb055444bbdd6160c3b5b631878f135c767ad
Signed-off-by: Gu Zheng <guz.fnst@cn.fujitsu.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| | |
This patch moves a function in f2fs_delete_entry for code readability.
Change-Id: I00419bcbd9d353a95491af6d8ec8e418b45171f3
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If a dentry page is updated, we should call mark_inode_dirty to add the inode
into the dirty list, so that its dentry pages are flushed to the disk.
Otherwise, the inode can be evicted without flush.
Change-Id: Ia31244451976a13a69e99342c5c4f5e5238a7b4f
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixed a variety of trivial checkpatch warnings. The only delta should
be some minor formatting on log strings that were split / too long.
Change-Id: I1477b17f7d4e2acd2d5370bb389f0bd064834059
Signed-off-by: Chris Fries <cfries@motorola.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Doing sync_meta_pages with META_FLUSH when checkpoint, we overide rw
using WRITE_FLUSH_FUA. At this time, we also should set
REQ_META|REQ_PRIO.
Change-Id: I079dc24c8d03451c942b150df7650c3967bb3ea1
Signed-off-by: Changman Lee <cm224.lee@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch should resolve the following bug.
=========================================================
[ INFO: possible irq lock inversion dependency detected ]
3.13.0-rc5.f2fs+ #6 Not tainted
---------------------------------------------------------
kswapd0/41 just changed the state of lock:
(&sbi->gc_mutex){+.+.-.}, at: [<ffffffffa030503e>] f2fs_balance_fs+0xae/0xd0 [f2fs]
but this lock took another, RECLAIM_FS-READ-unsafe lock in the past:
(&sbi->cp_rwsem){++++.?}
and interrupts could create inverse lock ordering between them.
other info that might help us debug this:
Chain exists of:
&sbi->gc_mutex --> &sbi->cp_mutex --> &sbi->cp_rwsem
Possible interrupt unsafe locking scenario:
CPU0 CPU1
---- ----
lock(&sbi->cp_rwsem);
local_irq_disable();
lock(&sbi->gc_mutex);
lock(&sbi->cp_mutex);
<Interrupt>
lock(&sbi->gc_mutex);
*** DEADLOCK ***
This bug is due to the f2fs_balance_fs call in f2fs_write_data_page.
If f2fs_write_data_page is triggered by wbc->for_reclaim via kswapd, it should
not call f2fs_balance_fs which tries to get a mutex grabbed by original syscall
flow.
Change-Id: I795c071696885b5d048750fb10ae53594f896a2f
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Support for f2fs-tools/tools/f2stat to monitor
/sys/kernel/debug/f2fs/status
Change-Id: Ic97f5b9da15129a24959d0fbaeb91e1c84c7f1ac
Signed-off-by: Changman Lee <cm224.lee@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With the 2 previous changes, all the long time operations are moved out
of the protection region, so here we can use spinlock rather than mutex
(orphan_inode_mutex) for lower overhead.
Change-Id: Iafe2320add741da9e119de9f30b0f90799d68b27
Signed-off-by: Gu Zheng <guz.fnst@cn.fujitsu.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| | |
Change-Id: I311a4ca284237c557bdbfbc37d1929c905d3c059
|
| |
| |
| |
| |
| |
| |
| |
| | |
Move alloc new orphan node out of lock protection region.
Change-Id: Iea8bae6e1561e1a0644416ae07177c8f165e5393
Signed-off-by: Gu Zheng <guz.fnst@cn.fujitsu.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
"boo sync" parameter is never referenced in f2fs_wait_on_page_writeback.
We should remove this parameter.
Change-Id: I14f0cb0eba62c04a53181674d254753b6cdc0f7f
Signed-off-by: Yuan Zhong <yuan.mark.zhong@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously during SSR and GC, the maximum number of retrials to find a victim
segment was hard-coded by MAX_VICTIM_SEARCH, 4096 by default.
This number makes an effect on IO locality, when SSR mode is activated, which
results in performance fluctuation on some low-end devices.
If max_victim_search = 4, the victim will be searched like below.
("D" represents a dirty segment, and "*" indicates a selected victim segment.)
D1 D2 D3 D4 D5 D6 D7 D8 D9
[ * ]
[ * ]
[ * ]
[ ....]
This patch adds a sysfs entry to control the number dynamically through:
/sys/fs/f2fs/$dev/max_victim_search
Change-Id: I0f98609540351fd7451e3c23bc65f8d165ba13b6
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When considering a bunch of data writes with very frequent fsync calls, we
are able to think the following performance regression.
N: Node IO, D: Data IO, IO scheduler: cfq
Issue pending IOs
D1 D2 D3 D4
D1 D2 D3 D4 N1
D2 D3 D4 N1 N2
N1 D3 D4 N2 D1
--> N1 can be selected by cfq becase of the same priority of N and D.
Then D3 and D4 would be delayed, resuling in performance degradation.
So, when processing the fsync call, it'd better give higher priority to data IOs
than node IOs by assigning WRITE and WRITE_SYNC respectively.
This patch improves the random wirte performance with frequent fsync calls by up
to 10%.
Change-Id: I4812ac05db179d83914c7bb0942fa6738280e1ea
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Initial backporting done by nowcomputing,
(https://github.com/nowcomputing/f2fs-backports.git)
Additional patches required by upstream jaegeuk/f2fs.git/linux-3.4 done by arter97.
Change-Id: Ibbd3a608857338482f974fa4b1a8d3c02c267d9f
Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com>
|
| |
| |
| |
| |
| | |
Change-Id: I20b6a2877e072a4b9639001fa0198837cfa74aff
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git (branch dev)
Up-to-date with
git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git @04a17fb17fafada39f96bfb41ceb2dc1c11b2af6
(f2fs: avoid to read inline data except first page)
Change-Id: I1fc76a61defd530c4e97587980ba43e98db6119e
Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com>
|
| |
| |
| |
| | |
Change-Id: I5e6af9b08214db7432ec9911447063591229c377
|
| |
| |
| |
| | |
Change-Id: I9ca02d8460a92d6664072253f4204d61f01df49b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The following scenario leads to the i9100 getting stuck at 150 MHz:
1. Initially, only CPU0 is online.
2. CPU0 starts to bring CPU1 online.
3. CPU0 is waiting for CPU1 to come online, and meanwhile enters idle. Since it
is the only online CPU, it lowers the CPU speed to save power.
4. CPU1 goes online (NOTE: While CPU0 is still idling!)
Note that local_irq_disable does not help here because CPU1 could
already be starting up (most_likely idle could be entered on CPU0 while in
"wait_for_completion_timeout(&cpu_running, ...)" in arch/arm/kernel/smp.c:126.
This patch treats CPUs as online ("onlining") as soon as the CPU_UP_PREPARE
notifier is fired.
Change-Id: I7964ec3ea79084c3050db79d7d6c89db9f378326
(cherry picked from commit c96e5ebbfa00c07a7867b68799ac4c24a7a1535f)
|
| |
| |
| |
| |
| |
| | |
This reverts commit ab6a2b873f19b1fde020b339aab8b830ede31f74.
Change-Id: I9eb51664151d6d3b94c70a323d927f6dc9d0d56f
|
| |
| |
| |
| |
| |
| | |
Stop the modem from crashing and rebooting the device for no real reason
Change-Id: I6d0931a6558eb4ae9530a1dcdf44b0e57827b2e3
|
| |
| |
| |
| |
| |
| | |
This reverts commit 5ddd587f9564e31f0767b3f352aadbba5ab69e9e.
Change-Id: Idc6f8c9c70081eaa0bd95b9703c0731c48edb5bd
|
| |
| |
| |
| |
| |
| | |
Allow vold to process all partitions on MMC
Change-Id: I3dc38e5554ffa56b65dd0c80cbc41b49c18df062
|
| |
| |
| |
| |
| |
| | |
https://github.com/CyanogenMod/android_kernel_samsung_smdk4210/blob/cm-10.1/drivers/media/video/samsung/mali/platform/orion-m400/mali_platform_dvfs.c#L77
Change-Id: I07c4dbd99d5adce880616162674f6ef2e4ece4fd
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
IsoRec aims to be a standard by which the monolithic kernel/recovery binaries
of the S2 family of devices can invoke an alternate recovery optionally flashed
separately by the user.
The alternate recovery is flashed to the RECOVERY partition (/dev/block/mmcblk0p6),
a seemingly vestigial partition without any real use. Only the lzop-compressed,
cpio-formatted recovery ramdrive is stored there; the standard kernel image is
used to run this recovery. The lzop-compressed image of the ramdrive is stored
raw in the RECOVERY partition.
Behavior of patch:
-skip all this if not booting into recovery.
-if the raw recovery partition contains valid lzop-compressed data,
-and if said data is a valid cpio archive,
-then use that cpio archive as the recovery ramdrive;
-else use the default recovery ramdrive bundled with the kernel.
More information here:
http://forum.xda-developers.com/galaxy-s2/orig-development/isorec-isolated-recovery-galaxy-s2-t3291176
Change-Id: I2fa1b764b52915262374124ea28f5a2585314891
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Revert "cpufreq: pegasusq: allow keeping at least two cores awake", and
revert "i9300: we have bluetooth deadlocks"
This reverts commits 73bb47e7f14bb1d88b70cc46e532b2ec71d66049 and
008e15d4745c3a359ee01ed76529dee2366bac10.
Change-Id: I6ecc5fc2bec9a68d80c9c3cf8d23d4ec448e1c73
|
| |
| |
| |
| |
| |
| |
| |
| | |
andip71: This was a bug introduced in upstream to 3.0.79 which impacts CPU frequency scaling
This reverts commit b9cbfd27308999d2ae56d1d341a3a77f91d04a19.
Change-Id: I20aec7487cd7e426d52ce1724ee6216e594ba199
|
| |
| |
| |
| | |
Change-Id: I9cf4c2606e91b5be5bf4d7b0dada5a966fb87230
|
| |
| |
| |
| | |
Change-Id: I5f98f69759b024c160ebee7b1dc939a89f2d5ca5
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
fixes a2dp issues
original commit:
https://github.com/ArchiDroid/ArchiKernel/commit/1f5b6449dfddee4bf1528f85d97e250e1431dcd5
Change-Id: If7d5ec882a10d033d71be6c3a310917bf0df9b80
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The {get,put}_user macros don't perform range checking on the provided
__user address when !CPU_HAS_DOMAINS.
This patch reworks the out-of-line assembly accessors to check the user
address against a specified limit, returning -EFAULT if is is out of
range.
[will: changed get_user register allocation to match put_user]
[rmk: fixed building on older ARM architectures]
CRs-Fixed: 504011
Reported-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Cc: stable@vger.kernel.org
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Git-commit: 8404663f81d212918ff85f493649a7991209fa04
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
Conflicts:
arch/arm/include/asm/assembler.h
arch/arm/lib/getuser.S
arch/arm/lib/putuser.S
Change-Id: I3818045a136fcdf72deb1371b132e090fd7ed643
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If we don't do that, then the poison value is left in the ->pprev
backlink.
This can cause crashes if we do a disconnect, followed by a connect().
Change-Id: Ie030e91e18bdd2ac08f993b4f72c130391d96cb3
Tested-by: Linus Torvalds <torvalds@linux-foundation.org>
Reported-by: Wen Xu <hotdog3645@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
|
| |
| |
| |
| | |
Change-Id: Iacf2f02620a1144dfdde616ea01414e0e76ab32e
|
| |
| |
| |
| | |
Change-Id: Ie60d2124d7835e85f03008d3dfe259b70490b4f2
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Virtualization Extensions introduce the requirement for an ARMv7-A
implementation to include SDIV and UDIV. Any implementation of the
Virtualization Extensions must include the SDIV and UDIV instructions
in the Thumb and ARM instruction sets.
In an ARMv7-A implementation that does not include the Virtualization
Extensions, it is IMPLEMENTATION DEFINED whether:
* SDIV and UDIV are not implemented
* SDIV and UDIV are implemented only in the Thumb instruction set
* SDIV and UDIV are implemented in the Thumb and ARM instruction sets.
This patch adds a handler to trap and emulate unimplemented SDIV and
UDIV instructions in ARM and Thumb modes. Also some basic statistic is
exported via /proc/cpu/idiv_emulation
Change-Id: I8e721ecac62a05fab42ed7db7951b4c837a59bc7
Signed-off-by: Vladimir Murzin <murzin.v@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch breaks the ARM condition checking code out of nwfpe/fpopcode.{ch}
into a standalone file for opcode operations. It also modifies the code
somewhat for coding style adherence, and adds some temporary variables for
increased readability.
Change-Id: I9935fbdebff9ddd263007412edd6a2b3eb06ae69
Signed-off-by: Leif Lindholm <leif.lindholm@arm.com>
Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
|
| |
| |
| |
| |
| |
| | |
This reverts commit e030f5a0b6445d2f2526abe16e233def99de97bb.
Change-Id: I9ba7cb2baefd8435d5e74aeaca188fc1cdfdab2c
|
| |
| |
| |
| | |
Change-Id: I5bc8fa43ea6ebabc893df6bd203656bec66f7db2
|
| |
| |
| |
| |
| |
| | |
fixes no notifications on ip6 networks
Change-Id: Ic2b93d67eba92be90a9b403f27d5a0ab97446cf9
|
| |
| |
| |
| | |
Change-Id: I24670b8b8cf76fdc386a9e2592a370a11114aa82
|
| |
| |
| |
| | |
Change-Id: I0b38869c9f0d5c8695e543b0fc363aff7c9e617a
|
| |
| |
| |
| | |
Change-Id: Id6ba06121202e1e4cc5a7f2f53a278518afb977c
|