{"push_id":2500607140,"size":13,"distinct_size":13,"ref":"refs/heads/master","head":"233b6f1810de58619296354276170fbbf61b82ad","before":"957866da9af9d5ea0019c55a51a472939022f5f9","commits":[{"sha":"ac777543d8cb8eafaefe3a00eb328ae37ab76aad","author":{"name":"Francisco Franco","email":"42480b5f4d505650064e5081b85d867a03559887@gmail.com"},"message":"proc: much faster /proc/vmstat\n\nEvery current KDE system has process named ksysguardd polling files\nbelow once in several seconds:\n\n\t$ strace -e trace=open -p $(pidof ksysguardd)\n\tProcess 1812 attached\n\topen(\"/etc/mtab\", O_RDONLY|O_CLOEXEC)   = 8\n\topen(\"/etc/mtab\", O_RDONLY|O_CLOEXEC)   = 8\n\topen(\"/proc/net/dev\", O_RDONLY)         = 8\n\topen(\"/proc/net/wireless\", O_RDONLY)    = -1 ENOENT (No such file or directory)\n\topen(\"/proc/stat\", O_RDONLY)            = 8\n\topen(\"/proc/vmstat\", O_RDONLY)          = 8\n\nHell knows what it is doing but speed up reading /proc/vmstat by 33%!\n\nBenchmark is open+read+close 1.000.000 times.\n\n\t\t\tBEFORE\n$ perf stat -r 10 taskset -c 3 ./proc-vmstat\n\n Performance counter stats for 'taskset -c 3 ./proc-vmstat' (10 runs):\n\n      13146.768464      task-clock (msec)         #    0.960 CPUs utilized            ( +-  0.60% )\n                15      context-switches          #    0.001 K/sec                    ( +-  1.41% )\n                 1      cpu-migrations            #    0.000 K/sec                    ( +- 11.11% )\n               104      page-faults               #    0.008 K/sec                    ( +-  0.57% )\n    45,489,799,349      cycles                    #    3.460 GHz                      ( +-  0.03% )\n     9,970,175,743      stalled-cycles-frontend   #   21.92% frontend cycles idle     ( +-  0.10% )\n     2,800,298,015      stalled-cycles-backend    #   6.16% backend cycles idle       ( +-  0.32% )\n    79,241,190,850      instructions              #    1.74  insn per cycle\n                                                  #    0.13  stalled cycles per insn  ( +-  0.00% )\n    17,616,096,146      branches                  # 1339.956 M/sec                    ( +-  0.00% )\n       176,106,232      branch-misses             #    1.00% of all branches          ( +-  0.18% )\n\n      13.691078109 seconds time elapsed                                          ( +-  0.03% )\n      ^^^^^^^^^^^^\n\n\t\t\tAFTER\n$ perf stat -r 10 taskset -c 3 ./proc-vmstat\n\n Performance counter stats for 'taskset -c 3 ./proc-vmstat' (10 runs):\n\n       8688.353749      task-clock (msec)         #    0.950 CPUs utilized            ( +-  1.25% )\n                10      context-switches          #    0.001 K/sec                    ( +-  2.13% )\n                 1      cpu-migrations            #    0.000 K/sec\n               104      page-faults               #    0.012 K/sec                    ( +-  0.56% )\n    30,384,010,730      cycles                    #    3.497 GHz                      ( +-  0.07% )\n    12,296,259,407      stalled-cycles-frontend   #   40.47% frontend cycles idle     ( +-  0.13% )\n     3,370,668,651      stalled-cycles-backend    #  11.09% backend cycles idle       ( +-  0.69% )\n    28,969,052,879      instructions              #    0.95  insn per cycle\n                                                  #    0.42  stalled cycles per insn  ( +-  0.01% )\n     6,308,245,891      branches                  #  726.058 M/sec                    ( +-  0.00% )\n       214,685,502      branch-misses             #    3.40% of all branches          ( +-  0.26% )\n\n       9.146081052 seconds time elapsed                                          ( +-  0.07% )\n       ^^^^^^^^^^^\n\nvsnprintf() is slow because:\n\n1. format_decode() is busy looking for format specifier: 2 branches\n   per character (not in this case, but in others)\n\n2. approximately million branches while parsing format mini language\n   and everywhere\n\n3.  just look at what string() does /proc/vmstat is good case because\n   most of its content are strings\n\nLink: http://lkml.kernel.org/r/20160806125455.GA1187@p183.telecom.by","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/ac777543d8cb8eafaefe3a00eb328ae37ab76aad"},{"sha":"c8ec56081c09b3a26da9e9bd8c792317b6709bc6","author":{"name":"franciscofranco","email":"42480b5f4d505650064e5081b85d867a03559887@gmail.com"},"message":"Optimized Task-Search for upto 6% increase in Performance\n\nSigned-off-by: GuneetAtwal <guneetatwal@gmail.com>","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/c8ec56081c09b3a26da9e9bd8c792317b6709bc6"},{"sha":"0bc0329b1740b651e20b6baf6e9a81f54425c824","author":{"name":"Paul Reioux","email":"c208d1ecece4e5ef2e4fb72f0546c69cdce89063@gmail.com"},"message":"vnswap: integrate vnswap from Samsung\n\nSigned-off-by: Paul Reioux <reioux@gmail.com>\n\nConflicts:\n\tdrivers/staging/Kconfig\n\tdrivers/staging/Makefile\n\nSigned-off-by: MOVZX <movzx@yahoo.com>","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/0bc0329b1740b651e20b6baf6e9a81f54425c824"},{"sha":"b345a890f5c8e981331cd9465b9c59d55a3f3316","author":{"name":"Zhao Xuewen","email":"d92a868c902d95bade1f7b266c8f249fea841194@huawei.com"},"message":"power:qpnp-charger: extended charge time from 30s to 100s when battery status is near to full\n\nWhen charger is online for a long time, such as 12 hour, the battery status changes from charging to full and resumes charging.\nThe reason is that battery is not full at the first full state. So increse charge time from 30s to 100s when battery status is\nnear to full. This methods will reduce the number of recharging times\n\nBUG:24316771\nSigned-off-by: l00228880 <l00228880@notesmail.huawei.com>\nSigned-off-by: engstk <eng.stk@sapo.pt>","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/b345a890f5c8e981331cd9465b9c59d55a3f3316"},{"sha":"ab2ac803cb8e0b7b3a72ee504a0ec5b7bc5e632a","author":{"name":"Anoop Kumar","email":"1d54b5e766e43de0e6d0e22937563c54e77ee55a@gmail.com"},"message":"Reduced RQ Lock-Contention for upto 0.7% increase in Performance\nfranciscofranco","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/ab2ac803cb8e0b7b3a72ee504a0ec5b7bc5e632a"},{"sha":"7c1286efb7328b3dce1913b8257b136b77ca2325","author":{"name":"Anoop Kumar","email":"1d54b5e766e43de0e6d0e22937563c54e77ee55a@gmail.com"},"message":"Optimized Console FrameBuffer for upto 70% increase in Performance\nhglm","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/7c1286efb7328b3dce1913b8257b136b77ca2325"},{"sha":"a5ab1438da99832c3b1007c22f9b35b51469801a","author":{"name":"Anoop Kumar","email":"1d54b5e766e43de0e6d0e22937563c54e77ee55a@gmail.com"},"message":"Reduced WakeLocks\n flar2","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/a5ab1438da99832c3b1007c22f9b35b51469801a"},{"sha":"f0fcc21735714cf729fe1a615719c9059fc1b517","author":{"name":"Joe Maples","email":"16a9a54ddf4259952e3c118c763138e83693d7fd@frap129.org"},"message":"arm64: Add NOHZ\n\nSigned-off-by: Joe Maples <joe@frap129.org>\nSigned-off-by: Albert I <krascgq@outlook.co.id>","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/f0fcc21735714cf729fe1a615719c9059fc1b517"},{"sha":"10896ead62b6d9b187507129031c6184bc2722d6","author":{"name":"kairi_zeroblade","email":"37ba40ebb4c2fec53d701637b0c085f84a9a8dce@gmail.com"},"message":"Tune-up for Cortex A53/ARMv8 architecture\n\nSigned-off-by: Albert I <krascgq@outlook.co.id>","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/10896ead62b6d9b187507129031c6184bc2722d6"},{"sha":"3bb31cc96dabbeec9f0911b179c9b186731316c1","author":{"name":"Pranav Vashi","email":"d688953a19dcb476c5fb90e6abba87f77b09be65@gmail.com"},"message":"msm: thermal: Add sysfs nodes to control parameters\n\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\nSigned-off-by: khanfrd <khanfrd94@gmail.com>","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/3bb31cc96dabbeec9f0911b179c9b186731316c1"},{"sha":"620584c75d78735d62af4333d7063d16dbb7d0df","author":{"name":"James Christopher Adduono","email":"f9ae8604de015e6fc12a1ebdbe72f262b981a2f6@adduono.com"},"message":"proc: Set androidboot.verifiedbootstate=green\n\nChange-Id: I584e0de8f5602eb2631390b47c8916fa22c50375\nSigned-off-by: Albert I <krascgq@outlook.co.id>","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/620584c75d78735d62af4333d7063d16dbb7d0df"},{"sha":"94a65216a269f51b5aa0147a90d1ce4d155820c0","author":{"name":"Mohammadsa","email":"dce9943b3f73e594d173b579dea005f3d5d3ce29@yahoo.com"},"message":"Added fsync on/off support.\nby franciscofranco","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/94a65216a269f51b5aa0147a90d1ce4d155820c0"},{"sha":"233b6f1810de58619296354276170fbbf61b82ad","author":{"name":"Mohammadsa","email":"dce9943b3f73e594d173b579dea005f3d5d3ce29@yahoo.com"},"message":"fs: pstore: Add last kmsg support","distinct":true,"url":"https://api.github.com/repos/TheOTO/Astral-Kernel/commits/233b6f1810de58619296354276170fbbf61b82ad"}]}
{"actor":{"display_login":"TheOTO"}}