mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
Merge branch 'akpm' (patches from Andrew)
Merge more updates from Andrew Morton: - the rest of MM - various misc things - procfs updates - lib/ updates - checkpatch updates - kdump/kexec updates - add kvmalloc helpers, use them - time helper updates for Y2038 issues. We're almost ready to remove current_fs_time() but that awaits a btrfs merge. - add tracepoints to DAX * emailed patches from Andrew Morton <[email protected]>: (114 commits) drivers/staging/ccree/ssi_hash.c: fix build with gcc-4.4.4 selftests/vm: add a test for virtual address range mapping dax: add tracepoint to dax_insert_mapping() dax: add tracepoint to dax_writeback_one() dax: add tracepoints to dax_writeback_mapping_range() dax: add tracepoints to dax_load_hole() dax: add tracepoints to dax_pfn_mkwrite() dax: add tracepoints to dax_iomap_pte_fault() mtd: nand: nandsim: convert to memalloc_noreclaim_*() treewide: convert PF_MEMALLOC manipulations to new helpers mm: introduce memalloc_noreclaim_{save,restore} mm: prevent potential recursive reclaim due to clearing PF_MEMALLOC mm/huge_memory.c: deposit a pgtable for DAX PMD faults when required mm/huge_memory.c: use zap_deposited_table() more time: delete CURRENT_TIME_SEC and CURRENT_TIME gfs2: replace CURRENT_TIME with current_time apparmorfs: replace CURRENT_TIME with current_time() lustre: replace CURRENT_TIME macro fs: ubifs: replace CURRENT_TIME_SEC with current_time fs: ufs: use ktime_get_real_ts64() for birthtime ...
This commit is contained in:
commit
bf5f89463f
323 changed files with 2448 additions and 2106 deletions
|
|
@ -2071,26 +2071,6 @@ static inline void *f2fs_kmalloc(struct f2fs_sb_info *sbi,
|
|||
return kmalloc(size, flags);
|
||||
}
|
||||
|
||||
static inline void *f2fs_kvmalloc(size_t size, gfp_t flags)
|
||||
{
|
||||
void *ret;
|
||||
|
||||
ret = kmalloc(size, flags | __GFP_NOWARN);
|
||||
if (!ret)
|
||||
ret = __vmalloc(size, flags, PAGE_KERNEL);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static inline void *f2fs_kvzalloc(size_t size, gfp_t flags)
|
||||
{
|
||||
void *ret;
|
||||
|
||||
ret = kzalloc(size, flags | __GFP_NOWARN);
|
||||
if (!ret)
|
||||
ret = __vmalloc(size, flags | __GFP_ZERO, PAGE_KERNEL);
|
||||
return ret;
|
||||
}
|
||||
|
||||
#define get_inode_mode(i) \
|
||||
((is_inode_flag_set(i, FI_ACL_MODE)) ? \
|
||||
(F2FS_I(i)->i_acl_mode) : ((i)->i_mode))
|
||||
|
|
|
|||
|
|
@ -1011,11 +1011,11 @@ static int __exchange_data_block(struct inode *src_inode,
|
|||
while (len) {
|
||||
olen = min((pgoff_t)4 * ADDRS_PER_BLOCK, len);
|
||||
|
||||
src_blkaddr = f2fs_kvzalloc(sizeof(block_t) * olen, GFP_KERNEL);
|
||||
src_blkaddr = kvzalloc(sizeof(block_t) * olen, GFP_KERNEL);
|
||||
if (!src_blkaddr)
|
||||
return -ENOMEM;
|
||||
|
||||
do_replace = f2fs_kvzalloc(sizeof(int) * olen, GFP_KERNEL);
|
||||
do_replace = kvzalloc(sizeof(int) * olen, GFP_KERNEL);
|
||||
if (!do_replace) {
|
||||
kvfree(src_blkaddr);
|
||||
return -ENOMEM;
|
||||
|
|
|
|||
|
|
@ -2652,17 +2652,17 @@ static int init_free_nid_cache(struct f2fs_sb_info *sbi)
|
|||
{
|
||||
struct f2fs_nm_info *nm_i = NM_I(sbi);
|
||||
|
||||
nm_i->free_nid_bitmap = f2fs_kvzalloc(nm_i->nat_blocks *
|
||||
nm_i->free_nid_bitmap = kvzalloc(nm_i->nat_blocks *
|
||||
NAT_ENTRY_BITMAP_SIZE, GFP_KERNEL);
|
||||
if (!nm_i->free_nid_bitmap)
|
||||
return -ENOMEM;
|
||||
|
||||
nm_i->nat_block_bitmap = f2fs_kvzalloc(nm_i->nat_blocks / 8,
|
||||
nm_i->nat_block_bitmap = kvzalloc(nm_i->nat_blocks / 8,
|
||||
GFP_KERNEL);
|
||||
if (!nm_i->nat_block_bitmap)
|
||||
return -ENOMEM;
|
||||
|
||||
nm_i->free_nid_count = f2fs_kvzalloc(nm_i->nat_blocks *
|
||||
nm_i->free_nid_count = kvzalloc(nm_i->nat_blocks *
|
||||
sizeof(unsigned short), GFP_KERNEL);
|
||||
if (!nm_i->free_nid_count)
|
||||
return -ENOMEM;
|
||||
|
|
|
|||
|
|
@ -2834,13 +2834,13 @@ static int build_sit_info(struct f2fs_sb_info *sbi)
|
|||
|
||||
SM_I(sbi)->sit_info = sit_i;
|
||||
|
||||
sit_i->sentries = f2fs_kvzalloc(MAIN_SEGS(sbi) *
|
||||
sit_i->sentries = kvzalloc(MAIN_SEGS(sbi) *
|
||||
sizeof(struct seg_entry), GFP_KERNEL);
|
||||
if (!sit_i->sentries)
|
||||
return -ENOMEM;
|
||||
|
||||
bitmap_size = f2fs_bitmap_size(MAIN_SEGS(sbi));
|
||||
sit_i->dirty_sentries_bitmap = f2fs_kvzalloc(bitmap_size, GFP_KERNEL);
|
||||
sit_i->dirty_sentries_bitmap = kvzalloc(bitmap_size, GFP_KERNEL);
|
||||
if (!sit_i->dirty_sentries_bitmap)
|
||||
return -ENOMEM;
|
||||
|
||||
|
|
@ -2873,7 +2873,7 @@ static int build_sit_info(struct f2fs_sb_info *sbi)
|
|||
return -ENOMEM;
|
||||
|
||||
if (sbi->segs_per_sec > 1) {
|
||||
sit_i->sec_entries = f2fs_kvzalloc(MAIN_SECS(sbi) *
|
||||
sit_i->sec_entries = kvzalloc(MAIN_SECS(sbi) *
|
||||
sizeof(struct sec_entry), GFP_KERNEL);
|
||||
if (!sit_i->sec_entries)
|
||||
return -ENOMEM;
|
||||
|
|
@ -2906,7 +2906,7 @@ static int build_sit_info(struct f2fs_sb_info *sbi)
|
|||
sit_i->dirty_sentries = 0;
|
||||
sit_i->sents_per_block = SIT_ENTRY_PER_BLOCK;
|
||||
sit_i->elapsed_time = le64_to_cpu(sbi->ckpt->elapsed_time);
|
||||
sit_i->mounted_time = CURRENT_TIME_SEC.tv_sec;
|
||||
sit_i->mounted_time = ktime_get_real_seconds();
|
||||
mutex_init(&sit_i->sentry_lock);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -2924,12 +2924,12 @@ static int build_free_segmap(struct f2fs_sb_info *sbi)
|
|||
SM_I(sbi)->free_info = free_i;
|
||||
|
||||
bitmap_size = f2fs_bitmap_size(MAIN_SEGS(sbi));
|
||||
free_i->free_segmap = f2fs_kvmalloc(bitmap_size, GFP_KERNEL);
|
||||
free_i->free_segmap = kvmalloc(bitmap_size, GFP_KERNEL);
|
||||
if (!free_i->free_segmap)
|
||||
return -ENOMEM;
|
||||
|
||||
sec_bitmap_size = f2fs_bitmap_size(MAIN_SECS(sbi));
|
||||
free_i->free_secmap = f2fs_kvmalloc(sec_bitmap_size, GFP_KERNEL);
|
||||
free_i->free_secmap = kvmalloc(sec_bitmap_size, GFP_KERNEL);
|
||||
if (!free_i->free_secmap)
|
||||
return -ENOMEM;
|
||||
|
||||
|
|
@ -3109,7 +3109,7 @@ static int init_victim_secmap(struct f2fs_sb_info *sbi)
|
|||
struct dirty_seglist_info *dirty_i = DIRTY_I(sbi);
|
||||
unsigned int bitmap_size = f2fs_bitmap_size(MAIN_SECS(sbi));
|
||||
|
||||
dirty_i->victim_secmap = f2fs_kvzalloc(bitmap_size, GFP_KERNEL);
|
||||
dirty_i->victim_secmap = kvzalloc(bitmap_size, GFP_KERNEL);
|
||||
if (!dirty_i->victim_secmap)
|
||||
return -ENOMEM;
|
||||
return 0;
|
||||
|
|
@ -3131,7 +3131,7 @@ static int build_dirty_segmap(struct f2fs_sb_info *sbi)
|
|||
bitmap_size = f2fs_bitmap_size(MAIN_SEGS(sbi));
|
||||
|
||||
for (i = 0; i < NR_DIRTY_TYPE; i++) {
|
||||
dirty_i->dirty_segmap[i] = f2fs_kvzalloc(bitmap_size, GFP_KERNEL);
|
||||
dirty_i->dirty_segmap[i] = kvzalloc(bitmap_size, GFP_KERNEL);
|
||||
if (!dirty_i->dirty_segmap[i])
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -712,8 +712,9 @@ static inline void set_to_next_sit(struct sit_info *sit_i, unsigned int start)
|
|||
static inline unsigned long long get_mtime(struct f2fs_sb_info *sbi)
|
||||
{
|
||||
struct sit_info *sit_i = SIT_I(sbi);
|
||||
return sit_i->elapsed_time + CURRENT_TIME_SEC.tv_sec -
|
||||
sit_i->mounted_time;
|
||||
time64_t now = ktime_get_real_seconds();
|
||||
|
||||
return sit_i->elapsed_time + now - sit_i->mounted_time;
|
||||
}
|
||||
|
||||
static inline void set_summary(struct f2fs_summary *sum, nid_t nid,
|
||||
|
|
|
|||
Loading…
Reference in a new issue