{"push_id":2650371587,"size":26,"distinct_size":1,"ref":"refs/heads/aosp-common/android-4.4-o","head":"ae6cbedde0ad06d07530651cf89552c8deaeb606","before":"41eab3786acfd6fed60713ed601ff64586d6ff68","commits":[{"sha":"d1e6f6d18c80627415b399572c93e5ac5429f254","author":{"name":"yu-cheng yu","email":"0258cbd15551af162900472cd41bbac0f7440882@intel.com"},"message":"x86/fpu: Fix early FPU command-line parsing\n\ncommit 4f81cbafcce2c603db7865e9d0e461f7947d77d4 upstream.\n\nThe function fpu__init_system() is executed before\nparse_early_param(). This causes wrong FPU configuration. This\npatch fixes this issue by parsing boot_command_line in the\nbeginning of fpu__init_system().\n\nWith all four patches in this series, each parameter disables\nfeatures as the following:\n\neagerfpu=off: eagerfpu, avx, avx2, avx512, mpx\nno387: fpu\nnofxsr: fxsr, fxsropt, xmm\nnoxsave: xsave, xsaveopt, xsaves, xsavec, avx, avx2, avx512,\nmpx, xgetbv1 noxsaveopt: xsaveopt\nnoxsaves: xsaves\n\nSigned-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Borislav Petkov <bp@suse.de>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Ravi V. Shankar <ravi.v.shankar@intel.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: yu-cheng yu <yu-cheng.yu@intel.com>\nLink: http://lkml.kernel.org/r/1452119094-7252-2-git-send-email-yu-cheng.yu@intel.com\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/d1e6f6d18c80627415b399572c93e5ac5429f254"},{"sha":"3de8b83b0d02a32ae5315d56a258bc18058c6797","author":{"name":"Juergen Gross","email":"29bbaec13092d36559e3abc6f27f7d09c395819f@suse.com"},"message":"x86: Remove unused function cpu_has_ht_siblings()\n\ncommit ed29210cd6a67425026e78aa298fa434e11a74e3 upstream.\n\nIt is used nowhere.\n\nSigned-off-by: Juergen Gross <jgross@suse.com>\nLink: http://lkml.kernel.org/r/1447761943-770-1-git-send-email-jgross@suse.com\nSigned-off-by: Thomas Gleixner <tglx@linutronix.de>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/3de8b83b0d02a32ae5315d56a258bc18058c6797"},{"sha":"082efbb0481166d69ddd53c661153cf8d636910b","author":{"name":"Borislav Petkov","email":"0691a664b24b6f15b20cd5aee64b72271db08be1@suse.de"},"message":"x86/cpufeature: Remove unused and seldomly used cpu_has_xx macros\n\ncommit 362f924b64ba0f4be2ee0cb697690c33d40be721 upstream.\n\nThose are stupid and code should use static_cpu_has_safe() or\nboot_cpu_has() instead. Kill the least used and unused ones.\n\nThe remaining ones need more careful inspection before a conversion can\nhappen. On the TODO.\n\nSigned-off-by: Borislav Petkov <bp@suse.de>\nLink: http://lkml.kernel.org/r/1449481182-27541-4-git-send-email-bp@alien8.de\nCc: David Sterba <dsterba@suse.com>\nCc: Herbert Xu <herbert@gondor.apana.org.au>\nCc: Peter Zijlstra <a.p.zijlstra@chello.nl>\nCc: Matt Mackall <mpm@selenic.com>\nCc: Chris Mason <clm@fb.com>\nCc: Josef Bacik <jbacik@fb.com>\nSigned-off-by: Thomas Gleixner <tglx@linutronix.de>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/082efbb0481166d69ddd53c661153cf8d636910b"},{"sha":"63b20af859e04863e8fd96f3a691882271782bab","author":{"name":"yu-cheng yu","email":"0258cbd15551af162900472cd41bbac0f7440882@intel.com"},"message":"x86/fpu: Disable MPX when eagerfpu is off\n\ncommit a5fe93a549c54838063d2952dd9643b0b18aa67f upstream.\n\nThis issue is a fallout from the command-line parsing move.\n\nWhen \"eagerfpu=off\" is given as a command-line input, the kernel\nshould disable MPX support. The decision for turning off MPX was\nmade in fpu__init_system_ctx_switch(), which is after the\nselection of the XSAVE format. This patch fixes it by getting\nthat decision done earlier in fpu__init_system_xstate().\n\nSigned-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Borislav Petkov <bp@suse.de>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Ravi V. Shankar <ravi.v.shankar@intel.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: yu-cheng yu <yu-cheng.yu@intel.com>\nLink: http://lkml.kernel.org/r/1452119094-7252-4-git-send-email-yu-cheng.yu@intel.com\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/63b20af859e04863e8fd96f3a691882271782bab"},{"sha":"747fd4e679fc692448b80c627b46517e841afee3","author":{"name":"yu-cheng yu","email":"0258cbd15551af162900472cd41bbac0f7440882@intel.com"},"message":"x86/fpu: Disable AVX when eagerfpu is off\n\ncommit 394db20ca240741a08d472173db13d6f6a6e5a28 upstream.\n\nWhen \"eagerfpu=off\" is given as a command-line input, the kernel\nshould disable AVX support.\n\nThe Task Switched bit used for lazy context switching does not\nsupport AVX. If AVX is enabled without eagerfpu context\nswitching, one task's AVX state could become corrupted or leak\nto other tasks. This is a bug and has bad security implications.\n\nThis only affects systems that have AVX/AVX2/AVX512 and this\nissue will be found only when one actually uses AVX/AVX2/AVX512\n_AND_ does eagerfpu=off.\n\nReference: Intel Software Developer's Manual Vol. 3A\n\nSec. 2.5 Control Registers:\nTS Task Switched bit (bit 3 of CR0) -- Allows the saving of the\nx87 FPU/ MMX/SSE/SSE2/SSE3/SSSE3/SSE4 context on a task switch\nto be delayed until an x87 FPU/MMX/SSE/SSE2/SSE3/SSSE3/SSE4\ninstruction is actually executed by the new task.\n\nSec. 13.4.1 Using the TS Flag to Control the Saving of the X87\nFPU and SSE State\nWhen the TS flag is set, the processor monitors the instruction\nstream for x87 FPU, MMX, SSE instructions. When the processor\ndetects one of these instructions, it raises a\ndevice-not-available exeception (#NM) prior to executing the\ninstruction.\n\nSigned-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Borislav Petkov <bp@suse.de>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Ravi V. Shankar <ravi.v.shankar@intel.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: yu-cheng yu <yu-cheng.yu@intel.com>\nLink: http://lkml.kernel.org/r/1452119094-7252-5-git-send-email-yu-cheng.yu@intel.com\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/747fd4e679fc692448b80c627b46517e841afee3"},{"sha":"1d9af7dc0cd4d46bc34ac8656373188d8991f13c","author":{"name":"Andy Lutomirski","email":"2cc0d0d76de2e6f37b92deeb83c85cb306fc5dc1@kernel.org"},"message":"x86/fpu: Default eagerfpu=on on all CPUs\n\ncommit 58122bf1d856a4ea9581d62a07c557d997d46a19 upstream.\n\nWe have eager and lazy FPU modes, introduced in:\n\n  304bceda6a18 (\"x86, fpu: use non-lazy fpu restore for processors supporting xsave\")\n\nThe result is rather messy.  There are two code paths in almost all\nof the FPU code, and only one of them (the eager case) is tested\nfrequently, since most kernel developers have new enough hardware\nthat we use eagerfpu.\n\nIt seems that, on any remotely recent hardware, eagerfpu is a win:\nglibc uses SSE2, so laziness is probably overoptimistic, and, in any\ncase, manipulating TS is far slower that saving and restoring the\nfull state.  (Stores to CR0.TS are serializing and are poorly\noptimized.)\n\nTo try to shake out any latent issues on old hardware, this changes\nthe default to eager on all CPUs.  If no performance or functionality\nproblems show up, a subsequent patch could remove lazy mode entirely.\n\nSigned-off-by: Andy Lutomirski <luto@kernel.org>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Rik van Riel <riel@redhat.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: yu-cheng yu <yu-cheng.yu@intel.com>\nLink: http://lkml.kernel.org/r/ac290de61bf08d9cfc2664a4f5080257ffc1075a.1453675014.git.luto@kernel.org\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/1d9af7dc0cd4d46bc34ac8656373188d8991f13c"},{"sha":"0e005aa5597ca9759954ea8131fe139f2f53c1f6","author":{"name":"Andy Lutomirski","email":"2cc0d0d76de2e6f37b92deeb83c85cb306fc5dc1@kernel.org"},"message":"x86/fpu: Fix 'no387' regression\n\ncommit f363938c70a04e6bc99023a5e0c44ef7879b903f upstream.\n\nAfter fixing FPU option parsing, we now parse the 'no387' boot option\ntoo early: no387 clears X86_FEATURE_FPU before it's even probed, so\nthe boot CPU promptly re-enables it.\n\nI suspect it gets even more confused on SMP.\n\nFix the probing code to leave X86_FEATURE_FPU off if it's been\ndisabled by setup_clear_cpu_cap().\n\nSigned-off-by: Andy Lutomirski <luto@kernel.org>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Brian Gerst <brgerst@gmail.com>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Denys Vlasenko <dvlasenk@redhat.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: yu-cheng yu <yu-cheng.yu@intel.com>\nFixes: 4f81cbafcce2 (\"x86/fpu: Fix early FPU command-line parsing\")\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/0e005aa5597ca9759954ea8131fe139f2f53c1f6"},{"sha":"93deddfd9b249d7fe5daf5eee59b071ecd333b8d","author":{"name":"Yu-cheng Yu","email":"0258cbd15551af162900472cd41bbac0f7440882@intel.com"},"message":"x86/fpu: Revert (\"x86/fpu: Disable AVX when eagerfpu is off\")\n\ncommit a65050c6f17e52442716138d48d0a47301a8344b upstream.\n\nLeonid Shatz noticed that the SDM interpretation of the following\nrecent commit:\n\n  394db20ca240741 (\"x86/fpu: Disable AVX when eagerfpu is off\")\n\n... is incorrect and that the original behavior of the FPU code was correct.\n\nBecause AVX is not stated in CR0 TS bit description, it was mistakenly\nbelieved to be not supported for lazy context switch. This turns out\nto be false:\n\n  Intel Software Developer's Manual Vol. 3A, Sec. 2.5 Control Registers:\n\n   'TS Task Switched bit (bit 3 of CR0) -- Allows the saving of the x87 FPU/\n    MMX/SSE/SSE2/SSE3/SSSE3/SSE4 context on a task switch to be delayed until\n    an x87 FPU/MMX/SSE/SSE2/SSE3/SSSE3/SSE4 instruction is actually executed\n    by the new task.'\n\n  Intel Software Developer's Manual Vol. 2A, Sec. 2.4 Instruction Exception\n  Specification:\n\n   'AVX instructions refer to exceptions by classes that include #NM\n    \"Device Not Available\" exception for lazy context switch.'\n\nSo revert the commit.\n\nReported-by: Leonid Shatz <leonid.shatz@ravellosystems.com>\nSigned-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>\nCc: Andy Lutomirski <luto@kernel.org>\nCc: Borislav Petkov <bp@suse.de>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Ravi V. Shankar <ravi.v.shankar@intel.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nLink: http://lkml.kernel.org/r/1457569734-3785-1-git-send-email-yu-cheng.yu@intel.com\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/93deddfd9b249d7fe5daf5eee59b071ecd333b8d"},{"sha":"8edb1d7e567fc2eb0a4f083de6997f1e9b30123b","author":{"name":"Borislav Petkov","email":"0691a664b24b6f15b20cd5aee64b72271db08be1@alien8.de"},"message":"x86/fpu: Fix eager-FPU handling on legacy FPU machines\n\ncommit 6e6867093de35141f0a76b66ac13f9f2e2c8e77a upstream.\n\ni486 derived cores like Intel Quark support only the very old,\nlegacy x87 FPU (FSAVE/FRSTOR, CPUID bit FXSR is not set), and\nour FPU code wasn't handling the saving and restoring there\nproperly in the 'eagerfpu' case.\n\nSo after we made eagerfpu the default for all CPU types:\n\n  58122bf1d856 x86/fpu: Default eagerfpu=on on all CPUs\n\nthese old FPU designs broke. First, Andy Shevchenko reported a splat:\n\n  WARNING: CPU: 0 PID: 823 at arch/x86/include/asm/fpu/internal.h:163 fpu__clear+0x8c/0x160\n\nwhich was us trying to execute FXRSTOR on those machines even though\nthey don't support it.\n\nAfter taking care of that, Bryan O'Donoghue reported that a simple FPU\ntest still failed because we weren't initializing the FPU state properly\non those machines.\n\nTake care of all that.\n\nReported-and-tested-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>\nReported-by: Andy Shevchenko <andy.shevchenko@gmail.com>\nSigned-off-by: Borislav Petkov <bp@suse.de>\nAcked-by: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Andrew Morton <akpm@linux-foundation.org>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Brian Gerst <brgerst@gmail.com>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Denys Vlasenko <dvlasenk@redhat.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: Yu-cheng <yu-cheng.yu@intel.com>\nLink: http://lkml.kernel.org/r/20160311113206.GD4312@pd.tnic\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/8edb1d7e567fc2eb0a4f083de6997f1e9b30123b"},{"sha":"7c3adb3c7ec4285c1958b42846684924d0be3d58","author":{"name":"Andy Lutomirski","email":"2cc0d0d76de2e6f37b92deeb83c85cb306fc5dc1@kernel.org"},"message":"x86/fpu: Hard-disable lazy FPU mode\n\ncommit ca6938a1cd8a1c5e861a99b67f84ac166fc2b9e7 upstream.\n\nSince commit:\n\n  58122bf1d856 (\"x86/fpu: Default eagerfpu=on on all CPUs\")\n\n... in Linux 4.6, eager FPU mode has been the default on all x86\nsystems, and no one has reported any regressions.\n\nThis patch removes the ability to enable lazy mode: use_eager_fpu()\nbecomes \"return true\" and all of the FPU mode selection machinery is\nremoved.\n\nSigned-off-by: Andy Lutomirski <luto@kernel.org>\nSigned-off-by: Rik van Riel <riel@redhat.com>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Brian Gerst <brgerst@gmail.com>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Denys Vlasenko <dvlasenk@redhat.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Josh Poimboeuf <jpoimboe@redhat.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: pbonzini@redhat.com\nLink: http://lkml.kernel.org/r/1475627678-20788-3-git-send-email-riel@redhat.com\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/7c3adb3c7ec4285c1958b42846684924d0be3d58"},{"sha":"a2dd28441a3cffab0f66b4e3f5c6681b93cb3ad7","author":{"name":"Andy Lutomirski","email":"2cc0d0d76de2e6f37b92deeb83c85cb306fc5dc1@kernel.org"},"message":"x86/fpu: Fix FNSAVE usage in eagerfpu mode\n\ncommit 5ed73f40735c68d8a656b46d09b1885d3b8740ae upstream.\n\nIn eager fpu mode, having deactivated FPU without immediately\nreloading some other context is illegal.  Therefore, to recover from\nFNSAVE, we can't just deactivate the state -- we need to reload it\nif we're not actively context switching.\n\nWe had this wrong in fpu__save() and fpu__copy().  Fix both.\n__kernel_fpu_begin() was fine -- add a comment.\n\nThis fixes a warning triggerable with nofxsr eagerfpu=on.\n\nSigned-off-by: Andy Lutomirski <luto@kernel.org>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Rik van Riel <riel@redhat.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: yu-cheng yu <yu-cheng.yu@intel.com>\nLink: http://lkml.kernel.org/r/60662444e13c76f06e23c15c5dcdba31b4ac3d67.1453675014.git.luto@kernel.org\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/a2dd28441a3cffab0f66b4e3f5c6681b93cb3ad7"},{"sha":"85191ed0a2280a6fb9cd622ac7c99c23914dd422","author":{"name":"Andy Lutomirski","email":"2cc0d0d76de2e6f37b92deeb83c85cb306fc5dc1@kernel.org"},"message":"x86/fpu: Fix math emulation in eager fpu mode\n\ncommit 4ecd16ec7059390b430af34bd8bc3ca2b5dcef9a upstream.\n\nSystems without an FPU are generally old and therefore use lazy FPU\nswitching. Unsurprisingly, math emulation in eager FPU mode is a\nbit buggy. Fix it.\n\nThere were two bugs involving kernel code trying to use the FPU\nregisters in eager mode even if they didn't exist and one BUG_ON()\nthat was incorrect.\n\nSigned-off-by: Andy Lutomirski <luto@kernel.org>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Rik van Riel <riel@redhat.com>\nCc: Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: yu-cheng yu <yu-cheng.yu@intel.com>\nLink: http://lkml.kernel.org/r/b4b8d112436bd6fab866e1b4011131507e8d7fbe.1453675014.git.luto@kernel.org\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/85191ed0a2280a6fb9cd622ac7c99c23914dd422"},{"sha":"702b477de1db146435a9f56deabeabb515972c04","author":{"name":"Kevin Easton","email":"ffb4761cba839470133bee36aeb139f58d7dbaa9@guarana.org"},"message":"af_key: Always verify length of provided sadb_key\n\ncommit 4b66af2d6356a00e94bcdea3e7fea324e8b5c6f4 upstream.\n\nKey extensions (struct sadb_key) include a user-specified number of key\nbits.  The kernel uses that number to determine how much key data to copy\nout of the message in pfkey_msg2xfrm_state().\n\nThe length of the sadb_key message must be verified to be long enough,\neven in the case of SADB_X_AALG_NULL.  Furthermore, the sadb_key_len value\nmust be long enough to include both the key data and the struct sadb_key\nitself.\n\nIntroduce a helper function verify_key_len(), and call it from\nparse_exthdrs() where other exthdr types are similarly checked for\ncorrectness.\n\nSigned-off-by: Kevin Easton <kevin@guarana.org>\nReported-by: syzbot+5022a34ca5a3d49b84223653fab632dfb7b4cf37@syzkaller.appspotmail.com\nSigned-off-by: Steffen Klassert <steffen.klassert@secunet.com>\nCc: Zubin Mithra <zsm@chromium.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/702b477de1db146435a9f56deabeabb515972c04"},{"sha":"81613ccd7935cc8f9068c6d9bfdd4f75ca43f8f6","author":{"name":"Andy Lutomirski","email":"2cc0d0d76de2e6f37b92deeb83c85cb306fc5dc1@kernel.org"},"message":"x86/crypto, x86/fpu: Remove X86_FEATURE_EAGER_FPU #ifdef from the crc32c code\n\ncommit 02f39b2379fb81557ae864ec8f85421c0250c954 upstream.\n\nThe crypto code was checking both use_eager_fpu() and\ndefined(X86_FEATURE_EAGER_FPU).  The latter was nonsensical, so\nremove it.  This will avoid breakage when we remove\nX86_FEATURE_EAGER_FPU.\n\nSigned-off-by: Andy Lutomirski <luto@kernel.org>\nSigned-off-by: Rik van Riel <riel@redhat.com>\nCc: Borislav Petkov <bp@alien8.de>\nCc: Brian Gerst <brgerst@gmail.com>\nCc: Dave Hansen <dave.hansen@linux.intel.com>\nCc: Denys Vlasenko <dvlasenk@redhat.com>\nCc: Fenghua Yu <fenghua.yu@intel.com>\nCc: H. Peter Anvin <hpa@zytor.com>\nCc: Josh Poimboeuf <jpoimboe@redhat.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Quentin Casasnovas <quentin.casasnovas@oracle.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: pbonzini@redhat.com\nLink: http://lkml.kernel.org/r/1475627678-20788-2-git-send-email-riel@redhat.com\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/81613ccd7935cc8f9068c6d9bfdd4f75ca43f8f6"},{"sha":"c4f78b5732bc1392dea7ce401c7fedb91f14e1b9","author":{"name":"Linus Walleij","email":"9cd9d802d23c0ed5e224beabf4ae4a5c478746ef@linaro.org"},"message":"gpio: No NULL owner\n\ncommit 7d18f0a14aa6a0d6bad39111c1fb655f07f71d59 upstream.\n\nSometimes a GPIO is fetched with NULL as parent device, and\nthat is just fine. So under these circumstances, avoid using\ndev_name() to provide a name for the GPIO line.\n\nSigned-off-by: Linus Walleij <linus.walleij@linaro.org>\nCc: Daniel Rosenberg <drosen@google.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/c4f78b5732bc1392dea7ce401c7fedb91f14e1b9"},{"sha":"09b20d9a7c862d6161b0260b235c10e9ae596590","author":{"name":"Linus Torvalds","email":"69652caca27c8b940640ad396ab71f93cacec34f@linux-foundation.org"},"message":"Clarify (and fix) MAX_LFS_FILESIZE macros\n\ncommit 0cc3b0ec23ce4c69e1e890ed2b8d2fa932b14aad upstream.\n\nWe have a MAX_LFS_FILESIZE macro that is meant to be filled in by\nfilesystems (and other IO targets) that know they are 64-bit clean and\ndon't have any 32-bit limits in their IO path.\n\nIt turns out that our 32-bit value for that limit was bogus.  On 32-bit,\nthe VM layer is limited by the page cache to only 32-bit index values,\nbut our logic for that was confusing and actually wrong.  We used to\ndefine that value to\n\n\t(((loff_t)PAGE_SIZE << (BITS_PER_LONG-1))-1)\n\nwhich is actually odd in several ways: it limits the index to 31 bits,\nand then it limits files so that they can't have data in that last byte\nof a page that has the highest 31-bit index (ie page index 0x7fffffff).\n\nNeither of those limitations make sense.  The index is actually the full\n32 bit unsigned value, and we can use that whole full page.  So the\nmaximum size of the file would logically be \"PAGE_SIZE << BITS_PER_LONG\".\n\nHowever, we do wan tto avoid the maximum index, because we have code\nthat iterates over the page indexes, and we don't want that code to\noverflow.  So the maximum size of a file on a 32-bit host should\nactually be one page less than the full 32-bit index.\n\nSo the actual limit is ULONG_MAX << PAGE_SHIFT.  That means that we will\nnot actually be using the page of that last index (ULONG_MAX), but we\ncan grow a file up to that limit.\n\nThe wrong value of MAX_LFS_FILESIZE actually caused problems for Doug\nNazar, who was still using a 32-bit host, but with a 9.7TB 2 x RAID5\nvolume.  It turns out that our old MAX_LFS_FILESIZE was 8TiB (well, one\nbyte less), but the actual true VM limit is one page less than 16TiB.\n\nThis was invisible until commit c2a9737f45e2 (\"vfs,mm: fix a dead loop\nin truncate_inode_pages_range()\"), which started applying that\nMAX_LFS_FILESIZE limit to block devices too.\n\nNOTE! On 64-bit, the page index isn't a limiter at all, and the limit is\nactually just the offset type itself (loff_t), which is signed.  But for\nclarity, on 64-bit, just use the maximum signed value, and don't make\npeople have to count the number of 'f' characters in the hex constant.\n\nSo just use LLONG_MAX for the 64-bit case.  That was what the value had\nbeen before too, just written out as a hex constant.\n\nFixes: c2a9737f45e2 (\"vfs,mm: fix a dead loop in truncate_inode_pages_range()\")\nReported-and-tested-by: Doug Nazar <nazard@nazar.ca>\nCc: Andreas Dilger <adilger@dilger.ca>\nCc: Mark Fasheh <mfasheh@versity.com>\nCc: Joel Becker <jlbec@evilplan.org>\nCc: Dave Kleikamp <shaggy@kernel.org>\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Rafael Tinoco <rafael.tinoco@linaro.org>\n[backported to 4.4.y due to requests of failed LTP tests - gregkh]\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/09b20d9a7c862d6161b0260b235c10e9ae596590"},{"sha":"8417244a3aac8dd083dd1cb4407f1e1e77b2bd24","author":{"name":"Paolo Bonzini","email":"69d3ebcf5ee4e7f05a50dc23cd96655b730804b4@redhat.com"},"message":"KVM: x86: introduce linear_{read,write}_system\n\ncommit 79367a65743975e5cac8d24d08eccc7fdae832b0 upstream.\n\nWrap the common invocation of ctxt->ops->read_std and ctxt->ops->write_std, so\nas to have a smaller patch when the functions grow another argument.\n\nFixes: 129a72a0d3c8 (\"KVM: x86: Introduce segmented_write_std\", 2017-01-12)\nCc: stable@vger.kernel.org\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/8417244a3aac8dd083dd1cb4407f1e1e77b2bd24"},{"sha":"326908105f21d20eba5d8887a040ebc56bda8af3","author":{"name":"Paolo Bonzini","email":"69d3ebcf5ee4e7f05a50dc23cd96655b730804b4@redhat.com"},"message":"KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and kvm_write_guest_virt_system\n\ncommit ce14e868a54edeb2e30cb7a7b104a2fc4b9d76ca upstream.\n\nInt the next patch the emulator's .read_std and .write_std callbacks will\ngrow another argument, which is not needed in kvm_read_guest_virt and\nkvm_write_guest_virt_system's callers.  Since we have to make separate\nfunctions, let's give the currently existing names a nicer interface, too.\n\nFixes: 129a72a0d3c8 (\"KVM: x86: Introduce segmented_write_std\", 2017-01-12)\nCc: stable@vger.kernel.org\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/326908105f21d20eba5d8887a040ebc56bda8af3"},{"sha":"6ffaa6e0f361e1bb20bd54c5f7df6daa381ecd7c","author":{"name":"Marek Szyprowski","email":"2a0259761cc3e88db42be5300c1579a67c77e65e@samsung.com"},"message":"serial: samsung: fix maxburst parameter for DMA transactions\n\ncommit aa2f80e752c75e593b3820f42c416ed9458fa73e upstream.\n\nThe best granularity of residue that DMA engine can report is in the BURST\nunits, so the serial driver must use MAXBURST = 1 and DMA_SLAVE_BUSWIDTH_1_BYTE\nif it relies on exact number of bytes transferred by DMA engine.\n\nFixes: 62c37eedb74c (\"serial: samsung: add dma reqest/release functions\")\nSigned-off-by: Marek Szyprowski <m.szyprowski@samsung.com>\nAcked-by: Krzysztof Kozlowski <krzk@kernel.org>\nCc: stable <stable@vger.kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/6ffaa6e0f361e1bb20bd54c5f7df6daa381ecd7c"},{"sha":"b13b60e88ce8a72ed6267b4c653b58761530791f","author":{"name":"Gil Kupfer","email":"cd1233c1901e3e0b7d01450656f0e04d1e53811f@gmail.com"},"message":"vmw_balloon: fixing double free when batching mode is off\n\ncommit b23220fe054e92f616b82450fae8cd3ab176cc60 upstream.\n\nThe balloon.page field is used for two different purposes if batching is\non or off. If batching is on, the field point to the page which is used\nto communicate with with the hypervisor. If it is off, balloon.page\npoints to the page that is about to be (un)locked.\n\nUnfortunately, this dual-purpose of the field introduced a bug: when the\nballoon is popped (e.g., when the machine is reset or the balloon driver\nis explicitly removed), the balloon driver frees, unconditionally, the\npage that is held in balloon.page.  As a result, if batching is\ndisabled, this leads to double freeing the last page that is sent to the\nhypervisor.\n\nThe following error occurs during rmmod when kernel checkers are on, and\nthe balloon is not empty:\n\n[   42.307653] ------------[ cut here ]------------\n[   42.307657] Kernel BUG at ffffffffba1e4b28 [verbose debug info unavailable]\n[   42.307720] invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC\n[   42.312512] Modules linked in: vmw_vsock_vmci_transport vsock ppdev joydev vmw_balloon(-) input_leds serio_raw vmw_vmci parport_pc shpchp parport i2c_piix4 nfit mac_hid autofs4 vmwgfx drm_kms_helper hid_generic syscopyarea sysfillrect usbhid sysimgblt fb_sys_fops hid ttm mptspi scsi_transport_spi ahci mptscsih drm psmouse vmxnet3 libahci mptbase pata_acpi\n[   42.312766] CPU: 10 PID: 1527 Comm: rmmod Not tainted 4.12.0+ #5\n[   42.312803] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 09/30/2016\n[   42.313042] task: ffff9bf9680f8000 task.stack: ffffbfefc1638000\n[   42.313290] RIP: 0010:__free_pages+0x38/0x40\n[   42.313510] RSP: 0018:ffffbfefc163be98 EFLAGS: 00010246\n[   42.313731] RAX: 000000000000003e RBX: ffffffffc02b9720 RCX: 0000000000000006\n[   42.313972] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff9bf97e08e0a0\n[   42.314201] RBP: ffffbfefc163be98 R08: 0000000000000000 R09: 0000000000000000\n[   42.314435] R10: 0000000000000000 R11: 0000000000000000 R12: ffffffffc02b97e4\n[   42.314505] R13: ffffffffc02b9748 R14: ffffffffc02b9728 R15: 0000000000000200\n[   42.314550] FS:  00007f3af5fec700(0000) GS:ffff9bf97e080000(0000) knlGS:0000000000000000\n[   42.314599] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n[   42.314635] CR2: 00007f44f6f4ab24 CR3: 00000003a7d12000 CR4: 00000000000006e0\n[   42.314864] Call Trace:\n[   42.315774]  vmballoon_pop+0x102/0x130 [vmw_balloon]\n[   42.315816]  vmballoon_exit+0x42/0xd64 [vmw_balloon]\n[   42.315853]  SyS_delete_module+0x1e2/0x250\n[   42.315891]  entry_SYSCALL_64_fastpath+0x23/0xc2\n[   42.315924] RIP: 0033:0x7f3af5b0e8e7\n[   42.315949] RSP: 002b:00007fffe6ce0148 EFLAGS: 00000206 ORIG_RAX: 00000000000000b0\n[   42.315996] RAX: ffffffffffffffda RBX: 000055be676401e0 RCX: 00007f3af5b0e8e7\n[   42.316951] RDX: 000000000000000a RSI: 0000000000000800 RDI: 000055be67640248\n[   42.317887] RBP: 0000000000000003 R08: 0000000000000000 R09: 1999999999999999\n[   42.318845] R10: 0000000000000883 R11: 0000000000000206 R12: 00007fffe6cdf130\n[   42.319755] R13: 0000000000000000 R14: 0000000000000000 R15: 000055be676401e0\n[   42.320606] Code: c0 74 1c f0 ff 4f 1c 74 02 5d c3 85 f6 74 07 e8 0f d8 ff ff 5d c3 31 f6 e8 c6 fb ff ff 5d c3 48 c7 c6 c8 0f c5 ba e8 58 be 02 00 <0f> 0b 66 0f 1f 44 00 00 66 66 66 66 90 48 85 ff 75 01 c3 55 48\n[   42.323462] RIP: __free_pages+0x38/0x40 RSP: ffffbfefc163be98\n[   42.325735] ---[ end trace 872e008e33f81508 ]---\n\nTo solve the bug, we eliminate the dual purpose of balloon.page.\n\nFixes: f220a80f0c2e (\"VMware balloon: add batching to the vmw_balloon.\")\nCc: stable@vger.kernel.org\nReported-by: Oleksandr Natalenko <onatalen@redhat.com>\nSigned-off-by: Gil Kupfer <gilkup@gmail.com>\nSigned-off-by: Nadav Amit <namit@vmware.com>\nReviewed-by: Xavier Deguillard <xdeguillard@vmware.com>\nTested-by: Oleksandr Natalenko <oleksandr@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/Jackeagle/kernel_msm/commits/b13b60e88ce8a72ed6267b4c653b58761530791f"}]}
{"actor":{"display_login":"Jackeagle"}}