)]}'
{
  "log": [
    {
      "commit": "6f6541bc128fc2ea30218519e3d6509097eeb17a",
      "tree": "ebefb689ef6deb84ec5ea069a22ca0b5ae698024",
      "parents": [
        "7384b1622a1d33f8791358dd87105a920f722b57"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk@kernel.org",
        "time": "Wed Jul 23 09:57:31 2014 -0700"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:38:33 2015 -0500"
      },
      "message": "f2fs: add nobarrier mount option\n\nThis patch adds a mount option, nobarrier, in f2fs.\nThe assumption in here is that file system keeps the IO ordering, but\ndoesn\u0027t care about cache flushes inside the storages.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n\nConflicts:\n\tDocumentation/filesystems/f2fs.txt\n\nChange-Id: I2947cb10128efcf5647eff432d5fd959b2d2f5bc\n"
    },
    {
      "commit": "2568ffc2a36317fb02a6007c98cb10d1a4d56792",
      "tree": "24c12e535ff3393498746f41acb59ef94426458e",
      "parents": [
        "26d712d5df37ae866a87a200d6f5599b4ac344c6"
      ],
      "author": {
        "name": "Chao Yu",
        "email": "chao2.yu@samsung.com",
        "time": "Wed May 28 08:56:09 2014 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:37:34 2015 -0500"
      },
      "message": "f2fs: avoid overflow when large directory feathure is enabled\n\nWhen large directory feathure is enable, We have one case which could cause\noverflow in dir_buckets() as following:\nspecial case: level + dir_level \u003e\u003d 32 and level \u003c MAX_DIR_HASH_DEPTH / 2.\n\nHere we define MAX_DIR_BUCKETS to limit the return value when the condition\ncould trigger potential overflow.\n\nChanges from V1\n o modify description of calculation in f2fs.txt suggested by Changman Lee.\n\nSuggested-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk@kernel.org\u003e\n"
    },
    {
      "commit": "b24dee4b099284c388837bf0863133c648277fa1",
      "tree": "0fd5ad8c246741d5410a5bb89442e69a5120b98c",
      "parents": [
        "3d1d6d9a2d5618703fdc94fc733085e32d3abf1d"
      ],
      "author": {
        "name": "Huajun Li",
        "email": "huajun.li@intel.com",
        "time": "Sun Nov 10 23:13:21 2013 +0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:36:31 2015 -0500"
      },
      "message": "f2fs: update f2fs Documentation\n\nThis patch describes the inline_data support in f2fs document.\n\nSigned-off-by: Huajun Li \u003chuajun.li@intel.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "f183b11b056eb5669a2db292c5487fe41c0b13b8",
      "tree": "f815f80529e1d428c311ad93e3d02b992b1a0d3d",
      "parents": [
        "206d2e71ceca3aaffa4b04cfd221b4bdf996bcee"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Wed Mar 19 14:17:21 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:35:42 2015 -0500"
      },
      "message": "f2fs: change reclaim rate in percentage\n\nIt is more reasonable to determine the reclaiming rate of prefree segments\naccording to the volume size, which is set to 5% by default.\nFor example, if the volume is 128GB, the prefree segments are reclaimed\nwhen the number reaches to 6.4GB.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "327c57ddd9c50c1e19314d91473c29df5655c92a",
      "tree": "206c7e3e821b3dadf37507ce053b6ce7bc265cdb",
      "parents": [
        "264f3801726318816468b6684e4858a63c29e521"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Wed Mar 19 13:31:37 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:35:40 2015 -0500"
      },
      "message": "f2fs: throttle the memory footprint with a sysfs entry\n\nThis patch introduces ram_thresh, a sysfs entry, which controls the memory\nfootprint used by the free nid list and the nat cache.\n\nPreviously, the free nid list was controlled by MAX_FREE_NIDS, while the nat\ncache was managed by NM_WOUT_THRESHOLD.\nHowever, this approach cannot be applied dynamically according to the system.\n\nSo, this patch adds ram_thresh that users can specify the threshold, which is\nin order of 1 / 1024.\nFor example, if the total ram size is 4GB and the value is set to 10 by default,\nf2fs tries to control the number of free nids and nat caches not to consume over\n10 * (4GB / 1024) \u003d 10MB.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "a753abac7619f93e80228b751757ec1713a07872",
      "tree": "844c7eda0127261584d79c427393786ad4667fff",
      "parents": [
        "9a20f5d52cf178510b9fa0deb4502fdeed888236"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Thu Feb 27 20:09:05 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:35:14 2015 -0500"
      },
      "message": "f2fs: add an sysfs entry to control the directory level\n\nThis patch adds an sysfs entry to control dir_level used by the large directory.\n\nThe description of this entry is:\n\n dir_level                    This parameter controls the directory level to\n\t\t\t      support large directory. If a directory has a\n\t\t\t      number of files, it can reduce the file lookup\n\t\t\t      latency by increasing this dir_level value.\n\t\t\t      Otherwise, it needs to decrease this value to\n\t\t\t      reduce the space overhead. The default value is 0.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "9a20f5d52cf178510b9fa0deb4502fdeed888236",
      "tree": "65f5ab6501b66467820651e352dd95430a3c00b1",
      "parents": [
        "008f8a1516b6a6ba6a25ea2068ae208da62bc1fa"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Thu Jan 09 21:00:06 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:35:13 2015 -0500"
      },
      "message": "f2fs: update documents and a MAINTAINERS entry\n\nThis patch adds missing some description of sysfs entries in\n - Documentation/ABI/testing/sysfs-fs-f2fs\n - Documentation/filesystems/f2fs.txt.\n\nAnd it adds a maintained document entry of F2FS in MAINTAINERS.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "008f8a1516b6a6ba6a25ea2068ae208da62bc1fa",
      "tree": "21a5d7267f6190b757e3efcef486f92dd5004458",
      "parents": [
        "158c19e3ccf2eb5c1fb0421fd328847fd254c5ce"
      ],
      "author": {
        "name": "Jaegeuk Kim",
        "email": "jaegeuk.kim@samsung.com",
        "time": "Thu Feb 27 18:20:00 2014 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:35:12 2015 -0500"
      },
      "message": "f2fs: introduce large directory support\n\nThis patch introduces an i_dir_level field to support large directory.\n\nPreviously, f2fs maintains multi-level hash tables to find a dentry quickly\nfrom a bunch of chiild dentries in a directory, and the hash tables consist of\nthe following tree structure as below.\n\nIn Documentation/filesystems/f2fs.txt,\n\n----------------------\nA : bucket\nB : block\nN : MAX_DIR_HASH_DEPTH\n----------------------\n\nlevel #0   | A(2B)\n           |\nlevel #1   | A(2B) - A(2B)\n           |\nlevel #2   | A(2B) - A(2B) - A(2B) - A(2B)\n     .     |   .       .       .       .\nlevel #N/2 | A(2B) - A(2B) - A(2B) - A(2B) - A(2B) - ... - A(2B)\n     .     |   .       .       .       .\nlevel #N   | A(4B) - A(4B) - A(4B) - A(4B) - A(4B) - ... - A(4B)\n\nBut, if we can guess that a directory will handle a number of child files,\nwe don\u0027t need to traverse the tree from level #0 to #N all the time.\nSince the lower level tables contain relatively small number of dentries,\nthe miss ratio of the target dentry is likely to be high.\n\nIn order to avoid that, we can configure the hash tables sparsely from level #0\nlike this.\n\nlevel #0   | A(2B) - A(2B) - A(2B) - A(2B)\n\nlevel #1   | A(2B) - A(2B) - A(2B) - A(2B) - A(2B) - ... - A(2B)\n     .     |   .       .       .       .\nlevel #N/2 | A(2B) - A(2B) - A(2B) - A(2B) - A(2B) - ... - A(2B)\n     .     |   .       .       .       .\nlevel #N   | A(4B) - A(4B) - A(4B) - A(4B) - A(4B) - ... - A(4B)\n\nWith this structure, we can skip the ineffective tree searches in lower level\nhash tables.\n\nThis patch adds just a facility for this by introducing i_dir_level in\nf2fs_inode.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n"
    },
    {
      "commit": "b1a94e804ff55351101ea9ae7797c874ab92ef42",
      "tree": "3108bedfcc1eb99c4775bfc92ec99a09d3d9b06f",
      "parents": [
        "8005ecc7ea4f6004f217a39425a241ac8a63633c"
      ],
      "author": {
        "name": "Changman Lee",
        "email": "cm224.lee@samsung.com",
        "time": "Fri Nov 15 10:42:51 2013 +0900"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:06:08 2015 -0500"
      },
      "message": "f2fs: Update to version in 3.14\n\nf2fs: introduce __find_rev_next(_zero)_bit\n\nWhen f2fs_set_bit is used, in a byte MSB and LSB is reversed,\nin that case we can use __find_rev_next_bit or __find_rev_next_zero_bit.\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\n[Jaegeuk Kim: change the function names]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: improve searching speed of __next_free_blkoff\n\nTo find a zero bit using the result of OR operation between ckpt_valid_map\nand cur_valid_map is more fast than find a zero bit in each bitmap.\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\n[Jaegeuk Kim: adjust changed function name]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add a slab cache entry for small discards\n\nThis patch adds a slab cache entry for small discards.\n\nEach entry consists of:\n\nstruct discard_entry {\n\tstruct list_head list;\t/* list head */\n\tblock_t blkaddr;\t/* block address to be discarded */\n\tint len;\t\t/* # of consecutive blocks of the discard */\n};\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add key functions for small discards\n\nThis patch adds key functions to activate the small discard feature.\n\nNote that this procedure is conducted during the checkpoint only.\n\nIn flush_sit_entries(), when a new dirty sit entry is flushed, f2fs calls\nadd_discard_addrs() which searches candidates to be discarded.\nThe candidates should be marked *invalidated* and also previous checkpoint\nrecognizes it as *valid*.\n\nAt the end of a checkpoint procedure, f2fs throws discards based on the\ndiscard entry list.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add a sysfs entry to control max_discards\n\nIf frequent small discards are issued to the device, the performance would\nbe degraded significantly.\nSo, this patch adds a sysfs entry to control the number of discards to be\nissued during a checkpoint procedure.\n\nBy default, f2fs does not issue any small discards, which means max_discards\nis zero.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: introduce f2fs_issue_discard() to clean up\n\nChange log from v1:\n o fix 32bit drops reported by Dan Carpenter\n\nThis patch adds f2fs_issue_discard() to clean up blkdev_issue_discard() flows.\n\nDan carpenter reported:\n\"block_t is a 32 bit type and sector_t is a 64 bit type.  The upper 32\nbits of the sector_t are not used because the shift will wrap.\"\n\nBug-Reported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add a tracepoint for f2fs_issue_discard\n\nThis patch adds a tracepoint for f2fs_issue_discard.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: use f2fs_put_page to release page for uniform style\n\nWe should use f2fs_put_page to release page for uniform style of f2fs code.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: clean up the do_submit_bio flow\n\nThis patch introduces PAGE_TYPE_OF_BIO() and cleans up do_submit_bio() with it.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: use sbi-\u003ewrite_mutex for write bios\n\nThis patch removes an unnecessary semaphore (i.e., sbi-\u003ebio_sem).\nThere is no reason to use the semaphore when f2fs submits read and write IOs.\nInstead, let\u0027s use a write mutex and cover the sbi-\u003ebio[] by the lock.\n\nChange log from v1:\n o split write_mutex suggested by Chao Yu\n\nChao described,\n\"All DATA/NODE/META bio buffers in superblock is protected by\n\u0027sbi-\u003ewrite_mutex\u0027, but each bio buffer area is independent, So we\nshould split write_mutex to three for DATA/NODE/META.\"\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: disable the extent cache ops on high fragmented files\n\nThe f2fs manages an extent cache to search a number of consecutive data blocks\nvery quickly.\n\nHowever it conducts unnecessary cache operations if the file is highly\nfragmented with no valid extent cache.\n\nIn such the case, we don\u0027t need to handle the extent cache, but just can disable\nthe cache facility.\n\nNevertheless, this patch gives one more chance to enable the extent cache.\n\nFor example,\n1. create a file\n2. write data sequentially which produces a large valid extent cache\n3. update some data, resulting in a fragmented extent\n4. if the fragmented extent is too small, then drop extent cache\n5. close the file\n\n6. open the file again\n7. give another chance to make a new extent cache\n8. write data sequentially again which creates another big extent cache.\n...\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: introduce a bio array for per-page write bios\n\nThe f2fs has three bio types, NODE, DATA, and META, and manages some data\nstructures per each bio types.\n\nThe codes are a little bit messy, thus, this patch introduces a bio array\nwhich groups individual data structures as follows.\n\nstruct f2fs_bio_info {\n\tstruct bio *bio;\t\t/* bios to merge */\n\tsector_t last_block_in_bio;\t/* last block number */\n\tstruct mutex io_mutex;\t\t/* mutex for bio */\n};\n\nstruct f2fs_sb_info {\n\t...\n\tstruct f2fs_bio_info write_io[NR_PAGE_TYPE];\t/* for write bios */\n\t...\n};\n\nThe code changes from this new data structure are trivial.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: convert remove_inode_page to void\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: convert dev_valid_block_count to void\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: convert inc/dec_valid_node_count to inc/dec one count\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: simplify write_orphan_inodes for better readable\n\nSimplify write_orphan_inodes for better readable. Because we hold the\norphan_inode_mutex, so it\u0027s safe to use list_for_each_entry instead of\nlist_for_each_safe.\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: move the list_head initialization into the lock protection region\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add a new function to support for merging contiguous read\n\nFor better read performance, we add a new function to support for merging\ncontiguous read as the one for write.\n\nv1--\u003ev2:\n o add declarations here as Gu Zheng suggested.\n o use new structure f2fs_bio_info introduced by Jaegeuk Kim.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nAcked-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\n\nf2fs: merge read IOs at ra_nat_pages()\n\nChange log from v1:\n  o add mark_page_accessed() not to reclaim the nat pages.\n\nThis patch changes the policy of submitting read bios at ra_nat_pages.\n\nPreviously, f2fs submits small read bios with block plugging.\nBut, with this patch, f2fs itself merges read bios first and then submits a\nlarge bio, which can reduce the bio handling overheads.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: simplify IS_DATASEG and IS_NODESEG macro\n\nIt is not efficient comparing each segment type to find node or data.\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\n[Jaegeuk Kim: remove unnecessary white spaces]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: adds a tracepoint for submit_read_page\n\nThis patch adds a tracepoint for submit_read_page.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: integrate tracepoints of f2fs_submit_read(_write)_page]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: adds a tracepoint for f2fs_submit_read_bio\n\nThis patch adds a tracepoint for f2fs_submit_read_bio.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: integrate tracepoints of f2fs_submit_read(_write)_bio]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: read contiguous sit entry pages by merging for mount performance\n\nPreviously we read sit entries page one by one, this method lost the chance\nof reading contiguous page together. So we read pages as contiguous as\npossible for better mount performance.\n\nchange log:\n o merge judgements/use \u0027Continue\u0027 or \u0027Break\u0027 instead of \u0027Goto\u0027 as Gu Zheng\n   suggested.\n o add mark_page_accessed() before release page to delay VM reclaiming.\n o remove \u0027*order\u0027 for simplification of function as Jaegeuk Kim suggested.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: fix a bug on the block address calculation]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: avoid lock debugging overhead\n\nIf CONFIG_F2FS_CHECK_FS is unset, we don\u0027t need to add any debugging overhead.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add a new function: f2fs_reserve_block()\n\nAdd the function f2fs_reserve_block() to easily reserve new blocks, and\nuse it to clean up more codes.\n\nSigned-off-by: Huajun Li \u003chuajun.li@intel.com\u003e\nSigned-off-by: Haicheng Li \u003chaicheng.li@linux.intel.com\u003e\nSigned-off-by: Weihong Xu \u003cweihong.xu@intel.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add detailed information of bio types in the tracepoints\n\nThis patch inserts information of bio types in more detail.\nSo, we can now see REQ_META and REQ_PRIO too.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: send REQ_META or REQ_PRIO when reading meta area\n\nLet\u0027s send REQ_META or REQ_PRIO when reading meta area such as NAT/SIT\netc.\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add flags and helpers to support inline data\n\nAdd new inode flags F2FS_INLINE_DATA and FI_INLINE_DATA to indicate\nwhether the inode has inline data.\n\nInline data makes use of inode block\u0027s data indices region to save small\nfile. Currently there are 923 data indices in an inode block. Since\ninline xattr has made use of the last 50 indices to save its data, there\nare 873 indices left which can be used for inline data. When\nFI_INLINE_DATA is set, the layout of inode block\u0027s indices region is\nlike below:\n\n+-----------------+\n|                 | Reserved. reserve_new_block() will make use of\n| i_addr[0]       | i_addr[0] when we need to reserve a new data block\n|                 | to convert inline data into regular one\u0027s.\n|-----------------|\n|                 | Used by inline data. A file whose size is less than\n| i_addr[1~872]   | 3488 bytes(~3.4k) and doesn\u0027t reserve extra\n|                 | blocks by fallocate() can be saved here.\n|-----------------|\n|                 |\n| i_addr[873~922] | Reserved for inline xattr\n|                 |\n+-----------------+\n\nSigned-off-by: Haicheng Li \u003chaicheng.li@linux.intel.com\u003e\nSigned-off-by: Huajun Li \u003chuajun.li@intel.com\u003e\nSigned-off-by: Weihong Xu \u003cweihong.xu@intel.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add a new mount option: inline_data\n\nAdd a mount option: inline_data. If the mount option is set,\ndata of New created small files can be stored in their inode.\n\nSigned-off-by: Huajun Li \u003chuajun.li@intel.com\u003e\nSigned-off-by: Haicheng Li \u003chaicheng.li@linux.intel.com\u003e\nSigned-off-by: Weihong Xu \u003cweihong.xu@intel.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove unnecessary return value\n\nLet\u0027s remove the unnecessary return value.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: fix a potential out of range issue\n\nFix a potential out of range issue introduced by commit:\n22fb72225a\nf2fs: simplify write_orphan_inodes for better readable\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: bug fix on bit overflow from 32bits to 64bits\n\nThis patch fixes some bit overflows by the shift operations.\n\nDan Carpenter reported potential bugs on bit overflows as follows.\n\nfs/f2fs/segment.c:910 submit_write_page()\n\twarn: should \u0027blk_addr \u003c\u003c ((sbi)-\u003elog_blocksize - 9)\u0027 be a 64 bit type?\nfs/f2fs/checkpoint.c:429 get_valid_checkpoint()\n\twarn: should \u00271 \u003c\u003c ()\u0027 be a 64 bit type?\nfs/f2fs/data.c:408 f2fs_readpage()\n\twarn: should \u0027blk_addr \u003c\u003c ((sbi)-\u003elog_blocksize - 9)\u0027 be a 64 bit type?\nfs/f2fs/data.c:457 submit_read_page()\n\twarn: should \u0027blk_addr \u003c\u003c ((sbi)-\u003elog_blocksize - 9)\u0027 be a 64 bit type?\nfs/f2fs/data.c:525 get_data_block_ro()\n\twarn: should \u0027i \u003c\u003c blkbits\u0027 be a 64 bit type?\n\nBug-Reported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove unnecessary condition checks\n\nThis patch removes the unnecessary condition checks on:\n\nfs/f2fs/gc.c:667 do_garbage_collect() warn: \u0027sum_page\u0027 isn\u0027t an ERR_PTR\nfs/f2fs/f2fs.h:795 f2fs_put_page() warn: \u0027page\u0027 isn\u0027t an ERR_PTR\n\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove unneeded code in punch_hole\n\nBecause FALLOC_FL_PUNCH_HOLE flag must be ORed with FALLOC_FL_KEEP_SIZE\nin fallocate, so we could remove the useless \u0027keep size\u0027 branch code which\nwill never be excuted in punch_hole.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Fan Li \u003cfanofcode.li@samsung.com\u003e\n[Jaegeuk Kim: remove an unnecessary parameter togather]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: avoid to calculate incorrect max orphan number\n\nBecause we will write node summaries when do_checkpoint with umount flag,\nour number of max orphan blocks should minus NR_CURSEG_NODE_TYPE additional.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Shu Tan \u003cshu.tan@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: correct type of wait in struct bio_private\n\nThe void *wait in bio_private is used for waiting completion of checkpoint bio.\nSo we don\u0027t need to use its type as void, but declare it as completion type.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: add description]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: use true and false for boolean variable\n\nThe inode_page_locked should be a boolean variable.\n\nstruct dnode_of_data {\n\tstruct inode *inode;            /* vfs inode pointer */\n\tstruct page *inode_page;        /* its inode page, NULL is possible */\n\tstruct page *node_page;         /* cached direct node page */\n\tnid_t nid;                      /* node id of the direct node block */\n\tunsigned int ofs_in_node;       /* data offset in the node page */\n\u003d\u003d\u003e\tbool inode_page_locked;         /* inode page is locked or not */\n\tblock_t data_blkaddr;           /* block address of the node block */\n};\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: add description]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: check return value of f2fs_readpage in find_data_page\n\nWe should return error if we do not get an updated page in find_date_page\nwhen f2fs_readpage failed.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: convert recover_orphan_inodes to void\n\nThe recover_orphan_inodes() returns no error all the time, so we don\u0027t need to\ncheck its errors.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: add description]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove the own bi_private allocation\n\nPreviously f2fs allocates its own bi_private data structure all the time even\nthough we don\u0027t use it. But, can we remove this bi_private allocation?\n\nThis patch removes such the additional bi_private allocation.\n\n1. Retrieve f2fs_sb_info from its page-\u003emapping-\u003ehost-\u003ei_sb.\n - This removes the usecases of bi_private in end_io.\n\n2. Use bi_private only when we really need it.\n - The bi_private is used only when the checkpoint procedure is conducted.\n - When conducting the checkpoint, f2fs submits a META_FLUSH bio to wait its bio\ncompletion.\n - Since we have no dependancies to remove bi_private now, let\u0027s just use\n bi_private pointer as the completion pointer.\n\nReviewed-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: refactor bio-related operations\n\nThis patch integrates redundant bio operations on read and write IOs.\n\n1. Move bio-related codes to the top of data.c.\n2. Replace f2fs_submit_bio with f2fs_submit_merged_bio, which handles read\n   bios additionally.\n3. Introduce __submit_merged_bio to submit the merged bio.\n4. Change f2fs_readpage to f2fs_submit_page_bio.\n5. Introduce f2fs_submit_page_mbio to integrate previous submit_read_page and\n   submit_write_page.\n\nReviewed-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com \u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: readahead contiguous pages for restore_node_summary\n\nIf cp has no CP_UMOUNT_FLAG, we will read all pages in whole node segment\none by one, it makes low performance. So let\u0027s merge contiguous pages and\nreadahead for better performance.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: adjust the new bio operations]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove debufs dir if debugfs_create_file() failed\n\nWhen debugfs_create_file() failed in f2fs_create_root_stats(),\ndebugfs_root should be remove.\n\nSigned-off-by: Younger Liu \u003cliuyiyang@hisense.com\u003e\nCc: Younger Liu \u003cyounger.liucn@gmail.com\u003e\nCc: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: replace the debugfs_root with f2fs_debugfs_root\n\nThis minor change for the naming conventions of debugfs_root\nto avoid any possible conflicts to the other filesystem.\n\nSigned-off-by: Younger Liu \u003cyounger.liucn@gmail.com\u003e\nCc: Younger Liu \u003cyounger.liucn@gmail.com\u003e\nCc: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n[Jaegeuk Kim: change the patch name]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: use inner macro GFP_F2FS_ZERO for simplification\n\nUse inner macro GFP_F2FS_ZERO to instead of GFP_NOFS | __GFP_ZERO for\nsimplification of code.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: avoid unneeded page release for correct _count of page\n\nIn find_fsync_dnodes() and recover_data(), our flow is like this:\n\n-\u003ef2fs_submit_page_bio()\n\t-\u003e f2fs_put_page()\n\t\t-\u003e page_cache_release()\t---- page-\u003e_count declined to zero.\n-\u003e__free_pages()\n\t-\u003e put_page_testzero() ---- page-\u003e_count will be declined again.\n\nWe will get a segment fault in put_page_testzero when CONFIG_DEBUG_VM\nis on, or return MM with a bad page with wrong _count num.\n\nSo let\u0027s just release this page.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add unlikely() macro for compiler optimization\n\nAs we know, some of our branch condition will rarely be true. So we could add\n\u0027unlikely\u0027 to let compiler optimize these code, by this way we could drop\nunneeded \u0027jump\u0027 assemble code to improve performance.\n\nchange log:\n o add *unlikely* as many as possible across the whole source files at once\n   suggested by Jaegeuk Kim.\n\nSuggested-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add unlikely() macro for compiler more aggressively\n\nThis patch adds unlikely() macro into the most of codes.\nThe basic rule is to add that when:\n- checking unusual errors,\n- checking page mappings,\n- and the other unlikely conditions.\n\nChange log from v1:\n - Don\u0027t add unlikely for the NULL test and error test: advised by Andi Kleen.\n\nCc: Chao Yu \u003cchao2.yu@samsung.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: merge pages with the same sync_mode flag\n\nPreviously f2fs submits most of write requests using WRITE_SYNC, but f2fs_write_data_pages\nsubmits last write requests by sync_mode flags callers pass.\n\nThis causes a performance problem since continuous pages with different sync flags\ncan\u0027t be merged in cfq IO scheduler(thanks yu chao for pointing it out), and synchronous\nrequests often take more time.\n\nThis patch makes the following modifies to DATA writebacks:\n\n1. every page will be written back using the sync mode caller pass.\n2. only pages with the same sync mode can be merged in one bio request.\n\nThese changes are restricted to DATA pages.Other types of writebacks are modified\nTo remain synchronous.\n\nIn my test with tiotest, f2fs sequence write performance is improved by about 7%-10% ,\nand this patch has no obvious impact on other performance tests.\n\nSigned-off-by: Fan Li \u003cfanofcode.li@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: refactor bio-\u003erw handling\n\nThis patch introduces f2fs_io_info to mitigate the complex parameter list.\n\nstruct f2fs_io_info {\n\tenum page_type type;\t\t/* contains DATA/NODE/META/META_FLUSH */\n\tint rw;\t\t\t\t/* contains R/RS/W/WS */\n\tint rw_flag;\t\t\t/* contains REQ_META/REQ_PRIO */\n}\n\n1. f2fs_write_data_pages\n - DATA\n - WRITE_SYNC is set when wbc-\u003eWB_SYNC_ALL.\n\n2. sync_node_pages\n - NODE\n - WRITE_SYNC all the time\n\n3. sync_meta_pages\n - META\n - WRITE_SYNC all the time\n - REQ_META | REQ_PRIO all the time\n\n ** f2fs_submit_merged_bio() handles META_FLUSH.\n\n4. ra_nat_pages, ra_sit_pages, ra_sum_pages\n - META\n - READ_SYNC\n\nCc: Fan Li \u003cfanofcode.li@samsung.com\u003e\nCc: Changman Lee \u003ccm224.lee@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: fix the location of tracepoint\n\nWe need to get a trace before submit_bio, since its bi_sector is remapped during\nthe submit_bio.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: missing kmem_cache_destroy for discard_entry\n\ninsmod f2fs.ko is failed after insmod and rmmod firstly.\n\n$ sudo insmod fs/f2fs/f2fs.ko\ninsmod: error inserting \u0027fs/f2fs/f2fs.ko\u0027: -1 Cannot allocate memory\n\n-- dmesg --\nkmem_cache_sanity_check (free_nid): Cache name already exists.\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: introduce sysfs entry to control in-place-update policy\n\nThis patch introduces new sysfs entries for users to control the policy of\nin-place-updates, namely IPU, in f2fs.\n\nSometimes f2fs suffers from performance degradation due to its out-of-place\nupdate policy that produces many additional node block writes.\nIf the storage performance is very dependant on the amount of data writes\ninstead of IO patterns, we\u0027d better drop this out-of-place update policy.\n\nThis patch suggests 5 polcies and their triggering conditions as follows.\n\n[sysfs entry name \u003d ipu_policy]\n\n0: F2FS_IPU_FORCE       all the time,\n1: F2FS_IPU_SSR         if SSR mode is activated,\n2: F2FS_IPU_UTIL        if FS utilization is over threashold,\n3: F2FS_IPU_SSR_UTIL    if SSR mode is activated and FS utilization is over\n                        threashold,\n4: F2FS_IPU_DISABLE    disable IPU. (\u003ddefault option)\n\n[sysfs entry name \u003d min_ipu_util]\n\nThis parameter controls the threshold to trigger in-place-updates.\nThe number indicates percentage of the filesystem utilization, and used by\nF2FS_IPU_UTIL and F2FS_IPU_SSR_UTIL policies.\n\nFor more details, see need_inplace_update() in segment.h.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: introduce a new direct_IO write path\n\nPreviously, f2fs doesn\u0027t support direct IOs with high performance, which throws\nevery write requests via the buffered write path, resulting in highly\nperformance degradation due to memory opeations like copy_from_user.\n\nThis patch introduces a new direct IO path in which every write requests are\nprocessed by generic blockdev_direct_IO() with enhanced get_block function.\n\nThe get_data_block() in f2fs handles:\n1. if original data blocks are allocates, then give them to blockdev.\n2. otherwise,\n  a. preallocate requested block addresses\n  b. do not use extent cache for better performance\n  c. give the block addresses to blockdev\n\nThis policy induces that:\n- new allocated data are sequentially written to the disk\n- updated data are randomly written to the disk.\n- f2fs gives consistency on its file meta, not file data.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: write dirty meta pages collectively\n\nThis patch enhances writing dirty meta pages collectively in background.\nDuring the file data writes, it\u0027d better avoid to write small dirty meta pages\nfrequently.\nSo let\u0027s give a chance to collect a number of dirty meta pages for a while.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: move all the bio initialization into __bio_alloc\n\nMove all the bio initialization into __bio_alloc, and some minor cleanups are\nalso added.\n\nv3:\n  Use \u0027bool\u0027 rather than \u0027int\u0027 as Kim suggested.\n\nv2:\n  Use \u0027is_read\u0027 rather than \u0027rw\u0027 as Yu Chao suggested.\n  Remove the needless initialization of bio-\u003ebi_private.\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove the rw_flag domain from f2fs_io_info\n\nWhen using the f2fs_io_info in the low level, we still need to merge the\nrw and rw_flag, so use the rw to hold all the io flags directly,\nand remove the rw_flag field.\n\nps.It is based on the previous patch:\nf2fs: move all the bio initialization into __bio_alloc\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: update several comments\n\nUpdate several comments:\n1. use f2fs_{un}lock_op install of mutex_{un}lock_op.\n2. update comment of get_data_block().\n3. update description of node offset.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: avoid to set wrong pino of inode when rename dir\n\nWhen we rename a dir to new name which is not exist previous,\nwe will set pino of parent inode with ino of child inode in f2fs_set_link.\nIt destroy consistency of pino, it should be fixed.\n\nThanks for previous work of Shu Tan.\n\nSigned-off-by: Shu Tan \u003cshu.tan@samsung.com\u003e\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: check filename length in recover_dentry\n\nIn current flow, we will get Null return value of f2fs_find_entry in\nrecover_dentry when name.len is bigger than F2FS_NAME_LEN, and then we\nstill add this inode into its dir entry.\nTo avoid this situation, we must check filename length before we use it.\n\nAnother point is that we could remove the code of checking filename length\nIn f2fs_find_entry, because f2fs_lookup will be called previously to ensure of\nvalidity of filename length.\n\nV2:\n o add WARN_ON() as Jaegeuk Kim suggested.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: introduce F2FS_INODE macro to get f2fs_inode\n\nThis patch introduces F2FS_INODE that returns struct f2fs_inode * from the inode\npage.\nBy using this macro, we can remove unnecessary casting codes like below.\n\n   struct f2fs_inode *ri \u003d \u0026F2FS_NODE(inode_page)-\u003ei;\n-\u003e struct f2fs_inode *ri \u003d F2FS_INODE(inode_page);\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: should put the dnode when NEW_ADDR is detected\n\nWhen get_dnode_of_data() in get_data_block() returns a successful dnode, we\nshould put the dnode.\nBut, previously, if its data block address is equal to NEW_ADDR, we didn\u0027t do\nthat, resulting in a deadlock condition.\nSo, this patch splits original error conditions with this case, and then calls\nf2fs_put_dnode before finishing the function.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: check the blocksize before calling generic_direct_IO path\n\nThe f2fs supports 4KB block size. If user requests dwrite with under 4KB data,\nit allocates a new 4KB data block.\nHowever, f2fs doesn\u0027t add zero data into the untouched data area inside the\nnewly allocated data block.\n\nThis incurs an error during the xfstest #263 test as follow.\n\n263 12s ... [failed, exit status 1] - output mismatch (see 263.out.bad)\n\t--- 263.out\t2013-03-09 03:37:15.043967603 +0900\n\t+++ 263.out.bad\t2013-12-27 04:20:39.230203114 +0900\n\t@@ -1,3 +1,976 @@\n\tQA output created by 263\n\tfsx -N 10000 -o 8192 -l 500000 -r PSIZE -t BSIZE -w BSIZE -Z\n\t-fsx -N 10000 -o 128000 -l 500000 -r PSIZE -t BSIZE -w BSIZE -Z\n\t+fsx -N 10000 -o 8192 -l 500000 -r PSIZE -t BSIZE -w BSIZE -Z\n\t+truncating to largest ever: 0x12a00\n\t+truncating to largest ever: 0x75400\n\t+fallocating to largest ever: 0x79cbf\n\t...\n\t(Run \u0027diff -u 263.out 263.out.bad\u0027 to see the entire diff)\n\tRan: 263\n\tFailures: 263\n\tFailed 1 of 1 tests\n\nIt turns out that, when the test tries to write 2KB data with dio, the new dio\npath allocates 4KB data block without filling zero data inside the remained 2KB\narea. Finally, the output file contains a garbage data for that region.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: convert max_orphans to a field of f2fs_sb_info\n\nPreviously, we need to calculate the max orphan num when we try to acquire an\norphan inode, but it\u0027s a stable value since the super block was inited. So\nconverting it to a field of f2fs_sb_info and use it directly when needed seems\na better choose.\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: key functions to handle inline data\n\nFunctions to implement inline data read/write, and move inline data to\nnormal data block when file size exceeds inline data limitation.\n\nSigned-off-by: Huajun Li \u003chuajun.li@intel.com\u003e\nSigned-off-by: Haicheng Li \u003chaicheng.li@linux.intel.com\u003e\nSigned-off-by: Weihong Xu \u003cweihong.xu@intel.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: handle inline data operations\n\nHook inline data read/write, truncate, fallocate, setattr, etc.\n\nFiles need meet following 2 requirement to inline:\n 1) file size is not greater than MAX_INLINE_DATA;\n 2) file doesn\u0027t pre-allocate data blocks by fallocate().\n\nFI_INLINE_DATA will not be set while creating a new regular inode because\nmost of the files are bigger than ~3.4K. Set FI_INLINE_DATA only when\ndata is submitted to block layer, ranther than set it while creating a new\ninode, this also avoids converting data from inline to normal data block\nand vice versa.\n\nWhile writting inline data to inode block, the first data block should be\nreleased if the file has a block indexed by i_addr[0].\n\nOn the other hand, when a file operation is appied to a file with inline\ndata, we need to test if this file can remain inline by doing this\noperation, otherwise it should be convert into normal file by reserving\na new data block, copying inline data to this new block and clear\nFI_INLINE_DATA flag. Because reserve a new data block here will make use\nof i_addr[0], if we save inline data in i_addr[0..872], then the first\n4 bytes would be overwriten. This problem can be avoided simply by\nnot using i_addr[0] for inline data.\n\nSigned-off-by: Huajun Li \u003chuajun.li@intel.com\u003e\nSigned-off-by: Haicheng Li \u003chaicheng.li@linux.intel.com\u003e\nSigned-off-by: Weihong Xu \u003cweihong.xu@intel.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: don\u0027t need to get f2fs_lock_op for the inline_data test\n\nThis patch locates checking the inline_data prior to calling f2fs_lock_op()\nin truncate_blocks(), since getting the lock is unnecessary.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: convert inline_data for punch_hole\n\nIn the punch_hole(), let\u0027s convert inline_data all the time for simplicity and\nto avoid potential deadlock conditions.\nIt is pretty much not a big deal to do this.\n\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: call f2fs_put_page at the error case\n\nIn f2fs_write_begin(), if f2fs_conver_inline_data() returns an error like\n-ENOSPC, f2fs should call f2fs_put_page().\nOtherwise, it is remained as a locked page, resulting in the following bug.\n\n[\u003cffffffff8114657e\u003e] sleep_on_page+0xe/0x20\n[\u003cffffffff81146567\u003e] __lock_page+0x67/0x70\n[\u003cffffffff81157d08\u003e] truncate_inode_pages_range+0x368/0x5d0\n[\u003cffffffff81157ff5\u003e] truncate_inode_pages+0x15/0x20\n[\u003cffffffff8115804b\u003e] truncate_pagecache+0x4b/0x70\n[\u003cffffffff81158082\u003e] truncate_setsize+0x12/0x20\n[\u003cffffffffa02a1842\u003e] f2fs_setattr+0x72/0x270 [f2fs]\n[\u003cffffffff811cdae3\u003e] notify_change+0x213/0x400\n[\u003cffffffff811ab376\u003e] do_truncate+0x66/0xa0\n[\u003cffffffff811ab541\u003e] vfs_truncate+0x191/0x1b0\n[\u003cffffffff811ab5bc\u003e] do_sys_truncate+0x5c/0xa0\n[\u003cffffffff811ab78e\u003e] SyS_truncate+0xe/0x10\n[\u003cffffffff81756052\u003e] system_call_fastpath+0x16/0x1b\n[\u003cffffffffffffffff\u003e] 0xffffffffffffffff\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: refactor f2fs_convert_inline_data\n\nChange log from v1:\n o handle NULL pointer of grab_cache_page_write_begin() pointed by Chao Yu.\n\nThis patch refactors f2fs_convert_inline_data to check a couple of conditions\ninternally for deciding whether it needs to convert inline_data or not.\n\nSo, the new f2fs_convert_inline_data initially checks:\n1) f2fs_has_inline_data(), and\n2) the data size to be changed.\n\nIf the inode has inline_data but the size to fill is less than MAX_INLINE_DATA,\nthen we don\u0027t need to convert the inline_data with data allocation.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add the number of inline_data files to status info\n\nThis patch adds the number of inline_data files into the status information.\nNote that the number is reset whenever the filesystem is newly mounted.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add inline_data recovery routine\n\nThis patch adds a inline_data recovery routine with the following policy.\n\n[prev.] [next] of inline_data flag\n   o       o  -\u003e recover inline_data\n   o       x  -\u003e remove inline_data, and then recover data blocks\n   x       o  -\u003e remove inline_data, and then recover inline_data\n   x       x  -\u003e recover data blocks\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: handle errors correctly during f2fs_reserve_block\n\nThe get_dnode_of_data nullifies inode and node page when error is occurred.\n\nThere are two cases that passes inode page into get_dnode_of_data().\n\n1. make_empty_dir()\n    -\u003e get_new_data_page()\n      -\u003e f2fs_reserve_block(ipage)\n\t-\u003e get_dnode_of_data()\n\n2. f2fs_convert_inline_data()\n    -\u003e __f2fs_convert_inline_data()\n      -\u003e f2fs_reserve_block(ipage)\n\t-\u003e get_dnode_of_data()\n\nThis patch adds correct error handling codes when get_dnode_of_data() returns\nan error.\n\nAt first, f2fs_reserve_block() calls f2fs_put_dnode() whenever reserve_new_block\nreturns an error.\nSo, the rule of f2fs_reserve_block() is to nullify inode page when there is any\nerror internally.\n\nFinally, two callers of f2fs_reserve_block() should call f2fs_put_dnode()\nappropriately if they got an error since successful f2fs_reserve_block().\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: fix truncate_partial_nodes bug\n\nThe truncate_partial_nodes puts pages incorrectly in the following two cases.\nNote that the value for argc \u0027depth\u0027 can only be 2 or 3.\nPlease see truncate_inode_blocks() and truncate_partial_nodes().\n\n1) An err is occurred in the first \u0027for\u0027 loop\n  When err is occurred with depth \u003d 2, pages[0] is invalid, so this page doesn\u0027t\n  need to be put. There is no problem, however, when depth is 3, it doesn\u0027t put\n  the pages correctly where pages[0] is valid and pages[1] is invalid.\n  In this case, depth is set to 2 (ref to statemnt depth \u003d i + 1), and then\n  \u0027goto fail\u0027.\n  In label \u0027fail\u0027, for (i \u003d depth - 3; i \u003e\u003d 0; i--) cannot meet the condition\n  because i \u003d -1, so pages[0] cann\u0027t be put.\n\n2) An err happened in the second \u0027for\u0027 loop\n  Now we\u0027ve got pages[0] with depth \u003d 2, or we\u0027ve got pages[0] and pages[1]\n  with depth \u003d 3. When an err is detected, we need \u0027goto fail\u0027 to put such\n  the pages.\n  When depth is 2, in label \u0027fail\u0027, for (i \u003d depth - 3; i \u003e\u003d 0; i--) cann\u0027t\n  meet the condition because i \u003d -1, so pages[0] cann\u0027t be put.\n  When depth is 3, in label \u0027fail\u0027, for (i \u003d depth - 3; i \u003e\u003d 0; i--) can\n  only put pages[0], pages[1] also cann\u0027t be put.\n\nNote that \u0027depth\u0027 has been changed before first \u0027goto fail\u0027 (ref to statemnt\ndepth \u003d i + 1), so passing this modified \u0027depth\u0027 to the tracepoint,\ntrace_f2fs_truncate_partial_nodes, is also incorrect.\n\nSigned-off-by: Shifei Ge \u003cshifei10.ge@samsung.com\u003e\n[Jaegeuk Kim: modify the description and fix one bug]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: avoid to left uninitialized data in page when read inline data\n\nChange log from v1:\n o reduce unneeded memset in __f2fs_convert_inline_data\n\n\u003eFrom 58796be2bd2becbe8d52305210fb2a64e7dd80b6 Mon Sep 17 00:00:00 2001\nFrom: Chao Yu \u003cchao2.yu@samsung.com\u003e\nDate: Mon, 30 Dec 2013 09:21:33 +0800\nSubject: [PATCH] f2fs: avoid to left uninitialized data in page when read\n inline data\n\nWe left uninitialized data in the tail of page when we read an inline data\npage. So let\u0027s initialize left part of the page excluding inline data region.\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: avoid to read inline data except first page\n\nHere is a case which could read inline page data not from first page.\n\n1. write inline data\n2. lseek to offset 4096\n3. read 4096 bytes from offset 4096\n\t(read_inline_data read inline data page to non-first page,\n\tAnd previously VFS has add this page to page cache)\n4. ftruncate offset 8192\n5. read 4096 bytes from offset 4096\n\t(we meet this updated page with inline data in cache)\n\nSo we should leave this page with inited data and uptodate flag\nfor this case.\n\nChange log from v1:\n o fix a deadlock bug\n\nSigned-off-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: improve write performance under frequent fsync calls\n\nWhen considering a bunch of data writes with very frequent fsync calls, we\nare able to think the following performance regression.\n\nN: Node IO, D: Data IO, IO scheduler: cfq\n\nIssue    pending IOs\n\t D1 D2 D3 D4\n D1         D2 D3 D4 N1\n D2            D3 D4 N1 N2\n N1            D3 D4 N2 D1\n --\u003e N1 can be selected by cfq becase of the same priority of N and D.\n     Then D3 and D4 would be delayed, resuling in performance degradation.\n\nSo, when processing the fsync call, it\u0027d better give higher priority to data IOs\nthan node IOs by assigning WRITE and WRITE_SYNC respectively.\nThis patch improves the random wirte performance with frequent fsync calls by up\nto 10%.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add a sysfs entry to control max_victim_search\n\nPreviously during SSR and GC, the maximum number of retrials to find a victim\nsegment was hard-coded by MAX_VICTIM_SEARCH, 4096 by default.\n\nThis number makes an effect on IO locality, when SSR mode is activated, which\nresults in performance fluctuation on some low-end devices.\n\nIf max_victim_search \u003d 4, the victim will be searched like below.\n(\"D\" represents a dirty segment, and \"*\" indicates a selected victim segment.)\n\n D1 D2 D3 D4 D5 D6 D7 D8 D9\n[   *       ]\n      [   *    ]\n            [         * ]\n\t                [ ....]\n\nThis patch adds a sysfs entry to control the number dynamically through:\n  /sys/fs/f2fs/$dev/max_victim_search\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove the needless parameter of f2fs_wait_on_page_writeback\n\n\"boo sync\" parameter is never referenced in f2fs_wait_on_page_writeback.\nWe should remove this parameter.\n\nSigned-off-by: Yuan Zhong \u003cyuan.mark.zhong@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: move grabing orphan pages out of protection region\n\nMove grabing orphan block page out of protection region, and grab all\nthe orphan block pages ahead.\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nReviewed-by: Chao Yu \u003cchao2.yu@samsung.com\u003e\n[Jaegeuk Kim: remove unnecessary code pointed by Chao Yu]\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: move alloc new orphan node out of lock protection region\n\nMove alloc new orphan node out of lock protection region.\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: use spinlock rather than mutex for better speed\n\nWith the 2 previous changes, all the long time operations are moved out\nof the protection region, so here we can use spinlock rather than mutex\n(orphan_inode_mutex) for lower overhead.\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add delimiter to seperate name and value in debug phrase\n\nSupport for f2fs-tools/tools/f2stat to monitor\n/sys/kernel/debug/f2fs/status\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: avoid f2fs_balance_fs call during pageout\n\nThis patch should resolve the following bug.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: possible irq lock inversion dependency detected ]\n3.13.0-rc5.f2fs+ #6 Not tainted\n---------------------------------------------------------\nkswapd0/41 just changed the state of lock:\n (\u0026sbi-\u003egc_mutex){+.+.-.}, at: [\u003cffffffffa030503e\u003e] f2fs_balance_fs+0xae/0xd0 [f2fs]\nbut this lock took another, RECLAIM_FS-READ-unsafe lock in the past:\n (\u0026sbi-\u003ecp_rwsem){++++.?}\n\nand interrupts could create inverse lock ordering between them.\n\nother info that might help us debug this:\nChain exists of:\n  \u0026sbi-\u003egc_mutex --\u003e \u0026sbi-\u003ecp_mutex --\u003e \u0026sbi-\u003ecp_rwsem\n\n Possible interrupt unsafe locking scenario:\n\n       CPU0                    CPU1\n       ----                    ----\n  lock(\u0026sbi-\u003ecp_rwsem);\n                               local_irq_disable();\n                               lock(\u0026sbi-\u003egc_mutex);\n                               lock(\u0026sbi-\u003ecp_mutex);\n  \u003cInterrupt\u003e\n    lock(\u0026sbi-\u003egc_mutex);\n\n *** DEADLOCK ***\n\nThis bug is due to the f2fs_balance_fs call in f2fs_write_data_page.\nIf f2fs_write_data_page is triggered by wbc-\u003efor_reclaim via kswapd, it should\nnot call f2fs_balance_fs which tries to get a mutex grabbed by original syscall\nflow.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: missing REQ_META and REQ_PRIO when sync_meta_pages(META_FLUSH)\n\nDoing sync_meta_pages with META_FLUSH when checkpoint, we overide rw\nusing WRITE_FLUSH_FUA. At this time, we also should set\nREQ_META|REQ_PRIO.\n\nSigned-off-by: Changman Lee \u003ccm224.lee@samsung.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: clean checkpatch warnings\n\nFixed a variety of trivial checkpatch warnings.  The only delta should\nbe some minor formatting on log strings that were split / too long.\n\nSigned-off-by: Chris Fries \u003ccfries@motorola.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: call mark_inode_dirty to flush dirty pages\n\nIf a dentry page is updated, we should call mark_inode_dirty to add the inode\ninto the dirty list, so that its dentry pages are flushed to the disk.\nOtherwise, the inode can be evicted without flush.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: move a branch for code redability\n\nThis patch moves a function in f2fs_delete_entry for code readability.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: add help function META_MAPPING\n\nIntroduce help function META_MAPPING() to get the cache meta blocks\u0027\naddress space.\n\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: remove the orphan block page array\n\nAs the orphan_blocks may be max to 504, so it is not security\nand rigorous to store such a large array in the kernel stack\nas Dan Carpenter said.\nIn fact, grab_meta_page has locked the page in the page cache,\nand we can use find_get_page() to fetch the page safely in the\ndownstream, so we can remove the page array directly.\n\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: introduce NODE_MAPPING for code consistency\n\nThis patch adds NODE_MAPPING which is similar as META_MAPPING introduced by\nGu Zheng.\n\nCc: Gu Zheng \u003cguz.fnst@cn.fujitsu.com\u003e\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nf2fs: drop obsolete node page when it is truncated\n\nIf a node page is trucated, we\u0027d better drop the page in the node_inode\u0027s page\ncache for better memory footprint.\n\nSigned-off-by: Jaegeuk Kim \u003cjaegeuk.kim@samsung.com\u003e\n\nChange-Id: I1b7c3378b7f7adb13477376164e91ab080b50d8b\n"
    },
    {
      "commit": "8005ecc7ea4f6004f217a39425a241ac8a63633c",
      "tree": "11c815137aac0302817b8b4fd798cfc0ff0877db",
      "parents": [
        "0ada96714fba26853fec00f4d95577c577c6e5ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 13:54:51 2012 -0800"
      },
      "committer": {
        "name": "flintman",
        "email": "flintman@flintmancomputers.com",
        "time": "Sat Jan 24 11:05:52 2015 -0500"
      },
      "message": "f2fs: Pull in from upstream 3.13 kernel\n\nMerge tag \u0027for-3.8-merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull new F2FS filesystem from Jaegeuk Kim:\n \"Introduce a new file system, Flash-Friendly File System (F2FS), to\n  Linux 3.8.\n\n  Highlights:\n   - Add initial f2fs source codes\n   - Fix an endian conversion bug\n   - Fix build failures on random configs\n   - Fix the power-off-recovery routine\n   - Minor cleanup, coding style, and typos patches\"\n\nFrom the Kconfig help text:\n\n  F2FS is based on Log-structured File System (LFS), which supports\n  versatile \"flash-friendly\" features. The design has been focused on\n  addressing the fundamental issues in LFS, which are snowball effect\n  of wandering tree and high cleaning overhead.\n\n  Since flash-based storages show different characteristics according to\n  the internal geometry or flash memory management schemes aka FTL, F2FS\n  and tools support various parameters not only for configuring on-disk\n  layout, but also for selecting allocation and cleaning algorithms.\n\nand there\u0027s an article by Neil Brown about it on lwn.net:\n\n  http://lwn.net/Articles/518988/\n\n* tag \u0027for-3.8-merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (36 commits)\n  f2fs: fix tracking parent inode number\n  f2fs: cleanup the f2fs_bio_alloc routine\n  f2fs: introduce accessor to retrieve number of dentry slots\n  f2fs: remove redundant call to f2fs_put_page in delete entry\n  f2fs: make use of GFP_F2FS_ZERO for setting gfp_mask\n  f2fs: rewrite f2fs_bio_alloc to make it simpler\n  f2fs: fix a typo in f2fs documentation\n  f2fs: remove unused variable\n  f2fs: move error condition for mkdir at proper place\n  f2fs: remove unneeded initialization\n  f2fs: check read only condition before beginning write out\n  f2fs: remove unneeded memset from init_once\n  f2fs: show error in case of invalid mount arguments\n  f2fs: fix the compiler warning for uninitialized use of variable\n  f2fs: resolve build failures\n  f2fs: adjust kernel coding style\n  f2fs: fix endian conversion bugs reported by sparse\n  f2fs: remove unneeded version.h header file from f2fs.h\n  f2fs: update the f2fs document\n  f2fs: update Kconfig and Makefile\n  ...\n\nConflicts:\n\tinclude/uapi/linux/magic.h\n\nMerge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull f2fs bug fixes from Jaegeuk Kim:\n \"This patch-set includes two major bug fixes:\n   - incorrect IUsed provided by *df -i*, and\n   - lookup failure of parent inodes in corner cases.\n\n  [Other Bug Fixes]\n   - Fix error handling routines\n   - Trigger recovery process correctly\n   - Resolve build failures due to missing header files\n\n  [Etc]\n   - Add a MAINTAINERS entry for f2fs\n   - Fix and clean up variables, functions, and equations\n   - Avoid warnings during compilation\"\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs:\n  f2fs: unify string length declarations and usage\n  f2fs: clean up unused variables and return values\n  f2fs: clean up the start_bidx_of_node function\n  f2fs: remove unneeded variable from f2fs_sync_fs\n  f2fs: fix fsync_inode list addition logic and avoid invalid access to memory\n  f2fs: remove unneeded initialization of nr_dirty in dirty_seglist_info\n  f2fs: handle error from f2fs_iget_nowait\n  f2fs: fix equation of has_not_enough_free_secs()\n  f2fs: add MAINTAINERS entry\n  f2fs: return a default value for non-void function\n  f2fs: invalidate the node page if allocation is failed\n  f2fs: add missing #include \u003clinux/prefetch.h\u003e\n  f2fs: do f2fs_balance_fs in front of dir operations\n  f2fs: should recover orphan and fsync data\n  f2fs: fix handling errors got by f2fs_write_inode\n  f2fs: fix up f2fs_get_parent issue to retrieve correct parent inode number\n  f2fs: fix wrong calculation on f_files in statfs\n  f2fs: remove set_page_dirty for atomic f2fs_end_io_write\n\nMerge tag \u0027f2fs-for-3.8-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull f2fs fixes from Jaegeuk Kim:\n o Support swap file and link generic_file_remap_pages\n o Enhance the bio streaming flow and free section control\n o Major bug fix on recovery routine\n o Minor bug/warning fixes and code cleanups\n\n* tag \u0027f2fs-for-3.8-rc5\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (22 commits)\n  f2fs: use _safe() version of list_for_each\n  f2fs: add comments of start_bidx_of_node\n  f2fs: avoid issuing small bios due to several dirty node pages\n  f2fs: support swapfile\n  f2fs: add remap_pages as generic_file_remap_pages\n  f2fs: add __init to functions in init_f2fs_fs\n  f2fs: fix the debugfs entry creation path\n  f2fs: add global mutex_lock to protect f2fs_stat_list\n  f2fs: remove the blk_plug usage in f2fs_write_data_pages\n  f2fs: avoid redundant time update for parent directory in f2fs_delete_entry\n  f2fs: remove redundant call to set_blocksize in f2fs_fill_super\n  f2fs: move f2fs_balance_fs to punch_hole\n  f2fs: add f2fs_balance_fs in several interfaces\n  f2fs: revisit the f2fs_gc flow\n  f2fs: check return value during recovery\n  f2fs: avoid null dereference in f2fs_acl_from_disk\n  f2fs: initialize newly allocated dnode structure\n  f2fs: update f2fs partition info about SIT/NAT layout\n  f2fs: update f2fs document to reflect SIT/NAT layout correctly\n  f2fs: remove unneeded INIT_LIST_HEAD at few places\n  ...\n\nMerge tag \u0027f2fs-for-3.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull f2fs update from Jaegeuk Kim:\n \"[Major bug fixes]\n   o Store device file information correctly\n   o Fix -EIO handling with respect to power-off-recovery\n   o Allocate blocks with global locks\n   o Fix wrong calculation of the SSR cost\n\n  [Cleanups]\n   o Get rid of fake on-stack dentries\n\n  [Enhancement]\n   o Support (un)freeze_fs\n   o Enhance the f2fs_gc flow\n   o Support 32-bit binary execution on 64-bit kernel\"\n\n* tag \u0027f2fs-for-3.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (29 commits)\n  f2fs: avoid build warning\n  f2fs: add compat_ioctl to provide backward compatability\n  f2fs: fix calculation of max. gc cost in the SSR case\n  f2fs: clarify and enhance the f2fs_gc flow\n  f2fs: optimize the return condition for has_not_enough_free_secs\n  f2fs: make an accessor to get sections for particular block type\n  f2fs: mark gc_thread as NULL when thread creation is failed\n  f2fs: name gc task as per the block device\n  f2fs: remove unnecessary gc option check and balance_fs\n  f2fs: remove repeated F2FS_SET_SB_DIRT call\n  f2fs: when check superblock failed, try to check another superblock\n  f2fs: use F2FS_BLKSIZE to judge bloksize and page_cache_size\n  f2fs: add device name in debugfs\n  f2fs: stop repeated checking if cp is needed\n  f2fs: avoid balanc_fs during evict_inode\n  f2fs: remove the use of page_cache_release\n  f2fs: fix typo mistake for data_version description\n  f2fs: reorganize code for ra_node_page\n  f2fs: avoid redundant call to has_not_enough_free_secs in f2fs_gc\n  f2fs: add un/freeze_fs into super_operations\n  ...\n\nMerge tag \u0027f2fs-for-v3.10\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull f2fs updates from Jaegeuk Kim:\n \"This patch-set includes the following major enhancement patches.\n   - introduce a new gloabl lock scheme\n   - add tracepoints on several major functions\n   - fix the overall cleaning process focused on victim selection\n   - apply the block plugging to merge IOs as much as possible\n   - enhance management of free nids and its list\n   - enhance the readahead mode for node pages\n   - address several cretical deadlock conditions\n   - reduce lock_page calls\n\n  The other minor bug fixes and enhancements are as follows.\n   - calculation mistakes: overflow\n   - bio types: READ, READA, and READ_SYNC\n   - fix the recovery flow, data races, and null pointer errors\"\n\n* tag \u0027f2fs-for-v3.10\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (68 commits)\n  f2fs: cover free_nid management with spin_lock\n  f2fs: optimize scan_nat_page()\n  f2fs: code cleanup for scan_nat_page() and build_free_nids()\n  f2fs: bugfix for alloc_nid_failed()\n  f2fs: recover when journal contains deleted files\n  f2fs: continue to mount after failing recovery\n  f2fs: avoid deadlock during evict after f2fs_gc\n  f2fs: modify the number of issued pages to merge IOs\n  f2fs: remove useless #include \u003clinux/proc_fs.h\u003e as we\u0027re now using sysfs as debug entry.\n  f2fs: fix inconsistent using of NM_WOUT_THRESHOLD\n  f2fs: check truncation of mapping after lock_page\n  f2fs: enhance alloc_nid and build_free_nids flows\n  f2fs: add a tracepoint on f2fs_new_inode\n  f2fs: check nid \u003d\u003d 0 in add_free_nid\n  f2fs: add REQ_META about metadata requests for submit\n  f2fs: give a chance to merge IOs by IO scheduler\n  f2fs: avoid frequent background GC\n  f2fs: add tracepoints to debug checkpoint request\n  f2fs: add tracepoints for write page operations\n  f2fs: add tracepoints to debug the block allocation\n  ...\n\nMerge tag \u0027for-f2fs-3.11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull f2fs updates from Jaegeuk Kim:\n \"This patch-set includes the following major enhancement patches:\n   - remount_fs callback function\n   - restore parent inode number to enhance the fsync performance\n   - xattr security labels\n   - reduce the number of redundant lock/unlock data pages\n   - avoid frequent write_inode calls\n\n  The other minor bug fixes are as follows.\n   - endian conversion bugs\n   - various bugs in the roll-forward recovery routine\"\n\n* tag \u0027for-f2fs-3.11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (56 commits)\n  f2fs: fix to recover i_size from roll-forward\n  f2fs: remove the unused argument \"sbi\" of func destroy_fsync_dnodes()\n  f2fs: remove reusing any prefree segments\n  f2fs: code cleanup and simplify in func {find/add}_gc_inode\n  f2fs: optimize the init_dirty_segmap function\n  f2fs: fix an endian conversion bug detected by sparse\n  f2fs: fix crc endian conversion\n  f2fs: add remount_fs callback support\n  f2fs: recover wrong pino after checkpoint during fsync\n  f2fs: optimize do_write_data_page()\n  f2fs: make locate_dirty_segment() as static\n  f2fs: remove unnecessary parameter \"offset\" from __add_sum_entry()\n  f2fs: avoid freqeunt write_inode calls\n  f2fs: optimise the truncate_data_blocks_range() range\n  f2fs: use the F2FS specific flags in f2fs_ioctl()\n  f2fs: sync dir-\u003ei_size with its block allocation\n  f2fs: fix i_blocks translation on various types of files\n  f2fs: set sb-\u003es_fs_info before calling parse_options()\n  f2fs: support xattr security labels\n  f2fs: fix iget/iput of dir during recovery\n  ...\n\nMerge tag \u0027for-f2fs-3.12\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull f2fs updates from Jaegeuk Kim:\n \"This patch-set includes the following major enhancement patches:\n   - support inline xattrs\n   - add sysfs support to control GCs explicitly\n   - add proc entry to show the current segment usage information\n   - improve the GC/SSR performance\n\n  The other bug fixes are as follows:\n   - avoid the overflow on status calculation\n   - fix some error handling routines\n   - fix inconsistent xattr states after power-off-recovery\n   - fix incorrect xattr node offset definition\n   - fix deadlock condition in fsync\n   - fix the fdatasync routine for power-off-recovery\"\n\n* tag \u0027for-f2fs-3.12\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (40 commits)\n  f2fs: optimize gc for better performance\n  f2fs: merge more bios of node block writes\n  f2fs: avoid an overflow during utilization calculation\n  f2fs: trigger GC when there are prefree segments\n  f2fs: use strncasecmp() simplify the string comparison\n  f2fs: fix omitting to update inode page\n  f2fs: support the inline xattrs\n  f2fs: add the truncate_xattr_node function\n  f2fs: introduce __find_xattr for readability\n  f2fs: reserve the xattr space dynamically\n  f2fs: add flags for inline xattrs\n  f2fs: fix error return code in init_f2fs_fs()\n  f2fs: fix wrong BUG_ON condition\n  f2fs: fix memory leak when init f2fs filesystem fail\n  f2fs: fix a compound statement label error\n  f2fs: avoid writing inode redundantly when creating a file\n  f2fs: alloc_page() doesn\u0027t return an ERR_PTR\n  f2fs: should cover i_xattr_nid with its xattr node page lock\n  f2fs: check the free space first in new_node_page\n  f2fs: clean up the needless end \u0027return\u0027 of void function\n  ...\n\nMerge tag \u0027for-f2fs-3.13\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs\n\nPull f2fs updates from Jaegeuk Kim:\n \"This patch-set includes the following major enhancement patches.\n   - add a sysfs to control reclaiming free segments\n   - enhance the f2fs global lock procedures\n   - enhance the victim selection flow\n   - wait for selected node blocks during fsync\n   - add some tracepoints\n   - add a config to remove abundant BUG_ONs\n\n  The other bug fixes are as follows.\n   - fix deadlock on acl operations\n   - fix some bugs with respect to orphan inodes\n\n  And, there are a bunch of cleanups\"\n\n* tag \u0027for-f2fs-3.13\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (42 commits)\n  f2fs: issue more large discard command\n  f2fs: fix memory leak after kobject init failed in fill_super\n  f2fs: cleanup waiting routine for writeback pages in cp\n  f2fs: avoid to use a NULL point in destroy_segment_manager\n  f2fs: remove unnecessary TestClearPageError when wait pages writeback\n  f2fs: update f2fs document\n  f2fs: avoid to wait all the node blocks during fsync\n  f2fs: check all ones or zeros bitmap with bitops for better mount performance\n  f2fs: change the method of calculating the number summary blocks\n  f2fs: fix calculating incorrect free size when update xattr in __f2fs_setxattr\n  f2fs: add an option to avoid unnecessary BUG_ONs\n  f2fs: introduce CONFIG_F2FS_CHECK_FS for BUG_ON control\n  f2fs: fix a deadlock during init_acl procedure\n  f2fs: clean up acl flow for better readability\n  f2fs: remove unnecessary segment bitmap updates\n  f2fs: add tracepoint for vm_page_mkwrite\n  f2fs: add tracepoint for set_page_dirty\n  f2fs: remove redundant set_page_dirty from write_compacted_summaries\n  f2fs: add reclaiming control by sysfs\n  f2fs: introduce f2fs_balance_fs_bg for some background jobs\n  ...\n\nChange-Id: Ied5488471d49d64ce6abb4be19237c4e90829ff6\n"
    },
    {
      "commit": "c92e49eaca7fd2f9657eaa6e1548257249fbf234",
      "tree": "c52fed0b64f808d60aa12a68d8dac9b0aa95833a",
      "parents": [
        "321cbbca21da226b883575525fb831cf8dd22d47"
      ],
      "author": {
        "name": "Carter Cooper",
        "email": "ccooper@codeaurora.org",
        "time": "Wed Jun 26 15:19:30 2013 -0600"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:14:02 2014 -0800"
      },
      "message": "msm: kgsl: Add separate GPU shader memory mapping\n\nAdd separate kernel memory mapping for GPU shader memory.\nPreviously, both the register and the shader memory were mapped\nas one entity, with the mapping length being equal to combined\nsize of register memory and shader memory. Now, we separate the\nshader memory mapping to help in cases of GPU devices where the\nshader and register memory may not be adjacent. This helps to\ndump the shader memory in the postmortem snapshot. By having a\nseparate mapping for shader memory, the snapshot dump routine\nsimply reads in the shader memory range specified and dumps.\n\nChange-Id: I30e59dffe849fefcfbbaf0e5245cc1024ccedcb1\nSigned-off-by: Harsh Vardhan Dwivedi \u003chdwivedi@codeaurora.org\u003e\nSigned-off-by: Carter Cooper \u003cccooper@codeaurora.org\u003e\n\nmsm: Fix mem leak when using per-process pages\n\nWhen GPU is using per process page tables the code creates\na new page table (domain) for every process. There is also\nsome associated structures allocated to keep track of each\ndomain. However, when cleaning up the memory used for a page\ntable only the domain is freed and not the associated structures.\n\nAdd a function to allow a client to properly unregister a domain\nwhich will free all the memory associated with a domain.\nCall the unregister function from kgsl driver code.\n\nCRs-fixed: 480801\nChange-Id: I9704c12c66a95ce66cea63b619bbdbafa0f1eac8\nSigned-off-by: Olav Haugan \u003cohaugan@codeaurora.org\u003e\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n\nConflicts:\n\tarch/arm/mach-msm/iommu_domains.c\n\nmsm: kgsl: Remove nap_allowed variable and functionality\n\nAllow NAP on all targets.  The splitting of the clock enable\nand disable calls into enable/prepare and disable/unprepare\nallows us to safely make this change for all targets.\n\nChange-Id: I03d909b86aef33631a887d159cf0a807a6d0ae75\nSigned-off-by: Lucille Sylvester \u003clsylvest@codeaurora.org\u003e\nSigned-off-by: Jordan Crouse \u003cjcrouse@codeaurora.org\u003e\nSigned-off-by: Carter Cooper \u003cccooper@codeaurora.org\u003e\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\n"
    },
    {
      "commit": "8ad62c20c16409cf90fd7c6774f71ce81378d6a0",
      "tree": "01fef82fc29ba7a77e541cb0bfec5cbff88bc681",
      "parents": [
        "857f6d1788f02744eb18044c980e17cb6904ddb9"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 26 17:26:01 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:26 2014 -0800"
      },
      "message": "mm: add a field to store names for private anonymous memory\n\nUserspace processes often have multiple allocators that each do\nanonymous mmaps to get memory.  When examining memory usage of\nindividual processes or systems as a whole, it is useful to be\nable to break down the various heaps that were allocated by\neach layer and examine their size, RSS, and physical memory\nusage.\n\nThis patch adds a user pointer to the shared union in\nvm_area_struct that points to a null terminated string inside\nthe user process containing a name for the vma.  vmas that\npoint to the same address will be merged, but vmas that\npoint to equivalent strings at different addresses will\nnot be merged.\n\nUserspace can set the name for a region of memory by calling\nprctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, start, len, (unsigned long)name);\nSetting the name to NULL clears it.\n\nThe names of named anonymous vmas are shown in /proc/pid/maps\nas [anon:\u003cname\u003e] and in /proc/pid/smaps in a new \"Name\" field\nthat is only present for named vmas.  If the userspace pointer\nis no longer valid all or part of the name will be replaced\nwith \"\u003cfault\u003e\".\n\nThe idea to store a userspace pointer to reduce the complexity\nwithin mm (at the expense of the complexity of reading\n/proc/pid/mem) came from Dave Hansen.  This results in no\nruntime overhead in the mm subsystem other than comparing\nthe anon_name pointers when considering vma merging.  The pointer\nis stored in a union with fieds that are only used on file-backed\nmappings, so it does not increase memory usage.\n\nChange-Id: Ie2ffc0967d4ffe7ee4c70781313c7b00cf7e3092\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\n"
    },
    {
      "commit": "1af5d5d87804393894b25abf83a71d73c72666d4",
      "tree": "fbcda555cf470eb239f2b4901097d032881d2bb5",
      "parents": [
        "0df1808fb0102b1af626bc7399d2a74caf0174e5"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Fri Mar 08 15:11:03 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:23 2014 -0800"
      },
      "message": "ARM: mm: Remove SW emulation for ARM domain manager\n\n8x50 is no longer supported in the msm-3.4 kernel, so remove this\nfeature.\n\nChange-Id: I2156ef22cca82d3cce6a7d39e366b93cab32f811\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n"
    },
    {
      "commit": "96e7ce4605d084fe6fb120ac41d0b543951922ac",
      "tree": "6f94be50f145c4949c400fcae73deb489c624c54",
      "parents": [
        "7036109e59e992112a3cd04c7978e212e38193c8"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Mon Jul 30 09:11:33 2012 +0200"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:22 2014 -0800"
      },
      "message": "ARM: dma-mapping: remove custom consistent dma region\n\nThis patch changes dma-mapping subsystem to use generic vmalloc areas\nfor all consistent dma allocations. This increases the total size limit\nof the consistent allocations and removes platform hacks and a lot of\nduplicated code.\n\nAtomic allocations are served from special pool preallocated on boot,\nbecause vmalloc areas cannot be reliably created in atomic context.\n\nChange-Id: Ibb2230e80249598a81122083bf3fa2f050a0a71e\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nReviewed-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nReviewed-by: Minchan Kim \u003cminchan@kernel.org\u003e\nGit-commit: e9da6e9905e639b0f842a244bc770b48ad0523e9\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n[lauraa@codeaurora.org: Context fixups and tweaking of some prototypes]\nSigned-off-by: Laura Abbott \u003clauraa@codeaurora.org\u003e\n"
    },
    {
      "commit": "dcb32ee6fa05937ee15b27c1634e39d0d6e67f99",
      "tree": "6919fdc41c1d364819d5e8604a627d98611fad29",
      "parents": [
        "9c6bae09e913ec5d15e1ef0f0bc64c011f895d0e"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jul 13 22:16:45 2012 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:11 2014 -0800"
      },
      "message": "workqueue: reimplement WQ_HIGHPRI using a separate worker_pool\n\nWQ_HIGHPRI was implemented by queueing highpri work items at the head\nof the global worklist.  Other than queueing at the head, they weren\u0027t\nhandled differently; unfortunately, this could lead to execution\nlatency of a few seconds on heavily loaded systems.\n\nNow that workqueue code has been updated to deal with multiple\nworker_pools per global_cwq, this patch reimplements WQ_HIGHPRI using\na separate worker_pool.  NR_WORKER_POOLS is bumped to two and\ngcwq-\u003epools[0] is used for normal pri work items and -\u003epools[1] for\nhighpri.  Highpri workers get -20 nice level and has \u0027H\u0027 suffix in\ntheir names.  Note that this change increases the number of kworkers\nper cpu.\n\nPOOL_HIGHPRI_PENDING, pool_determine_ins_pos() and highpri chain\nwakeup code in process_one_work() are no longer used and removed.\n\nThis allows proper prioritization of highpri work items and removes\nhigh execution latency of highpri work items.\n\nv2: nr_running indexing bug in get_pool_nr_running() fixed.\n\nv3: Refreshed for the get_pool_nr_running() update in the previous\n    patch.\n\nChange-Id: Id843c0a425f51f84083786fbf413d999d35771b7\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Josh Hunt \u003cjoshhunt00@gmail.com\u003e\nLKML-Reference: \u003cCAKA\u003dqzaHqwZ8eqpLNFjxnO2fX-tgAOjmpvxgBFjv6dJeQaOW1w@mail.gmail.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nGit-commit: 3270476a6c0ce322354df8679652f060d66526dc\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\nSigned-off-by: Matt Wagantall \u003cmattw@codeaurora.org\u003e\n"
    },
    {
      "commit": "5f87d168b3950a2e58760d1f36e98601df0e2ee0",
      "tree": "996d4ebb39660b558125aeca22f9d86d26fa6e92",
      "parents": [
        "af355894848ce07a49712a394692ba737dd47c96"
      ],
      "author": {
        "name": "Saravana Kannan",
        "email": "skannan@codeaurora.org",
        "time": "Sat Jun 08 04:03:32 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jan 17 22:12:10 2014 -0800"
      },
      "message": "msm: cpufreq: Add support for CPU clocks and msm-cpufreq device\n\nAdd support for using clock APIs to do CPU/L2 frequency scaling. When clock\nAPIs are used to control CPU/L2 frequencies, the cpufreq driver must handle\nthe CPU -\u003e L2 -\u003e DDR bandwidth voting. Use a msm-cpufreq device to provide\nthe per SoC list of CPU frequencies and their L2/DDR bandwidth mapping\ninformation.\n\nIf CPU/L2 clocks are not available, fallback to using acpuclock APIs. We\neventually want to remove the use of non-standard acpuclock APIs.\n\nChange-Id: I2c4e2c3967d73e8cdbd9833f3cb36f3d75e27b4a\nSigned-off-by: Saravana Kannan \u003cskannan@codeaurora.org\u003e\n"
    },
    {
      "commit": "58634ac42e736eea0e8b93cec610174879d36d58",
      "tree": "4179bdb042aa497dd2fb3c7d0cddc88e244e5237",
      "parents": [
        "fda73056f62d84376a3d29926708b4a08155da31",
        "a995dd1c29426a074364170359a026f68e8426db"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Tue Jan 14 21:51:43 2014 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Tue Jan 14 21:51:43 2014 -0800"
      },
      "message": "Merge remote-tracking branch \u0027codeaurora/kk_2.7_rb1.21\u0027 into cm-11.0\n\nConflicts:\n\tdrivers/media/video/msm/msm_vfe32.h\n\tdrivers/media/video/msm/vfe/msm_vfe32.c\n\tnet/wireless/reg.c\n\nChange-Id: I073c609cfa1c461249bf728b28249bcaa1eaa211\n"
    },
    {
      "commit": "10cd199e3d54372fee67ffd4c53cc75e52f620b3",
      "tree": "19f41c8d0c6bb10a7d1c89b4f6723a6a8233f390",
      "parents": [
        "de0f9a5a9d7932086e623560d66655cc8507cfec",
        "09b3d7972025ff9e654b8cce3453b5d9f205cbf8"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sat Dec 21 14:54:19 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sat Dec 21 14:54:19 2013 -0800"
      },
      "message": "Merge remote-tracking branch \u0027codeaurora/kk_2.7_rb1.17\u0027 into cm-11.0\n\nConflicts:\n\tarch/arm/kernel/process.c\n\tarch/arm/mach-msm/hotplug.c\n\tarch/arm/mach-msm/pm-8x60.c\n\tarch/arm/mach-msm/timer.c\n\tarch/arm/mm/mmu.c\n\tdrivers/media/video/msm/server/msm_cam_server.c\n\tinclude/linux/kref.h\n\tmm/Kconfig\n\nChange-Id: I283b4728c42363a2d826512c0b1bec281c48e470\n"
    },
    {
      "commit": "de0f9a5a9d7932086e623560d66655cc8507cfec",
      "tree": "d9e4678d68da38d7670b79c8b5e8782445c5ad7e",
      "parents": [
        "e1a3c5a3706d580390c02c69cb14dcd679d31d91",
        "84dfcb758ba7cce52ef475ac96861a558e1a20ca"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sat Dec 21 14:22:41 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sat Dec 21 14:22:41 2013 -0800"
      },
      "message": "Merge tag \u0027v3.4.75\u0027 into cm-11.0\n\nThis is the 3.4.75 stable release\n\nConflicts:\n\tdrivers/md/dm-crypt.c\n\tdrivers/mmc/card/block.c\n\tdrivers/net/ethernet/smsc/smc91x.h\n\nChange-Id: I39f38ef5530c5fef07583beb9d76b983e71b9ff3\n"
    },
    {
      "commit": "627dc185e00f7e94e1ec243f04d204675175cd73",
      "tree": "5f161a65753f16caf7bcb0dc5a0e282e3b9e0940",
      "parents": [
        "b5043328b852715b21ab0e41a1edddfc7345f051"
      ],
      "author": {
        "name": "Hamad Kadmany",
        "email": "hkadmany@codeaurora.org",
        "time": "Tue Dec 17 21:34:36 2013 +0200"
      },
      "committer": {
        "name": "Gerrit - the friendly Code Review server",
        "email": "code-review@localhost",
        "time": "Tue Dec 17 23:26:46 2013 -0800"
      },
      "message": "csdio: Remove the driver\n\nThe driver is a legacy driver that is not used any longer\nand its implementation is neither correct nor compiles.\n\nChange-Id: I9862c0f93ccad6079a616f6997987d4e187a137c\nSigned-off-by: Hamad Kadmany \u003chkadmany@codeaurora.org\u003e\n"
    },
    {
      "commit": "3e80f4c2247595e2901f5ef262a524276cfb1d28",
      "tree": "3686073e5f3812083bbb1e9d5443709bbdfbbd15",
      "parents": [
        "cc3b20ff635a88c3236d585641f23b7153567f56"
      ],
      "author": {
        "name": "Seth Heasley",
        "email": "seth.heasley@intel.com",
        "time": "Wed Jan 30 15:25:32 2013 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Dec 11 22:34:11 2013 -0800"
      },
      "message": "i2c: i801: SMBus patch for Intel Avoton DeviceIDs\n\ncommit c2db409cbc8751ccc7e6d2cc2e41af0d12ea637f upstream.\n\nThis patch adds the PCU SMBus DeviceID for the Intel Avoton SOC.\n\nSigned-off-by: Seth Heasley \u003cseth.heasley@intel.com\u003e\nReviewed-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nCc: \"Ong, Boon Leong\" \u003cboon.leong.ong@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "aaa132de18629bcddbbd09586c92d44b2ef839e3",
      "tree": "d29b5892225d3a790172f641f8cc32c296f61b95",
      "parents": [
        "c5b6ec8601fd8fcb4cedcb36b970b5502e9cf335"
      ],
      "author": {
        "name": "Pratibhasagar V",
        "email": "pratibha@codeaurora.org",
        "time": "Wed Nov 06 12:16:28 2013 +0530"
      },
      "committer": {
        "name": "Pratibhasagar V",
        "email": "pratibha@codeaurora.org",
        "time": "Mon Dec 09 16:38:02 2013 +0530"
      },
      "message": "uio: msm_sharedmem: Add new device driver for sharedmemory access\n\nAdd new device driver to provide a standard interface for its\nclients (like RemoteFS and RFSA) to be able to memory map their\nrespective allotted shared memory address in the client\u0027s address space.\nThe shared memory (a transport buffer) address is unique for each\nindividual client and is made available to the driver via device tree.\n\nThis driver uses the existing UIO framework to facilitate the clients\nmmap requirements. Each individual client will be able to use a unique\nUIO device for this purpose.\n\nCRs-Fixed: 477427\nChange-Id: If07b88086b5f1b87845962818094644575629fcf\nSigned-off-by: Pratibhasagar V \u003cpratibha@codeaurora.org\u003e\nSigned-off-by: Venkat Gopalakrishnan \u003cvenkatg@codeaurora.org\u003e\n"
    },
    {
      "commit": "2a38ada0f1ab9f894eea4428731ebc811b51c3f3",
      "tree": "759c765808a23a3a35e4ba10d8306c847c0205b7",
      "parents": [
        "19218e895cefdd389c96af12c93c89e7276bbaad",
        "44d19f5a04ae4e433548ba2f25e4d2ccfcac765e"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Dec 08 12:50:38 2013 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Dec 08 12:50:38 2013 -0800"
      },
      "message": "Merge tag \u0027v3.4.72\u0027 into tmp\n\nThis is the 3.4.72 stable release\n\nConflicts:\n\tarch/arm/Kconfig\n\tarch/arm/include/asm/mutex.h\n\tarch/arm/kernel/perf_event.c\n\tarch/arm/kernel/traps.c\n\tarch/arm/mm/dma-mapping.c\n\tdrivers/base/power/main.c\n\tdrivers/bluetooth/ath3k.c\n\tdrivers/bluetooth/btusb.c\n\tdrivers/gpu/drm/radeon/radeon_mode.h\n\tdrivers/mmc/card/block.c\n\tdrivers/mmc/host/sdhci.c\n\tdrivers/usb/core/message.c\n\tdrivers/usb/host/xhci-plat.c\n\tdrivers/usb/host/xhci.h\n\tdrivers/virtio/virtio_ring.c\n\tfs/ubifs/dir.c\n\tinclude/linux/freezer.h\n\tinclude/linux/virtio.h\n\tinclude/media/v4l2-ctrls.h\n\tinclude/net/bluetooth/hci_core.h\n\tinclude/net/bluetooth/mgmt.h\n\tkernel/cgroup.c\n\tkernel/futex.c\n\tkernel/signal.c\n\tnet/bluetooth/hci_conn.c\n\tnet/bluetooth/hci_core.c\n\tnet/bluetooth/hci_event.c\n\tnet/bluetooth/l2cap_core.c\n\tnet/bluetooth/mgmt.c\n\tnet/bluetooth/rfcomm/sock.c\n\tnet/bluetooth/smp.c\n\nChange-Id: I4fb0d5de74ca76f933d95d98e1a9c2c859402f34\n"
    },
    {
      "commit": "22363fb4b996766c83d25f47f2de605a6720ccf0",
      "tree": "193bfb63664b150c614b055926dcd71461e74bad",
      "parents": [
        "80b41caaa1455afd259de89e3d430334f8b57156"
      ],
      "author": {
        "name": "Ryan Mallon",
        "email": "rmallon@gmail.com",
        "time": "Tue Nov 12 15:08:51 2013 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Dec 04 10:50:14 2013 -0800"
      },
      "message": "vsprintf: check real user/group id for %pK\n\ncommit 312b4e226951f707e120b95b118cbc14f3d162b2 upstream.\n\nSome setuid binaries will allow reading of files which have read\npermission by the real user id.  This is problematic with files which\nuse %pK because the file access permission is checked at open() time,\nbut the kptr_restrict setting is checked at read() time.  If a setuid\nbinary opens a %pK file as an unprivileged user, and then elevates\npermissions before reading the file, then kernel pointer values may be\nleaked.\n\nThis happens for example with the setuid pppd application on Ubuntu 12.04:\n\n  $ head -1 /proc/kallsyms\n  00000000 T startup_32\n\n  $ pppd file /proc/kallsyms\n  pppd: In file /proc/kallsyms: unrecognized option \u0027c1000000\u0027\n\nThis will only leak the pointer value from the first line, but other\nsetuid binaries may leak more information.\n\nFix this by adding a check that in addition to the current process having\nCAP_SYSLOG, that effective user and group ids are equal to the real ids.\nIf a setuid binary reads the contents of a file which uses %pK then the\npointer values will be printed as NULL if the real user is unprivileged.\n\nUpdate the sysctl documentation to reflect the changes, and also correct\nthe documentation to state the kptr_restrict\u003d0 is the default.\n\nThis is a only temporary solution to the issue.  The correct solution is\nto do the permission check at open() time on files, and to replace %pK\nwith a function which checks the open() time permission.  %pK uses in\nprintk should be removed since no sane permission check can be done, and\ninstead protected by using dmesg_restrict.\n\nSigned-off-by: Ryan Mallon \u003crmallon@gmail.com\u003e\nCc: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "254afc136f09969ef1011284a3050f7912833aed",
      "tree": "661dfc6eddef092753b98f380a007cb55c70e906",
      "parents": [
        "b9a4308e793bfd34c41dd553dedd7ca07ce45b87"
      ],
      "author": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Mon Apr 15 17:51:15 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:29 2013 -0700"
      },
      "message": "msm: cache_erp: Dump I/O regions on cache errors\n\nSupport dumping arbitrary I/O register regions in response\nto soft cache errors to facilitate identifying the cause of\nthe soft errors.\n\nChange-Id: I4ccb720faecb0c7c1227e37234b9310a3d34f215\nSigned-off-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\n"
    },
    {
      "commit": "9cc04dcc6b94ab67f18a37d4839f9320d730134b",
      "tree": "45e1cafbbba3d0c0e4081d8b113ae1cdfff1ddce",
      "parents": [
        "c6447d9e21302b418e5c22e92f5b4d273f3a73e6"
      ],
      "author": {
        "name": "Praveen Chidambaram",
        "email": "pchidamb@codeaurora.org",
        "time": "Wed Oct 03 17:06:02 2012 -0600"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:28 2013 -0700"
      },
      "message": "msm: spm-v2: Add API to enable PFM mode on PMIC\n\nWhen the Kraits are drawing the least power, the Krait buck can be put\nin low power mode (PFM) as well.\nThe msm_spm_enable_fts_lpm() API will allow the PFM mode to be enabled\nthrough the SPM PMIC interface.\n\nChange-Id: Ia5fd16e27e2c90683f6ae93b1e909fa79722a091\nSigned-off-by: Praveen Chidambaram \u003cpchidamb@codeaurora.org\u003e\n"
    },
    {
      "commit": "1b6efa25c6033b600c43d62de86edc19a164a386",
      "tree": "98cfc183de3c41607ccade7a474353f087220a7f",
      "parents": [
        "ccb59a9a39f18a5fa3fbe3bef5c7383de899cdbf"
      ],
      "author": {
        "name": "Mahesh Sivasubramanian",
        "email": "msivasub@codeaurora.org",
        "time": "Mon Apr 08 09:55:48 2013 -0600"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:23 2013 -0700"
      },
      "message": "msm: pm-8x60: Use broadcast clockevent for idle wakeup\n\nThe architected timers loses its state in certain low power modes.\nIn these modes, migrate the timers to use the broadcast clockevents for\nscheduled wakeups.\n\nChange-Id: I414ea5a3dab69f5257da95a6847e3188f5efc6aa\nSigned-off-by: Mahesh Sivasubramanian \u003cmsivasub@codeaurora.org\u003e\n"
    },
    {
      "commit": "36159ee22a8bd39254b62ba8ad5767b16c1df4ce",
      "tree": "d4b4cb7de8f538a640caaf5eaa8c46a973d0d76c",
      "parents": [
        "d806370996ed5de07270faf5f3105f9e443e9745"
      ],
      "author": {
        "name": "Archana Sathyakumar",
        "email": "asathyak@codeaurora.org",
        "time": "Fri Feb 01 17:38:23 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:22 2013 -0700"
      },
      "message": "msm: pm-8x60: Remove enum from devicetree\n\nReplace enums with strings in Device tree for pc-mode\n\nChange-Id: If63212e07e42f7b0b9d4dd046ae52f0349901154\nSigned-off-by: Archana Sathyakumar \u003casathyak@codeaurora.org\u003e\n"
    },
    {
      "commit": "da4628d044442db1c971853de96c4cefc7017bd0",
      "tree": "9ee47d3f14892905b20d5ccc3e410011f1ab3986",
      "parents": [
        "05d393a23cd76457ce60d540a2ec1495fc126a59"
      ],
      "author": {
        "name": "Praveen Chidambaram",
        "email": "pchidamb@codeaurora.org",
        "time": "Fri Jan 18 16:21:16 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:21 2013 -0700"
      },
      "message": "msm: pm-8x60: Support to do PC at the running core frequency\n\nNew version of SAW2 (\u003ev2.1), support turning off/on HFPLL only if the\nPLL was active when entering power collapse. This eliminates the need\nto switch to a lower frequency running off global PLL, and then turn\noff the HFPLL. Power collapse with RPM notification should be a tad\nbit faster.\n\nChange-Id: I65c607454bd6c9a6b6da94e3946760e581ac761b\nSigned-off-by: Praveen Chidambaram \u003cpchidamb@codeaurora.org\u003e\nSigned-off-by: Mahesh Sivasubramanian \u003cmsivasub@codeaurora.org\u003e\n"
    },
    {
      "commit": "05d393a23cd76457ce60d540a2ec1495fc126a59",
      "tree": "a2a66371c93afcc8437e33d56e14e1bd7eb0021c",
      "parents": [
        "c159959a08567af6a3a8eefa0db2e4a0af4498ad"
      ],
      "author": {
        "name": "Praveen Chidambaram",
        "email": "pchidamb@codeaurora.org",
        "time": "Fri Feb 01 11:44:53 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:21 2013 -0700"
      },
      "message": "msm: pm-8x60: Overhaul the low power management driver\n\nOverhaul the pm-8x60 driver code to remove the target specific runtime\nstate machine variables out of the driver code into its own board\nspecific files.\n\nIMEM debug PC counters specified by debug-pc-cntr used to have its own\nbinding. Now that pm-8x60 has other bindings, use pm-8x60 device tree\nbindings to handle debug PC counters.\n\nChange-Id: I4f16008098c9525d3543ba23a5f58ddc3a8f942d\nSigned-off-by: Girish Mahadevan \u003cgirishm@codeaurora.org\u003e\nSigned-off-by: Praveen Chidambaram \u003cpchidamb@codeaurora.org\u003e\nSigned-off-by: Mahesh Sivasubramanian \u003cmsivasub@codeaurora.org\u003e\n"
    },
    {
      "commit": "c72447b00dac253e61b1ce27600c70c2b316a4f6",
      "tree": "d10ce273686e44548a2a336d4c69c437c1c2505e",
      "parents": [
        "353e402eddb87456684b075d4c4825c93116abdb"
      ],
      "author": {
        "name": "Girish Mahadevan",
        "email": "girishm@codeaurora.org",
        "time": "Fri Oct 26 11:03:07 2012 -0600"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:20 2013 -0700"
      },
      "message": "msm: pm-8x60: Modify L2 management mechanism in power collapse\n\nModify the L2 cache flush mechanism during Power collapse. For targets\nwith external L2 and TZ, L2 can only be flushed and not disabled as this\na secure operation. For targets with external L2 and no TZ kernel can flush\nand disable the L2 cache. The decision on which cache flush mechanism to\nuse is determined by the power collapse type being exercised on that\nplatform.\nAlso modify the usage of qtimer based on target specific configuration\ninstead of using a socinfo based API to determine CPU type.\n\nSigned-off-by: Girish Mahadevan \u003cgirishm@codeaurora.org\u003e\nChange-Id: Ib937c15782760cb81e19ac7093cb1c4fffd36afd\n"
    },
    {
      "commit": "4fd1c81204b7bdf951506d2bf4ce600f7b25ce09",
      "tree": "c370881402d43558e341bf602385bc31cc023c5c",
      "parents": [
        "9c2060cc1217501f801e99d252e31bee590d62a2"
      ],
      "author": {
        "name": "Priyanka Mathur",
        "email": "pmathur@codeaurora.org",
        "time": "Mon Nov 05 13:45:45 2012 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Oct 28 15:12:19 2013 -0700"
      },
      "message": "msm: tracing: Add ftrace support for LPM driver\n\nAdd trace event support to capture various parameters\nof low power modes like power collapse, standalone power\ncollapse, retention and wfi during its entry and exit.\n\nChange-Id: I0f8b918702ae47b354aa193aa7ef20b48110fb0f\nSigned-off-by: Priyanka Mathur \u003cpmathur@codeaurora.org\u003e\n"
    },
    {
      "commit": "f50301548260580f6d7c074a8d0aa2f15862b9d6",
      "tree": "cfd6c71d969d1fb671995986a47c4096fc47a364",
      "parents": [
        "1c9ce1e6c11777c95b974883be2f0313873d6f14",
        "a0b5b9b636fffbf6cc3af3460c13cb1b0fc1835e"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Jul 28 02:55:29 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Sun Jul 28 02:55:29 2013 -0700"
      },
      "message": "Merge remote-tracking branch \u0027codeaurora/jb_2.6\u0027 into cm-10.2\n\nConflicts:\n\tdrivers/gpu/msm/adreno.c\n\tdrivers/gpu/msm/adreno.h\n\tdrivers/gpu/msm/adreno_a3xx.c\n\tdrivers/gpu/msm/kgsl.c\n\tdrivers/input/touchscreen/synaptics_fw_update.c\n\tdrivers/input/touchscreen/synaptics_i2c_rmi4.c\n\tdrivers/media/video/msm/gemini/msm_gemini_hw.c\n\tdrivers/media/video/msm/gemini/msm_gemini_hw.h\n\tdrivers/media/video/msm/gemini/msm_gemini_sync.c\n\tdrivers/media/video/msm/jpeg_10/msm_jpeg_hw.c\n\tdrivers/media/video/msm/jpeg_10/msm_jpeg_hw.h\n\tdrivers/media/video/msm/jpeg_10/msm_jpeg_sync.c\n\tdrivers/media/video/msm/mercury/msm_mercury_hw.c\n\tdrivers/media/video/msm/mercury/msm_mercury_hw.h\n\tdrivers/media/video/msm/mercury/msm_mercury_sync.c\n\tdrivers/media/video/msm/msm.c\n\tdrivers/media/video/msm/msm.h\n\tdrivers/media/video/msm/msm_mctl.c\n\tdrivers/media/video/msm/msm_mctl_buf.c\n\tdrivers/media/video/msm/msm_vfe32.h\n\tdrivers/media/video/msm/msm_vpe.c\n\tdrivers/media/video/msm/sensors/msm_sensor.c\n\tdrivers/media/video/msm/sensors/ov8825_v4l2.c\n\tdrivers/media/video/msm/sensors/ov9724_v4l2.c\n\tdrivers/media/video/msm/server/msm_cam_server.c\n\tdrivers/media/video/msm/vfe/msm_vfe32.c\n\tdrivers/media/video/msm/vfe/msm_vfe_stats_buf.c\n\tdrivers/tty/serial/msm_serial_hs.c\n\tdrivers/video/msm/hdmi_msm.c\n\tdrivers/video/msm/vidc/common/enc/venc.c\n\tinclude/linux/msm_vidc_enc.h\n\tinclude/linux/nl80211.h\n\tinclude/media/msm/vcd_property.h\n\tinclude/media/msm_camera.h\n\nChange-Id: I153f2e550f038e419bf43fd05892193853ae078e\n"
    },
    {
      "commit": "1c9ce1e6c11777c95b974883be2f0313873d6f14",
      "tree": "68b149cb9f9e7988fc0955239208d9ab104d7bb6",
      "parents": [
        "849520777e464fa051188d1118d43f21babb9dbe",
        "00709f7f01c3a10252f030f0bdacecbb349d7be4"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jul 22 22:10:20 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Mon Jul 22 22:10:20 2013 -0700"
      },
      "message": "Merge tag \u0027v3.4.11\u0027 into cm-10.1\n\nThis is the 3.4.11 stable release\n\nConflicts:\n\tarch/arm/vfp/vfpmodule.c\n\tnet/bluetooth/hci_event.c\n\tnet/bluetooth/l2cap_core.c\n\nChange-Id: I164bf611358e14afd3ff48e55a99c0d7c7afc45f\n"
    },
    {
      "commit": "8b2414d4e80786254c84d7ae7826750b38e4b150",
      "tree": "88c0c904c6497464d2ffdb227a05d952c54a95c9",
      "parents": [
        "47264b29620c1bd0aea291ac1bb93e3e956b41a6"
      ],
      "author": {
        "name": "Harout Hedeshian",
        "email": "harouth@codeaurora.org",
        "time": "Fri Dec 21 12:38:38 2012 -0800"
      },
      "committer": {
        "name": "Harout Hedeshian",
        "email": "harouth@codeaurora.org",
        "time": "Mon Jun 24 10:08:26 2013 -0600"
      },
      "message": "net/ipv6/addrconf: IPv6 tethering enhancement\n\nAdded new procfs flag to toggle the automatic addition of prefix\nroutes on a per device basis. The new flag is accept_ra_prefix_route.\nDefaults to 1 as to not break existing behavior.\n\nChange-Id: If25493890c7531c27f5b2c4855afebbbbf5d072a\nCRs-Fixed: 504095\nSigned-off-by: Harout Hedeshian \u003charouth@codeaurora.org\u003e\n"
    },
    {
      "commit": "dde448d95d8698ee4c8373bb48fe08a22f41052f",
      "tree": "7fe87fa93bfa5b81e6f87b147e32512d2e8198e3",
      "parents": [
        "ac4f6190fae02a3dc30133f90488b996f726bf7a",
        "f95b978981a7d154ba40d14c18e8ed5c694e6124"
      ],
      "author": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Thu Jun 20 11:32:42 2013 -0700"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Thu Jun 20 11:32:42 2013 -0700"
      },
      "message": "Merge tag \u0027v3.4.10\u0027 into cm-10.1\n\nThis is the 3.4.10 stable release\n\nConflicts:\n\tarch/arm/mm/tlb-v7.S\n\tarch/arm/vfp/entry.S\n\tdrivers/base/power/main.c\n\tdrivers/mmc/host/sdhci.c\n\tdrivers/net/tun.c\n\tdrivers/usb/core/hub.c\n\tdrivers/usb/host/xhci.h\n\tinclude/linux/sched.h\n\tkernel/power/suspend.c\n\nChange-Id: Ia2477ec93ceb64b13dd1a2d8aa646cb233387d14\n"
    },
    {
      "commit": "f4a09d0c6da781d9045604488a45b4bffa490719",
      "tree": "3d282a4e8fc207b587513a6a44529bbc768af337",
      "parents": [
        "d313183ff6d6e405ebee6c10e8d472ad88a3da13"
      ],
      "author": {
        "name": "Tatyana Brokhman",
        "email": "tlinder@codeaurora.org",
        "time": "Thu Sep 20 10:46:10 2012 +0300"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jun 07 13:40:42 2013 -0700"
      },
      "message": "block: Adding ROW scheduling algorithm\n\nThis patch adds the implementation of a new scheduling algorithm - ROW.\nThe policy of this algorithm is to prioritize READ requests over WRITE\nas much as possible without starving the WRITE requests.\n\nChange-Id: I4ed52ea21d43b0e7c0769b2599779a3d3869c519\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: ROW: Correct minimum values of ROW tunable parameters\n\nThe ROW scheduling algorithm exposes several tunable parameters.\nThis patch updates the minimum allowed values for those parameters.\n\nChange-Id: I5ec19d54b694e2e83ad5376bd99cc91f084967f5\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: ROW: Fix forced dispatch\n\nThis patch fixes forced dispatch in the ROW scheduling algorithm.\nWhen the dispatch function is called with the forced flag on, we\ncan\u0027t delay the dispatch of the requests that are in scheduler queues.\nThus, when dispatch is called with forced turned on, we need to cancel\nidling, or not to idle at all.\n\nChange-Id: I3aa0da33ad7b59c0731c696f1392b48525b52ddc\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: Add support for reinsert a dispatched req\n\nAdd support for reinserting a dispatched request back to the\nscheduler\u0027s internal data structures.\nThis capability is used by the device driver when it chooses to\ninterrupt the current request transmission and execute another (more\nurgent) pending request. For example: interrupting long write in order\nto handle pending read. The device driver re-inserts the\nremaining write request back to the scheduler, to be rescheduled\nfor transmission later on.\n\nAdd API for verifying whether the current scheduler\nsupports reinserting requests mechanism. If reinsert mechanism isn\u0027t\nsupported by the scheduler, this code path will never be activated.\n\nChange-Id: I5c982a66b651ebf544aae60063ac8a340d79e67f\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: Add API for urgent request handling\n\nThis patch add support in block \u0026 elevator layers for handling\nurgent requests. The decision if a request is urgent or not is taken\nby the scheduler. Urgent request notification is passed to the underlying\nblock device driver (eMMC for example). Block device driver may decide to\ninterrupt the currently running low priority request to serve the new\nurgent request. By doing so READ latency is greatly reduced in read\u0026write\ncollision scenarios.\n\nNote that if the current scheduler doesn\u0027t implement the urgent request\nmechanism, this code path is never activated.\n\nChange-Id: I8aa74b9b45c0d3a2221bd4e82ea76eb4103e7cfa\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nrow: Adding support for reinsert already dispatched req\n\nAdd support for reinserting already dispatched request back to the\nschedulers internal data structures.\nThe request will be reinserted back to the queue (head) it was\ndispatched from as if it was never dispatched.\n\nChange-Id: I70954df300774409c25b5821465fb3aa33d8feb5\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock:row: fix idling mechanism in ROW\n\nThis patch addresses the following issues found in the ROW idling\nmechanism:\n1. Fix the delay passed to queue_delayed_work (pass actual delay\n   and not the time when to start the work)\n2. Change the idle time and the idling-trigger frequency to be\n   HZ dependent (instead of using msec_to_jiffies())\n3. Destroy idle_workqueue() in queue_exit\n\nChange-Id: If86513ad6b4be44fb7a860f29bd2127197d8d5bf\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\ncfq-iosched: Fix null pointer dereference\n\nNULL pointer dereference can happen in cfq_choose_cfqg()\nwhen there are no cfq groups to select other than the\ncurrent serving group. Prevent this by adding a NULL\ncheck before dereferencing.\n\nUnable to handle kernel NULL pointer dereference at virtual address\n[\u003cc02502cc\u003e] (cfq_dispatch_requests+0x368/0x8c0) from\n[\u003cc0243f30\u003e] (blk_peek_request+0x220/0x25c)\n[\u003cc0243f30\u003e] (blk_peek_request+0x220/0x25c) from\n[\u003cc0243f74\u003e] (blk_fetch_request+0x8/0x1c)\n[\u003cc0243f74\u003e] (blk_fetch_request+0x8/0x1c) from\n[\u003cc041cedc\u003e] (mmc_queue_thread+0x58/0x120)\n[\u003cc041cedc\u003e] (mmc_queue_thread+0x58/0x120) from\n[\u003cc00ad310\u003e] (kthread+0x84/0x90)\n[\u003cc00ad310\u003e] (kthread+0x84/0x90) from\n[\u003cc000eeac\u003e] (kernel_thread_exit+0x0/0x8)\n\nCRs-Fixed: 416466\nChange-Id: I1fab93a4334b53e1d7c5dcc8f93cff174bae0d5e\nSigned-off-by: Sujit Reddy Thumma \u003csthumma@codeaurora.org\u003e\n\nrow: Add support for urgent request handling\n\nThis patch adds support for handling urgent requests.\nROW queue can be marked as \"urgent\" so if it was un-served in last\ndispatch cycle and a request was added to it - it will trigger\nissuing an urgent-request-notification to the block device driver.\nThe block device driver may choose at stop the transmission of current\nongoing request to handle the urgent one. Foe example: long WRITE may\nbe stopped to handle an urgent READ. This decreases READ latency.\n\nChange-Id: I84954c13f5e3b1b5caeadc9fe1f9aa21208cb35e\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: Add some debug information on ROW queues\n\n1. Add a counter for number of requests on queue.\n2. Add function to print queues status (number requests\n   currently on queue and number of already dispatched requests\n   in current dispatch cycle).\n\nChange-Id: I1e98b9ca33853e6e6a8ddc53240f6cd6981e6024\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: Insert dispatch_quantum into struct row_queue\n\nThere is really no point in keeping the dispatch quantum\nof a queue outside of it. By inserting it to the row_queue\nstructure we spare extra level in accessing it.\n\nChange-Id: Ic77571818b643e71f9aafbb2ca93d0a92158b199\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: fix sysfs functions - idle_time conversion\n\nidle_time was updated to be stored in msec instead of jiffies.\nSo there is no need to convert the value when reading from user or\ndisplaying the value to him.\n\nChange-Id: I58e074b204e90a90536d32199ac668112966e9cf\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: Aggregate row_queue parameters to one structure\n\nEach ROW queues has several parameters which default values are defined\nin separate arrays. This patch aggregates all default values into one\narray.\nThe values in question are:\n - is idling enabled for the queue\n - queue quantum\n - can the queue notify on urgent request\n\nChange-Id: I3821b0a042542295069b340406a16b1000873ec6\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: Dispatch requests according to their io-priority\n\nThis patch implements \"application-hints\" which is a way the issuing\napplication can notify the scheduler on the priority of its request.\nThis is done by setting the io-priority of the request.\nThis patch reuses an already existing mechanism of io-priorities developed\nfor CFQ. Please refer to kernel/Documentation/block/ioprio.txt for\nusage example and explanations.\n\nChange-Id: I228ec8e52161b424242bb7bb133418dc8b73925a\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: Idling mechanism re-factoring\n\nAt the moment idling in ROW is implemented by delayed work that uses\njiffies granularity which is not very accurate. This patch replaces\ncurrent idling mechanism implementation with hrtime API, which gives\nnanosecond resolution (instead of jiffies).\n\nChange-Id: I86c7b1776d035e1d81571894b300228c8b8f2d92\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: Don\u0027t notify URGENT if there are un-completed urgent req\n\nWhen ROW scheduler reports to the block layer that there is an urgent\nrequest pending, the device driver may decide to stop the transmission\nof the current request in order to handle the urgent one. If the current\ntransmitted request is an urgent request - we don\u0027t want it to be\nstopped.\nDue to the above ROW scheduler won\u0027t notify of an urgent request if\nthere are urgent requests in flight.\n\nChange-Id: I2fa186d911b908ec7611682b378b9cdc48637ac7\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n\nblock: row: Update initial values of ROW data structures\n\nThis patch sets the initial values of internal ROW\nparameters.\n\nChange-Id: I38132062a7fcbe2e58b9cc757e55caac64d013dc\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n[smuckle@codeaurora.org: ported from msm-3.7]\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n\nblock: add REQ_URGENT to request flags\n\nThis patch adds a new flag to be used in cmd_flags field of struct request\nfor marking request as urgent.\nUrgent request is the one that should be given priority currently handled\n(regular) request by the device driver. The decision of a request urgency\nis taken by the scheduler.\n\nChange-Id: Ic20470987ef23410f1d0324f96f00578f7df8717\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n"
    },
    {
      "commit": "cce741d113e38b77c296243a6f3c3e9457d30020",
      "tree": "bdff6afb30d85a4026ead61a5c6e3eb833f21712",
      "parents": [
        "a4371946e72ce565e4198e4976d2e2a40e8bcc7f"
      ],
      "author": {
        "name": "Minsung Kim",
        "email": "ms925.kim@samsung.com",
        "time": "Mon Feb 25 23:48:04 2013 +0900"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jun 07 13:40:41 2013 -0700"
      },
      "message": "cpufreq: interactive: allow arbitrary speed / delay mappings\n\nAccept a string of delays and speeds at which to apply the delay before\nraising each step above hispeed. For example, \"80000 1300000:200000\n1500000:40000\" means that the delay at or above 1GHz, until 1.3GHz is 80 msecs,\nthe delay until 1.5GHz is 200 msecs and the delay at or above 1.5GHz is 40\nmsecs when hispeed_freq is 1GHz.\n\n[toddpoynor@google.com: add documentation]\nChange-Id: Ifeebede8b1acbdd0a53e5c6916bccbf764dc854f\nSigned-off-by: Minsung Kim \u003cms925.kim@samsung.com\u003e\n"
    },
    {
      "commit": "ed02868301e46cd63cfbc7e37612fa63b1cf5fb5",
      "tree": "9545923257ba1b87579863331efbaaf26ccd1e64",
      "parents": [
        "2ca5647e55f7abee5103bea689974b8e25b4cf33"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Fri Dec 21 15:13:01 2012 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jun 07 13:40:39 2013 -0700"
      },
      "message": "cpufreq: interactive: default go_hispeed_load 99%, doc updates\n\nUpdate default go_hispeed_load from 85% to 99%.  Recent changes to the\ngovernor now use a default target_load of 90%.  go_hispeed_load should\nnot be lower than the target load for hispeed_freq, which could lead\nto oscillating speed decisions.  Other recent changes reduce the need\nto dampen speed jumps on load spikes, while input event boosts from\nuserspace are the preferred method for anticipating load spikes with\nUI impacts.\n\nGeneral update to the documentation to reflect recent changes.\n\nChange-Id: I1b92f3091f42c04b10503cd1169a943b5dfd6faf\nSigned-off-by: Todd Poynor \u003ctoddpoynor@google.com\u003e\n"
    },
    {
      "commit": "21df1ca640f2e069b6c7eb63ba09a83718c2d2d7",
      "tree": "0909a9d23efc4f9eb3449a2323aa8142259bf58e",
      "parents": [
        "67f07528e06a34280e5fba34b7e27506a874495e"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Wed Nov 14 11:41:21 2012 -0800"
      },
      "committer": {
        "name": "Ethan Chen",
        "email": "intervigil@gmail.com",
        "time": "Fri Jun 07 13:40:38 2013 -0700"
      },
      "message": "cpufreq: interactive: allow arbitrary speed / target load mappings\n\nAccept a string of target loads and speeds at which to apply the\ntarget loads, per the documentation update in this patch.  For example,\n\"85 1000000:90 1700000:99\" targets CPU load 85% below speed 1GHz,  90%\nat or above 1GHz, until 1.7GHz and above, at which load 99% is targeted.\n\nAttempt to avoid oscillations by evaluating the current speed\nweighted by current load against each new choice of speed, choosing a\nhigher speed if the current load requires a higher speed.\n\nChange-Id: Ie3300206047c84eca5a26b0b63ea512e5207550e\nSigned-off-by: Todd Poynor \u003ctoddpoynor@google.com\u003e\n"
    },
    {
      "commit": "f4f46f0da175280fd3fc95647a74b5f42fcc015f",
      "tree": "7de5d4227a2f021246fc67773ec830c7bb4d7cc7",
      "parents": [
        "ed892ca45d68642e0f8f8ebd257933b22940ae7d",
        "70a5c036a8d57c93282500f1951526fea7558400"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Thu May 09 11:19:30 2013 -0700"
      },
      "committer": {
        "name": "Gerrit - the friendly Code Review server",
        "email": "code-review@localhost",
        "time": "Thu May 09 11:19:29 2013 -0700"
      },
      "message": "Merge \"mmc: core: Add sysfs entries for dynamic control of clock scaling\""
    },
    {
      "commit": "528f75c5aefcfece4355339e68e506875fa39306",
      "tree": "9d39d854e2d64bb2c7a8f7bdbbf77bf4ce180378",
      "parents": [
        "846c9062cdf71df42ba07176f1eb66645494792d"
      ],
      "author": {
        "name": "Eric Holmberg",
        "email": "eholmber@codeaurora.org",
        "time": "Tue Jan 29 14:43:41 2013 -0700"
      },
      "committer": {
        "name": "Gerrit - the friendly Code Review server",
        "email": "code-review@localhost",
        "time": "Fri May 03 09:12:42 2013 -0700"
      },
      "message": "tty: n_smux: Add SMUX documentation\n\nAdd SMUX documentation that was missed when the initial\ndriver was added.\n\nChange-Id: I5b23e451ff48d1eac05b22de3e5f0e017a6f7b0c\nSigned-off-by: Eric Holmberg \u003ceholmber@codeaurora.org\u003e\n"
    },
    {
      "commit": "2b1f1549c3b908ff511ceafa2459da6742e30b4a",
      "tree": "dfb69b30977d60c5bfddfa2e63f3514605d036bd",
      "parents": [
        "50bff4915f518dff89f49abd0a58437907d95910"
      ],
      "author": {
        "name": "Amy Maloche",
        "email": "amaloche@codeaurora.org",
        "time": "Tue Mar 26 18:06:05 2013 -0700"
      },
      "committer": {
        "name": "Shantanu Jain",
        "email": "shjain@codeaurora.org",
        "time": "Mon Apr 29 17:38:28 2013 +0530"
      },
      "message": "input: synaptics_fw_update: Remove hardcoded firmware image name\n\nFirmware name should be passed in based on target, not hardcoded.\nRemove hardcoding and add appropriate error checking for this.\n\nChange-Id: Ia95bf2abf8a86adc649d64d757f22d84c8e0053f\nSigned-off-by: Amy Maloche \u003camaloche@codeaurora.org\u003e\nSigned-off-by: Shantanu Jain \u003cshjain@codeaurora.org\u003e\n"
    },
    {
      "commit": "70a5c036a8d57c93282500f1951526fea7558400",
      "tree": "b1570054143280e7d770da6c3fd124bc67ad7f95",
      "parents": [
        "884fa523ece82b5b3ada80a4209c381c019e9051"
      ],
      "author": {
        "name": "Sujit Reddy Thumma",
        "email": "sthumma@codeaurora.org",
        "time": "Wed Nov 07 21:23:14 2012 +0530"
      },
      "committer": {
        "name": "Sujit Reddy Thumma",
        "email": "sthumma@codeaurora.org",
        "time": "Mon Apr 29 10:24:57 2013 +0530"
      },
      "message": "mmc: core: Add sysfs entries for dynamic control of clock scaling\n\nAdd sysfs attributes to allow dynamic control of clock scaling\nparameters. These attributes are used to enable/disable clock\nscaling at runtime and change the up_threshold, down_threshold,\nand polling_interval values. Complete documentation for these\nsysfs entries are provided at \"Documentation/mmc/mmc-dev-attrs.txt\".\n\nChange-Id: I4753c75c3b3eeea91e93bceba7af2535b793612e\nSigned-off-by: Sujit Reddy Thumma \u003csthumma@codeaurora.org\u003e\n"
    },
    {
      "commit": "e3406bc3ccc0d82eb10657eb06b32dc1f931c203",
      "tree": "f14d937c1a89086d797a8c0b1f9d86375afcd208",
      "parents": [
        "4bf6c0ca052661f4d389d73f47d8c358b5388c32"
      ],
      "author": {
        "name": "Anji Jonnala",
        "email": "anjir@codeaurora.org",
        "time": "Mon Apr 22 10:01:59 2013 +0530"
      },
      "committer": {
        "name": "Anji Jonnala",
        "email": "anjir@codeaurora.org",
        "time": "Mon Apr 22 11:33:16 2013 +0530"
      },
      "message": "msm: hotplug: wait for hotplug completion event from secondary core\n\nPrimary core has to wait for hotplug completion event from secondary\ncore to avoid race between ongoing hotplug and already queued online\nevent. This also prevent CPU_DEAD notifiers from executing before the\nSPM has completed the collapse of the CPU. CPU DEAD notifiers executing\nearly have been attributed to MDD hardware block for the CPU being\nturned off prematurely, resulting in crashes.\nThe patch also adds support for probing with device tree for 8974\ntargets.\n\nChange-Id: Ibd35a7c56f42f156a643ca6d531509f019b2a3be\nCRs-fixed: 438314\nSigned-off-by: Anji Jonnala \u003canjir@codeaurora.org\u003e\n"
    },
    {
      "commit": "8d692fa8fc134edea6fc3a7b03c756db2e8e5f1b",
      "tree": "c1e23a23ff396eceb4ca9ac894cd8a64e449548b",
      "parents": [
        "7d650833940ef0fb0578fb9fd982920db3c31af5",
        "db90ee65bb6d6c4b6a66c56e39c5901eed93e000"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Fri Mar 22 18:28:20 2013 -0700"
      },
      "committer": {
        "name": "Gerrit - the friendly Code Review server",
        "email": "code-review@localhost",
        "time": "Fri Mar 22 18:28:20 2013 -0700"
      },
      "message": "Merge \"input: synaptics_i2c_rmi4: Add device tree support\""
    },
    {
      "commit": "db90ee65bb6d6c4b6a66c56e39c5901eed93e000",
      "tree": "b5c51bca9c6fd0c2e34f605ba5c89607df0bed39",
      "parents": [
        "55d277a1ef4e173134add370959c0c2f17e91ea5"
      ],
      "author": {
        "name": "Amy Maloche",
        "email": "amaloche@codeaurora.org",
        "time": "Wed Feb 06 13:30:36 2013 -0800"
      },
      "committer": {
        "name": "Shantanu Jain",
        "email": "shjain@codeaurora.org",
        "time": "Fri Mar 22 17:04:55 2013 +0530"
      },
      "message": "input: synaptics_i2c_rmi4: Add device tree support\n\nTo work with device tree framework, support must be added\nin driver.  Read in properties such as gpios, x/y size and\nsoft button mapping.  Also, enable multitouch with protocol\nB.\n\nChange-Id: I17f41105c57f22db1623d03627ca89f47ef57a8b\nSigned-off-by: Amy Maloche \u003camaloche@codeaurora.org\u003e\nSigned-off-by: Shantanu Jain \u003cshjain@codeaurora.org\u003e\n"
    },
    {
      "commit": "f22304483a0f45b456ba000a1361dd031af06ba2",
      "tree": "05fbf1edd5aae3d8bcbb25fc03c87fac206b9184",
      "parents": [
        "5a708c445474bb95ecef8499e0a8f3d77c756abc"
      ],
      "author": {
        "name": "Praveen Chidambaram",
        "email": "pchidamb@codeaurora.org",
        "time": "Wed Feb 20 17:42:17 2013 -0700"
      },
      "committer": {
        "name": "Praveen Chidambaram",
        "email": "pchidamb@codeaurora.org",
        "time": "Mon Mar 18 17:14:19 2013 -0600"
      },
      "message": "thermal: msm: Add core control support to thermal driver\n\nDetect and limit the numbers used during boot up if the core\ntemperatures are already higher than the control threshold.\n\nCRs-Fixed: 460083\nChange-Id: I2ad4b6d1b6834fa610a95d53b420e914054aa66a\nSigned-off-by: Praveen Chidambaram \u003cpchidamb@codeaurora.org\u003e\n"
    },
    {
      "commit": "2a0887caaf540517017d994d8d1940416a3365da",
      "tree": "f01aca53048383a42a0ec3e0b5239bec48c48e6c",
      "parents": [
        "938987dc41c19b1683934e0d4e75ae9b04456b80"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Feb 25 15:54:09 2013 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Mar 04 06:06:38 2013 +0800"
      },
      "message": "doc, kernel-parameters: Document \u0027console\u003dhvc\u003cn\u003e\u0027\n\ncommit a2fd6419174470f5ae6383f5037d0ee21ed9833f upstream.\n\nBoth the PowerPC hypervisor and Xen hypervisor can utilize the\nhvc driver.\n\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLink: http://lkml.kernel.org/r/1361825650-14031-3-git-send-email-konrad.wilk@oracle.com\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "938987dc41c19b1683934e0d4e75ae9b04456b80",
      "tree": "23bd7ae0f2595255fc60d0d19d22c7720755ab71",
      "parents": [
        "92916fb21cc71f7877c06ab998728f118e2d72cb"
      ],
      "author": {
        "name": "Konrad Rzeszutek Wilk",
        "email": "konrad.wilk@oracle.com",
        "time": "Mon Feb 25 15:54:08 2013 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Mar 04 06:06:38 2013 +0800"
      },
      "message": "doc, xen: Mention \u0027earlyprintk\u003dxen\u0027 in the documentation.\n\ncommit 2482a92e7d17187301d7313cfe5021b13393a0b4 upstream.\n\nThe earlyprintk for Xen PV guests utilizes a simple hypercall\n(console_io) to provide output to Xen emergency console.\n\nNote that the Xen hypervisor should be booted with \u0027loglevel\u003dall\u0027\nto output said information.\n\nReported-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLink: http://lkml.kernel.org/r/1361825650-14031-2-git-send-email-konrad.wilk@oracle.com\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "9d41b6ae75959b5c9480fc99b9aede641abff9cd",
      "tree": "340e839270dcdc83ca87a900e4d817b17935704e",
      "parents": [
        "b64279b0e00ca1f5650ba1911ae35b5b32cfffac"
      ],
      "author": {
        "name": "Amy Maloche",
        "email": "amaloche@codeaurora.org",
        "time": "Fri Dec 07 18:40:04 2012 -0800"
      },
      "committer": {
        "name": "Mohan Pallaka",
        "email": "mpallaka@codeaurora.org",
        "time": "Thu Feb 28 15:07:15 2013 +0530"
      },
      "message": "misc: isa1200: add device tree support\n\nAdd device tree (DT) support for isa1200.  Extract device\nproperties from DT and store it in platform data structure.\n\nChange-Id: I9ed9cc36cb07db00634b9e73a8052e62d313d484\nSigned-off-by: Amy Maloche \u003camaloche@codeaurora.org\u003e\n"
    },
    {
      "commit": "860cef9bfda9216fae52d63bfa55d754083a56c4",
      "tree": "297268313bd452a142391224e5a9cc9f2b42b4c5",
      "parents": [
        "ec0bbadfa19b1fff76f0b63065ca7153a34bf6e3"
      ],
      "author": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Wed Jan 16 09:48:25 2013 +0200"
      },
      "committer": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Fri Feb 15 08:51:30 2013 +0200"
      },
      "message": "mmc: use percentage changed sectors as indication to check BKOPS need\n\nIn order to keep card endurance, it is best not to check the need for\nBKOPS every time the MMC is idle.\nHowever, the decision when to check the card need for BKOPS according\nto number of changed sectors doesn\u0027t fit all cards sizes. Therefore,\nthe check for BKOPS need is based on percentages of changed sectors\nof the card size.\nIn order to assure that BKOPS will be triggered again in case it was\ninterrupted, the accumulated number of changed sectors is cleared only\nin case BKOPS was completed without interruption.\n\nChange-Id: I598f64b652a524a431b87d103fd5890b808f11b1\nSigned-off-by: Maya Erez \u003cmerez@codeaurora.org\u003e\n(cherry picked from commit e1eae988976536834759a45cf7f62e1cb2b82838)\n"
    },
    {
      "commit": "8fa85b0836656dfe6127186edb1c86bf404850ca",
      "tree": "f378fe4ac1877d6b782a63a6d670ae917ae421b6",
      "parents": [
        "d760e64c5f5d645cdc94787de67ab3b7e3eea8a7"
      ],
      "author": {
        "name": "Liron Kuch",
        "email": "lkuch@codeaurora.org",
        "time": "Tue Jan 01 18:29:47 2013 +0200"
      },
      "committer": {
        "name": "Liron Kuch",
        "email": "lkuch@codeaurora.org",
        "time": "Tue Feb 12 17:51:13 2013 +0200"
      },
      "message": "tspp: support device tree mechanism in the driver\n\nUpdate the TSPP driver to support using the device tree mechanism\nfor getting platform-dependent data.\n\nChange-Id: I5ac0f90266c3f30621865cf097db4dba1ee07fc6\nSigned-off-by: Liron Kuch \u003clkuch@codeaurora.org\u003e\n"
    },
    {
      "commit": "065497ff830f6536f7fce5a19d93b1162fd3fab9",
      "tree": "d7ee906263d7740c3a635df49edaadb3f56d6405",
      "parents": [
        "e66fc508c2b4dd77ccfb962b5cdc29b3cac185d9"
      ],
      "author": {
        "name": "Mitchel Humpherys",
        "email": "mitchelh@codeaurora.org",
        "time": "Wed Aug 29 16:20:15 2012 -0700"
      },
      "committer": {
        "name": "Ram Kumar Chakravarthy Chebathini",
        "email": "rcheba@codeaurora.org",
        "time": "Wed Feb 06 00:31:31 2013 -0800"
      },
      "message": "msm: adsprpc: RPC driver between apps and adsp\n\nThe driver implements an IPC (Inter-Processor) communication\nmechanism that allows for clients to make remote method\ninvocations across processor boundary.\n\nChange-Id: Ia9eb9bc69c64c785b040e24ee36a4f416ab49355\nAcked-by: Sathish Ambley \u003csambley@qualcomm.com\u003e\nSigned-off-by: Mitchel Humpherys \u003cmitchelh@codeaurora.org\u003e\nSigned-off-by: Ram Kumar Chakravarthy Chebathini \u003crcheba@codeaurora.org\u003e\n"
    },
    {
      "commit": "ee9463df8b7ba04c49c2e84ca0a460f4250a7b5b",
      "tree": "696d2e97e135b7d141bbfce94b1c38b7bc2a7c17",
      "parents": [
        "69d79d5c6a16952e30c2d4abcc9c88307ff386ef"
      ],
      "author": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Tue Jan 22 18:23:57 2013 -0800"
      },
      "committer": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Wed Jan 30 16:09:40 2013 -0800"
      },
      "message": "coresight: hotplug enable/disable etm only for round robin access\n\nEnable and disable ETM during hotplug operations only if ETM is\nallowed round-robin access by the funnel when all the ETMs share\nthe same funnel priority.\n\nFor 8960, 8064, etc it is observed that sometimes a core\u0027s ETM is\nstarved by other core ETMs constantly producing data. This works\naround an issue seen where setting the prog bit of a core\u0027s ETMCR\n(i.e. ETMCR[10]) doesn\u0027t result in that core\u0027s ETMSR[1] getting\nset thereby triggering the \"timeout while setting prog bit\"\nwarning. Subsequently performaing a manual ETB flush as part of\ndisabling ETB to retrieve the collected trace data also fails.\n\nChange-Id: I6dd37979058644495d945e80e6a2de4696fc5a20\nSigned-off-by: Pratik Patel \u003cpratikp@codeaurora.org\u003e\n"
    },
    {
      "commit": "8a27865e932cbf40291184ed9f4b38d6b5f2eb03",
      "tree": "9e567af23ddace175429e3f0a59b6114f2a3a957",
      "parents": [
        "88ab61f05fde3b64c9fc83787f2c15f960e49a4d"
      ],
      "author": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Mon Jan 14 22:19:25 2013 -0800"
      },
      "committer": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Wed Jan 30 16:09:39 2013 -0800"
      },
      "message": "coresight: read block size for tmc-etr to usb transfers from DT\n\nReading block size to use for tmc-etr to usb transfers from DT\nallows the flexibility to configure a different block size per\ntarget.\n\nChange-Id: I5b52db194ebb6fab7d3a02e8fb031bd9936fddd8\nSigned-off-by: Pratik Patel \u003cpratikp@codeaurora.org\u003e\n"
    },
    {
      "commit": "36ef4e5672fc8316f2b290b36aac580b263cc108",
      "tree": "330215ee314d49618973e16125889af22a18daf7",
      "parents": [
        "dffa531dc682d1e9967fb3664043d3f78aee1fb1"
      ],
      "author": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Fri Sep 28 23:21:46 2012 -0700"
      },
      "committer": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Wed Jan 30 16:09:29 2013 -0800"
      },
      "message": "coresight: implement runtime pc save control\n\nAdd runtime control for enabling/disabling program counter save feature.\nEnabling program counter save feature will enable pc to be saved on\nreset but implies ETM being left powered on. So we provide user runtime\ncontrol to enable the feature when debugging or disable it while taking\npower measurements.\n\nChange-Id: Ib007da851ee7f3b0fac195da62aac7def68cc67a\nSigned-off-by: Pratik Patel \u003cpratikp@codeaurora.org\u003e\n"
    },
    {
      "commit": "e4a4a559d2ba0d50059a85967b4c4c707863a65b",
      "tree": "f381d4348d414e9d83cb24a9ee48aca0386abc14",
      "parents": [
        "3aa540b869b9bd734ec60246ae1dfe35ab3530e0"
      ],
      "author": {
        "name": "Alex Elder",
        "email": "elder@inktank.com",
        "time": "Fri Aug 10 13:12:10 2012 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 17 08:51:20 2013 -0800"
      },
      "message": "rbd: kill create_snap sysfs entry\n\nJosh proposed the following change, and I don\u0027t think I could\nexplain it any better than he did:\n\n    From: Josh Durgin \u003cjosh.durgin@inktank.com\u003e\n    Date: Tue, 24 Jul 2012 14:22:11 -0700\n    To: ceph-devel \u003cceph-devel@vger.kernel.org\u003e\n    Message-ID: \u003c500F1203.9050605@inktank.com\u003e\n    From: Josh Durgin \u003cjosh.durgin@inktank.com\u003e\n\n\n    Right now the kernel still has one piece of rbd management\n    duplicated from the rbd command line tool: snapshot creation.\n    There\u0027s nothing special about snapshot creation that makes it\n    advantageous to do from the kernel, so I\u0027d like to remove the\n    create_snap sysfs interface.  That is,\n\t/sys/bus/rbd/devices/\u003cid\u003e/create_snap\n    would be removed.\n\n    Does anyone rely on the sysfs interface for creating rbd\n    snapshots?  If so, how hard would it be to replace with:\n\n\trbd snap create pool/image@snap\n\n    Is there any benefit to the sysfs interface that I\u0027m missing?\n\n    Josh\n\nThis patch implements this proposal, removing the code that\nimplements the \"snap_create\" sysfs interface for rbd images.\nAs a result, quite a lot of other supporting code goes away.\n\n[elder@inktank.com: commented out rbd_req_sync_exec() to avoid warning]\n\nSuggested-by: Josh Durgin \u003cjosh.durgin@inktank.com\u003e\nSigned-off-by: Alex Elder \u003celder@inktank.com\u003e\nReviewed-by: Josh Durgin \u003cjosh.durgin@inktank.com\u003e\n(based on commit 02cdb02ceab1f3dd9ac2bc899fc51f0e0e744782)\n"
    },
    {
      "commit": "34fb350281ced2a72707a5c0064f69992d440edb",
      "tree": "91f806c64e65601adf09564a83b4c44f4db080be",
      "parents": [
        "c87b45599a4e0d8741abeb85d1d8d5f0c1fb13be"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Jul 17 10:13:05 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 11 09:07:14 2013 -0800"
      },
      "message": "tcp: implement RFC 5961 3.2\n\n[ Upstream commit 282f23c6ee343126156dd41218b22ece96d747e3 ]\n\nImplement the RFC 5691 mitigation against Blind\nReset attack using RST bit.\n\nIdea is to validate incoming RST sequence,\nto match RCV.NXT value, instead of previouly accepted\nwindow : (RCV.NXT \u003c\u003d SEG.SEQ \u003c RCV.NXT+RCV.WND)\n\nIf sequence is in window but not an exact match, send\na \"challenge ACK\", so that the other part can resend an\nRST with the appropriate sequence.\n\nAdd a new sysctl, tcp_challenge_ack_limit, to limit\nnumber of challenge ACK sent per second.\n\nAdd a new SNMP counter to count number of challenge acks sent.\n(netstat -s | grep TCPChallengeACK)\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Kiran Kumar Kella \u003ckkiran@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "b58c04bb03e57a5f23970622b3c22e447e18a0b5",
      "tree": "8e16e907671e05e86f55ff026f679992b09c2a6b",
      "parents": [
        "727a8711fd78663bcb750e9b110cb11ac94f5c77"
      ],
      "author": {
        "name": "Hamad Kadmany",
        "email": "hkadmany@codeaurora.org",
        "time": "Tue Nov 27 17:51:01 2012 +0200"
      },
      "committer": {
        "name": "Neha Pandey",
        "email": "nehap@codeaurora.org",
        "time": "Fri Dec 28 14:56:11 2012 -0800"
      },
      "message": "media: dvb: mpq: Use kthread instead of workqueue\n\ndemux used single-threaded workqueue to process TS packets\nnotified from the HW. Workqueue implementation was changed\nso that all work scheduled to workqueues are submitted\nto same kworker threads, this result on having TS packet\nprocessing not to be done on demux own thread and compete\nwith other work scheduled by other drivers. Moved to separate\nthread dedicated only for demux.\n\nChange-Id: Ia8b96543f26428a0a12809d34c27849f900cc45e\nSigned-off-by: Hamad Kadmany \u003chkadmany@codeaurora.org\u003e\nSigned-off-by: Neha Pandey \u003cnehap@codeaurora.org\u003e\n"
    },
    {
      "commit": "bbd06bfa54129e4db4ed9e2f89f2d972801a746f",
      "tree": "d25e7db0904f75b21e4ca96741fe2652dfafca29",
      "parents": [
        "057363c71f27347a28856c1d671cdf6deeb51a67"
      ],
      "author": {
        "name": "Hamad Kadmany",
        "email": "hkadmany@codeaurora.org",
        "time": "Tue Oct 23 14:15:41 2012 +0200"
      },
      "committer": {
        "name": "Neha Pandey",
        "email": "nehap@codeaurora.org",
        "time": "Fri Dec 28 14:56:09 2012 -0800"
      },
      "message": "tspp: Add option to inverse tsif signals\n\nTSIF signals (clock, data, enable and sync) may be configured\nto be inversed at TSPP unit input. This is useful in case\nTSIF signals from external units need to be inversed.\n\nChange-Id: I4f0bfdc58fb8658dbf10fe3805b8787f9d36aeca\nSigned-off-by: Hamad Kadmany \u003chkadmany@codeaurora.org\u003e\nSigned-off-by: Neha Pandey \u003cnehap@codeaurora.org\u003e\n"
    },
    {
      "commit": "bd5e3796177722454ac85a94b3b6e0fa47954445",
      "tree": "b9f6081454e9aed7695e6aa823112a84817a319e",
      "parents": [
        "5b227713caa698390359660f580979ed59c11661",
        "8d0782ef8e4052b3ddc0767cf9b9707a5c18c711"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Thu Dec 13 21:22:26 2012 -0800"
      },
      "committer": {
        "name": "Gerrit - the friendly Code Review server",
        "email": "code-review@localhost",
        "time": "Thu Dec 13 21:22:24 2012 -0800"
      },
      "message": "Merge \"msm: dcvs: add ss_no_corr_below_freq parameter\""
    },
    {
      "commit": "8d0782ef8e4052b3ddc0767cf9b9707a5c18c711",
      "tree": "71296bab1793231886c628e488674eba17993fc4",
      "parents": [
        "64a33378163d3e9aff65a721eed100916efbc4d2"
      ],
      "author": {
        "name": "Steve Muckle",
        "email": "smuckle@codeaurora.org",
        "time": "Thu Dec 06 14:31:00 2012 -0800"
      },
      "committer": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Wed Dec 12 22:55:20 2012 -0700"
      },
      "message": "msm: dcvs: add ss_no_corr_below_freq parameter\n\nThe busy/idle behavior of different cores can be correlated by\nDCVS when determining what frequency to run cores at. However,\nthis is not desirable below a certain frequency. Add a parameter\nto establish what this frequency is. The parameter is configurable\nin userspace via sysfs.\n\nThe ss_iobusy_conv parameter is currently unused, so it is\nbeing replaced with ss_no_corr_below_freq.\n\n(cherry picked from commit e8c6d615259af5fde8a6613f53c41c212407bda9)\n\nChange-Id: Ibf814f3f93b92a532d7b3af80721a5bc7db1bd31\nSigned-off-by: Steve Muckle \u003csmuckle@codeaurora.org\u003e\n"
    },
    {
      "commit": "afb1b40e141497272dd2eea175e25ac8a9c777a3",
      "tree": "ae2cfca43fbaab04de6b75fded937686b3e045c0",
      "parents": [
        "2dbb124abd8b0a5c4071686cad787770d6f30945"
      ],
      "author": {
        "name": "Laura Abbott",
        "email": "lauraa@codeaurora.org",
        "time": "Mon Oct 29 13:08:03 2012 -0700"
      },
      "committer": {
        "name": "Mitchel Humpherys",
        "email": "mitchelh@codeaurora.org",
        "time": "Tue Dec 11 21:45:00 2012 -0800"
      },
      "message": "common: DMA-mapping: Add strongly ordered memory attribute\n\nStrongly ordered memory is occasionally needed for some DMA\nallocations for specialized use cases. Add the corresponding\nDMA attribute.\n\nChange-Id: Idd9e756c242ef57d6fa6700e51cc38d0863b760d\nSigned-off-by: Laura Abbott \u003clauraa@codeaurora.org\u003e\nSigned-off-by: Mitchel Humpherys \u003cmitchelh@codeaurora.org\u003e\n"
    },
    {
      "commit": "2dbb124abd8b0a5c4071686cad787770d6f30945",
      "tree": "bdfb0f59489fa8e05800ae5419b5ff1bfa2dd54d",
      "parents": [
        "88d97db667d8efda7d266a3caf7f2f4a444f2b4c"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Wed May 16 15:20:37 2012 +0200"
      },
      "committer": {
        "name": "Mitchel Humpherys",
        "email": "mitchelh@codeaurora.org",
        "time": "Tue Dec 11 21:44:59 2012 -0800"
      },
      "message": "common: DMA-mapping: add DMA_ATTR_NO_KERNEL_MAPPING attribute\n\nThis patch adds DMA_ATTR_NO_KERNEL_MAPPING attribute which lets the\nplatform to avoid creating a kernel virtual mapping for the allocated\nbuffer. On some architectures creating such mapping is non-trivial task\nand consumes very limited resources (like kernel virtual address space\nor dma consistent address space). Buffers allocated with this attribute\ncan be only passed to user space by calling dma_mmap_attrs().\n\nChange-Id: Id12b93fa2b02d5f3d01ab48eb61cda79f533d695\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nReviewed-by: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Laura Abbott \u003clauraa@codeaurora.org\u003e\nSigned-off-by: Mitchel Humpherys \u003cmitchelh@codeaurora.org\u003e\n"
    },
    {
      "commit": "1c803d8d0e9b1280a944738db3f7a4bd76a1f8a9",
      "tree": "55414e7bdb7a7d7b21ee2383813d815b97eac989",
      "parents": [
        "5aa78dcff40b2a8d9ef89642d4554ab48113e940"
      ],
      "author": {
        "name": "Deva Ramasubramanian",
        "email": "dramasub@codeaurora.org",
        "time": "Thu Sep 20 14:13:09 2012 -0700"
      },
      "committer": {
        "name": "Neha Pandey",
        "email": "nehap@codeaurora.org",
        "time": "Mon Dec 10 17:11:12 2012 -0800"
      },
      "message": "msm: video: wfd: Add Device Tree support\n\nDefine Device Tree bindings for wfd and update the driver to match the\nspecification.\n\nChange-Id: Ia204cf32aa1ccd5fd51999844dd73d740e90f0e2\nSigned-off-by: Deva Ramasubramanian \u003cdramasub@codeaurora.org\u003e\nSigned-off-by: Neha Pandey \u003cnehap@codeaurora.org\u003e\n"
    },
    {
      "commit": "c916200d53bcca4f392b89cde25aef6a6902b32e",
      "tree": "2c4edbc7f35ba84c5fe5d6996836455c8d55662f",
      "parents": [
        "85a9ff81e28d7c12e69702baff50526a9859d642"
      ],
      "author": {
        "name": "Rajeev Kulkarni",
        "email": "krajeev@codeaurora.org",
        "time": "Thu Nov 22 00:42:58 2012 -0800"
      },
      "committer": {
        "name": "Neha Pandey",
        "email": "nehap@codeaurora.org",
        "time": "Wed Dec 05 13:06:22 2012 -0800"
      },
      "message": "msm: msm_bus: Add support for 64-bit bandwidth requests\n\nWith 8974, bandwidth requests are exceeding integer size.\nUpdate ab and ib to ensure values over 4Gbps can be requested.\nFor 64-bit support, there are four changes in this patch:\nChanges in the bus driver structures and functions to\nupdate ab and ib values to uint64.\nUpdates in client drivers to ensure that the bus APIs\nare called with the right types.\nUpdates to the device-tree. Device-tree nodes don\u0027t\nprovide a clean mechanism to read a combination of u32\nand u64 variables within the same property name. So, the\nab and ib values must be specified in kbps instead of\nbytes/sec from the device tree. The bus driver function\nwill convert the ab and ib values read from device-tree\nto Mbps.\nChange the existing property names to make them consistent\nwith the convention used by the new property  name, which\nabides to the Device Tree convention.\n\nChange-Id: Ib0a6db0e221af366c61c51cc21ac722f02cb7a34\nCRs-Fixed: 408786\nSigned-off-by: Gagan Mac \u003cgmac@codeaurora.org\u003e\nSigned-off-by: Rajeev Kulkarni \u003ckrajeev@codeaurora.org\u003e\n"
    },
    {
      "commit": "85a9ff81e28d7c12e69702baff50526a9859d642",
      "tree": "b99e7dc6b07ea3bf49c583314ba69500e6eef16b",
      "parents": [
        "bddfba095fd4e076960cbe791f34757d00ae0773"
      ],
      "author": {
        "name": "Phani Kumar Uppalapati",
        "email": "phanik@codeaurora.org",
        "time": "Tue Sep 25 20:25:53 2012 -0700"
      },
      "committer": {
        "name": "Neha Pandey",
        "email": "nehap@codeaurora.org",
        "time": "Wed Dec 05 13:04:03 2012 -0800"
      },
      "message": "kernel/msm: 8974: Audio ocmem driver changes to use bus dt APIs\n\nPopulate bus vectors for the audio ocmem driver with use of new\nbus device tree APIs.\n\nChange-Id: If965c269706763a3a67b22243f265429f23427d6\nSigned-off-by: Phani Kumar Uppalapati \u003cphanik@codeaurora.org\u003e\nSigned-off-by: Rajeev Kulkarni \u003ckrajeev@codeaurora.org\u003e\n"
    },
    {
      "commit": "ab0b6b0acdf117bd5f4270cf203051fad8fd0159",
      "tree": "2cb697908113b12be03d9bfb7b17fa276c89f20b",
      "parents": [
        "f86f6425abefb92cea2602c4ed20898bc073ee66"
      ],
      "author": {
        "name": "Yaniv Gardi",
        "email": "ygardi@codeaurora.org",
        "time": "Thu Oct 11 11:36:24 2012 +0200"
      },
      "committer": {
        "name": "Neha Pandey",
        "email": "nehap@codeaurora.org",
        "time": "Mon Dec 03 18:48:48 2012 -0800"
      },
      "message": "mmc: block: Adding device attribute for minimum sectors to start BKOPS\n\nThis attribute is used to determine whether the status bit that\nindicates the need for BKOPS should be checked. The value is stored in\nthis attribute represents the minimum number of sectors that needs to\nbe changed in the device (written or discarded) in order to require\nthe status-bit of BKOPS to be checked\n\n(cherry picked from commit e6c6b4b14ac2f10aa34cf42b6f558152e438bb37)\nChange-Id: I3b05a0826fc9397a13d6b03ee028293f877f8d66\nSigned-off-by: Yaniv Gardi \u003cygardi@codeaurora.org\u003e\n(cherry picked from commit 15ecbe1c5f6b2f2af5974f23cd494fce0c5bf81a)\n"
    },
    {
      "commit": "98e678107b2bac6b561393b52fb31b712bc88da2",
      "tree": "638c8ca245840ad6f51b3e50ee364054ec0bb53e",
      "parents": [
        "121b8e8c22a6a55e5d9794c400ca579b89a4a0f1"
      ],
      "author": {
        "name": "Tatyana Brokhman",
        "email": "tlinder@codeaurora.org",
        "time": "Sun Oct 07 09:52:16 2012 +0200"
      },
      "committer": {
        "name": "Neha Pandey",
        "email": "nehap@codeaurora.org",
        "time": "Mon Dec 03 18:48:44 2012 -0800"
      },
      "message": "mmc: block: Add write packing control\n\nThe write packing control will ensure that read requests latency is\nnot increased due to long write packed commands.\n\nThe trigger for enabling the write packing is managing to pack several\nwrite requests. The number of potential packed requests that will trigger\nthe packing can be configured via sysfs by writing the required value to:\n/sys/block/\u003cblock_dev_name\u003e/num_wr_reqs_to_start_packing.\nThe trigger for disabling the write packing is fetching a read request.\n\n(cherry picked from commit 0cc76400d65f0d7b3f2f8f1ece3c8061652a35d7)\nChange-Id: I51a44d2673e40e4e404317ddb632a9fb204e9a06\nSigned-off-by: Maya Erez \u003cmerez@codeaurora.org\u003e\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n(cherry picked from commit fd402c28f1571b64f4d695d191778e9dd595806a)\n"
    },
    {
      "commit": "9cfb66219d6e5840df9c4cf06fff70e072be1409",
      "tree": "41bf4af2137f01ec76b0eb09b44bdd97f138f3d8",
      "parents": [
        "08ecfb7dd2e41f8aa9bd57468e09fdc5bbbc2ec6"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Sep 28 16:16:00 2012 -0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Dec 03 11:47:11 2012 -0800"
      },
      "message": "get_dvb_firmware: fix download site for tda10046 firmware\n\ncommit 25ec43d3e6306978cf66060ed18c4160ce8fc302 upstream.\n\nThe previous website doesn\u0027t exist anymore. Update it to one site that\nactually exists.\n\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nSigned-off-by: Peter Huewe \u003cpeterhuewe@gmx.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "b52c7182bb304bec1e873d730ae5a9cfca33526d",
      "tree": "d724dd48caea5aac16363ac1fcada4d145f34713",
      "parents": [
        "d0ed5ae04fc529f2f4477529c66f950f3ff791be"
      ],
      "author": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Wed Nov 28 23:46:50 2012 +0200"
      },
      "committer": {
        "name": "Maya Erez",
        "email": "merez@codeaurora.org",
        "time": "Wed Nov 28 23:46:50 2012 +0200"
      },
      "message": "mmc: Revert all packing related patches\n\nThe version of packing support excepted by the linux community is\nslightly different from the one that was merged. This revert is needed\nin order to upload the latest version from the linux community.\n\nThis patch reverts the following commits:\n1.mmc: card: Add eMMC4.5 write packed commands unit-tests\n2.mmc: card: Fix packing control enabling algorithm\n3.mmc: block: Add MMC write packing statistics\n4.mmc: msm_sdcc: enable the write packing control\n5.mmc: msm_sdcc: Enable write packing capability\n6.mmc: block: Add write packing control\n7.mmc: core: Support packed write command for eMMC4.5 device\n8.mmc: core: Add packed command feature of eMMC4.5\n\n(cherry picked from commit f94cf3da103b344b13fa4d6665fd21dad1b95ead)\n\nChange-Id: I2efc6dc8d8f6d5cc7e9efa99ec74914ffff96fcd\n  commit:  9b54d88c6a11ebfe069b7fdebcb521da21754c3f\n  commit: e2ecb58a6c5011549aac3e86fb1c13e7b7c65104\n  commit: e544d700e2dac1584a8172c4dc347d81ede203bd\n  commit: 8afe8d2a98a1bbf3804162ff5c95a56226935f5a\n  commit: 25e2261a556c4393f79d58bce814bb3df34b9549\n  commit: 63c61d6d8b8f37c71b4162b3affffdf72ac06811\n  commit: 968c774ea6466fa7adbf2eac333220132acda306\n  commit: 516994eee39282b8648b509e449ff83b49833209.\nSigned-off-by: Tatyana Brokhman \u003ctlinder@codeaurora.org\u003e\n(cherry picked from commit 31fe84d6edae65f9df5663538e528697897be86e)\n\nSigned-off-by: Maya Erez \u003cmerez@codeaurora.org\u003e\n"
    },
    {
      "commit": "e5c4ee6a081ec04e8ba54b00a4385391ab77e2f8",
      "tree": "dc0fca050cef42f6f670ef441a8db2b5085b9b85",
      "parents": [
        "9098e8785685bd245027447b5628fa872babd3b8"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Fri Nov 16 14:14:49 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Nov 26 11:37:45 2012 -0800"
      },
      "message": "memcg: oom: fix totalpages calculation for memory.swappiness\u003d\u003d0\n\ncommit 9a5a8f19b43430752067ecaee62fc59e11e88fa6 upstream.\n\noom_badness() takes a totalpages argument which says how many pages are\navailable and it uses it as a base for the score calculation.  The value\nis calculated by mem_cgroup_get_limit which considers both limit and\ntotal_swap_pages (resp.  memsw portion of it).\n\nThis is usually correct but since fe35004fbf9e (\"mm: avoid swapping out\nwith swappiness\u003d\u003d0\") we do not swap when swappiness is 0 which means\nthat we cannot really use up all the totalpages pages.  This in turn\nconfuses oom score calculation if the memcg limit is much smaller than\nthe available swap because the used memory (capped by the limit) is\nnegligible comparing to totalpages so the resulting score is too small\nif adj!\u003d0 (typically task with CAP_SYS_ADMIN or non zero oom_score_adj).\nA wrong process might be selected as result.\n\nThe problem can be worked around by checking mem_cgroup_swappiness\u003d\u003d0\nand not considering swap at all in such a case.\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "1e0e2789f76c5af8de02c9ad9375e7aeece7cefe",
      "tree": "2224493e2be1e6f5e7d91dd898dde71ff69f13db",
      "parents": [
        "f9174f7ba336e90855768dba6a0f3caf535129e2"
      ],
      "author": {
        "name": "Mohan Pallaka",
        "email": "mpallaka@codeaurora.org",
        "time": "Mon Jun 18 22:49:10 2012 +0530"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Mon Nov 12 01:29:22 2012 -0800"
      },
      "message": "input: atmel_mxt_ts: Add device tree support\n\nParse the device tree elements and fill platform\ndata structure.\n\nSigned-off-by: Mohan Pallaka \u003cmpallaka@codeaurora.org\u003e\n(cherry picked from commit d96f5032cd8b73450886262fe193d1531038c0f0)\n\nConflicts:\n\n\tdrivers/input/touchscreen/atmel_mxt_ts.c\n\nChange-Id: I551dadffaa84c991abbe964bfb9f72b7fd11dfee\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n(cherry picked from commit 368b8d73bbda62f6ab217ef06019b685636fc3ba)\n"
    },
    {
      "commit": "ecc02f3eb3d3ef8324d702f537fe100fb0805e57",
      "tree": "1beed666773652271a6256a9edf70917b0265dd0",
      "parents": [
        "2481ecaaedc4c53f39cbf251e5452ff68bdb51d2"
      ],
      "author": {
        "name": "Amy Maloche",
        "email": "amaloche@codeaurora.org",
        "time": "Thu Aug 16 19:14:11 2012 -0700"
      },
      "committer": {
        "name": "Gerrit - the friendly Code Review server",
        "email": "code-review@localhost",
        "time": "Tue Nov 06 14:52:40 2012 -0800"
      },
      "message": "leds: leds-qpnp: Add QPNP PMIC led driver\n\nQPNP (Qualcomm Plug N Play) LEDs driver is used for\ncontrolling LEDs that are part of PMIC on Qualcomm reference\nplatforms. The PMIC is connected to Host processor via\nSPMI bus. This driver supports various LED modules such as\nWLED (white LED), RGB LED and flash LED. The first version of\nthe driver supports WLED and other features are added in the\nnext versions.\n\nChange-Id: Ib2962c784cf566905f909faa0d46f8ebfee77b2d\nSigned-off-by: Amy Maloche \u003camaloche@codeaurora.org\u003e\n(cherry picked from commit f3d5a06505faa2d7690ad48ce7bb5e32afb56df2)\n"
    },
    {
      "commit": "bab04cb2179e2d8530b9b6e890b92ffdc8b18d3b",
      "tree": "2c47018e94da4405d4c8c8b8ced62f8cd25c1104",
      "parents": [
        "3467c825e214e75967f763f540b0997da7914597"
      ],
      "author": {
        "name": "Praveen Chidambaram",
        "email": "pchidamb@codeaurora.org",
        "time": "Mon Aug 27 11:31:40 2012 -0600"
      },
      "committer": {
        "name": "Gerrit - the friendly Code Review server",
        "email": "code-review@localhost",
        "time": "Tue Nov 06 13:54:26 2012 -0800"
      },
      "message": "Documentation: arm/dt: update spm-v2 doc to remove pmic-dly\n\nPMIC-DLY on SPM V2.2 is part of the PMIC_DATAn command. Remove the\nincorrect entity from documentation.\n\nSigned-off-by: Praveen Chidambaram \u003cpchidamb@codeaurora.org\u003e\n(cherry picked from commit a5753764bace491d50f09ad7461647dd62f6c20a)\n\nChange-Id: I66f83ed1e594f611154aaa3165ba95e73bda4e63\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "3910ee1a57357be80066d31a421b1e006352f7a2",
      "tree": "26944ee35b0620e77657b51dd73585080296594d",
      "parents": [
        "1a089f3f34eb454ff6cb0c6ee84010cf8af1b972"
      ],
      "author": {
        "name": "Jeff Hugo",
        "email": "jhugo@codeaurora.org",
        "time": "Tue Aug 21 14:08:20 2012 -0600"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Fri Nov 02 12:21:39 2012 -0700"
      },
      "message": "msm: bam_dmux: add device tree support\n\nAdd support in the bam_dmux driver to receive the BAM hardware description\ndata from device tree.\n\nSigned-off-by: Jeffrey Hugo \u003cjhugo@codeaurora.org\u003e\n(cherry picked from commit 7bf02059a51756514983a76d225b640bc65f2ea4)\n\nChange-Id: I24ef668edca1cf14f6dcdffa0340a036c3900482\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "4f77e343c9ec19002d3ea63151466d61423a04e1",
      "tree": "c20c74938958774f5bf24b5be8544ee369b7cef2",
      "parents": [
        "8b76c200a32a4259dad1587ab43577cdb4ce8816"
      ],
      "author": {
        "name": "Gagan Mac",
        "email": "gmac@codeaurora.org",
        "time": "Thu Aug 02 18:08:16 2012 -0600"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Thu Nov 01 14:24:30 2012 -0700"
      },
      "message": "msm: msm_bus: Add device tree support for bus scaling clients\n\nThis patch enables clients to specify vectors in device tree\nformat. Clients will no longer need to specify vectors in\nthe boards file. Instead, they can add the bus-scaling\nrelated data to their own device-nodes.\nThe clients can then call an API exposed by the bus driver\nwhich will build the pdata out of those strings.\nThe registration process using pdata remains unchanged.\n\nSigned-off-by: Gagan Mac \u003cgmac@codeaurora.org\u003e\n(cherry picked from commit bf3676d64aa6007664223c552557ab3d0666f842)\n\nChange-Id: Iec994d8949bef9a45a401147c7f2aeebaf748e4f\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "76eb1c24d3566c3a330a6aced8858cb8c14c5274",
      "tree": "88f008dd23aed94550c3411e846e48c225643f57",
      "parents": [
        "fe2d4d399108759854cfccd06c074d114a74ba00"
      ],
      "author": {
        "name": "Sujit Reddy Thumma",
        "email": "sthumma@codeaurora.org",
        "time": "Tue Sep 11 10:03:09 2012 +0530"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Wed Oct 31 11:58:34 2012 -0700"
      },
      "message": "Documentation: arm/dt: corrections in msm_qpic_nand.txt\n\nLeading zeros in register offsets is not acceptable\nwhile naming device nodes in device tree. Fix this in\nmsm_qpic_nand.txt device tree binding.\n\nChange-Id: Iab8f339b8e98d06c5197b794640fddca0e153960\nSigned-off-by: Sujit Reddy Thumma \u003csthumma@codeaurora.org\u003e\n(cherry picked from commit 152eff18c93c014cd8885fed38f0e6eeb89032ee)\n\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "0a6904a552465521b33d25d767a7db06ad04e434",
      "tree": "0753a4623ded867b07bcbae2e7593473becffd50",
      "parents": [
        "baa526f45d3f096a1cd9f14b668203a03bbab6f9"
      ],
      "author": {
        "name": "Josh Wu",
        "email": "josh.wu@atmel.com",
        "time": "Fri Sep 14 17:01:29 2012 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Oct 31 10:03:01 2012 -0700"
      },
      "message": "ARM: at91/tc: fix typo in the DT document\n\ncommit 11930c530f3edf81160e4962e363d579f5cdce7e upstream.\n\nSigned-off-by: Josh Wu \u003cjosh.wu@atmel.com\u003e\nSigned-off-by: Nicolas Ferre \u003cnicolas.ferre@atmel.com\u003e\nAcked-by: Jean-Christophe PLAGNIOL-VILLARD \u003cplagnioj@jcrosoft.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "b6c0577d1d2de9ecca4a9e52179581e86eaab6e3",
      "tree": "dc245df3d3fdeb3172a622bb703a5e0d545528cc",
      "parents": [
        "7e37e6e544180bdd4ea82cfce9f3644b6da8e9ce"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Sun Aug 26 18:27:53 2012 -0700"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Tue Oct 30 22:25:32 2012 -0700"
      },
      "message": "msm: dcvs: Add thermal interfaces.\n\nThe algorithm needs thermal inputs for all the cores. Create members in\nthe internal core_info strucutre and platform data/device tree to pass\nin the sensors they use.\n\nUpdate the dcvs code to notify the temperature to TZ.\n\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n(cherry picked from commit fc7dca4c325725492af997fa282e07b9d03154d1)\n\nSigned-off-by: Ram Kumar Chakravarthy Chebathini \u003crcheba@codeaurora.org\u003e\n(cherry picked from commit eb478c5b7b55ea8a57e0336e4cf9979be935b289)\n\nChange-Id: I505903eb8b9779f2065aebfab5b3f2aefc874200\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "7e37e6e544180bdd4ea82cfce9f3644b6da8e9ce",
      "tree": "f5a9fd356a744c1cbd85be0c4260b8a6032c70a6",
      "parents": [
        "7b933c538ed0a241197432460bab0ebabbbd0347"
      ],
      "author": {
        "name": "Abhijeet Dharmapurikar",
        "email": "adharmap@codeaurora.org",
        "time": "Thu Aug 23 18:58:44 2012 -0700"
      },
      "committer": {
        "name": "Sudhir Sharma",
        "email": "sudsha@codeaurora.org",
        "time": "Tue Oct 30 22:19:56 2012 -0700"
      },
      "message": "msm: dcvs: rearrange platform data.\n\nThis change\n-removes the use of group id and instead introduces core type\n-rearranges platform data, adds energy curve coefficients and power\n parameters\n-allow for the energy params to be -ve numbers\n\nThe change also mandates updates to the msm8974-gpu.dtsi and the\nassociated binding documentation.\n\nAlso take this opportunity to remove devices for unsupported platform\n- 8930 and 8960\n\nSigned-off-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\n(cherry picked from commit 4445166ad16be0c45b077bfb10487de355ed2e05)\n\nSigned-off-by: Ram Kumar Chakravarthy Chebathini \u003crcheba@codeaurora.org\u003e\n(cherry picked from commit 24d2351f6a5e7069e5d554dbc999280a69288c5d)\n\nChange-Id: I5c65c0e65cc7652eee72c525f0db10e128061cf9\nSigned-off-by: Sudhir Sharma \u003csudsha@codeaurora.org\u003e\n"
    },
    {
      "commit": "4386363312d70a764a376f1635467bab8e26965a",
      "tree": "b360c64e05b9eac54eb2c3690296ef7a114f19b0",
      "parents": [
        "23b5a5da4f07b887adce9b42daa7aa14a72a5427"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Thu Sep 20 07:44:11 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Oct 02 10:29:53 2012 -0700"
      },
      "message": "ALSA: hda - Workaround for silent output on VAIO Z with ALC889\n\ncommit e427c2375646789ecd0ccaef1a1e41458559ab2d upstream.\n\nOn recent kernels, Realtek codec parser tries to optimize the routing\naggressively and take the headphone output as primary at first.  This\ncaused a regression on VAIO Z with ALC889, the silent output from the\nspeaker.\n\nThe problem seems that the speaker pin must be connected to the first\nDAC (0x02) on this machine by some reason although the codec itself\nadvertises the flexible routing with any DACs.\n\nThis patch adds a fix-up for choosing the speaker pin as the primary\nso that the right DAC is assigned on this device.\n\nReported-and-tested-by: Adam Williamson \u003cawilliam@redhat.com\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "7db3f56f37640c88387dfda6fad1e930d589d0e3",
      "tree": "550bafb4d1ee8cdce8e0b59dbf949c7660e2e238",
      "parents": [
        "f313f5b440c874dbee75922e30736b9069f0a1d1"
      ],
      "author": {
        "name": "James Ralston",
        "email": "james.d.ralston@intel.com",
        "time": "Mon Sep 10 10:14:02 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Sep 14 10:00:33 2012 -0700"
      },
      "message": "i2c-i801: Add Device IDs for Intel Lynx Point-LP PCH\n\ncommit 4a8f1ddde942e232387e6129ce4f4c412e43802f upstream.\n\nAdd the SMBus Device IDs for the Intel Lynx Point-LP PCH.\n\nSigned-off-by: James Ralston \u003cjames.d.ralston@intel.com\u003e\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "21244048a0468e9003484bb54862c5aed94b5d9b",
      "tree": "fb20bcba7610073a7863e0b1553d09e2f71fe9ab",
      "parents": [
        "03951e2b1d17d00293a575a443021f5bbcda46cb"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Sun Jun 10 15:16:26 2012 +0200"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Sep 05 22:36:07 2012 -0700"
      },
      "message": "HID: uhid: add documentation\n\nThis describes the protocol used by uhid for user-space applications. It\ndescribes the details like non-blocking I/O and readv/writev for multiple\nevents per syscall.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "733a29ab06279315a62a3299db1ddbae23a34521",
      "tree": "c150d3190dbdadcf656f1425405ad219e5e38aa4",
      "parents": [
        "381cb6db475a4f343325e743c63bcd27f8d40403",
        "dd975e560e8f8350b8818efbf02439a2ee470123"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Sun Aug 19 04:38:41 2012 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Sun Aug 19 04:38:41 2012 -0700"
      },
      "message": "Merge \"platform: msm: Add driver for QPNP PMIC clkdiv peripherals\" into msm-3.4"
    },
    {
      "commit": "dd975e560e8f8350b8818efbf02439a2ee470123",
      "tree": "a177f10309eb50c3d86cc9be0e30b70f60136c50",
      "parents": [
        "184e4890a501e4e6744054c10031e259bdf1e21f"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Wed Jul 25 11:04:55 2012 -0700"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Fri Aug 17 12:47:40 2012 -0700"
      },
      "message": "platform: msm: Add driver for QPNP PMIC clkdiv peripherals\n\nThis driver supports the Qualcomm PNP clkdiv peripheral. It\nallowed for configuring divide factors for various clock outputs\non the PMIC. The source clock is CXO.\n\nThe driver allows for configuration of the clkdiv device through\nDevice Tree. Some optional parameters may be specified instead at\nruntime with the qpnp_clkdiv_config() API.\n\nChange-Id: I393ed0e4389fb3c1dfe0bcdb40944102d2e09894\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "4a14a55def71d45e4cbc2118f6fae850eac25737",
      "tree": "147e043320519a615203e06416cc2749c99f28df",
      "parents": [
        "91d954645c7bdbb2f7618538419fc6bef5979057"
      ],
      "author": {
        "name": "Joonwoo Park",
        "email": "joonwoop@codeaurora.org",
        "time": "Thu Aug 02 11:03:21 2012 -0700"
      },
      "committer": {
        "name": "Joonwoo Park",
        "email": "joonwoop@codeaurora.org",
        "time": "Fri Aug 17 11:45:23 2012 -0700"
      },
      "message": "msm: add adsp loader driver\n\nAdd ADSP loader driver to bring ADSP out of reset on demand.\nThe MSM platforms that use APRv2 driver requires separate driver to\nbring ADSP out of reset.\n\nChange-Id: I7d64b0336fac76e71078a3bec0795007ee989643\nSigned-off-by: Joonwoo Park \u003cjoonwoop@codeaurora.org\u003e\n"
    },
    {
      "commit": "184e4890a501e4e6744054c10031e259bdf1e21f",
      "tree": "5b608d4ea1717453eeb8598361093e70a045338f",
      "parents": [
        "aee1664cdb67dca6d5c4951c9aa6f5e4317df68b",
        "579709665713e9e71649ef2017b7f4b6c9a21896"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Fri Aug 17 09:28:54 2012 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Fri Aug 17 09:28:54 2012 -0700"
      },
      "message": "Merge changes I5bb403bc,I6da47d27,I23f538ff,Icde78b49 into msm-3.4\n\n* changes:\n  arm/dt: 8974: Specify the PON resin reset configuration\n  msm: qpnp-power-on: Use BARK interrupt for key reporting\n  arm/dt: msm8974: Add dts support for PON reset configuration\n  msm: qpnp-power-on: Add reset configuration support\n"
    },
    {
      "commit": "0e18cd08c21628e850887b66671835abcfa5d24e",
      "tree": "c74019f57f1720e6c87357e3314b97f666e85a66",
      "parents": [
        "05118ccc01e1790c72ffb9067f60704ffc9efbb4"
      ],
      "author": {
        "name": "Anirudh Ghayal",
        "email": "aghayal@codeaurora.org",
        "time": "Thu Aug 02 11:48:36 2012 +0530"
      },
      "committer": {
        "name": "Amy Maloche",
        "email": "amaloche@codeaurora.org",
        "time": "Thu Aug 16 16:09:04 2012 -0700"
      },
      "message": "msm: qpnp-power-on: Add reset configuration support\n\nThe PON module supports various reset sources (physical pins)\nsuch as KPDPWR, RESIN, RESIN+KPDPWR. These pins can be configured\nfor different reset types (such as warm, soft, hard) and can also\nbe used as push buttons (keys).\n\nIn the push-button configuration these pins act as gpios, only\nreporting the state on the line (high/low) and no additional\npon based configuration being done in the hardware or software.\nThey can be used for generic buttons (such as volume up/down,\ndirectional keys)\n\nChange-Id: Icde78b49b1037c1b5a13d7e90f772f72ac822b2a\nSigned-off-by: Anirudh Ghayal \u003caghayal@codeaurora.org\u003e\n"
    },
    {
      "commit": "5cda3c995f48cf04aaf8bce1a678d775c9f976f6",
      "tree": "7c82bf34668664d63c19582023f58e1d6ef34c6d",
      "parents": [
        "05c57a2d27f803da7fd7d96e26fafff840005633"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Tue Aug 14 18:23:59 2012 -0700"
      },
      "committer": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Tue Aug 14 18:24:51 2012 -0700"
      },
      "message": "gpio: qpnp-pin: Fix documentation for src-select binding\n\nThe documentation incorrectly specifies \u0027select\u0027 instead of\n\u0027src-select\u0027. Update this to be consistent with the driver.\n\nChange-Id: I90bffc26affdefa42192c7f10d4af80ad0340f7f\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "e46aca6f38aeb8e7a7c640f0e8a0a629fda7f9c7",
      "tree": "c9d9e43fcb0b7ef5c163dcad7f246619b8762783",
      "parents": [
        "14ee37df2a31a2fb56b02a45a30e550936d02a21",
        "5f6d1af0462b9072a2be6868ca73cfb4cb3524c1"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Sat Aug 11 14:29:43 2012 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Sat Aug 11 14:29:43 2012 -0700"
      },
      "message": "Merge \"coresight: device tree support for coresight drivers\" into msm-3.4"
    },
    {
      "commit": "5f6d1af0462b9072a2be6868ca73cfb4cb3524c1",
      "tree": "17319ced071c31baf3df5e1b123384e95dacddef",
      "parents": [
        "41f49afeb872b851e8b2f4e078d47903e65a47bf"
      ],
      "author": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Wed Jun 13 15:48:13 2012 -0700"
      },
      "committer": {
        "name": "Pratik Patel",
        "email": "pratikp@codeaurora.org",
        "time": "Fri Aug 10 20:06:25 2012 -0700"
      },
      "message": "coresight: device tree support for coresight drivers\n\nSupport for reading hardware data for CoreSight devices from device\ntree.\n\nChange-Id: I4d149991c89b458384465d163386084f500a4028\nSigned-off-by: Pratik Patel \u003cpratikp@codeaurora.org\u003e\n"
    },
    {
      "commit": "9328e4907972ff0b95dc9e2ccd4a47911940f4ae",
      "tree": "d451a14720302a27a2c5aad83581f27dfa14c706",
      "parents": [
        "16bc5cc386af0f9c6ff83f22381e8eb79b03ecd2"
      ],
      "author": {
        "name": "Michael Bohan",
        "email": "mbohan@codeaurora.org",
        "time": "Thu Aug 09 11:37:36 2012 -0700"
      },
      "committer": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Fri Aug 10 19:16:02 2012 -0700"
      },
      "message": "regulator: qpnp: Add property to override type registers\n\nOn some regulator hardware, the values read on SPMI offset 0x4 (type)\nand 0x5 (subtype) are incorrect. Add a new optional property called\nqcom,force-type that allows a user to override the hardware values\nwith values supplied in the Device Tree.\n\nChange-Id: Id73fe69873f5dc9d0f2623771872aa2eaddd66f1\nSigned-off-by: Michael Bohan \u003cmbohan@codeaurora.org\u003e\n"
    },
    {
      "commit": "16bc5cc386af0f9c6ff83f22381e8eb79b03ecd2",
      "tree": "08c96d563952a402cc0b1490497659fd890742a5",
      "parents": [
        "41f49afeb872b851e8b2f4e078d47903e65a47bf"
      ],
      "author": {
        "name": "Matt Wagantall",
        "email": "mattw@codeaurora.org",
        "time": "Thu Aug 09 21:33:23 2012 -0700"
      },
      "committer": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Fri Aug 10 19:16:01 2012 -0700"
      },
      "message": "msm: pil-q6v5-mss: Clear modem subsystem IO clamps prior to resetting Q6\n\nInterfacing with some modem subsystem peripherals is not possible\nunless the UNCLAMP_ALL bit is set in MSS_CLAMP_IO register. Set\nthis bit accordingly.\n\nChange-Id: I5685383c506b0bcb89d6b6f808021512079cc607\nSigned-off-by: Matt Wagantall \u003cmattw@codeaurora.org\u003e\n"
    },
    {
      "commit": "962ebc8ecad1eb59dfce3fa782edf47049a0390b",
      "tree": "af97718d3cab1f9eb38a9b19caba5aacc8d7e894",
      "parents": [
        "28148a5a8327a98d2726ede4e223a90dc23ab679",
        "725f849ff6e273e8bf5b818fdf53cee5290717af"
      ],
      "author": {
        "name": "Linux Build Service Account",
        "email": "lnxbuild@localhost",
        "time": "Fri Aug 10 15:14:46 2012 -0700"
      },
      "committer": {
        "name": "QuIC Gerrit Code Review",
        "email": "code-review@localhost",
        "time": "Fri Aug 10 15:14:46 2012 -0700"
      },
      "message": "Merge \"msm: wcd9xxx: add device tree support for codec slimbus component\" into msm-3.4"
    },
    {
      "commit": "b1cc493ae3745e18c025cddc51775c4ae8763751",
      "tree": "9a29148d118c822f398497f731f08baa5c5cdf60",
      "parents": [
        "f1e82321db2e074e517a1192031a80060dddffc9"
      ],
      "author": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Mon Jul 23 21:30:11 2012 -0700"
      },
      "committer": {
        "name": "Rohit Vaswani",
        "email": "rvaswani@codeaurora.org",
        "time": "Fri Aug 10 10:54:51 2012 -0700"
      },
      "message": "gpio: msm: Make msmgpio a platform device\n\nThe gpio driver was not a true platform driver and hence wasn\u0027t\nsupported by device tree. This patch fixes that for non-DT targets\nby making sure the device gets added early on during board init.\nFor DT-targets, adding the gpio-controller property for the device\nmakes sure the msmgpio device gets probed.\nThis change is done for all TLMM_v2 targets (msm8660 and future)\nTLMM_V1 targets remain unaffected.\n\nChange-Id: I8a55ab1e2af0366b3e6893b334ba2396d2a83190\nSigned-off-by: Rohit Vaswani \u003crvaswani@codeaurora.org\u003e\n"
    },
    {
      "commit": "02f5c5d768faf0417b6801a1bfebc866a6db7878",
      "tree": "3301f564e076698565cec668512a51c193ea6966",
      "parents": [
        "664634f8a03e721a7fffb5f1e21cbdd806598cda"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Tue Jun 05 11:15:50 2012 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Aug 09 08:31:37 2012 -0700"
      },
      "message": "stable: update references to older 2.6 versions for 3.x\n\ncommit 2584f5212d97b664be250ad5700a2d0fee31a10d upstream.\n\nAlso add information on where the respective trees are.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nAcked-by: Rob Landley \u003crob@landley.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "2830f9a08c084bcf40819942f04d0ca500faf4b8",
      "tree": "968ba4a92907c410518ef4b37a4d289030b887c4",
      "parents": [
        "22dacbd152e98dfd627664f5ee3c21d2bd32430b"
      ],
      "author": {
        "name": "David Henningsson",
        "email": "david.henningsson@canonical.com",
        "time": "Fri Jul 20 10:37:25 2012 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Aug 09 08:31:29 2012 -0700"
      },
      "message": "ALSA: hda - add dock support for Thinkpad X230 Tablet\n\ncommit 108cc108a3bb42fe4705df1317ff98e1e29428a6 upstream.\n\nAlso add a model/fixup string \"lenovo-dock\", so that other Thinkpad\nusers will be able to test this fixup easily, to see if it enables\ndock I/O for them as well.\n\nBugLink: https://bugs.launchpad.net/bugs/1026953\nTested-by: John McCarron \u003cjohn.mccarron@canonical.com\u003e\nSigned-off-by: David Henningsson \u003cdavid.henningsson@canonical.com\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "725f849ff6e273e8bf5b818fdf53cee5290717af",
      "tree": "52b8ce10a3fff5fde270d8c5919be2e3cba770e6",
      "parents": [
        "eb36ee3ea23a4cfc0bbf7289104bff881c516000"
      ],
      "author": {
        "name": "Kiran Kandi",
        "email": "kkandi@codeaurora.org",
        "time": "Mon Aug 06 13:45:16 2012 -0700"
      },
      "committer": {
        "name": "Kiran Kandi",
        "email": "kkandi@codeaurora.org",
        "time": "Wed Aug 08 09:54:15 2012 -0700"
      },
      "message": "msm: wcd9xxx: add device tree support for codec slimbus component\n\nRead the codec specific data from device tree instead of board file.\n\nChange-Id: Iad382b89692903d2434b63d34c7121fe0b4b9dda\nSigned-off-by: Kiran Kandi \u003ckkandi@codeaurora.org\u003e\n"
    }
  ],
  "next": "a5588d347934b94b965a04334b0f7ce02ec1e9d0"
}
