)]}'
{"id":"LineageOS%2Fandroid_kernel_lenovo_msm8976~221732","triplet_id":"LineageOS%2Fandroid_kernel_lenovo_msm8976~lineage-15.1~I235fcc0d8d18ba20d9ba189a7d2f2c85838c0bfe","project":"LineageOS/android_kernel_lenovo_msm8976","branch":"lineage-15.1","topic":"YTX703","hashtags":[],"change_id":"I235fcc0d8d18ba20d9ba189a7d2f2c85838c0bfe","subject":"block: introduce the BFQ-v7r8 I/O sched for 3.10.8+","status":"MERGED","created":"2018-07-27 06:05:15.000000000","updated":"2018-08-15 19:13:01.000000000","submitted":"2018-08-15 19:13:01.000000000","submitter":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"221735-1534360381247-74609c89","meta_rev_id":"9aebdff11dfa9c139a9f542f1e6e0c02e7f93ebf","_number":221732,"virtual_id_number":221732,"owner":{"_account_id":8752,"name":"Hamsi2k","email":"Hamsi2k@freenet.de","username":"Quallenauge","avatars":[{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"actions":{},"labels":{"Verified":{"approved":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"all":[{"value":1,"date":"2018-08-15 19:12:21.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Code-Review":{"approved":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"all":[{"value":2,"date":"2018-08-15 19:12:21.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]}],"values":{"-2":"Do not submit","-1":"I would prefer that you didn\u0027t submit this"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"description":"","default_value":0},"CI":{"all":[{"value":0,"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]}],"values":{"-1":"Fail"," 0":"No score","+1":"Pass"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2018-07-27 06:58:30.000000000","updated_by":{"_account_id":8752,"name":"Hamsi2k","email":"Hamsi2k@freenet.de","username":"Quallenauge","avatars":[{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"reviewer":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"state":"REVIEWER"}],"messages":[{"id":"d77db2504f67f2a9f1c10dd02c0d527085f4eb8a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":8752,"name":"Hamsi2k","email":"Hamsi2k@freenet.de","username":"Quallenauge","avatars":[{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"date":"2018-07-27 06:05:15.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"bcbc4d72089a7b7f94f358d40cb45d6ed6c21e8a","tag":"autogenerated:gerrit:setTopic","author":{"_account_id":8752,"name":"Hamsi2k","email":"Hamsi2k@freenet.de","username":"Quallenauge","avatars":[{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"date":"2018-07-27 06:06:22.000000000","message":"Topic set to YTX703","accounts_in_message":[],"_revision_number":1},{"id":"64a5895338f7645ef4840728d76952af2aafd0ad","author":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"date":"2018-07-29 13:28:17.000000000","message":"Patch Set 1:\n\nWhile BFQ is technically whitelisted by the charter (https://review.lineageos.org/c/LineageOS/charter/+/216671/7/device-support-requirements.md#211), I\u0027d be hard-pressed to approve/merge this, since:\n* it doesn\u0027t fix anything\n* it doesn\u0027t appear to improve anything\n\nAs discussed in the benchmark scores posted here: https://github.com/Lenovo-YTX703-Devel/android_kernel_lenovo_msm8976/pull/16","accounts_in_message":[],"_revision_number":1},{"id":"a32bb5a40126a9503e384b2dbd90bcaac23551f2","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"date":"2018-08-15 19:11:21.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.","accounts_in_message":[],"_revision_number":2},{"id":"a4f56e319a597b507de5fbad24030f038b712c0f","author":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"date":"2018-08-15 19:12:21.000000000","message":"Patch Set 2: Verified+1 Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"9aebdff11dfa9c139a9f542f1e6e0c02e7f93ebf","tag":"autogenerated:gerrit:merged","author":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"date":"2018-08-15 19:13:01.000000000","message":"Change has been successfully merged by Vladimir Oltean","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"89a8bd223c0745c44630f1a06bfde1be2ad654c5","revisions":{"cf61902f4a04c1caa58f7606e19a6859be113665":{"kind":"REWORK","_number":1,"created":"2018-07-27 06:05:15.000000000","uploader":{"_account_id":8752,"name":"Hamsi2k","email":"Hamsi2k@freenet.de","username":"Quallenauge","avatars":[{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d39213ca7cccdb2601981feba132202f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"ref":"refs/changes/32/221732/1","fetch":{"anonymous http":{"url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976","ref":"refs/changes/32/221732/1","commands":{"Branch":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/1 \u0026\u0026 git checkout -b change-221732 FETCH_HEAD","Checkout":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/1","Reset To":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/1 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"2f19def70e7ed16d5e72b8c9b25d51693c13095e","subject":"DTS: LENOVO: reverse functions of \"volume up\" GPIO and \"volume down\" power-on keys","web_links":[{"name":"GitHub","tooltip":"Open in GitWeb","url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976/commit/2f19def70e7ed16d5e72b8c9b25d51693c13095e"}]}],"author":{"name":"Paolo Valente","email":"paolo.valente@unimore.it","date":"2013-05-09 17:10:02.000000000","tz":120},"committer":{"name":"Quallenauge","email":"Hamsi2k@freenet.de","date":"2018-07-27 05:54:08.000000000","tz":120},"subject":"block: introduce the BFQ-v7r8 I/O sched for 3.10.8+","message":"block: introduce the BFQ-v7r8 I/O sched for 3.10.8+\n\nAdd the BFQ-v7r8 I/O scheduler to 3.10.8+.\nThe general structure is borrowed from CFQ, as much of the code for\nhandling I/O contexts Over time, several useful features have been\nported from CFQ as well (details in the changelog in README.BFQ). A\n(bfq_)queue is associated to each task doing I/O on a device, and each\ntime a scheduling decision has to be made a queue is selected and served\nuntil it expires.\n\n    - Slices are given in the service domain: tasks are assigned\n      budgets, measured in number of sectors. Once got the disk, a task\n      must however consume its assigned budget within a configurable\n      maximum time (by default, the maximum possible value of the\n      budgets is automatically computed to comply with this timeout).\n      This allows the desired latency vs \"throughput boosting\" tradeoff\n      to be set.\n\n    - Budgets are scheduled according to a variant of WF2Q+, implemented\n      using an augmented rb-tree to take eligibility into account while\n      preserving an O(log N) overall complexity.\n\n    - A low-latency tunable is provided; if enabled, both interactive\n      and soft real-time applications are guaranteed a very low latency.\n\n    - Latency guarantees are preserved also in the presence of NCQ.\n\n    - Also with flash-based devices, a high throughput is achieved\n      while still preserving latency guarantees.\n\n    - BFQ features Early Queue Merge (EQM), a sort of fusion of the\n      cooperating-queue-merging and the preemption mechanisms present\n      in CFQ. EQM is in fact a unified mechanism that tries to get a\n      sequential read pattern, and hence a high throughput, with any\n      set of processes performing interleaved I/O over a contiguous\n      sequence of sectors.\n\n    - BFQ supports full hierarchical scheduling, exporting a cgroups\n      interface.  Since each node has a full scheduler, each group can\n      be assigned its own weight.\n\n    - If the cgroups interface is not used, only I/O priorities can be\n      assigned to processes, with ioprio values mapped to weights\n      with the relation weight \u003d IOPRIO_BE_NR - ioprio.\n\n    - ioprio classes are served in strict priority order, i.e., lower\n      priority queues are not served as long as there are higher\n      priority queues.  Among queues in the same class the bandwidth is\n      distributed in proportion to the weight of each queue. A very\n      thin extra bandwidth is however guaranteed to the Idle class, to\n      prevent it from starving.\n\nChange-Id: I235fcc0d8d18ba20d9ba189a7d2f2c85838c0bfe\nSigned-off-by: Paolo Valente \u003cpaolo.valente@unimore.it\u003e\n","web_links":[{"name":"GitHub","tooltip":"Open in GitWeb","url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976/commit/cf61902f4a04c1caa58f7606e19a6859be113665"}],"resolve_conflicts_web_links":[{"name":"GitHub","tooltip":"Open in GitWeb","url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976/commit/cf61902f4a04c1caa58f7606e19a6859be113665"}]},"branch":"refs/heads/lineage-15.1"},"89a8bd223c0745c44630f1a06bfde1be2ad654c5":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2018-08-15 19:11:21.000000000","uploader":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"ref":"refs/changes/32/221732/2","fetch":{"anonymous http":{"url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976","ref":"refs/changes/32/221732/2","commands":{"Branch":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/2 \u0026\u0026 git checkout -b change-221732 FETCH_HEAD","Checkout":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/2","Reset To":"git fetch https://github.com/LineageOS/android_kernel_lenovo_msm8976 refs/changes/32/221732/2 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"953a0f35fe9c9129df05f8372b7a12b39a0baf25","subject":"drivers: soc: qcom: system_stats: Support for System stats","web_links":[{"name":"GitHub","tooltip":"Open in GitWeb","url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976/commit/953a0f35fe9c9129df05f8372b7a12b39a0baf25"}]}],"author":{"name":"Paolo Valente","email":"paolo.valente@unimore.it","date":"2013-05-09 17:10:02.000000000","tz":120},"committer":{"name":"Vladimir Oltean","email":"olteanv@gmail.com","date":"2018-08-15 19:01:49.000000000","tz":180},"subject":"block: introduce the BFQ-v7r8 I/O sched for 3.10.8+","message":"block: introduce the BFQ-v7r8 I/O sched for 3.10.8+\n\nAdd the BFQ-v7r8 I/O scheduler to 3.10.8+.\nThe general structure is borrowed from CFQ, as much of the code for\nhandling I/O contexts Over time, several useful features have been\nported from CFQ as well (details in the changelog in README.BFQ). A\n(bfq_)queue is associated to each task doing I/O on a device, and each\ntime a scheduling decision has to be made a queue is selected and served\nuntil it expires.\n\n    - Slices are given in the service domain: tasks are assigned\n      budgets, measured in number of sectors. Once got the disk, a task\n      must however consume its assigned budget within a configurable\n      maximum time (by default, the maximum possible value of the\n      budgets is automatically computed to comply with this timeout).\n      This allows the desired latency vs \"throughput boosting\" tradeoff\n      to be set.\n\n    - Budgets are scheduled according to a variant of WF2Q+, implemented\n      using an augmented rb-tree to take eligibility into account while\n      preserving an O(log N) overall complexity.\n\n    - A low-latency tunable is provided; if enabled, both interactive\n      and soft real-time applications are guaranteed a very low latency.\n\n    - Latency guarantees are preserved also in the presence of NCQ.\n\n    - Also with flash-based devices, a high throughput is achieved\n      while still preserving latency guarantees.\n\n    - BFQ features Early Queue Merge (EQM), a sort of fusion of the\n      cooperating-queue-merging and the preemption mechanisms present\n      in CFQ. EQM is in fact a unified mechanism that tries to get a\n      sequential read pattern, and hence a high throughput, with any\n      set of processes performing interleaved I/O over a contiguous\n      sequence of sectors.\n\n    - BFQ supports full hierarchical scheduling, exporting a cgroups\n      interface.  Since each node has a full scheduler, each group can\n      be assigned its own weight.\n\n    - If the cgroups interface is not used, only I/O priorities can be\n      assigned to processes, with ioprio values mapped to weights\n      with the relation weight \u003d IOPRIO_BE_NR - ioprio.\n\n    - ioprio classes are served in strict priority order, i.e., lower\n      priority queues are not served as long as there are higher\n      priority queues.  Among queues in the same class the bandwidth is\n      distributed in proportion to the weight of each queue. A very\n      thin extra bandwidth is however guaranteed to the Idle class, to\n      prevent it from starving.\n\nChange-Id: I235fcc0d8d18ba20d9ba189a7d2f2c85838c0bfe\nSigned-off-by: Paolo Valente \u003cpaolo.valente@unimore.it\u003e\n","web_links":[{"name":"GitHub","tooltip":"Open in GitWeb","url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976/commit/89a8bd223c0745c44630f1a06bfde1be2ad654c5"}],"resolve_conflicts_web_links":[{"name":"GitHub","tooltip":"Open in GitWeb","url":"https://github.com/LineageOS/android_kernel_lenovo_msm8976/commit/89a8bd223c0745c44630f1a06bfde1be2ad654c5"}]},"branch":"refs/heads/lineage-15.1"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":18924,"name":"Vladimir Oltean","email":"olteanv@gmail.com","username":"vladimiroltean","avatars":[{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/5dd9b03fa48e3f7b07af82dec896b5c1.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}}]}
