{"push_id":578571684,"size":31,"distinct_size":31,"ref":"refs/heads/f2fs","head":"50134cb9dfbdb8dbd39d3fe56f65798d8af76ecb","before":"3696bc94d8cd7e2db6357dc17b3f5aa028d7506d","commits":[{"sha":"0de40f03da162f0456862429253151112601f67a","author":{"email":"027f0158ac3b417c565c1fb96c84300078c91cf6@gmail.com","name":"Evan McClain"},"message":"Revert \"f2fs: support 3.10\"\n\nThis reverts commit 560ff1b05ba4258cb8d6ef6e5bc62cd69dec39be.","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/0de40f03da162f0456862429253151112601f67a"},{"sha":"8c9a8768ef3e75ce25d7304cda3f6f8cfa437373","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: trigger correct checkpoint during umount\n\nThis patch fixes to trigger checkpoint with umount flag when kill_sb was called.\nIn kill_sb, f2fs_sync_fs was finally called, but at this time, f2fs can't do\ncheckpoint with CP_UMOUNT.\nAfter then, f2fs_put_super is not doing checkpoint, since it is not dirty.\n\nSo, this patch adds a flag to indicate f2fs_sync_fs is called during umount.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/8c9a8768ef3e75ce25d7304cda3f6f8cfa437373"},{"sha":"0b1b47bcc2bd3022c2b225bc9a6f43505b0fbf11","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: do checkpoint when umount flag is not set\n\nIf the previous checkpoint was done without CP_UMOUNT flag, it needs to do\ncheckpoint with CP_UMOUNT for the next fast boot.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/0b1b47bcc2bd3022c2b225bc9a6f43505b0fbf11"},{"sha":"af42a8812b8c3e2898bf39312c561cab15bfdabc","author":{"email":"0cc5db7488e13b393f245aa6263acec5e92fdcc5@samsung.com","name":"Chao Yu"},"message":"f2fs: fix to release count of meta page in ->invalidatepage\n\nWe will encounter deadloop in below scenario:\n\n1. increase page count for F2FS_DIRTY_META type in following path:\n->recover_fsync_data\n  ->recover_data\n    ->do_recover_data\n      ->recover_data_page\n        ->change_curseg\n          ->write_sum_page\n            ->set_page_dirty\n2. fail in recover_data()\n3. invalidate meta pages in truncate_inode_pages_final without decreasing page\n   count.\n4. deadloop when sync_meta_pages as page count will always be non-zero.\n\nmessage:\nNMI watchdog: BUG: soft lockup - CPU#0 stuck for 22s!\n\n [<c1129a37>] pagevec_lookup_tag+0x27/0x30\n [<f0e774c7>] sync_meta_pages+0x87/0x160 [f2fs]\n [<f0e86dd9>] recover_fsync_data+0xeb9/0xf10 [f2fs]\n [<f0e75398>] f2fs_fill_super+0x888/0x980 [f2fs]\n [<c11733ca>] mount_bdev+0x16a/0x1a0\n [<f0e7180f>] f2fs_mount+0x1f/0x30 [f2fs]\n [<c1173da6>] mount_fs+0x36/0x170\n [<c118b6f5>] vfs_kern_mount+0x55/0xe0\n [<c118d63f>] do_mount+0x1df/0x9f0\n [<c118e110>] SyS_mount+0x70/0xb0\n [<c15a0c48>] sysenter_do_call+0x12/0x12\n\nTo avoid page count leak, let's add ->invalidatepage and ->releasepage in\nf2fs_meta_aops as f2fs_node_aops to release meta page count correctly.\n\nSigned-off-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/af42a8812b8c3e2898bf39312c561cab15bfdabc"},{"sha":"95280299d5c22cc190ae7009d36317311361a9a2","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: leave comment for code readability\n\nDuring the recovery, any xattr blocks should not be found, since they are\nwritten into cold log, not the warm node chain.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/95280299d5c22cc190ae7009d36317311361a9a2"},{"sha":"71bc5299ffd40675e204dd7849423b6185ed4fdb","author":{"email":"0cc5db7488e13b393f245aa6263acec5e92fdcc5@samsung.com","name":"Chao Yu"},"message":"f2fs: add F2FS_IOC_GETVERSION support\n\nIn this patch we add the FS_IOC_GETVERSION ioctl for getting i_generation from\ninode, after that, users can list file's generation number by using \"lsattr -v\".\n\nSigned-off-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/71bc5299ffd40675e204dd7849423b6185ed4fdb"},{"sha":"b06edda8863b5ab3ca5a4a26964a351eedbf5067","author":{"email":"0cc5db7488e13b393f245aa6263acec5e92fdcc5@samsung.com","name":"Chao Yu"},"message":"f2fs: use f2fs_radix_tree_insert to clean codes\n\nNo modification in functionality, just clean codes with f2fs_radix_tree_insert.\n\nSigned-off-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/b06edda8863b5ab3ca5a4a26964a351eedbf5067"},{"sha":"09b134562b60fea56d6b8e4c0a7eb024a0755cc5","author":{"email":"16a37b8b71ffafad4e89ce1ff841da282b29daf2@gmail.com","name":"Kinglong Mee"},"message":"f2fs: fix a bug of inheriting default ACL from parent\n\nIntroduced by a6dda0e63e97122ce9e0ba04367e37cca28315fa\n\"f2fs: use generic posix ACL infrastructure\".\n\nWhen testing default acl, gets in recent kernel (3.19.0-rc5),\nuser::rwx\ngroup::r-x\nother::r-x\ndefault:user::rwx\ndefault:group::r-x\ndefault:group:root:rwx\ndefault:mask::rwx\ndefault:other::r-x\n\n]# getfacl testdir/\nuser::rwx\ngroup::rwx\n                // missing an acl \"group:root:rwx\" inherited from parent\nother::r-x\ndefault:user::rwx\ndefault:group::r-x\ndefault:group:root:rwx\ndefault:mask::rwx\ndefault:other::r-x\n\nSigned-off-by: Kinglong Mee <kinglongmee@gmail.com>\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/09b134562b60fea56d6b8e4c0a7eb024a0755cc5"},{"sha":"01056d1612ab1be785282671437349746a5a93f7","author":{"email":"0cc5db7488e13b393f245aa6263acec5e92fdcc5@samsung.com","name":"Chao Yu"},"message":"f2fs: make truncate_inline_date static\n\n1. make truncate_inline_date static;\n2. remove parameter @from of truncate_inline_date as callers only pass zero.\n\nSigned-off-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/01056d1612ab1be785282671437349746a5a93f7"},{"sha":"3e224319590f834a4f68c039c87ab79b86cf73b3","author":{"email":"0cc5db7488e13b393f245aa6263acec5e92fdcc5@samsung.com","name":"Chao Yu"},"message":"f2fs: clean up {in,de}create_sleep_time\n\nUse pointer parameter @wait to pass result in {in,de}create_sleep_time for\ncleanup.\n\nSigned-off-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/3e224319590f834a4f68c039c87ab79b86cf73b3"},{"sha":"ad1bdf13d8475b0d79ee91e64c30bd81569fb439","author":{"email":"0cc5db7488e13b393f245aa6263acec5e92fdcc5@samsung.com","name":"Chao Yu"},"message":"f2fs: merge flags in struct f2fs_sb_info\n\nCurrently, there are several variables with Boolean type as below:\n\nstruct f2fs_sb_info {\n...\n\tint s_dirty;\n\tbool need_fsck;\n\tbool s_closing;\n...\n\tbool por_doing;\n...\n}\n\nFor this there are some issues:\n1. there are some space of f2fs_sb_info is wasted due to aligning after Boolean\n   type variables by compiler.\n2. if we continuously add new flag into f2fs_sb_info, structure will be messed\n   up.\n\nSo in this patch, we try to:\n1. switch s_dirty to Boolean type variable since it has two status 0/1.\n2. merge s_dirty/need_fsck/s_closing/por_doing variables into s_flag.\n3. introduce an enum type which can indicate different states of sbi.\n4. use new introduced universal interfaces is_sbi_flag_set/{set,clear}_sbi_flag\n   to operate flags for sbi.\n\nAfter that, above issues will be fixed.\n\nSigned-off-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/ad1bdf13d8475b0d79ee91e64c30bd81569fb439"},{"sha":"5ea36bd7b67604704c13e79bd1e91043db7d67cf","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: fix not to drop mount options when retrying fill_super\n\nIf wrong mount option was requested, f2fs tries to fill_super again.\nBut, during the next trial, f2fs has no valid mount options, since\nparse_options deleted all the separators in the original string.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/5ea36bd7b67604704c13e79bd1e91043db7d67cf"},{"sha":"9285e8025daa0129ebabee91452ef3938a0d5170","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: support norecovery mount option\n\nThis patch adds a mount option, norecovery, which is mostly same as\ndisable_roll_forward. The only difference is that norecovery should be activated\nwith read-only mount option.\n\nThis can be used when user wants to check whether f2fs is mountable or not\nwithout any recovery process. (e.g., xfstests/200)\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/9285e8025daa0129ebabee91452ef3938a0d5170"},{"sha":"9aadca249b0a455ba2eb9623d7a838c7c3b67216","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: avoid write_checkpoint if f2fs is mounted readonly\n\nDo not change any partition when f2fs is changed to readonly mode.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/9aadca249b0a455ba2eb9623d7a838c7c3b67216"},{"sha":"b14a6a42dcb0c5b80c53db1279497f4bdc015005","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: split UMOUNT and FASTBOOT flags\n\nThis patch adds FASTBOOT flag into checkpoint as follows.\n\n - CP_UMOUNT_FLAG is set when system is umounted.\n - CP_FASTBOOT_FLAG is set when intermediate checkpoint having node summaries\n   was done.\n\nSo, if you get CP_UMOUNT_FLAG from checkpoint, the system was umounted cleanly.\nInstead, if there was sudden-power-off, you can get CP_FASTBOOT_FLAG or nothing.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/b14a6a42dcb0c5b80c53db1279497f4bdc015005"},{"sha":"24c94c9cdf6a4b4b97156797fd74f4a3b1f1c57b","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: should fail mount when trying to recover data on read-only dev\n\nIf device is read-only, we should not proceed data recovery.\nBut, if the previous checkpoint was done by normal clean shutdown, it's safe to\nproceed the recovery, since there will be no data to be recovered.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/24c94c9cdf6a4b4b97156797fd74f4a3b1f1c57b"},{"sha":"6d7bab44e267de8e2013a4bb42e039c637eadf44","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: keep PagePrivate during releasepage\n\nIf PagePrivate is removed by releasepage, f2fs loses counting dirty pages.\n\ne.g., try_to_release_page will not release page when the page is dirty,\nbut our releasepage removes PagePrivate.\n\n    [<ffffffff81188d75>] try_to_release_page+0x35/0x50\n    [<ffffffff811996f9>] invalidate_inode_pages2_range+0x2f9/0x3b0\n    [<ffffffffa02a7f54>] ? truncate_blocks+0x384/0x4d0 [f2fs]\n    [<ffffffffa02b7583>] ? f2fs_direct_IO+0x283/0x290 [f2fs]\n    [<ffffffffa02b7fb0>] ? get_data_block_fiemap+0x20/0x20 [f2fs]\n    [<ffffffff8118aa53>] generic_file_direct_write+0x163/0x170\n    [<ffffffff8118ad06>] __generic_file_write_iter+0x2a6/0x350\n    [<ffffffff8118adef>] generic_file_write_iter+0x3f/0xb0\n    [<ffffffff81203081>] new_sync_write+0x81/0xb0\n    [<ffffffff81203837>] vfs_write+0xb7/0x1f0\n    [<ffffffff81204459>] SyS_write+0x49/0xb0\n    [<ffffffff817c286d>] system_call_fastpath+0x16/0x1b\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/6d7bab44e267de8e2013a4bb42e039c637eadf44"},{"sha":"183b144608baf83c77b0217781b13bca9de118f0","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: show the number of writeback pages in stat\n\nThis patch adds the # of writeback pages in stat info.\n\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/183b144608baf83c77b0217781b13bca9de118f0"},{"sha":"035c1ec8156c553f1fabff2d60a312a8f41b977e","author":{"email":"0cc5db7488e13b393f245aa6263acec5e92fdcc5@samsung.com","name":"Chao Yu"},"message":"f2fs: merge {invalidate,release}page for meta/node/data pages\n\nThis patch merges ->{invalidate,release}page function for meta/node/data pages.\n\nAfter this, duplication of codes could be removed.\n\nSigned-off-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/035c1ec8156c553f1fabff2d60a312a8f41b977e"},{"sha":"dd5c33bc36b0f261209066f323d6460f92090093","author":{"email":"71255387a32c360dfbe6dfb7aaeb123bf1dc8cb6@kernel.org","name":"Jaegeuk Kim"},"message":"f2fs: introduce a batched trim\n\nThis patch introduces a batched trimming feature, which submits split discard\ncommands.\n\nThis is to avoid long latency due to huge trim commands.\nIf fstrim was triggered ranging from 0 to the end of device, we should lock\nall the checkpoint-related mutexes, resulting in very long latency.\n\nChange-Id: Id284c95bfb7b6f2ce84115e196b022c5e80fd089\nReviewed-by: Chao Yu <chao2.yu@samsung.com>\nSigned-off-by: Jaegeuk Kim <jaegeuk@kernel.org>","distinct":true,"url":"https://api.github.com/repos/aeroevan/android_kernel_moto_shamu/commits/dd5c33bc36b0f261209066f323d6460f92090093"}]}