feat: add smap blocklist for some oracle linux kernels
This commit is contained in:
parent
b0b19d87ca
commit
482378abaf
@ -79,6 +79,29 @@ func (ol OracleLinux) Kernels() (kernels []distro.KernelInfo, err error) {
|
||||
return
|
||||
}
|
||||
|
||||
// Some kernels do not work with the smap enabled
|
||||
//
|
||||
// BUG: unable to handle kernel paging request at 00007fffc64b2fda
|
||||
// IP: [<ffffffff8127a9ed>] strnlen+0xd/0x40"
|
||||
// ...
|
||||
// Call Trace:
|
||||
// [<ffffffff81123bf8>] dtrace_psinfo_alloc+0x138/0x390
|
||||
// [<ffffffff8118b143>] do_execve_common.isra.24+0x3c3/0x460
|
||||
// [<ffffffff81554d70>] ? rest_init+0x80/0x80
|
||||
// [<ffffffff8118b1f8>] do_execve+0x18/0x20
|
||||
// [<ffffffff81554dc2>] kernel_init+0x52/0x180
|
||||
// [<ffffffff8157cd2c>] ret_from_fork+0x7c/0xb0
|
||||
//
|
||||
smapBlocklist := []string{
|
||||
"3.8.13-16",
|
||||
"3.8.13-26",
|
||||
"3.8.13-35",
|
||||
"3.8.13-44",
|
||||
"3.8.13-55",
|
||||
"3.8.13-68",
|
||||
"3.8.13-98",
|
||||
}
|
||||
|
||||
for i, k := range kernels {
|
||||
// The latest uek kernels require gcc-11, which is
|
||||
// only present in el8 with scl load, so not so
|
||||
@ -88,6 +111,14 @@ func (ol OracleLinux) Kernels() (kernels []distro.KernelInfo, err error) {
|
||||
cnt := strings.Replace(k.ContainerName, "8", "9", -1)
|
||||
kernels[i].ContainerName = cnt
|
||||
}
|
||||
|
||||
for _, ver := range smapBlocklist {
|
||||
if strings.Contains(k.KernelVersion, ver) {
|
||||
kernels[i].CPU.Flags = append(
|
||||
kernels[i].CPU.Flags, "smap=off",
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
|
Loading…
Reference in New Issue
Block a user