All of lore.kernel.org
 help / color / mirror / Atom feed
* 3.16.1 - general protection fault
@ 2014-09-24 16:44 Marcin Gibula
  2014-09-24 20:18 ` Dr. David Alan Gilbert
  0 siblings, 1 reply; 4+ messages in thread
From: Marcin Gibula @ 2014-09-24 16:44 UTC (permalink / raw)
  To: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 4208 bytes --]

Hi,

I've been playing with 3.16 kernel on my test machine as a KVM
hypervisor and encountered the following crash twice (almost identical
backtraces).

Sep 24 09:39:31 dev4 kernel: general protection fault: 0000 [#1] SMP
Sep 24 09:39:31 dev4 kernel: Modules linked in: ip6table_filter
ip6_tables iptable_filter ebt_arp act_police cls_u32 sch_ingress
cls_fw sch_sfq sch_htb ebt_dnat ebt_ip ebtable_nat ebtables
iptable_raw xt_CT x86_pkg_temp_thermal mpt2sas raid_cla
ss scsi_transport_sas i2c_i801 igb i2c_algo_bit megaraid_sas
Sep 24 09:39:31 dev4 kernel: CPU: 7 PID: 1892 Comm: kworker/7:1 Not
tainted 3.16.1-gentoo #2
Sep 24 09:39:31 dev4 kernel: Hardware name: Supermicro
X9DRW-7TPF+/X9DRW-7TPF+, BIOS 3.0 07/24/2013
Sep 24 09:39:31 dev4 kernel: Workqueue: rpciod rpc_async_schedule
Sep 24 09:39:31 dev4 kernel: task: ffff88102865de80 ti:
ffff88102456c000 task.ti: ffff88102456c000
Sep 24 09:39:31 dev4 kernel: RIP: 0010:[<ffffffff8113421c>]
[<ffffffff8113421c>] __kmalloc_node_track_caller+0xac/0x100
Sep 24 09:39:31 dev4 kernel: RSP: 0018:ffff88102456f958  EFLAGS: 00010246
Sep 24 09:39:31 dev4 kernel: RAX: 0000000000000000 RBX:
ffff8804fa153600 RCX: 000000000040471f
Sep 24 09:39:31 dev4 kernel: RDX: 000000000040471e RSI:
0000000000000000 RDI: 00000000000147c0
Sep 24 09:39:31 dev4 kernel: RBP: ffff88102456f988 R08:
ffff88103fcf47c0 R09: ffffffff8151d1c9
Sep 24 09:39:31 dev4 kernel: R10: ffff88102456fc70 R11:
0000000000000000 R12: 002560400038002c
Sep 24 09:39:31 dev4 kernel: R13: ffff88103f803400 R14:
00000000ffffffff R15: 0000000000010220
Sep 24 09:39:31 dev4 kernel: FS:  0000000000000000(0000)
GS:ffff88103fce0000(0000) knlGS:0000000000000000
Sep 24 09:39:31 dev4 kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Sep 24 09:39:31 dev4 kernel: CR2: 00007fcdf3508000 CR3:
0000001d41163000 CR4: 00000000001427e0
Sep 24 09:39:31 dev4 kernel: Stack:
Sep 24 09:39:31 dev4 kernel: ffffffff8151d1f9 ffff8804fa153600
ffff88102456f9e7 0000000000000020
Sep 24 09:39:31 dev4 kernel: 0000000000000800 00000000ffffffff
ffff88102456f9c8 ffffffff8151d11c
Sep 24 09:39:31 dev4 kernel: ffff88103fcf4790 ffff8804fa153600
0000000000000020 00000000ffffffff
Sep 24 09:39:31 dev4 kernel: Call Trace:
Sep 24 09:39:31 dev4 kernel: [<ffffffff8151d1f9>] ? __alloc_skb+0x79/0x1c0
Sep 24 09:39:31 dev4 kernel: [<ffffffff8151d11c>]
__kmalloc_reserve.isra.41+0x2c/0x90
Sep 24 09:39:31 dev4 kernel: [<ffffffff8151d1f9>] __alloc_skb+0x79/0x1c0
Sep 24 09:39:31 dev4 kernel: [<ffffffff81589fb4>] sk_stream_alloc_skb+0x34/0x100
Sep 24 09:39:31 dev4 kernel: [<ffffffff8158ad07>] tcp_sendmsg+0x667/0xd20
Sep 24 09:39:31 dev4 kernel: [<ffffffff815b11c2>] inet_sendmsg+0x42/0xb0
Sep 24 09:39:31 dev4 kernel: [<ffffffff81513380>] sock_sendmsg+0xa0/0xc0
Sep 24 09:39:31 dev4 kernel: [<ffffffff810a6f31>] ? load_balance+0x151/0x850
Sep 24 09:39:31 dev4 kernel: [<ffffffff815133d2>] kernel_sendmsg+0x32/0x40
Sep 24 09:39:31 dev4 kernel: [<ffffffff81622a09>] xs_send_kvec+0x89/0xa0
Sep 24 09:39:31 dev4 kernel: [<ffffffff81622e5e>] xs_sendpages+0x5e/0x1f0
Sep 24 09:39:31 dev4 kernel: [<ffffffff81623057>] xs_tcp_send_request+0x67/0x120
Sep 24 09:39:31 dev4 kernel: [<ffffffff81620cd0>] xprt_transmit+0x50/0x260
Sep 24 09:39:31 dev4 kernel: [<ffffffff8161dfb8>] call_transmit+0x1a8/0x250
Sep 24 09:39:31 dev4 kernel: [<ffffffff816255a6>] __rpc_execute+0x56/0x280
Sep 24 09:39:31 dev4 kernel: [<ffffffff8108a208>] ?
pwq_activate_delayed_work+0x28/0x40
Sep 24 09:39:31 dev4 kernel: [<ffffffff816257f1>] rpc_async_schedule+0x21/0x30
Sep 24 09:39:31 dev4 kernel: [<ffffffff8108c81b>] process_one_work+0x13b/0x390
Sep 24 09:39:31 dev4 kernel: [<ffffffff8108d17b>] worker_thread+0x11b/0x510
Sep 24 09:39:31 dev4 kernel: [<ffffffff8108d060>] ?
cancel_delayed_work_sync+0x10/0x10
Sep 24 09:39:31 dev4 kernel: [<ffffffff81092b44>] kthread+0xc4/0xe0
Sep 24 09:39:31 dev4 kernel: [<ffffffff81092a80>] ?
kthread_create_on_node+0x170/0x170

This machine is serving as NFS client and KVM hypervisor. I'm still
not sure how to trigger it reliably (right now, I just have to run
ubuntu instalation in VM guest multiple times and sometimes it
triggers).

Attaching .config, slub.s and disassembled __kmalloc_node_track_caller function.

-- 
mg

[-- Attachment #2: slub-disassembly.txt --]
[-- Type: text/plain, Size: 4451 bytes --]

Dump of assembler code for function __kmalloc_node_track_caller:
   0x0000000000005500 <+0>:     push   %rbp
   0x0000000000005501 <+1>:     mov    %rsp,%rbp
   0x0000000000005504 <+4>:     push   %r15
   0x0000000000005506 <+6>:     mov    %esi,%r15d
   0x0000000000005509 <+9>:     push   %r14
   0x000000000000550b <+11>:    mov    %edx,%r14d
   0x000000000000550e <+14>:    push   %r13
   0x0000000000005510 <+16>:    push   %r12
   0x0000000000005512 <+18>:    push   %rbx
   0x0000000000005513 <+19>:    sub    $0x8,%rsp
   0x0000000000005517 <+23>:    cmp    $0x2000,%rdi
   0x000000000000551e <+30>:    mov    %rcx,-0x30(%rbp)
   0x0000000000005522 <+34>:    ja     0x55e4 <__kmalloc_node_track_caller+228>
   0x0000000000005528 <+40>:    callq  0x552d <__kmalloc_node_track_caller+45>
   0x000000000000552d <+45>:    cmp    $0x10,%rax
   0x0000000000005531 <+49>:    mov    %rax,%r13
   0x0000000000005534 <+52>:    jbe    0x558e <__kmalloc_node_track_caller+142>
   0x0000000000005536 <+54>:    mov    0x0(%r13),%r8
   0x000000000000553a <+58>:    add    %gs:0x0,%r8
   0x0000000000005543 <+67>:    mov    0x8(%r8),%rdx
   0x0000000000005547 <+71>:    mov    (%r8),%r12
   0x000000000000554a <+74>:    mov    0x10(%r8),%rax
   0x000000000000554e <+78>:    test   %r12,%r12
   0x0000000000005551 <+81>:    je     0x556d <__kmalloc_node_track_caller+109>
   0x0000000000005553 <+83>:    test   %rax,%rax
   0x0000000000005556 <+86>:    je     0x556d <__kmalloc_node_track_caller+109>
   0x0000000000005558 <+88>:    cmp    $0xffffffff,%r14d
   0x000000000000555c <+92>:    je     0x55a0 <__kmalloc_node_track_caller+160>
   0x000000000000555e <+94>:    mov    (%rax),%rax
   0x0000000000005561 <+97>:    shr    $0x27,%rax
   0x0000000000005565 <+101>:   and    $0x3f,%eax
   0x0000000000005568 <+104>:   cmp    %eax,%r14d
   0x000000000000556b <+107>:   je     0x55a0 <__kmalloc_node_track_caller+160>
   0x000000000000556d <+109>:   mov    -0x30(%rbp),%rcx
   0x0000000000005571 <+113>:   mov    %r15d,%esi
   0x0000000000005574 <+116>:   mov    %r14d,%edx
   0x0000000000005577 <+119>:   mov    %r13,%rdi
   0x000000000000557a <+122>:   callq  0x557f <__kmalloc_node_track_caller+127>
   0x000000000000557f <+127>:   and    $0x8000,%r15d
   0x0000000000005586 <+134>:   mov    %rax,%r12
   0x0000000000005589 <+137>:   jne    0x55f2 <__kmalloc_node_track_caller+242>
   0x000000000000558b <+139>:   mov    %r12,%rax
   0x000000000000558e <+142>:   add    $0x8,%rsp
   0x0000000000005592 <+146>:   pop    %rbx
   0x0000000000005593 <+147>:   pop    %r12
   0x0000000000005595 <+149>:   pop    %r13
   0x0000000000005597 <+151>:   pop    %r14
   0x0000000000005599 <+153>:   pop    %r15
   0x000000000000559b <+155>:   pop    %rbp
   0x000000000000559c <+156>:   retq
   0x000000000000559d <+157>:   nopl   (%rax)
   0x00000000000055a0 <+160>:   movslq 0x20(%r13),%rax
   0x00000000000055a4 <+164>:   lea    0x1(%rdx),%rcx
   0x00000000000055a8 <+168>:   mov    0x0(%r13),%rdi
   0x00000000000055ac <+172>:   mov    (%r12,%rax,1),%rbx
   0x00000000000055b0 <+176>:   mov    %r12,%rax
   0x00000000000055b3 <+179>:   lea    (%rdi),%rsi
   0x00000000000055b6 <+182>:   callq  0x55bb <__kmalloc_node_track_caller+187>
   0x00000000000055bb <+187>:   test   %al,%al
   0x00000000000055bd <+189>:   je     0x5536 <__kmalloc_node_track_caller+54>
   0x00000000000055c3 <+195>:   movslq 0x20(%r13),%rax
   0x00000000000055c7 <+199>:   and    $0x8000,%r15d
   0x00000000000055ce <+206>:   prefetcht0 (%rbx,%rax,1)
   0x00000000000055d2 <+210>:   je     0x558b <__kmalloc_node_track_caller+139>
   0x00000000000055d4 <+212>:   movslq 0x1c(%r13),%rdx
   0x00000000000055d8 <+216>:   xor    %esi,%esi
   0x00000000000055da <+218>:   mov    %r12,%rdi
   0x00000000000055dd <+221>:   callq  0x55e2 <__kmalloc_node_track_caller+226>
   0x00000000000055e2 <+226>:   jmp    0x558b <__kmalloc_node_track_caller+139>
   0x00000000000055e4 <+228>:   callq  0x55e9 <__kmalloc_node_track_caller+233>
   0x00000000000055e9 <+233>:   nopl   0x0(%rax)
   0x00000000000055f0 <+240>:   jmp    0x558e <__kmalloc_node_track_caller+142>
   0x00000000000055f2 <+242>:   test   %rax,%rax
   0x00000000000055f5 <+245>:   jne    0x55d4 <__kmalloc_node_track_caller+212>
   0x00000000000055f7 <+247>:   xor    %eax,%eax
   0x00000000000055f9 <+249>:   jmp    0x558e <__kmalloc_node_track_caller+142>

[-- Attachment #3: kernel.config --]
[-- Type: application/octet-stream, Size: 80364 bytes --]

#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 3.16.1-gentoo Kernel Configuration
#

#
# Gentoo Linux
#
CONFIG_GENTOO_LINUX=y
CONFIG_GENTOO_LINUX_UDEV=y

#
# Support for init systems, system and service managers
#
CONFIG_GENTOO_LINUX_INIT_SCRIPT=y
# CONFIG_GENTOO_LINUX_INIT_SYSTEMD is not set
CONFIG_64BIT=y
CONFIG_X86_64=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf64-x86-64"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_MMU=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_HAS_CPU_RELAX=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
CONFIG_ZONE_DMA32=y
CONFIG_AUDIT_ARCH=y
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_HAVE_INTEL_TXT=y
CONFIG_X86_64_SMP=y
CONFIG_X86_HT=y
CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11"
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y

#
# General setup
#
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
# CONFIG_COMPILE_TEST is not set
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_HAVE_KERNEL_GZIP=y
CONFIG_HAVE_KERNEL_BZIP2=y
CONFIG_HAVE_KERNEL_LZMA=y
CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_HAVE_KERNEL_LZ4=y
# CONFIG_KERNEL_GZIP is not set
# CONFIG_KERNEL_BZIP2 is not set
# CONFIG_KERNEL_LZMA is not set
CONFIG_KERNEL_XZ=y
# CONFIG_KERNEL_LZO is not set
# CONFIG_KERNEL_LZ4 is not set
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
# CONFIG_CROSS_MEMORY_ATTACH is not set
CONFIG_FHANDLE=y
# CONFIG_USELIB is not set
# CONFIG_AUDIT is not set
CONFIG_HAVE_ARCH_AUDITSYSCALL=y

#
# IRQ subsystem
#
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_IRQ_LEGACY_ALLOC_HWIRQ=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_IRQ_DOMAIN=y
# CONFIG_IRQ_DOMAIN_DEBUG is not set
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_ARCH_CLOCKSOURCE_DATA=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
CONFIG_GENERIC_CMOS_UPDATE=y

#
# Timers subsystem
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ_COMMON=y
# CONFIG_HZ_PERIODIC is not set
CONFIG_NO_HZ_IDLE=y
# CONFIG_NO_HZ_FULL is not set
# CONFIG_NO_HZ is not set
CONFIG_HIGH_RES_TIMERS=y

#
# CPU/Task time and stats accounting
#
CONFIG_TICK_CPU_ACCOUNTING=y
# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
# CONFIG_IRQ_TIME_ACCOUNTING is not set
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
# CONFIG_TASK_XACCT is not set

#
# RCU Subsystem
#
CONFIG_TREE_RCU=y
# CONFIG_PREEMPT_RCU is not set
CONFIG_RCU_STALL_COMMON=y
# CONFIG_RCU_USER_QS is not set
CONFIG_RCU_FANOUT=64
CONFIG_RCU_FANOUT_LEAF=16
# CONFIG_RCU_FANOUT_EXACT is not set
# CONFIG_RCU_FAST_NO_HZ is not set
# CONFIG_TREE_RCU_TRACE is not set
# CONFIG_RCU_NOCB_CPU is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=17
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
CONFIG_ARCH_SUPPORTS_INT128=y
CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y
# CONFIG_NUMA_BALANCING is not set
CONFIG_CGROUPS=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
CONFIG_MEMCG=y
CONFIG_MEMCG_SWAP=y
CONFIG_MEMCG_SWAP_ENABLED=y
# CONFIG_MEMCG_KMEM is not set
# CONFIG_CGROUP_PERF is not set
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y
CONFIG_BLK_CGROUP=y
# CONFIG_DEBUG_BLK_CGROUP is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
# CONFIG_USER_NS is not set
CONFIG_PID_NS=y
CONFIG_NET_NS=y
# CONFIG_SCHED_AUTOGROUP is not set
# CONFIG_SYSFS_DEPRECATED is not set
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_RD_GZIP=y
CONFIG_RD_BZIP2=y
CONFIG_RD_LZMA=y
CONFIG_RD_XZ=y
CONFIG_RD_LZO=y
CONFIG_RD_LZ4=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_SYSCTL=y
CONFIG_ANON_INODES=y
CONFIG_HAVE_UID16=y
CONFIG_SYSCTL_EXCEPTION_TRACE=y
CONFIG_HAVE_PCSPKR_PLATFORM=y
# CONFIG_EXPERT is not set
CONFIG_UID16=y
CONFIG_SGETMASK_SYSCALL=y
CONFIG_SYSFS_SYSCALL=y
# CONFIG_SYSCTL_SYSCALL is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_PCSPKR_PLATFORM=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_PCI_QUIRKS=y
# CONFIG_EMBEDDED is not set
CONFIG_HAVE_PERF_EVENTS=y

#
# Kernel Performance Events And Counters
#
CONFIG_PERF_EVENTS=y
# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
CONFIG_OPROFILE_NMI_TIMER=y
# CONFIG_KPROBES is not set
CONFIG_JUMP_LABEL=y
# CONFIG_UPROBES is not set
# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
CONFIG_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_OPTPROBES=y
CONFIG_HAVE_KPROBES_ON_FTRACE=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_HAVE_DMA_CONTIGUOUS=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_HAVE_HW_BREAKPOINT=y
CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
CONFIG_HAVE_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_PERF_EVENTS_NMI=y
CONFIG_HAVE_PERF_REGS=y
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
CONFIG_HAVE_CMPXCHG_LOCAL=y
CONFIG_HAVE_CMPXCHG_DOUBLE=y
CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y
CONFIG_HAVE_CC_STACKPROTECTOR=y
# CONFIG_CC_STACKPROTECTOR is not set
CONFIG_CC_STACKPROTECTOR_NONE=y
# CONFIG_CC_STACKPROTECTOR_REGULAR is not set
# CONFIG_CC_STACKPROTECTOR_STRONG is not set
CONFIG_HAVE_CONTEXT_TRACKING=y
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
CONFIG_HAVE_ARCH_SOFT_DIRTY=y
CONFIG_MODULES_USE_ELF_RELA=y
CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
CONFIG_OLD_SIGSUSPEND3=y
CONFIG_COMPAT_OLD_SIGACTION=y

#
# GCOV-based kernel profiling
#
# CONFIG_GCOV_KERNEL is not set
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
# CONFIG_MODULE_FORCE_LOAD is not set
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_MODULE_SIG is not set
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_BLK_DEV_BSG=y
CONFIG_BLK_DEV_BSGLIB=y
# CONFIG_BLK_DEV_INTEGRITY is not set
# CONFIG_BLK_DEV_THROTTLING is not set
# CONFIG_BLK_CMDLINE_PARSER is not set

#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not set
# CONFIG_AIX_PARTITION is not set
# CONFIG_OSF_PARTITION is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_ATARI_PARTITION is not set
# CONFIG_MAC_PARTITION is not set
CONFIG_MSDOS_PARTITION=y
# CONFIG_BSD_DISKLABEL is not set
# CONFIG_MINIX_SUBPARTITION is not set
# CONFIG_SOLARIS_X86_PARTITION is not set
# CONFIG_UNIXWARE_DISKLABEL is not set
# CONFIG_LDM_PARTITION is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set
# CONFIG_SUN_PARTITION is not set
# CONFIG_KARMA_PARTITION is not set
CONFIG_EFI_PARTITION=y
# CONFIG_SYSV68_PARTITION is not set
# CONFIG_CMDLINE_PARTITION is not set
CONFIG_BLOCK_COMPAT=y

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
# CONFIG_DEFAULT_DEADLINE is not set
CONFIG_DEFAULT_NOOP=y
CONFIG_DEFAULT_IOSCHED="noop"
CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
CONFIG_INLINE_READ_UNLOCK=y
CONFIG_INLINE_READ_UNLOCK_IRQ=y
CONFIG_INLINE_WRITE_UNLOCK=y
CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
CONFIG_RWSEM_SPIN_ON_OWNER=y
CONFIG_ARCH_USE_QUEUE_RWLOCK=y
CONFIG_QUEUE_RWLOCK=y
CONFIG_FREEZER=y

#
# Processor type and features
#
CONFIG_ZONE_DMA=y
CONFIG_SMP=y
CONFIG_X86_X2APIC=y
# CONFIG_X86_MPPARSE is not set
# CONFIG_X86_EXTENDED_PLATFORM is not set
# CONFIG_X86_INTEL_LPSS is not set
CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
CONFIG_SCHED_OMIT_FRAME_POINTER=y
# CONFIG_HYPERVISOR_GUEST is not set
CONFIG_NO_BOOTMEM=y
# CONFIG_MEMTEST is not set
# CONFIG_MK8 is not set
# CONFIG_MPSC is not set
CONFIG_MCORE2=y
# CONFIG_MATOM is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_INTERNODE_CACHE_SHIFT=6
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_P6_NOP=y
CONFIG_X86_TSC=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=64
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_CPU_SUP_INTEL=y
CONFIG_CPU_SUP_AMD=y
CONFIG_CPU_SUP_CENTAUR=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_DMI=y
# CONFIG_GART_IOMMU is not set
# CONFIG_CALGARY_IOMMU is not set
CONFIG_SWIOTLB=y
CONFIG_IOMMU_HELPER=y
# CONFIG_MAXSMP is not set
CONFIG_NR_CPUS=64
# CONFIG_SCHED_SMT is not set
CONFIG_SCHED_MC=y
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set
CONFIG_X86_MCE=y
CONFIG_X86_MCE_INTEL=y
# CONFIG_X86_MCE_AMD is not set
CONFIG_X86_MCE_THRESHOLD=y
# CONFIG_X86_MCE_INJECT is not set
CONFIG_X86_THERMAL_VECTOR=y
CONFIG_X86_16BIT=y
CONFIG_X86_ESPFIX64=y
# CONFIG_I8K is not set
CONFIG_MICROCODE=y
CONFIG_MICROCODE_INTEL=y
# CONFIG_MICROCODE_AMD is not set
CONFIG_MICROCODE_OLD_INTERFACE=y
# CONFIG_MICROCODE_INTEL_EARLY is not set
# CONFIG_MICROCODE_AMD_EARLY is not set
# CONFIG_MICROCODE_EARLY is not set
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
CONFIG_DIRECT_GBPAGES=y
CONFIG_NUMA=y
# CONFIG_AMD_NUMA is not set
CONFIG_X86_64_ACPI_NUMA=y
CONFIG_NODES_SPAN_OTHER_NODES=y
# CONFIG_NUMA_EMU is not set
CONFIG_NODES_SHIFT=6
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ARCH_PROC_KCORE_TEXT=y
CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y
# CONFIG_SPARSEMEM_VMEMMAP is not set
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
CONFIG_ARCH_DISCARD_MEMBLOCK=y
CONFIG_MEMORY_ISOLATION=y
# CONFIG_MOVABLE_NODE is not set
# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
# CONFIG_MEMORY_HOTPLUG is not set
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
# CONFIG_BALLOON_COMPACTION is not set
CONFIG_COMPACTION=y
CONFIG_MIGRATION=y
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
# CONFIG_BOUNCE is not set
CONFIG_VIRT_TO_BUS=y
CONFIG_MMU_NOTIFIER=y
CONFIG_KSM=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
CONFIG_MEMORY_FAILURE=y
# CONFIG_HWPOISON_INJECT is not set
CONFIG_TRANSPARENT_HUGEPAGE=y
# CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS is not set
CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
# CONFIG_CLEANCACHE is not set
# CONFIG_FRONTSWAP is not set
# CONFIG_CMA is not set
# CONFIG_ZBUD is not set
# CONFIG_ZSMALLOC is not set
CONFIG_GENERIC_EARLY_IOREMAP=y
# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set
CONFIG_X86_RESERVE_LOW=64
CONFIG_MTRR=y
CONFIG_MTRR_SANITIZER=y
CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
CONFIG_X86_PAT=y
CONFIG_ARCH_USES_PG_UNCACHED=y
CONFIG_ARCH_RANDOM=y
CONFIG_X86_SMAP=y
# CONFIG_EFI is not set
CONFIG_SECCOMP=y
CONFIG_HZ_100=y
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=100
CONFIG_SCHED_HRTICK=y
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_ALIGN=0x1000000
# CONFIG_HOTPLUG_CPU is not set
# CONFIG_COMPAT_VDSO is not set
# CONFIG_CMDLINE_BOOL is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y

#
# Power management and ACPI options
#
# CONFIG_SUSPEND is not set
# CONFIG_HIBERNATION is not set
# CONFIG_PM_RUNTIME is not set
CONFIG_ACPI=y
# CONFIG_ACPI_PROCFS_POWER is not set
# CONFIG_ACPI_EC_DEBUGFS is not set
# CONFIG_ACPI_AC is not set
# CONFIG_ACPI_BATTERY is not set
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
# CONFIG_ACPI_DOCK is not set
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_IPMI=y
CONFIG_ACPI_PROCESSOR_AGGREGATOR=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_NUMA=y
# CONFIG_ACPI_CUSTOM_DSDT is not set
# CONFIG_ACPI_INITRD_TABLE_OVERRIDE is not set
# CONFIG_ACPI_DEBUG is not set
# CONFIG_ACPI_PCI_SLOT is not set
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=y
# CONFIG_ACPI_SBS is not set
CONFIG_ACPI_HED=y
# CONFIG_ACPI_CUSTOM_METHOD is not set
# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y
# CONFIG_ACPI_APEI_EINJ is not set
# CONFIG_ACPI_APEI_ERST_DEBUG is not set
# CONFIG_ACPI_EXTLOG is not set
# CONFIG_SFI is not set

#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set

#
# CPU Idle
#
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_IDLE_GOV_MENU=y
# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
CONFIG_INTEL_IDLE=y

#
# Memory power savings
#
# CONFIG_I7300_IDLE is not set

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCIEPORTBUS=y
# CONFIG_PCIEAER is not set
CONFIG_PCIEASPM=y
# CONFIG_PCIEASPM_DEBUG is not set
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set
# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
# CONFIG_PCI_STUB is not set
# CONFIG_HT_IRQ is not set
CONFIG_PCI_ATS=y
CONFIG_PCI_IOV=y
CONFIG_PCI_PRI=y
CONFIG_PCI_PASID=y
CONFIG_PCI_IOAPIC=y
CONFIG_PCI_LABEL=y

#
# PCI host controller drivers
#
CONFIG_ISA_DMA_API=y
CONFIG_AMD_NB=y
# CONFIG_PCCARD is not set
# CONFIG_HOTPLUG_PCI is not set
# CONFIG_RAPIDIO is not set
# CONFIG_X86_SYSFB is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_COMPAT_BINFMT_ELF=y
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
CONFIG_BINFMT_SCRIPT=y
# CONFIG_HAVE_AOUT is not set
# CONFIG_BINFMT_MISC is not set
CONFIG_COREDUMP=y
CONFIG_IA32_EMULATION=y
# CONFIG_IA32_AOUT is not set
# CONFIG_X86_X32 is not set
CONFIG_COMPAT=y
CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
CONFIG_SYSVIPC_COMPAT=y
CONFIG_KEYS_COMPAT=y
CONFIG_X86_DEV_DMA_OPS=y
CONFIG_IOSF_MBI=m
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_DIAG is not set
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=y
# CONFIG_XFRM_USER is not set
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
# CONFIG_IP_FIB_TRIE_STATS is not set
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_MULTIPATH=y
# CONFIG_IP_ROUTE_VERBOSE is not set
CONFIG_IP_ROUTE_CLASSID=y
# CONFIG_IP_PNP is not set
CONFIG_NET_IPIP=y
CONFIG_NET_IPGRE_DEMUX=y
CONFIG_NET_IP_TUNNEL=y
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE=y
# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
CONFIG_SYN_COOKIES=y
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_INET_XFRM_TUNNEL is not set
CONFIG_INET_TUNNEL=y
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_LRO is not set
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
# CONFIG_INET_UDP_DIAG is not set
CONFIG_TCP_CONG_ADVANCED=y
# CONFIG_TCP_CONG_BIC is not set
CONFIG_TCP_CONG_CUBIC=y
CONFIG_TCP_CONG_WESTWOOD=y
# CONFIG_TCP_CONG_HTCP is not set
# CONFIG_TCP_CONG_HSTCP is not set
# CONFIG_TCP_CONG_HYBLA is not set
# CONFIG_TCP_CONG_VEGAS is not set
# CONFIG_TCP_CONG_SCALABLE is not set
# CONFIG_TCP_CONG_LP is not set
# CONFIG_TCP_CONG_VENO is not set
# CONFIG_TCP_CONG_YEAH is not set
# CONFIG_TCP_CONG_ILLINOIS is not set
CONFIG_DEFAULT_CUBIC=y
# CONFIG_DEFAULT_WESTWOOD is not set
# CONFIG_DEFAULT_RENO is not set
CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set
CONFIG_IPV6=y
# CONFIG_IPV6_ROUTER_PREF is not set
# CONFIG_IPV6_OPTIMISTIC_DAD is not set
# CONFIG_INET6_AH is not set
# CONFIG_INET6_ESP is not set
# CONFIG_INET6_IPCOMP is not set
# CONFIG_IPV6_MIP6 is not set
# CONFIG_INET6_XFRM_TUNNEL is not set
# CONFIG_INET6_TUNNEL is not set
# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET6_XFRM_MODE_TUNNEL is not set
# CONFIG_INET6_XFRM_MODE_BEET is not set
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
# CONFIG_IPV6_SIT is not set
# CONFIG_IPV6_TUNNEL is not set
# CONFIG_IPV6_GRE is not set
# CONFIG_IPV6_MULTIPLE_TABLES is not set
# CONFIG_IPV6_MROUTE is not set
# CONFIG_NETLABEL is not set
# CONFIG_NETWORK_SECMARK is not set
CONFIG_NET_PTP_CLASSIFY=y
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_NETFILTER_ADVANCED=y
CONFIG_BRIDGE_NETFILTER=y

#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_NETLINK=y
CONFIG_NETFILTER_NETLINK_ACCT=m
CONFIG_NETFILTER_NETLINK_QUEUE=y
CONFIG_NETFILTER_NETLINK_LOG=y
CONFIG_NF_CONNTRACK=y
CONFIG_NF_CONNTRACK_MARK=y
# CONFIG_NF_CONNTRACK_ZONES is not set
CONFIG_NF_CONNTRACK_PROCFS=y
CONFIG_NF_CONNTRACK_EVENTS=y
# CONFIG_NF_CONNTRACK_TIMEOUT is not set
# CONFIG_NF_CONNTRACK_TIMESTAMP is not set
# CONFIG_NF_CT_PROTO_DCCP is not set
# CONFIG_NF_CT_PROTO_SCTP is not set
# CONFIG_NF_CT_PROTO_UDPLITE is not set
# CONFIG_NF_CONNTRACK_AMANDA is not set
# CONFIG_NF_CONNTRACK_FTP is not set
# CONFIG_NF_CONNTRACK_H323 is not set
# CONFIG_NF_CONNTRACK_IRC is not set
# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set
# CONFIG_NF_CONNTRACK_SNMP is not set
# CONFIG_NF_CONNTRACK_PPTP is not set
# CONFIG_NF_CONNTRACK_SANE is not set
# CONFIG_NF_CONNTRACK_SIP is not set
# CONFIG_NF_CONNTRACK_TFTP is not set
# CONFIG_NF_CT_NETLINK is not set
# CONFIG_NF_CT_NETLINK_TIMEOUT is not set
# CONFIG_NETFILTER_NETLINK_QUEUE_CT is not set
CONFIG_NF_NAT=y
CONFIG_NF_NAT_NEEDED=y
# CONFIG_NF_NAT_AMANDA is not set
# CONFIG_NF_NAT_FTP is not set
# CONFIG_NF_NAT_IRC is not set
# CONFIG_NF_NAT_SIP is not set
# CONFIG_NF_NAT_TFTP is not set
CONFIG_NETFILTER_SYNPROXY=m
# CONFIG_NF_TABLES is not set
CONFIG_NETFILTER_XTABLES=y

#
# Xtables combined modules
#
CONFIG_NETFILTER_XT_MARK=y
CONFIG_NETFILTER_XT_CONNMARK=y
CONFIG_NETFILTER_XT_SET=m

#
# Xtables targets
#
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
CONFIG_NETFILTER_XT_TARGET_CT=m
CONFIG_NETFILTER_XT_TARGET_DSCP=m
CONFIG_NETFILTER_XT_TARGET_HL=m
# CONFIG_NETFILTER_XT_TARGET_HMARK is not set
CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
CONFIG_NETFILTER_XT_TARGET_LOG=m
CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_TARGET_NETMAP=m
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
CONFIG_NETFILTER_XT_TARGET_RATEEST=m
CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_TEE=m
# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
CONFIG_NETFILTER_XT_TARGET_TRACE=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m

#
# Xtables matches
#
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
# CONFIG_NETFILTER_XT_MATCH_BPF is not set
# CONFIG_NETFILTER_XT_MATCH_CGROUP is not set
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
# CONFIG_NETFILTER_XT_MATCH_CONNLABEL is not set
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
CONFIG_NETFILTER_XT_MATCH_CPU=m
CONFIG_NETFILTER_XT_MATCH_DCCP=m
CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
CONFIG_NETFILTER_XT_MATCH_DSCP=m
CONFIG_NETFILTER_XT_MATCH_ECN=m
CONFIG_NETFILTER_XT_MATCH_ESP=m
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
CONFIG_NETFILTER_XT_MATCH_HELPER=m
CONFIG_NETFILTER_XT_MATCH_HL=m
# CONFIG_NETFILTER_XT_MATCH_IPCOMP is not set
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
# CONFIG_NETFILTER_XT_MATCH_L2TP is not set
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
CONFIG_NETFILTER_XT_MATCH_MAC=m
CONFIG_NETFILTER_XT_MATCH_MARK=m
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
CONFIG_NETFILTER_XT_MATCH_NFACCT=m
CONFIG_NETFILTER_XT_MATCH_OSF=m
CONFIG_NETFILTER_XT_MATCH_OWNER=m
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
CONFIG_NETFILTER_XT_MATCH_RATEEST=m
CONFIG_NETFILTER_XT_MATCH_REALM=m
CONFIG_NETFILTER_XT_MATCH_RECENT=m
CONFIG_NETFILTER_XT_MATCH_SCTP=m
# CONFIG_NETFILTER_XT_MATCH_SOCKET is not set
CONFIG_NETFILTER_XT_MATCH_STATE=m
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
CONFIG_NETFILTER_XT_MATCH_STRING=m
CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_TIME=m
CONFIG_NETFILTER_XT_MATCH_U32=m
CONFIG_IP_SET=y
CONFIG_IP_SET_MAX=256
CONFIG_IP_SET_BITMAP_IP=m
CONFIG_IP_SET_BITMAP_IPMAC=m
CONFIG_IP_SET_BITMAP_PORT=m
CONFIG_IP_SET_HASH_IP=m
# CONFIG_IP_SET_HASH_IPMARK is not set
CONFIG_IP_SET_HASH_IPPORT=m
CONFIG_IP_SET_HASH_IPPORTIP=m
CONFIG_IP_SET_HASH_IPPORTNET=m
CONFIG_IP_SET_HASH_NETPORTNET=y
CONFIG_IP_SET_HASH_NET=m
CONFIG_IP_SET_HASH_NETNET=y
CONFIG_IP_SET_HASH_NETPORT=m
CONFIG_IP_SET_HASH_NETIFACE=m
CONFIG_IP_SET_LIST_SET=m
# CONFIG_IP_VS is not set

#
# IP: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV4=y
CONFIG_NF_CONNTRACK_IPV4=y
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_RPFILTER=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
# CONFIG_IP_NF_TARGET_SYNPROXY is not set
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_NF_NAT_IPV4=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_REDIRECT=m
# CONFIG_NF_NAT_PPTP is not set
# CONFIG_NF_NAT_H323 is not set
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
CONFIG_IP_NF_RAW=m
# CONFIG_IP_NF_SECURITY is not set
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m

#
# IPv6: Netfilter Configuration
#
# CONFIG_NF_DEFRAG_IPV6 is not set
# CONFIG_NF_CONNTRACK_IPV6 is not set
CONFIG_IP6_NF_IPTABLES=m
CONFIG_IP6_NF_MATCH_AH=m
CONFIG_IP6_NF_MATCH_EUI64=m
CONFIG_IP6_NF_MATCH_FRAG=m
CONFIG_IP6_NF_MATCH_OPTS=m
CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_MH=m
# CONFIG_IP6_NF_MATCH_RPFILTER is not set
# CONFIG_IP6_NF_MATCH_RT is not set
# CONFIG_IP6_NF_TARGET_HL is not set
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
# CONFIG_IP6_NF_SECURITY is not set
CONFIG_BRIDGE_NF_EBTABLES=m
CONFIG_BRIDGE_EBT_BROUTE=m
CONFIG_BRIDGE_EBT_T_FILTER=m
CONFIG_BRIDGE_EBT_T_NAT=m
CONFIG_BRIDGE_EBT_802_3=m
CONFIG_BRIDGE_EBT_AMONG=m
CONFIG_BRIDGE_EBT_ARP=m
CONFIG_BRIDGE_EBT_IP=m
# CONFIG_BRIDGE_EBT_IP6 is not set
CONFIG_BRIDGE_EBT_LIMIT=m
CONFIG_BRIDGE_EBT_MARK=m
CONFIG_BRIDGE_EBT_PKTTYPE=m
CONFIG_BRIDGE_EBT_STP=m
CONFIG_BRIDGE_EBT_VLAN=m
CONFIG_BRIDGE_EBT_ARPREPLY=m
CONFIG_BRIDGE_EBT_DNAT=m
CONFIG_BRIDGE_EBT_MARK_T=m
CONFIG_BRIDGE_EBT_REDIRECT=m
CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
CONFIG_BRIDGE_EBT_ULOG=m
CONFIG_BRIDGE_EBT_NFLOG=m
# CONFIG_IP_DCCP is not set
CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_OBJCNT is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_COOKIE_HMAC_MD5=y
CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_RDS is not set
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
# CONFIG_L2TP is not set
CONFIG_STP=y
CONFIG_BRIDGE=y
CONFIG_BRIDGE_IGMP_SNOOPING=y
# CONFIG_BRIDGE_VLAN_FILTERING is not set
CONFIG_HAVE_NET_DSA=y
CONFIG_VLAN_8021Q=y
# CONFIG_VLAN_8021Q_GVRP is not set
# CONFIG_VLAN_8021Q_MVRP is not set
# CONFIG_DECNET is not set
CONFIG_LLC=y
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_PHONET is not set
# CONFIG_IEEE802154 is not set
CONFIG_NET_SCHED=y

#
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_MULTIQ=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFB=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
# CONFIG_NET_SCH_NETEM is not set
# CONFIG_NET_SCH_DRR is not set
CONFIG_NET_SCH_MQPRIO=m
# CONFIG_NET_SCH_CHOKE is not set
# CONFIG_NET_SCH_QFQ is not set
# CONFIG_NET_SCH_CODEL is not set
# CONFIG_NET_SCH_FQ_CODEL is not set
# CONFIG_NET_SCH_FQ is not set
# CONFIG_NET_SCH_HHF is not set
# CONFIG_NET_SCH_PIE is not set
CONFIG_NET_SCH_INGRESS=m
# CONFIG_NET_SCH_PLUG is not set

#
# Classification
#
CONFIG_NET_CLS=y
CONFIG_NET_CLS_BASIC=m
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_FW=m
CONFIG_NET_CLS_U32=m
CONFIG_CLS_U32_PERF=y
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
# CONFIG_NET_CLS_FLOW is not set
# CONFIG_NET_CLS_CGROUP is not set
# CONFIG_NET_CLS_BPF is not set
CONFIG_NET_EMATCH=y
CONFIG_NET_EMATCH_STACK=32
CONFIG_NET_EMATCH_CMP=m
CONFIG_NET_EMATCH_NBYTE=m
CONFIG_NET_EMATCH_U32=m
CONFIG_NET_EMATCH_META=m
CONFIG_NET_EMATCH_TEXT=m
CONFIG_NET_EMATCH_IPSET=y
CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=m
CONFIG_NET_ACT_GACT=m
CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=m
CONFIG_NET_ACT_IPT=m
CONFIG_NET_ACT_NAT=m
CONFIG_NET_ACT_PEDIT=m
# CONFIG_NET_ACT_SIMP is not set
# CONFIG_NET_ACT_SKBEDIT is not set
# CONFIG_NET_ACT_CSUM is not set
# CONFIG_NET_CLS_IND is not set
CONFIG_NET_SCH_FIFO=y
# CONFIG_DCB is not set
CONFIG_DNS_RESOLVER=y
# CONFIG_BATMAN_ADV is not set
# CONFIG_OPENVSWITCH is not set
# CONFIG_VSOCKETS is not set
# CONFIG_NETLINK_MMAP is not set
# CONFIG_NETLINK_DIAG is not set
# CONFIG_NET_MPLS_GSO is not set
# CONFIG_HSR is not set
CONFIG_RPS=y
CONFIG_RFS_ACCEL=y
CONFIG_XPS=y
# CONFIG_CGROUP_NET_PRIO is not set
# CONFIG_CGROUP_NET_CLASSID is not set
CONFIG_NET_RX_BUSY_POLL=y
CONFIG_BQL=y
CONFIG_BPF_JIT=y
CONFIG_NET_FLOW_LIMIT=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_CAN is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_AF_RXRPC is not set
CONFIG_FIB_RULES=y
# CONFIG_WIRELESS is not set
# CONFIG_WIMAX is not set
# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set
# CONFIG_CAIF is not set
# CONFIG_CEPH_LIB is not set
# CONFIG_NFC is not set
CONFIG_HAVE_BPF_JIT=y

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER=y
CONFIG_UEVENT_HELPER_PATH="/sbin/udevadm"
CONFIG_DEVTMPFS=y
# CONFIG_DEVTMPFS_MOUNT is not set
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
# CONFIG_FIRMWARE_IN_KERNEL is not set
CONFIG_EXTRA_FIRMWARE=""
CONFIG_FW_LOADER_USER_HELPER=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_GENERIC_CPU_DEVICES is not set
CONFIG_GENERIC_CPU_AUTOPROBE=y
# CONFIG_DMA_SHARED_BUFFER is not set

#
# Bus devices
#
# CONFIG_CONNECTOR is not set
# CONFIG_MTD is not set
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
# CONFIG_PARPORT is not set
CONFIG_PNP=y
# CONFIG_PNP_DEBUG_MESSAGES is not set

#
# Protocols
#
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_NULL_BLK is not set
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
# CONFIG_BLK_DEV_DRBD is not set
CONFIG_BLK_DEV_NBD=y
# CONFIG_BLK_DEV_NVME is not set
# CONFIG_BLK_DEV_SKD is not set
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_CDROM_PKTCDVD is not set
CONFIG_ATA_OVER_ETH=m
# CONFIG_VIRTIO_BLK is not set
# CONFIG_BLK_DEV_HD is not set
# CONFIG_BLK_DEV_RBD is not set
# CONFIG_BLK_DEV_RSXX is not set

#
# Misc devices
#
# CONFIG_SENSORS_LIS3LV02D is not set
# CONFIG_AD525X_DPOT is not set
# CONFIG_DUMMY_IRQ is not set
# CONFIG_IBM_ASM is not set
# CONFIG_PHANTOM is not set
# CONFIG_SGI_IOC4 is not set
# CONFIG_TIFM_CORE is not set
# CONFIG_ICS932S401 is not set
# CONFIG_ENCLOSURE_SERVICES is not set
# CONFIG_HP_ILO is not set
# CONFIG_APDS9802ALS is not set
# CONFIG_ISL29003 is not set
# CONFIG_ISL29020 is not set
# CONFIG_SENSORS_TSL2550 is not set
# CONFIG_SENSORS_BH1780 is not set
# CONFIG_SENSORS_BH1770 is not set
# CONFIG_SENSORS_APDS990X is not set
# CONFIG_HMC6352 is not set
# CONFIG_DS1682 is not set
# CONFIG_BMP085_I2C is not set
# CONFIG_USB_SWITCH_FSA9480 is not set
# CONFIG_SRAM is not set
# CONFIG_C2PORT is not set

#
# EEPROM support
#
# CONFIG_EEPROM_AT24 is not set
# CONFIG_EEPROM_LEGACY is not set
# CONFIG_EEPROM_MAX6875 is not set
# CONFIG_EEPROM_93CX6 is not set
# CONFIG_CB710_CORE is not set

#
# Texas Instruments shared transport line discipline
#
# CONFIG_SENSORS_LIS3_I2C is not set

#
# Altera FPGA firmware download module
#
# CONFIG_ALTERA_STAPL is not set
# CONFIG_INTEL_MEI is not set
# CONFIG_INTEL_MEI_ME is not set
# CONFIG_INTEL_MEI_TXE is not set
# CONFIG_VMWARE_VMCI is not set

#
# Intel MIC Host Driver
#
# CONFIG_INTEL_MIC_HOST is not set

#
# Intel MIC Card Driver
#
# CONFIG_INTEL_MIC_CARD is not set
# CONFIG_GENWQE is not set
# CONFIG_ECHO is not set
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set

#
# SCSI device support
#
CONFIG_SCSI_MOD=y
CONFIG_RAID_ATTRS=m
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
CONFIG_SCSI_TGT=m
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_PROC_FS=y

#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_CHR_DEV_SG=y
# CONFIG_CHR_DEV_SCH is not set
CONFIG_SCSI_MULTI_LUN=y
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set
CONFIG_SCSI_SCAN_ASYNC=y

#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=m
CONFIG_SCSI_FC_ATTRS=m
# CONFIG_SCSI_FC_TGT_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=m
CONFIG_SCSI_SAS_ATTRS=m
CONFIG_SCSI_SAS_LIBSAS=m
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_SRP_ATTRS=m
CONFIG_SCSI_SRP_TGT_ATTRS=y
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=m
CONFIG_ISCSI_BOOT_SYSFS=m
# CONFIG_SCSI_CXGB3_ISCSI is not set
# CONFIG_SCSI_CXGB4_ISCSI is not set
# CONFIG_SCSI_BNX2_ISCSI is not set
# CONFIG_SCSI_BNX2X_FCOE is not set
# CONFIG_BE2ISCSI is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
CONFIG_SCSI_HPSA=m
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_3W_SAS is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_MVSAS is not set
# CONFIG_SCSI_MVUMI is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_ARCMSR is not set
# CONFIG_SCSI_ESAS2R is not set
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not set
CONFIG_MEGARAID_SAS=m
CONFIG_SCSI_MPT2SAS=m
CONFIG_SCSI_MPT2SAS_MAX_SGE=128
# CONFIG_SCSI_MPT2SAS_LOGGING is not set
CONFIG_SCSI_MPT3SAS=m
CONFIG_SCSI_MPT3SAS_MAX_SGE=128
# CONFIG_SCSI_MPT3SAS_LOGGING is not set
# CONFIG_SCSI_UFSHCD is not set
# CONFIG_SCSI_HPTIOP is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_VMWARE_PVSCSI is not set
# CONFIG_LIBFC is not set
# CONFIG_LIBFCOE is not set
# CONFIG_FCOE is not set
# CONFIG_FCOE_FNIC is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_ISCI is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_STEX is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
# CONFIG_SCSI_QLA_FC is not set
# CONFIG_SCSI_QLA_ISCSI is not set
# CONFIG_SCSI_LPFC is not set
# CONFIG_SCSI_DC395x is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_PMCRAID is not set
# CONFIG_SCSI_PM8001 is not set
# CONFIG_SCSI_SRP is not set
# CONFIG_SCSI_BFA_FC is not set
# CONFIG_SCSI_VIRTIO is not set
# CONFIG_SCSI_CHELSIO_FCOE is not set
# CONFIG_SCSI_DH is not set
# CONFIG_SCSI_OSD_INITIATOR is not set
# CONFIG_ATA is not set
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_LINEAR is not set
# CONFIG_MD_RAID0 is not set
CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=y
CONFIG_MD_RAID456=y
# CONFIG_MD_MULTIPATH is not set
# CONFIG_MD_FAULTY is not set
CONFIG_BCACHE=y
# CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not set
CONFIG_DM_BUFIO=y
# CONFIG_DM_CRYPT is not set
CONFIG_DM_SNAPSHOT=y
# CONFIG_DM_THIN_PROVISIONING is not set
# CONFIG_DM_CACHE is not set
# CONFIG_DM_ERA is not set
CONFIG_DM_MIRROR=m
# CONFIG_DM_LOG_USERSPACE is not set
# CONFIG_DM_RAID is not set
# CONFIG_DM_ZERO is not set
# CONFIG_DM_MULTIPATH is not set
# CONFIG_DM_DELAY is not set
CONFIG_DM_UEVENT=y
# CONFIG_DM_FLAKEY is not set
# CONFIG_DM_VERITY is not set
# CONFIG_DM_SWITCH is not set
# CONFIG_TARGET_CORE is not set
CONFIG_FUSION=y
CONFIG_FUSION_SPI=m
CONFIG_FUSION_FC=m
CONFIG_FUSION_SAS=m
CONFIG_FUSION_MAX_SGE=128
CONFIG_FUSION_CTL=m
# CONFIG_FUSION_LOGGING is not set

#
# IEEE 1394 (FireWire) support
#
# CONFIG_FIREWIRE is not set
# CONFIG_FIREWIRE_NOSY is not set
# CONFIG_I2O is not set
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
CONFIG_NET_CORE=y
CONFIG_BONDING=y
# CONFIG_DUMMY is not set
# CONFIG_EQUALIZER is not set
# CONFIG_NET_FC is not set
# CONFIG_IFB is not set
# CONFIG_NET_TEAM is not set
CONFIG_MACVLAN=y
CONFIG_MACVTAP=y
CONFIG_VXLAN=y
CONFIG_NETCONSOLE=m
CONFIG_NETCONSOLE_DYNAMIC=y
CONFIG_NETPOLL=y
CONFIG_NET_POLL_CONTROLLER=y
CONFIG_TUN=y
CONFIG_VETH=y
# CONFIG_VIRTIO_NET is not set
# CONFIG_NLMON is not set
# CONFIG_ARCNET is not set

#
# CAIF transport drivers
#
CONFIG_VHOST_NET=y
CONFIG_VHOST_RING=y
CONFIG_VHOST=y

#
# Distributed Switch Architecture drivers
#
# CONFIG_NET_DSA_MV88E6XXX is not set
# CONFIG_NET_DSA_MV88E6060 is not set
# CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set
# CONFIG_NET_DSA_MV88E6131 is not set
# CONFIG_NET_DSA_MV88E6123_61_65 is not set
CONFIG_ETHERNET=y
CONFIG_MDIO=y
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_NET_VENDOR_ADAPTEC is not set
# CONFIG_NET_VENDOR_ALTEON is not set
# CONFIG_ALTERA_TSE is not set
# CONFIG_NET_VENDOR_AMD is not set
# CONFIG_NET_VENDOR_ARC is not set
# CONFIG_NET_VENDOR_ATHEROS is not set
# CONFIG_NET_VENDOR_BROADCOM is not set
# CONFIG_NET_VENDOR_BROCADE is not set
# CONFIG_NET_CALXEDA_XGMAC is not set
# CONFIG_NET_VENDOR_CHELSIO is not set
# CONFIG_NET_VENDOR_CISCO is not set
# CONFIG_CX_ECAT is not set
# CONFIG_DNET is not set
# CONFIG_NET_VENDOR_DEC is not set
# CONFIG_NET_VENDOR_DLINK is not set
# CONFIG_NET_VENDOR_EMULEX is not set
# CONFIG_NET_VENDOR_EXAR is not set
# CONFIG_NET_VENDOR_HP is not set
CONFIG_NET_VENDOR_INTEL=y
# CONFIG_E100 is not set
# CONFIG_E1000 is not set
# CONFIG_E1000E is not set
CONFIG_IGB=m
CONFIG_IGB_HWMON=y
CONFIG_IGB_DCA=y
# CONFIG_IGBVF is not set
# CONFIG_IXGB is not set
CONFIG_IXGBE=y
CONFIG_IXGBE_HWMON=y
CONFIG_IXGBE_DCA=y
# CONFIG_IXGBEVF is not set
# CONFIG_I40E is not set
# CONFIG_I40EVF is not set
# CONFIG_NET_VENDOR_I825XX is not set
# CONFIG_IP1000 is not set
# CONFIG_JME is not set
# CONFIG_NET_VENDOR_MARVELL is not set
# CONFIG_NET_VENDOR_MELLANOX is not set
# CONFIG_NET_VENDOR_MICREL is not set
# CONFIG_NET_VENDOR_MYRI is not set
# CONFIG_FEALNX is not set
# CONFIG_NET_VENDOR_NATSEMI is not set
# CONFIG_NET_VENDOR_NVIDIA is not set
# CONFIG_NET_VENDOR_OKI is not set
# CONFIG_ETHOC is not set
# CONFIG_NET_PACKET_ENGINE is not set
# CONFIG_NET_VENDOR_QLOGIC is not set
# CONFIG_NET_VENDOR_REALTEK is not set
# CONFIG_SH_ETH is not set
# CONFIG_NET_VENDOR_RDC is not set
# CONFIG_NET_VENDOR_SAMSUNG is not set
# CONFIG_NET_VENDOR_SEEQ is not set
# CONFIG_NET_VENDOR_SILAN is not set
# CONFIG_NET_VENDOR_SIS is not set
# CONFIG_SFC is not set
# CONFIG_NET_VENDOR_SMSC is not set
# CONFIG_NET_VENDOR_STMICRO is not set
# CONFIG_NET_VENDOR_SUN is not set
# CONFIG_NET_VENDOR_TEHUTI is not set
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VIA is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_NET_SB1000 is not set
# CONFIG_PHYLIB is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set

#
# USB Network Adapters
#
# CONFIG_USB_CATC is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_RTL8152 is not set
# CONFIG_USB_USBNET is not set
# CONFIG_USB_IPHETH is not set
# CONFIG_WLAN is not set

#
# Enable WiMAX (Networking options) to see the WiMAX drivers
#
# CONFIG_WAN is not set
# CONFIG_VMXNET3 is not set
# CONFIG_ISDN is not set

#
# Input device support
#
CONFIG_INPUT=y
# CONFIG_INPUT_FF_MEMLESS is not set
# CONFIG_INPUT_POLLDEV is not set
# CONFIG_INPUT_SPARSEKMAP is not set
# CONFIG_INPUT_MATRIXKMAP is not set

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_EVBUG is not set

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
# CONFIG_KEYBOARD_ADP5588 is not set
# CONFIG_KEYBOARD_ADP5589 is not set
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_QT1070 is not set
# CONFIG_KEYBOARD_QT2160 is not set
CONFIG_KEYBOARD_LKKBD=m
# CONFIG_KEYBOARD_TCA6416 is not set
# CONFIG_KEYBOARD_TCA8418 is not set
# CONFIG_KEYBOARD_LM8333 is not set
# CONFIG_KEYBOARD_MAX7359 is not set
# CONFIG_KEYBOARD_MCS is not set
# CONFIG_KEYBOARD_MPR121 is not set
CONFIG_KEYBOARD_NEWTON=m
# CONFIG_KEYBOARD_OPENCORES is not set
CONFIG_KEYBOARD_STOWAWAY=m
CONFIG_KEYBOARD_SUNKBD=m
CONFIG_KEYBOARD_XTKBD=m
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_CYPRESS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
# CONFIG_MOUSE_PS2_ELANTECH is not set
# CONFIG_MOUSE_PS2_SENTELIC is not set
CONFIG_MOUSE_PS2_TOUCHKIT=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_APPLETOUCH is not set
# CONFIG_MOUSE_BCM5974 is not set
# CONFIG_MOUSE_CYAPA is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_MOUSE_SYNAPTICS_I2C is not set
# CONFIG_MOUSE_SYNAPTICS_USB is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_MISC=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_BMA150 is not set
CONFIG_INPUT_PCSPKR=y
# CONFIG_INPUT_MMA8450 is not set
# CONFIG_INPUT_MPU3050 is not set
# CONFIG_INPUT_ATLAS_BTNS is not set
# CONFIG_INPUT_ATI_REMOTE2 is not set
# CONFIG_INPUT_KEYSPAN_REMOTE is not set
# CONFIG_INPUT_KXTJ9 is not set
# CONFIG_INPUT_POWERMATE is not set
# CONFIG_INPUT_YEALINK is not set
# CONFIG_INPUT_CM109 is not set
# CONFIG_INPUT_UINPUT is not set
# CONFIG_INPUT_PCF8574 is not set
# CONFIG_INPUT_ADXL34X is not set
# CONFIG_INPUT_CMA3000 is not set
# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=m
# CONFIG_SERIO_CT82C710 is not set
CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_SERIO_ALTERA_PS2 is not set
# CONFIG_SERIO_PS2MULT is not set
# CONFIG_SERIO_ARC_PS2 is not set
# CONFIG_GAMEPORT is not set

#
# Character devices
#
CONFIG_TTY=y
CONFIG_VT=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_UNIX98_PTYS=y
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
# CONFIG_LEGACY_PTYS is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_NOZOMI is not set
# CONFIG_N_GSM is not set
# CONFIG_TRACE_SINK is not set

#
# KCopy
#
CONFIG_KCOPY=m
# CONFIG_DEVKMEM is not set

#
# Serial drivers
#
CONFIG_SERIAL_EARLYCON=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_DMA=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
CONFIG_SERIAL_8250_RSA=y
# CONFIG_SERIAL_8250_DW is not set

#
# Non-8250 serial port support
#
# CONFIG_SERIAL_MFD_HSU is not set
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
# CONFIG_SERIAL_JSM is not set
# CONFIG_SERIAL_SCCNXP is not set
# CONFIG_SERIAL_SC16IS7XX is not set
# CONFIG_SERIAL_ALTERA_JTAGUART is not set
# CONFIG_SERIAL_ALTERA_UART is not set
# CONFIG_SERIAL_ARC is not set
# CONFIG_SERIAL_RP2 is not set
# CONFIG_SERIAL_FSL_LPUART is not set
# CONFIG_VIRTIO_CONSOLE is not set
CONFIG_IPMI_HANDLER=y
CONFIG_IPMI_PANIC_EVENT=y
CONFIG_IPMI_PANIC_STRING=y
CONFIG_IPMI_DEVICE_INTERFACE=y
CONFIG_IPMI_SI=y
# CONFIG_IPMI_SI_PROBE_DEFAULTS is not set
CONFIG_IPMI_WATCHDOG=y
CONFIG_IPMI_POWEROFF=y
CONFIG_HW_RANDOM=y
# CONFIG_HW_RANDOM_TIMERIOMEM is not set
CONFIG_HW_RANDOM_INTEL=y
# CONFIG_HW_RANDOM_AMD is not set
# CONFIG_HW_RANDOM_VIA is not set
# CONFIG_HW_RANDOM_VIRTIO is not set
CONFIG_NVRAM=y
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_HPET_MMAP_DEFAULT=y
# CONFIG_HANGCHECK_TIMER is not set
# CONFIG_TCG_TPM is not set
# CONFIG_TELCLOCK is not set
CONFIG_DEVPORT=y
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=y
# CONFIG_I2C_MUX is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_ALGOBIT=m

#
# I2C Hardware Bus support
#

#
# PC SMBus host controller drivers
#
# CONFIG_I2C_ALI1535 is not set
# CONFIG_I2C_ALI1563 is not set
# CONFIG_I2C_ALI15X3 is not set
# CONFIG_I2C_AMD756 is not set
# CONFIG_I2C_AMD8111 is not set
CONFIG_I2C_I801=m
CONFIG_I2C_ISCH=m
CONFIG_I2C_ISMT=m
# CONFIG_I2C_PIIX4 is not set
# CONFIG_I2C_NFORCE2 is not set
# CONFIG_I2C_SIS5595 is not set
# CONFIG_I2C_SIS630 is not set
# CONFIG_I2C_SIS96X is not set
# CONFIG_I2C_VIA is not set
# CONFIG_I2C_VIAPRO is not set

#
# ACPI drivers
#
CONFIG_I2C_SCMI=y

#
# I2C system bus drivers (mostly embedded / system-on-chip)
#
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
# CONFIG_I2C_DESIGNWARE_PCI is not set
# CONFIG_I2C_OCORES is not set
# CONFIG_I2C_PCA_PLATFORM is not set
# CONFIG_I2C_PXA_PCI is not set
# CONFIG_I2C_SIMTEC is not set
# CONFIG_I2C_XILINX is not set

#
# External I2C/SMBus adapter drivers
#
# CONFIG_I2C_DIOLAN_U2C is not set
# CONFIG_I2C_PARPORT_LIGHT is not set
# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
# CONFIG_I2C_TAOS_EVM is not set
# CONFIG_I2C_TINY_USB is not set

#
# Other I2C/SMBus bus drivers
#
# CONFIG_I2C_STUB is not set
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_SPI is not set
# CONFIG_SPMI is not set
# CONFIG_HSI is not set

#
# PPS support
#
CONFIG_PPS=y
# CONFIG_PPS_DEBUG is not set
# CONFIG_NTP_PPS is not set

#
# PPS clients support
#
# CONFIG_PPS_CLIENT_KTIMER is not set
# CONFIG_PPS_CLIENT_LDISC is not set
# CONFIG_PPS_CLIENT_GPIO is not set

#
# PPS generators support
#

#
# PTP clock support
#
CONFIG_PTP_1588_CLOCK=y

#
# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
#
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
# CONFIG_GPIOLIB is not set
# CONFIG_W1 is not set
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
# CONFIG_PDA_POWER is not set
# CONFIG_TEST_POWER is not set
# CONFIG_BATTERY_DS2780 is not set
# CONFIG_BATTERY_DS2781 is not set
# CONFIG_BATTERY_DS2782 is not set
# CONFIG_BATTERY_SBS is not set
# CONFIG_BATTERY_BQ27x00 is not set
# CONFIG_BATTERY_MAX17040 is not set
# CONFIG_BATTERY_MAX17042 is not set
# CONFIG_CHARGER_MAX8903 is not set
# CONFIG_CHARGER_LP8727 is not set
# CONFIG_CHARGER_BQ2415X is not set
# CONFIG_CHARGER_SMB347 is not set
# CONFIG_POWER_RESET is not set
# CONFIG_POWER_AVS is not set
CONFIG_HWMON=y
# CONFIG_HWMON_VID is not set
# CONFIG_HWMON_DEBUG_CHIP is not set

#
# Native drivers
#
# CONFIG_SENSORS_ABITUGURU is not set
# CONFIG_SENSORS_ABITUGURU3 is not set
# CONFIG_SENSORS_AD7414 is not set
# CONFIG_SENSORS_AD7418 is not set
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
# CONFIG_SENSORS_ADM1029 is not set
# CONFIG_SENSORS_ADM1031 is not set
# CONFIG_SENSORS_ADM9240 is not set
# CONFIG_SENSORS_ADT7410 is not set
# CONFIG_SENSORS_ADT7411 is not set
# CONFIG_SENSORS_ADT7462 is not set
# CONFIG_SENSORS_ADT7470 is not set
# CONFIG_SENSORS_ADT7475 is not set
# CONFIG_SENSORS_ASC7621 is not set
# CONFIG_SENSORS_K8TEMP is not set
# CONFIG_SENSORS_K10TEMP is not set
# CONFIG_SENSORS_FAM15H_POWER is not set
# CONFIG_SENSORS_APPLESMC is not set
# CONFIG_SENSORS_ASB100 is not set
# CONFIG_SENSORS_ATXP1 is not set
# CONFIG_SENSORS_DS620 is not set
# CONFIG_SENSORS_DS1621 is not set
# CONFIG_SENSORS_I5K_AMB is not set
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_F71882FG is not set
# CONFIG_SENSORS_F75375S is not set
# CONFIG_SENSORS_FSCHMD is not set
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_G760A is not set
# CONFIG_SENSORS_G762 is not set
# CONFIG_SENSORS_HIH6130 is not set
# CONFIG_SENSORS_IBMAEM is not set
# CONFIG_SENSORS_IBMPEX is not set
CONFIG_SENSORS_CORETEMP=y
# CONFIG_SENSORS_IT87 is not set
# CONFIG_SENSORS_JC42 is not set
# CONFIG_SENSORS_LINEAGE is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC4151 is not set
# CONFIG_SENSORS_LTC4215 is not set
# CONFIG_SENSORS_LTC4222 is not set
# CONFIG_SENSORS_LTC4245 is not set
# CONFIG_SENSORS_LTC4260 is not set
# CONFIG_SENSORS_LTC4261 is not set
# CONFIG_SENSORS_MAX16065 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_MAX1668 is not set
# CONFIG_SENSORS_MAX197 is not set
# CONFIG_SENSORS_MAX6639 is not set
# CONFIG_SENSORS_MAX6642 is not set
# CONFIG_SENSORS_MAX6650 is not set
# CONFIG_SENSORS_MAX6697 is not set
# CONFIG_SENSORS_HTU21 is not set
# CONFIG_SENSORS_MCP3021 is not set
# CONFIG_SENSORS_LM63 is not set
# CONFIG_SENSORS_LM73 is not set
# CONFIG_SENSORS_LM75 is not set
# CONFIG_SENSORS_LM77 is not set
# CONFIG_SENSORS_LM78 is not set
# CONFIG_SENSORS_LM80 is not set
# CONFIG_SENSORS_LM83 is not set
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM87 is not set
# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_LM93 is not set
# CONFIG_SENSORS_LM95234 is not set
# CONFIG_SENSORS_LM95241 is not set
# CONFIG_SENSORS_LM95245 is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_PC87427 is not set
# CONFIG_SENSORS_NTC_THERMISTOR is not set
# CONFIG_SENSORS_NCT6683 is not set
# CONFIG_SENSORS_NCT6775 is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_PMBUS is not set
# CONFIG_SENSORS_SHT21 is not set
# CONFIG_SENSORS_SHTC1 is not set
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_DME1737 is not set
# CONFIG_SENSORS_EMC1403 is not set
# CONFIG_SENSORS_EMC2103 is not set
# CONFIG_SENSORS_EMC6W201 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_SMSC47M192 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
# CONFIG_SENSORS_SCH56XX_COMMON is not set
# CONFIG_SENSORS_SCH5627 is not set
# CONFIG_SENSORS_SCH5636 is not set
# CONFIG_SENSORS_SMM665 is not set
# CONFIG_SENSORS_ADC128D818 is not set
# CONFIG_SENSORS_ADS1015 is not set
# CONFIG_SENSORS_ADS7828 is not set
# CONFIG_SENSORS_AMC6821 is not set
# CONFIG_SENSORS_INA209 is not set
# CONFIG_SENSORS_INA2XX is not set
# CONFIG_SENSORS_THMC50 is not set
# CONFIG_SENSORS_TMP102 is not set
# CONFIG_SENSORS_TMP401 is not set
# CONFIG_SENSORS_TMP421 is not set
# CONFIG_SENSORS_VIA_CPUTEMP is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not set
# CONFIG_SENSORS_VT8231 is not set
# CONFIG_SENSORS_W83781D is not set
# CONFIG_SENSORS_W83791D is not set
# CONFIG_SENSORS_W83792D is not set
# CONFIG_SENSORS_W83793 is not set
# CONFIG_SENSORS_W83795 is not set
# CONFIG_SENSORS_W83L785TS is not set
# CONFIG_SENSORS_W83L786NG is not set
# CONFIG_SENSORS_W83627HF is not set
# CONFIG_SENSORS_W83627EHF is not set

#
# ACPI drivers
#
CONFIG_SENSORS_ACPI_POWER=y
# CONFIG_SENSORS_ATK0110 is not set
CONFIG_THERMAL=y
CONFIG_THERMAL_HWMON=y
CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
CONFIG_THERMAL_GOV_STEP_WISE=y
CONFIG_THERMAL_GOV_USER_SPACE=y
# CONFIG_THERMAL_EMULATION is not set
# CONFIG_INTEL_POWERCLAMP is not set
CONFIG_X86_PKG_TEMP_THERMAL=m
# CONFIG_ACPI_INT3403_THERMAL is not set
# CONFIG_INTEL_SOC_DTS_THERMAL is not set

#
# Texas Instruments thermal drivers
#
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
# CONFIG_WATCHDOG_NOWAYOUT is not set

#
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
# CONFIG_XILINX_WATCHDOG is not set
# CONFIG_DW_WATCHDOG is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_ADVANTECH_WDT is not set
# CONFIG_ALIM1535_WDT is not set
# CONFIG_ALIM7101_WDT is not set
# CONFIG_F71808E_WDT is not set
# CONFIG_SP5100_TCO is not set
# CONFIG_SBC_FITPC2_WATCHDOG is not set
# CONFIG_EUROTECH_WDT is not set
# CONFIG_IB700_WDT is not set
# CONFIG_IBMASR is not set
# CONFIG_WAFER_WDT is not set
# CONFIG_I6300ESB_WDT is not set
# CONFIG_IE6XX_WDT is not set
# CONFIG_ITCO_WDT is not set
# CONFIG_IT8712F_WDT is not set
# CONFIG_IT87_WDT is not set
CONFIG_HP_WATCHDOG=y
CONFIG_HPWDT_NMI_DECODING=y
# CONFIG_SC1200_WDT is not set
# CONFIG_PC87413_WDT is not set
# CONFIG_NV_TCO is not set
# CONFIG_60XX_WDT is not set
# CONFIG_CPU5_WDT is not set
# CONFIG_SMSC_SCH311X_WDT is not set
# CONFIG_SMSC37B787_WDT is not set
# CONFIG_VIA_WDT is not set
# CONFIG_W83627HF_WDT is not set
# CONFIG_W83877F_WDT is not set
# CONFIG_W83977F_WDT is not set
# CONFIG_MACHZ_WDT is not set
# CONFIG_SBC_EPX_C3_WATCHDOG is not set

#
# PCI-based Watchdog Cards
#
# CONFIG_PCIPCWATCHDOG is not set
# CONFIG_WDTPCI is not set

#
# USB-based Watchdog Cards
#
# CONFIG_USBPCWATCHDOG is not set
CONFIG_SSB_POSSIBLE=y

#
# Sonics Silicon Backplane
#
# CONFIG_SSB is not set
CONFIG_BCMA_POSSIBLE=y

#
# Broadcom specific AMBA
#
# CONFIG_BCMA is not set

#
# Multifunction device drivers
#
CONFIG_MFD_CORE=m
# CONFIG_MFD_CS5535 is not set
# CONFIG_MFD_AS3711 is not set
# CONFIG_PMIC_ADP5520 is not set
# CONFIG_MFD_BCM590XX is not set
# CONFIG_MFD_AXP20X is not set
# CONFIG_MFD_CROS_EC is not set
# CONFIG_PMIC_DA903X is not set
# CONFIG_MFD_DA9052_I2C is not set
# CONFIG_MFD_DA9055 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_MC13XXX_I2C is not set
# CONFIG_HTC_PASIC3 is not set
# CONFIG_LPC_ICH is not set
CONFIG_LPC_SCH=m
# CONFIG_MFD_JANZ_CMODIO is not set
# CONFIG_MFD_KEMPLD is not set
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
# CONFIG_MFD_88PM860X is not set
# CONFIG_MFD_MAX14577 is not set
# CONFIG_MFD_MAX77686 is not set
# CONFIG_MFD_MAX77693 is not set
# CONFIG_MFD_MAX8907 is not set
# CONFIG_MFD_MAX8925 is not set
# CONFIG_MFD_MAX8997 is not set
# CONFIG_MFD_MAX8998 is not set
# CONFIG_MFD_VIPERBOARD is not set
# CONFIG_MFD_RETU is not set
# CONFIG_MFD_PCF50633 is not set
# CONFIG_MFD_RDC321X is not set
# CONFIG_MFD_RTSX_PCI is not set
# CONFIG_MFD_RTSX_USB is not set
# CONFIG_MFD_RC5T583 is not set
# CONFIG_MFD_SEC_CORE is not set
# CONFIG_MFD_SI476X_CORE is not set
# CONFIG_MFD_SM501 is not set
# CONFIG_MFD_SMSC is not set
# CONFIG_ABX500_CORE is not set
# CONFIG_MFD_SYSCON is not set
# CONFIG_MFD_TI_AM335X_TSCADC is not set
# CONFIG_MFD_LP3943 is not set
# CONFIG_MFD_LP8788 is not set
# CONFIG_MFD_PALMAS is not set
# CONFIG_TPS6105X is not set
# CONFIG_TPS6507X is not set
# CONFIG_MFD_TPS65090 is not set
# CONFIG_MFD_TPS65217 is not set
# CONFIG_MFD_TPS65218 is not set
# CONFIG_MFD_TPS6586X is not set
# CONFIG_MFD_TPS80031 is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
# CONFIG_MFD_WL1273_CORE is not set
# CONFIG_MFD_LM3533 is not set
# CONFIG_MFD_TC3589X is not set
# CONFIG_MFD_TMIO is not set
# CONFIG_MFD_VX855 is not set
# CONFIG_MFD_ARIZONA_I2C is not set
# CONFIG_MFD_WM8400 is not set
# CONFIG_MFD_WM831X_I2C is not set
# CONFIG_MFD_WM8350_I2C is not set
# CONFIG_MFD_WM8994 is not set
# CONFIG_REGULATOR is not set
# CONFIG_MEDIA_SUPPORT is not set

#
# Graphics support
#
# CONFIG_AGP is not set
CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=16
# CONFIG_VGA_SWITCHEROO is not set

#
# Direct Rendering Manager
#
# CONFIG_DRM is not set

#
# Frame buffer Devices
#
# CONFIG_FB is not set
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
# CONFIG_VGASTATE is not set

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
CONFIG_DUMMY_CONSOLE=y
# CONFIG_SOUND is not set

#
# HID support
#
CONFIG_HID=y
# CONFIG_HID_BATTERY_STRENGTH is not set
CONFIG_HIDRAW=y
# CONFIG_UHID is not set
CONFIG_HID_GENERIC=y

#
# Special HID drivers
#
CONFIG_HID_A4TECH=y
# CONFIG_HID_ACRUX is not set
CONFIG_HID_APPLE=y
# CONFIG_HID_APPLEIR is not set
# CONFIG_HID_AUREAL is not set
CONFIG_HID_BELKIN=y
CONFIG_HID_CHERRY=y
CONFIG_HID_CHICONY=y
CONFIG_HID_CYPRESS=y
# CONFIG_HID_DRAGONRISE is not set
# CONFIG_HID_EMS_FF is not set
# CONFIG_HID_ELECOM is not set
# CONFIG_HID_ELO is not set
CONFIG_HID_EZKEY=y
# CONFIG_HID_HOLTEK is not set
# CONFIG_HID_HUION is not set
# CONFIG_HID_KEYTOUCH is not set
# CONFIG_HID_KYE is not set
# CONFIG_HID_UCLOGIC is not set
# CONFIG_HID_WALTOP is not set
# CONFIG_HID_GYRATION is not set
# CONFIG_HID_ICADE is not set
# CONFIG_HID_TWINHAN is not set
CONFIG_HID_KENSINGTON=y
# CONFIG_HID_LCPOWER is not set
# CONFIG_HID_LENOVO_TPKBD is not set
CONFIG_HID_LOGITECH=y
# CONFIG_HID_LOGITECH_DJ is not set
# CONFIG_LOGITECH_FF is not set
# CONFIG_LOGIRUMBLEPAD2_FF is not set
# CONFIG_LOGIG940_FF is not set
# CONFIG_LOGIWHEELS_FF is not set
# CONFIG_HID_MAGICMOUSE is not set
CONFIG_HID_MICROSOFT=y
CONFIG_HID_MONTEREY=y
# CONFIG_HID_MULTITOUCH is not set
# CONFIG_HID_NTRIG is not set
# CONFIG_HID_ORTEK is not set
# CONFIG_HID_PANTHERLORD is not set
# CONFIG_HID_PETALYNX is not set
# CONFIG_HID_PICOLCD is not set
# CONFIG_HID_PRIMAX is not set
# CONFIG_HID_ROCCAT is not set
# CONFIG_HID_SAITEK is not set
# CONFIG_HID_SAMSUNG is not set
# CONFIG_HID_SPEEDLINK is not set
# CONFIG_HID_STEELSERIES is not set
# CONFIG_HID_SUNPLUS is not set
# CONFIG_HID_RMI is not set
# CONFIG_HID_GREENASIA is not set
# CONFIG_HID_SMARTJOYPLUS is not set
# CONFIG_HID_TIVO is not set
# CONFIG_HID_TOPSEED is not set
# CONFIG_HID_THRUSTMASTER is not set
# CONFIG_HID_XINMO is not set
# CONFIG_HID_ZEROPLUS is not set
# CONFIG_HID_ZYDACRON is not set
# CONFIG_HID_SENSOR_HUB is not set

#
# USB HID support
#
CONFIG_USB_HID=y
# CONFIG_HID_PID is not set
CONFIG_USB_HIDDEV=y

#
# I2C HID support
#
# CONFIG_I2C_HID is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_COMMON=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y

#
# Miscellaneous USB options
#
CONFIG_USB_DEFAULT_PERSIST=y
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_MON is not set
# CONFIG_USB_WUSB_CBAF is not set

#
# USB Host Controller Drivers
#
# CONFIG_USB_C67X00_HCD is not set
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_EHCI_HCD=y
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
# CONFIG_USB_EHCI_TT_NEWSCHED is not set
CONFIG_USB_EHCI_PCI=y
# CONFIG_USB_EHCI_HCD_PLATFORM is not set
# CONFIG_USB_OXU210HP_HCD is not set
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1760_HCD is not set
# CONFIG_USB_ISP1362_HCD is not set
# CONFIG_USB_FUSBH200_HCD is not set
# CONFIG_USB_FOTG210_HCD is not set
CONFIG_USB_OHCI_HCD=y
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_UHCI_HCD=y
# CONFIG_USB_SL811_HCD is not set
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_HCD_TEST_MODE is not set

#
# USB Device Class drivers
#
# CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set
# CONFIG_USB_WDM is not set
# CONFIG_USB_TMC is not set

#
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
#

#
# also be needed; see USB_STORAGE Help for more info
#
CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
# CONFIG_USB_STORAGE_REALTEK is not set
# CONFIG_USB_STORAGE_DATAFAB is not set
# CONFIG_USB_STORAGE_FREECOM is not set
# CONFIG_USB_STORAGE_ISD200 is not set
# CONFIG_USB_STORAGE_USBAT is not set
# CONFIG_USB_STORAGE_SDDR09 is not set
# CONFIG_USB_STORAGE_SDDR55 is not set
# CONFIG_USB_STORAGE_JUMPSHOT is not set
# CONFIG_USB_STORAGE_ALAUDA is not set
# CONFIG_USB_STORAGE_ONETOUCH is not set
# CONFIG_USB_STORAGE_KARMA is not set
# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
# CONFIG_USB_STORAGE_ENE_UB6250 is not set
# CONFIG_USB_UAS is not set

#
# USB Imaging devices
#
# CONFIG_USB_MDC800 is not set
# CONFIG_USB_MICROTEK is not set
# CONFIG_USB_MUSB_HDRC is not set
# CONFIG_USB_DWC3 is not set
# CONFIG_USB_DWC2 is not set
# CONFIG_USB_CHIPIDEA is not set

#
# USB port drivers
#
# CONFIG_USB_SERIAL is not set

#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI62 is not set
# CONFIG_USB_EMI26 is not set
# CONFIG_USB_ADUTUX is not set
# CONFIG_USB_SEVSEG is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_LEGOTOWER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_FTDI_ELAN is not set
# CONFIG_USB_APPLEDISPLAY is not set
# CONFIG_USB_SISUSBVGA is not set
# CONFIG_USB_LD is not set
# CONFIG_USB_TRANCEVIBRATOR is not set
# CONFIG_USB_IOWARRIOR is not set
# CONFIG_USB_TEST is not set
# CONFIG_USB_EHSET_TEST_FIXTURE is not set
# CONFIG_USB_ISIGHTFW is not set
# CONFIG_USB_YUREX is not set
# CONFIG_USB_EZUSB_FX2 is not set
# CONFIG_USB_HSIC_USB3503 is not set

#
# USB Physical Layer drivers
#
# CONFIG_USB_PHY is not set
# CONFIG_NOP_USB_XCEIV is not set
# CONFIG_SAMSUNG_USB2PHY is not set
# CONFIG_SAMSUNG_USB3PHY is not set
# CONFIG_USB_ISP1301 is not set
# CONFIG_USB_GADGET is not set
# CONFIG_UWB is not set
# CONFIG_MMC is not set
# CONFIG_MEMSTICK is not set
# CONFIG_NEW_LEDS is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_INFINIBAND is not set
CONFIG_EDAC=y
CONFIG_EDAC_LEGACY_SYSFS=y
# CONFIG_EDAC_DEBUG is not set
CONFIG_EDAC_MM_EDAC=y
CONFIG_EDAC_GHES=y
# CONFIG_EDAC_E752X is not set
# CONFIG_EDAC_I82975X is not set
# CONFIG_EDAC_I3000 is not set
# CONFIG_EDAC_I3200 is not set
# CONFIG_EDAC_X38 is not set
# CONFIG_EDAC_I5400 is not set
# CONFIG_EDAC_I7CORE is not set
# CONFIG_EDAC_I5000 is not set
# CONFIG_EDAC_I5100 is not set
# CONFIG_EDAC_I7300 is not set
CONFIG_EDAC_SBRIDGE=y
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_SYSTOHC=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
# CONFIG_RTC_DEBUG is not set

#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
CONFIG_RTC_INTF_DEV=y
# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
# CONFIG_RTC_DRV_TEST is not set

#
# I2C RTC drivers
#
# CONFIG_RTC_DRV_DS1307 is not set
# CONFIG_RTC_DRV_DS1374 is not set
# CONFIG_RTC_DRV_DS1672 is not set
# CONFIG_RTC_DRV_DS3232 is not set
# CONFIG_RTC_DRV_MAX6900 is not set
# CONFIG_RTC_DRV_RS5C372 is not set
# CONFIG_RTC_DRV_ISL1208 is not set
# CONFIG_RTC_DRV_ISL12022 is not set
# CONFIG_RTC_DRV_ISL12057 is not set
# CONFIG_RTC_DRV_X1205 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_PCF8523 is not set
# CONFIG_RTC_DRV_PCF8563 is not set
# CONFIG_RTC_DRV_PCF8583 is not set
# CONFIG_RTC_DRV_M41T80 is not set
# CONFIG_RTC_DRV_BQ32K is not set
# CONFIG_RTC_DRV_S35390A is not set
# CONFIG_RTC_DRV_FM3130 is not set
# CONFIG_RTC_DRV_RX8581 is not set
# CONFIG_RTC_DRV_RX8025 is not set
# CONFIG_RTC_DRV_EM3027 is not set
# CONFIG_RTC_DRV_RV3029C2 is not set

#
# SPI RTC drivers
#

#
# Platform RTC drivers
#
CONFIG_RTC_DRV_CMOS=y
# CONFIG_RTC_DRV_DS1286 is not set
# CONFIG_RTC_DRV_DS1511 is not set
# CONFIG_RTC_DRV_DS1553 is not set
# CONFIG_RTC_DRV_DS1742 is not set
# CONFIG_RTC_DRV_STK17TA8 is not set
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_M48T35 is not set
# CONFIG_RTC_DRV_M48T59 is not set
# CONFIG_RTC_DRV_MSM6242 is not set
# CONFIG_RTC_DRV_BQ4802 is not set
# CONFIG_RTC_DRV_RP5C01 is not set
# CONFIG_RTC_DRV_V3020 is not set
# CONFIG_RTC_DRV_DS2404 is not set

#
# on-CPU RTC drivers
#
# CONFIG_RTC_DRV_MOXART is not set
# CONFIG_RTC_DRV_XGENE is not set

#
# HID Sensor RTC drivers
#
# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set
CONFIG_DMADEVICES=y
# CONFIG_DMADEVICES_DEBUG is not set

#
# DMA Devices
#
CONFIG_INTEL_MID_DMAC=y
CONFIG_INTEL_IOATDMA=y
# CONFIG_DW_DMAC_CORE is not set
# CONFIG_DW_DMAC is not set
# CONFIG_DW_DMAC_PCI is not set
CONFIG_DMA_ENGINE=y
CONFIG_DMA_ACPI=y

#
# DMA Clients
#
# CONFIG_ASYNC_TX_DMA is not set
# CONFIG_DMATEST is not set
CONFIG_DMA_ENGINE_RAID=y
CONFIG_DCA=y
# CONFIG_AUXDISPLAY is not set
# CONFIG_UIO is not set
# CONFIG_VFIO is not set
CONFIG_VIRT_DRIVERS=y
CONFIG_VIRTIO=y

#
# Virtio drivers
#
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_BALLOON=y
# CONFIG_VIRTIO_MMIO is not set

#
# Microsoft Hyper-V guest support
#
# CONFIG_STAGING is not set
# CONFIG_X86_PLATFORM_DEVICES is not set
# CONFIG_CHROME_PLATFORMS is not set

#
# SOC (System On Chip) specific Drivers
#

#
# Hardware Spinlock drivers
#
CONFIG_CLKEVT_I8253=y
CONFIG_I8253_LOCK=y
CONFIG_CLKBLD_I8253=y
# CONFIG_SH_TIMER_CMT is not set
# CONFIG_SH_TIMER_MTU2 is not set
# CONFIG_SH_TIMER_TMU is not set
# CONFIG_EM_TIMER_STI is not set
# CONFIG_MAILBOX is not set
CONFIG_IOMMU_API=y
CONFIG_IOMMU_SUPPORT=y
# CONFIG_AMD_IOMMU is not set
CONFIG_DMAR_TABLE=y
CONFIG_INTEL_IOMMU=y
# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
CONFIG_INTEL_IOMMU_FLOPPY_WA=y
CONFIG_IRQ_REMAP=y

#
# Remoteproc drivers
#
# CONFIG_STE_MODEM_RPROC is not set

#
# Rpmsg drivers
#
# CONFIG_PM_DEVFREQ is not set
# CONFIG_EXTCON is not set
# CONFIG_MEMORY is not set
# CONFIG_IIO is not set
# CONFIG_NTB is not set
# CONFIG_VME_BUS is not set
# CONFIG_PWM is not set
# CONFIG_IPACK_BUS is not set
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_FMC is not set

#
# PHY Subsystem
#
# CONFIG_GENERIC_PHY is not set
# CONFIG_BCM_KONA_USB2_PHY is not set
# CONFIG_PHY_SAMSUNG_USB2 is not set
# CONFIG_POWERCAP is not set
# CONFIG_MCB is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set
CONFIG_FIRMWARE_MEMMAP=y
# CONFIG_DELL_RBU is not set
# CONFIG_DCDBAS is not set
CONFIG_DMIID=y
# CONFIG_DMI_SYSFS is not set
CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y
# CONFIG_ISCSI_IBFT_FIND is not set
# CONFIG_GOOGLE_FIRMWARE is not set
CONFIG_UEFI_CPER=y

#
# File systems
#
CONFIG_DCACHE_WORD_ACCESS=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
# CONFIG_EXT2_FS_XIP is not set
# CONFIG_EXT3_FS is not set
CONFIG_EXT4_FS=y
CONFIG_EXT4_USE_FOR_EXT23=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
# CONFIG_EXT4_DEBUG is not set
CONFIG_JBD2=y
# CONFIG_JBD2_DEBUG is not set
CONFIG_FS_MBCACHE=y
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
CONFIG_XFS_FS=y
# CONFIG_XFS_QUOTA is not set
# CONFIG_XFS_POSIX_ACL is not set
# CONFIG_XFS_RT is not set
# CONFIG_XFS_WARN is not set
# CONFIG_XFS_DEBUG is not set
# CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set
# CONFIG_BTRFS_FS is not set
# CONFIG_NILFS2_FS is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=y
CONFIG_FILE_LOCKING=y
CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y
CONFIG_INOTIFY_USER=y
# CONFIG_FANOTIFY is not set
# CONFIG_QUOTA is not set
# CONFIG_QUOTACTL is not set
# CONFIG_AUTOFS4_FS is not set
CONFIG_FUSE_FS=y
# CONFIG_CUSE is not set

#
# Caches
#
CONFIG_FSCACHE=m
CONFIG_FSCACHE_STATS=y
# CONFIG_FSCACHE_HISTOGRAM is not set
# CONFIG_FSCACHE_DEBUG is not set
# CONFIG_FSCACHE_OBJECT_LIST is not set
CONFIG_CACHEFILES=m
# CONFIG_CACHEFILES_DEBUG is not set
# CONFIG_CACHEFILES_HISTOGRAM is not set

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_UDF_FS=m
CONFIG_UDF_NLS=y

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
# CONFIG_NTFS_FS is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_KERNFS=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_CONFIGFS_FS=y
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_ECRYPT_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_LOGFS is not set
# CONFIG_CRAMFS is not set
CONFIG_SQUASHFS=y
CONFIG_SQUASHFS_FILE_CACHE=y
# CONFIG_SQUASHFS_FILE_DIRECT is not set
CONFIG_SQUASHFS_DECOMP_SINGLE=y
# CONFIG_SQUASHFS_DECOMP_MULTI is not set
# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set
# CONFIG_SQUASHFS_XATTR is not set
CONFIG_SQUASHFS_ZLIB=y
# CONFIG_SQUASHFS_LZO is not set
CONFIG_SQUASHFS_XZ=y
# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
# CONFIG_SQUASHFS_EMBEDDED is not set
CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
# CONFIG_VXFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_OMFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_QNX6FS_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_PSTORE=y
# CONFIG_PSTORE_CONSOLE is not set
# CONFIG_PSTORE_RAM is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
# CONFIG_F2FS_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V2=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
CONFIG_NFS_V4=y
# CONFIG_NFS_SWAP is not set
# CONFIG_NFS_V4_1 is not set
# CONFIG_NFS_USE_LEGACY_DNS is not set
CONFIG_NFS_USE_KERNEL_DNS=y
CONFIG_NFSD=m
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
CONFIG_NFSD_V4=y
# CONFIG_NFSD_V4_SECURITY_LABEL is not set
# CONFIG_NFSD_FAULT_INJECTION is not set
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=y
# CONFIG_SUNRPC_DEBUG is not set
# CONFIG_CEPH_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=y
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
CONFIG_NLS_CODEPAGE_850=y
CONFIG_NLS_CODEPAGE_852=y
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
CONFIG_NLS_CODEPAGE_1250=y
# CONFIG_NLS_CODEPAGE_1251 is not set
CONFIG_NLS_ASCII=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_ISO8859_2=y
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
# CONFIG_NLS_MAC_ROMAN is not set
# CONFIG_NLS_MAC_CELTIC is not set
# CONFIG_NLS_MAC_CENTEURO is not set
# CONFIG_NLS_MAC_CROATIAN is not set
# CONFIG_NLS_MAC_CYRILLIC is not set
# CONFIG_NLS_MAC_GAELIC is not set
# CONFIG_NLS_MAC_GREEK is not set
# CONFIG_NLS_MAC_ICELAND is not set
# CONFIG_NLS_MAC_INUIT is not set
# CONFIG_NLS_MAC_ROMANIAN is not set
# CONFIG_NLS_MAC_TURKISH is not set
CONFIG_NLS_UTF8=y
# CONFIG_DLM is not set

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y

#
# printk and dmesg options
#
# CONFIG_PRINTK_TIME is not set
CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_DYNAMIC_DEBUG is not set

#
# Compile-time checks and compiler options
#
# CONFIG_DEBUG_INFO is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_FRAME_WARN=2048
# CONFIG_STRIP_ASM_SYMS is not set
# CONFIG_READABLE_ASM is not set
CONFIG_UNUSED_SYMBOLS=y
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
CONFIG_MAGIC_SYSRQ=y
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
CONFIG_DEBUG_KERNEL=y

#
# Memory Debugging
#
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_SLUB_DEBUG_ON is not set
# CONFIG_SLUB_STATS is not set
CONFIG_HAVE_DEBUG_KMEMLEAK=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_VIRTUAL is not set
CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_PER_CPU_MAPS is not set
CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
CONFIG_HAVE_ARCH_KMEMCHECK=y
# CONFIG_KMEMCHECK is not set
# CONFIG_DEBUG_SHIRQ is not set

#
# Debug Lockups and Hangs
#
# CONFIG_LOCKUP_DETECTOR is not set
# CONFIG_DETECT_HUNG_TASK is not set
# CONFIG_PANIC_ON_OOPS is not set
CONFIG_PANIC_ON_OOPS_VALUE=0
CONFIG_PANIC_TIMEOUT=0
# CONFIG_SCHED_DEBUG is not set
# CONFIG_SCHEDSTATS is not set
# CONFIG_TIMER_STATS is not set

#
# Lock Debugging (spinlocks, mutexes, etc...)
#
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_DEBUG_MUTEXES=y
# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
# CONFIG_DEBUG_LOCK_ALLOC is not set
# CONFIG_PROVE_LOCKING is not set
# CONFIG_LOCK_STAT is not set
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_LOCK_TORTURE_TEST is not set
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_PI_LIST is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_CREDENTIALS is not set

#
# RCU Debugging
#
# CONFIG_SPARSE_RCU_POINTER is not set
# CONFIG_TORTURE_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_CPU_STALL_INFO is not set
# CONFIG_RCU_TRACE is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_LATENCYTOP is not set
CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y
# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_FENTRY=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_TRACING_SUPPORT=y
# CONFIG_FTRACE is not set

#
# Runtime Testing
#
# CONFIG_LKDTM is not set
# CONFIG_TEST_LIST_SORT is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_RBTREE_TEST is not set
# CONFIG_INTERVAL_TREE_TEST is not set
# CONFIG_PERCPU_TEST is not set
# CONFIG_ATOMIC64_SELFTEST is not set
# CONFIG_ASYNC_RAID6_TEST is not set
# CONFIG_TEST_STRING_HELPERS is not set
# CONFIG_TEST_KSTRTOX is not set
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_TEST_MODULE is not set
# CONFIG_TEST_USER_COPY is not set
# CONFIG_TEST_BPF is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_KGDB is not set
# CONFIG_STRICT_DEVMEM is not set
CONFIG_X86_VERBOSE_BOOTUP=y
CONFIG_EARLY_PRINTK=y
# CONFIG_EARLY_PRINTK_DBGP is not set
# CONFIG_X86_PTDUMP is not set
# CONFIG_DEBUG_RODATA is not set
# CONFIG_DEBUG_SET_MODULE_RONX is not set
# CONFIG_DEBUG_NX_TEST is not set
CONFIG_DOUBLEFAULT=y
# CONFIG_DEBUG_TLBFLUSH is not set
# CONFIG_IOMMU_STRESS is not set
CONFIG_HAVE_MMIOTRACE_SUPPORT=y
CONFIG_IO_DELAY_TYPE_0X80=0
CONFIG_IO_DELAY_TYPE_0XED=1
CONFIG_IO_DELAY_TYPE_UDELAY=2
CONFIG_IO_DELAY_TYPE_NONE=3
CONFIG_IO_DELAY_0X80=y
# CONFIG_IO_DELAY_0XED is not set
# CONFIG_IO_DELAY_UDELAY is not set
# CONFIG_IO_DELAY_NONE is not set
CONFIG_DEFAULT_IO_DELAY_TYPE=0
# CONFIG_DEBUG_BOOT_PARAMS is not set
# CONFIG_CPA_DEBUG is not set
# CONFIG_OPTIMIZE_INLINING is not set
# CONFIG_DEBUG_NMI_SELFTEST is not set
# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set

#
# Security options
#
CONFIG_KEYS=y
# CONFIG_PERSISTENT_KEYRINGS is not set
# CONFIG_BIG_KEYS is not set
# CONFIG_ENCRYPTED_KEYS is not set
# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_PATH=y
# CONFIG_INTEL_TXT is not set
# CONFIG_SECURITY_SMACK is not set
# CONFIG_SECURITY_TOMOYO is not set
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_YAMA is not set
# CONFIG_IMA is not set
# CONFIG_EVM is not set
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_DEFAULT_SECURITY=""
CONFIG_XOR_BLOCKS=y
CONFIG_ASYNC_CORE=y
CONFIG_ASYNC_MEMCPY=y
CONFIG_ASYNC_XOR=y
CONFIG_ASYNC_PQ=y
CONFIG_ASYNC_RAID6_RECOV=y
CONFIG_CRYPTO=y

#
# Crypto core or helper
#
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=m
CONFIG_CRYPTO_AEAD2=y
CONFIG_CRYPTO_BLKCIPHER=m
CONFIG_CRYPTO_BLKCIPHER2=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_HASH2=y
CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_PCOMP2=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_MANAGER2=y
# CONFIG_CRYPTO_USER is not set
CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
# CONFIG_CRYPTO_GF128MUL is not set
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_PCRYPT is not set
CONFIG_CRYPTO_WORKQUEUE=y
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_AUTHENC=m
# CONFIG_CRYPTO_TEST is not set

#
# Authenticated Encryption with Associated Data
#
# CONFIG_CRYPTO_CCM is not set
# CONFIG_CRYPTO_GCM is not set
# CONFIG_CRYPTO_SEQIV is not set

#
# Block modes
#
CONFIG_CRYPTO_CBC=m
# CONFIG_CRYPTO_CTR is not set
# CONFIG_CRYPTO_CTS is not set
# CONFIG_CRYPTO_ECB is not set
# CONFIG_CRYPTO_LRW is not set
# CONFIG_CRYPTO_PCBC is not set
# CONFIG_CRYPTO_XTS is not set

#
# Hash modes
#
# CONFIG_CRYPTO_CMAC is not set
CONFIG_CRYPTO_HMAC=m
# CONFIG_CRYPTO_XCBC is not set
# CONFIG_CRYPTO_VMAC is not set

#
# Digest
#
CONFIG_CRYPTO_CRC32C=y
# CONFIG_CRYPTO_CRC32C_INTEL is not set
# CONFIG_CRYPTO_CRC32 is not set
# CONFIG_CRYPTO_CRC32_PCLMUL is not set
# CONFIG_CRYPTO_CRCT10DIF is not set
# CONFIG_CRYPTO_GHASH is not set
# CONFIG_CRYPTO_MD4 is not set
CONFIG_CRYPTO_MD5=y
# CONFIG_CRYPTO_MICHAEL_MIC is not set
# CONFIG_CRYPTO_RMD128 is not set
# CONFIG_CRYPTO_RMD160 is not set
# CONFIG_CRYPTO_RMD256 is not set
# CONFIG_CRYPTO_RMD320 is not set
CONFIG_CRYPTO_SHA1=y
# CONFIG_CRYPTO_SHA1_SSSE3 is not set
# CONFIG_CRYPTO_SHA256_SSSE3 is not set
# CONFIG_CRYPTO_SHA512_SSSE3 is not set
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_TGR192 is not set
# CONFIG_CRYPTO_WP512 is not set
# CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set

#
# Ciphers
#
CONFIG_CRYPTO_AES=y
# CONFIG_CRYPTO_AES_X86_64 is not set
# CONFIG_CRYPTO_AES_NI_INTEL is not set
# CONFIG_CRYPTO_ANUBIS is not set
# CONFIG_CRYPTO_ARC4 is not set
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_BLOWFISH_X86_64 is not set
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_CAMELLIA_X86_64 is not set
# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64 is not set
# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 is not set
# CONFIG_CRYPTO_CAST5 is not set
# CONFIG_CRYPTO_CAST5_AVX_X86_64 is not set
# CONFIG_CRYPTO_CAST6 is not set
# CONFIG_CRYPTO_CAST6_AVX_X86_64 is not set
CONFIG_CRYPTO_DES=m
# CONFIG_CRYPTO_FCRYPT is not set
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_SALSA20 is not set
# CONFIG_CRYPTO_SALSA20_X86_64 is not set
# CONFIG_CRYPTO_SEED is not set
# CONFIG_CRYPTO_SERPENT is not set
# CONFIG_CRYPTO_SERPENT_SSE2_X86_64 is not set
# CONFIG_CRYPTO_SERPENT_AVX_X86_64 is not set
# CONFIG_CRYPTO_SERPENT_AVX2_X86_64 is not set
# CONFIG_CRYPTO_TEA is not set
# CONFIG_CRYPTO_TWOFISH is not set
# CONFIG_CRYPTO_TWOFISH_X86_64 is not set
# CONFIG_CRYPTO_TWOFISH_X86_64_3WAY is not set
# CONFIG_CRYPTO_TWOFISH_AVX_X86_64 is not set

#
# Compression
#
CONFIG_CRYPTO_DEFLATE=m
# CONFIG_CRYPTO_ZLIB is not set
# CONFIG_CRYPTO_LZO is not set
# CONFIG_CRYPTO_LZ4 is not set
# CONFIG_CRYPTO_LZ4HC is not set

#
# Random Number Generation
#
# CONFIG_CRYPTO_ANSI_CPRNG is not set
# CONFIG_CRYPTO_USER_API_HASH is not set
# CONFIG_CRYPTO_USER_API_SKCIPHER is not set
# CONFIG_CRYPTO_HW is not set
# CONFIG_ASYMMETRIC_KEY_TYPE is not set
CONFIG_HAVE_KVM=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_IRQ_ROUTING=y
CONFIG_HAVE_KVM_EVENTFD=y
CONFIG_KVM_APIC_ARCHITECTURE=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y
CONFIG_HAVE_KVM_MSI=y
CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
CONFIG_KVM_VFIO=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
CONFIG_KVM_INTEL=y
# CONFIG_KVM_AMD is not set
# CONFIG_KVM_DEVICE_ASSIGNMENT is not set
# CONFIG_BINARY_PRINTF is not set

#
# Library routines
#
CONFIG_RAID6_PQ=y
CONFIG_BITREVERSE=y
CONFIG_GENERIC_STRNCPY_FROM_USER=y
CONFIG_GENERIC_STRNLEN_USER=y
CONFIG_GENERIC_NET_UTILS=y
CONFIG_GENERIC_FIND_FIRST_BIT=y
CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_IO=y
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
# CONFIG_CRC_CCITT is not set
CONFIG_CRC16=y
# CONFIG_CRC_T10DIF is not set
CONFIG_CRC_ITU_T=y
CONFIG_CRC32=y
# CONFIG_CRC32_SELFTEST is not set
CONFIG_CRC32_SLICEBY8=y
# CONFIG_CRC32_SLICEBY4 is not set
# CONFIG_CRC32_SARWATE is not set
# CONFIG_CRC32_BIT is not set
# CONFIG_CRC7 is not set
CONFIG_LIBCRC32C=y
# CONFIG_CRC8 is not set
# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set
# CONFIG_RANDOM32_SELFTEST is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_LZ4_DECOMPRESS=y
CONFIG_XZ_DEC=y
CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
CONFIG_XZ_DEC_IA64=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
CONFIG_XZ_DEC_SPARC=y
CONFIG_XZ_DEC_BCJ=y
# CONFIG_XZ_DEC_TEST is not set
CONFIG_DECOMPRESS_GZIP=y
CONFIG_DECOMPRESS_BZIP2=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_DECOMPRESS_XZ=y
CONFIG_DECOMPRESS_LZO=y
CONFIG_DECOMPRESS_LZ4=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m
CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
CONFIG_CHECK_SIGNATURE=y
CONFIG_CPU_RMAP=y
CONFIG_DQL=y
CONFIG_NLATTR=y
CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
# CONFIG_AVERAGE is not set
# CONFIG_CORDIC is not set
# CONFIG_DDR is not set
CONFIG_OID_REGISTRY=y

[-- Attachment #4: slub.s --]
[-- Type: application/octet-stream, Size: 273721 bytes --]

	.file	"slub.c"
# GNU C (Gentoo 4.8.3 p1.1, pie-0.5.9) version 4.8.3 (x86_64-pc-linux-gnu)
#	compiled by GNU C version 4.8.3, GMP version 5.1.3, MPFR version 3.1.2, MPC version 1.0.1
# GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
# options passed:  -nostdinc -I ./arch/x86/include
# -I arch/x86/include/generated -I include -I ./arch/x86/include/uapi
# -I arch/x86/include/generated/uapi -I ./include/uapi
# -I include/generated/uapi -D __KERNEL__ -D CONFIG_AS_CFI=1
# -D CONFIG_AS_CFI_SIGNAL_FRAME=1 -D CONFIG_AS_CFI_SECTIONS=1
# -D CONFIG_AS_FXSAVEQ=1 -D CONFIG_AS_CRC32=1 -D CONFIG_AS_AVX=1
# -D CONFIG_AS_AVX2=1 -D CC_HAVE_ASM_GOTO -D KBUILD_STR(s)=#s
# -D KBUILD_BASENAME=KBUILD_STR(slub) -D KBUILD_MODNAME=KBUILD_STR(slub)
# -isystem /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.3/include
# -include ./include/linux/kconfig.h -MD mm/.slub.s.d mm/slub.c -m64
# -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -march=core2
# -mno-red-zone -mcmodel=kernel -maccumulate-outgoing-args -mno-sse
# -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -auxbase-strip mm/slub.s -O2 -Wall
# -Wundef -Wstrict-prototypes -Wno-trigraphs
# -Werror=implicit-function-declaration -Wno-format-security
# -Wno-sign-compare -Wframe-larger-than=2048 -Wno-unused-but-set-variable
# -Wdeclaration-after-statement -Wno-pointer-sign -Werror=implicit-int
# -Werror=strict-prototypes -fno-strict-aliasing -fno-common
# -funit-at-a-time -fno-asynchronous-unwind-tables
# -fno-delete-null-pointer-checks -fno-stack-protector
# -fno-omit-frame-pointer -fno-optimize-sibling-calls
# -fno-var-tracking-assignments -fno-strict-overflow -fconserve-stack
# -fverbose-asm
# options enabled:  -faggressive-loop-optimizations -fauto-inc-dec
# -fbranch-count-reg -fcaller-saves -fcombine-stack-adjustments
# -fcompare-elim -fcprop-registers -fcrossjumping -fcse-follow-jumps
# -fdefer-pop -fdevirtualize -fdwarf2-cfi-asm -fearly-inlining
# -feliminate-unused-debug-types -fexpensive-optimizations
# -fforward-propagate -ffunction-cse -fgcse -fgcse-lm -fgnu-runtime
# -fguess-branch-probability -fhoist-adjacent-loads -fident -fif-conversion
# -fif-conversion2 -findirect-inlining -finline -finline-atomics
# -finline-functions-called-once -finline-small-functions -fipa-cp
# -fipa-profile -fipa-pure-const -fipa-reference -fipa-sra
# -fira-hoist-pressure -fira-share-save-slots -fira-share-spill-slots
# -fivopts -fkeep-static-consts -fleading-underscore -fmath-errno
# -fmerge-constants -fmerge-debug-strings -fmove-loop-invariants
# -foptimize-register-move -foptimize-strlen -fpartial-inlining -fpeephole
# -fpeephole2 -fprefetch-loop-arrays -free -freg-struct-return -fregmove
# -freorder-blocks -freorder-functions -frerun-cse-after-loop
# -fsched-critical-path-heuristic -fsched-dep-count-heuristic
# -fsched-group-heuristic -fsched-interblock -fsched-last-insn-heuristic
# -fsched-rank-heuristic -fsched-spec -fsched-spec-insn-heuristic
# -fsched-stalled-insns-dep -fschedule-insns2 -fshow-column -fshrink-wrap
# -fsigned-zeros -fsplit-ivs-in-unroller -fsplit-wide-types
# -fstrict-volatile-bitfields -fsync-libcalls -fthread-jumps
# -ftoplevel-reorder -ftrapping-math -ftree-bit-ccp -ftree-builtin-call-dce
# -ftree-ccp -ftree-ch -ftree-coalesce-vars -ftree-copy-prop
# -ftree-copyrename -ftree-cselim -ftree-dce -ftree-dominator-opts
# -ftree-dse -ftree-forwprop -ftree-fre -ftree-loop-if-convert
# -ftree-loop-im -ftree-loop-ivcanon -ftree-loop-optimize
# -ftree-parallelize-loops= -ftree-phiprop -ftree-pre -ftree-pta
# -ftree-reassoc -ftree-scev-cprop -ftree-sink -ftree-slp-vectorize
# -ftree-slsr -ftree-sra -ftree-switch-conversion -ftree-tail-merge
# -ftree-ter -ftree-vect-loop-version -ftree-vrp -funit-at-a-time
# -fverbose-asm -fzero-initialized-in-bss -m128bit-long-double -m64
# -maccumulate-outgoing-args -malign-stringops -mcx16 -mfxsr -mglibc
# -mieee-fp -mlong-double-80 -mno-fancy-math-387 -mno-red-zone -mno-sse4
# -mpush-args -msahf -mtls-direct-seg-refs

	.text
	.p2align 4,,15
	.type	has_cpu_slab, @function
has_cpu_slab:
	movslq	%edi, %rdi	# cpu, cpu
	movq	(%rsi), %rdx	# MEM[(struct kmem_cache *)info_2(D)].cpu_slab, D.44146
	pushq	%rbp	#
	addq	__per_cpu_offset(,%rdi,8), %rdx	# __per_cpu_offset, D.44146
	movq	%rsp, %rbp	#,
	movl	$1, %eax	#, D.44150
	cmpq	$0, 16(%rdx)	#, _9->page
	je	.L6	#,
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L6:
	cmpq	$0, 24(%rdx)	#, _9->partial
	popq	%rbp	#
	setne	%al	#, D.44150
	ret
	.size	has_cpu_slab, .-has_cpu_slab
	.p2align 4,,15
	.type	count_free, @function
count_free:
	movzwl	26(%rdi), %eax	# *page_2(D), *page_2(D)
	pushq	%rbp	#
	movzwl	24(%rdi), %edx	# page_2(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44155
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	andl	$32767, %eax	#, D.44155
	subl	%edx, %eax	# D.44155, D.44155
	ret
	.size	count_free, .-count_free
	.section	.init.text,"ax",@progbits
	.type	setup_slub_nomerge, @function
setup_slub_nomerge:
	pushq	%rbp	#
	movl	$1, %eax	#,
	movl	$1, slub_nomerge(%rip)	#, slub_nomerge
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	ret
	.size	setup_slub_nomerge, .-setup_slub_nomerge
	.text
	.p2align 4,,15
	.type	count_inuse, @function
count_inuse:
	pushq	%rbp	#
	movzwl	24(%rdi), %eax	# page_2(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44162
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	ret
	.size	count_inuse, .-count_inuse
	.p2align 4,,15
	.type	count_total, @function
count_total:
	movzwl	26(%rdi), %eax	# *page_2(D), *page_2(D)
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	andl	$32767, %eax	#, D.44166
	ret
	.size	count_total, .-count_total
	.p2align 4,,15
	.type	reclaim_account_store, @function
reclaim_account_store:
	movq	8(%rdi), %rcx	# s_3(D)->flags, D.44169
	pushq	%rbp	#
	movq	%rdx, %rax	# length, length
	movq	%rsp, %rbp	#,
	andq	$-131073, %rcx	#, D.44169
	movq	%rcx, 8(%rdi)	# D.44169, s_3(D)->flags
	cmpb	$49, (%rsi)	#, *buf_7(D)
	je	.L18	#,
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L18:
	orq	$131072, %rcx	#, tmp69
	popq	%rbp	#
	movq	%rcx, 8(%rdi)	# tmp69, s_3(D)->flags
	ret
	.size	reclaim_account_store, .-reclaim_account_store
	.p2align 4,,15
	.type	sanity_checks_store, @function
sanity_checks_store:
	movq	8(%rdi), %rcx	# s_3(D)->flags, D.44174
	movq	%rdx, %rax	# length, length
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	movq	%rcx, %rdx	# D.44174, tmp69
	andb	$254, %dh	#, tmp69
	movq	%rdx, 8(%rdi)	# tmp69, s_3(D)->flags
	cmpb	$49, (%rsi)	#, *buf_7(D)
	je	.L22	#,
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L22:
	andq	$-1073742081, %rcx	#, tmp71
	popq	%rbp	#
	orb	$1, %ch	#, tmp71
	movq	%rcx, 8(%rdi)	# tmp71, s_3(D)->flags
	ret
	.size	sanity_checks_store, .-sanity_checks_store
	.p2align 4,,15
	.type	trace_store, @function
trace_store:
	movq	8(%rdi), %rcx	# s_3(D)->flags, D.44179
	movq	%rdx, %rax	# length, length
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	movq	%rcx, %rdx	# D.44179, tmp69
	andq	$-2097153, %rdx	#, tmp69
	movq	%rdx, 8(%rdi)	# tmp69, s_3(D)->flags
	cmpb	$49, (%rsi)	#, *buf_7(D)
	je	.L26	#,
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L26:
	andq	$-1075838977, %rcx	#, tmp71
	popq	%rbp	#
	orq	$2097152, %rcx	#, tmp71
	movq	%rcx, 8(%rdi)	# tmp71, s_3(D)->flags
	ret
	.size	trace_store, .-trace_store
	.p2align 4,,15
	.type	validate_show, @function
validate_show:
	pushq	%rbp	#
	xorl	%eax, %eax	#
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	ret
	.size	validate_show, .-validate_show
	.p2align 4,,15
	.type	shrink_show, @function
shrink_show:
	pushq	%rbp	#
	xorl	%eax, %eax	#
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	ret
	.size	shrink_show, .-shrink_show
	.p2align 4,,15
	.type	slab_attr_show, @function
slab_attr_show:
	movq	16(%rsi), %rax	# MEM[(struct slab_attribute *)attr_3(D)].show, D.44189
	subq	$120, %rdi	#, s
	testq	%rax, %rax	# D.44189
	je	.L33	#,
	pushq	%rbp	#
	movq	%rdx, %rsi	# buf,
	movq	%rsp, %rbp	#,
	call	*%rax	# D.44189
	popq	%rbp	#
	cltq
	ret
	.p2align 4,,10
	.p2align 3
.L33:
	movq	$-5, %rax	#, D.44188
	ret
	.size	slab_attr_show, .-slab_attr_show
	.p2align 4,,15
	.type	slab_attr_store, @function
slab_attr_store:
	movq	24(%rsi), %rax	# MEM[(struct slab_attribute *)attr_3(D)].store, D.44194
	subq	$120, %rdi	#, s
	testq	%rax, %rax	# D.44194
	je	.L38	#,
	pushq	%rbp	#
	movq	%rdx, %r8	# buf, buf
	movq	%rcx, %rdx	# len,
	movq	%rsp, %rbp	#,
	movq	%r8, %rsi	# buf,
	call	*%rax	# D.44194
	popq	%rbp	#
	cltq
	ret
	.p2align 4,,10
	.p2align 3
.L38:
	movq	$-5, %rax	#, D.44193
	ret
	.size	slab_attr_store, .-slab_attr_store
	.p2align 4,,15
	.type	uevent_filter, @function
uevent_filter:
	xorl	%eax, %eax	# D.44199
	cmpq	$slab_ktype, 40(%rsi)	#, MEM[(struct kobject *)kobj_3(D) + 40B]
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	sete	%al	#, D.44199
	ret
	.size	uevent_filter, .-uevent_filter
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC0:
	.string	"\0013slub_debug option '%c' unknown. skipped\n"
	.section	.init.text
	.type	setup_slub_debug, @function
setup_slub_debug:
	movl	$68864, slub_debug(%rip)	#, slub_debug
	cmpb	$61, (%rdi)	#, *str_9(D)
	jne	.L82	#,
	movb	1(%rdi), %al	# MEM[(char *)str_9(D) + 1B], D.44210
	testb	%al, %al	# D.44210
	je	.L82	#,
	pushq	%rbp	#
	cmpb	$44, %al	#, D.44210
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	leaq	1(%rdi), %rbx	#, str
	je	.L47	#,
	leal	32(%rax), %edx	#, tmp106
	movzbl	%al, %ecx	# D.44210, D.44212
	testb	$1, _ctype(%rcx)	#, _ctype
	cmove	%eax, %edx	# tmp106,, D.44210, c
	cmpb	$111, %dl	#, c
	jne	.L49	#,
	movl	$1, disable_higher_order_debug(%rip)	#, disable_higher_order_debug
	jmp	.L45	#
.L49:
	movl	$0, slub_debug(%rip)	#, slub_debug
	cmpb	$45, %al	#, D.44210
	je	.L45	#,
.L50:
	movsbl	(%rbx), %esi	# MEM[base: str_1, offset: 0B],
	cmpb	$44, %sil	#, D.44210
	je	.L47	#,
	testb	%sil, %sil	# D.44210
	je	.L47	#,
	leal	32(%rsi), %eax	#, tmp107
	movzbl	%sil, %edx	# D.44210, D.44212
	testb	$1, _ctype(%rdx)	#, _ctype
	cmove	%esi, %eax	# tmp107,, D.44210, c
	cmpb	$112, %al	#, c
	je	.L53	#,
	ja	.L54	#,
	cmpb	$97, %al	#, c
	je	.L55	#,
	cmpb	$102, %al	#, c
	jne	.L52	#,
	orl	$256, slub_debug(%rip)	#, slub_debug
	jmp	.L55	#
.L54:
	cmpb	$117, %al	#, c
	je	.L57	#,
	cmpb	$122, %al	#, c
	je	.L58	#,
	cmpb	$116, %al	#, c
	jne	.L52	#,
	orl	$2097152, slub_debug(%rip)	#, slub_debug
	jmp	.L55	#
.L58:
	orl	$1024, slub_debug(%rip)	#, slub_debug
	jmp	.L55	#
.L53:
	orl	$2048, slub_debug(%rip)	#, slub_debug
	jmp	.L55	#
.L57:
	orl	$65536, slub_debug(%rip)	#, slub_debug
	jmp	.L55	#
.L52:
	movq	$.LC0, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
.L55:
	incq	%rbx	# str
	jmp	.L50	#
.L47:
	cmpb	$44, (%rbx)	#, *str_2
	jne	.L45	#,
	incq	%rbx	# tmp104
	movq	%rbx, slub_debug_slabs(%rip)	# tmp104, slub_debug_slabs
.L45:
	popq	%rbx	#
	movl	$1, %eax	#,
	popq	%rbp	#
	ret
.L82:
	movl	$1, %eax	#,
	ret
	.size	setup_slub_debug, .-setup_slub_debug
	.section	.rodata.str1.8
	.align 8
.LC1:
	.string	"\0013INFO: %s in %pS age=%lu cpu=%u pid=%d\n"
	.text
	.p2align 4,,15
	.type	print_track, @function
print_track:
	movq	(%rsi), %rdx	# t_3(D)->addr, D.44218
	testq	%rdx, %rdx	# D.44218
	jne	.L91	#,
	ret
.L91:
	movq	jiffies(%rip), %rcx	# jiffies, D.44218
	pushq	%rbp	#
	xorl	%eax, %eax	#
	movl	12(%rsi), %r9d	# t_3(D)->pid,
	movq	%rsp, %rbp	#,
	movl	8(%rsi), %r8d	# t_3(D)->cpu,
	subq	16(%rsi), %rcx	# t_3(D)->when, D.44218
	movq	%rdi, %rsi	# s,
	movq	$.LC1, %rdi	#,
	call	printk	#
	popq	%rbp	#
	ret
	.size	print_track, .-print_track
	.p2align 4,,15
	.type	set_track, @function
set_track:
	movslq	32(%rdi), %rax	# MEM[(struct kmem_cache *)s_3(D) + 32B],
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	testl	%eax, %eax	# D.44224
	je	.L93	#,
	leaq	8(%rsi,%rax), %rsi	#, p
	movl	%edx, %edx	# alloc, D.44226
	testq	%rcx, %rcx	# addr
	leaq	(%rdx,%rdx,2), %rax	#, D.44226
	leaq	(%rsi,%rax,8), %rax	#, D.44227
	je	.L95	#,
.L98:
	movq	%rcx, (%rax)	# addr, _25->addr
#APP
# 528 "mm/slub.c" 1
	movl %gs:cpu_number,%edx	# cpu_number, pscr_ret__
# 0 "" 2
#NO_APP
	movl	%edx, 8(%rax)	# pscr_ret__, _25->cpu
#APP
# 14 "./arch/x86/include/asm/current.h" 1
	movq %gs:current_task,%rdx	#, pfo_ret__
# 0 "" 2
#NO_APP
	movl	748(%rdx), %edx	# pfo_ret___26->pid, D.44224
	movl	%edx, 12(%rax)	# D.44224, _25->pid
	movq	jiffies(%rip), %rdx	# jiffies, jiffies.75
	movq	%rdx, 16(%rax)	# jiffies.75, _25->when
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L93:
	movslq	80(%rdi), %rax	# MEM[(int *)s_3(D) + 80B], D.44225
	movl	%edx, %edx	# alloc, D.44226
	addq	%rax, %rsi	# D.44225, p
	testq	%rcx, %rcx	# addr
	leaq	(%rdx,%rdx,2), %rax	#, D.44226
	leaq	(%rsi,%rax,8), %rax	#, D.44227
	jne	.L98	#,
.L95:
	movq	$0, (%rax)	#, MEM[(void *)_25]
	movq	$0, 8(%rax)	#, MEM[(void *)_25]
	movq	$0, 16(%rax)	#, MEM[(void *)_25]
	popq	%rbp	#
	ret
	.size	set_track, .-set_track
	.p2align 4,,15
	.type	get_map, @function
get_map:
	pushq	%rbp	#
	movq	%rdx, %r8	# map, map
	movq	(%rsi), %rax	# MEM[(const struct page *)page_4(D)], D.44234
	movq	%rsp, %rbp	#,
	shrq	$45, %rax	#, D.44234
	movq	%rax, %rdx	# D.44234, D.44234
	shrq	$7, %rdx	#, D.44234
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44235
	testq	%rdx, %rdx	# D.44235
	je	.L100	#,
	andl	$127, %eax	#, D.44234
	salq	$5, %rax	#, D.44234
	addq	%rax, %rdx	# D.44234, D.44235
.L100:
	movabsq	$-131941395333120, %r9	#, tmp105
	movq	(%rdx), %rax	# MEM[(struct mem_section *)_23], map
	movq	%rsi, %rdx	# page, D.44236
	movq	16(%rsi), %rcx	# page_4(D)->D.11432.D.11414.freelist, p
	andq	$-4, %rax	#, map
	subq	%rax, %rdx	# map, D.44236
	movq	%rdx, %rax	# D.44236, D.44236
	sarq	$6, %rax	#, D.44236
	salq	$12, %rax	#, D.44236
	addq	%rax, %r9	# D.44236, D.44234
	testq	%rcx, %rcx	# p
	je	.L99	#,
	.p2align 4,,10
	.p2align 3
.L108:
	movslq	24(%rdi), %rsi	# MEM[(struct kmem_cache *)s_6(D) + 24B], D.44233
	movq	%rcx, %rax	# p, D.44233
	subq	%r9, %rax	# D.44234, D.44233
	cqto
	idivq	%rsi	# D.44233
	cltq
#APP
# 80 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts %rax,(%r8)	# D.44233, MEM[(volatile long int *)map_9(D)]
# 0 "" 2
#NO_APP
	movslq	32(%rdi), %rax	# MEM[(struct kmem_cache *)s_6(D) + 32B], D.44237
	movq	(%rcx,%rax), %rcx	# *_47, p
	testq	%rcx, %rcx	# p
	jne	.L108	#,
.L99:
	popq	%rbp	#
	ret
	.size	get_map, .-get_map
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC2:
	.string	"mm/slub.c"
	.text
	.p2align 4,,15
	.globl	ksize
	.type	ksize, @function
ksize:
	cmpq	$16, %rdi	#, object
	je	.L122	#,
	movabsq	$131939247849472, %rax	#, iftmp.154
	movl	$2147483648, %edx	#, tmp104
	pushq	%rbp	#
	addq	%rdx, %rdi	# tmp104, y
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	cmovc	phys_base(%rip), %rax	# phys_base,, iftmp.154
	addq	%rax, %rdi	# iftmp.154, x
	movq	%rdi, %rcx	# x, __pfn
	movq	%rdi, %rdx	# x, D.44243
	shrq	$34, %rdi	#, D.44243
	movq	mem_section(,%rdi,8), %rax	# mem_section, D.44245
	shrq	$12, %rcx	#, __pfn
	shrq	$27, %rdx	#, D.44243
	testq	%rax, %rax	# D.44245
	je	.L115	#,
	andl	$127, %edx	#, D.44243
	salq	$5, %rdx	#, D.44243
	addq	%rdx, %rax	# D.44243, D.44245
.L115:
	movq	(%rax), %rax	# MEM[(struct mem_section *)_34], map
	salq	$6, %rcx	#, D.44243
	andq	$-4, %rax	#, map
	addq	%rcx, %rax	# D.44243, page
	movq	(%rax), %rdx	# MEM[(const long unsigned int *)page_39], D.44243
	andb	$128, %dh	#, D.44243
	jne	.L133	#,
	movq	%rax, %rbx	# page, D.44246
.L116:
	movq	(%rbx), %rax	# MEM[(const long unsigned int *)_53], D.44243
	testb	$-128, %al	#, D.44243
	je	.L134	#,
	movq	48(%rbx), %rax	# _53->D.11450.slab_cache, D.44244
	movq	8(%rax), %rdx	# MEM[(const struct kmem_cache *)_21].flags, D.44243
	testb	$12, %dh	#, D.44243
	jne	.L135	#,
	testl	$589824, %edx	#, D.44243
	je	.L121	#,
	movslq	80(%rax), %rax	# MEM[(const struct kmem_cache *)_21].inuse, D.44242
.L113:
	popq	%rbx	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L135:
	popq	%rbx	#
	movslq	28(%rax), %rax	# MEM[(const struct kmem_cache *)_21].object_size, D.44242
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L121:
	popq	%rbx	#
	movslq	24(%rax), %rax	# MEM[(const struct kmem_cache *)_21].size, D.44242
	popq	%rbp	#
	ret
.L134:
	testq	$49152, (%rbx)	#, MEM[(struct page *)_53]
	je	.L136	#,
.L118:
	movq	(%rbx), %rax	# MEM[(const long unsigned int *)_53], D.44243
	xorl	%ecx, %ecx	# D.44247
	testb	$64, %ah	#, D.44243
	je	.L119	#,
	movl	104(%rbx), %ecx	# MEM[(struct page *)_53 + 64B].D.11444.lru.prev, D.44247
.L119:
	movl	$4096, %eax	#, D.44242
	salq	%cl, %rax	# D.44247, D.44242
	jmp	.L113	#
.L133:
	movq	48(%rax), %rbx	# page_39->D.11450.first_page, D.44246
	movq	(%rax), %rdx	# MEM[(const long unsigned int *)page_39], D.44243
	andb	$128, %dh	#, D.44243
	cmove	%rax, %rbx	# page,, D.44246
	jmp	.L116	#
.L122:
	xorl	%eax, %eax	# D.44242
	ret
.L136:
	movl	$3360, %esi	#,
	movq	$.LC2, %rdi	#,
	call	warn_slowpath_null	#
	jmp	.L118	#
	.size	ksize, .-ksize
	.section	.rodata.str1.1
.LC3:
	.string	"\0013FIX %s: %pV\n"
	.text
	.p2align 4,,15
	.type	slab_fix, @function
slab_fix:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	subq	$88, %rsp	#,
	movq	%rdx, 56(%rsp)	#,
	leaq	16(%rbp), %rax	#, tmp66
	movq	%rsp, %rdx	#,
	movq	%rcx, 64(%rsp)	#,
	movq	%r8, 72(%rsp)	#,
	movq	%r9, 80(%rsp)	#,
	movq	%rsi, (%rsp)	# fmt, vaf.fmt
	movq	96(%rdi), %rsi	# s_6(D)->name, s_6(D)->name
	movq	$.LC3, %rdi	#,
	movq	%rax, 24(%rsp)	# tmp66, MEM[(struct [1] *)&args].overflow_arg_area
	leaq	40(%rsp), %rax	#, tmp67
	movq	%rax, 32(%rsp)	# tmp67, MEM[(struct [1] *)&args].reg_save_area
	leaq	16(%rsp), %rax	#, tmp63
	movq	%rax, 8(%rsp)	# tmp63, vaf.va
	xorl	%eax, %eax	#
	movl	$16, 16(%rsp)	#, MEM[(struct [1] *)&args].gp_offset
	call	printk	#
	leave
	ret
	.size	slab_fix, .-slab_fix
	.section	.rodata.str1.8
	.align 8
.LC4:
	.string	"\0013=============================================================================\n"
	.section	.rodata.str1.1
.LC5:
	.string	"\0013BUG %s (%s): %pV\n"
	.section	.rodata.str1.8
	.align 8
.LC6:
	.string	"\0013-----------------------------------------------------------------------------\n\n"
	.text
	.p2align 4,,15
	.type	slab_bug, @function
slab_bug:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	leaq	16(%rbp), %rax	#, tmp67
	subq	$88, %rsp	#,
	movq	$.LC4, %rdi	#,
	movq	%rax, 24(%rsp)	# tmp67, MEM[(struct [1] *)&args].overflow_arg_area
	leaq	40(%rsp), %rax	#, tmp68
	movq	%rax, 32(%rsp)	# tmp68, MEM[(struct [1] *)&args].reg_save_area
	leaq	16(%rsp), %rax	#, tmp64
	movq	%rax, 8(%rsp)	# tmp64, vaf.va
	xorl	%eax, %eax	#
	movq	%r8, 72(%rsp)	#,
	movq	%r9, 80(%rsp)	#,
	movq	%rdx, 56(%rsp)	#,
	movq	%rcx, 64(%rsp)	#,
	movq	%rsi, (%rsp)	# fmt, vaf.fmt
	movl	$16, 16(%rsp)	#, MEM[(struct [1] *)&args].gp_offset
	call	printk	#
	call	print_tainted	#
	movq	96(%rbx), %rsi	# s_9(D)->name, s_9(D)->name
	movq	%rsp, %rcx	#,
	movq	%rax, %rdx	# D.44259,
	movq	$.LC5, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	movq	$.LC6, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	movl	$1, %esi	#,
	movl	$5, %edi	#,
	call	add_taint	#
	addq	$88, %rsp	#,
	popq	%rbx	#
	popq	%rbp	#
	ret
	.size	slab_bug, .-slab_bug
	.p2align 4,,15
	.type	calculate_sizes, @function
calculate_sizes:
	pushq	%rbp	#
	movl	%esi, %ecx	# forced_order, forced_order
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	movq	%rdi, %r14	# s, s
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	subq	$48, %rsp	#,
	movq	8(%rdi), %rdx	# s_82(D)->flags, flags
	movslq	28(%rdi), %rdi	# s_82(D)->object_size, size
	movq	%rdx, %rsi	# flags, D.44294
	leaq	7(%rdi), %rax	#, size
	andl	$526336, %esi	#, D.44294
	andq	$-8, %rax	#, size
	cmpq	$2048, %rsi	#, D.44294
	je	.L201	#,
.L142:
	movabsq	$-2147483649, %r8	#, tmp202
	andq	%rdx, %r8	# flags, tmp203
	movq	%r8, 8(%r14)	# tmp203, s_82(D)->flags
.L143:
	movq	%rdx, %r8	# flags, D.44294
	andl	$1024, %r8d	#, D.44294
	je	.L144	#,
	leaq	8(%rax), %r9	#, tmp318
	cmpq	%rax, %rdi	# size, size
	cmove	%r9, %rax	# tmp318,, size
.L144:
	testq	%rsi, %rsi	# D.44294
	movl	%eax, %edi	# size, D.44293
	movl	%eax, 80(%r14)	# size, s_82(D)->inuse
	jne	.L145	#,
	cmpq	$0, 72(%r14)	#, s_82(D)->ctor
	je	.L146	#,
.L145:
	movl	%edi, 32(%r14)	# D.44293, s_82(D)->offset
	addq	$8, %rax	#, size
.L146:
	leaq	48(%rax), %rsi	#, tmp319
	testl	$65536, %edx	#, flags
	cmovne	%rsi, %rax	# tmp319,, size
	testq	%r8, %r8	# D.44294
	leaq	8(%rax), %rdx	#, tmp321
	cmovne	%rdx, %rax	# tmp321,, size
	movslq	84(%r14), %rdx	# s_82(D)->align, D.44294
	leaq	-1(%rax,%rdx), %rax	#, size
	negq	%rdx	# D.44294
	movq	%rax, -64(%rbp)	# size, %sfp
	andq	%rdx, -64(%rbp)	# D.44294, %sfp
	testl	%ecx, %ecx	# forced_order
	movl	-64(%rbp), %eax	# %sfp, tmp375
	movl	%eax, 24(%r14)	# tmp375, s_82(D)->size
	js	.L149	#,
	movslq	88(%r14), %rbx	# s_82(D)->reserved, D.44294
.L150:
	cmpl	$1, %ecx	#, forced_order
	sbbl	%eax, %eax	# tmp320
	notl	%eax	# tmp320
	andl	$16384, %eax	#, tmp320
	movl	%eax, 64(%r14)	# tmp320, s_82(D)->allocflags
	movq	8(%r14), %rax	# s_82(D)->flags, D.44294
	testb	$64, %ah	#, D.44294
	je	.L172	#,
	orl	$1, 64(%r14)	#, s_82(D)->allocflags
.L172:
	testl	$131072, %eax	#, D.44294
	je	.L199	#,
	orl	$524288, 64(%r14)	#, s_82(D)->allocflags
.L199:
	movq	-64(%rbp), %r9	# %sfp, size
	movl	$4096, %eax	#, D.44294
	movl	%ecx, %esi	# forced_order, D.44293
	salq	%cl, %rax	# forced_order, D.44294
	sall	$16, %esi	#, D.44293
	xorl	%edx, %edx	# tmp272
	subq	%rbx, %rax	# D.44294, D.44294
	divq	-64(%rbp)	# %sfp
	addl	%eax, %esi	# D.44294, D.44293
	leaq	-1(%r9), %rdx	#, size
	movslq	%esi, %rax	# D.44293, D.44293
	shrq	$12, %rdx	#, size
	movq	%rax, 40(%r14)	# D.44293, MEM[(struct kmem_cache *)s_82(D) + 40B]
	movl	$-1, %eax	#, bitpos
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rdx,%rax	# size, bitpos
# 0 "" 2
#NO_APP
	leal	1(%rax), %ecx	#, D.44293
	movl	$4096, %eax	#, D.44294
	xorl	%edx, %edx	# tmp283
	salq	%cl, %rax	# D.44293, D.44294
	movl	%ecx, %edi	# D.44293, D.44293
	sall	$16, %edi	#, D.44293
	subq	%rbx, %rax	# D.44294, D.44294
	divq	%r9	# size
	addl	%edi, %eax	# D.44293, D.44293
	cmpw	%si, 48(%r14)	# D.44293, MEM[(struct kmem_cache *)s_82(D) + 48B]
	cltq
	movq	%rax, 56(%r14)	# D.44293, MEM[(struct kmem_cache *)s_82(D) + 56B]
	movzwl	%si, %eax	# D.44293, D.44293
	jb	.L202	#,
.L174:
	testl	%eax, %eax	# D.44293
	setne	%al	#, D.44293
	movzbl	%al, %eax	# D.44293, D.44293
.L191:
	addq	$48, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L202:
	movq	40(%r14), %rdx	# s_82(D)->oo, s_82(D)->oo
	movq	%rdx, 48(%r14)	# s_82(D)->oo, s_82(D)->max
	jmp	.L174	#
.L201:
	cmpq	$0, 72(%r14)	#, s_82(D)->ctor
	jne	.L142	#,
	movl	$2147483648, %r8d	#, tmp201
	orq	%rdx, %r8	# flags, tmp201
	movq	%r8, 8(%r14)	# tmp201, s_82(D)->flags
	jmp	.L143	#
.L149:
	movl	slub_min_objects(%rip), %esi	# slub_min_objects, _min1
	movl	88(%r14), %eax	# s_82(D)->reserved, D.44293
	testl	%esi, %esi	# _min1
	movl	%eax, -80(%rbp)	# D.44293, %sfp
	je	.L203	#,
.L151:
	movl	slub_max_order(%rip), %edi	# slub_max_order, slub_max_order.722
	movl	$4096, %r8d	#, tmp213
	xorl	%edx, %edx	# tmp217
	movslq	-80(%rbp), %rbx	# %sfp, D.44294
	movq	%r8, %rax	# tmp213, D.44294
	movslq	-64(%rbp), %r9	# %sfp, D.44294
	movl	%edi, %ecx	# slub_max_order.722, tmp378
	salq	%cl, %rax	# tmp378, D.44294
	subq	%rbx, %rax	# D.44294, D.44294
	divq	%r9	# D.44294
	cmpl	%eax, %esi	# D.44294, _min1
	cmovle	%esi, %eax	# _min1,, min_objects
	movl	%eax, -76(%rbp)	# min_objects, %sfp
	cmpl	$1, %eax	#, min_objects
	movl	slub_min_order(%rip), %eax	# slub_min_order, D.44293
	movl	%eax, -48(%rbp)	# D.44293, %sfp
	movl	%eax, %ecx	# D.44293, tmp401
	jle	.L204	#,
	salq	%cl, %r8	# tmp401, D.44294
	movq	-64(%rbp), %rcx	# %sfp, size
	xorl	%edx, %edx	# tmp297
	movq	%r8, %rax	# D.44294, D.44294
	movl	$4096, %r11d	#, tmp334
	movq	%r14, -72(%rbp)	# s, %sfp
	subq	%rbx, %rax	# D.44294, D.44294
	divq	%r9	# D.44294
	movl	%eax, -44(%rbp)	# D.44294, %sfp
	movl	%ecx, %edx	# size, D.44297
	movl	%ecx, %eax	# size, D.44293
	negl	%edx	# D.44297
	sall	$15, %eax	#, D.44293
	movl	%edx, -88(%rbp)	# D.44297, %sfp
	movl	-76(%rbp), %edx	# %sfp, D.44293
	subl	%ecx, %eax	# size, D.44293
	cltq
	subq	$1, %rax	#, size
	shrq	$12, %rax	#, size
	imull	%ecx, %edx	# size, D.44293
	movl	%edx, %ecx	# D.44293, ivtmp.1573
	movl	-80(%rbp), %edx	# %sfp, D.44293
	addl	%edx, %ecx	# D.44293, ivtmp.1573
	notl	%edx	# D.44297
	movl	%edx, -84(%rbp)	# D.44297, %sfp
	movl	$-1, %edx	#, forced_order
	movl	%ecx, -56(%rbp)	# ivtmp.1573, %sfp
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rax,%rdx	# size, forced_order
# 0 "" 2
#NO_APP
	movl	%edx, -52(%rbp)	# forced_order, %sfp
.L160:
	movl	-56(%rbp), %edx	# %sfp, ivtmp.1573
	movl	$-1, %r14d	#, r
	movl	$3, %r12d	#, D.44296
	movl	-84(%rbp), %eax	# %sfp, D.44293
	movl	$16, %r13d	#, fraction
	movslq	%edx, %r10	# ivtmp.1573, D.44294
	addl	%edx, %eax	# ivtmp.1573, D.44293
#APP
# 451 "./arch/x86/include/asm/bitops.h" 1
	bsrl %eax,%r14d	# D.44293, r
# 0 "" 2
#NO_APP
	subl	$11, %r14d	#, _max2
	jmp	.L175	#
	.p2align 4,,10
	.p2align 3
.L206:
	movl	-52(%rbp), %eax	# %sfp, forced_order
	cmpl	%eax, %edi	# forced_order, slub_max_order.722
	movl	%eax, %ecx	# forced_order, forced_order
	jge	.L195	#,
.L156:
	sarl	%r13d	# fraction
	subl	$1, %r12d	#, D.44296
	je	.L205	#,
.L175:
	cmpl	$32767, -44(%rbp)	#, %sfp
	jg	.L206	#,
	movl	-48(%rbp), %ecx	# %sfp, D.44293
	cmpl	%ecx, %r14d	# D.44293, _max2
	cmovge	%r14d, %ecx	# _max2,, forced_order
	cmpl	%ecx, %edi	# forced_order, slub_max_order.722
	jl	.L156	#,
	movslq	%r13d, %r8	# fraction, D.44294
	jmp	.L158	#
	.p2align 4,,10
	.p2align 3
.L157:
	addl	$1, %ecx	#, forced_order
	cmpl	%ecx, %edi	# forced_order, slub_max_order.722
	jl	.L156	#,
.L158:
	movq	%r11, %rsi	# tmp334, slab_size
	salq	%cl, %rsi	# forced_order, slab_size
	cmpq	%rsi, %r10	# slab_size, D.44294
	ja	.L157	#,
	movq	%rsi, %rax	# slab_size, D.44294
	xorl	%edx, %edx	# D.44294
	subq	%rbx, %rax	# D.44294, D.44294
	divq	%r9	# D.44294
	movq	%rsi, %rax	# slab_size, D.44294
	movslq	%edx, %r15	# D.44294, D.44294
	xorl	%edx, %edx	# tmp239
	divq	%r8	# D.44294
	cmpq	%rax, %r15	# D.44294, D.44294
	ja	.L157	#,
.L195:
	movq	-72(%rbp), %r14	# %sfp, s
.L155:
	xorl	%eax, %eax	# D.44293
	testl	%ecx, %ecx	# forced_order
	jns	.L150	#,
	addq	$48, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L205:
	subl	$1, -76(%rbp)	#, %sfp
	movl	-88(%rbp), %eax	# %sfp, D.44297
	addl	%eax, -56(%rbp)	# D.44297, %sfp
	cmpl	$1, -76(%rbp)	#, %sfp
	jne	.L160	#,
	movq	-72(%rbp), %r14	# %sfp, s
.L153:
	cmpl	$32767, -44(%rbp)	#, %sfp
	jle	.L161	#,
	movq	-64(%rbp), %rdx	# %sfp, size
	movl	$-1, %ecx	#, forced_order
	movl	%edx, %eax	# size, D.44293
	sall	$15, %eax	#, D.44293
	subl	%edx, %eax	# size, D.44293
	cltq
	subq	$1, %rax	#, size
	shrq	$12, %rax	#, size
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rax,%rcx	# size, forced_order
# 0 "" 2
#NO_APP
	cmpl	%ecx, %edi	# forced_order, slub_max_order.722
	jge	.L155	#,
.L166:
	xorl	%eax, %eax	# D.44293
	cmpl	$10, %ecx	#, forced_order
	jg	.L191	#,
	jmp	.L155	#
	.p2align 4,,10
	.p2align 3
.L203:
	movl	$-1, %eax	#, r
#APP
# 451 "./arch/x86/include/asm/bitops.h" 1
	bsrl nr_cpu_ids(%rip),%eax	# nr_cpu_ids, r
# 0 "" 2
#NO_APP
	leal	8(,%rax,4), %esi	#, _min1
	jmp	.L151	#
.L204:
	salq	%cl, %r8	# tmp382, D.44294
	xorl	%edx, %edx	# tmp224
	movq	%r8, %rax	# D.44294, D.44294
	subq	%rbx, %rax	# D.44294, D.44294
	divq	%r9	# D.44294
	movl	%eax, -44(%rbp)	# D.44294, %sfp
	jmp	.L153	#
.L161:
	movq	-64(%rbp), %r8	# %sfp, size
	movl	$-1, %eax	#, r
	movl	-48(%rbp), %edx	# %sfp, D.44293
	leal	-1(%r8), %esi	#, D.44293
#APP
# 451 "./arch/x86/include/asm/bitops.h" 1
	bsrl %esi,%eax	# D.44293, r
# 0 "" 2
#NO_APP
	subl	$11, %eax	#, _max2
	cmpl	%edx, %eax	# D.44293, _max2
	cmovl	%edx, %eax	# forced_order,, D.44293, forced_order
	cmpl	%eax, %edi	# forced_order, slub_max_order.722
	movl	%eax, %ecx	# forced_order, forced_order
	jl	.L163	#,
	movl	-80(%rbp), %r10d	# %sfp, D.44293
	addl	%r8d, %r10d	# size, D.44293
	movl	$4096, %r8d	#, tmp324
	movslq	%r10d, %r10	# D.44293, D.44294
.L165:
	movq	%r8, %r11	# tmp324, slab_size
	salq	%cl, %r11	# forced_order, slab_size
	cmpq	%r11, %r10	# slab_size, D.44294
	ja	.L164	#,
	movq	%r11, %rax	# slab_size, D.44294
	xorl	%edx, %edx	# D.44294
	subq	%rbx, %rax	# D.44294, D.44294
	divq	%r9	# D.44294
	movslq	%edx, %rdx	# D.44294, D.44294
	cmpq	%rdx, %r11	# D.44294, slab_size
	jae	.L155	#,
.L164:
	addl	$1, %ecx	#, forced_order
	cmpl	%ecx, %edi	# forced_order, slub_max_order.722
	jge	.L165	#,
.L163:
	movl	-48(%rbp), %ecx	# %sfp, D.44293
	movl	$-1, %eax	#, r
#APP
# 451 "./arch/x86/include/asm/bitops.h" 1
	bsrl %esi,%eax	# D.44293, r
# 0 "" 2
#NO_APP
	subl	$11, %eax	#, _max2
	cmpl	%ecx, %eax	# D.44293, _max2
	cmovge	%eax, %ecx	# _max2,, forced_order
	cmpl	$11, %ecx	#, forced_order
	jg	.L180	#,
	movl	-80(%rbp), %r8d	# %sfp, D.44293
	movl	$4096, %edi	#, tmp323
	addl	-64(%rbp), %r8d	# %sfp, D.44293
	movslq	%r8d, %r8	# D.44293, D.44294
.L176:
	movq	%rdi, %rsi	# tmp323, slab_size
	salq	%cl, %rsi	# forced_order, slab_size
	cmpq	%rsi, %r8	# slab_size, D.44294
	ja	.L167	#,
	movq	%rsi, %rax	# slab_size, D.44294
	xorl	%edx, %edx	# D.44294
	subq	%rbx, %rax	# D.44294, D.44294
	divq	%r9	# D.44294
	movslq	%edx, %rdx	# D.44294, D.44294
	cmpq	%rdx, %rsi	# D.44294, slab_size
	jae	.L166	#,
.L167:
	addl	$1, %ecx	#, forced_order
	cmpl	$12, %ecx	#, forced_order
	jne	.L176	#,
.L180:
	xorl	%eax, %eax	# D.44293
	jmp	.L191	#
	.size	calculate_sizes, .-calculate_sizes
	.p2align 4,,15
	.type	count_partial, @function
count_partial:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	movq	%rdi, %r14	# n, n
	pushq	%r13	#
	movq	%rsi, %r13	# get_count, get_count
	pushq	%r12	#
	leaq	16(%r14), %r12	#, D.44313
	pushq	%rbx	#
	xorl	%ebx, %ebx	# x
	subq	$8, %rsp	#,
	call	_raw_spin_lock_irqsave	#
	movq	%rax, -48(%rbp)	#, %sfp
	movq	16(%r14), %rax	# n_5(D)->partial.next, __mptr
	leaq	-32(%rax), %r15	#, page
	cmpq	%rax, %r12	# __mptr, D.44313
	je	.L208	#,
	.p2align 4,,10
	.p2align 3
.L209:
	movq	%r15, %rdi	# page,
	call	*%r13	# get_count
	cltq
	addq	%rax, %rbx	# D.44315, x
	movq	32(%r15), %rax	# page_29->D.11444.lru.next, __mptr
	leaq	-32(%rax), %r15	#, page
	cmpq	%rax, %r12	# __mptr, D.44313
	jne	.L209	#,
.L208:
	movq	-48(%rbp), %rsi	# %sfp,
	movq	%r14, %rdi	# n,
	call	_raw_spin_unlock_irqrestore	#
	addq	$8, %rsp	#,
	movq	%rbx, %rax	# x,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	count_partial, .-count_partial
	.p2align 4,,15
	.type	any_slab_objects, @function
any_slab_objects:
	pushq	%rbp	#
	movl	$64, %esi	#,
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movl	$64, %r12d	#, tmp78
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	movq	$node_states+8, %rdi	#,
	call	find_first_bit	#
	movl	$64, %edx	#, node
	cmpl	$64, %eax	#, D.44319
	cmovle	%eax, %edx	# D.44319,, node
	cmpl	$64, %edx	#, node
	je	.L216	#,
	.p2align 4,,10
	.p2align 3
.L225:
	movslq	%edx, %rax	# node, node
	movq	192(%rbx,%rax,8), %rax	# s_6(D)->node, D.44320
	testq	%rax, %rax	# D.44320
	je	.L215	#,
	movq	40(%rax), %rax	# MEM[(volatile long int *)_12 + 40B], D.44321
	testq	%rax, %rax	# D.44321
	jne	.L218	#,
.L215:
	addl	$1, %edx	#, D.44318
	movl	$64, %esi	#,
	movq	$node_states+8, %rdi	#,
	movslq	%edx, %rdx	# D.44318, D.44319
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.44319
	movl	%eax, %edx	# D.44319, node
	cmovg	%r12d, %edx	# node,, tmp78, node
	cmpl	$64, %edx	#, node
	jne	.L225	#,
.L216:
	popq	%rbx	#
	xorl	%eax, %eax	# D.44318
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L218:
	popq	%rbx	#
	movl	$1, %eax	#, D.44318
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	any_slab_objects, .-any_slab_objects
	.p2align 4,,15
	.type	store_user_store, @function
store_user_store:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r13	#
	movq	%rsi, %r13	# buf, buf
	pushq	%r12	#
	movq	%rdx, %r12	# length, length
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	call	any_slab_objects	#
	testl	%eax, %eax	# D.44325
	jne	.L230	#,
	movq	8(%rbx), %rcx	# s_5(D)->flags, D.44326
	movq	%rcx, %rax	# D.44326, tmp70
	andq	$-65537, %rax	#, tmp70
	movq	%rax, 8(%rbx)	# tmp70, s_5(D)->flags
	cmpb	$49, 0(%r13)	#, *buf_11(D)
	je	.L232	#,
.L229:
	movl	$-1, %esi	#,
	movq	%rbx, %rdi	# s,
	call	calculate_sizes	#
	movq	%r12, %rax	# length, D.44324
.L228:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L232:
	andq	$-1073807361, %rcx	#, tmp72
	orq	$65536, %rcx	#, tmp72
	movq	%rcx, 8(%rbx)	# tmp72, s_5(D)->flags
	jmp	.L229	#
	.p2align 4,,10
	.p2align 3
.L230:
	movq	$-16, %rax	#, D.44324
	jmp	.L228	#
	.size	store_user_store, .-store_user_store
	.p2align 4,,15
	.type	poison_store, @function
poison_store:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r13	#
	movq	%rsi, %r13	# buf, buf
	pushq	%r12	#
	movq	%rdx, %r12	# length, length
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	call	any_slab_objects	#
	testl	%eax, %eax	# D.44331
	jne	.L236	#,
	movq	8(%rbx), %rcx	# s_5(D)->flags, D.44332
	movq	%rcx, %rax	# D.44332, tmp70
	andb	$247, %ah	#, tmp70
	movq	%rax, 8(%rbx)	# tmp70, s_5(D)->flags
	cmpb	$49, 0(%r13)	#, *buf_11(D)
	je	.L238	#,
.L235:
	movl	$-1, %esi	#,
	movq	%rbx, %rdi	# s,
	call	calculate_sizes	#
	movq	%r12, %rax	# length, D.44330
.L234:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L238:
	andq	$-1073743873, %rcx	#, tmp72
	orb	$8, %ch	#, tmp72
	movq	%rcx, 8(%rbx)	# tmp72, s_5(D)->flags
	jmp	.L235	#
	.p2align 4,,10
	.p2align 3
.L236:
	movq	$-16, %rax	#, D.44330
	jmp	.L234	#
	.size	poison_store, .-poison_store
	.p2align 4,,15
	.type	red_zone_store, @function
red_zone_store:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r13	#
	movq	%rsi, %r13	# buf, buf
	pushq	%r12	#
	movq	%rdx, %r12	# length, length
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	call	any_slab_objects	#
	testl	%eax, %eax	# D.44337
	jne	.L242	#,
	movq	8(%rbx), %rcx	# s_5(D)->flags, D.44338
	movq	%rcx, %rax	# D.44338, tmp70
	andb	$251, %ah	#, tmp70
	movq	%rax, 8(%rbx)	# tmp70, s_5(D)->flags
	cmpb	$49, 0(%r13)	#, *buf_11(D)
	je	.L244	#,
.L241:
	movl	$-1, %esi	#,
	movq	%rbx, %rdi	# s,
	call	calculate_sizes	#
	movq	%r12, %rax	# length, D.44336
.L240:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L244:
	andq	$-1073742849, %rcx	#, tmp72
	orb	$4, %ch	#, tmp72
	movq	%rcx, 8(%rbx)	# tmp72, s_5(D)->flags
	jmp	.L241	#
	.p2align 4,,10
	.p2align 3
.L242:
	movq	$-16, %rax	#, D.44336
	jmp	.L240	#
	.size	red_zone_store, .-red_zone_store
	.section	.rodata.str1.8
	.align 8
.LC7:
	.string	"\0014SLUB: Unable to allocate memory on node %d (gfp=0x%x)\n"
	.align 8
.LC8:
	.string	"\0014  cache: %s, object size: %d, buffer size: %d, default order: %d, min order: %d\n"
	.align 8
.LC9:
	.string	"\0014  %s debugging increased min order, use slub_debug=O to disable.\n"
	.align 8
.LC10:
	.string	"\0014  node %d: slabs: %ld, objs: %ld, free: %ld\n"
	.section	.text.unlikely,"ax",@progbits
	.type	slab_out_of_memory, @function
slab_out_of_memory:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	movl	%esi, %ebx	# gfpflags, gfpflags
	testb	$2, %bh	#, gfpflags
	jne	.L245	#,
	movq	%rdi, %r12	# s, s
	movq	$__func__.30346, %rsi	#,
	movl	%edx, %r13d	# nid, nid
	movq	$slub_oom_rs.30343, %rdi	#,
	call	___ratelimit	#
	testl	%eax, %eax	# D.44343
	je	.L245	#,
	movl	%ebx, %edx	# gfpflags,
	movl	%r13d, %esi	# nid,
	movq	$.LC7, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	movq	56(%r12), %r9	# MEM[(struct kmem_cache *)s_80(D) + 56B], tmp120
	xorl	%eax, %eax	#
	movq	40(%r12), %r8	# MEM[(struct kmem_cache *)s_80(D) + 40B], tmp121
	movq	$.LC8, %rdi	#,
	movl	28(%r12), %edx	# s_80(D)->object_size, s_80(D)->object_size
	movl	24(%r12), %ecx	# s_80(D)->size, s_80(D)->size
	movq	96(%r12), %rsi	# s_80(D)->name, s_80(D)->name
	shrq	$16, %r9	#, tmp120
	shrq	$16, %r8	#, tmp121
	call	printk	#
	movslq	28(%r12), %rdx	# s_80(D)->object_size, D.44345
	orl	$-1, %eax	#, bitpos
	decq	%rdx	# size
	shrq	$12, %rdx	#, size
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rdx,%rax	# size, bitpos
# 0 "" 2
#NO_APP
	leal	1(%rax), %edx	#, D.44343
	movq	56(%r12), %rax	# MEM[(struct kmem_cache *)s_80(D) + 56B], D.44345
	shrq	$16, %rax	#, D.44345
	cmpl	%eax, %edx	# D.44345, D.44343
	jge	.L248	#,
	movq	96(%r12), %rsi	# s_80(D)->name, s_80(D)->name
	movq	$.LC9, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
.L248:
	movl	$64, %esi	#,
	movl	$64, %ebx	#, node
	movl	$64, %r14d	#, tmp119
	movq	$node_states+8, %rdi	#,
	call	find_first_bit	#
	cmpl	$64, %eax	#, D.44345
	cmovle	%eax, %ebx	# D.44345,, node
.L249:
	cmpl	$64, %ebx	#, node
	je	.L245	#,
	movslq	%ebx, %rax	# node, node
	movq	192(%r12,%rax,8), %r13	# s_80(D)->node, D.44346
	testq	%r13, %r13	# D.44346
	je	.L250	#,
	movq	$count_free, %rsi	#,
	movq	%r13, %rdi	# D.44346,
	call	count_partial	#
	movq	32(%r13), %rdx	# MEM[(volatile long int *)_177 + 32B], D.44347
	movl	%ebx, %esi	# node,
	movq	40(%r13), %rcx	# MEM[(volatile long int *)_177 + 40B], D.44347
	movq	%rax, %r8	#, nr_free
	movq	$.LC10, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
.L250:
	leal	1(%rbx), %edx	#, D.44343
	movl	$64, %esi	#,
	movq	$node_states+8, %rdi	#,
	movslq	%edx, %rdx	# D.44343, D.44345
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.44345
	movl	%eax, %ebx	# D.44345, node
	cmovg	%r14d, %ebx	# node,, tmp119, node
	jmp	.L249	#
.L245:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.size	slab_out_of_memory, .-slab_out_of_memory
	.section	.init.text
	.type	setup_slub_min_order, @function
setup_slub_min_order:
	pushq	%rbp	#
	movq	$slub_min_order, %rsi	#,
	movq	%rsp, %rbp	#,
	pushq	%rax	#
	movq	%rdi, -8(%rbp)	# str, str
	leaq	-8(%rbp), %rdi	#, tmp62
	call	get_option	#
	movl	$1, %eax	#,
	leave
	ret
	.size	setup_slub_min_order, .-setup_slub_min_order
	.type	setup_slub_max_order, @function
setup_slub_max_order:
	pushq	%rbp	#
	movq	$slub_max_order, %rsi	#,
	movq	%rsp, %rbp	#,
	pushq	%rax	#
	movq	%rdi, -8(%rbp)	# str, str
	leaq	-8(%rbp), %rdi	#, tmp66
	call	get_option	#
	cmpl	$10, slub_max_order(%rip)	#, slub_max_order
	movl	$10, %eax	#, slub_max_order.265
	cmovle	slub_max_order(%rip), %eax	# slub_max_order,, slub_max_order.265
	movl	%eax, slub_max_order(%rip)	# slub_max_order.265, slub_max_order
	movl	$1, %eax	#,
	leave
	ret
	.size	setup_slub_max_order, .-setup_slub_max_order
	.type	setup_slub_min_objects, @function
setup_slub_min_objects:
	pushq	%rbp	#
	movq	$slub_min_objects, %rsi	#,
	movq	%rsp, %rbp	#,
	pushq	%rax	#
	movq	%rdi, -8(%rbp)	# str, str
	leaq	-8(%rbp), %rdi	#, tmp62
	call	get_option	#
	movl	$1, %eax	#,
	leave
	ret
	.size	setup_slub_min_objects, .-setup_slub_min_objects
	.section	.text.unlikely
	.type	kmalloc_large_node, @function
kmalloc_large_node:
	movl	%edx, %r8d	# node, node
	pushq	%rbp	#
	orl	$-1, %eax	#, bitpos
	leaq	-1(%rdi), %rcx	#, size
	orl	$2113536, %esi	#, flags
	movq	%rsp, %rbp	#,
	shrq	$12, %rcx	#, size
	movl	%r8d, %edi	# node,
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rcx,%rax	# size, bitpos
# 0 "" 2
#NO_APP
	leal	1(%rax), %edx	#, D.44361
	call	alloc_kmem_pages_node	#
	testq	%rax, %rax	# page
	je	.L268	#,
	movq	(%rax), %rdx	# MEM[(const struct page *)page_145], D.44362
	shrq	$45, %rdx	#, D.44362
	movq	%rdx, %rcx	# D.44362, D.44362
	shrq	$7, %rcx	#, D.44362
	movq	mem_section(,%rcx,8), %rcx	# mem_section, D.44363
	testq	%rcx, %rcx	# D.44363
	je	.L267	#,
	andl	$127, %edx	#, D.44362
	salq	$5, %rdx	#, D.44362
	addq	%rdx, %rcx	# D.44362, D.44363
.L267:
	movq	(%rcx), %rdx	# MEM[(struct mem_section *)_162], map
	andq	$-4, %rdx	#, map
	subq	%rdx, %rax	# map, D.44365
	movabsq	$-131941395333120, %rdx	#, tmp107
	sarq	$6, %rax	#, D.44365
	salq	$12, %rax	#, D.44365
	addq	%rdx, %rax	# tmp107, ptr
	jmp	.L266	#
.L268:
	xorl	%eax, %eax	# ptr
.L266:
	popq	%rbp	#
	ret
	.size	kmalloc_large_node, .-kmalloc_large_node
	.text
	.p2align 4,,15
	.type	min_partial_store, @function
min_partial_store:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	%rsi, %rdi	# buf, buf
	movq	%rdx, %rbx	# length, length
	leaq	-24(%rbp), %rdx	#, tmp70
	subq	$8, %rsp	#,
	movl	$10, %esi	#,
	call	kstrtoull	#
	testl	%eax, %eax	# D.44370
	jne	.L279	#,
	movq	-24(%rbp), %rax	# min, min
	movl	$5, %ecx	#, min
	cmpq	$4, %rax	#, min
	ja	.L280	#,
.L276:
	movq	%rcx, 16(%r12)	# min, MEM[(long unsigned int *)s_8(D) + 16B]
	addq	$8, %rsp	#,
	movq	%rbx, %rax	# length, D.44369
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L280:
	movb	$10, %cl	#,
	cmpq	$10, %rax	#, min
	cmovbe	%rax, %rcx	# min,, min
	jmp	.L276	#
	.p2align 4,,10
	.p2align 3
.L279:
	addq	$8, %rsp	#,
	cltq
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	min_partial_store, .-min_partial_store
	.p2align 4,,15
	.type	remote_node_defrag_ratio_store, @function
remote_node_defrag_ratio_store:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	%rsi, %rdi	# buf, buf
	movq	%rdx, %rbx	# length, length
	leaq	-24(%rbp), %rdx	#, tmp76
	subq	$8, %rsp	#,
	movl	$10, %esi	#,
	call	kstrtoull	#
	testl	%eax, %eax	# D.44376
	jne	.L286	#,
	movq	-24(%rbp), %rcx	# ratio, ratio.806
	cmpq	$100, %rcx	#, ratio.806
	jbe	.L287	#,
.L284:
	addq	$8, %rsp	#,
	movq	%rbx, %rax	# length, D.44374
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L287:
	leal	(%rcx,%rcx,4), %eax	#, D.44375
	addl	%eax, %eax	# tmp74
	movl	%eax, 184(%r12)	# tmp74, s_12(D)->remote_node_defrag_ratio
	jmp	.L284	#
	.p2align 4,,10
	.p2align 3
.L286:
	addq	$8, %rsp	#,
	cltq
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	remote_node_defrag_ratio_store, .-remote_node_defrag_ratio_store
	.p2align 4,,15
	.type	order_store, @function
order_store:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	%rsi, %rdi	# buf, buf
	movq	%rdx, %rbx	# length, length
	leaq	-24(%rbp), %rdx	#, tmp77
	subq	$8, %rsp	#,
	movl	$10, %esi	#,
	call	kstrtoull	#
	testl	%eax, %eax	# D.44381
	jne	.L294	#,
	movq	-24(%rbp), %rsi	# order, order.982
	movslq	slub_max_order(%rip), %rax	# slub_max_order, D.44380
	cmpq	%rsi, %rax	# order.982, D.44380
	jb	.L291	#,
	movslq	slub_min_order(%rip), %rdx	# slub_min_order, D.44380
	movq	$-22, %rax	#, D.44379
	cmpq	%rdx, %rsi	# D.44380, order.982
	jb	.L290	#,
	movq	%r12, %rdi	# s,
	call	calculate_sizes	#
	movq	%rbx, %rax	# length, D.44379
.L290:
	addq	$8, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L294:
	addq	$8, %rsp	#,
	cltq
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L291:
	movq	$-22, %rax	#, D.44379
	jmp	.L290	#
	.size	order_store, .-order_store
	.p2align 4,,15
	.type	cpu_partial_store, @function
cpu_partial_store:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdx, %r12	# length, length
	pushq	%rbx	#
	leaq	-24(%rbp), %rdx	#, tmp73
	movq	%rdi, %rbx	# s, s
	subq	$8, %rsp	#,
	movq	%rsi, %rdi	# buf, buf
	movl	$10, %esi	#,
	call	kstrtoull	#
	testl	%eax, %eax	# D.44385
	jne	.L304	#,
	movq	-24(%rbp), %rcx	# objects, objects.979
	testq	%rcx, %rcx	# objects.979
	je	.L298	#,
	testq	$2166016, 8(%rbx)	#, MEM[(struct kmem_cache *)s_8(D) + 8B]
	jne	.L299	#,
.L298:
	movl	%ecx, 36(%rbx)	# objects.979, s_8(D)->cpu_partial
	movl	$32, %r8d	#,
	movl	$1, %ecx	#,
	movq	%rbx, %rdx	# s,
	movq	$flush_cpu_slab, %rsi	#,
	movq	$has_cpu_slab, %rdi	#,
	call	on_each_cpu_cond	#
	movq	%r12, %rax	# length, D.44384
.L297:
	addq	$8, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L304:
	addq	$8, %rsp	#,
	cltq
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
.L299:
	movq	$-22, %rax	#, D.44384
	jmp	.L297	#
	.size	cpu_partial_store, .-cpu_partial_store
	.section	.rodata.str1.1
.LC11:
	.string	"%d\n"
	.text
	.p2align 4,,15
	.type	remote_node_defrag_ratio_show, @function
remote_node_defrag_ratio_show:
	pushq	%rbp	#
	movl	$1717986919, %edx	#, tmp69
	movq	%rsi, %r8	# buf, buf
	movl	184(%rdi), %ecx	# s_2(D)->remote_node_defrag_ratio, s_2(D)->remote_node_defrag_ratio
	movq	%rsp, %rbp	#,
	movq	$.LC11, %rsi	#,
	movq	%r8, %rdi	# buf,
	movl	%ecx, %eax	# s_2(D)->remote_node_defrag_ratio, tmp73
	sarl	$31, %ecx	#, tmp71
	imull	%edx	# tmp69
	xorl	%eax, %eax	#
	sarl	$2, %edx	#, D.44389
	subl	%ecx, %edx	# tmp71, D.44389
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	remote_node_defrag_ratio_show, .-remote_node_defrag_ratio_show
	.p2align 4,,15
	.type	cache_dma_show, @function
cache_dma_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$14, %rdx	#, tmp68
	andl	$1, %edx	#, D.44395
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	cache_dma_show, .-cache_dma_show
	.p2align 4,,15
	.type	store_user_show, @function
store_user_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$16, %rdx	#, tmp68
	andl	$1, %edx	#, D.44401
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	store_user_show, .-store_user_show
	.p2align 4,,15
	.type	poison_show, @function
poison_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$11, %rdx	#, tmp68
	andl	$1, %edx	#, D.44407
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	poison_show, .-poison_show
	.p2align 4,,15
	.type	red_zone_show, @function
red_zone_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$10, %rdx	#, tmp68
	andl	$1, %edx	#, D.44413
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	red_zone_show, .-red_zone_show
	.p2align 4,,15
	.type	trace_show, @function
trace_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$21, %rdx	#, tmp68
	andl	$1, %edx	#, D.44419
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	trace_show, .-trace_show
	.p2align 4,,15
	.type	sanity_checks_show, @function
sanity_checks_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$8, %rdx	#, tmp68
	andl	$1, %edx	#, D.44425
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	sanity_checks_show, .-sanity_checks_show
	.p2align 4,,15
	.type	reserved_show, @function
reserved_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movl	88(%rdi), %edx	# s_2(D)->reserved, s_2(D)->reserved
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	reserved_show, .-reserved_show
	.p2align 4,,15
	.type	destroy_by_rcu_show, @function
destroy_by_rcu_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$19, %rdx	#, tmp68
	andl	$1, %edx	#, D.44435
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	destroy_by_rcu_show, .-destroy_by_rcu_show
	.p2align 4,,15
	.type	reclaim_account_show, @function
reclaim_account_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$17, %rdx	#, tmp68
	andl	$1, %edx	#, D.44441
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	reclaim_account_show, .-reclaim_account_show
	.p2align 4,,15
	.type	hwcache_align_show, @function
hwcache_align_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	8(%rdi), %rdx	# s_2(D)->flags, tmp68
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$13, %rdx	#, tmp68
	andl	$1, %edx	#, D.44447
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	hwcache_align_show, .-hwcache_align_show
	.p2align 4,,15
	.type	align_show, @function
align_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movl	84(%rdi), %edx	# s_2(D)->align, s_2(D)->align
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	align_show, .-align_show
	.p2align 4,,15
	.type	aliases_show, @function
aliases_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movl	68(%rdi), %edx	# s_2(D)->refcount, s_2(D)->refcount
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	subl	$1, %edx	#, D.44456
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	aliases_show, .-aliases_show
	.section	.rodata.str1.1
.LC12:
	.string	"%pS\n"
	.text
	.p2align 4,,15
	.type	ctor_show, @function
ctor_show:
	movq	72(%rdi), %rdx	# s_4(D)->ctor, D.44461
	xorl	%eax, %eax	# D.44460
	testq	%rdx, %rdx	# D.44461
	je	.L337	#,
	pushq	%rbp	#
	movq	%rsi, %rcx	# buf, buf
	movq	$.LC12, %rsi	#,
	movq	%rsp, %rbp	#,
	movq	%rcx, %rdi	# buf,
	call	sprintf	#
	popq	%rbp	#
	cltq
.L337:
	rep ret
	.size	ctor_show, .-ctor_show
	.section	.rodata.str1.1
.LC13:
	.string	"%u\n"
	.text
	.p2align 4,,15
	.type	cpu_partial_show, @function
cpu_partial_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC13, %rsi	#,
	movl	36(%rdi), %edx	# s_2(D)->cpu_partial, s_2(D)->cpu_partial
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	cpu_partial_show, .-cpu_partial_show
	.section	.rodata.str1.1
.LC14:
	.string	"%lu\n"
	.text
	.p2align 4,,15
	.type	min_partial_show, @function
min_partial_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC14, %rsi	#,
	movq	16(%rdi), %rdx	# s_2(D)->min_partial, s_2(D)->min_partial
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	min_partial_show, .-min_partial_show
	.p2align 4,,15
	.type	order_show, @function
order_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movq	40(%rdi), %rdx	# MEM[(struct kmem_cache *)s_2(D) + 40B], D.44479
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	shrq	$16, %rdx	#, D.44479
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	order_show, .-order_show
	.p2align 4,,15
	.type	objs_per_slab_show, @function
objs_per_slab_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movzwl	40(%rdi), %edx	# MEM[(struct kmem_cache *)s_2(D) + 40B], D.44482
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	objs_per_slab_show, .-objs_per_slab_show
	.p2align 4,,15
	.type	object_size_show, @function
object_size_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movl	28(%rdi), %edx	# s_2(D)->object_size, s_2(D)->object_size
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	object_size_show, .-object_size_show
	.p2align 4,,15
	.type	slab_size_show, @function
slab_size_show:
	pushq	%rbp	#
	movq	%rsi, %rax	# buf, buf
	movq	$.LC11, %rsi	#,
	movl	24(%rdi), %edx	# s_2(D)->size, s_2(D)->size
	movq	%rsp, %rbp	#,
	movq	%rax, %rdi	# buf,
	xorl	%eax, %eax	#
	call	sprintf	#
	popq	%rbp	#
	cltq
	ret
	.size	slab_size_show, .-slab_size_show
	.section	.rodata.str1.1
.LC15:
	.string	"%d(%d)"
.LC16:
	.string	" C%d=%d(%d)"
	.text
	.p2align 4,,15
	.type	slabs_cpu_partial_show, @function
slabs_cpu_partial_show:
	pushq	%rbp	#
	movl	$-1, %edx	#, cpu
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	xorl	%r15d, %r15d	# pages
	pushq	%r14	#
	movq	%rsi, %r14	# buf, buf
	pushq	%r13	#
	xorl	%r13d, %r13d	# objects
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	cpu_online_mask(%rip), %rbx	# cpu_online_mask, D.44502
	.p2align 4,,10
	.p2align 3
.L351:
	addl	$1, %edx	#, D.44496
	movl	$64, %esi	#,
	movq	%rbx, %rdi	# D.44502,
	movslq	%edx, %rdx	# D.44496, D.44495
	call	find_next_bit	#
	cmpl	nr_cpu_ids(%rip), %eax	# nr_cpu_ids, D.44495
	movl	%eax, %edx	# D.44495, cpu
	jge	.L367	#,
	cltq
	movq	(%r12), %rcx	# s_13(D)->cpu_slab, __ptr
	movq	__per_cpu_offset(,%rax,8), %rax	# __per_cpu_offset, tmp108
	movq	24(%rcx,%rax), %rax	# _18->partial, page
	testq	%rax, %rax	# page
	je	.L351	#,
	addl	40(%rax), %r15d	# page_19->D.11444.D.11439.pages, pages
	addl	44(%rax), %r13d	# page_19->D.11444.D.11439.pobjects, objects
	jmp	.L351	#
	.p2align 4,,10
	.p2align 3
.L367:
	movl	%r15d, %ecx	# pages,
	movl	%r13d, %edx	# objects,
	movq	$.LC15, %rsi	#,
	movq	%r14, %rdi	# buf,
	xorl	%eax, %eax	#
	movl	$-1, %r15d	#, cpu
	call	sprintf	#
	movl	%eax, %r13d	#, len
	.p2align 4,,10
	.p2align 3
.L354:
	addl	$1, %r15d	#, D.44496
	movl	$64, %esi	#,
	movq	%rbx, %rdi	# D.44502,
	movslq	%r15d, %rdx	# D.44496, D.44495
	call	find_next_bit	#
	cmpl	nr_cpu_ids(%rip), %eax	# nr_cpu_ids, D.44495
	movq	%rax, %rdx	#, D.44495
	movl	%eax, %r15d	# D.44495, cpu
	jge	.L368	#,
	movslq	%edx, %rcx	# D.44495, cpu
	movq	(%r12), %rax	# s_13(D)->cpu_slab, __ptr
	movq	__per_cpu_offset(,%rcx,8), %rcx	# __per_cpu_offset, tmp121
	cmpl	$4075, %r13d	#, len
	movq	24(%rax,%rcx), %rax	# _37->partial, page
	ja	.L354	#,
	testq	%rax, %rax	# page
	je	.L354	#,
	movl	44(%rax), %ecx	# page_39->D.11444.D.11439.pobjects, page_39->D.11444.D.11439.pobjects
	movslq	%r13d, %rdi	# len, D.44498
	movq	$.LC16, %rsi	#,
	movl	40(%rax), %r8d	# page_39->D.11444.D.11439.pages,
	addq	%r14, %rdi	# buf, D.44499
	xorl	%eax, %eax	#
	call	sprintf	#
	addl	%eax, %r13d	# D.44496, len
	jmp	.L354	#
	.p2align 4,,10
	.p2align 3
.L368:
	popq	%rbx	#
	movslq	%r13d, %rax	# len, D.44498
	movl	$10, %edx	#,
	addl	$1, %r13d	#, D.44496
	movw	%dx, (%r14,%rax)	#, MEM[(void *)_52]
	movslq	%r13d, %rax	# D.44496, D.44500
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	slabs_cpu_partial_show, .-slabs_cpu_partial_show
	.p2align 4,,15
	.type	shrink_store, @function
shrink_store:
	cmpb	$49, (%rsi)	#, *buf_4(D)
	movq	$-22, %rax	#, D.44509
	jne	.L375	#,
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	movq	%rdx, %rbx	# length, length
	call	kmem_cache_shrink	#
	movslq	%eax, %rdx	# rc, rc
	testl	%eax, %eax	# rc
	movq	%rbx, %rax	# length, D.44509
	cmovne	%rdx, %rax	# rc,, D.44509
	popq	%rbx	#
	popq	%rbp	#
.L375:
	rep ret
	.size	shrink_store, .-shrink_store
	.p2align 4,,15
	.type	kmem_cache_release, @function
kmem_cache_release:
	pushq	%rbp	#
	subq	$120, %rdi	#, D.44513
	movq	%rsp, %rbp	#,
	call	slab_kmem_cache_release	#
	popq	%rbp	#
	ret
	.size	kmem_cache_release, .-kmem_cache_release
	.p2align 4,,15
	.type	slab_unmergeable, @function
slab_unmergeable:
	movl	slub_nomerge(%rip), %edx	# slub_nomerge,
	pushq	%rbp	#
	movl	$1, %eax	#, D.44520
	movq	%rsp, %rbp	#,
	testl	%edx, %edx	#
	jne	.L379	#,
	testq	$11078656, 8(%rdi)	#, s_4(D)->flags
	jne	.L379	#,
	cmpq	$0, 72(%rdi)	#, s_4(D)->ctor
	je	.L385	#,
.L379:
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L385:
	movl	68(%rdi), %eax	# s_4(D)->refcount, D.44520
	popq	%rbp	#
	shrl	$31, %eax	#, D.44520
	ret
	.size	slab_unmergeable, .-slab_unmergeable
	.section	.rodata.str1.1
.LC17:
	.string	"Allocated"
.LC18:
	.string	"Freed"
	.text
	.p2align 4,,15
	.type	print_tracking.part.52, @function
print_tracking.part.52:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rsi, %r12	# object, object
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	movslq	32(%rdi), %rax	# MEM[(struct kmem_cache *)s_1(D) + 32B],
	leaq	8(%rsi,%rax), %rsi	#, p
	testl	%eax, %eax	# D.44526
	jne	.L388	#,
	movslq	80(%rdi), %rsi	# MEM[(int *)s_1(D) + 80B], D.44527
	addq	%r12, %rsi	# object, p
.L388:
	movq	$.LC17, %rdi	#,
	call	print_track	#
	movslq	32(%rbx), %rax	# MEM[(struct kmem_cache *)s_1(D) + 32B],
	leaq	8(%r12,%rax), %rsi	#, p
	testl	%eax, %eax	# D.44526
	jne	.L390	#,
	movslq	80(%rbx), %rsi	# MEM[(int *)s_1(D) + 80B], D.44527
	addq	%r12, %rsi	# object, p
.L390:
	addq	$24, %rsi	#, D.44528
	movq	$.LC18, %rdi	#,
	call	print_track	#
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	print_tracking.part.52, .-print_tracking.part.52
	.section	.rodata.str1.8
	.align 8
.LC19:
	.string	"\0013INFO: Slab 0x%p objects=%u used=%u fp=0x%p flags=0x%04lx\n"
	.align 8
.LC20:
	.string	"\0013INFO: Object 0x%p @offset=%tu fp=0x%p\n\n"
	.section	.rodata.str1.1
.LC21:
	.string	"Bytes b4 "
.LC22:
	.string	"\0013"
.LC23:
	.string	"Object "
.LC24:
	.string	"Redzone "
.LC25:
	.string	"Padding "
	.text
	.p2align 4,,15
	.type	print_trailer, @function
print_trailer:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	pushq	%r13	#
	movq	%rsi, %r13	# page, page
	pushq	%r12	#
	movq	%rdx, %r12	# p, p
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	subq	$16, %rsp	#,
	movq	(%rsi), %r9	# MEM[(const struct page *)page_7(D)], D.44537
	movq	%r9, %rdx	# D.44537, D.44537
	shrq	$45, %rdx	#, D.44537
	movq	%rdx, %rax	# D.44537, D.44537
	shrq	$7, %rax	#, D.44537
	movq	mem_section(,%rax,8), %rax	# mem_section, D.44540
	testq	%rax, %rax	# D.44540
	je	.L393	#,
	andl	$127, %edx	#, D.44537
	salq	$5, %rdx	#, D.44537
	addq	%rdx, %rax	# D.44537, D.44540
.L393:
	movabsq	$-131941395333120, %r14	#, tmp132
	movq	(%rax), %rax	# MEM[(struct mem_section *)_59], map
	movq	%r13, %rsi	# page, D.44541
	andq	$-4, %rax	#, map
	subq	%rax, %rsi	# map, D.44541
	movq	%rsi, %rax	# D.44541, D.44541
	sarq	$6, %rax	#, D.44541
	salq	$12, %rax	#, D.44541
	addq	%rax, %r14	# D.44541, D.44537
	testb	$1, 10(%rbx)	#, s_8(D)->flags
	jne	.L413	#,
.L394:
	movzwl	26(%r13), %edx	# *page_7(D), *page_7(D)
	movq	%r13, %rsi	# page,
	movq	$.LC19, %rdi	#,
	movzwl	24(%r13), %ecx	# page_7(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44534
	xorl	%eax, %eax	#
	movq	16(%r13), %r8	# page_7(D)->D.11432.D.11414.freelist,
	andl	$32767, %edx	#, D.44534
	call	printk	#
	movslq	32(%rbx), %rax	# MEM[(struct kmem_cache *)s_8(D) + 32B], D.44539
	movq	%r12, %rdx	# p, D.44535
	subq	%r14, %rdx	# D.44537, D.44535
	movq	%r12, %rsi	# p,
	movq	$.LC20, %rdi	#,
	addq	$16, %r14	#, D.44536
	movq	(%r12,%rax), %rcx	# *_72, *_72
	xorl	%eax, %eax	#
	call	printk	#
	cmpq	%r14, %r12	# D.44536, p
	ja	.L414	#,
.L395:
	movslq	28(%rbx), %rax	# s_8(D)->object_size, __min1
	movl	$4096, %edx	#, tmp152
	movq	%r12, %r9	# p,
	movl	$1, 8(%rsp)	#,
	movl	$1, %r8d	#,
	movl	$16, %ecx	#,
	movq	$.LC23, %rsi	#,
	movq	$.LC22, %rdi	#,
	cmpq	$4096, %rax	#, __min1
	cmova	%rdx, %rax	# __min1,, tmp152, __min1
	movw	$1, %dx	#,
	movq	%rax, (%rsp)	# __min1,
	call	print_hex_dump	#
	movq	8(%rbx), %rdx	# s_8(D)->flags, D.44537
	testb	$4, %dh	#, D.44537
	jne	.L415	#,
.L396:
	movl	32(%rbx), %eax	# s_8(D)->offset, D.44534
	testl	%eax, %eax	# D.44534
	je	.L397	#,
	addl	$8, %eax	#, off
.L398:
	leal	48(%rax), %ecx	#, tmp162
	testl	$65536, %edx	#, D.44537
	movl	24(%rbx), %edx	# s_8(D)->size, D.44538
	cmovne	%ecx, %eax	# tmp162,, off
	cmpl	%eax, %edx	# off, D.44538
	je	.L400	#,
	subl	%eax, %edx	# off, D.44538
	movl	%eax, %ecx	# off, D.44539
	movl	$1, 8(%rsp)	#,
	movl	%edx, %eax	# D.44538, tmp168
	movl	$1, %r8d	#,
	movl	$1, %edx	#,
	leaq	(%r12,%rcx), %r9	#,
	movq	%rax, (%rsp)	# tmp168,
	movl	$16, %ecx	#,
	movq	$.LC25, %rsi	#,
	movq	$.LC22, %rdi	#,
	call	print_hex_dump	#
.L400:
	call	dump_stack	#
	addq	$16, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L397:
	movl	80(%rbx), %eax	# s_8(D)->inuse, off
	jmp	.L398	#
	.p2align 4,,10
	.p2align 3
.L413:
	movq	%r12, %rsi	# p,
	movq	%rbx, %rdi	# s,
	call	print_tracking.part.52	#
	movq	0(%r13), %r9	# page_7(D)->flags, D.44537
	jmp	.L394	#
	.p2align 4,,10
	.p2align 3
.L415:
	movl	28(%rbx), %edx	# s_8(D)->object_size, D.44534
	movl	$1, %r8d	#,
	movq	$.LC24, %rsi	#,
	movl	80(%rbx), %eax	# s_8(D)->inuse, D.44534
	movl	$1, 8(%rsp)	#,
	movq	$.LC22, %rdi	#,
	movslq	%edx, %rcx	# D.44534, D.44539
	leaq	(%r12,%rcx), %r9	#,
	subl	%edx, %eax	# D.44534,
	movl	$16, %ecx	#,
	movl	$1, %edx	#,
	movq	%rax, (%rsp)	# tmp167,
	call	print_hex_dump	#
	movq	8(%rbx), %rdx	# s_8(D)->flags, D.44537
	jmp	.L396	#
	.p2align 4,,10
	.p2align 3
.L414:
	leaq	-16(%r12), %r9	#,
	movl	$1, %r8d	#,
	movl	$16, %ecx	#,
	movl	$1, 8(%rsp)	#,
	movl	$1, %edx	#,
	movq	$.LC21, %rsi	#,
	movq	$16, (%rsp)	#,
	movq	$.LC22, %rdi	#,
	call	print_hex_dump	#
	jmp	.L395	#
	.size	print_trailer, .-print_trailer
	.p2align 4,,15
	.type	init_object, @function
init_object:
	pushq	%rbp	#
	movq	%rsi, %rcx	# object, object
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movl	%edx, %r12d	# val, val
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	movq	8(%rdi), %rax	# s_5(D)->flags, D.44559
	testl	$2147483648, %eax	#, D.44559
	jne	.L426	#,
.L417:
	testb	$4, %ah	#, D.44559
	je	.L416	#,
	movslq	28(%rbx), %rdi	# s_5(D)->object_size, D.44560
	movzbl	%r12b, %esi	# val, D.44560
	movl	80(%rbx), %eax	# s_5(D)->inuse, D.44560
	subl	%edi, %eax	# D.44560, D.44560
	addq	%rcx, %rdi	# object, D.44563
	movslq	%eax, %rdx	# D.44560, D.44559
	call	memset	#
.L416:
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L426:
	movl	28(%rdi), %eax	# s_5(D)->object_size, tmp102
	movl	$107, %esi	#,
	movq	%rcx, %rdi	# object,
	leal	-1(%rax), %edx	#, D.44560
	movslq	%edx, %rdx	# D.44560, D.44559
	call	memset	#
	movq	%rax, %rcx	#, object
	movslq	28(%rbx), %rax	# s_5(D)->object_size, D.44561
	movb	$-91, -1(%rcx,%rax)	#, *_15
	movq	8(%rbx), %rax	# s_5(D)->flags, D.44559
	jmp	.L417	#
	.size	init_object, .-init_object
	.p2align 4,,15
	.type	init_tracking.part.54, @function
init_tracking.part.54:
	pushq	%rbp	#
	xorl	%ecx, %ecx	#
	movl	$1, %edx	#,
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rsi, %r12	# object, object
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	call	set_track	#
	movq	%r12, %rsi	# object,
	movq	%rbx, %rdi	# s,
	xorl	%ecx, %ecx	#
	xorl	%edx, %edx	#
	call	set_track	#
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	init_tracking.part.54, .-init_tracking.part.54
	.p2align 4,,15
	.type	setup_object.isra.56, @function
setup_object.isra.56:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rsi, %r12	# object, object
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	movq	8(%rdi), %rax	# s_1(D)->flags, tmp70
	testl	$2147550208, %eax	#, tmp70
	jne	.L441	#,
.L431:
	movq	72(%rbx), %rax	# s_1(D)->ctor, D.44571
	testq	%rax, %rax	# D.44571
	jne	.L442	#,
.L429:
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L441:
	movl	$187, %edx	#,
	call	init_object	#
	testb	$1, 10(%rbx)	#, s_1(D)->flags
	je	.L431	#,
	movq	%r12, %rsi	# object,
	movq	%rbx, %rdi	# s,
	call	init_tracking.part.54	#
	jmp	.L431	#
.L442:
	movq	%r12, %rdi	# object,
	call	*%rax	# D.44571
	.p2align 4,,8
	jmp	.L429	#
	.size	setup_object.isra.56, .-setup_object.isra.56
	.p2align 4,,15
	.type	new_slab, @function
new_slab:
	pushq	%rbp	#
	testl	$-33554426, %esi	#, flags
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movslq	%edx, %r15	# node,
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	jne	.L481	#,
	andl	gfp_allowed_mask(%rip), %esi	# gfp_allowed_mask, flags
	movq	%rdi, %r12	# s, s
	movq	40(%rdi), %rbx	# MEM[(struct kmem_cache *)s_14(D) + 40B], oo$x
	andl	$474864, %esi	#, flags
	testb	$16, %sil	#, flags
	je	.L445	#,
#APP
# 44 "./arch/x86/include/asm/irqflags.h" 1
	sti
# 0 "" 2
#NO_APP
.L445:
	orl	64(%r12), %esi	# s_14(D)->allocflags, flags
	movl	%esi, %r14d	# flags, flags
	movq	%rbx, %rsi	# oo$x, D.44591
	movl	%r14d, %edi	# flags, flags
	shrq	$16, %rsi	#, D.44591
	andl	$-6657, %edi	#, flags
	orl	$2101760, %edi	#, flags
	cmpl	$-1, %r15d	#, node
	je	.L482	#,
	movl	%r14d, %eax	# flags, tmp181
	movslq	%r15d, %rdx	# node, node
	shrl	$18, %eax	#, tmp181
	movq	node_data(,%rdx,8), %rdx	# node_data, tmp192
	andl	$1, %eax	#, D.44592
	leaq	0(,%rax,8), %rcx	#, tmp185
	addq	%rax, %rcx	# D.44592, tmp186
	leaq	(%rax,%rcx,8), %rax	#, tmp189
	xorl	%ecx, %ecx	#
	salq	$6, %rax	#, tmp189
	leaq	7168(%rdx,%rax), %rdx	#, D.44605
	call	__alloc_pages_nodemask	#
	movq	%rax, %r13	#, page
.L447:
	testq	%r13, %r13	# page
	je	.L483	#,
.L448:
	andl	$16, %r14d	#, flags
	je	.L450	#,
#APP
# 39 "./arch/x86/include/asm/irqflags.h" 1
	cli
# 0 "" 2
#NO_APP
.L450:
	testq	%r13, %r13	# page
	je	.L460	#,
	movzwl	26(%r13), %eax	#, tmp208
	movl	%ebx, %edx	# oo$x, tmp205
	shrq	$16, %rbx	#, D.44591
	andw	$32767, %dx	#, tmp205
	movq	0(%r13), %rdi	# MEM[(const struct page *)page_144], D.44591
	movq	%rbx, %rcx	# D.44591, D.44591
	andw	$-32768, %ax	#, tmp208
	orl	%edx, %eax	# tmp205, tmp208
	movl	$1, %edx	#, D.44589
	movw	%ax, 26(%r13)	# tmp208,
	sall	%cl, %edx	# D.44591, D.44589
	movq	8(%r12), %rax	# s_14(D)->flags, D.44591
	andl	$131072, %eax	#, D.44591
	cmpq	$1, %rax	#, D.44591
	movq	%rdi, %rax	# D.44591, D.44589
	sbbl	%esi, %esi	# iftmp.69
	shrq	$37, %rdi	#, D.44606
	andl	$3, %edi	#, D.44606
	shrq	$39, %rax	#, D.44589
	notl	%esi	# iftmp.69
	movq	%rdi, %rcx	# D.44606, tmp222
	salq	$11, %rdi	#, D.44607
	andl	$63, %eax	#, D.44589
	salq	$8, %rcx	#, tmp222
	addl	$14, %esi	#, iftmp.69
	subq	%rcx, %rdi	# tmp222, D.44607
	addq	node_data(,%rax,8), %rdi	# node_data, D.44607
	call	mod_zone_page_state	#
	movq	0(%r13), %rax	# MEM[(const long unsigned int *)page_144], D.44591
	xorl	%ecx, %ecx	# D.44589
	testb	$64, %ah	#, D.44591
	jne	.L484	#,
.L453:
	movq	0(%r13), %rax	# MEM[(const struct page *)page_144], D.44589
	movzwl	26(%r13), %edx	# *page_144, D.44590
	shrq	$39, %rax	#, D.44589
	andl	$63, %eax	#, D.44589
	andw	$32767, %dx	#, D.44590
	movq	192(%r12,%rax,8), %rax	# s_14(D)->node, D.44598
	testq	%rax, %rax	# D.44598
	je	.L454	#,
#APP
# 86 "./arch/x86/include/asm/atomic64_64.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; incq 32(%rax)	# MEM[(struct atomic64_t *)_67].counter
# 0 "" 2
#NO_APP
	movzwl	%dx, %edx	# D.44590, D.44597
#APP
# 45 "./arch/x86/include/asm/atomic64_64.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; addq %rdx,40(%rax)	# D.44597, MEM[(struct atomic64_t *)_68].counter
# 0 "" 2
#NO_APP
.L454:
	movq	%r12, 48(%r13)	# s, page_144->D.11450.slab_cache
#APP
# 96 "./arch/x86/include/asm/bitops.h" 1
	bts $7,0(%r13)	#, MEM[(volatile long int *)_70]
# 0 "" 2
#NO_APP
	cmpb	$0, 16(%r13)	#, page_144->D.11432.D.11414.pfmemalloc
	jne	.L485	#,
.L455:
	movq	0(%r13), %rax	# MEM[(const struct page *)page_144], D.44591
	shrq	$45, %rax	#, D.44591
	movq	%rax, %rdx	# D.44591, D.44591
	shrq	$7, %rdx	#, D.44591
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44601
	testq	%rdx, %rdx	# D.44601
	je	.L456	#,
	andl	$127, %eax	#, D.44591
	salq	$5, %rax	#, D.44591
	addq	%rax, %rdx	# D.44591, D.44601
.L456:
	movabsq	$-131941395333120, %r14	#, tmp252
	movq	(%rdx), %rax	# MEM[(struct mem_section *)_82], map
	movq	%r13, %rdi	# page, D.44602
	andq	$-4, %rax	#, map
	subq	%rax, %rdi	# map, D.44602
	movq	%rdi, %rax	# D.44602, D.44602
	sarq	$6, %rax	#, D.44602
	salq	$12, %rax	#, D.44602
	addq	%rax, %r14	# D.44602, last
	testb	$8, 9(%r12)	#, s_14(D)->flags
	jne	.L486	#,
.L457:
	movzwl	26(%r13), %eax	# *page_144, *page_144
	movq	%r14, %rbx	# last, last
	andl	$32767, %eax	#, D.44589
	imull	24(%r12), %eax	# s_14(D)->size, D.44589
	cltq
	addq	%r14, %rax	# last, D.44594
	cmpq	%rax, %r14	# D.44594, last
	jae	.L458	#,
	movq	%r14, %r15	# last, last
	jmp	.L459	#
	.p2align 4,,10
	.p2align 3
.L487:
	movq	%rbx, %r15	# last, last
	movq	%rcx, %rbx	# last, last
.L459:
	movq	%r15, %rsi	# last,
	movq	%r12, %rdi	# s,
	call	setup_object.isra.56	#
	movslq	32(%r12), %rax	# MEM[(struct kmem_cache *)s_14(D) + 32B], D.44593
	movq	%rbx, (%r15,%rax)	# last, *_93
	movzwl	26(%r13), %edx	# *page_144, *page_144
	movl	24(%r12), %eax	# s_14(D)->size, D.44589
	andl	$32767, %edx	#, D.44589
	imull	%eax, %edx	# D.44589, D.44589
	movslq	%eax, %rcx	# D.44589, D.44593
	addq	%rbx, %rcx	# last, last
	movslq	%edx, %rdx	# D.44589, D.44593
	addq	%r14, %rdx	# last, D.44594
	cmpq	%rdx, %rcx	# D.44594, last
	jb	.L487	#,
.L458:
	movq	%rbx, %rsi	# last,
	movq	%r12, %rdi	# s,
	call	setup_object.isra.56	#
	movslq	32(%r12), %rax	# MEM[(struct kmem_cache *)s_14(D) + 32B], D.44593
	movq	$0, (%rbx,%rax)	#, *_95
	movzwl	26(%r13), %eax	# *page_144, D.44590
	movq	%r14, 16(%r13)	# last, page_144->D.11432.D.11414.freelist
	orb	$-128, 27(%r13)	#,
	andw	$32767, %ax	#, D.44590
	movw	%ax, 24(%r13)	# D.44590, page_144->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movq	%r13, %rax	# page, D.44608
.L451:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L484:
	movl	104(%r13), %ecx	# MEM[(struct page *)page_144 + 64B].D.11444.lru.prev, D.44589
	jmp	.L453	#
	.p2align 4,,10
	.p2align 3
.L485:
#APP
# 75 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; orb $64,0(%r13)	#, MEM[(volatile long int *)_70]
# 0 "" 2
#NO_APP
	jmp	.L455	#
	.p2align 4,,10
	.p2align 3
.L482:
	call	alloc_pages_current	#
	movq	%rax, %r13	#, page
	.p2align 4,,5
	jmp	.L447	#
.L460:
	xorl	%eax, %eax	# D.44608
	.p2align 4,,3
	jmp	.L451	#
.L486:
	movl	$4096, %edx	#, D.44591
	movl	$90, %esi	#,
	movq	%r14, %rdi	# last,
	salq	%cl, %rdx	# D.44589, D.44591
	call	memset	#
	jmp	.L457	#
.L481:
#APP
# 1416 "mm/slub.c" 1
	1:	ud2
.pushsection __bug_table,"a"
2:	.long 1b - 2b, .LC2 - 2b	#
	.word 1416, 0	#
	.org 2b+12	#
.popsection
# 0 "" 2
#NO_APP
.L483:
	movq	56(%r12), %rbx	# MEM[(struct kmem_cache *)s_14(D) + 56B], oo$x
	movl	%r14d, %edi	# flags, flags
	orl	$2097152, %edi	#, flags
	movq	%rbx, %rsi	# oo$x, D.44591
	shrq	$16, %rsi	#, D.44591
	cmpl	$-1, %r15d	#, node
	je	.L488	#,
	movl	%r14d, %eax	# flags, tmp195
	movq	node_data(,%r15,8), %rdx	# node_data, tmp201
	xorl	%ecx, %ecx	#
	shrl	$18, %eax	#, tmp195
	andl	$1, %eax	#, D.44592
	imulq	$4672, %rax, %rax	#, D.44592, tmp198
	leaq	7168(%rdx,%rax), %rdx	#, D.44605
	call	__alloc_pages_nodemask	#
	movq	%rax, %r13	#, page
	jmp	.L448	#
.L488:
	call	alloc_pages_current	#
	movq	%rax, %r13	#, page
	.p2align 4,,2
	jmp	.L448	#
	.size	new_slab, .-new_slab
	.section	.rodata.str1.1
.LC26:
	.string	"%s overwritten"
	.section	.rodata.str1.8
	.align 8
.LC27:
	.string	"\0013INFO: 0x%p-0x%p. First byte 0x%x instead of 0x%x\n"
	.section	.rodata.str1.1
.LC28:
	.string	"Restoring 0x%p-0x%p=0x%x\n"
	.text
	.p2align 4,,15
	.type	check_bytes_and_report, @function
check_bytes_and_report:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movq	%rcx, %r15	# what, what
	pushq	%r14	#
	movq	%rdx, %r14	# object, object
	pushq	%r13	#
	movl	%r9d, %r13d	# value, value
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	movq	%r8, %rdi	# start,
	pushq	%rbx	#
	subq	$16, %rsp	#,
	movq	%rsi, -56(%rbp)	# page, %sfp
	movl	%r9d, %esi	# value,
	movl	16(%rbp), %ebx	# bytes, D.44625
	movq	%r8, -48(%rbp)	# start, %sfp
	movq	%rbx, %rdx	# D.44625,
	call	memchr_inv	#
	movq	-48(%rbp), %r8	# %sfp, start
	testq	%rax, %rax	# fault
	movq	%rax, %r10	#, fault
	jne	.L495	#,
	movl	$1, %eax	#, D.44624
.L490:
	addq	$16, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L495:
	addq	%r8, %rbx	# start, end
	cmpq	%rbx, %rax	# end, fault
	jae	.L491	#,
	movzbl	-1(%rbx), %edx	# MEM[(u8 *)end_12 + -1B], D.44626
	cmpl	%r13d, %edx	# value, D.44626
	je	.L492	#,
	jmp	.L491	#
	.p2align 4,,10
	.p2align 3
.L496:
	movzbl	-1(%rbx), %eax	# MEM[base: end_16, offset: -1B], D.44626
	cmpl	%edx, %eax	# D.44626, D.44626
	jne	.L491	#,
.L492:
	subq	$1, %rbx	#, end
	cmpq	%r10, %rbx	# fault, end
	jne	.L496	#,
.L491:
	movq	%r15, %rdx	# what,
	movq	$.LC26, %rsi	#,
	movq	%r12, %rdi	# s,
	movq	%r10, -48(%rbp)	# fault, %sfp
	leaq	-1(%rbx), %r15	#, D.44628
	xorl	%eax, %eax	#
	call	slab_bug	#
	movq	-48(%rbp), %r10	# %sfp, fault
	movl	%r13d, %r8d	# value,
	movq	%r15, %rdx	# D.44628,
	movq	$.LC27, %rdi	#,
	xorl	%eax, %eax	#
	movzbl	%r13b, %r13d	# value, D.44624
	movzbl	(%r10), %ecx	# *fault_11, D.44624
	movq	%r10, %rsi	# fault,
	call	printk	#
	movq	-56(%rbp), %rsi	# %sfp,
	movq	%r14, %rdx	# object,
	movq	%r12, %rdi	# s,
	call	print_trailer	#
	movq	-48(%rbp), %r10	# %sfp, fault
	movl	%r13d, %r8d	# D.44624,
	movq	%r15, %rcx	# D.44628,
	movq	$.LC28, %rsi	#,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	movq	%r10, %rdx	# fault,
	call	slab_fix	#
	movq	-48(%rbp), %r10	# %sfp, fault
	movq	%rbx, %rdx	# end, D.44629
	movl	%r13d, %esi	# D.44624,
	subq	%r10, %rdx	# fault, D.44629
	movq	%r10, %rdi	# fault,
	call	memset	#
	xorl	%eax, %eax	# D.44624
	jmp	.L490	#
	.size	check_bytes_and_report, .-check_bytes_and_report
	.section	.rodata.str1.1
.LC29:
	.string	"Redzone"
.LC30:
	.string	"Alignment padding"
.LC31:
	.string	"Poison"
.LC32:
	.string	"Object padding"
.LC33:
	.string	"Freepointer corrupt"
.LC34:
	.string	"%s"
	.text
	.p2align 4,,15
	.type	check_object, @function
check_object:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	movl	%ecx, %r14d	# val, val
	pushq	%r13	#
	movq	%rsi, %r13	# page, page
	pushq	%r12	#
	movq	%rdx, %r12	# object, object
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	subq	$8, %rsp	#,
	movl	28(%rdi), %edx	# s_8(D)->object_size, D.44640
	movq	8(%rdi), %rax	# s_8(D)->flags, s_8(D)->flags
	movslq	%edx, %r8	# D.44640, D.44641
	addq	%r12, %r8	# object, endobject
	testb	$4, %ah	#, s_8(D)->flags
	jne	.L534	#,
	testb	$8, %ah	#, s_8(D)->flags
	je	.L532	#,
	movl	80(%rdi), %ecx	# s_8(D)->inuse, D.44640
	cmpl	%ecx, %edx	# D.44640, D.44640
	jl	.L535	#,
.L503:
	cmpb	$-52, %r14b	#, val
	je	.L507	#,
	testl	$2147483648, %eax	#, s_8(D)->flags
	jne	.L536	#,
.L507:
	movslq	80(%rbx), %rdx	# s_8(D)->inuse, off
	movslq	32(%rbx), %rsi	# s_8(D)->offset,
	leaq	8(%rdx), %rcx	#, tmp193
	testl	%esi, %esi	# D.44640
	cmovne	%rcx, %rdx	# tmp193,, off
	testl	$65536, %eax	#, s_8(D)->flags
	movl	24(%rbx), %eax	# s_8(D)->size, D.44640
	leaq	48(%rdx), %rcx	#, tmp194
	cmovne	%rcx, %rdx	# tmp194,, off
	movslq	%eax, %rcx	# D.44640, D.44642
	cmpq	%rdx, %rcx	# off, D.44642
	je	.L502	#,
	subl	%edx, %eax	# off, D.44643
	movl	$90, %r9d	#,
	movq	$.LC32, %rcx	#,
	leaq	(%r12,%rdx), %r8	#,
	movl	%eax, (%rsp)	# D.44643,
	movq	%r12, %rdx	# object,
	movq	%r13, %rsi	# page,
	movq	%rbx, %rdi	# s,
	call	check_bytes_and_report	#
.L532:
	movslq	32(%rbx), %rsi	# s_8(D)->offset,
.L502:
	testl	%esi, %esi	# D.44640
	je	.L537	#,
.L510:
	movq	(%r12,%rsi), %rax	# *_47, D.44646
	testq	%rax, %rax	# D.44646
	je	.L514	#,
	movq	0(%r13), %rcx	# MEM[(const struct page *)page_19(D)], D.44642
	shrq	$45, %rcx	#, D.44642
	movq	%rcx, %rdx	# D.44642, D.44642
	shrq	$7, %rdx	#, D.44642
	movq	mem_section(,%rdx,8), %rsi	# mem_section, D.44647
	testq	%rsi, %rsi	# D.44647
	je	.L511	#,
	andl	$127, %ecx	#, D.44642
	salq	$5, %rcx	#, D.44642
	addq	%rcx, %rsi	# D.44642, D.44647
.L511:
	movq	(%rsi), %rdx	# MEM[(struct mem_section *)_60], map
	movq	%r13, %rcx	# page, D.44649
	andq	$-4, %rdx	#, map
	subq	%rdx, %rcx	# map, D.44649
	movabsq	$-131941395333120, %rdx	#, tmp173
	sarq	$6, %rcx	#, D.44649
	salq	$12, %rcx	#, D.44649
	addq	%rdx, %rcx	# tmp173, D.44642
	cmpq	%rcx, %rax	# D.44642, D.44646
	jae	.L538	#,
.L512:
	xorl	%eax, %eax	#
	movq	$.LC33, %rdx	#,
	movq	$.LC34, %rsi	#,
	movq	%rbx, %rdi	# s,
	call	slab_bug	#
	movq	%r12, %rdx	# object,
	movq	%r13, %rsi	# page,
	movq	%rbx, %rdi	# s,
	call	print_trailer	#
	movslq	32(%rbx), %rax	# MEM[(struct kmem_cache *)s_8(D) + 32B], D.44641
	movq	$0, (%r12,%rax)	#, *_83
.L533:
	addq	$8, %rsp	#,
	xorl	%eax, %eax	# D.44640
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L537:
	cmpb	$-52, %r14b	#, val
	jne	.L510	#,
.L514:
	addq	$8, %rsp	#,
	movl	$1, %eax	#, D.44640
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L538:
	movzwl	26(%r13), %edx	# *page_19(D), *page_19(D)
	movslq	24(%rbx), %rsi	# MEM[(int *)s_8(D) + 24B],
	andl	$32767, %edx	#, D.44640
	imull	%esi, %edx	# D.44640, D.44640
	movslq	%edx, %rdx	# D.44640, D.44641
	addq	%rcx, %rdx	# D.44642, D.44651
	cmpq	%rdx, %rax	# D.44651, D.44646
	jae	.L512	#,
	subq	%rcx, %rax	# D.44642, D.44648
	cqto
	idivq	%rsi	# D.44648
	testq	%rdx, %rdx	# D.44648
	jne	.L512	#,
	jmp	.L514	#
	.p2align 4,,10
	.p2align 3
.L534:
	movl	80(%rdi), %eax	# s_8(D)->inuse, D.44640
	movl	%ecx, %r9d	# val,
	movq	$.LC29, %rcx	#,
	subl	%edx, %eax	# D.44640, D.44640
	movq	%r12, %rdx	# object,
	movl	%eax, (%rsp)	# D.44640,
	call	check_bytes_and_report	#
	testl	%eax, %eax	# D.44640
	je	.L533	#,
	movq	8(%rbx), %rax	# s_8(D)->flags, s_8(D)->flags
	testb	$8, %ah	#, s_8(D)->flags
	jne	.L503	#,
	.p2align 4,,2
	jmp	.L532	#
	.p2align 4,,10
	.p2align 3
.L536:
	movl	28(%rbx), %eax	# s_8(D)->object_size, tmp195
	movl	$107, %r9d	#,
	movq	%r12, %r8	# object,
	movq	$.LC31, %rcx	#,
	movq	%r12, %rdx	# object,
	movq	%r13, %rsi	# page,
	movq	%rbx, %rdi	# s,
	subl	$1, %eax	#, D.44640
	movl	%eax, (%rsp)	# D.44640,
	call	check_bytes_and_report	#
	testl	%eax, %eax	# D.44640
	je	.L533	#,
	movslq	28(%rbx), %rax	# s_8(D)->object_size, D.44641
	movl	$1, (%rsp)	#,
	movq	%r12, %rdx	# object,
	movl	$165, %r9d	#,
	movq	$.LC31, %rcx	#,
	movq	%r13, %rsi	# page,
	movq	%rbx, %rdi	# s,
	leaq	-1(%r12,%rax), %r8	#,
	call	check_bytes_and_report	#
	testl	%eax, %eax	# D.44640
	je	.L533	#,
	movq	8(%rbx), %rax	# s_8(D)->flags, s_8(D)->flags
	jmp	.L507	#
	.p2align 4,,10
	.p2align 3
.L535:
	subl	%edx, %ecx	# D.44640, D.44640
	movl	$90, %r9d	#,
	movq	%r12, %rdx	# object,
	movl	%ecx, (%rsp)	# D.44640,
	movq	$.LC30, %rcx	#,
	call	check_bytes_and_report	#
	movq	8(%rbx), %rax	# s_8(D)->flags, s_8(D)->flags
	testb	$8, %ah	#, s_8(D)->flags
	jne	.L503	#,
	jmp	.L532	#
	.size	check_object, .-check_object
	.p2align 4,,15
	.type	kmem_cache_flags.isra.63, @function
kmem_cache_flags.isra.63:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	movq	%rdi, %rbx	# flags, flags
	subq	$8, %rsp	#,
	movslq	slub_debug(%rip), %r12	# slub_debug,
	testl	%r12d, %r12d	# slub_debug.440
	je	.L540	#,
	movq	slub_debug_slabs(%rip), %r13	# slub_debug_slabs, slub_debug_slabs.441
	testq	%r13, %r13	# slub_debug_slabs.441
	je	.L541	#,
	testq	%rsi, %rsi	# name
	movq	%rsi, -32(%rbp)	# name, %sfp
	je	.L540	#,
	movq	%r13, %rdi	# slub_debug_slabs.441,
	call	strlen	#
	movq	-32(%rbp), %rsi	# %sfp, name
	movq	%r13, %rdi	# slub_debug_slabs.441,
	movq	%rax, %rdx	# tmp68,
	call	strncmp	#
	testl	%eax, %eax	# tmp70
	jne	.L540	#,
.L541:
	orq	%r12, %rbx	# D.44662, flags
.L540:
	addq	$8, %rsp	#,
	movq	%rbx, %rax	# flags,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%rbp	#
	ret
	.size	kmem_cache_flags.isra.63, .-kmem_cache_flags.isra.63
	.p2align 4,,15
	.type	free_loc_track.isra.66, @function
free_loc_track.isra.66:
	testq	%rdi, %rdi	# ISRA.1476
	je	.L559	#,
	pushq	%rbp	#
	leaq	(%rdi,%rdi,8), %rax	#, D.44666
	movq	%rsi, %rcx	# ISRA.1477, ISRA.1477
	movq	(%rcx), %rdi	# *ISRA.1477_147(D),
	leaq	-1(,%rax,8), %rdx	#, size
	movq	%rsp, %rbp	#,
	shrq	$12, %rdx	#, size
	movl	$-1, %eax	#, bitpos
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rdx,%rax	# size, bitpos
# 0 "" 2
#NO_APP
	leal	1(%rax), %esi	#, D.44667
	call	free_pages	#
	popq	%rbp	#
.L559:
	rep ret
	.size	free_loc_track.isra.66, .-free_loc_track.isra.66
	.p2align 4,,15
	.type	alloc_loc_track, @function
alloc_loc_track:
	pushq	%rbp	#
	leaq	(%rsi,%rsi,8), %rax	#, D.44673
	leaq	-1(,%rax,8), %rcx	#, size
	movq	%rsp, %rbp	#,
	pushq	%r13	#
	pushq	%r12	#
	shrq	$12, %rcx	#, size
	movq	%rsi, %r12	# max, max
	pushq	%rbx	#
	movl	$-1, %eax	#, bitpos
	movq	%rdi, %rbx	# t, t
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rcx,%rax	# size, bitpos
# 0 "" 2
#NO_APP
	leal	1(%rax), %esi	#, order
	movl	%edx, %edi	# flags,
	call	__get_free_pages	#
	testq	%rax, %rax	# l
	movq	%rax, %r13	#, l
	je	.L563	#,
	movq	8(%rbx), %rax	# t_142(D)->count, D.44673
	testq	%rax, %rax	# D.44673
	jne	.L568	#,
.L562:
	movq	%r12, (%rbx)	# max, t_142(D)->max
	movl	$1, %eax	#, D.44672
	movq	%r13, 16(%rbx)	# l, t_142(D)->loc
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L568:
	movq	16(%rbx), %rsi	# t_142(D)->loc, t_142(D)->loc
	leaq	(%rax,%rax,8), %rdx	#, D.44673
	movq	%r13, %rdi	# l,
	salq	$3, %rdx	#, tmp88
	call	memcpy	#
	movq	(%rbx), %rdi	# MEM[(struct loc_track *)t_142(D)],
	leaq	16(%rbx), %rsi	#, D.44675
	call	free_loc_track.isra.66	#
	jmp	.L562	#
	.p2align 4,,10
	.p2align 3
.L563:
	popq	%rbx	#
	xorl	%eax, %eax	# D.44672
	popq	%r12	#
	popq	%r13	#
	popq	%rbp	#
	ret
	.size	alloc_loc_track, .-alloc_loc_track
	.p2align 4,,15
	.type	process_slab, @function
process_slab:
	pushq	%rbp	#
	movq	%rsi, %r9	# s, s
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	movq	%rdi, %r13	# t, t
	pushq	%r12	#
	pushq	%rbx	#
	movl	%ecx, %ebx	# alloc,
	movq	%rdx, %rcx	# page, page
	subq	$56, %rsp	#,
	movq	%rdx, -56(%rbp)	# page, %sfp
	movq	(%rdx), %rax	# MEM[(const struct page *)page_5(D)], D.44710
	shrq	$45, %rax	#, D.44710
	movq	%rax, %rdx	# D.44710, D.44710
	shrq	$7, %rdx	#, D.44710
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44711
	testq	%rdx, %rdx	# D.44711
	je	.L570	#,
	andl	$127, %eax	#, tmp258
	salq	$5, %rax	#, tmp258
	movq	(%rdx,%rax), %rax	# MEM[(struct mem_section *)_37], map
	andq	$-4, %rax	#, map
.L605:
	movq	%rcx, %rsi	# page, D.44712
	movq	%r8, %rdi	# map,
	movq	%r9, -72(%rbp)	# s, %sfp
	subq	%rax, %rsi	# map, D.44712
	movq	%r8, -48(%rbp)	# map, %sfp
	movabsq	$-131941395333120, %r11	#, tmp265
	movq	%rsi, %rax	# D.44712, D.44712
	xorl	%esi, %esi	#
	sarq	$6, %rax	#, D.44712
	salq	$12, %rax	#, D.44712
	addq	%rax, %r11	# D.44712, D.44710
	movzwl	26(%rcx), %eax	# *page_5(D), D.44705
	movq	%r11, -64(%rbp)	# D.44710, %sfp
	andw	$32767, %ax	#, D.44705
	movzwl	%ax, %eax	# D.44705, D.44710
	addq	$63, %rax	#, D.44710
	shrq	$6, %rax	#, D.44710
	leaq	0(,%rax,8), %rdx	#, D.44710
	call	memset	#
	movq	-48(%rbp), %r8	# %sfp, map
	movq	-72(%rbp), %r9	# %sfp, s
	movq	-56(%rbp), %r14	# %sfp, page
	movq	%r8, %rdx	# map,
	movq	%r8, -80(%rbp)	# map, %sfp
	movq	%r9, %rdi	# s,
	movq	%r9, -48(%rbp)	# s, %sfp
	movq	%r14, %rsi	# page,
	call	get_map	#
	movq	-48(%rbp), %r9	# %sfp, s
	movzwl	26(%r14), %edi	# *page_5(D), *page_5(D)
	movq	-64(%rbp), %r11	# %sfp, D.44710
	movl	24(%r9), %esi	# s_10(D)->size, D.44706
	movl	%edi, %eax	# *page_5(D), D.44706
	andl	$32767, %eax	#, D.44706
	imull	%esi, %eax	# D.44706, D.44706
	cltq
	addq	%r11, %rax	# D.44710, D.44708
	cmpq	%rax, %r11	# D.44708, D.44710
	jae	.L569	#,
	movq	-80(%rbp), %r8	# %sfp, map
	leaq	(%rbx,%rbx,2), %rax	#, tmp291
	movq	%r11, %r14	# D.44710, p
	salq	$3, %rax	#, tmp292
	movslq	%esi, %rcx	# D.44706, D.44709
	movabsq	$131939247849472, %r10	#, tmp404
	movq	%rax, -48(%rbp)	# tmp292, %sfp
	.p2align 4,,10
	.p2align 3
.L594:
	movq	%r14, %rax	# p, D.44709
	subq	%r11, %rax	# D.44710, D.44709
	cqto
	idivq	%rcx	# D.44709
	cltq
#APP
# 318 "./arch/x86/include/asm/bitops.h" 1
	bt %rax,(%r8)	# D.44709, *map_8(D)
	sbb %eax,%eax	# oldbit
# 0 "" 2
#NO_APP
	testl	%eax, %eax	# oldbit
	jne	.L573	#,
	movslq	32(%r9), %rax	# MEM[(struct kmem_cache *)s_10(D) + 32B],
	leaq	8(%r14,%rax), %r12	#, p
	testl	%eax, %eax	# D.44706
	jne	.L575	#,
	movslq	80(%r9), %r12	# MEM[(int *)s_10(D) + 80B], D.44707
	addq	%r14, %r12	# p, p
.L575:
	addq	-48(%rbp), %r12	# %sfp, D.44714
	movq	$-1, %rdx	#, end
	movq	jiffies(%rip), %rcx	# jiffies, age
	movq	8(%r13), %rsi	# t_22(D)->count, D.44710
	subq	16(%r12), %rcx	# MEM[(const struct track *)_72].when, age
	movq	%rsi, %rax	# D.44710, end
	jmp	.L587	#
	.p2align 4,,10
	.p2align 3
.L612:
	movq	16(%r13), %rdi	# t_22(D)->loc, t_22(D)->loc
	leaq	(%rbx,%rbx,8), %r15	#, D.44710
	leaq	(%rdi,%r15,8), %rdi	#, D.44715
	movq	(%r12), %r15	# MEM[(const struct track *)_72].addr, tmp439
	cmpq	%r15, 8(%rdi)	# tmp439, _90->addr
	je	.L610	#,
	jbe	.L611	#,
	movq	%rbx, %rax	# end, end
.L587:
	movq	%rax, %rbx	# end, D.44709
	subq	%rdx, %rbx	# end, D.44709
	addq	$1, %rbx	#, D.44709
	movq	%rbx, %rdi	# D.44709, tmp306
	shrq	$63, %rdi	#, tmp306
	addq	%rdi, %rbx	# tmp306, tmp308
	sarq	%rbx	# tmp308
	addq	%rdx, %rbx	# end, end
	cmpq	%rbx, %rax	# end, end
	jne	.L612	#,
	movq	0(%r13), %rax	# t_22(D)->max, D.44710
	cmpq	%rax, %rsi	# D.44710, D.44710
	jae	.L613	#,
.L588:
	movq	16(%r13), %rax	# t_22(D)->loc, t_22(D)->loc
	leaq	(%rbx,%rbx,8), %rdx	#, D.44710
	cmpq	%rsi, %rbx	# D.44710, end
	leaq	(%rax,%rdx,8), %r15	#, l
	jb	.L614	#,
.L590:
	addq	$1, %rsi	#, tmp341
	movq	%rsi, 8(%r13)	# tmp341, t_22(D)->count
	movq	$1, (%r15)	#, l_160->count
	movq	(%r12), %rax	# MEM[(const struct track *)_72].addr, D.44710
	movq	%rcx, 16(%r15)	# age, l_160->sum_time
	movq	%rcx, 24(%r15)	# age, l_160->min_time
	movq	%rcx, 32(%r15)	# age, l_160->max_time
	movq	%rax, 8(%r15)	# D.44710, l_160->addr
	movslq	12(%r12), %rax	# MEM[(const struct track *)_72].pid, MEM[(const struct track *)_72].pid
	movq	%rax, 40(%r15)	# MEM[(const struct track *)_72].pid, l_160->min_pid
	movslq	12(%r12), %rax	# MEM[(const struct track *)_72].pid, MEM[(const struct track *)_72].pid
	movq	$0, 56(%r15)	#, MEM[(long unsigned int *)l_160 + 56B]
	movq	%rax, 48(%r15)	# MEM[(const struct track *)_72].pid, l_160->max_pid
	movl	8(%r12), %eax	# MEM[(const struct track *)_72].cpu, D.44709
#APP
# 80 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts %rax,56(%r15)	# D.44709, MEM[(volatile long int *)_175]
# 0 "" 2
#NO_APP
	movl	$2147483648, %eax	#, tmp446
	movq	$0, 64(%r15)	#, MEM[(long unsigned int *)l_160 + 64B]
	addq	%rax, %r12	# tmp446, y
	movq	%r10, %rax	# tmp404, iftmp.154
	cmovc	phys_base(%rip), %rax	# phys_base,, iftmp.154
	addq	%rax, %r12	# iftmp.154, x
	movq	%r12, %rcx	# x, __pfn
	movq	%r12, %rax	# x, D.44710
	shrq	$34, %r12	#, D.44710
	movq	mem_section(,%r12,8), %rdx	# mem_section, D.44711
	shrq	$12, %rcx	#, __pfn
	shrq	$27, %rax	#, D.44710
	testq	%rdx, %rdx	# D.44711
	je	.L592	#,
	andl	$127, %eax	#, tmp351
	salq	$5, %rax	#, tmp351
	movq	(%rdx,%rax), %rax	# MEM[(struct mem_section *)_195], map
.L608:
	andq	$-4, %rax	#, map
	salq	$6, %rcx	#, tmp354
	addq	$64, %r15	#, D.44720
	movq	(%rcx,%rax), %rax	#* map, D.44709
	shrq	$39, %rax	#, D.44709
	andl	$63, %eax	#, D.44709
#APP
# 80 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts %rax,(%r15)	# D.44709, MEM[(volatile long int *)_251]
# 0 "" 2
#NO_APP
.L609:
	movq	-56(%rbp), %rax	# %sfp, page
	movl	24(%r9), %esi	# s_10(D)->size, D.44706
	movzwl	26(%rax), %edi	# *page_5(D), *page_5(D)
	.p2align 4,,10
	.p2align 3
.L573:
	movl	%edi, %eax	# *page_5(D), D.44706
	movslq	%esi, %rcx	# D.44706, D.44709
	andl	$32767, %eax	#, D.44706
	addq	%rcx, %r14	# D.44709, p
	imull	%esi, %eax	# D.44706, D.44706
	cltq
	addq	%r11, %rax	# D.44710, D.44708
	cmpq	%rax, %r14	# D.44708, p
	jb	.L594	#,
.L569:
	addq	$56, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L610:
	addq	$1, (%rdi)	#, _321->count
	cmpq	$0, 16(%r12)	#, MEM[(const struct track *)_72].when
	je	.L578	#,
	addq	%rcx, 16(%rdi)	# age, _321->sum_time
	cmpq	24(%rdi), %rcx	# _321->min_time, age
	jae	.L579	#,
	movq	%rcx, 24(%rdi)	# age, _321->min_time
.L579:
	cmpq	32(%rdi), %rcx	# _321->max_time, age
	jbe	.L580	#,
	movq	%rcx, 32(%rdi)	# age, _321->max_time
.L580:
	movslq	12(%r12), %rax	# MEM[(const struct track *)_72].pid, D.44709
	cmpq	40(%rdi), %rax	# _321->min_pid, D.44709
	jge	.L581	#,
	movq	%rax, 40(%rdi)	# D.44709, _321->min_pid
	movslq	12(%r12), %rax	# MEM[(const struct track *)_72].pid, D.44709
.L581:
	cmpq	%rax, 48(%rdi)	# D.44709, _321->max_pid
	jge	.L606	#,
	movq	%rax, 48(%rdi)	# D.44709, _321->max_pid
.L606:
	leaq	56(%rdi), %rax	#, D.44718
	movl	8(%r12), %edx	# MEM[(const struct track *)_72].cpu, D.44709
#APP
# 80 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts %rdx,(%rax)	# D.44709, MEM[(volatile long int *)_211]
# 0 "" 2
#NO_APP
.L578:
	movl	$2147483648, %eax	#, tmp440
	addq	%rax, %r12	# tmp440, y
	movq	%r10, %rax	# tmp404, iftmp.154
	cmovc	phys_base(%rip), %rax	# phys_base,, iftmp.154
	addq	%rax, %r12	# iftmp.154, x
	movq	%r12, %rcx	# x, __pfn
	movq	%r12, %rax	# x, D.44710
	shrq	$34, %r12	#, D.44710
	movq	mem_section(,%r12,8), %rdx	# mem_section, D.44711
	shrq	$12, %rcx	#, __pfn
	shrq	$27, %rax	#, D.44710
	testq	%rdx, %rdx	# D.44711
	je	.L584	#,
	andl	$127, %eax	#, tmp321
	salq	$5, %rax	#, tmp321
	movq	(%rdx,%rax), %rax	# MEM[(struct mem_section *)_134], map
.L607:
	andq	$-4, %rax	#, map
	salq	$6, %rcx	#, tmp324
	addq	$64, %rdi	#, D.44720
	movq	(%rcx,%rax), %rax	#* map, D.44709
	shrq	$39, %rax	#, D.44709
	andl	$63, %eax	#, D.44709
#APP
# 80 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts %rax,(%rdi)	# D.44709, MEM[(volatile long int *)_213]
# 0 "" 2
#NO_APP
	movq	-56(%rbp), %rax	# %sfp, page
	movl	24(%r9), %esi	# s_10(D)->size, D.44706
	movzwl	26(%rax), %edi	# *page_5(D), *page_5(D)
	jmp	.L573	#
	.p2align 4,,10
	.p2align 3
.L611:
	movq	%rbx, %rdx	# end, end
	jmp	.L587	#
.L613:
	leaq	(%rax,%rax), %rsi	#, D.44710
	movl	$32, %edx	#,
	movq	%r13, %rdi	# t,
	movq	%r8, -96(%rbp)	# map, %sfp
	movq	%r9, -88(%rbp)	# s, %sfp
	movq	%r11, -80(%rbp)	# D.44710, %sfp
	movq	%r10, -72(%rbp)	# tmp404, %sfp
	movq	%rcx, -64(%rbp)	# age, %sfp
	call	alloc_loc_track	#
	movq	-64(%rbp), %rcx	# %sfp, age
	testl	%eax, %eax	# D.44706
	movq	-72(%rbp), %r10	# %sfp, tmp404
	movq	-80(%rbp), %r11	# %sfp, D.44710
	movq	-88(%rbp), %r9	# %sfp, s
	movq	-96(%rbp), %r8	# %sfp, map
	je	.L609	#,
	movq	8(%r13), %rsi	# t_22(D)->count, D.44710
	jmp	.L588	#
.L614:
	leaq	72(%r15), %rdi	#, D.44708
	subq	%rbx, %rsi	# end, D.44710
	movq	%r8, -96(%rbp)	# map, %sfp
	leaq	(%rsi,%rsi,8), %rdx	#, D.44710
	movq	%r15, %rsi	# l,
	movq	%r9, -88(%rbp)	# s, %sfp
	salq	$3, %rdx	#, tmp339
	movq	%r11, -80(%rbp)	# D.44710, %sfp
	movq	%r10, -72(%rbp)	# tmp404, %sfp
	movq	%rcx, -64(%rbp)	# age, %sfp
	call	memmove	#
	movq	8(%r13), %rsi	# t_22(D)->count, D.44710
	movq	-96(%rbp), %r8	# %sfp, map
	movq	-88(%rbp), %r9	# %sfp, s
	movq	-80(%rbp), %r11	# %sfp, D.44710
	movq	-72(%rbp), %r10	# %sfp, tmp404
	movq	-64(%rbp), %rcx	# %sfp, age
	jmp	.L590	#
.L584:
	movq	0, %rax	# MEM[(struct mem_section *)0B], map
	jmp	.L607	#
.L592:
	movq	0, %rax	# MEM[(struct mem_section *)0B], map
	jmp	.L608	#
.L570:
	movq	0, %rax	# MEM[(struct mem_section *)0B], map
	movq	-56(%rbp), %rcx	# %sfp, page
	andq	$-4, %rax	#, map
	jmp	.L605	#
	.size	process_slab, .-process_slab
	.p2align 4,,15
	.type	slab_err, @function
slab_err:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	leaq	16(%rbp), %rax	#, tmp81
	movq	%rsi, %rbx	# page, page
	subq	$176, %rsp	#,
	movl	$100, %esi	#,
	movq	%rcx, 152(%rsp)	#,
	leaq	28(%rsp), %rdi	#, tmp83
	movq	%rsp, %rcx	#,
	movq	%rax, 8(%rsp)	# tmp81, MEM[(struct [1] *)&args].overflow_arg_area
	leaq	128(%rsp), %rax	#, tmp82
	movq	%r8, 160(%rsp)	#,
	movq	%r9, 168(%rsp)	#,
	movl	$24, (%rsp)	#, MEM[(struct [1] *)&args].gp_offset
	movq	%rax, 16(%rsp)	# tmp82, MEM[(struct [1] *)&args].reg_save_area
	call	vsnprintf	#
	leaq	28(%rsp), %rdx	#, tmp84
	movq	%r12, %rdi	# s,
	movq	$.LC34, %rsi	#,
	xorl	%eax, %eax	#
	call	slab_bug	#
	movzwl	26(%rbx), %edx	# *page_8(D), *page_8(D)
	movq	%rbx, %rsi	# page,
	movzwl	24(%rbx), %ecx	# page_8(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44732
	movq	$.LC19, %rdi	#,
	xorl	%eax, %eax	#
	movq	(%rbx), %r9	# page_8(D)->flags,
	movq	16(%rbx), %r8	# page_8(D)->D.11432.D.11414.freelist,
	andl	$32767, %edx	#, D.44732
	call	printk	#
	call	dump_stack	#
	addq	$176, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	slab_err, .-slab_err
	.section	.rodata.str1.1
.LC35:
	.string	"Freechain corrupt"
.LC36:
	.string	"Freelist cleared"
	.section	.rodata.str1.8
	.align 8
.LC37:
	.string	"Wrong number of objects. Found %d but should be %d"
	.section	.rodata.str1.1
.LC38:
	.string	"Number of objects adjusted."
	.section	.rodata.str1.8
	.align 8
.LC39:
	.string	"Wrong object count. Counter is %d but counted were %d"
	.section	.rodata.str1.1
.LC40:
	.string	"Object count adjusted."
	.text
	.p2align 4,,15
	.type	on_freelist, @function
on_freelist:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	movq	%rsi, %r14	# page, page
	pushq	%r13	#
	movq	%rdx, %r13	# search, search
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	16(%rsi), %r9	# page_11(D)->D.11432.D.11414.freelist, object
	movzwl	26(%rsi), %edi	# *page_11(D), D.44742
	andw	$32767, %di	#, D.44742
	testq	%r9, %r9	# object
	movzwl	%di, %esi	# D.44742, D.44741
	je	.L639	#,
	cmpq	%rdx, %r9	# search, object
	je	.L632	#,
	movabsq	$-131941395333120, %r10	#, tmp179
	movq	(%r14), %rax	# MEM[(const struct page *)page_11(D)], D.44744
	movq	%r14, %rcx	# page, D.44748
	shrq	$45, %rax	#, D.44744
	movq	%rax, %rdx	# D.44744, D.44744
	andl	$127, %eax	#, D.44744
	shrq	$7, %rdx	#, D.44744
	salq	$5, %rax	#, D.44744
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44746
	addq	%rdx, %rax	# D.44746, D.44746
	testq	%rdx, %rdx	# D.44746
	movl	$0, %edx	#, tmp173
	cmove	%rdx, %rax	# D.44746,, tmp173, D.44746
	xorl	%r15d, %r15d	# object
	xorl	%ebx, %ebx	# nr
	movq	(%rax), %rax	# MEM[(struct mem_section *)_66], map
	andq	$-4, %rax	#, map
	subq	%rax, %rcx	# map, D.44748
	movq	%rcx, %rax	# D.44748, D.44748
	sarq	$6, %rax	#, D.44748
	salq	$12, %rax	#, D.44748
	addq	%rax, %r10	# D.44748, D.44744
	jmp	.L623	#
	.p2align 4,,10
	.p2align 3
.L640:
	movslq	24(%r12), %r11	# MEM[(int *)s_16(D) + 24B],
	movl	%r11d, %eax	# D.44741, D.44741
	imull	%esi, %eax	# D.44741, D.44741
	cltq
	addq	%r10, %rax	# D.44744, D.44751
	cmpq	%rax, %r9	# D.44751, object
	jae	.L621	#,
	movq	%r9, %rax	# object, D.44747
	subq	%r10, %rax	# D.44744, D.44747
	cqto
	idivq	%r11	# D.44744
	testq	%rdx, %rdx	# D.44747
	jne	.L621	#,
	movslq	32(%r12), %rax	# MEM[(struct kmem_cache *)s_16(D) + 32B], D.44750
	addl	$1, %ebx	#, nr
	movq	(%r9,%rax), %rax	# *_89, object
	testq	%rax, %rax	# object
	je	.L619	#,
	cmpl	%esi, %ebx	# D.44741, nr
	jg	.L619	#,
	cmpq	%rax, %r13	# object, search
	je	.L632	#,
	movq	%r9, %r15	# object, object
	movq	%rax, %r9	# object, object
.L623:
	cmpq	%r9, %r10	# object, D.44744
	jbe	.L640	#,
.L621:
	testq	%r15, %r15	# object
	je	.L641	#,
	xorl	%eax, %eax	#
	movq	$.LC35, %rdx	#,
	movq	$.LC34, %rsi	#,
	movq	%r12, %rdi	# s,
	call	slab_bug	#
	movq	%r14, %rsi	# page,
	movq	%r12, %rdi	# s,
	movq	%r15, %rdx	# object,
	call	print_trailer	#
	movslq	32(%r12), %rax	# MEM[(struct kmem_cache *)s_16(D) + 32B], D.44750
	movq	$0, (%r15,%rax)	#, *_87
	movzwl	26(%r14), %edi	# *page_11(D), D.44742
	movslq	24(%r12), %r11	#, D.44744
	andw	$32767, %di	#, D.44742
	movzwl	%di, %esi	# D.44742, D.44741
.L619:
	movq	(%r14), %rcx	# MEM[(const long unsigned int *)page_11(D)], D.44744
	movl	$4096, %eax	#, D.44744
	movslq	88(%r12), %rdx	# s_16(D)->reserved,
	andb	$64, %ch	#, D.44744
	jne	.L642	#,
.L625:
	subq	%rdx, %rax	# D.44744, D.44744
	xorl	%edx, %edx	# tmp189
	movl	$32767, %r15d	#, max_objects
	divq	%r11	# D.44744
	cltq
	movzwl	%di, %edi	# D.44742, D.44744
	cmpq	$32767, %rax	#, max_objects
	cmovbe	%rax, %r15	# max_objects,, max_objects
	cmpq	%r15, %rdi	# max_objects, D.44744
	je	.L626	#,
	movq	%r15, %r8	# max_objects,
	movl	%esi, %ecx	# D.44741,
	movq	$.LC37, %rdx	#,
	movq	%r14, %rsi	# page,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	call	slab_err	#
	movzwl	26(%r14), %eax	#, tmp196
	andw	$32767, %r15w	#, tmp193
	movq	$.LC38, %rsi	#,
	movq	%r12, %rdi	# s,
	andw	$-32768, %ax	#, tmp196
	orl	%r15d, %eax	# tmp193, tmp196
	movw	%ax, 26(%r14)	# tmp196,
	xorl	%eax, %eax	#
	call	slab_fix	#
	movzwl	26(%r14), %esi	# *page_11(D), *page_11(D)
	andl	$32767, %esi	#, D.44741
.L626:
	movzwl	24(%r14), %ecx	# page_11(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44741
	subl	%ebx, %esi	# nr, D.44741
	movl	%esi, %r8d	# D.44741, D.44741
	cmpl	%esi, %ecx	# D.44741, D.44741
	je	.L627	#,
	movq	%r14, %rsi	# page,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	movq	$.LC39, %rdx	#,
	call	slab_err	#
	movzwl	26(%r14), %eax	# *page_11(D), tmp209
	movq	%r12, %rdi	# s,
	movq	$.LC40, %rsi	#,
	andw	$32767, %ax	#, tmp209
	subl	%ebx, %eax	# nr, tmp209
	movw	%ax, 24(%r14)	# tmp209, page_11(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	xorl	%eax, %eax	#
	call	slab_fix	#
.L627:
	xorl	%eax, %eax	# D.44741
	testq	%r13, %r13	# search
	sete	%al	#, D.44741
.L636:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L642:
	movq	104(%r14), %rcx	# MEM[(struct page *)page_11(D) + 64B].D.11444.lru.prev, MEM[(struct page *)page_11(D) + 64B].D.11444.lru.prev
	salq	%cl, %rax	# MEM[(struct page *)page_11(D) + 64B].D.11444.lru.prev, D.44744
	jmp	.L625	#
	.p2align 4,,10
	.p2align 3
.L632:
	popq	%rbx	#
	movl	$1, %eax	#, D.44741
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L639:
	xorl	%ebx, %ebx	# nr
	movslq	24(%r12), %r11	#, D.44744
	jmp	.L619	#
	.p2align 4,,10
	.p2align 3
.L641:
	movq	$.LC33, %rdx	#,
	movq	%r14, %rsi	# page,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	call	slab_err	#
	movzwl	26(%r14), %eax	# *page_11(D), D.44742
	movq	%r12, %rdi	# s,
	movq	$0, 16(%r14)	#, page_11(D)->D.11432.D.11414.freelist
	movq	$.LC36, %rsi	#,
	andw	$32767, %ax	#, D.44742
	movw	%ax, 24(%r14)	# D.44742, page_11(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	xorl	%eax, %eax	#
	call	slab_fix	#
	xorl	%eax, %eax	# D.44741
	jmp	.L636	#
	.size	on_freelist, .-on_freelist
	.section	.rodata.str1.8
	.align 8
.LC41:
	.string	"Padding overwritten. 0x%p-0x%p"
	.text
	.p2align 4,,15
	.type	slab_pad_check.part.58, @function
slab_pad_check.part.58:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	movq	%rsi, %r13	# page, page
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	subq	$24, %rsp	#,
	movq	(%rsi), %rax	# MEM[(const struct page *)page_1(D)], D.44776
	shrq	$45, %rax	#, D.44776
	movq	%rax, %rdx	# D.44776, D.44776
	shrq	$7, %rdx	#, D.44776
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44778
	testq	%rdx, %rdx	# D.44778
	je	.L644	#,
	andl	$127, %eax	#, D.44776
	salq	$5, %rax	#, D.44776
	addq	%rax, %rdx	# D.44776, D.44778
.L644:
	movq	0(%r13), %rax	# MEM[(const long unsigned int *)page_1(D)], D.44776
	movl	$4096, %ecx	#, D.44783
	movq	(%rdx), %rsi	# MEM[(struct mem_section *)_13], map
	testb	$64, %ah	#, D.44776
	je	.L645	#,
	movq	104(%r13), %rcx	# MEM[(struct page *)page_1(D) + 64B].D.11444.lru.prev, MEM[(struct page *)page_1(D) + 64B].D.11444.lru.prev
	movl	$4096, %eax	#, tmp126
	salq	%cl, %rax	# MEM[(struct page *)page_1(D) + 64B].D.11444.lru.prev, tmp141
	movq	%rax, %rcx	# tmp141, D.44783
.L645:
	subl	88(%r12), %ecx	# s_32(D)->reserved, length
	movl	%ecx, %eax	# length, tmp128
	cltd
	idivl	24(%r12)	# s_32(D)->size
	testl	%edx, %edx	# tmp127
	movl	%edx, %r15d	# tmp127, tmp127
	jne	.L646	#,
.L648:
	addq	$24, %rsp	#,
	movl	$1, %eax	#, D.44777
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L646:
	andq	$-4, %rsi	#, map
	movq	%r13, %rax	# page, D.44780
	movslq	%ecx, %rcx	# length, D.44784
	movabsq	$-131941395333120, %rbx	#, tmp135
	subq	%rsi, %rax	# map, D.44780
	movslq	%edx, %rdx	# tmp127, D.44776
	sarq	$6, %rax	#, D.44780
	movl	$90, %esi	#,
	salq	$12, %rax	#, D.44780
	addq	%rax, %rbx	# D.44780, D.44776
	addq	%rcx, %rbx	# D.44784, end
	movq	%rdx, %rcx	# D.44776, D.44784
	negq	%rcx	# D.44784
	leaq	(%rbx,%rcx), %r14	#, D.44786
	movq	%rcx, -48(%rbp)	# D.44784, %sfp
	movq	%r14, %rdi	# D.44786,
	call	memchr_inv	#
	testq	%rax, %rax	# fault
	je	.L648	#,
	cmpq	%rax, %rbx	# fault, end
	jbe	.L649	#,
	cmpb	$90, -1(%rbx)	#, MEM[(u8 *)end_38 + -1B]
	movq	-48(%rbp), %rcx	# %sfp, D.44784
	je	.L652	#,
	jmp	.L649	#
	.p2align 4,,10
	.p2align 3
.L650:
	cmpb	$90, -1(%rbx)	#, MEM[base: end_46, offset: -1B]
	jne	.L662	#,
.L652:
	subq	$1, %rbx	#, end
	cmpq	%rax, %rbx	# fault, end
	jne	.L650	#,
.L662:
	leaq	(%rbx,%rcx), %r14	#, D.44786
.L649:
	leaq	-1(%rbx), %r10	#, D.44786
	movq	%rax, %rcx	# fault,
	movq	%r13, %rsi	# page,
	movq	%r10, %r8	# D.44786,
	movq	%r12, %rdi	# s,
	movq	$.LC41, %rdx	#,
	xorl	%eax, %eax	#
	movq	%r10, -48(%rbp)	# D.44786, %sfp
	call	slab_err	#
	movl	%r15d, %eax	# tmp127, tmp146
	movq	%r14, %r9	# D.44786,
	movq	%rax, (%rsp)	# tmp146,
	movl	$1, %r8d	#,
	movl	$16, %ecx	#,
	movl	$1, 8(%rsp)	#,
	movl	$1, %edx	#,
	movq	$.LC25, %rsi	#,
	movq	$.LC22, %rdi	#,
	call	print_hex_dump	#
	movq	-48(%rbp), %r10	# %sfp, D.44786
	movq	%r14, %rdx	# D.44786,
	movq	%r12, %rdi	# s,
	movl	$90, %r8d	#,
	movq	$.LC28, %rsi	#,
	xorl	%eax, %eax	#
	movq	%r10, %rcx	# D.44786,
	call	slab_fix	#
	movq	%rbx, %rdx	# end, D.44779
	movq	%r14, %rdi	# D.44786,
	subq	%r14, %rdx	# D.44786, D.44779
	movl	$90, %esi	#,
	call	memset	#
	addq	$24, %rsp	#,
	xorl	%eax, %eax	# D.44777
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	slab_pad_check.part.58, .-slab_pad_check.part.58
	.section	.rodata.str1.1
.LC42:
	.string	"Not a valid slab page"
.LC43:
	.string	"objects %u > max %u"
.LC44:
	.string	"inuse %u > max %u"
	.text
	.p2align 4,,15
	.type	check_slab, @function
check_slab:
	movq	(%rsi), %rax	# MEM[(const long unsigned int *)page_4(D)], D.44791
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	testb	$-128, %al	#, D.44791
	je	.L674	#,
	movq	(%rsi), %rcx	# MEM[(const long unsigned int *)page_4(D)], D.44791
	movl	$4096, %eax	#, D.44791
	movslq	88(%rdi), %rdx	# s_6(D)->reserved,
	movslq	24(%rdi), %r8	# s_6(D)->size, D.44791
	andb	$64, %ch	#, D.44791
	jne	.L675	#,
.L666:
	subq	%rdx, %rax	# D.44791, D.44791
	xorl	%edx, %edx	# tmp100
	divq	%r8	# D.44791
	movzwl	26(%rsi), %r8d	# *page_4(D), *page_4(D)
	andl	$32767, %r8d	#, D.44790
	cmpl	%eax, %r8d	# D.44791, D.44790
	jg	.L676	#,
	movzwl	24(%rsi), %eax	# page_4(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44790
	cmpl	%eax, %r8d	# D.44790, D.44790
	jl	.L677	#,
	testb	$8, 9(%rdi)	#, s_6(D)->flags
	movl	$1, %ebx	#, D.44790
	je	.L665	#,
	call	slab_pad_check.part.58	#
.L665:
	movl	%ebx, %eax	# D.44790,
	popq	%rbx	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L675:
	movq	104(%rsi), %rcx	# MEM[(struct page *)page_4(D) + 64B].D.11444.lru.prev, MEM[(struct page *)page_4(D) + 64B].D.11444.lru.prev
	salq	%cl, %rax	# MEM[(struct page *)page_4(D) + 64B].D.11444.lru.prev, D.44791
	jmp	.L666	#
	.p2align 4,,10
	.p2align 3
.L674:
	xorl	%eax, %eax	#
	xorl	%ebx, %ebx	# D.44790
	movq	$.LC42, %rdx	#,
	call	slab_err	#
	movl	%ebx, %eax	# D.44790,
	popq	%rbx	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L677:
	movq	96(%rdi), %rcx	# s_6(D)->name, s_6(D)->name
	movl	%r8d, %r9d	# D.44790,
	xorl	%ebx, %ebx	# D.44790
	movl	%eax, %r8d	# D.44790,
	movq	$.LC44, %rdx	#,
	xorl	%eax, %eax	#
	call	slab_err	#
	movl	%ebx, %eax	# D.44790,
	popq	%rbx	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L676:
	movq	96(%rdi), %rcx	# s_6(D)->name, s_6(D)->name
	movl	%eax, %r9d	# D.44791,
	xorl	%ebx, %ebx	# D.44790
	xorl	%eax, %eax	#
	movq	$.LC43, %rdx	#,
	call	slab_err	#
	movl	%ebx, %eax	# D.44790,
	popq	%rbx	#
	popq	%rbp	#
	ret
	.size	check_slab, .-check_slab
	.p2align 4,,15
	.type	validate_slab_slab, @function
validate_slab_slab:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movq	%rdx, %r15	# map, map
	pushq	%r14	#
	movq	%rsi, %r14	# page, page
	pushq	%r13	#
	movq	%rdi, %r13	# s, s
	pushq	%r12	#
	pushq	%rbx	#
.L679:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r14); jc .L681	#, MEM[(volatile long unsigned int *)_8],
# 0 "" 2
#NO_APP
	movq	(%r14), %rax	# MEM[(const struct page *)page_2(D)], D.44819
	shrq	$45, %rax	#, D.44819
	movq	%rax, %rdx	# D.44819, D.44819
	shrq	$7, %rdx	#, D.44819
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44821
	testq	%rdx, %rdx	# D.44821
	je	.L682	#,
	andl	$127, %eax	#, D.44819
	salq	$5, %rax	#, D.44819
	addq	%rax, %rdx	# D.44819, D.44821
.L682:
	movq	%r14, %rsi	# page,
	movq	%r13, %rdi	# s,
	movq	(%rdx), %rbx	# MEM[(struct mem_section *)_36], map
	call	check_slab	#
	testl	%eax, %eax	# D.44820
	jne	.L683	#,
.L684:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r14)	#, MEM[(volatile long int *)_8]
# 0 "" 2
#NO_APP
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L681:
.L694:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r14), %rax	# MEM[(const long unsigned int *)page_2(D)], D.44819
	testb	$1, %al	#, D.44819
	jne	.L694	#,
	jmp	.L679	#
	.p2align 4,,10
	.p2align 3
.L683:
	xorl	%edx, %edx	#
	movq	%r14, %rsi	# page,
	movq	%r13, %rdi	# s,
	call	on_freelist	#
	testl	%eax, %eax	# D.44820
	je	.L684	#,
	movzwl	26(%r14), %edx	# *page_2(D), *page_2(D)
	andq	$-4, %rbx	#, map
	movq	%r14, %rax	# page, D.44823
	subq	%rbx, %rax	# map, D.44823
	xorl	%esi, %esi	#
	movq	%r15, %rdi	# map,
	movabsq	$-131941395333120, %r12	#, tmp144
	sarq	$6, %rax	#, D.44823
	salq	$12, %rax	#, D.44823
	andl	$32767, %edx	#, D.44819
	addq	%rax, %r12	# D.44823, D.44819
	addq	$63, %rdx	#, D.44819
	shrq	$6, %rdx	#, D.44819
	salq	$3, %rdx	#, D.44819
	call	memset	#
	movq	%r14, %rsi	# page,
	movq	%r15, %rdx	# map,
	movq	%r13, %rdi	# s,
	call	get_map	#
	movzwl	26(%r14), %esi	# *page_2(D), *page_2(D)
	movl	24(%r13), %r8d	# s_4(D)->size, D.44820
	movl	%esi, %eax	# *page_2(D), D.44820
	andl	$32767, %eax	#, D.44820
	imull	%r8d, %eax	# D.44820, D.44820
	cltq
	addq	%r12, %rax	# D.44819, D.44827
	cmpq	%rax, %r12	# D.44827, D.44819
	jae	.L684	#,
	movq	%r12, %rbx	# D.44819, p
	movslq	%r8d, %rcx	# D.44820, D.44822
	jmp	.L689	#
	.p2align 4,,10
	.p2align 3
.L688:
	movl	%esi, %eax	# *page_2(D), D.44820
	movslq	%r8d, %rcx	# D.44820, D.44822
	andl	$32767, %eax	#, D.44820
	addq	%rcx, %rbx	# D.44822, p
	imull	%r8d, %eax	# D.44820, D.44820
	cltq
	addq	%r12, %rax	# D.44819, D.44827
	cmpq	%rax, %rbx	# D.44827, p
	jae	.L710	#,
.L689:
	movq	%rbx, %rax	# p, D.44822
	subq	%r12, %rax	# D.44819, D.44822
	cqto
	idivq	%rcx	# D.44822
	cltq
#APP
# 318 "./arch/x86/include/asm/bitops.h" 1
	bt %rax,(%r15)	# D.44822, *map_5(D)
	sbb %eax,%eax	# oldbit
# 0 "" 2
#NO_APP
	testl	%eax, %eax	# oldbit
	je	.L688	#,
	movl	$187, %ecx	#,
	movq	%rbx, %rdx	# p,
	movq	%r14, %rsi	# page,
	movq	%r13, %rdi	# s,
	call	check_object	#
	testl	%eax, %eax	# D.44820
	je	.L684	#,
	movzwl	26(%r14), %esi	# *page_2(D), *page_2(D)
	movl	24(%r13), %r8d	# s_4(D)->size, D.44820
	jmp	.L688	#
	.p2align 4,,10
	.p2align 3
.L710:
	cmpq	%rax, %r12	# D.44827, D.44819
	jae	.L684	#,
	movq	%r12, %rbx	# D.44819, p
	jmp	.L693	#
	.p2align 4,,10
	.p2align 3
.L692:
	movl	%esi, %eax	# *page_2(D), D.44820
	movslq	%r8d, %rcx	# D.44820, D.44822
	andl	$32767, %eax	#, D.44820
	addq	%rcx, %rbx	# D.44822, p
	imull	%r8d, %eax	# D.44820, D.44820
	cltq
	addq	%r12, %rax	# D.44819, D.44827
	cmpq	%rax, %rbx	# D.44827, p
	jae	.L684	#,
.L693:
	movq	%rbx, %rax	# p, D.44822
	subq	%r12, %rax	# D.44819, D.44822
	cqto
	idivq	%rcx	# D.44822
	cltq
#APP
# 318 "./arch/x86/include/asm/bitops.h" 1
	bt %rax,(%r15)	# D.44822, *map_5(D)
	sbb %eax,%eax	# oldbit
# 0 "" 2
#NO_APP
	testl	%eax, %eax	# oldbit
	jne	.L692	#,
	movl	$204, %ecx	#,
	movq	%rbx, %rdx	# p,
	movq	%r14, %rsi	# page,
	movq	%r13, %rdi	# s,
	call	check_object	#
	testl	%eax, %eax	# D.44820
	je	.L684	#,
	movzwl	26(%r14), %esi	# *page_2(D), *page_2(D)
	movl	24(%r13), %r8d	# s_4(D)->size, D.44820
	jmp	.L692	#
	.size	validate_slab_slab, .-validate_slab_slab
	.section	.rodata.str1.1
.LC45:
	.string	"Object already free"
	.section	.rodata.str1.8
	.align 8
.LC46:
	.string	"Attempt to free object(0x%p) outside of slab"
	.align 8
.LC47:
	.string	"\0013SLUB <none>: no slab for object 0x%p.\n"
	.section	.rodata.str1.1
.LC48:
	.string	"page slab pointer corrupt."
.LC49:
	.string	"free"
	.section	.rodata.str1.8
	.align 8
.LC50:
	.string	"\0016TRACE %s %s 0x%p inuse=%d fp=0x%p\n"
	.section	.rodata.str1.1
.LC51:
	.string	"Object at 0x%p not freed"
.LC52:
	.string	"Invalid object pointer 0x%p"
	.section	.text.unlikely
	.type	free_debug_processing, @function
free_debug_processing:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movq	%rsi, %r15	# page, page
	pushq	%r14	#
	movq	%r8, %r14	# flags, flags
	pushq	%r13	#
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	%rdx, %rbx	# object, object
	subq	$32, %rsp	#,
	movq	%rcx, -48(%rbp)	# addr, %sfp
	movq	(%rsi), %rax	# MEM[(const struct page *)page_7(D)], D.44843
	shrq	$39, %rax	#, D.44843
	andl	$63, %eax	#, D.44843
	movq	192(%rdi,%rax,8), %r13	# s_9(D)->node, D.44840
	movq	%r13, %rdi	# D.44840,
	call	_raw_spin_lock_irqsave	#
	movq	%rax, (%r14)	# D.44841, *flags_14(D)
.L712:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r15); jc .L714	#, MEM[(volatile long unsigned int *)_49],
# 0 "" 2
#NO_APP
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	check_slab	#
	testl	%eax, %eax	# D.44843
	je	.L715	#,
	testq	%rbx, %rbx	# object
	je	.L716	#,
	movq	(%r15), %rax	# MEM[(const struct page *)page_7(D)], D.44841
	shrq	$45, %rax	#, D.44841
	movq	%rax, %rdx	# D.44841, D.44841
	shrq	$7, %rdx	#, D.44841
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44846
	testq	%rdx, %rdx	# D.44846
	je	.L717	#,
	andl	$127, %eax	#, D.44841
	salq	$5, %rax	#, D.44841
	addq	%rax, %rdx	# D.44841, D.44846
.L717:
	movq	(%rdx), %rax	# MEM[(struct mem_section *)_67], map
	movq	%r15, %rcx	# page, D.44848
	movabsq	$-131941395333120, %rdx	#, tmp143
	andq	$-4, %rax	#, map
	subq	%rax, %rcx	# map, D.44848
	movq	%rcx, %rax	# D.44848, D.44848
	sarq	$6, %rax	#, D.44848
	salq	$12, %rax	#, D.44848
	addq	%rdx, %rax	# tmp143, D.44841
	cmpq	%rax, %rbx	# D.44841, object
	jb	.L718	#,
	movw	26(%r15), %dx	# *page_7(D), *page_7(D)
	movslq	24(%r12), %rcx	# MEM[(int *)s_9(D) + 24B],
	andl	$32767, %edx	#, D.44843
	imull	%ecx, %edx	# D.44843, D.44843
	movslq	%edx, %rdx	# D.44843, D.44851
	addq	%rax, %rdx	# D.44841, D.44852
	cmpq	%rdx, %rbx	# D.44852, object
	jae	.L718	#,
	movq	%rbx, %rsi	# object, D.44847
	subq	%rax, %rsi	# D.44841, D.44847
	movq	%rsi, %rax	# D.44847, D.44847
	cqto
	idivq	%rcx	# D.44847
	testq	%rdx, %rdx	# D.44847
	jne	.L718	#,
	jmp	.L716	#
.L748:
	movl	$204, %ecx	#,
	movq	%rbx, %rdx	# object,
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	check_object	#
	testl	%eax, %eax	# D.44843
	je	.L719	#,
	movq	48(%r15), %r11	# page_7(D)->D.11450.slab_cache, D.44844
	cmpq	%r12, %r11	# s, D.44844
	je	.L720	#,
	movq	(%r15), %rax	# MEM[(const long unsigned int *)page_7(D)], D.44841
	testb	$-128, %al	#, D.44841
	jne	.L721	#,
	movq	%rbx, %rcx	# object,
	movq	$.LC46, %rdx	#,
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	call	slab_err	#
.L715:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r15)	#, MEM[(volatile long int *)_49]
# 0 "" 2
#NO_APP
	movq	(%r14), %rsi	# *flags_14(D),
	movq	%r13, %rdi	# D.44840,
	xorl	%r13d, %r13d	# D.44840
	call	_raw_spin_unlock_irqrestore	#
	movq	%rbx, %rdx	# object,
	movq	$.LC51, %rsi	#,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	call	slab_fix	#
	jmp	.L747	#
.L714:
.L726:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r15), %rax	# MEM[(const long unsigned int *)page_7(D)], D.44841
	testb	$1, %al	#, D.44841
	jne	.L726	#,
	jmp	.L712	#
.L718:
	movq	%rbx, %rcx	# object,
	movq	$.LC52, %rdx	#,
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	call	slab_err	#
	jmp	.L715	#
.L716:
	movq	%rbx, %rdx	# object,
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	on_freelist	#
	testl	%eax, %eax	# D.44843
	je	.L748	#,
	movq	$.LC45, %rdx	#,
	jmp	.L750	#
.L721:
	testq	%r11, %r11	# D.44844
	movq	$.LC48, %rdx	#,
	jne	.L750	#,
	movq	%rbx, %rsi	# object,
	movq	$.LC47, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	call	dump_stack	#
	jmp	.L715	#
.L750:
	movq	%r12, %rdi	# s,
	movq	$.LC34, %rsi	#,
	xorl	%eax, %eax	#
	call	slab_bug	#
	movq	%rbx, %rdx	# object,
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	print_trailer	#
	jmp	.L715	#
.L720:
	testb	$1, 10(%r12)	#, _26->flags
	je	.L723	#,
	movq	-48(%rbp), %rcx	# %sfp,
	movl	$1, %edx	#,
	movq	%rbx, %rsi	# object,
	movq	%r12, %rdi	# s,
	movq	%r11, -56(%rbp)	# D.44844, %sfp
	call	set_track	#
	movq	-56(%rbp), %r11	# %sfp, D.44844
.L723:
	testb	$32, 10(%r11)	#, _26->flags
	je	.L724	#,
	movq	96(%r11), %rsi	# _26->name, _26->name
	movq	%rbx, %rcx	# object,
	movq	$.LC49, %rdx	#,
	movq	16(%r15), %r9	# page_7(D)->D.11432.D.11414.freelist,
	movq	$.LC50, %rdi	#,
	xorl	%eax, %eax	#
	movzwl	24(%r15), %r8d	# page_7(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse,
	movq	%r11, -48(%rbp)	# D.44844, %sfp
	call	printk	#
	movq	-48(%rbp), %r11	# %sfp, D.44844
	movq	%rbx, %r9	# object,
	movl	$1, %r8d	#,
	movl	$16, %ecx	#,
	movl	$1, %edx	#,
	movl	$1, 8(%rsp)	#,
	movq	$.LC23, %rsi	#,
	movq	$.LC22, %rdi	#,
	movl	28(%r11), %eax	# _26->object_size, tmp172
	movq	%rax, (%rsp)	# tmp172,
	call	print_hex_dump	#
	call	dump_stack	#
	movq	-48(%rbp), %r11	# %sfp, D.44844
.L724:
	movl	$187, %edx	#,
	movq	%rbx, %rsi	# object,
	movq	%r11, %rdi	# D.44844,
	call	init_object	#
.L719:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r15)	#, MEM[(volatile long int *)_49]
# 0 "" 2
#NO_APP
.L747:
	addq	$32, %rsp	#,
	movq	%r13, %rax	# D.44840,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	free_debug_processing, .-free_debug_processing
	.text
	.p2align 4,,15
	.type	__free_slab, @function
__free_slab:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movq	%rdi, %r15	# s, s
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	movq	%rsi, %rbx	# page, page
	subq	$16, %rsp	#,
	movq	(%rsi), %rax	# MEM[(const long unsigned int *)page_7(D)], D.44866
	testb	$64, %ah	#, D.44866
	je	.L761	#,
	movq	104(%rsi), %rcx	# MEM[(struct page *)page_7(D) + 64B].D.11444.lru.prev, D.44874
	movl	$1, %r13d	#, D.44868
	sall	%cl, %r13d	# D.44874, D.44868
	movl	%ecx, %r12d	# D.44874, D.44878
	movl	%r13d, %r14d	# D.44868, D.44868
	negl	%r14d	# D.44868
.L752:
	movq	8(%r15), %rax	# MEM[(struct kmem_cache *)s_10(D) + 8B], D.44866
	testl	$2166016, %eax	#, D.44866
	jne	.L774	#,
	movq	(%rbx), %rdi	# MEM[(const struct page *)page_7(D)], D.44866
.L753:
	andl	$131072, %eax	#, D.44866
	movq	%rdi, %rcx	# D.44866, D.44868
	movq	(%rbx), %rdx	# MEM[(const long unsigned int *)page_7(D)], D.44866
	cmpq	$1, %rax	#, D.44866
	sbbl	%esi, %esi	# iftmp.52
	shrq	$37, %rdi	#, D.44879
	andl	$3, %edi	#, D.44879
	shrq	$39, %rcx	#, D.44868
	notl	%esi	# iftmp.52
	movq	%rdi, %rdx	# D.44879, tmp192
	salq	$11, %rdi	#, D.44871
	andl	$63, %ecx	#, D.44868
	salq	$8, %rdx	#, tmp192
	addl	$14, %esi	#, iftmp.52
	subq	%rdx, %rdi	# tmp192, D.44871
	movl	%r14d, %edx	# D.44868,
	addq	node_data(,%rcx,8), %rdi	# node_data, D.44871
	call	mod_zone_page_state	#
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $6,(%rbx)	#, MEM[(volatile long int *)_103]
# 0 "" 2
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $7,(%rbx)	#, MEM[(volatile long int *)_103]
# 0 "" 2
#NO_APP
	movl	$-1, 24(%rbx)	#, MEM[(struct atomic_t *)page_7(D) + 24B].counter
#APP
# 14 "./arch/x86/include/asm/current.h" 1
	movq %gs:current_task,%rax	#, pfo_ret__
# 0 "" 2
#NO_APP
	cmpq	$0, 1640(%rax)	#, pfo_ret___104->reclaim_state
	je	.L760	#,
	movq	1640(%rax), %rax	# pfo_ret___105->reclaim_state, D.44872
	movslq	%r13d, %r13	# D.44868, D.44866
	addq	%r13, (%rax)	# D.44866, _33->reclaimed_slab
.L760:
	movl	%r12d, %esi	# D.44878,
	movq	%rbx, %rdi	# page,
	call	__free_pages	#
	addq	$16, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L761:
	xorl	%r12d, %r12d	# D.44878
	movl	$-1, %r14d	#, D.44868
	movl	$1, %r13d	#, D.44868
	jmp	.L752	#
.L774:
	testb	$8, %ah	#, D.44866
	jne	.L776	#,
.L754:
	movq	(%rbx), %rdi	# MEM[(const struct page *)page_7(D)], D.44866
	movq	%rdi, %rax	# D.44866, D.44866
	shrq	$45, %rax	#, D.44866
	movq	%rax, %rdx	# D.44866, D.44866
	shrq	$7, %rdx	#, D.44866
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44875
	testq	%rdx, %rdx	# D.44875
	je	.L755	#,
	andl	$127, %eax	#, D.44866
	salq	$5, %rax	#, D.44866
	addq	%rax, %rdx	# D.44866, D.44875
.L755:
	movq	(%rdx), %rax	# MEM[(struct mem_section *)_64], map
	movq	%rbx, %r9	# page, D.44876
	movl	24(%r15), %ecx	# s_10(D)->size, D.44868
	andq	$-4, %rax	#, map
	subq	%rax, %r9	# map, D.44876
	movabsq	$-131941395333120, %rax	#, tmp156
	sarq	$6, %r9	#, D.44876
	movq	%rax, -56(%rbp)	# tmp156, %sfp
	salq	$12, %r9	#, D.44876
	addq	%rax, %r9	# tmp156, p
	jmp	.L756	#
.L758:
	movl	$187, %ecx	#,
	movq	%r9, %rdx	# p,
	movq	%r15, %rdi	# s,
	movq	%rbx, %rsi	# page,
	movq	%r9, -48(%rbp)	# p, %sfp
	call	check_object	#
	movl	24(%r15), %ecx	# s_10(D)->size, D.44868
	movq	-48(%rbp), %r9	# %sfp, p
	movq	(%rbx), %rdi	# MEM[(const struct page *)page_7(D)], D.44866
	movslq	%ecx, %rax	# D.44868, D.44869
	addq	%rax, %r9	# D.44869, p
.L756:
	movq	%rdi, %rdx	# D.44866, D.44866
	shrq	$45, %rdx	#, D.44866
	movq	%rdx, %rax	# D.44866, D.44866
	shrq	$7, %rax	#, D.44866
	movq	mem_section(,%rax,8), %rax	# mem_section, D.44875
	testq	%rax, %rax	# D.44875
	je	.L757	#,
	andl	$127, %edx	#, D.44866
	salq	$5, %rdx	#, D.44866
	addq	%rdx, %rax	# D.44866, D.44875
.L757:
	movq	(%rax), %rax	# MEM[(struct mem_section *)_84], map
	movq	%rbx, %rsi	# page, D.44876
	movzwl	26(%rbx), %edx	# *page_7(D), *page_7(D)
	andq	$-4, %rax	#, map
	subq	%rax, %rsi	# map, D.44876
	andl	$32767, %edx	#, D.44868
	movq	%rsi, %rax	# D.44876, D.44876
	imull	%ecx, %edx	# D.44868, D.44868
	sarq	$6, %rax	#, D.44876
	salq	$12, %rax	#, D.44876
	addq	-56(%rbp), %rax	# %sfp, D.44866
	movslq	%edx, %rdx	# D.44868, D.44869
	addq	%rdx, %rax	# D.44869, D.44870
	cmpq	%rax, %r9	# D.44870, p
	jb	.L758	#,
	movq	8(%r15), %rax	# s_10(D)->flags, D.44866
	jmp	.L753	#
.L776:
	movq	%rbx, %rsi	# page,
	movq	%r15, %rdi	# s,
	call	slab_pad_check.part.58	#
	jmp	.L754	#
	.size	__free_slab, .-__free_slab
	.p2align 4,,15
	.type	discard_slab, @function
discard_slab:
	pushq	%rbp	#
	movq	(%rsi), %rax	# MEM[(const struct page *)page_2(D)], D.44890
	movq	%rsp, %rbp	#,
	movzwl	26(%rsi), %edx	# *page_2(D), D.44888
	shrq	$39, %rax	#, D.44890
	andl	$63, %eax	#, D.44890
	andw	$32767, %dx	#, D.44888
	movq	192(%rdi,%rax,8), %rax	# s_5(D)->node, D.44891
#APP
# 99 "./arch/x86/include/asm/atomic64_64.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; decq 32(%rax)	# MEM[(struct atomic64_t *)_12].counter
# 0 "" 2
#NO_APP
	movzwl	%dx, %edx	# D.44888, D.44893
#APP
# 59 "./arch/x86/include/asm/atomic64_64.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; subq %rdx,40(%rax)	# D.44893, MEM[(struct atomic64_t *)_13].counter
# 0 "" 2
#NO_APP
	testb	$8, 10(%rdi)	#, s_5(D)->flags
	jne	.L781	#,
	call	__free_slab	#
	popq	%rbp	#
	ret
.L781:
	leaq	32(%rsi), %rdi	#, head
	movq	$rcu_free_slab, %rsi	#,
	call	call_rcu_sched	#
	popq	%rbp	#
	ret
	.size	discard_slab, .-discard_slab
	.p2align 4,,15
	.type	unfreeze_partials.isra.59, @function
unfreeze_partials.isra.59:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movq	%rsi, %r15	# ISRA.1378, ISRA.1378
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	andq	$-16, %rsp	#,
	addq	$-128, %rsp	#,
	movq	(%rsi), %r12	# *ISRA.1378_102(D), page
	testq	%r12, %r12	# page
	je	.L782	#,
	movq	%rdi, %r13	# s, s
	xorl	%r14d, %r14d	# page
	xorl	%esi, %esi	# n
	.p2align 4,,10
	.p2align 3
.L797:
	movq	32(%r12), %rax	# page_61->D.11444.D.11439.next, D.44897
	movq	%rax, (%r15)	# D.44897, *ISRA.1378_102(D)
	movq	(%r12), %rax	# MEM[(const struct page *)page_61], D.44899
	shrq	$39, %rax	#, D.44899
	andl	$63, %eax	#, D.44899
	movq	192(%r13,%rax,8), %rbx	# s_8(D)->node, n
	cmpq	%rsi, %rbx	# n, n
	je	.L793	#,
	testq	%rsi, %rsi	# n
	je	.L785	#,
#APP
# 160 "./arch/x86/include/asm/spinlock.h" 1
	addb $1, (%rsi)	#, _11->D.5358.tickets.head

# 0 "" 2
#NO_APP
.L785:
	movq	%rbx, %rdi	# n,
	call	_raw_spin_lock	#
	movq	%rbx, %rsi	# n, n
	jmp	.L793	#
	.p2align 4,,10
	.p2align 3
.L817:
	movq	%rax, %rbx	# D.44902, D.44902
#APP
# 384 "mm/slub.c" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; cmpxchg16b 16(%r12); sete %al	#, page_61->D.11432.D.11414.freelist, __ret
# 0 "" 2
#NO_APP
	testb	%al, %al	# __ret
	jne	.L787	#,
.L788:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
.L793:
	movq	24(%r12), %rdx	# page_61->D.11432.D.11431.counters, D.44898
	movq	16(%r12), %rax	# page_61->D.11432.D.11414.freelist, D.44902
	movl	%edx, %edi	# D.44898, tmp140
	movq	%rdx, 24(%rsp)	# D.44898, new.D.11432.D.11431.counters
	shrl	$24, %edi	#, tmp140
	movl	%edi, %ecx	# tmp140, tmp104
	andl	$127, %ecx	#, tmp105
	movb	%cl, 27(%rsp)	# tmp105,
	testb	$64, 11(%r13)	#, MEM[(struct kmem_cache *)s_8(D) + 8B]
	movq	24(%rsp), %rcx	# new.D.11432.D.11431.counters, D.44898
	jne	.L817	#,
.L816:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r12); jc .L791	#, MEM[(volatile long unsigned int *)_20],
# 0 "" 2
#NO_APP
	cmpq	16(%r12), %rax	# page_61->D.11432.D.11414.freelist, D.44902
	je	.L818	#,
.L792:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_20]
# 0 "" 2
#NO_APP
	jmp	.L788	#
	.p2align 4,,10
	.p2align 3
.L791:
.L801:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r12), %rdi	# MEM[(const long unsigned int *)page_61], D.44898
	andl	$1, %edi	#, D.44898
	jne	.L801	#,
	jmp	.L816	#
	.p2align 4,,10
	.p2align 3
.L818:
	cmpq	24(%r12), %rdx	# page_61->D.11432.D.11431.counters, D.44898
	jne	.L792	#,
	movq	%rcx, 88(%rsp)	# D.44898, tmp.D.11432.D.11431.counters
	shrl	$24, %ecx	#, tmp
	movzbl	27(%r12), %eax	#, tmp121
	andl	$-128, %ecx	#, tmp118
	andl	$127, %eax	#, tmp121
	orl	%ecx, %eax	# tmp118, tmp121
	movb	%al, 27(%r12)	# tmp121,
	movzwl	88(%rsp), %eax	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movzwl	90(%rsp), %edx	# tmp, D.44906
	movw	%ax, 24(%r12)	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, page_61->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movzwl	26(%r12), %eax	#, tmp133
	andw	$32767, %dx	#, D.44906
	andw	$-32768, %ax	#, tmp133
	orl	%edx, %eax	# D.44906, tmp133
	movw	%ax, 26(%r12)	# tmp133,
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_40]
# 0 "" 2
	.p2align 4,,10
	.p2align 3
#NO_APP
.L787:
	cmpw	$0, 24(%rsp)	#, new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movq	8(%rsi), %rax	# n_52->nr_partial, D.44898
	je	.L802	#,
.L794:
	leaq	32(%r12), %rdx	#, D.44907
	addq	$1, %rax	#, tmp134
	movq	%rax, 8(%rsi)	# tmp134, n_52->nr_partial
	movq	24(%rsi), %rax	# MEM[(struct list_head *)n_52 + 16B].prev, D.44907
	leaq	16(%rsi), %rcx	#, tmp135
	movq	%rdx, 24(%rsi)	# D.44907, MEM[(struct list_head *)n_52 + 16B].prev
	movq	%rcx, 32(%r12)	# tmp135, MEM[(struct list_head *)page_61 + 32B].next
	movq	%rax, 40(%r12)	# D.44907, MEM[(struct list_head *)page_61 + 32B].prev
	movq	%rdx, (%rax)	# D.44907, _48->next
.L795:
	movq	(%r15), %r12	# *ISRA.1378_102(D), page
	testq	%r12, %r12	# page
	jne	.L797	#,
	testq	%rsi, %rsi	# n
	je	.L798	#,
#APP
# 160 "./arch/x86/include/asm/spinlock.h" 1
	addb $1, (%rsi)	#, _49->D.5358.tickets.head

# 0 "" 2
#NO_APP
.L798:
	testq	%r14, %r14	# page
	jne	.L810	#,
	.p2align 4,,4
	jmp	.L782	#
	.p2align 4,,10
	.p2align 3
.L819:
	movq	%rbx, %r14	# page, page
.L810:
	movq	32(%r14), %rbx	# page_34->D.11444.D.11439.next, page
	movq	%r14, %rsi	# page,
	movq	%r13, %rdi	# s,
	call	discard_slab	#
	testq	%rbx, %rbx	# page
	jne	.L819	#,
.L782:
	leaq	-40(%rbp), %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L802:
	cmpq	16(%r13), %rax	# s_8(D)->min_partial, D.44898
	jb	.L794	#,
	movq	%r14, 32(%r12)	# page, page_61->D.11444.D.11439.next
	movq	%r12, %r14	# page, page
	jmp	.L795	#
	.size	unfreeze_partials.isra.59, .-unfreeze_partials.isra.59
	.section	.text.unlikely
	.type	get_partial_node.isra.60, @function
get_partial_node.isra.60:
	pushq	%rbp	#
	movq	%rsi, %r11	# n, n
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	andq	$-16, %rsp	#,
	subq	$168, %rsp	#,
	testq	%r11, %r11	# n
	movq	%rdx, 32(%rsp)	# ISRA.1381, %sfp
	movl	%ecx, 20(%rsp)	# flags, %sfp
	je	.L845	#,
	cmpq	$0, 8(%r11)	#, n_1(D)->nr_partial
	je	.L845	#,
	movq	%rdi, %r13	# s, s
	movq	%r11, %rdi	# n,
	movq	%r11, 24(%rsp)	# n, %sfp
	call	_raw_spin_lock	#
	movq	24(%rsp), %r11	# %sfp, n
	xorl	%r9d, %r9d	# available
	movq	32(%rsp), %rsi	# %sfp, ISRA.1381
	xorl	%r15d, %r15d	# object
	movq	16(%r11), %rax	# n_1(D)->partial.next, __mptr
	leaq	16(%r11), %r10	#, D.44931
	movq	(%rax), %r14	# MEM[(struct page *)__mptr_4 + -32B].D.11444.lru.next, MEM[(struct page *)__mptr_4 + -32B].D.11444.lru.next
	leaq	-32(%rax), %r12	#, page
	subq	$32, %r14	#, page
.L822:
	leaq	32(%r12), %rax	#, D.44931
	cmpq	%r10, %rax	# D.44931, D.44931
	je	.L836	#,
	movq	(%r12), %rax	# MEM[(const long unsigned int *)page_8], D.44922
	testb	$64, %al	#, D.44922
	jne	.L823	#,
.L826:
	movq	24(%r12), %rdx	# page_8->D.11432.D.11431.counters, counters
	movq	16(%r12), %r8	# page_8->D.11432.D.11414.freelist, object
	movq	%rdx, 64(%rsp)	# counters, new.D.11432.D.11431.counters
	movw	66(%rsp), %di	# new, new
	movzwl	64(%rsp), %eax	# new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44926
	andl	$32767, %edi	#, objects
	subl	%eax, %edi	# D.44926, objects
	testq	%r15, %r15	# object
	je	.L824	#,
	movq	%r8, %rbx	# object, object
	jmp	.L825	#
.L823:
	movl	20(%rsp), %edi	# %sfp,
	movq	%r10, (%rsp)	# D.44931, %sfp
	movq	%rsi, 8(%rsp)	# ISRA.1381, %sfp
	movq	%r11, 24(%rsp)	# n, %sfp
	movl	%r9d, 32(%rsp)	# available, %sfp
	call	gfp_pfmemalloc_allowed	#
	movl	32(%rsp), %r9d	# %sfp, available
	testb	%al, %al	# D.44924
	movq	24(%rsp), %r11	# %sfp, n
	movq	8(%rsp), %rsi	# %sfp, ISRA.1381
	movq	(%rsp), %r10	# %sfp, D.44931
	je	.L827	#,
	jmp	.L826	#
.L824:
	movw	26(%r12), %ax	# *page_8, D.44925
	xorl	%ebx, %ebx	# object
	andw	$32767, %ax	#, D.44925
	movw	%ax, 64(%rsp)	# D.44925, new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
.L825:
	orb	$-128, 67(%rsp)	#,
	testb	$64, 11(%r13)	#, MEM[(struct kmem_cache *)s_29(D) + 8B]
	movq	64(%rsp), %rcx	# new.D.11432.D.11431.counters, D.44922
	je	.L855	#,
	movq	%r8, %rax	# object, object
#APP
# 384 "mm/slub.c" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; cmpxchg16b 16(%r12); sete %al	#, page_8->D.11432.D.11414.freelist, __ret
# 0 "" 2
#NO_APP
	testb	%al, %al	# __ret
	jne	.L829	#,
	jmp	.L830	#
.L833:
.L842:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r12), %rax	# MEM[(const long unsigned int *)page_8], D.44922
	testb	$1, %al	#, D.44922
	jne	.L842	#,
.L855:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r12); jc .L833	#, MEM[(volatile long unsigned int *)_35],
# 0 "" 2
#NO_APP
	cmpq	16(%r12), %r8	# page_8->D.11432.D.11414.freelist, object
	jne	.L834	#,
	cmpq	24(%r12), %rdx	# page_8->D.11432.D.11431.counters, counters
	jne	.L834	#,
	movq	%rcx, 128(%rsp)	# D.44922, tmp.D.11432.D.11431.counters
	movb	131(%rsp), %dl	# tmp, tmp159
	movq	%rbx, 16(%r12)	# object, page_8->D.11432.D.11414.freelist
	movb	27(%r12), %al	#, tmp162
	andl	$-128, %edx	#, tmp159
	andl	$127, %eax	#, tmp162
	orl	%edx, %eax	# tmp159, tmp162
	movb	%al, 27(%r12)	# tmp162,
	movl	128(%rsp), %eax	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movw	130(%rsp), %dx	# tmp, D.44925
	movw	%ax, 24(%r12)	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, page_8->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movw	26(%r12), %ax	#, tmp174
	andw	$32767, %dx	#, D.44925
	andw	$-32768, %ax	#, tmp174
	orl	%edx, %eax	# D.44925, tmp174
	movw	%ax, 26(%r12)	# tmp174,
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_35]
# 0 "" 2
#NO_APP
	jmp	.L829	#
.L834:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_35]
# 0 "" 2
#NO_APP
.L830:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	jmp	.L836	#
.L829:
	movq	40(%r12), %rax	# MEM[(struct list_head *)page_8 + 32B].prev, D.44931
	movq	32(%r12), %rdx	# MEM[(struct list_head *)page_8 + 32B].next, D.44931
	movq	%rax, 8(%rdx)	# D.44931, _48->prev
	movq	%rdx, (%rax)	# D.44931, _49->next
	movabsq	$-2401263026317557504, %rax	#, tmp248
	movq	%rax, 32(%r12)	# tmp248, MEM[(struct list_head *)page_8 + 32B].next
	movabsq	$-2401263026316508672, %rax	#, tmp249
	movq	%rax, 40(%r12)	# tmp249, MEM[(struct list_head *)page_8 + 32B].prev
	decq	8(%r11)	# MEM[(long unsigned int *)n_1(D) + 8B]
	testq	%r8, %r8	# object
	je	.L856	#,
	addl	%edi, %r9d	# objects, available
	testq	%r15, %r15	# object
	jne	.L848	#,
	movq	%r12, (%rsi)	# page, *ISRA.1381_126(D)
	movq	%r8, %r15	# object, object
.L838:
	testq	$2166016, 8(%r13)	#, MEM[(struct kmem_cache *)s_29(D) + 8B]
	jne	.L836	#,
	movl	36(%r13), %eax	# s_29(D)->cpu_partial, s_29(D)->cpu_partial
	movl	$2, %ecx	#, tmp194
	cltd
	idivl	%ecx	# tmp194
	cmpl	%eax, %r9d	# D.44926, available
	jg	.L836	#,
.L827:
	movq	32(%r14), %rax	# page_67->D.11444.lru.next, __mptr
	movq	%r14, %r12	# page, page
	leaq	-32(%rax), %r14	#, page
	jmp	.L822	#
.L856:
	movl	$1602, %esi	#,
	movq	$.LC2, %rdi	#,
	movq	%r11, 32(%rsp)	# n, %sfp
	call	warn_slowpath_null	#
	movq	32(%rsp), %r11	# %sfp, n
.L836:
#APP
# 160 "./arch/x86/include/asm/spinlock.h" 1
	addb $1, (%r11)	#, MEM[(struct arch_spinlock_t *)_3].D.5358.tickets.head

# 0 "" 2
#NO_APP
	movq	%r15, %rax	# object, D.44929
	jmp	.L849	#
.L845:
	xorl	%eax, %eax	# D.44929
	jmp	.L849	#
.L846:
	xorl	%edi, %edi	# pobjects
	xorl	%ecx, %ecx	# pages
.L839:
	movw	26(%r12), %ax	# *page_8, *page_8
	incl	%ecx	# tmp186
	movq	%rdx, 32(%r12)	# pco_old__, page_8->D.11444.D.11439.next
	movzwl	24(%r12), %r8d	# page_8->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.44926
	movl	%ecx, 40(%r12)	# tmp186, page_8->D.11444.D.11439.pages
	andl	$32767, %eax	#, D.44926
	subl	%r8d, %eax	# D.44926, D.44926
	addl	%edi, %eax	# pobjects, pobjects
	movl	%eax, 44(%r12)	# pobjects, page_8->D.11444.D.11439.pobjects
	movq	%rdx, %rax	# pco_old__, pscr2_ret__
	movq	0(%r13), %rcx	# s_29(D)->cpu_slab, D.44932
#APP
# 2065 "mm/slub.c" 1
	cmpxchgq %r12, %gs:24(%rcx)	# page, _148->partial
# 0 "" 2
#NO_APP
	cmpq	%rax, %rdx	# pscr2_ret__, pco_old__
	je	.L838	#,
.L848:
	movq	0(%r13), %rax	# s_29(D)->cpu_slab, s_29(D)->cpu_slab
#APP
# 2037 "mm/slub.c" 1
	movq %gs:24(%rax),%rdx	# _127->partial, pco_old__
# 0 "" 2
#NO_APP
	testq	%rdx, %rdx	# pco_old__
	je	.L846	#,
	movl	44(%rdx), %edi	# pco_old___128->D.11444.D.11439.pobjects, pobjects
	movl	40(%rdx), %ecx	# pco_old___128->D.11444.D.11439.pages, pages
	jmp	.L839	#
.L849:
	leaq	-40(%rbp), %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	get_partial_node.isra.60, .-get_partial_node.isra.60
	.text
	.p2align 4,,15
	.type	rcu_free_slab, @function
rcu_free_slab:
	pushq	%rbp	#
	leaq	-32(%rdi), %rsi	#, page
	movq	16(%rdi), %rdi	# MEM[(struct page *)h_1(D) + -32B].D.11450.slab_cache, MEM[(struct page *)h_1(D) + -32B].D.11450.slab_cache
	movq	%rsp, %rbp	#,
	call	__free_slab	#
	popq	%rbp	#
	ret
	.size	rcu_free_slab, .-rcu_free_slab
	.section	.rodata.str1.1
.LC53:
	.string	"alloc"
.LC54:
	.string	"Marking all objects used"
.LC55:
	.string	"Freelist Pointer check fails"
	.section	.text.unlikely
	.type	alloc_debug_processing, @function
alloc_debug_processing:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	movq	%rcx, %r14	# addr, addr
	pushq	%r13	#
	movq	%rdx, %r13	# object, object
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	%rsi, %rbx	# page, page
	call	check_slab	#
	testl	%eax, %eax	# D.44947
	je	.L867	#,
	testq	%r13, %r13	# object
	je	.L861	#,
	movq	(%rbx), %rax	# MEM[(const struct page *)page_7(D)], D.44948
	shrq	$45, %rax	#, D.44948
	movq	%rax, %rdx	# D.44948, D.44948
	shrq	$7, %rdx	#, D.44948
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.44951
	testq	%rdx, %rdx	# D.44951
	je	.L862	#,
	andl	$127, %eax	#, D.44948
	salq	$5, %rax	#, D.44948
	addq	%rax, %rdx	# D.44948, D.44951
.L862:
	movq	(%rdx), %rax	# MEM[(struct mem_section *)_37], map
	movq	%rbx, %rcx	# page, D.44953
	movabsq	$-131941395333120, %rdx	#, tmp123
	andq	$-4, %rax	#, map
	subq	%rax, %rcx	# map, D.44953
	movq	%rcx, %rax	# D.44953, D.44953
	sarq	$6, %rax	#, D.44953
	salq	$12, %rax	#, D.44953
	addq	%rdx, %rax	# tmp123, D.44948
	cmpq	%rax, %r13	# D.44948, object
	jb	.L863	#,
	movw	26(%rbx), %dx	# *page_7(D), *page_7(D)
	movslq	24(%r12), %rcx	# MEM[(int *)s_6(D) + 24B],
	andl	$32767, %edx	#, D.44947
	imull	%ecx, %edx	# D.44947, D.44947
	movslq	%edx, %rdx	# D.44947, D.44955
	addq	%rax, %rdx	# D.44948, D.44956
	cmpq	%rdx, %r13	# D.44956, object
	jae	.L863	#,
	movq	%r13, %rdi	# object, D.44952
	subq	%rax, %rdi	# D.44948, D.44952
	movq	%rdi, %rax	# D.44952, D.44952
	cqto
	idivq	%rcx	# D.44952
	testq	%rdx, %rdx	# D.44952
	je	.L861	#,
.L863:
	movq	$.LC55, %rdx	#,
	movq	$.LC34, %rsi	#,
	xorl	%eax, %eax	#
	movq	%r12, %rdi	# s,
	call	slab_bug	#
	movq	%r13, %rdx	# object,
	movq	%rbx, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	print_trailer	#
.L867:
	movq	(%rbx), %rax	# MEM[(const long unsigned int *)page_7(D)], D.44948
	xorl	%r13d, %r13d	# D.44947
	testb	$-128, %al	#, D.44948
	je	.L882	#,
	xorl	%eax, %eax	#
	movq	$.LC54, %rsi	#,
	movq	%r12, %rdi	# s,
	call	slab_fix	#
	movw	26(%rbx), %ax	# *page_7(D), D.44949
	movq	$0, 16(%rbx)	#, page_7(D)->D.11432.D.11414.freelist
	andw	$32767, %ax	#, D.44949
	movw	%ax, 24(%rbx)	# D.44949, page_7(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	jmp	.L882	#
.L861:
	movl	$187, %ecx	#,
	movq	%r13, %rdx	# object,
	movq	%rbx, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	check_object	#
	testl	%eax, %eax	# D.44947
	je	.L867	#,
	testb	$1, 10(%r12)	#, s_6(D)->flags
	je	.L864	#,
	movq	%r14, %rcx	# addr,
	xorl	%edx, %edx	#
	movq	%r13, %rsi	# object,
	movq	%r12, %rdi	# s,
	call	set_track	#
.L864:
	testb	$32, 10(%r12)	#, s_6(D)->flags
	je	.L865	#,
	movq	96(%r12), %rsi	# s_6(D)->name, s_6(D)->name
	movq	%r13, %rcx	# object,
	movq	$.LC53, %rdx	#,
	movq	16(%rbx), %r9	# page_7(D)->D.11432.D.11414.freelist,
	movq	$.LC50, %rdi	#,
	xorl	%eax, %eax	#
	movzwl	24(%rbx), %r8d	# page_7(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse,
	call	printk	#
	call	dump_stack	#
.L865:
	movq	%r13, %rsi	# object,
	movl	$204, %edx	#,
	movq	%r12, %rdi	# s,
	call	init_object	#
	movl	$1, %r13d	#, D.44947
.L882:
	popq	%rbx	#
	movl	%r13d, %eax	# D.44947,
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.size	alloc_debug_processing, .-alloc_debug_processing
	.text
	.p2align 4,,15
	.type	deactivate_slab, @function
deactivate_slab:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	movq	%rdi, %r13	# s, s
	pushq	%r12	#
	movq	%rsi, %r12	# page, page
	pushq	%rbx	#
	movq	%rdx, %rbx	# freelist, freelist
	andq	$-16, %rsp	#,
	subq	$176, %rsp	#,
	movq	(%rsi), %rax	# MEM[(const struct page *)page_17(D)], D.44970
	shrq	$39, %rax	#, D.44970
	andl	$63, %eax	#, D.44970
	movq	192(%rdi,%rax,8), %r15	# s_19(D)->node, D.44972
	movq	16(%rsi), %rax	# page_17(D)->D.11432.D.11414.freelist, D.44976
	cmpq	$1, %rax	#, D.44976
	sbbl	%edi, %edi	# tail
	xorl	%r14d, %r14d	# freelist
	movl	%edi, 44(%rsp)	# tail, %sfp
	addl	$16, 44(%rsp)	#, %sfp
	testq	%rdx, %rdx	# freelist
	je	.L895	#,
	movslq	32(%r13), %rcx	# MEM[(struct kmem_cache *)s_19(D) + 32B], D.44973
	movq	(%rdx,%rcx), %r14	# *_219, freelist
	testq	%r14, %r14	# freelist
	jne	.L903	#,
	jmp	.L965	#
	.p2align 4,,10
	.p2align 3
.L951:
#APP
# 384 "mm/slub.c" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; cmpxchg16b 16(%r12); sete %al	#, page_17(D)->D.11432.D.11414.freelist, __ret
# 0 "" 2
#NO_APP
	testb	%al, %al	# __ret
	jne	.L897	#,
.L898:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	16(%r12), %rax	# page_17(D)->D.11432.D.11414.freelist, D.44976
	movslq	32(%r13), %rcx	# MEM[(struct kmem_cache *)s_19(D) + 32B], D.44973
.L903:
	movq	24(%r12), %rdx	# page_17(D)->D.11432.D.11431.counters, counters
	movq	%rax, (%rbx,%rcx)	# D.44976, *_69
	movq	%rdx, 72(%rsp)	# counters, new.D.11432.D.11431.counters
	subw	$1, 72(%rsp)	#, new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	testb	$64, 11(%r13)	#, MEM[(struct kmem_cache *)s_19(D) + 8B]
	movq	72(%rsp), %rcx	# new.D.11432.D.11431.counters, D.44969
	jne	.L951	#,
.L946:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r12); jc .L901	#, MEM[(volatile long unsigned int *)_73],
# 0 "" 2
#NO_APP
	cmpq	%rax, 16(%r12)	# D.44976, page_17(D)->D.11432.D.11414.freelist
	je	.L952	#,
.L902:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_73]
# 0 "" 2
#NO_APP
	jmp	.L898	#
	.p2align 4,,10
	.p2align 3
.L901:
.L927:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r12), %rsi	# MEM[(const long unsigned int *)page_17(D)], D.44969
	andl	$1, %esi	#, D.44969
	jne	.L927	#,
	jmp	.L946	#
	.p2align 4,,10
	.p2align 3
.L952:
	cmpq	24(%r12), %rdx	# page_17(D)->D.11432.D.11431.counters, counters
	jne	.L902	#,
	movzbl	27(%r12), %eax	#, tmp167
	movq	%rcx, 136(%rsp)	# D.44969, tmp.D.11432.D.11431.counters
	shrl	$24, %ecx	#, tmp
	andl	$-128, %ecx	#, tmp164
	movzwl	138(%rsp), %edx	# tmp, D.44978
	movq	%rbx, 16(%r12)	# freelist, page_17(D)->D.11432.D.11414.freelist
	andl	$127, %eax	#, tmp167
	orl	%ecx, %eax	# tmp164, tmp167
	andw	$32767, %dx	#, D.44978
	movb	%al, 27(%r12)	# tmp167,
	movzwl	136(%rsp), %eax	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movw	%ax, 24(%r12)	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, page_17(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movzwl	26(%r12), %eax	#, tmp179
	andw	$-32768, %ax	#, tmp179
	orl	%edx, %eax	# D.44978, tmp179
	movw	%ax, 26(%r12)	# tmp179,
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_227]
# 0 "" 2
	.p2align 4,,10
	.p2align 3
#NO_APP
.L897:
	testq	%r14, %r14	# freelist
	je	.L953	#,
	movslq	32(%r13), %rcx	# MEM[(struct kmem_cache *)s_19(D) + 32B], D.44973
	movq	16(%r12), %rax	# page_17(D)->D.11432.D.11414.freelist, D.44976
	movq	(%r14,%rcx), %rdx	# *_87, freelist
	testq	%rdx, %rdx	# freelist
	je	.L895	#,
	movq	%r14, %rbx	# freelist, freelist
	movq	%rdx, %r14	# freelist, freelist
	jmp	.L903	#
.L965:
	movq	%rdx, %r14	# freelist, freelist
.L895:
	leaq	48(%r15), %rsi	#, tmp231
	movq	%r15, %r8	# D.44972, D.44972
	xorl	%ecx, %ecx	# l
	movq	%rsi, (%rsp)	# tmp231, %sfp
	leaq	16(%r15), %rsi	#, tmp232
	xorl	%edi, %edi	# lock
	leaq	32(%r12), %r9	#, D.44980
	movq	%r13, %r15	# s, s
	movq	%rsi, 8(%rsp)	# tmp232, %sfp
	movq	%r14, %r13	# freelist, freelist
	movq	%rax, %r14	# freelist, freelist
	jmp	.L925	#
	.p2align 4,,10
	.p2align 3
.L959:
	movq	%r14, %rax	# freelist, freelist
#APP
# 384 "mm/slub.c" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; cmpxchg16b 16(%r12); sete %al	#, page_17(D)->D.11432.D.11414.freelist, __ret
# 0 "" 2
#NO_APP
	testb	%al, %al	# __ret
	jne	.L954	#,
.L920:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	16(%r12), %r14	# page_17(D)->D.11432.D.11414.freelist, freelist
	movl	%esi, %ecx	# l, l
.L925:
	movq	24(%r12), %rdx	# page_17(D)->D.11432.D.11431.counters, D.44969
	testq	%r13, %r13	# freelist
	movq	%r14, %rbx	# freelist, freelist
	movq	%rdx, 72(%rsp)	# D.44969, new.D.11432.D.11431.counters
	movzwl	72(%rsp), %eax	# new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp281
	je	.L907	#,
	movslq	32(%r15), %rsi	# MEM[(struct kmem_cache *)s_19(D) + 32B], D.44973
	subl	$1, %eax	#, D.44971
	movq	%r13, %rbx	# freelist, freelist
	movw	%ax, 72(%rsp)	# D.44971, new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movq	%r14, 0(%r13,%rsi)	# freelist, *_90
.L907:
	andb	$127, 75(%rsp)	#,
	testw	%ax, %ax	# D.44971
	jne	.L908	#,
	movq	16(%r15), %rax	# s_19(D)->min_partial, tmp282
	movl	$3, %esi	#, l
	cmpq	%rax, 8(%r8)	# tmp282, _67->nr_partial
	jae	.L909	#,
.L908:
	testq	%rbx, %rbx	# freelist
	je	.L910	#,
	testl	%edi, %edi	# lock
	je	.L955	#,
	movl	$1, %esi	#, l
	movl	$1, %edi	#, lock
.L909:
	cmpl	%esi, %ecx	# l, l
	je	.L948	#,
	cmpl	$1, %ecx	#, l
	je	.L956	#,
	cmpl	$2, %ecx	#, l
	je	.L957	#,
.L914:
	cmpl	$1, %esi	#, l
	.p2align 4,,2
	je	.L958	#,
	cmpl	$2, %esi	#, l
	movq	8(%r15), %rax	# MEM[(struct kmem_cache *)s_19(D) + 8B], D.44969
	je	.L917	#,
.L912:
	testl	$1073741824, %eax	#, D.44969
	movq	72(%rsp), %rcx	# new.D.11432.D.11431.counters, D.44969
	jne	.L959	#,
.L949:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r12); jc .L923	#, MEM[(volatile long unsigned int *)_119],
# 0 "" 2
#NO_APP
	cmpq	%r14, 16(%r12)	# freelist, page_17(D)->D.11432.D.11414.freelist
	je	.L960	#,
.L924:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_119]
# 0 "" 2
#NO_APP
	jmp	.L920	#
	.p2align 4,,10
	.p2align 3
.L917:
	testl	$65536, %eax	#, D.44969
	je	.L912	#,
	movq	48(%r8), %rax	# MEM[(struct list_head *)_67 + 48B].next, D.44980
	movq	%r9, 8(%rax)	# D.44980, _114->prev
	movq	%rax, 32(%r12)	# D.44980, MEM[(struct list_head *)page_17(D) + 32B].next
	movq	(%rsp), %rax	# %sfp, tmp231
	movq	%rax, 40(%r12)	# tmp231, MEM[(struct list_head *)page_17(D) + 32B].prev
	movq	%r9, 48(%r8)	# D.44980, MEM[(struct list_head *)_67 + 48B].next
.L948:
	movq	8(%r15), %rax	# MEM[(struct kmem_cache *)s_19(D) + 8B], D.44969
	jmp	.L912	#
	.p2align 4,,10
	.p2align 3
.L923:
.L929:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r12), %rax	# MEM[(const long unsigned int *)page_17(D)], D.44969
	testb	$1, %al	#, D.44969
	jne	.L929	#,
	jmp	.L949	#
	.p2align 4,,10
	.p2align 3
.L958:
	addq	$1, 8(%r8)	#, _67->nr_partial
	cmpl	$16, 44(%rsp)	#, %sfp
	je	.L961	#,
	movq	16(%r8), %rax	# MEM[(struct list_head *)_67 + 16B].next, D.44980
	movq	%r9, 8(%rax)	# D.44980, _110->prev
	movq	%rax, 32(%r12)	# D.44980, MEM[(struct list_head *)page_17(D) + 32B].next
	movq	8(%rsp), %rax	# %sfp, tmp232
	movq	%rax, 40(%r12)	# tmp232, MEM[(struct list_head *)page_17(D) + 32B].prev
	movq	%r9, 16(%r8)	# D.44980, MEM[(struct list_head *)_67 + 16B].next
	movq	8(%r15), %rax	# MEM[(struct kmem_cache *)s_19(D) + 8B], D.44969
	jmp	.L912	#
	.p2align 4,,10
	.p2align 3
.L956:
	movq	40(%r12), %rax	# MEM[(struct list_head *)page_17(D) + 32B].prev, D.44980
	movq	32(%r12), %rcx	# MEM[(struct list_head *)page_17(D) + 32B].next, D.44980
	movq	%rax, 8(%rcx)	# D.44980, _98->prev
	movq	%rcx, (%rax)	# D.44980, _99->next
	movabsq	$-2401263026317557504, %rax	#, tmp283
	movq	%rax, 32(%r12)	# tmp283, MEM[(struct list_head *)page_17(D) + 32B].next
	movabsq	$-2401263026316508672, %rax	#, tmp284
	movq	%rax, 40(%r12)	# tmp284, MEM[(struct list_head *)page_17(D) + 32B].prev
	subq	$1, 8(%r8)	#, MEM[(long unsigned int *)_67 + 8B]
	jmp	.L914	#
	.p2align 4,,10
	.p2align 3
.L955:
	movq	%r8, %rdi	# D.44972,
	movq	%r9, 16(%rsp)	# D.44980, %sfp
	movl	%ecx, 40(%rsp)	# l, %sfp
	movq	%rdx, 24(%rsp)	# D.44969, %sfp
	movq	%r8, 32(%rsp)	# D.44972, %sfp
	call	_raw_spin_lock	#
	movl	$1, %esi	#, l
.L947:
	movl	$1, %edi	#, lock
	movq	32(%rsp), %r8	# %sfp, D.44972
	movq	24(%rsp), %rdx	# %sfp, D.44969
	movl	40(%rsp), %ecx	# %sfp, l
	movq	16(%rsp), %r9	# %sfp, D.44980
	jmp	.L909	#
	.p2align 4,,10
	.p2align 3
.L957:
	testb	$1, 10(%r15)	#, MEM[(struct kmem_cache *)s_19(D) + 8B]
	je	.L914	#,
	movq	40(%r12), %rax	# MEM[(struct list_head *)page_17(D) + 32B].prev, D.44980
	movq	32(%r12), %rcx	# MEM[(struct list_head *)page_17(D) + 32B].next, D.44980
	movq	%rax, 8(%rcx)	# D.44980, _206->prev
	movq	%rcx, (%rax)	# D.44980, _207->next
	movabsq	$-2401263026317557504, %rax	#, tmp285
	movq	%rax, 32(%r12)	# tmp285, MEM[(struct list_head *)page_17(D) + 32B].next
	movabsq	$-2401263026316508672, %rax	#, tmp286
	movq	%rax, 40(%r12)	# tmp286, MEM[(struct list_head *)page_17(D) + 32B].prev
	jmp	.L914	#
	.p2align 4,,10
	.p2align 3
.L910:
	testq	$2166016, 8(%r15)	#, MEM[(struct kmem_cache *)s_19(D) + 8B]
	jne	.L962	#,
	movl	$2, %esi	#, l
	jmp	.L909	#
.L960:
	cmpq	24(%r12), %rdx	# page_17(D)->D.11432.D.11431.counters, D.44969
	jne	.L924	#,
	movl	%ecx, %eax	# D.44969, tmp291
	movq	%rcx, 136(%rsp)	# D.44969, tmp.D.11432.D.11431.counters
	movq	%r15, %r13	# s, s
	shrl	$24, %eax	#, tmp291
	movq	%r8, %r15	# D.44972, D.44972
	movq	%rbx, 16(%r12)	# freelist, page_17(D)->D.11432.D.11414.freelist
	movl	%eax, %edx	# tmp291, tmp
	movzbl	27(%r12), %eax	#, tmp216
	andl	$-128, %edx	#, tmp213
	andl	$127, %eax	#, tmp216
	orl	%edx, %eax	# tmp213, tmp216
	movzwl	138(%rsp), %edx	# tmp, D.44978
	movb	%al, 27(%r12)	# tmp216,
	movzwl	136(%rsp), %eax	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	andw	$32767, %dx	#, D.44978
	movw	%ax, 24(%r12)	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, page_17(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movzwl	26(%r12), %eax	#, tmp228
	andw	$-32768, %ax	#, tmp228
	orl	%edx, %eax	# D.44978, tmp228
	movw	%ax, 26(%r12)	# tmp228,
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_228]
# 0 "" 2
#NO_APP
	jmp	.L919	#
.L961:
	movq	24(%r8), %rax	# MEM[(struct list_head *)_67 + 16B].prev, D.44980
	movq	%r9, 24(%r8)	# D.44980, MEM[(struct list_head *)_67 + 16B].prev
	movq	8(%rsp), %rcx	# %sfp, tmp232
	movq	%rax, 40(%r12)	# D.44980, MEM[(struct list_head *)page_17(D) + 32B].prev
	movq	%rcx, 32(%r12)	# tmp232, MEM[(struct list_head *)page_17(D) + 32B].next
	movq	%r9, (%rax)	# D.44980, _107->next
	movq	8(%r15), %rax	# MEM[(struct kmem_cache *)s_19(D) + 8B], D.44969
	jmp	.L912	#
.L954:
	movq	%r15, %r13	# s, s
	movq	%r8, %r15	# D.44972, D.44972
.L919:
	testl	%edi, %edi	# lock
	jne	.L930	#,
	cmpl	$3, %esi	#, l
	je	.L963	#,
.L892:
	leaq	-40(%rbp), %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L930:
#APP
# 160 "./arch/x86/include/asm/spinlock.h" 1
	addb $1, (%r15)	#, _132->D.5358.tickets.head

# 0 "" 2
#NO_APP
	cmpl	$3, %esi	#, l
	jne	.L892	#,
.L963:
	movq	%r12, %rsi	# page,
	movq	%r13, %rdi	# s,
	call	discard_slab	#
	leaq	-40(%rbp), %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L953:
	movq	16(%r12), %rax	# page_17(D)->D.11432.D.11414.freelist, D.44976
	jmp	.L895	#
.L962:
	testl	%edi, %edi	# lock
	je	.L964	#,
	movl	$2, %esi	#, l
	movl	$1, %edi	#, lock
	jmp	.L909	#
.L964:
	movq	%r8, %rdi	# D.44972,
	movq	%r9, 16(%rsp)	# D.44980, %sfp
	movl	%ecx, 40(%rsp)	# l, %sfp
	movq	%rdx, 24(%rsp)	# D.44969, %sfp
	movq	%r8, 32(%rsp)	# D.44972, %sfp
	call	_raw_spin_lock	#
	movl	$2, %esi	#, l
	jmp	.L947	#
	.size	deactivate_slab, .-deactivate_slab
	.p2align 4,,15
	.type	flush_cpu_slab, @function
flush_cpu_slab:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdi, %r12	# d, d
#APP
# 2101 "mm/slub.c" 1
	movl %gs:cpu_number,%eax	# cpu_number, pscr_ret__
# 0 "" 2
#NO_APP
	pushq	%rbx	#
	cltq
	movq	(%rdi), %rbx	# MEM[(struct kmem_cache *)d_1(D)].cpu_slab, __ptr
	addq	__per_cpu_offset(,%rax,8), %rbx	# __per_cpu_offset, D.44989
	je	.L966	#,
	movq	16(%rbx), %rsi	# _9->page, D.44991
	testq	%rsi, %rsi	# D.44991
	je	.L968	#,
	movq	(%rbx), %rdx	# _9->freelist,
	call	deactivate_slab	#
	movq	$0, 16(%rbx)	#, _9->page
	addq	$1, 8(%rbx)	#, _9->tid
	movq	$0, (%rbx)	#, _9->freelist
.L968:
	leaq	24(%rbx), %rsi	#, D.44993
	movq	%r12, %rdi	# d,
	call	unfreeze_partials.isra.59	#
.L966:
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	flush_cpu_slab, .-flush_cpu_slab
	.section	.text.unlikely
	.type	__slab_alloc, @function
__slab_alloc:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movq	%rdi, %r15	# s, s
	pushq	%r14	#
	movq	%r8, %r14	# c, c
	pushq	%r13	#
	movl	%edx, %r13d	# node, node
	pushq	%r12	#
	pushq	%rbx	#
	andq	$-16, %rsp	#,
	subq	$208, %rsp	#,
	movl	%esi, 68(%rsp)	# gfpflags, %sfp
	movq	%rcx, 56(%rsp)	# addr, %sfp
#APP
# 20 "./arch/x86/include/asm/irqflags.h" 1
	# __raw_save_flags
	pushf ; pop 72(%rsp)	# %sfp
# 0 "" 2
# 39 "./arch/x86/include/asm/irqflags.h" 1
	cli
# 0 "" 2
#NO_APP
	movq	16(%r8), %rsi	# c_205(D)->page, page
	testq	%rsi, %rsi	# page
	je	.L977	#,
.L978:
	cmpl	$-1, %r13d	#, node
	je	.L979	#,
	movq	(%rsi), %rax	# MEM[(const struct page *)page_2], D.45027
	shrq	$39, %rax	#, D.45027
	andl	$63, %eax	#, D.45031
	cmpl	%eax, %r13d	# D.45031, node
	jne	.L980	#,
.L979:
	movq	(%rsi), %rax	# MEM[(const long unsigned int *)page_2], D.45027
	testb	$64, %al	#, D.45027
	je	.L981	#,
	movl	68(%rsp), %edi	# %sfp,
	movq	%rsi, 48(%rsp)	# page, %sfp
	call	gfp_pfmemalloc_allowed	#
	movq	48(%rsp), %rsi	# %sfp, page
	testb	%al, %al	# D.45034
	je	.L980	#,
.L981:
	movq	(%r14), %r12	# c_193->freelist, freelist
	testq	%r12, %r12	# freelist
	jne	.L982	#,
	xorl	%ebx, %ebx	# tmp283
.L990:
	movq	24(%rsi), %rdx	# page_2->D.11432.D.11431.counters, counters
	movq	16(%rsi), %r12	# page_2->D.11432.D.11414.freelist, freelist
	movw	26(%rsi), %ax	# *page_2, D.45033
	movq	%rdx, 104(%rsp)	# counters, new.D.11432.D.11431.counters
	movb	107(%rsp), %cl	#, tmp194
	andw	$32767, %ax	#, D.45033
	testq	%r12, %r12	# freelist
	movw	%ax, 104(%rsp)	# D.45033, new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	setne	%al	#, tmp191
	sall	$7, %eax	#, tmp191
	andl	$127, %ecx	#, tmp194
	orl	%eax, %ecx	# tmp191, tmp194
	testb	$64, 11(%r15)	#, MEM[(struct kmem_cache *)s_22(D) + 8B]
	movb	%cl, 107(%rsp)	# tmp194,
	movq	104(%rsp), %rcx	# new.D.11432.D.11431.counters, D.45027
	je	.L1052	#,
	movq	%r12, %rax	# freelist, freelist
#APP
# 384 "mm/slub.c" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; cmpxchg16b 16(%rsi); sete %al	#, page_2->D.11432.D.11414.freelist, __ret
# 0 "" 2
#NO_APP
	testb	%al, %al	# __ret
	je	.L985	#,
.L984:
	testq	%r12, %r12	# freelist
	jne	.L982	#,
	movq	$0, 16(%r14)	#, c_193->page
.L977:
	movl	68(%rsp), %eax	# %sfp, gfpflags
	movl	$20054306, %ebx	#, high_zoneidx
	movl	%r13d, 48(%rsp)	# node, %sfp
	movl	%eax, %ecx	# gfpflags, bit
	shrl	$18, %eax	#, tmp292
	andl	$1, %eax	#, D.45028
	andl	$15, %ecx	#, bit
	imulq	$4672, %rax, %rax	#, D.45028, tmp295
	addl	%ecx, %ecx	# D.45031
	sarl	%cl, %ebx	# D.45031, high_zoneidx
	andl	$3, %ebx	#, high_zoneidx
	movq	%rax, 32(%rsp)	# tmp295, %sfp
.L1020:
	movq	24(%r14), %rsi	# c_202->partial, page
	testq	%rsi, %rsi	# page
	je	.L993	#,
	movq	%rsi, 16(%r14)	# page, c_130->page
	movl	48(%rsp), %r13d	# %sfp, node
	movq	32(%rsi), %rax	# page_267->D.11444.D.11439.next, D.45030
	movq	$0, (%r14)	#, c_130->freelist
	movq	%rax, 24(%r14)	# D.45030, c_130->partial
	jmp	.L978	#
.L993:
	movl	48(%rsp), %edi	# %sfp, node
	movl	%edi, %eax	# node, node
	incl	%edi	# node
	jne	.L994	#,
#APP
# 77 "include/linux/topology.h" 1
	movl %gs:numa_node,%eax	# numa_node, node
# 0 "" 2
#NO_APP
.L994:
	movl	68(%rsp), %ecx	# %sfp,
	leaq	16(%r14), %rdi	#, D.45040
	cltq
	movq	192(%r15,%rax,8), %rsi	# s_22(D)->node, tmp234
	movq	%rdi, 40(%rsp)	# D.45040, %sfp
	movq	%rdi, %rdx	# D.45040,
	movq	%r15, %rdi	# s,
	call	get_partial_node.isra.60	#
	testq	%rax, %rax	# freelist
	movq	%rax, %r12	#, freelist
	jne	.L995	#,
	cmpl	$-1, 48(%rsp)	#, %sfp
	jne	.L995	#,
	movslq	184(%r15), %rcx	# s_22(D)->remote_node_defrag_ratio,
	testl	%ecx, %ecx	# D.45031
	je	.L1039	#,
#APP
# 117 "./arch/x86/include/asm/msr.h" 1
	rdtsc
# 0 "" 2
#NO_APP
	andl	$1023, %eax	#, D.45041
	cmpq	%rcx, %rax	# D.45041, D.45041
	ja	.L1039	#,
	movq	32(%rsp), %rdi	# %sfp, tmp295
	movq	%r14, (%rsp)	# c, %sfp
	movl	68(%rsp), %r12d	# %sfp, gfpflags
#APP
# 14 "./arch/x86/include/asm/current.h" 1
	movq %gs:current_task,%rax	#, pfo_ret__
# 0 "" 2
#NO_APP
	movq	%rax, 24(%rsp)	# pfo_ret__, %sfp
	addq	$7168, %rdi	#, tmp290
	movq	%rax, 8(%rsp)	# pfo_ret__, %sfp
	movq	%rdi, 16(%rsp)	# tmp290, %sfp
.L1000:
	movq	24(%rsp), %rax	# %sfp, pfo_ret__
	movl	1688(%rax), %eax	# MEM[(const struct seqcount_t *)pfo_ret___231 + 1688B].sequence, cpuset_mems_cookie
	testb	$1, %al	#, cpuset_mems_cookie
	movl	%eax, 64(%rsp)	# cpuset_mems_cookie, %sfp
	je	.L999	#,
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	jmp	.L1000	#
.L999:
	call	mempolicy_slab_node	#
	movq	16(%rsp), %rdi	# %sfp, zonelist
	xorl	%edx, %edx	#
	leaq	144(%rsp), %rcx	#, tmp335
	cltq
	movl	%ebx, %esi	# high_zoneidx,
	addq	node_data(,%rax,8), %rdi	# node_data, zonelist
	addq	$8, %rdi	#, D.45044
	call	next_zones_zonelist	#
	movq	%rax, %r13	# z, z
.L1001:
	movq	144(%rsp), %r8	# zone, zone.64
	testq	%r8, %r8	# zone.64
	je	.L1054	#,
	movl	72(%r8), %edi	# MEM[(struct zone *)zone.64_249 + 72B], D.45031
	movslq	%edi, %rdx	# D.45031, D.45031
	movq	192(%r15,%rdx,8), %r14	# s_22(D)->node, D.45039
	testq	%r14, %r14	# D.45039
	je	.L1003	#,
	movl	cpusets_enabled_key(%rip), %eax	# MEM[(volatile int *)&cpusets_enabled_key], D.45031
	incl	%eax	# D.45031
	decl	%eax	# D.45031
	jle	.L1004	#,
	movl	%r12d, %esi	# gfpflags,
	call	__cpuset_node_allowed_hardwall	#
	testl	%eax, %eax	# D.45031
	je	.L1003	#,
.L1004:
	movq	16(%r15), %rax	# s_22(D)->min_partial, tmp339
	cmpq	%rax, 8(%r14)	# tmp339, _251->nr_partial
	ja	.L1055	#,
.L1003:
	leaq	16(%r13), %rdi	#, z
	xorl	%edx, %edx	#
	movl	%ebx, %esi	# high_zoneidx,
	leaq	144(%rsp), %rcx	#, tmp336
	call	next_zones_zonelist	#
	movq	%rax, %r13	#, z
	jmp	.L1001	#
.L1054:
	movq	8(%rsp), %rax	# %sfp, pfo_ret__
	movl	64(%rsp), %edi	# %sfp, cpuset_mems_cookie
	cmpl	1688(%rax), %edi	# MEM[(const struct seqcount_t *)pfo_ret___263 + 1688B].sequence, cpuset_mems_cookie
	je	.L1039	#,
	jmp	.L1000	#
.L1055:
	movq	40(%rsp), %rdx	# %sfp,
	movl	%r12d, %ecx	# gfpflags,
	movq	%r14, %rsi	# D.45039,
	movq	%r15, %rdi	# s,
	call	get_partial_node.isra.60	#
	testq	%rax, %rax	# object
	je	.L1003	#,
	movq	(%rsp), %r14	# %sfp, c
	movq	%rax, %r12	# object, freelist
.L995:
	testq	%r12, %r12	# freelist
	jne	.L1008	#,
.L1039:
	movl	48(%rsp), %edx	# %sfp,
	movq	%r15, %rdi	# s,
	movl	68(%rsp), %esi	# %sfp,
	call	new_slab	#
	testq	%rax, %rax	# page
	jne	.L1009	#,
.L1053:
	movl	48(%rsp), %r13d	# %sfp, node
	movq	%r15, %rdi	# s,
	movl	68(%rsp), %esi	# %sfp,
	movl	%r13d, %edx	# node,
	call	slab_out_of_memory	#
#APP
# 31 "./arch/x86/include/asm/irqflags.h" 1
	push 72(%rsp) ; popf	# %sfp
# 0 "" 2
#NO_APP
	xorl	%eax, %eax	# D.45026
	jmp	.L1045	#
.L1009:
	movq	(%r15), %rcx	# s_22(D)->cpu_slab, tcp_ptr__
#APP
# 2212 "mm/slub.c" 1
	add %gs:this_cpu_off, %rcx	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	16(%rcx), %rsi	# c_118->page, D.45030
	movq	%rcx, %r14	# tcp_ptr__, c
	testq	%rsi, %rsi	# D.45030
	je	.L1012	#,
	movq	(%rcx), %rdx	# c_118->freelist,
	movq	%r15, %rdi	# s,
	movq	%rax, 24(%rsp)	# page, %sfp
	movq	%rcx, 40(%rsp)	# tcp_ptr__, %sfp
	call	deactivate_slab	#
	movq	40(%rsp), %rcx	# %sfp, tcp_ptr__
	movq	24(%rsp), %rax	# %sfp, page
	incq	8(%rcx)	# c_118->tid
	movq	$0, 16(%rcx)	#, c_118->page
	movq	$0, (%rcx)	#, c_118->freelist
.L1012:
	movq	16(%rax), %r12	# page_115->D.11432.D.11414.freelist, freelist
	movq	$0, 16(%rax)	#, page_115->D.11432.D.11414.freelist
	movq	%rax, 16(%rcx)	# page, c_118->page
	testq	%r12, %r12	# freelist
	je	.L1053	#,
.L1008:
	testq	$2166016, 8(%r15)	#, MEM[(struct kmem_cache *)s_22(D) + 8B]
	movq	16(%r14), %r8	# c_63->page, page
	je	.L1014	#,
.L1017:
	testq	$2166016, 8(%r15)	#, MEM[(struct kmem_cache *)s_22(D) + 8B]
	je	.L1016	#,
	jmp	.L1056	#
.L1014:
	movq	(%r8), %rax	# MEM[(const long unsigned int *)page_56], D.45027
	testb	$64, %al	#, D.45027
	jne	.L1057	#,
.L982:
	movslq	32(%r15), %rax	# MEM[(struct kmem_cache *)s_22(D) + 32B], D.45037
	movq	(%r12,%rax), %rax	# *_110, D.45026
	incq	8(%r14)	# c_201->tid
	movq	%rax, (%r14)	# D.45026, c_201->freelist
	jmp	.L1047	#
.L1057:
	movl	68(%rsp), %edi	# %sfp,
	movq	%r8, 40(%rsp)	# page, %sfp
	call	gfp_pfmemalloc_allowed	#
	movq	40(%rsp), %r8	# %sfp, page
	testb	%al, %al	# D.45034
	je	.L1017	#,
	jmp	.L982	#
.L1056:
	movq	56(%rsp), %rcx	# %sfp,
	movq	%r8, %rsi	# page,
	movq	%r12, %rdx	# freelist,
	movq	%r15, %rdi	# s,
	movq	%r8, 40(%rsp)	# page, %sfp
	call	alloc_debug_processing	#
	movq	40(%rsp), %r8	# %sfp, page
	testl	%eax, %eax	# D.45031
	je	.L1020	#,
.L1016:
	movslq	32(%r15), %rax	# MEM[(struct kmem_cache *)s_22(D) + 32B], D.45037
	movq	%r8, %rsi	# page,
	movq	%r15, %rdi	# s,
	movq	(%r12,%rax), %rdx	# *_146, *_146
	call	deactivate_slab	#
	movq	$0, 16(%r14)	#, c_114->page
	movq	$0, (%r14)	#, c_114->freelist
.L1047:
#APP
# 31 "./arch/x86/include/asm/irqflags.h" 1
	push 72(%rsp) ; popf	# %sfp
# 0 "" 2
#NO_APP
	movq	%r12, %rax	# freelist, D.45026
	jmp	.L1045	#
.L980:
	movq	(%r14), %rdx	# c_193->freelist,
	movq	%r15, %rdi	# s,
	call	deactivate_slab	#
	movq	$0, 16(%r14)	#, c_193->page
	movq	$0, (%r14)	#, c_193->freelist
	jmp	.L977	#
.L988:
.L1022:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%rsi), %rax	# MEM[(const long unsigned int *)page_2], D.45027
	testb	$1, %al	#, D.45027
	jne	.L1022	#,
.L1052:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%rsi); jc .L988	#, MEM[(volatile long unsigned int *)_96],
# 0 "" 2
#NO_APP
	cmpq	16(%rsi), %r12	# page_2->D.11432.D.11414.freelist, freelist
	jne	.L989	#,
	cmpq	24(%rsi), %rdx	# page_2->D.11432.D.11431.counters, counters
	jne	.L989	#,
	movq	$0, 16(%rsi)	#, page_2->D.11432.D.11414.freelist
	movq	%rcx, 168(%rsp)	# D.45027, tmp.D.11432.D.11431.counters
	movb	171(%rsp), %dl	# tmp, tmp208
	movb	27(%rsi), %al	#, tmp211
	andl	$-128, %edx	#, tmp208
	andl	$127, %eax	#, tmp211
	orl	%edx, %eax	# tmp208, tmp211
	movb	%al, 27(%rsi)	# tmp211,
	movl	168(%rsp), %eax	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movw	%ax, 24(%rsi)	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, page_2->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movw	26(%rsi), %ax	#, tmp223
	movw	170(%rsp), %dx	# tmp, D.45033
	andw	$-32768, %ax	#, tmp223
	andw	$32767, %dx	#, D.45033
	orl	%edx, %eax	# D.45033, tmp223
	movw	%ax, 26(%rsi)	# tmp223,
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%rsi)	#, MEM[(volatile long int *)_149]
# 0 "" 2
#NO_APP
	jmp	.L984	#
.L989:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%rsi)	#, MEM[(volatile long int *)_96]
# 0 "" 2
#NO_APP
.L985:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	jmp	.L990	#
.L1045:
	leaq	-40(%rbp), %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	__slab_alloc, .-__slab_alloc
	.text
	.p2align 4,,15
	.globl	kmem_cache_alloc
	.type	kmem_cache_alloc, @function
kmem_cache_alloc:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	movl	%esi, %r14d	# gfpflags, gfpflags
	pushq	%r13	#
	movq	%rdi, %r13	# s, s
	movq	8(%rbp), %rdi	#, D.45059
	pushq	%r12	#
	pushq	%rbx	#
.L1059:
	movq	0(%r13), %r8	# s_5(D)->cpu_slab, tcp_ptr__
#APP
# 2428 "mm/slub.c" 1
	add %gs:this_cpu_off, %r8	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r8), %rdx	# c_11->tid, __o2
	movq	(%r8), %r12	# c_11->freelist, ret
	movq	16(%r8), %rax	# c_11->page, page
	testq	%r12, %r12	# ret
	je	.L1063	#,
	testq	%rax, %rax	# page
	je	.L1063	#,
	movslq	32(%r13), %rax	# MEM[(struct kmem_cache *)s_5(D) + 32B], D.45064
	leaq	1(%rdx), %rcx	#, D.45060
	movq	0(%r13), %r8	# s_5(D)->cpu_slab, D.45061
	movq	(%r12,%rax), %rbx	# *_25, D.45059
	movq	%r12, %rax	# ret, ret
#APP
# 2461 "mm/slub.c" 1
	661:
	leaq (%r8),%rsi	# _28->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%r8)	# _28->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1059	#,
	movslq	32(%r13), %rax	# MEM[(const struct kmem_cache *)s_5(D) + 32B], D.45064
	andl	$32768, %r14d	#, gfpflags
	prefetcht0	(%rbx,%rax)	#
	jne	.L1065	#,
.L1069:
	popq	%rbx	#
	movq	%r12, %rax	# ret,
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1063:
	movq	%rdi, %rcx	# D.45059,
	movl	%r14d, %esi	# gfpflags,
	movl	$-1, %edx	#,
	movq	%r13, %rdi	# s,
	call	__slab_alloc	#
	andl	$32768, %r14d	#, gfpflags
	movq	%rax, %r12	#, ret
	je	.L1069	#,
	testq	%rax, %rax	# ret
	je	.L1069	#,
.L1065:
	movslq	28(%r13), %rdx	# s_5(D)->object_size, D.45060
	xorl	%esi, %esi	#
	movq	%r12, %rdi	# ret,
	call	memset	#
	jmp	.L1069	#
	.size	kmem_cache_alloc, .-kmem_cache_alloc
	.p2align 4,,15
	.type	sysfs_slab_alias, @function
sysfs_slab_alias:
	cmpl	$5, slab_state(%rip)	#, slab_state
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	%rsi, %rbx	# name, name
	je	.L1081	#,
	movq	kmalloc_caches+40(%rip), %rdi	# kmalloc_caches,
	movl	$208, %esi	#,
	call	kmem_cache_alloc	#
	testq	%rax, %rax	# D.45084
	je	.L1079	#,
	movq	alias_list(%rip), %rdx	# alias_list, alias_list
	movq	%r12, (%rax)	# s, MEM[(struct saved_alias *)_17].s
	movq	%rbx, 8(%rax)	# name, MEM[(struct saved_alias *)_17].name
	movq	%rax, alias_list(%rip)	# D.45084, alias_list
	movq	%rdx, 16(%rax)	# alias_list, MEM[(struct saved_alias *)_17].next
	xorl	%eax, %eax	# D.45082
.L1078:
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1081:
	movq	slab_kset(%rip), %rax	# slab_kset, tmp80
	leaq	24(%rax), %rdi	#, D.45085
	call	sysfs_remove_link	#
	movq	slab_kset(%rip), %rax	# slab_kset, tmp81
	movq	%rbx, %rdx	# name,
	leaq	120(%r12), %rsi	#, D.45085
	leaq	24(%rax), %rdi	#, D.45085
	call	sysfs_create_link	#
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
.L1079:
	movl	$-12, %eax	#, D.45082
	jmp	.L1078	#
	.size	sysfs_slab_alias, .-sysfs_slab_alias
	.p2align 4,,15
	.globl	kmem_cache_alloc_node
	.type	kmem_cache_alloc_node, @function
kmem_cache_alloc_node:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	movl	%esi, %r14d	# gfpflags, gfpflags
	movq	8(%rbp), %r9	#, D.45090
	pushq	%r13	#
	movq	%rdi, %r13	# s, s
	pushq	%r12	#
	movl	%edx, %edi	# node, node
	pushq	%rbx	#
.L1083:
	movq	0(%r13), %r8	# s_5(D)->cpu_slab, tcp_ptr__
#APP
# 2428 "mm/slub.c" 1
	add %gs:this_cpu_off, %r8	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r8), %rdx	# c_12->tid, __o2
	movq	(%r8), %r12	# c_12->freelist, ret
	movq	16(%r8), %rax	# c_12->page, page
	testq	%r12, %r12	# ret
	je	.L1087	#,
	testq	%rax, %rax	# page
	je	.L1087	#,
	cmpl	$-1, %edi	#, node
	je	.L1088	#,
	movq	(%rax), %rax	# MEM[(const struct page *)page_15], D.45091
	shrq	$39, %rax	#, D.45091
	andl	$63, %eax	#, D.45093
	cmpl	%eax, %edi	# D.45093, node
	je	.L1088	#,
.L1087:
	movl	%edi, %edx	# node,
	movl	%r14d, %esi	# gfpflags,
	movq	%r9, %rcx	# D.45090,
	movq	%r13, %rdi	# s,
	call	__slab_alloc	#
	andl	$32768, %r14d	#, gfpflags
	movq	%rax, %r12	#, ret
	jne	.L1102	#,
.L1094:
	popq	%rbx	#
	movq	%r12, %rax	# ret,
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1088:
	movslq	32(%r13), %rax	# MEM[(struct kmem_cache *)s_5(D) + 32B], D.45095
	leaq	1(%rdx), %rcx	#, D.45091
	movq	0(%r13), %r8	# s_5(D)->cpu_slab, D.45092
	movq	(%r12,%rax), %rbx	# *_30, D.45090
	movq	%r12, %rax	# ret, ret
#APP
# 2461 "mm/slub.c" 1
	661:
	leaq (%r8),%rsi	# _33->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%r8)	# _33->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1083	#,
	movslq	32(%r13), %rax	# MEM[(const struct kmem_cache *)s_5(D) + 32B], D.45095
	andl	$32768, %r14d	#, gfpflags
	prefetcht0	(%rbx,%rax)	#
	je	.L1094	#,
.L1089:
	movslq	28(%r13), %rdx	# s_5(D)->object_size, D.45091
	xorl	%esi, %esi	#
	movq	%r12, %rdi	# ret,
	call	memset	#
	jmp	.L1094	#
.L1102:
	testq	%rax, %rax	# ret
	jne	.L1089	#,
	.p2align 4,,8
	jmp	.L1094	#
	.size	kmem_cache_alloc_node, .-kmem_cache_alloc_node
	.p2align 4,,15
	.globl	__kmalloc
	.type	__kmalloc, @function
__kmalloc:
	pushq	%rbp	#
	cmpq	$8192, %rdi	#, size
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	movl	%esi, %r14d	# flags, flags
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	ja	.L1124	#,
	call	kmalloc_slab	#
	cmpq	$16, %rax	#, s
	movq	%rax, %r13	#, s
	jbe	.L1121	#,
	movq	8(%rbp), %rdi	#, D.45107
.L1106:
	movq	0(%r13), %r8	# s_11->cpu_slab, tcp_ptr__
#APP
# 2428 "mm/slub.c" 1
	add %gs:this_cpu_off, %r8	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r8), %rdx	# c_100->tid, __o2
	movq	(%r8), %r12	# c_100->freelist, ret
	movq	16(%r8), %rax	# c_100->page, page
	testq	%r12, %r12	# ret
	je	.L1110	#,
	testq	%rax, %rax	# page
	je	.L1110	#,
	movslq	32(%r13), %rax	# MEM[(struct kmem_cache *)s_11 + 32B], D.45112
	leaq	1(%rdx), %rcx	#, D.45108
	movq	0(%r13), %r8	# s_11->cpu_slab, D.45110
	movq	(%r12,%rax), %rbx	# *_114, D.45107
	movq	%r12, %rax	# ret, ret
#APP
# 2461 "mm/slub.c" 1
	661:
	leaq (%r8),%rsi	# _117->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%r8)	# _117->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1106	#,
	movslq	32(%r13), %rax	# MEM[(const struct kmem_cache *)s_11 + 32B], D.45112
	andl	$32768, %r14d	#, flags
	prefetcht0	(%rbx,%rax)	#
	jne	.L1112	#,
.L1109:
	movq	%r12, %rax	# ret, D.45107
.L1121:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1110:
	movq	%rdi, %rcx	# D.45107,
	movl	%r14d, %esi	# flags,
	movl	$-1, %edx	#,
	movq	%r13, %rdi	# s,
	call	__slab_alloc	#
	andl	$32768, %r14d	#, flags
	movq	%rax, %r12	#, ret
	je	.L1109	#,
	testq	%rax, %rax	# ret
	je	.L1109	#,
.L1112:
	movslq	28(%r13), %rdx	# s_11->object_size, D.45108
	xorl	%esi, %esi	#
	movq	%r12, %rdi	# ret,
	call	memset	#
	jmp	.L1109	#
.L1124:
	leaq	-1(%rdi), %rdx	#, size
	orl	$-1, %eax	#, bitpos
	shrq	$12, %rdx	#, size
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rdx,%rax	# size, bitpos
# 0 "" 2
#NO_APP
	leal	1(%rax), %edx	#, D.45109
	call	kmalloc_order	#
	jmp	.L1121	#
	.size	__kmalloc, .-__kmalloc
	.p2align 4,,15
	.globl	__kmalloc_node
	.type	__kmalloc_node, @function
__kmalloc_node:
	pushq	%rbp	#
	cmpq	$8192, %rdi	#, size
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movl	%edx, %r15d	# node, node
	pushq	%r14	#
	movl	%esi, %r14d	# flags, flags
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	ja	.L1148	#,
	call	kmalloc_slab	#
	cmpq	$16, %rax	#, s
	movq	%rax, %r13	#, s
	jbe	.L1146	#,
	movq	8(%rbp), %r9	#, D.45125
.L1128:
	movq	0(%r13), %r8	# s_81->cpu_slab, tcp_ptr__
#APP
# 2428 "mm/slub.c" 1
	add %gs:this_cpu_off, %r8	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r8), %rdx	# c_97->tid, __o2
	movq	(%r8), %r12	# c_97->freelist, ret
	movq	16(%r8), %rax	# c_97->page, page
	testq	%r12, %r12	# ret
	je	.L1132	#,
	testq	%rax, %rax	# page
	je	.L1132	#,
	cmpl	$-1, %r15d	#, node
	je	.L1133	#,
	movq	(%rax), %rax	# MEM[(const struct page *)page_100], D.45126
	shrq	$39, %rax	#, D.45126
	andl	$63, %eax	#, D.45128
	cmpl	%eax, %r15d	# D.45128, node
	je	.L1133	#,
.L1132:
	movl	%r14d, %esi	# flags,
	movq	%r9, %rcx	# D.45125,
	movl	%r15d, %edx	# node,
	movq	%r13, %rdi	# s,
	call	__slab_alloc	#
	andl	$32768, %r14d	#, flags
	movq	%rax, %r12	#, ret
	jne	.L1149	#,
.L1131:
	movq	%r12, %rax	# ret, D.45125
.L1146:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1133:
	movslq	32(%r13), %rax	# MEM[(struct kmem_cache *)s_81 + 32B], D.45129
	leaq	1(%rdx), %rcx	#, D.45126
	movq	0(%r13), %rdi	# s_81->cpu_slab, D.45127
	movq	(%r12,%rax), %rbx	# *_115, D.45125
	movq	%r12, %rax	# ret, ret
#APP
# 2461 "mm/slub.c" 1
	661:
	leaq (%rdi),%rsi	# _118->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%rdi)	# _118->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1128	#,
	movslq	32(%r13), %rax	# MEM[(const struct kmem_cache *)s_81 + 32B], D.45129
	andl	$32768, %r14d	#, flags
	prefetcht0	(%rbx,%rax)	#
	je	.L1131	#,
.L1134:
	movslq	28(%r13), %rdx	# s_81->object_size, D.45126
	xorl	%esi, %esi	#
	movq	%r12, %rdi	# ret,
	call	memset	#
	jmp	.L1131	#
.L1148:
	call	kmalloc_large_node	#
	.p2align 4,,8
	jmp	.L1146	#
.L1149:
	testq	%rax, %rax	# ret
	.p2align 4,,5
	jne	.L1134	#,
	.p2align 4,,8
	jmp	.L1131	#
	.size	__kmalloc_node, .-__kmalloc_node
	.p2align 4,,15
	.type	slab_cpuup_callback, @function
slab_cpuup_callback:
	leaq	-4(%rsi), %rcx	#, D.45142
	cmpq	$19, %rcx	#, D.45142
	ja	.L1173	#,
	movl	$1, %eax	#, D.45142
	salq	%cl, %rax	# D.45142, D.45142
	testl	$589833, %eax	#, D.45142
	jne	.L1174	#,
.L1173:
	movl	$1, %eax	#,
	ret
	.p2align 4,,10
	.p2align 3
.L1174:
	pushq	%rbp	#
	movq	$slab_mutex, %rdi	#,
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	subq	$8, %rsp	#,
	movq	%rdx, -40(%rbp)	# hcpu, %sfp
	call	mutex_lock	#
	movq	slab_caches(%rip), %rax	# slab_caches.next, __mptr
	movq	-40(%rbp), %rdx	# %sfp, hcpu
	leaq	-104(%rax), %r12	#, s
	cmpq	$slab_caches, %rax	#, __mptr
	movslq	%edx, %r14	# hcpu, D.45147
	je	.L1157	#,
	.p2align 4,,10
	.p2align 3
.L1167:
#APP
# 20 "./arch/x86/include/asm/irqflags.h" 1
	# __raw_save_flags
	pushf ; pop %r13	# flags
# 0 "" 2
# 39 "./arch/x86/include/asm/irqflags.h" 1
	cli
# 0 "" 2
#NO_APP
	movq	(%r12), %rbx	# s_52->cpu_slab, __ptr
	addq	__per_cpu_offset(,%r14,8), %rbx	# __per_cpu_offset, D.45143
	je	.L1153	#,
	movq	16(%rbx), %rsi	# _19->page, D.45144
	testq	%rsi, %rsi	# D.45144
	je	.L1154	#,
	movq	(%rbx), %rdx	# _19->freelist,
	movq	%r12, %rdi	# s,
	call	deactivate_slab	#
	movq	$0, 16(%rbx)	#, _19->page
	addq	$1, 8(%rbx)	#, _19->tid
	movq	$0, (%rbx)	#, _19->freelist
.L1154:
	leaq	24(%rbx), %rsi	#, D.45146
	movq	%r12, %rdi	# s,
	call	unfreeze_partials.isra.59	#
.L1153:
#APP
# 31 "./arch/x86/include/asm/irqflags.h" 1
	push %r13 ; popf	# flags
# 0 "" 2
#NO_APP
	movq	104(%r12), %rax	# s_52->list.next, __mptr
	leaq	-104(%rax), %r12	#, s
	cmpq	$slab_caches, %rax	#, __mptr
	jne	.L1167	#,
.L1157:
	movq	$slab_mutex, %rdi	#,
	call	mutex_unlock	#
	addq	$8, %rsp	#,
	movl	$1, %eax	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.size	slab_cpuup_callback, .-slab_cpuup_callback
	.section	.init.text
	.type	bootstrap, @function
bootstrap:
	pushq	%rbp	#
	movl	$32768, %esi	#,
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	%rdi, %r12	# static_cache, static_cache
	movq	kmem_cache(%rip), %rdi	# kmem_cache,
	pushq	%rbx	#
	call	kmem_cache_alloc	#
	movq	%r12, %rsi	# static_cache, static_cache
	movq	%rax, %rbx	#, D.45155
	movq	kmem_cache(%rip), %rax	# kmem_cache, kmem_cache
	movq	%rbx, %rdi	# D.45155, D.45155
	movslq	28(%rax), %rcx	# kmem_cache.424_11->object_size, D.45153
	rep movsb
#APP
# 3597 "mm/slub.c" 1
	movl %gs:cpu_number,%eax	# cpu_number, pscr_ret__
# 0 "" 2
#NO_APP
	cltq
	movq	(%rbx), %r12	# MEM[(struct kmem_cache *)_36].cpu_slab, __ptr
	addq	__per_cpu_offset(,%rax,8), %r12	# __per_cpu_offset, D.45156
	je	.L1176	#,
	movq	16(%r12), %rsi	# _41->page, D.45157
	testq	%rsi, %rsi	# D.45157
	je	.L1177	#,
	movq	(%r12), %rdx	# _41->freelist,
	movq	%rbx, %rdi	# D.45155,
	call	deactivate_slab	#
	movq	$0, (%r12)	#, _41->freelist
	incq	8(%r12)	# _41->tid
	movq	$0, 16(%r12)	#, _41->page
.L1177:
	leaq	24(%r12), %rsi	#, D.45159
	movq	%rbx, %rdi	# D.45155,
	call	unfreeze_partials.isra.59	#
.L1176:
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movl	$64, %r12d	#, tmp129
	call	find_first_bit	#
	movl	$64, %edx	#, node
	cmpl	$64, %eax	#, D.45153
	cmovle	%eax, %edx	# D.45153,, node
.L1178:
	cmpl	$64, %edx	#, node
	je	.L1194	#,
	movslq	%edx, %rax	# node, node
	movq	192(%rbx,%rax,8), %rdi	# MEM[(struct kmem_cache *)_36].node, D.45160
	testq	%rdi, %rdi	# D.45160
	je	.L1180	#,
	movq	16(%rdi), %rax	# _53->partial.next, tmp132
	leaq	16(%rdi), %r8	#, D.45154
	leaq	-32(%rax), %rcx	#, p
.L1181:
	leaq	32(%rcx), %rsi	#, D.45154
	cmpq	%r8, %rsi	# D.45154, D.45154
	je	.L1195	#,
	movq	%rbx, 48(%rcx)	# D.45155, p_2->D.11450.slab_cache
	movq	32(%rcx), %rcx	# p_2->D.11444.lru.next, __mptr
	subq	$32, %rcx	#, p
	jmp	.L1181	#
.L1195:
	movq	48(%rdi), %rax	# _53->full.next, tmp133
	addq	$48, %rdi	#, D.45154
	leaq	-32(%rax), %rcx	#, p
.L1183:
	leaq	32(%rcx), %rsi	#, D.45154
	cmpq	%rdi, %rsi	# D.45154, D.45154
	je	.L1180	#,
	movq	%rbx, 48(%rcx)	# D.45155, p_3->D.11450.slab_cache
	movq	32(%rcx), %rcx	# p_3->D.11444.lru.next, __mptr
	subq	$32, %rcx	#, p
	jmp	.L1183	#
.L1180:
	incl	%edx	# D.45152
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movslq	%edx, %rdx	# D.45152, D.45153
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45153
	movl	%eax, %edx	# D.45153, node
	cmovg	%r12d, %edx	# node,, tmp129, node
	jmp	.L1178	#
.L1194:
	movq	slab_caches(%rip), %rdx	# slab_caches.next, D.45154
	leaq	104(%rbx), %rax	#, D.45154
	movq	%rax, slab_caches(%rip)	# D.45154, slab_caches.next
	movq	%rax, 8(%rdx)	# D.45154, _59->prev
	movq	%rbx, %rax	# D.45155,
	movq	%rdx, 104(%rbx)	# D.45154, MEM[(struct list_head *)_36 + 104B].next
	movq	$slab_caches, 112(%rbx)	#, MEM[(struct list_head *)_36 + 104B].prev
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	bootstrap, .-bootstrap
	.section	.text.unlikely
	.type	__slab_free, @function
__slab_free:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	xorl	%r15d, %r15d	# n
	pushq	%r14	#
	movq	%rdi, %r14	# s, s
	pushq	%r13	#
	pushq	%r12	#
	movq	%rsi, %r12	# page, page
	pushq	%rbx	#
	movq	%rdx, %rbx	# x, x
	andq	$-16, %rsp	#,
	subq	$152, %rsp	#,
	testq	$2166016, 8(%rdi)	#, MEM[(struct kmem_cache *)s_15(D) + 8B]
	je	.L1212	#,
	leaq	16(%rsp), %r8	#,
	call	free_debug_processing	#
	testq	%rax, %rax	# n
	movq	%rax, %r15	#, n
	je	.L1196	#,
.L1212:
	testq	%r15, %r15	# n
	je	.L1199	#,
	movq	16(%rsp), %rsi	# flags,
	movq	%r15, %rdi	# n,
	call	_raw_spin_unlock_irqrestore	#
.L1199:
	movq	24(%r12), %rdx	# page_17(D)->D.11432.D.11431.counters, counters
	movslq	32(%r14), %rax	# MEM[(struct kmem_cache *)s_15(D) + 32B], D.45190
	movq	16(%r12), %r13	# page_17(D)->D.11432.D.11414.freelist, prior
	movq	%rdx, 48(%rsp)	# counters, new.D.11432.D.11431.counters
	movq	%r13, (%rbx,%rax)	# prior, *_84
	movb	51(%rsp), %al	# new, D.45185
	shrb	$7, %al	#, D.45185
	movzbl	%al, %esi	# D.45185, was_frozen
	movl	48(%rsp), %eax	# new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp241
	leal	-1(%rax), %ecx	#, D.45186
	testw	%cx, %cx	# D.45186
	movw	%cx, 48(%rsp)	# D.45186, new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	je	.L1200	#,
	xorl	%r15d, %r15d	# n
	testq	%r13, %r13	# prior
	jne	.L1201	#,
.L1200:
	xorl	%r15d, %r15d	# n
	testl	%esi, %esi	# was_frozen
	jne	.L1201	#,
	testq	$2166016, 8(%r14)	#, MEM[(struct kmem_cache *)s_15(D) + 8B]
	jne	.L1202	#,
	testq	%r13, %r13	# prior
	jne	.L1202	#,
	orb	$-128, 51(%rsp)	#,
	movq	%r13, %r15	# prior, n
	jmp	.L1201	#
.L1202:
	movq	(%r12), %rax	# MEM[(const struct page *)page_17(D)], D.45184
	movl	%esi, 4(%rsp)	# was_frozen, %sfp
	movq	%rdx, 8(%rsp)	# counters, %sfp
	shrq	$39, %rax	#, D.45184
	andl	$63, %eax	#, D.45184
	movq	192(%r14,%rax,8), %r15	# s_15(D)->node, n
	movq	%r15, %rdi	# n,
	call	_raw_spin_lock_irqsave	#
	movl	4(%rsp), %esi	# %sfp, was_frozen
	movq	8(%rsp), %rdx	# %sfp, counters
	movq	%rax, 16(%rsp)	# flags.177, flags
.L1201:
	testb	$64, 11(%r14)	#, MEM[(struct kmem_cache *)s_15(D) + 8B]
	movq	48(%rsp), %rcx	# new.D.11432.D.11431.counters, D.45183
	je	.L1203	#,
	movq	%r13, %rax	# prior, prior
#APP
# 420 "mm/slub.c" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; cmpxchg16b 16(%r12); sete %al	#, page_17(D)->D.11432.D.11414.freelist, __ret
# 0 "" 2
#NO_APP
	testb	%al, %al	# __ret
	je	.L1205	#,
	jmp	.L1204	#
.L1203:
#APP
# 20 "./arch/x86/include/asm/irqflags.h" 1
	# __raw_save_flags
	pushf ; pop %rax	# flags
# 0 "" 2
# 39 "./arch/x86/include/asm/irqflags.h" 1
	cli
# 0 "" 2
#NO_APP
.L1206:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r12); jc .L1208	#, MEM[(volatile long unsigned int *)_99],
# 0 "" 2
#NO_APP
	cmpq	16(%r12), %r13	# page_17(D)->D.11432.D.11414.freelist, prior
	jne	.L1209	#,
	cmpq	24(%r12), %rdx	# page_17(D)->D.11432.D.11431.counters, counters
	jne	.L1209	#,
	movq	%rcx, 112(%rsp)	# D.45183, tmp.D.11432.D.11431.counters
	movb	27(%r12), %dl	#, tmp188
	movb	115(%rsp), %cl	# tmp, tmp185
	movq	%rbx, 16(%r12)	# x, page_17(D)->D.11432.D.11414.freelist
	andl	$127, %edx	#, tmp188
	andl	$-128, %ecx	#, tmp185
	orl	%ecx, %edx	# tmp185, tmp188
	movw	114(%rsp), %cx	# tmp, D.45194
	movb	%dl, 27(%r12)	# tmp188,
	movl	112(%rsp), %edx	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	andw	$32767, %cx	#, D.45194
	movw	%dx, 24(%r12)	# tmp.D.11432.D.11431.D.11429.D.11427.D.11425.inuse, page_17(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movw	26(%r12), %dx	#, tmp200
	andw	$-32768, %dx	#, tmp200
	orl	%ecx, %edx	# D.45194, tmp200
	movw	%dx, 26(%r12)	# tmp200,
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_90]
# 0 "" 2
# 31 "./arch/x86/include/asm/irqflags.h" 1
	push %rax ; popf	# flags
# 0 "" 2
#NO_APP
	jmp	.L1204	#
.L1209:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r12)	#, MEM[(volatile long int *)_99]
# 0 "" 2
# 31 "./arch/x86/include/asm/irqflags.h" 1
	push %rax ; popf	# flags
# 0 "" 2
#NO_APP
.L1205:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	jmp	.L1212	#
.L1208:
.L1224:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r12), %rdi	# MEM[(const long unsigned int *)page_17(D)], D.45183
	andb	$1, %dil	#, D.45183
	jne	.L1224	#,
	jmp	.L1206	#
.L1204:
	testq	%r15, %r15	# n
	jne	.L1255	#,
	cmpb	$0, 51(%rsp)	#, new
	jns	.L1196	#,
	testl	%esi, %esi	# was_frozen
	jne	.L1196	#,
.L1215:
	movq	(%r14), %rax	# s_15(D)->cpu_slab, s_15(D)->cpu_slab
#APP
# 2037 "mm/slub.c" 1
	movq %gs:24(%rax),%rcx	# _179->partial, pco_old__
# 0 "" 2
#NO_APP
	testq	%rcx, %rcx	# pco_old__
	movq	%rcx, %rdx	# pco_old__, pco_old__
	je	.L1230	#,
	movl	44(%rcx), %esi	# pco_old___180->D.11444.D.11439.pobjects, pobjects
	movl	40(%rcx), %ecx	# pco_old___180->D.11444.D.11439.pages, pages
	cmpl	%esi, 36(%r14)	# pobjects, s_15(D)->cpu_partial
	jge	.L1213	#,
#APP
# 20 "./arch/x86/include/asm/irqflags.h" 1
	# __raw_save_flags
	pushf ; pop %rbx	# flags
# 0 "" 2
# 39 "./arch/x86/include/asm/irqflags.h" 1
	cli
# 0 "" 2
#NO_APP
	movq	(%r14), %rsi	# s_15(D)->cpu_slab, tcp_ptr__
#APP
# 2049 "mm/slub.c" 1
	add %gs:this_cpu_off, %rsi	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	addq	$24, %rsi	#, D.45197
	movq	%r14, %rdi	# s,
	call	unfreeze_partials.isra.59	#
#APP
# 31 "./arch/x86/include/asm/irqflags.h" 1
	push %rbx ; popf	# flags
# 0 "" 2
#NO_APP
	xorl	%esi, %esi	# pobjects
	xorl	%ecx, %ecx	# pages
	xorl	%edx, %edx	# pco_old__
	jmp	.L1213	#
.L1230:
	xorl	%esi, %esi	# pobjects
	xorl	%ecx, %ecx	# pages
.L1213:
	movw	26(%r12), %ax	# *page_17(D), *page_17(D)
	incl	%ecx	# tmp221
	movq	%rdx, 32(%r12)	# pco_old__, page_17(D)->D.11444.D.11439.next
	movzwl	24(%r12), %edi	# page_17(D)->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.45184
	movl	%ecx, 40(%r12)	# tmp221, page_17(D)->D.11444.D.11439.pages
	andl	$32767, %eax	#, D.45184
	subl	%edi, %eax	# D.45184, D.45184
	addl	%esi, %eax	# pobjects, pobjects
	movl	%eax, 44(%r12)	# pobjects, page_17(D)->D.11444.D.11439.pobjects
	movq	%rdx, %rax	# pco_old__, pscr2_ret__
	movq	(%r14), %rcx	# s_15(D)->cpu_slab, D.45196
#APP
# 2065 "mm/slub.c" 1
	cmpxchgq %r12, %gs:24(%rcx)	# page, _200->partial
# 0 "" 2
#NO_APP
	cmpq	%rax, %rdx	# pscr2_ret__, pco_old__
	jne	.L1215	#,
	jmp	.L1196	#
.L1255:
	cmpw	$0, 48(%rsp)	#, new.D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	jne	.L1216	#,
	movq	16(%r14), %rax	# s_15(D)->min_partial, tmp243
	cmpq	%rax, 8(%r15)	# tmp243, n_88->nr_partial
	jae	.L1217	#,
.L1216:
	movq	8(%r14), %rax	# MEM[(struct kmem_cache *)s_15(D) + 8B], D.45183
	testl	$2166016, %eax	#, D.45183
	je	.L1218	#,
	testq	%r13, %r13	# prior
	jne	.L1218	#,
	testl	$65536, %eax	#, D.45183
	je	.L1219	#,
	movq	40(%r12), %rax	# MEM[(struct list_head *)page_17(D) + 32B].prev, D.45195
	movq	32(%r12), %rdx	# MEM[(struct list_head *)page_17(D) + 32B].next, D.45195
	movq	%rax, 8(%rdx)	# D.45195, _202->prev
	movq	%rdx, (%rax)	# D.45195, _203->next
	movabsq	$-2401263026317557504, %rax	#, tmp244
	movq	%rax, 32(%r12)	# tmp244, MEM[(struct list_head *)page_17(D) + 32B].next
	movabsq	$-2401263026316508672, %rax	#, tmp245
	movq	%rax, 40(%r12)	# tmp245, MEM[(struct list_head *)page_17(D) + 32B].prev
.L1219:
	movq	24(%r15), %rax	# MEM[(struct list_head *)n_88 + 16B].prev, D.45195
	leaq	32(%r12), %rdx	#, D.45195
	incq	8(%r15)	# n_88->nr_partial
	leaq	16(%r15), %rcx	#, tmp228
	movq	%rdx, 24(%r15)	# D.45195, MEM[(struct list_head *)n_88 + 16B].prev
	movq	%rcx, 32(%r12)	# tmp228, MEM[(struct list_head *)page_17(D) + 32B].next
	movq	%rax, 40(%r12)	# D.45195, MEM[(struct list_head *)page_17(D) + 32B].prev
	movq	%rdx, (%rax)	# D.45195, _125->next
.L1218:
	movq	16(%rsp), %rsi	# flags,
	movq	%r15, %rdi	# n,
	call	_raw_spin_unlock_irqrestore	#
	jmp	.L1196	#
.L1217:
	testq	%r13, %r13	# prior
	je	.L1221	#,
	movq	40(%r12), %rax	# MEM[(struct list_head *)page_17(D) + 32B].prev, D.45195
	movq	32(%r12), %rdx	# MEM[(struct list_head *)page_17(D) + 32B].next, D.45195
	movq	%rax, 8(%rdx)	# D.45195, _130->prev
	movq	%rdx, (%rax)	# D.45195, _131->next
	movabsq	$-2401263026317557504, %rax	#, tmp246
	movq	%rax, 32(%r12)	# tmp246, MEM[(struct list_head *)page_17(D) + 32B].next
	movabsq	$-2401263026316508672, %rax	#, tmp247
	movq	%rax, 40(%r12)	# tmp247, MEM[(struct list_head *)page_17(D) + 32B].prev
	decq	8(%r15)	# MEM[(long unsigned int *)n_88 + 8B]
	jmp	.L1222	#
.L1221:
	testb	$1, 10(%r14)	#, MEM[(struct kmem_cache *)s_15(D) + 8B]
	je	.L1222	#,
	movq	40(%r12), %rax	# MEM[(struct list_head *)page_17(D) + 32B].prev, D.45195
	movq	32(%r12), %rdx	# MEM[(struct list_head *)page_17(D) + 32B].next, D.45195
	movq	%rax, 8(%rdx)	# D.45195, _204->prev
	movq	%rdx, (%rax)	# D.45195, _205->next
	movabsq	$-2401263026317557504, %rax	#, tmp248
	movq	%rax, 32(%r12)	# tmp248, MEM[(struct list_head *)page_17(D) + 32B].next
	movabsq	$-2401263026316508672, %rax	#, tmp249
	movq	%rax, 40(%r12)	# tmp249, MEM[(struct list_head *)page_17(D) + 32B].prev
.L1222:
	movq	16(%rsp), %rsi	# flags,
	movq	%r15, %rdi	# n,
	call	_raw_spin_unlock_irqrestore	#
	movq	%r12, %rsi	# page,
	movq	%r14, %rdi	# s,
	call	discard_slab	#
.L1196:
	leaq	-40(%rbp), %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	__slab_free, .-__slab_free
	.text
	.p2align 4,,15
	.globl	kmem_cache_free
	.type	kmem_cache_free, @function
kmem_cache_free:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	movq	%rsi, %rbx	# x, x
	testb	$1, 9(%rdi)	#, s_3(D)->flags
	jne	.L1286	#,
.L1257:
	testq	%rdi, %rdi	# D.45211
	je	.L1256	#,
	movl	$2147483648, %edx	#, tmp141
	movq	8(%rbp), %r10	#, D.45207
	movabsq	$131939247849472, %rax	#, iftmp.154
	addq	%rbx, %rdx	# x, y
	cmovc	phys_base(%rip), %rax	# phys_base,, iftmp.154
	addq	%rax, %rdx	# iftmp.154, x
	movq	%rdx, %rcx	# x, __pfn
	movq	%rdx, %rsi	# x, D.45208
	shrq	$34, %rdx	#, D.45208
	movq	mem_section(,%rdx,8), %rax	# mem_section, D.45209
	shrq	$12, %rcx	#, __pfn
	shrq	$27, %rsi	#, D.45208
	testq	%rax, %rax	# D.45209
	je	.L1263	#,
	andl	$127, %esi	#, D.45208
	movq	%rsi, %rdx	# D.45208, D.45208
	salq	$5, %rdx	#, D.45208
	addq	%rdx, %rax	# D.45208, D.45209
.L1263:
	movq	(%rax), %rax	# MEM[(struct mem_section *)_63], map
	salq	$6, %rcx	#, D.45208
	andq	$-4, %rax	#, map
	addq	%rcx, %rax	# D.45208, page
	movq	(%rax), %rdx	# MEM[(const long unsigned int *)page_68], D.45208
	andb	$128, %dh	#, D.45208
	jne	.L1287	#,
	movq	%rax, %r11	# page, D.45210
.L1265:
	movq	(%rdi), %r9	# _50->cpu_slab, tcp_ptr__
#APP
# 2684 "mm/slub.c" 1
	add %gs:this_cpu_off, %r9	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r9), %rdx	# c_85->tid, __o2
	cmpq	16(%r9), %r11	# c_85->page, D.45210
	jne	.L1266	#,
	movq	(%r9), %rcx	# c_85->freelist, D.45213
	movslq	32(%rdi), %rax	# MEM[(struct kmem_cache *)_50 + 32B], D.45215
	movq	%rcx, (%rbx,%rax)	# D.45213, *_94
	leaq	1(%rdx), %rcx	#, D.45208
	movq	(%rdi), %r8	# _50->cpu_slab, D.45212
	movq	(%r9), %rax	# c_85->freelist, c_85->freelist
#APP
# 2692 "mm/slub.c" 1
	661:
	leaq (%r8),%rsi	# _97->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%r8)	# _97->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1265	#,
.L1256:
	popq	%rbx	#
	popq	%rbp	#
	ret
.L1286:
	movabsq	$131939247849472, %rax	#, iftmp.154
	movl	$2147483648, %edx	#, tmp128
	addq	%rsi, %rdx	# x, y
	cmovc	phys_base(%rip), %rax	# phys_base,, iftmp.154
	addq	%rdx, %rax	# y, x
	movq	%rax, %rcx	# x, __pfn
	movq	%rax, %rdx	# x, D.45208
	shrq	$34, %rax	#, D.45208
	movq	mem_section(,%rax,8), %rax	# mem_section, D.45209
	shrq	$12, %rcx	#, __pfn
	shrq	$27, %rdx	#, D.45208
	testq	%rax, %rax	# D.45209
	je	.L1259	#,
	andl	$127, %edx	#, D.45208
	salq	$5, %rdx	#, D.45208
	addq	%rdx, %rax	# D.45208, D.45209
.L1259:
	movq	(%rax), %rax	# MEM[(struct mem_section *)_29], map
	salq	$6, %rcx	#, D.45208
	andq	$-4, %rax	#, map
	addq	%rcx, %rax	# D.45208, page
	movq	(%rax), %rdx	# MEM[(const long unsigned int *)page_34], D.45208
	andb	$128, %dh	#, D.45208
	jne	.L1288	#,
.L1260:
	movq	48(%rax), %rdi	# _48->D.11450.slab_cache, D.45211
	jmp	.L1257	#
.L1266:
	movq	%r10, %rcx	# D.45207,
	movq	%rbx, %rdx	# x,
	movq	%r11, %rsi	# D.45210,
	call	__slab_free	#
	jmp	.L1256	#
.L1287:
	movq	48(%rax), %r11	# page_68->D.11450.first_page, D.45210
	movq	(%rax), %rdx	# MEM[(const long unsigned int *)page_68], D.45208
	andb	$128, %dh	#, D.45208
	cmove	%rax, %r11	# page,, D.45210
	jmp	.L1265	#
.L1288:
	movq	48(%rax), %rdx	# page_34->D.11450.first_page, head
	movq	(%rax), %rcx	# MEM[(const long unsigned int *)page_34], D.45208
	andb	$128, %ch	#, D.45208
	cmovne	%rdx, %rax	# D.45210,, head, D.45210
	jmp	.L1260	#
	.size	kmem_cache_free, .-kmem_cache_free
	.p2align 4,,15
	.type	free_kmem_cache_nodes, @function
free_kmem_cache_nodes:
	pushq	%rbp	#
	movl	$64, %esi	#,
	movq	%rsp, %rbp	#,
	pushq	%r14	#
	movq	%rdi, %r14	# s, s
	pushq	%r13	#
	movq	$node_states+16, %rdi	#,
	movl	$64, %r13d	#, tmp79
	pushq	%r12	#
	pushq	%rbx	#
	movl	$64, %ebx	#, node
	call	find_first_bit	#
	cmpl	$64, %eax	#, D.45222
	cmovle	%eax, %ebx	# D.45222,, node
	cmpl	$64, %ebx	#, node
	je	.L1289	#,
	.p2align 4,,10
	.p2align 3
.L1300:
	movslq	%ebx, %rax	# node, D.45221
	leaq	(%r14,%rax,8), %r12	#, D.45224
	movq	192(%r12), %rsi	# MEM[(struct kmem_cache *)_22 + 192B], n
	testq	%rsi, %rsi	# n
	je	.L1291	#,
	movq	kmem_cache_node(%rip), %rdi	# kmem_cache_node,
	call	kmem_cache_free	#
.L1291:
	addl	$1, %ebx	#, D.45223
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movq	$0, 192(%r12)	#, MEM[(struct kmem_cache *)_22 + 192B]
	movslq	%ebx, %rdx	# D.45223, D.45222
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45222
	movl	%eax, %ebx	# D.45222, node
	cmovg	%r13d, %ebx	# node,, tmp79, node
	cmpl	$64, %ebx	#, node
	jne	.L1300	#,
.L1289:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%rbp	#
	ret
	.size	free_kmem_cache_nodes, .-free_kmem_cache_nodes
	.p2align 4,,15
	.globl	kfree
	.type	kfree, @function
kfree:
	pushq	%rbp	#
	cmpq	$16, %rdi	#, x
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	pushq	%rbx	#
	jbe	.L1302	#,
	movabsq	$131939247849472, %rax	#, iftmp.154
	movl	$2147483648, %edx	#, tmp113
	addq	%rdi, %rdx	# x, y
	cmovc	phys_base(%rip), %rax	# phys_base,, iftmp.154
	addq	%rax, %rdx	# iftmp.154, x
	movq	%rdx, %rcx	# x, __pfn
	movq	%rdx, %rsi	# x, D.45227
	shrq	$34, %rdx	#, D.45227
	movq	mem_section(,%rdx,8), %rax	# mem_section, D.45231
	shrq	$12, %rcx	#, __pfn
	shrq	$27, %rsi	#, D.45227
	testq	%rax, %rax	# D.45231
	je	.L1306	#,
	andl	$127, %esi	#, D.45227
	movq	%rsi, %rdx	# D.45227, D.45227
	salq	$5, %rdx	#, D.45227
	addq	%rdx, %rax	# D.45227, D.45231
.L1306:
	movq	(%rax), %rax	# MEM[(struct mem_section *)_37], map
	salq	$6, %rcx	#, D.45227
	andq	$-4, %rax	#, map
	addq	%rcx, %rax	# D.45227, page
	movq	(%rax), %rdx	# MEM[(const long unsigned int *)page_42], D.45227
	andb	$128, %dh	#, D.45227
	jne	.L1323	#,
	movq	%rax, %r10	# page, D.45232
.L1307:
	movq	(%r10), %rax	# MEM[(const long unsigned int *)_56], D.45227
	testb	$-128, %al	#, D.45227
	je	.L1324	#,
	movq	8(%rbp), %r12	#, D.45229
	movq	48(%r10), %r11	# _56->D.11450.slab_cache, D.45230
.L1311:
	movq	(%r11), %r9	# _24->cpu_slab, tcp_ptr__
#APP
# 2684 "mm/slub.c" 1
	add %gs:this_cpu_off, %r9	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r9), %rdx	# c_72->tid, __o2
	cmpq	16(%r9), %r10	# c_72->page, D.45232
	jne	.L1312	#,
	movq	(%r9), %rcx	# c_72->freelist, D.45237
	movq	%rdi, %rbx	# x, x
	movslq	32(%r11), %rax	# MEM[(struct kmem_cache *)_24 + 32B], D.45238
	movq	%rcx, (%rdi,%rax)	# D.45237, *_81
	leaq	1(%rdx), %rcx	#, D.45227
	movq	(%r11), %r8	# _24->cpu_slab, D.45236
	movq	(%r9), %rax	# c_72->freelist, c_72->freelist
#APP
# 2692 "mm/slub.c" 1
	661:
	leaq (%r8),%rsi	# _84->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%r8)	# _84->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1311	#,
.L1302:
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
.L1323:
	movq	48(%rax), %r10	# page_42->D.11450.first_page, D.45232
	movq	(%rax), %rdx	# MEM[(const long unsigned int *)page_42], D.45227
	andb	$128, %dh	#, D.45227
	cmove	%rax, %r10	# page,, D.45232
	jmp	.L1307	#
.L1312:
	movq	%rdi, %rdx	# x,
	movq	%r12, %rcx	# D.45229,
	movq	%r10, %rsi	# D.45232,
	movq	%r11, %rdi	# D.45230,
	call	__slab_free	#
	jmp	.L1302	#
.L1324:
	testq	$49152, (%r10)	#, MEM[(struct page *)_56]
	je	.L1325	#,
	movq	(%r10), %rax	# MEM[(const long unsigned int *)_56], D.45227
	xorl	%esi, %esi	# D.45233
	testb	$64, %ah	#, D.45227
	je	.L1310	#,
	movl	104(%r10), %esi	# MEM[(struct page *)_56 + 64B].D.11444.lru.prev, D.45233
.L1310:
	movq	%r10, %rdi	# D.45232,
	call	__free_kmem_pages	#
	jmp	.L1302	#
.L1325:
#APP
# 3380 "mm/slub.c" 1
	1:	ud2
.pushsection __bug_table,"a"
2:	.long 1b - 2b, .LC2 - 2b	#
	.word 3380, 0	#
	.org 2b+12	#
.popsection
# 0 "" 2
#NO_APP
	.size	kfree, .-kfree
	.section	.rodata.str1.8
	.align 8
.LC56:
	.string	"\0013SLUB %s: %ld partial slabs counted but counter=%ld\n"
	.align 8
.LC57:
	.string	"\0013SLUB: %s %ld slabs counted but counter=%ld\n"
	.text
	.p2align 4,,15
	.type	validate_store, @function
validate_store:
	pushq	%rbp	#
	movq	$-22, %rax	#, D.45279
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	subq	$40, %rsp	#,
	movq	%rdx, -80(%rbp)	# length, %sfp
	cmpb	$49, (%rsi)	#, *buf_4(D)
	je	.L1346	#,
.L1343:
	addq	$40, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L1346:
	movzwl	48(%rdi), %eax	# MEM[(struct kmem_cache *)s_6(D) + 48B], D.45277
	movq	%rdi, %r12	# s, s
	movl	$208, %esi	#,
	addq	$63, %rax	#, D.45277
	shrq	$6, %rax	#, D.45277
	leaq	0(,%rax,8), %rdi	#, D.45277
	call	__kmalloc	#
	testq	%rax, %rax	# D.45280
	movq	%rax, %r13	#, D.45280
	je	.L1339	#,
	movl	$1, %ecx	#,
	movl	$32, %r8d	#,
	movq	%r12, %rdx	# s,
	movq	$flush_cpu_slab, %rsi	#,
	movq	$has_cpu_slab, %rdi	#,
	call	on_each_cpu_cond	#
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	call	find_first_bit	#
	movl	$64, %ecx	#, node
	cmpl	$64, %eax	#, D.45277
	cmovg	%ecx, %eax	# node,, node, node
	cmpl	$64, %eax	#, node
	movl	%eax, -52(%rbp)	# node, %sfp
	je	.L1328	#,
	movq	$0, -72(%rbp)	#, %sfp
	.p2align 4,,10
	.p2align 3
.L1336:
	movslq	-52(%rbp), %rax	# %sfp, node
	movq	192(%r12,%rax,8), %rax	# s_6(D)->node, D.45281
	movq	%rax, %rbx	# D.45281, D.45281
	movq	%rax, %rdi	# D.45281,
	movq	%rax, -48(%rbp)	# D.45281, %sfp
	call	_raw_spin_lock_irqsave	#
	movq	16(%rbx), %rdx	# _105->partial.next, __mptr
	leaq	16(%rbx), %r14	#, D.45278
	xorl	%ebx, %ebx	# count
	movq	%rax, -64(%rbp)	#, %sfp
	leaq	-32(%rdx), %r15	#, page
	cmpq	%rdx, %r14	# __mptr, D.45278
	je	.L1329	#,
	.p2align 4,,10
	.p2align 3
.L1330:
	movq	%r13, %rdx	# D.45280,
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	validate_slab_slab	#
	movq	32(%r15), %rdx	# page_85->D.11444.lru.next, __mptr
	addq	$1, %rbx	#, count
	leaq	-32(%rdx), %r15	#, page
	cmpq	%rdx, %r14	# __mptr, D.45278
	jne	.L1330	#,
.L1329:
	movq	-48(%rbp), %rax	# %sfp, D.45281
	movq	8(%rax), %rcx	# _105->nr_partial, D.45277
	cmpq	%rcx, %rbx	# D.45277, count
	jne	.L1347	#,
.L1331:
	testb	$1, 10(%r12)	#, s_6(D)->flags
	je	.L1332	#,
	movq	-48(%rbp), %rax	# %sfp, D.45281
	movq	48(%rax), %rdx	# _105->full.next, __mptr
	leaq	48(%rax), %r15	#, D.45278
	leaq	-32(%rdx), %r14	#, page
	cmpq	%rdx, %r15	# __mptr, D.45278
	je	.L1333	#,
	.p2align 4,,10
	.p2align 3
.L1334:
	movq	%r13, %rdx	# D.45280,
	movq	%r14, %rsi	# page,
	movq	%r12, %rdi	# s,
	call	validate_slab_slab	#
	movq	32(%r14), %rdx	# page_23->D.11444.lru.next, __mptr
	addq	$1, %rbx	#, count
	leaq	-32(%rdx), %r14	#, page
	cmpq	%rdx, %r15	# __mptr, D.45278
	jne	.L1334	#,
.L1333:
	movq	-48(%rbp), %rax	# %sfp, D.45281
	movq	32(%rax), %rax	# MEM[(volatile long int *)_105 + 32B], D.45284
	cmpq	%rax, %rbx	# D.45284, count
	jne	.L1348	#,
.L1332:
	movq	-64(%rbp), %rsi	# %sfp,
	movslq	%ebx, %rbx	# count, D.45277
	movq	-48(%rbp), %rdi	# %sfp,
	call	_raw_spin_unlock_irqrestore	#
	movl	-52(%rbp), %edx	# %sfp, D.45276
	movl	$64, %esi	#,
	addq	%rbx, -72(%rbp)	# D.45277, %sfp
	movq	$node_states+16, %rdi	#,
	addl	$1, %edx	#, D.45276
	movslq	%edx, %rdx	# D.45276, D.45277
	call	find_next_bit	#
	movl	$64, %ecx	#, tmp147
	cmpl	$64, %eax	#, D.45277
	cmovg	%ecx, %eax	# node,, tmp147, node
	cmpl	$64, %eax	#, node
	movl	%eax, -52(%rbp)	# node, %sfp
	jne	.L1336	#,
	movq	%r13, %rdi	# D.45280,
	call	kfree	#
	movl	-72(%rbp), %eax	# %sfp,
	testl	%eax, %eax	#
	js	.L1349	#,
.L1337:
	movslq	-80(%rbp), %rax	# %sfp, D.45279
	addq	$40, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L1339:
	movq	$-12, %rax	#, D.45279
	jmp	.L1343	#
.L1349:
	movslq	-72(%rbp), %rax	# %sfp, D.45279
	jmp	.L1343	#
.L1328:
	movq	%r13, %rdi	# D.45280,
	call	kfree	#
	jmp	.L1337	#
.L1348:
	movq	-48(%rbp), %rax	# %sfp, D.45281
	movq	%rbx, %rdx	# count,
	movq	$.LC57, %rdi	#,
	movq	96(%r12), %rsi	# s_6(D)->name, s_6(D)->name
	movq	32(%rax), %rcx	# MEM[(volatile long int *)_105 + 32B], D.45284
	xorl	%eax, %eax	#
	call	printk	#
	jmp	.L1332	#
.L1347:
	movq	96(%r12), %rsi	# s_6(D)->name, s_6(D)->name
	movq	%rbx, %rdx	# count,
	movq	$.LC56, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	jmp	.L1331	#
	.size	validate_store, .-validate_store
	.section	.rodata.str1.1
.LC58:
	.string	"%07d"
	.text
	.p2align 4,,15
	.type	sysfs_slab_add, @function
sysfs_slab_add:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	movq	%rdi, %rbx	# s, s
	call	slab_unmergeable	#
	testl	%eax, %eax	# unmergeable
	movl	%eax, %r14d	#, unmergeable
	je	.L1351	#,
	movq	slab_kset(%rip), %rax	# slab_kset, tmp99
	movq	96(%rbx), %rsi	# s_9(D)->name, s_9(D)->name
	leaq	24(%rax), %rdi	#, D.45295
	call	sysfs_remove_link	#
	movq	96(%rbx), %r13	# s_9(D)->name, name
.L1352:
	movq	slab_kset(%rip), %rax	# slab_kset, slab_kset
	leaq	120(%rbx), %r15	#, D.45295
	xorl	%edx, %edx	#
	movq	%r13, %r8	# name,
	movq	$.LC34, %rcx	#,
	movq	%r15, %rdi	# D.45295,
	movq	$slab_ktype, %rsi	#,
	movq	%rax, 152(%rbx)	# slab_kset, s_9(D)->kobj.kset
	xorl	%eax, %eax	#
	call	kobject_init_and_add	#
	testl	%eax, %eax	# err
	movl	%eax, %r12d	#, err
	jne	.L1358	#,
	movq	$slab_attr_group, %rsi	#,
	movq	%r15, %rdi	# D.45295,
	call	sysfs_create_group	#
	testl	%eax, %eax	# err
	movl	%eax, %r12d	#, err
	jne	.L1359	#,
	xorl	%esi, %esi	#
	movq	%r15, %rdi	# D.45295,
	call	kobject_uevent	#
	testl	%r14d, %r14d	# unmergeable
	je	.L1375	#,
.L1366:
	popq	%rbx	#
	movl	%r12d, %eax	# err,
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1359:
	movq	%r15, %rdi	# D.45295,
	call	kobject_del	#
.L1358:
	movq	%r15, %rdi	# D.45295,
	call	kobject_put	#
	testl	%r14d, %r14d	# unmergeable
	jne	.L1366	#,
.L1361:
	movq	%r13, %rdi	# name,
	call	kfree	#
	popq	%rbx	#
	movl	%r12d, %eax	# err,
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1351:
	movq	kmalloc_caches+48(%rip), %rdi	# kmalloc_caches,
	movl	$208, %esi	#,
	call	kmem_cache_alloc	#
	testq	%rax, %rax	# name
	movq	%rax, %r13	#, name
	je	.L1376	#,
	movb	$58, (%rax)	#, MEM[(char *)name_34]
	leaq	1(%rax), %rcx	#, p
	movq	8(%rbx), %rax	# MEM[(long unsigned int *)s_9(D) + 8B], D.45293
	movq	%rcx, %rdx	# p, p
	testb	$64, %ah	#, D.45293
	je	.L1354	#,
	movb	$100, 1(%r13)	#, MEM[(char *)name_34 + 1B]
	leaq	2(%r13), %rdx	#, p
	movq	8(%rbx), %rax	# MEM[(long unsigned int *)s_9(D) + 8B], D.45293
.L1354:
	testl	$131072, %eax	#, D.45293
	je	.L1355	#,
	movb	$97, (%rdx)	#, *p_44
	addq	$1, %rdx	#, p
	movq	8(%rbx), %rax	# MEM[(long unsigned int *)s_9(D) + 8B], D.45293
.L1355:
	testb	$1, %ah	#, D.45293
	je	.L1356	#,
	movb	$70, (%rdx)	#, *p_48
	addq	$1, %rdx	#, p
.L1356:
	leaq	1(%rdx), %r12	#, p
	movb	$116, (%rdx)	#, *p_50
	cmpq	%r12, %rcx	# p, p
	je	.L1357	#,
	leaq	2(%rdx), %r12	#, p
	movb	$45, 1(%rdx)	#, MEM[(char *)p_50 + 1B]
.L1357:
	movl	24(%rbx), %edx	# MEM[(int *)s_9(D) + 24B], MEM[(int *)s_9(D) + 24B]
	movq	%r12, %rdi	# p,
	xorl	%eax, %eax	#
	movq	$.LC58, %rsi	#,
	call	sprintf	#
	cltq
	addq	%rax, %r12	# D.45299, p
	leaq	63(%r13), %rax	#, D.45300
	cmpq	%rax, %r12	# D.45300, p
	jbe	.L1352	#,
#APP
# 5180 "mm/slub.c" 1
	1:	ud2
.pushsection __bug_table,"a"
2:	.long 1b - 2b, .LC2 - 2b	#
	.word 5180, 0	#
	.org 2b+12	#
.popsection
# 0 "" 2
	.p2align 4,,10
	.p2align 3
#NO_APP
.L1375:
	movq	96(%rbx), %rsi	# s_9(D)->name, s_9(D)->name
	movq	%rbx, %rdi	# s,
	call	sysfs_slab_alias	#
	jmp	.L1361	#
.L1376:
#APP
# 5152 "mm/slub.c" 1
	1:	ud2
.pushsection __bug_table,"a"
2:	.long 1b - 2b, .LC2 - 2b	#
	.word 5152, 0	#
	.org 2b+12	#
.popsection
# 0 "" 2
#NO_APP
	.size	sysfs_slab_add, .-sysfs_slab_add
	.section	.rodata.str1.1
.LC59:
	.string	"%lu"
.LC60:
	.string	" N%d=%lu"
	.text
	.p2align 4,,15
	.type	show_slab_objects, @function
show_slab_objects:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movq	%rsi, %r15	# buf, buf
	pushq	%r14	#
	movl	$32976, %esi	#,
	movq	%rdx, %r14	# flags, flags
	pushq	%r13	#
	movq	%rdi, %r13	# s, s
	pushq	%r12	#
	pushq	%rbx	#
	subq	$40, %rsp	#,
	movq	%rdx, -56(%rbp)	# flags, %sfp
	movslq	nr_node_ids(%rip), %rdi	# nr_node_ids, D.45305
	salq	$3, %rdi	#, D.45305
	call	__kmalloc	#
	testq	%rax, %rax	# D.45316
	movq	%rax, %rbx	#, D.45316
	je	.L1401	#,
	xorl	%r12d, %r12d	# total
	andl	$4, %r14d	#, flags
	je	.L1379	#,
	movq	-56(%rbp), %rax	# %sfp, flags
	movl	$-1, %edx	#, cpu
	movq	%rax, %r14	# flags, D.45305
	andl	$8, %eax	#, D.45305
	andl	$16, %r14d	#, D.45305
	movq	%rax, -48(%rbp)	# D.45305, %sfp
	.p2align 4,,10
	.p2align 3
.L1380:
	movq	cpu_possible_mask(%rip), %rdi	# cpu_possible_mask,
	addl	$1, %edx	#, D.45313
	movl	$64, %esi	#,
	movslq	%edx, %rdx	# D.45313, D.45305
	call	find_next_bit	#
	cmpl	nr_cpu_ids(%rip), %eax	# nr_cpu_ids, D.45305
	movl	%eax, %edx	# D.45305, cpu
	jge	.L1379	#,
	cltq
	movq	0(%r13), %rcx	# s_43(D)->cpu_slab, D.45306
	addq	__per_cpu_offset(,%rax,8), %rcx	# __per_cpu_offset, D.45306
	movq	16(%rcx), %rsi	# _48->page, page
	testq	%rsi, %rsi	# page
	je	.L1380	#,
	movq	(%rsi), %rax	# MEM[(const struct page *)page_49], D.45305
	shrq	$39, %rax	#, D.45305
	movl	%eax, %edi	# D.45305, D.45313
	andl	$63, %edi	#, D.45313
	testq	%r14, %r14	# D.45305
	je	.L1382	#,
	movzwl	26(%rsi), %eax	# *page_49, *page_49
	andl	$32767, %eax	#, D.45305
.L1383:
	movslq	%edi, %rsi	# D.45313, D.45305
	addq	%rax, %r12	# D.45305, total
	addq	%rax, (%rbx,%rsi,8)	# D.45305, *_61
	movq	24(%rcx), %rsi	# _48->partial, page
	testq	%rsi, %rsi	# page
	je	.L1380	#,
	movq	(%rsi), %rcx	# MEM[(const struct page *)page_65], D.45305
	shrq	$39, %rcx	#, D.45305
	andl	$63, %ecx	#, D.45313
	testq	%r14, %r14	# D.45305
	je	.L1384	#,
	cmpb	$0, __warned.31911(%rip)	#, __warned
	je	.L1437	#,
.L1385:
	movslq	%ecx, %rcx	# D.45313, D.45305
	addq	%rax, %r12	# D.45305, total
	addq	%rax, (%rbx,%rcx,8)	# D.45305, *_85
	jmp	.L1380	#
	.p2align 4,,10
	.p2align 3
.L1379:
	testb	$1, -56(%rbp)	#, %sfp
	jne	.L1438	#,
	testb	$2, -56(%rbp)	#, %sfp
	jne	.L1439	#,
.L1389:
	movq	%r12, %rdx	# total,
	movq	$.LC59, %rsi	#,
	movq	%r15, %rdi	# buf,
	xorl	%eax, %eax	#
	movl	$64, %r12d	#, node
	call	sprintf	#
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movl	%eax, %r13d	#, x
	call	find_first_bit	#
	cmpl	$64, %eax	#, D.45305
	cmovle	%eax, %r12d	# D.45305,, node
	cmpl	$64, %r12d	#, node
	je	.L1398	#,
	movl	$64, %r14d	#, tmp237
	jmp	.L1400	#
	.p2align 4,,10
	.p2align 3
.L1399:
	addl	$1, %r12d	#, D.45313
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movslq	%r12d, %rdx	# D.45313, D.45305
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45305
	movl	%eax, %r12d	# D.45305, node
	cmovg	%r14d, %r12d	# node,, tmp237, node
	cmpl	$64, %r12d	#, node
	je	.L1398	#,
.L1400:
	movslq	%r12d, %rax	# node, D.45305
	movq	(%rbx,%rax,8), %rcx	# *_140, D.45305
	testq	%rcx, %rcx	# D.45305
	je	.L1399	#,
	movslq	%r13d, %rdi	# x, D.45311
	movl	%r12d, %edx	# node,
	movq	$.LC60, %rsi	#,
	addq	%r15, %rdi	# buf, D.45312
	xorl	%eax, %eax	#
	call	sprintf	#
	addl	%eax, %r13d	# D.45313, x
	jmp	.L1399	#
	.p2align 4,,10
	.p2align 3
.L1398:
	movq	%rbx, %rdi	# D.45316,
	call	kfree	#
	movslq	%r13d, %rax	# x, D.45311
	movl	$10, %edx	#,
	addl	$1, %r13d	#, D.45313
	movw	%dx, (%r15,%rax)	#, MEM[(void *)_152]
	movslq	%r13d, %rax	# D.45313, D.45304
.L1378:
	addq	$40, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1382:
	cmpq	$0, -48(%rbp)	#, %sfp
	movl	$1, %eax	#, D.45305
	je	.L1383	#,
	movzwl	24(%rsi), %eax	# page_49->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.45305
	jmp	.L1383	#
	.p2align 4,,10
	.p2align 3
.L1384:
	cmpq	$0, -48(%rbp)	#, %sfp
	je	.L1386	#,
	cmpb	$0, __warned.31916(%rip)	#, __warned
	jne	.L1385	#,
	movl	$4323, %esi	#,
	movq	$.LC2, %rdi	#,
	movl	%ecx, -76(%rbp)	# D.45313, %sfp
	movq	%rax, -72(%rbp)	# D.45305, %sfp
	movl	%edx, -64(%rbp)	# cpu, %sfp
	call	warn_slowpath_null	#
	movb	$1, __warned.31916(%rip)	#, __warned
	movl	-64(%rbp), %edx	# %sfp, cpu
	movq	-72(%rbp), %rax	# %sfp, D.45305
	movl	-76(%rbp), %ecx	# %sfp, D.45313
	jmp	.L1385	#
	.p2align 4,,10
	.p2align 3
.L1386:
	movslq	40(%rsi), %rax	# page_65->D.11444.D.11439.pages, D.45305
	jmp	.L1385	#
	.p2align 4,,10
	.p2align 3
.L1438:
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	call	find_first_bit	#
	movl	$64, %edx	#, node
	cmpl	$64, %eax	#, D.45305
	cmovle	%eax, %edx	# D.45305,, node
	cmpl	$64, %edx	#, node
	je	.L1389	#,
	movq	-56(%rbp), %rax	# %sfp, flags
	movq	%rax, %r14	# flags, D.45305
	andl	$8, %eax	#, D.45305
	andl	$16, %r14d	#, D.45305
	movq	%rax, -48(%rbp)	# D.45305, %sfp
	jmp	.L1393	#
	.p2align 4,,10
	.p2align 3
.L1440:
	movq	40(%rdi), %rax	# MEM[(volatile long int *)_251 + 40B], D.45318
.L1391:
	cltq
	addl	$1, %edx	#, D.45313
	movl	$64, %esi	#,
	addq	%rax, (%rbx,%rcx,8)	# D.45305, *_108
	movslq	%edx, %rdx	# D.45313, D.45305
	movq	$node_states+16, %rdi	#,
	addq	%rax, %r12	# D.45305, total
	call	find_next_bit	#
	movl	$64, %edx	#, node
	cmpl	$64, %eax	#, D.45305
	cmovle	%eax, %edx	# D.45305,, node
	cmpl	$64, %edx	#, node
	je	.L1389	#,
.L1393:
	movslq	%edx, %rcx	# node, D.45305
	testq	%r14, %r14	# D.45305
	movq	192(%r13,%rcx,8), %rdi	# s_43(D)->node, D.45317
	jne	.L1440	#,
	cmpq	$0, -48(%rbp)	#, %sfp
	jne	.L1441	#,
	movq	32(%rdi), %rax	# MEM[(volatile long int *)_251 + 32B], D.45318
	jmp	.L1391	#
	.p2align 4,,10
	.p2align 3
.L1441:
	movq	40(%rdi), %rax	# MEM[(volatile long int *)_251 + 40B], D.45318
	movq	$count_free, %rsi	#,
	movq	%rcx, -72(%rbp)	# D.45305, %sfp
	movl	%edx, -64(%rbp)	# node, %sfp
	movq	%rax, -56(%rbp)	# D.45318, %sfp
	call	count_partial	#
	movl	-56(%rbp), %esi	# %sfp, x
	movl	-64(%rbp), %edx	# %sfp, node
	movq	-72(%rbp), %rcx	# %sfp, D.45305
	subl	%eax, %esi	# D.45305, x
	movl	%esi, %eax	# x, x
	jmp	.L1391	#
	.p2align 4,,10
	.p2align 3
.L1439:
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	call	find_first_bit	#
	movl	$64, %edx	#, node
	cmpl	$64, %eax	#, D.45305
	cmovle	%eax, %edx	# D.45305,, node
	cmpl	$64, %edx	#, node
	je	.L1389	#,
	movq	-56(%rbp), %rax	# %sfp, flags
	movq	%rax, %r14	# flags, D.45305
	andl	$8, %eax	#, D.45305
	andl	$16, %r14d	#, D.45305
	movq	%rax, -48(%rbp)	# D.45305, %sfp
	jmp	.L1397	#
	.p2align 4,,10
	.p2align 3
.L1394:
	cmpq	$0, -48(%rbp)	#, %sfp
	jne	.L1442	#,
	movl	8(%rdi), %eax	# _263->nr_partial, x
.L1395:
	cltq
	addl	$1, %edx	#, D.45313
	movl	$64, %esi	#,
	addq	%rax, (%rbx,%rcx,8)	# D.45305, *_129
	movslq	%edx, %rdx	# D.45313, D.45305
	movq	$node_states+16, %rdi	#,
	addq	%rax, %r12	# D.45305, total
	call	find_next_bit	#
	movl	$64, %edx	#, node
	cmpl	$64, %eax	#, D.45305
	cmovle	%eax, %edx	# D.45305,, node
	cmpl	$64, %edx	#, node
	je	.L1389	#,
.L1397:
	movslq	%edx, %rcx	# node, D.45305
	testq	%r14, %r14	# D.45305
	movq	192(%r13,%rcx,8), %rdi	# s_43(D)->node, D.45317
	je	.L1394	#,
	movq	$count_total, %rsi	#,
	movq	%rcx, -64(%rbp)	# D.45305, %sfp
	movl	%edx, -56(%rbp)	# node, %sfp
	call	count_partial	#
	movl	-56(%rbp), %edx	# %sfp, node
	movq	-64(%rbp), %rcx	# %sfp, D.45305
	jmp	.L1395	#
	.p2align 4,,10
	.p2align 3
.L1442:
	movq	$count_inuse, %rsi	#,
	movq	%rcx, -64(%rbp)	# D.45305, %sfp
	movl	%edx, -56(%rbp)	# node, %sfp
	call	count_partial	#
	movl	-56(%rbp), %edx	# %sfp, node
	movq	-64(%rbp), %rcx	# %sfp, D.45305
	jmp	.L1395	#
.L1401:
	movq	$-12, %rax	#, D.45304
	jmp	.L1378	#
.L1437:
	movl	$4321, %esi	#,
	movq	$.LC2, %rdi	#,
	movl	%ecx, -76(%rbp)	# D.45313, %sfp
	movq	%rax, -72(%rbp)	# D.45305, %sfp
	movl	%edx, -64(%rbp)	# cpu, %sfp
	call	warn_slowpath_null	#
	movb	$1, __warned.31911(%rip)	#, __warned
	movl	-64(%rbp), %edx	# %sfp, cpu
	movq	-72(%rbp), %rax	# %sfp, D.45305
	movl	-76(%rbp), %ecx	# %sfp, D.45313
	jmp	.L1385	#
	.size	show_slab_objects, .-show_slab_objects
	.p2align 4,,15
	.type	slabs_show, @function
slabs_show:
	pushq	%rbp	#
	movl	$1, %edx	#,
	movq	%rsp, %rbp	#,
	call	show_slab_objects	#
	popq	%rbp	#
	ret
	.size	slabs_show, .-slabs_show
	.p2align 4,,15
	.type	total_objects_show, @function
total_objects_show:
	pushq	%rbp	#
	movl	$17, %edx	#,
	movq	%rsp, %rbp	#,
	call	show_slab_objects	#
	popq	%rbp	#
	ret
	.size	total_objects_show, .-total_objects_show
	.p2align 4,,15
	.type	cpu_slabs_show, @function
cpu_slabs_show:
	pushq	%rbp	#
	movl	$4, %edx	#,
	movq	%rsp, %rbp	#,
	call	show_slab_objects	#
	popq	%rbp	#
	ret
	.size	cpu_slabs_show, .-cpu_slabs_show
	.p2align 4,,15
	.type	partial_show, @function
partial_show:
	pushq	%rbp	#
	movl	$2, %edx	#,
	movq	%rsp, %rbp	#,
	call	show_slab_objects	#
	popq	%rbp	#
	ret
	.size	partial_show, .-partial_show
	.p2align 4,,15
	.type	objects_partial_show, @function
objects_partial_show:
	pushq	%rbp	#
	movl	$10, %edx	#,
	movq	%rsp, %rbp	#,
	call	show_slab_objects	#
	popq	%rbp	#
	ret
	.size	objects_partial_show, .-objects_partial_show
	.p2align 4,,15
	.type	objects_show, @function
objects_show:
	pushq	%rbp	#
	movl	$9, %edx	#,
	movq	%rsp, %rbp	#,
	call	show_slab_objects	#
	popq	%rbp	#
	ret
	.size	objects_show, .-objects_show
	.section	.rodata.str1.1
.LC61:
	.string	"%7ld "
.LC62:
	.string	"%pS"
.LC63:
	.string	" age=%ld/%ld/%ld"
.LC64:
	.string	" age=%ld"
.LC65:
	.string	" pid=%ld-%ld"
.LC66:
	.string	" pid=%ld"
	.text
	.p2align 4,,15
	.type	list_locations, @function
list_locations:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	movl	%edx, %r14d	# alloc, alloc
	pushq	%r13	#
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	movq	%rsi, %rbx	# buf, buf
	movl	$208, %esi	#,
	subq	$56, %rsp	#,
	movq	$0, -64(%rbp)	#, t.max
	movzwl	48(%rdi), %edi	# MEM[(struct kmem_cache *)s_30(D) + 48B], D.45348
	movq	$0, -56(%rbp)	#, t.count
	movq	$0, -48(%rbp)	#, t.loc
	addq	$63, %rdi	#, D.45348
	shrq	$6, %rdi	#, D.45348
	salq	$3, %rdi	#, D.45348
	call	__kmalloc	#
	testq	%rax, %rax	# D.45354
	movq	%rax, %r13	#, D.45354
	je	.L1458	#,
	leaq	-64(%rbp), %rdi	#, tmp274
	movl	$524496, %edx	#,
	movl	$56, %esi	#,
	call	alloc_loc_track	#
	testl	%eax, %eax	# D.45347
	jne	.L1499	#,
.L1458:
	movq	%r13, %rdi	# D.45354,
	call	kfree	#
	movl	$2681, %edi	#,
	movb	$0, 14(%rbx)	#, MEM[(void *)buf_69(D)]
	movabsq	$7863397576860792143, %rax	#, tmp273
	movl	$1919905125, 8(%rbx)	#, MEM[(void *)buf_69(D)]
	movq	%rax, (%rbx)	# tmp273, MEM[(void *)buf_69(D)]
	movl	$14, %eax	#, D.45347
	movw	%di, 12(%rbx)	#, MEM[(void *)buf_69(D)]
.L1457:
	addq	$56, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1499:
	movl	$32, %r8d	#,
	movl	$1, %ecx	#,
	movq	%r12, %rdx	# s,
	movq	$flush_cpu_slab, %rsi	#,
	movq	$has_cpu_slab, %rdi	#,
	call	on_each_cpu_cond	#
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	call	find_first_bit	#
	movl	$64, %esi	#, node
	cmpl	$64, %eax	#, D.45348
	cmovg	%esi, %eax	# node,, node, node
	cmpl	$64, %eax	#, node
	movl	%eax, -68(%rbp)	# node, %sfp
	je	.L1469	#,
	movq	%rbx, -96(%rbp)	# buf, %sfp
	jmp	.L1493	#
	.p2align 4,,10
	.p2align 3
.L1462:
	movl	-68(%rbp), %edx	# %sfp, D.45347
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	addl	$1, %edx	#, D.45347
	movslq	%edx, %rdx	# D.45347, D.45348
	call	find_next_bit	#
	movl	$64, %ecx	#, tmp282
	cmpl	$64, %eax	#, D.45348
	cmovg	%ecx, %eax	# node,, tmp282, node
	cmpl	$64, %eax	#, node
	movl	%eax, -68(%rbp)	# node, %sfp
	je	.L1500	#,
.L1493:
	movslq	-68(%rbp), %rax	# %sfp, node
	movq	192(%r12,%rax,8), %rbx	# s_30(D)->node, D.45360
	movq	32(%rbx), %rax	# MEM[(volatile long int *)_237 + 32B], D.45356
	testq	%rax, %rax	# D.45356
	je	.L1462	#,
	movq	%rbx, %rdi	# D.45360,
	call	_raw_spin_lock_irqsave	#
	movq	16(%rbx), %rdx	# _237->partial.next, __mptr
	movq	%rax, -80(%rbp)	#, %sfp
	leaq	16(%rbx), %rax	#, D.45350
	leaq	-32(%rdx), %r15	#, page
	cmpq	%rdx, %rax	# __mptr, D.45350
	je	.L1466	#,
	movq	%rbx, -88(%rbp)	# D.45360, %sfp
	movq	%r15, %rbx	# page, page
	movq	%rax, %r15	# D.45350, D.45350
	.p2align 4,,10
	.p2align 3
.L1488:
	movq	%rbx, %rdx	# page,
	movq	%r13, %r8	# D.45354,
	movl	%r14d, %ecx	# alloc,
	leaq	-64(%rbp), %rdi	#, tmp278
	movq	%r12, %rsi	# s,
	call	process_slab	#
	movq	32(%rbx), %rdx	# page_156->D.11444.lru.next, __mptr
	leaq	-32(%rdx), %rbx	#, page
	cmpq	%rdx, %r15	# __mptr, D.45350
	jne	.L1488	#,
	movq	-88(%rbp), %rbx	# %sfp, D.45360
.L1466:
	movq	48(%rbx), %rdx	# _237->full.next, __mptr
	leaq	48(%rbx), %rax	#, D.45350
	leaq	-32(%rdx), %r15	#, page
	cmpq	%rdx, %rax	# __mptr, D.45350
	je	.L1465	#,
	movq	%rbx, -88(%rbp)	# D.45360, %sfp
	movq	%r15, %rbx	# page, page
	movq	%rax, %r15	# D.45350, D.45350
	.p2align 4,,10
	.p2align 3
.L1489:
	movq	%rbx, %rdx	# page,
	movq	%r13, %r8	# D.45354,
	movl	%r14d, %ecx	# alloc,
	leaq	-64(%rbp), %rdi	#, tmp279
	movq	%r12, %rsi	# s,
	call	process_slab	#
	movq	32(%rbx), %rdx	# page_157->D.11444.lru.next, __mptr
	leaq	-32(%rdx), %rbx	#, page
	cmpq	%rdx, %r15	# __mptr, D.45350
	jne	.L1489	#,
	movq	-88(%rbp), %rbx	# %sfp, D.45360
.L1465:
	movq	-80(%rbp), %rsi	# %sfp,
	movq	%rbx, %rdi	# D.45360,
	call	_raw_spin_unlock_irqrestore	#
	jmp	.L1462	#
	.p2align 4,,10
	.p2align 3
.L1500:
	movq	-96(%rbp), %rbx	# %sfp, buf
.L1469:
	xorl	%r15d, %r15d	# len
	cmpq	$0, -56(%rbp)	#, t.count
	je	.L1461	#,
	movq	-48(%rbp), %r14	# t.loc, l
	xorl	%r12d, %r12d	# i
	xorl	%r15d, %r15d	# len
	jmp	.L1471	#
	.p2align 4,,10
	.p2align 3
.L1503:
	movslq	%r15d, %rdi	# len, D.45352
	movq	$.LC62, %rsi	#,
	xorl	%eax, %eax	#
	addq	%rbx, %rdi	# buf, D.45353
	call	sprintf	#
	movq	24(%r14), %rsi	# l_165->min_time, D.45356
	addl	%eax, %r15d	# D.45347, len
	movq	16(%r14), %rax	# l_165->sum_time, D.45355
	cmpq	%rsi, %rax	# D.45356, D.45355
	je	.L1474	#,
.L1504:
	movl	(%r14), %ecx	# l_165->count, D.45357
	movslq	%r15d, %rdi	# len, D.45352
	xorl	%edx, %edx	# tmp215
	movq	32(%r14), %r8	# l_165->max_time,
	addq	%rbx, %rdi	# buf, D.45353
	divq	%rcx	# D.45357
	movq	%rsi, %rdx	# D.45356,
	movq	%rax, %rcx	# D.45361, D.45361
	movq	$.LC63, %rsi	#,
	xorl	%eax, %eax	#
	call	sprintf	#
	addl	%eax, %r15d	# D.45347, len
.L1475:
	movq	40(%r14), %rdx	# l_165->min_pid, D.45356
	movslq	%r15d, %rdi	# len, D.45352
	movq	48(%r14), %rcx	# l_165->max_pid, D.45356
	addq	%rbx, %rdi	# buf, D.45353
	cmpq	%rcx, %rdx	# D.45356, D.45356
	je	.L1476	#,
	movq	$.LC65, %rsi	#,
	xorl	%eax, %eax	#
	call	sprintf	#
	leal	(%rax,%r15), %edx	#, len
.L1477:
	movq	cpu_online_mask(%rip), %rax	# cpu_online_mask, tmp286
	movq	(%rax), %rdi	# MEM[(const long unsigned int *)_233], MEM[(const long unsigned int *)_233]
#APP
# 53 "./arch/x86/include/asm/arch_hweight.h" 1
	661:
	call __sw_hweight64
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+23)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	.byte 0xf3,0x48,0x0f,0xb8,0xc7
6641:
	.popsection
# 0 "" 2
#NO_APP
	cmpl	$1, %eax	#, res
	jbe	.L1478	#,
	cmpq	$0, 56(%r14)	#, MEM[(const long unsigned int *)l_165 + 56B]
	je	.L1478	#,
	cmpl	$4035, %edx	#, len
	jbe	.L1501	#,
.L1478:
	cmpl	$1, nr_online_nodes(%rip)	#, nr_online_nodes
	jle	.L1479	#,
	cmpq	$0, 64(%r14)	#, MEM[(const long unsigned int *)l_165 + 64B]
	je	.L1479	#,
	cmpl	$4035, %edx	#, len
	jbe	.L1502	#,
.L1479:
	movslq	%edx, %rax	# len, D.45352
	movl	$10, %ecx	#,
	addq	$1, %r12	#, i
	movw	%cx, (%rbx,%rax)	#, MEM[(void *)_139]
	leal	1(%rdx), %r15d	#, len
	cmpq	%r12, -56(%rbp)	# i, t.count
	jbe	.L1461	#,
	movq	-48(%rbp), %rax	# t.loc, t.loc
	leaq	(%r12,%r12,8), %rdx	#, D.45348
	cmpl	$3757, %r15d	#, len
	leaq	(%rax,%rdx,8), %r14	#, l
	ja	.L1461	#,
.L1471:
	movq	(%r14), %rdx	# l_165->count,
	movslq	%r15d, %rdi	# len, D.45352
	xorl	%eax, %eax	#
	addq	%rbx, %rdi	# buf, D.45353
	movq	$.LC61, %rsi	#,
	call	sprintf	#
	movq	8(%r14), %rdx	# l_165->addr, D.45348
	addl	%eax, %r15d	# D.45347, len
	testq	%rdx, %rdx	# D.45348
	jne	.L1503	#,
	movabsq	$7022907516785749564, %rcx	#, tmp283
	movslq	%r15d, %rax	# len, D.45352
	addl	$15, %r15d	#, len
	addq	%rbx, %rax	# buf, D.45353
	movq	%rcx, (%rax)	# tmp283, MEM[(void *)_82]
	movabsq	$17562964737485929, %rcx	#, tmp284
	movq	%rcx, 8(%rax)	# tmp284, MEM[(void *)_82]
	movq	16(%r14), %rax	# l_165->sum_time, D.45355
	movq	24(%r14), %rsi	# l_165->min_time, D.45356
	cmpq	%rsi, %rax	# D.45356, D.45355
	jne	.L1504	#,
.L1474:
	movslq	%r15d, %rdi	# len, D.45352
	movq	%rax, %rdx	# D.45355,
	movq	$.LC64, %rsi	#,
	addq	%rbx, %rdi	# buf, D.45353
	xorl	%eax, %eax	#
	call	sprintf	#
	addl	%eax, %r15d	# D.45347, len
	jmp	.L1475	#
	.p2align 4,,10
	.p2align 3
.L1476:
	movq	$.LC66, %rsi	#,
	xorl	%eax, %eax	#
	call	sprintf	#
	leal	(%rax,%r15), %edx	#, len
	jmp	.L1477	#
	.p2align 4,,10
	.p2align 3
.L1502:
	leal	7(%rdx), %r15d	#, len
	movslq	%edx, %rax	# len, D.45352
	movl	$4046, %esi	#, D.45358
	movabsq	$17296852893265440, %rcx	#, tmp288
	movslq	%r15d, %rdi	# len, D.45352
	subl	%r15d, %esi	# len, D.45358
	movq	%rcx, (%rbx,%rax)	# tmp288, MEM[(void *)_129]
	leaq	64(%r14), %rdx	#, D.45363
	addq	%rbx, %rdi	# buf, D.45353
	movl	$64, %ecx	#,
	call	bitmap_scnlistprintf	#
	leal	(%r15,%rax), %edx	#, len
	jmp	.L1479	#
	.p2align 4,,10
	.p2align 3
.L1501:
	movslq	%edx, %rax	# len, D.45352
	movl	$15731, %esi	#,
	movl	$64, %ecx	#,
	leal	6(%rdx), %r15d	#, len
	addq	%rbx, %rax	# buf, D.45353
	movw	%si, 4(%rax)	#, MEM[(void *)_116]
	movslq	%r15d, %rdi	# len, D.45352
	movl	$4046, %esi	#, D.45358
	leaq	56(%r14), %rdx	#, D.45363
	movl	$1970299680, (%rax)	#, MEM[(void *)_116]
	subl	%r15d, %esi	# len, D.45358
	movb	$0, 6(%rax)	#, MEM[(void *)_116]
	addq	%rbx, %rdi	# buf, D.45353
	call	bitmap_scnlistprintf	#
	leal	(%r15,%rax), %edx	#, len
	jmp	.L1478	#
	.p2align 4,,10
	.p2align 3
.L1461:
	movq	-64(%rbp), %rdi	# MEM[(struct loc_track *)&t],
	leaq	-64(%rbp), %rax	#, tmp290
	leaq	16(%rax), %rsi	#, tmp244
	call	free_loc_track.isra.66	#
	movq	%r13, %rdi	# D.45354,
	call	kfree	#
	cmpq	$0, -56(%rbp)	#, t.count
	movl	%r15d, %eax	# len, D.45347
	jne	.L1457	#,
	movabsq	$748006974760709966, %rcx	#, tmp291
	movb	$0, 8(%rbx)	#, MEM[(void *)buf_69(D)]
	addl	$8, %eax	#, D.45347
	movq	%rcx, (%rbx)	# tmp291, MEM[(void *)buf_69(D)]
	jmp	.L1457	#
	.size	list_locations, .-list_locations
	.p2align 4,,15
	.type	free_calls_show, @function
free_calls_show:
	testb	$1, 10(%rdi)	#, s_4(D)->flags
	movq	$-38, %rax	#, D.45373
	je	.L1511	#,
	pushq	%rbp	#
	movl	$1, %edx	#,
	movq	%rsp, %rbp	#,
	call	list_locations	#
	popq	%rbp	#
	cltq
.L1511:
	rep ret
	.size	free_calls_show, .-free_calls_show
	.p2align 4,,15
	.type	alloc_calls_show, @function
alloc_calls_show:
	testb	$1, 10(%rdi)	#, s_4(D)->flags
	movq	$-38, %rax	#, D.45378
	je	.L1518	#,
	pushq	%rbp	#
	xorl	%edx, %edx	#
	movq	%rsp, %rbp	#,
	call	list_locations	#
	popq	%rbp	#
	cltq
.L1518:
	rep ret
	.size	alloc_calls_show, .-alloc_calls_show
	.section	.rodata.str1.1
.LC67:
	.string	"slab"
	.section	.rodata.str1.8
	.align 8
.LC68:
	.string	"\0013Cannot register slab subsystem.\n"
	.align 8
.LC69:
	.string	"\0013SLUB: Unable to add boot slab %s to sysfs\n"
	.align 8
.LC70:
	.string	"\0013SLUB: Unable to add boot slab alias %s to sysfs\n"
	.section	.init.text
	.type	slab_sysfs_init, @function
slab_sysfs_init:
	pushq	%rbp	#
	movq	$slab_mutex, %rdi	#,
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	call	mutex_lock	#
	movq	kernel_kobj(%rip), %rdx	# kernel_kobj,
	movq	$slab_uevent_ops, %rsi	#,
	movq	$.LC67, %rdi	#,
	call	kset_create_and_add	#
	testq	%rax, %rax	# slab_kset.1067
	movq	%rax, slab_kset(%rip)	# slab_kset.1067, slab_kset
	jne	.L1520	#,
	movq	$slab_mutex, %rdi	#,
	call	mutex_unlock	#
	movq	$.LC68, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	movl	$-38, %eax	#, D.45383
	jmp	.L1521	#
.L1520:
	movq	slab_caches(%rip), %rax	# slab_caches.next, tmp86
	movl	$5, slab_state(%rip)	#, slab_state
	leaq	-104(%rax), %rbx	#, s
.L1522:
	leaq	104(%rbx), %rax	#, D.45384
	cmpq	$slab_caches, %rax	#, D.45384
	je	.L1525	#,
	movq	%rbx, %rdi	# s,
	call	sysfs_slab_add	#
	testl	%eax, %eax	# err
	je	.L1523	#,
	movq	96(%rbx), %rsi	# s_1->name, s_1->name
	movq	$.LC69, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
.L1523:
	movq	104(%rbx), %rbx	# s_1->list.next, __mptr
	subq	$104, %rbx	#, s
	jmp	.L1522	#
.L1527:
	movq	16(%rbx), %rax	# alias_list.1071_26->next, alias_list.1071_26->next
	movq	8(%rbx), %rsi	# alias_list.1071_26->name, alias_list.1071_26->name
	movq	(%rbx), %rdi	# alias_list.1071_26->s,
	movq	%rax, alias_list(%rip)	# alias_list.1071_26->next, alias_list
	call	sysfs_slab_alias	#
	testl	%eax, %eax	# err
	je	.L1526	#,
	movq	8(%rbx), %rsi	# alias_list.1071_26->name, alias_list.1071_26->name
	movq	$.LC70, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
.L1526:
	movq	%rbx, %rdi	# alias_list.1071,
	call	kfree	#
.L1525:
	movq	alias_list(%rip), %rbx	# alias_list, alias_list.1071
	testq	%rbx, %rbx	# alias_list.1071
	jne	.L1527	#,
	movq	$slab_mutex, %rdi	#,
	call	mutex_unlock	#
	xorl	%eax, %eax	# D.45383
.L1521:
	popq	%rbx	#
	popq	%rbp	#
	ret
	.size	slab_sysfs_init, .-slab_sysfs_init
	.section	.rodata.str1.8
	.align 8
.LC71:
	.string	"Objects remaining in %s on kmem_cache_close()"
	.align 8
.LC72:
	.string	"\0013INFO: Object 0x%p @offset=%tu\n"
	.text
	.p2align 4,,15
	.type	free_partial, @function
free_partial:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	movq	%rsi, %r13	# n, n
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	subq	$24, %rsp	#,
	movq	16(%rsi), %rax	# n_6(D)->partial.next, __mptr
	movq	(%rax), %rdx	# MEM[(struct page *)__mptr_7 + -32B].D.11444.lru.next, tmp194
	leaq	-32(%rax), %r15	#, page
	leaq	-32(%rdx), %r14	#, page
	leaq	16(%rsi), %rdx	#, D.45410
	cmpq	%rax, %rdx	# __mptr, D.45410
	movq	%rdx, -48(%rbp)	# D.45410, %sfp
	jne	.L1561	#,
	jmp	.L1535	#
	.p2align 4,,10
	.p2align 3
.L1564:
	movq	40(%r15), %rax	# MEM[(struct list_head *)page_57 + 32B].prev, D.45410
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	movq	32(%r15), %rdx	# MEM[(struct list_head *)page_57 + 32B].next, D.45410
	movq	%rax, 8(%rdx)	# D.45410, _20->prev
	movq	%rdx, (%rax)	# D.45410, _21->next
	movabsq	$-2401263026317557504, %rax	#, tmp196
	movq	%rax, 32(%r15)	# tmp196, MEM[(struct list_head *)page_57 + 32B].next
	movabsq	$-2401263026316508672, %rax	#, tmp197
	movq	%rax, 40(%r15)	# tmp197, MEM[(struct list_head *)page_57 + 32B].prev
	subq	$1, 8(%r13)	#, MEM[(long unsigned int *)n_6(D) + 8B]
	call	discard_slab	#
.L1538:
	movq	32(%r14), %rax	# page_119->D.11444.lru.next, tmp205
	leaq	-32(%rax), %rdx	#, page
	leaq	32(%r14), %rax	#, D.45410
	cmpq	%rax, -48(%rbp)	# D.45410, %sfp
	je	.L1535	#,
	movq	%r14, %r15	# page, page
	movq	%rdx, %r14	# page, page
.L1561:
	cmpw	$0, 24(%r15)	#, page_57->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	je	.L1564	#,
	movq	(%r15), %rax	# MEM[(const struct page *)page_57], D.45412
	shrq	$45, %rax	#, D.45412
	movq	%rax, %rdx	# D.45412, D.45412
	shrq	$7, %rdx	#, D.45412
	movq	mem_section(,%rdx,8), %rdx	# mem_section, D.45414
	testq	%rdx, %rdx	# D.45414
	je	.L1539	#,
	andl	$127, %eax	#, D.45412
	salq	$5, %rax	#, D.45412
	addq	%rax, %rdx	# D.45412, D.45414
.L1539:
	movzwl	26(%r15), %edi	# *page_57, *page_57
	movl	$32800, %esi	#,
	movq	(%rdx), %rbx	# MEM[(struct mem_section *)_40], map
	andl	$32767, %edi	#, D.45412
	addq	$63, %rdi	#, D.45412
	shrq	$6, %rdi	#, D.45412
	salq	$3, %rdi	#, D.45412
	call	__kmalloc	#
	testq	%rax, %rax	# D.45418
	movq	%rax, -56(%rbp)	# D.45418, %sfp
	je	.L1538	#,
	movq	96(%r12), %rcx	# s_15(D)->name, s_15(D)->name
	movq	$.LC71, %rdx	#,
	movq	%r15, %rsi	# page,
	movq	%r12, %rdi	# s,
	xorl	%eax, %eax	#
	call	slab_err	#
	movq	-56(%rbp), %r8	# %sfp, D.45418
.L1540:
#APP
# 206 "./arch/x86/include/asm/bitops.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; bts $0, (%r15); jc .L1542	#, MEM[(volatile long unsigned int *)_137],
# 0 "" 2
#NO_APP
	andq	$-4, %rbx	#, map
	movq	%r15, %r10	# page, D.45416
	movabsq	$-131941395333120, %rax	#, tmp200
	subq	%rbx, %r10	# map, D.45416
	sarq	$6, %r10	#, D.45416
	salq	$12, %r10	#, D.45416
	addq	%rax, %r10	# tmp200, D.45412
	movq	%r10, -64(%rbp)	# D.45412, %sfp
	movq	%r8, %rdx	# D.45418,
	movq	%r12, %rdi	# s,
	movq	%r15, %rsi	# page,
	movq	%r8, -56(%rbp)	# D.45418, %sfp
	call	get_map	#
	movzwl	26(%r15), %r11d	# *page_57, *page_57
	movl	24(%r12), %edi	# s_15(D)->size, D.45413
	movq	-64(%rbp), %r10	# %sfp, D.45412
	movq	-56(%rbp), %r8	# %sfp, D.45418
	movl	%r11d, %eax	# *page_57, D.45413
	andl	$32767, %eax	#, D.45413
	movslq	%edi, %rcx	# D.45413, D.45415
	imull	%edi, %eax	# D.45413, D.45413
	movq	%r10, %rbx	# D.45412, p
	cltq
	addq	%r10, %rax	# D.45412, D.45418
	cmpq	%rax, %r10	# D.45418, D.45412
	jae	.L1547	#,
	.p2align 4,,10
	.p2align 3
.L1560:
	movq	%rbx, %rsi	# p, D.45415
	subq	%r10, %rsi	# D.45412, D.45415
	movq	%rsi, %rax	# D.45415, D.45415
	cqto
	idivq	%rcx	# D.45415
	cltq
#APP
# 318 "./arch/x86/include/asm/bitops.h" 1
	bt %rax,(%r8)	# D.45415, MEM[(long unsigned int *)_134]
	sbb %eax,%eax	# oldbit
# 0 "" 2
#NO_APP
	testl	%eax, %eax	# oldbit
	je	.L1565	#,
.L1545:
	movl	%r11d, %eax	# *page_57, D.45413
	movslq	%edi, %rcx	# D.45413, D.45415
	andl	$32767, %eax	#, D.45413
	addq	%rcx, %rbx	# D.45415, p
	imull	%edi, %eax	# D.45413, D.45413
	cltq
	addq	%r10, %rax	# D.45412, D.45418
	cmpq	%rax, %rbx	# D.45418, p
	jb	.L1560	#,
.L1547:
#APP
# 139 "./arch/x86/include/asm/bitops.h" 1
	btr $0,(%r15)	#, MEM[(volatile long int *)_137]
# 0 "" 2
#NO_APP
	movq	%r8, %rdi	# D.45418,
	call	kfree	#
	jmp	.L1538	#
	.p2align 4,,10
	.p2align 3
.L1542:
.L1551:
#APP
# 691 "./arch/x86/include/asm/processor.h" 1
	rep; nop
# 0 "" 2
#NO_APP
	movq	(%r15), %rax	# MEM[(const long unsigned int *)page_57], D.45412
	testb	$1, %al	#, D.45412
	jne	.L1551	#,
	.p2align 4,,4
	jmp	.L1540	#
	.p2align 4,,10
	.p2align 3
.L1535:
	addq	$24, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L1565:
	movq	%rsi, %rdx	# D.45415,
	movq	$.LC72, %rdi	#,
	movq	%rbx, %rsi	# p,
	movq	%r8, -64(%rbp)	# D.45418, %sfp
	movq	%r10, -56(%rbp)	# D.45412, %sfp
	call	printk	#
	testb	$1, 10(%r12)	#, s_15(D)->flags
	movq	-56(%rbp), %r10	# %sfp, D.45412
	movq	-64(%rbp), %r8	# %sfp, D.45418
	jne	.L1562	#,
	movzwl	26(%r15), %r11d	# *page_57, *page_57
	movl	24(%r12), %edi	# s_15(D)->size, D.45413
	jmp	.L1545	#
.L1562:
	movq	%r12, %rdi	# s,
	movq	%rbx, %rsi	# p,
	movq	%r8, -64(%rbp)	# D.45418, %sfp
	movq	%r10, -56(%rbp)	# D.45412, %sfp
	call	print_tracking.part.52	#
	movzwl	26(%r15), %r11d	# *page_57, *page_57
	movl	24(%r12), %edi	# s_15(D)->size, D.45413
	movq	-64(%rbp), %r8	# %sfp, D.45418
	movq	-56(%rbp), %r10	# %sfp, D.45412
	jmp	.L1545	#
	.size	free_partial, .-free_partial
	.p2align 4,,15
	.globl	__kmem_cache_shutdown
	.type	__kmem_cache_shutdown, @function
__kmem_cache_shutdown:
	pushq	%rbp	#
	movq	%rdi, %rdx	# s,
	movl	$32, %r8d	#,
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movl	$1, %ecx	#,
	pushq	%r14	#
	movq	$flush_cpu_slab, %rsi	#,
	movq	%rdi, %r14	# s, s
	pushq	%r13	#
	movq	$has_cpu_slab, %rdi	#,
	movl	$64, %r15d	#, tmp84
	pushq	%r12	#
	pushq	%rbx	#
	movl	$64, %ebx	#, node
	call	on_each_cpu_cond	#
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	call	find_first_bit	#
	cmpl	$64, %eax	#, D.45428
	cmovle	%eax, %ebx	# D.45428,, node
	cmpl	$64, %ebx	#, node
	jne	.L1576	#,
	jmp	.L1569	#
	.p2align 4,,10
	.p2align 3
.L1578:
	movq	192(%r13), %rax	# MEM[(struct kmem_cache *)_29 + 192B], D.45430
	movq	32(%rax), %rax	# MEM[(volatile long int *)_10 + 32B], D.45431
	testq	%rax, %rax	# D.45431
	jne	.L1572	#,
	addl	$1, %ebx	#, D.45432
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movslq	%ebx, %rdx	# D.45432, D.45428
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45428
	movl	%eax, %ebx	# D.45428, node
	cmovg	%r15d, %ebx	# node,, tmp84, node
	cmpl	$64, %ebx	#, node
	je	.L1569	#,
.L1576:
	movslq	%ebx, %rax	# node, D.45429
	movq	%r14, %rdi	# s,
	leaq	(%r14,%rax,8), %r13	#, D.45434
	movq	192(%r13), %r12	# MEM[(struct kmem_cache *)_29 + 192B], D.45430
	movq	%r12, %rsi	# D.45430,
	call	free_partial	#
	cmpq	$0, 8(%r12)	#, _8->nr_partial
	je	.L1578	#,
.L1572:
	popq	%rbx	#
	movl	$1, %eax	#, D.45432
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1569:
	movq	(%r14), %rdi	# s_2(D)->cpu_slab,
	call	free_percpu	#
	movq	%r14, %rdi	# s,
	call	free_kmem_cache_nodes	#
	popq	%rbx	#
	xorl	%eax, %eax	# D.45432
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.size	__kmem_cache_shutdown, .-__kmem_cache_shutdown
	.p2align 4,,15
	.globl	__kmem_cache_shrink
	.type	__kmem_cache_shrink, @function
__kmem_cache_shrink:
	pushq	%rbp	#
	movl	$208, %esi	#,
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	pushq	%rbx	#
	subq	$8, %rsp	#,
	movzwl	48(%rdi), %eax	# MEM[(struct kmem_cache *)s_18(D) + 48B], D.45450
	movslq	%eax, %rdi	# D.45450, D.45451
	movl	%eax, -44(%rbp)	# D.45450, %sfp
	salq	$4, %rdi	#, D.45451
	call	__kmalloc	#
	testq	%rax, %rax	# D.45457
	movq	%rax, %rbx	#, D.45457
	je	.L1600	#,
	movl	$32, %r8d	#,
	movl	$1, %ecx	#,
	movq	%r12, %rdx	# s,
	movq	$flush_cpu_slab, %rsi	#,
	movq	$has_cpu_slab, %rdi	#,
	movl	$64, %r14d	#, node
	call	on_each_cpu_cond	#
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	call	find_first_bit	#
	cmpl	$64, %eax	#, D.45451
	cmovle	%eax, %r14d	# D.45451,, node
	cmpl	$64, %r14d	#, node
	je	.L1584	#,
	movl	-44(%rbp), %eax	# %sfp, D.45450
	subl	$1, %eax	#,
	movl	%eax, -48(%rbp)	# i, %sfp
	salq	$4, %rax	#, D.45456
	leaq	16(%rbx,%rax), %r13	#, D.45456
	.p2align 4,,10
	.p2align 3
.L1599:
	movslq	%r14d, %rax	# node, node
	movq	192(%r12,%rax,8), %r15	# s_18(D)->node, D.45458
	cmpq	$0, 8(%r15)	#, _154->nr_partial
	je	.L1595	#,
	movl	-44(%rbp), %edx	# %sfp,
	movq	%rbx, %rax	# D.45457, ivtmp.1799
	testl	%edx, %edx	#
	je	.L1588	#,
	.p2align 4,,10
	.p2align 3
.L1603:
	movq	%rax, (%rax)	# ivtmp.1799, MEM[base: _27, offset: 0B]
	movq	%rax, 8(%rax)	# ivtmp.1799, MEM[base: _27, offset: 8B]
	addq	$16, %rax	#, ivtmp.1799
	cmpq	%r13, %rax	# D.45456, ivtmp.1799
	jne	.L1603	#,
.L1588:
	movq	%r15, %rdi	# D.45458,
	call	_raw_spin_lock_irqsave	#
	movq	16(%r15), %rsi	# _154->partial.next, __mptr
	leaq	16(%r15), %r10	#, D.45452
	movq	(%rsi), %rdi	# MEM[(struct page *)__mptr_34 + -32B].D.11444.lru.next, tmp194
	cmpq	%r10, %rsi	# D.45452, D.45452
	movq	%rsi, %rcx	# __mptr, D.45452
	leaq	-32(%rsi), %rdx	#, page
	leaq	-32(%rdi), %r9	#, page
	je	.L1587	#,
	movq	(%rsi), %rsi	# MEM[(struct list_head *)__mptr_34].next, D.45452
	jmp	.L1593	#
	.p2align 4,,10
	.p2align 3
.L1613:
	movq	%r9, %rdx	# page, page
	movq	%rdi, %r9	# page, page
.L1593:
	movzwl	24(%rdx), %edi	# page_90->D.11432.D.11431.D.11429.D.11427.D.11425.inuse, D.45451
	movq	40(%rdx), %r8	# MEM[(struct list_head *)page_90 + 32B].prev, D.45452
	salq	$4, %rdi	#, D.45451
	movq	%r8, 8(%rsi)	# D.45452, _148->prev
	addq	%rbx, %rdi	# D.45457, D.45452
	movq	%rsi, (%r8)	# D.45452, _156->next
	movq	(%rdi), %rsi	# _43->next, D.45452
	movq	%rcx, 8(%rsi)	# D.45452, _157->prev
	movq	%rsi, 32(%rdx)	# D.45452, MEM[(struct list_head *)page_90 + 32B].next
	movq	%rdi, 40(%rdx)	# D.45452, MEM[(struct list_head *)page_90 + 32B].prev
	movq	%rcx, (%rdi)	# D.45452, _43->next
	cmpw	$0, 24(%rdx)	#, page_90->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	jne	.L1592	#,
	subq	$1, 8(%r15)	#, _154->nr_partial
.L1592:
	movq	32(%r9), %rsi	# page_92->D.11444.lru.next, __mptr
	leaq	32(%r9), %rcx	#, D.45452
	cmpq	%r10, %rcx	# D.45452, D.45452
	leaq	-32(%rsi), %rdi	#, page
	jne	.L1613	#,
.L1587:
	movl	-48(%rbp), %ecx	# %sfp, i
	testl	%ecx, %ecx	# i
	movl	%ecx, %edx	# i, i
	jle	.L1591	#,
	.p2align 4,,10
	.p2align 3
.L1604:
	movslq	%edx, %rcx	# i, D.45451
	movq	24(%r15), %rdi	# _154->partial.prev, D.45452
	salq	$4, %rcx	#, D.45451
	addq	%rbx, %rcx	# D.45457, D.45455
	movq	(%rcx), %rsi	# _55->next, D.45452
	cmpq	%rsi, %rcx	# D.45452, D.45455
	je	.L1596	#,
	movq	(%rdi), %r8	# _52->next, D.45452
	movq	8(%rcx), %rcx	# _55->prev, last
	movq	%rdi, 8(%rsi)	# D.45452, _158->prev
	movq	%rsi, (%rdi)	# D.45452, _52->next
	movq	%r8, (%rcx)	# D.45452, last_160->next
	movq	%rcx, 8(%r8)	# last, _159->prev
.L1596:
	subl	$1, %edx	#, i
	jne	.L1604	#,
.L1591:
	movq	%rax, %rsi	# flags,
	movq	%r15, %rdi	# D.45458,
	call	_raw_spin_unlock_irqrestore	#
	movq	(%rbx), %rdx	# MEM[(struct list_head *)_149].next, __mptr
	movq	(%rdx), %rax	# MEM[(struct page *)__mptr_59 + -32B].D.11444.lru.next, tmp195
	leaq	-32(%rdx), %rsi	#, page
	cmpq	%rdx, %rbx	# __mptr, D.45457
	leaq	-32(%rax), %r15	#, page
	jne	.L1605	#,
	jmp	.L1595	#
	.p2align 4,,10
	.p2align 3
.L1614:
	movq	%r15, %rsi	# page, page
	movq	%rdx, %r15	# page, page
.L1605:
	movq	%r12, %rdi	# s,
	call	discard_slab	#
	movq	32(%r15), %rax	# page_93->D.11444.lru.next, tmp196
	leaq	-32(%rax), %rdx	#, page
	leaq	32(%r15), %rax	#, D.45452
	cmpq	%rax, %rbx	# D.45452, D.45457
	jne	.L1614	#,
.L1595:
	addl	$1, %r14d	#, D.45450
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movslq	%r14d, %rdx	# D.45450, D.45451
	movl	$64, %r14d	#, node
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45451
	cmovle	%eax, %r14d	# D.45451,, node
	cmpl	$64, %r14d	#, node
	jne	.L1599	#,
.L1584:
	movq	%rbx, %rdi	# D.45457,
	call	kfree	#
	xorl	%eax, %eax	# D.45450
.L1580:
	addq	$8, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L1600:
	movl	$-12, %eax	#, D.45450
	jmp	.L1580	#
	.size	__kmem_cache_shrink, .-__kmem_cache_shrink
	.section	.rodata.str1.1
.LC73:
	.string	"kmem_cache_node"
.LC74:
	.string	"kmem_cache"
	.section	.rodata.str1.8
	.align 8
.LC75:
	.string	"\0016SLUB: HWalign=%d, Order=%d-%d, MinObjects=%d, CPUs=%d, Nodes=%d\n"
	.section	.init.text
	.globl	kmem_cache_init
	.type	kmem_cache_init, @function
kmem_cache_init:
	pushq	%rbp	#
	movl	$8192, %ecx	#,
	movl	$64, %edx	#,
	movq	%rsp, %rbp	#,
	pushq	%r12	#
	movq	$.LC73, %rsi	#,
	pushq	%rbx	#
	movq	$boot_kmem_cache_node.31629, %rbx	#, tmp72
	movq	$boot_kmem_cache.31628, %r12	#, tmp73
	pushq	%rax	#
	movq	%rbx, %rdi	# tmp72,
	movq	%rbx, kmem_cache_node(%rip)	# tmp72, kmem_cache_node
	movq	%r12, kmem_cache(%rip)	# tmp73, kmem_cache
	call	create_boot_cache	#
	movslq	nr_node_ids(%rip), %rax	# nr_node_ids, D.45462
	movl	$8192, %ecx	#,
	movq	kmem_cache(%rip), %rdi	# kmem_cache,
	movq	$.LC74, %rsi	#,
	movl	$1, slab_state(%rip)	#, slab_state
	leaq	192(,%rax,8), %rdx	#, D.45462
	call	create_boot_cache	#
	movq	%r12, %rdi	# tmp73,
	call	bootstrap	#
	movq	%rbx, %rdi	# tmp72,
	movq	%rax, kmem_cache(%rip)	# kmem_cache.416, kmem_cache
	call	bootstrap	#
	xorl	%edi, %edi	#
	movq	%rax, kmem_cache_node(%rip)	# kmem_cache_node.417, kmem_cache_node
	call	create_kmalloc_caches	#
	movq	$slab_notifier, %rdi	#,
	call	register_cpu_notifier	#
	movl	nr_node_ids(%rip), %eax	# nr_node_ids, nr_node_ids
	movq	$.LC75, %rdi	#,
	movl	slub_min_order(%rip), %edx	# slub_min_order,
	movl	nr_cpu_ids(%rip), %r9d	# nr_cpu_ids,
	movl	slub_min_objects(%rip), %r8d	# slub_min_objects,
	movl	slub_max_order(%rip), %ecx	# slub_max_order,
	movl	%eax, (%rsp)	# nr_node_ids,
	xorl	%eax, %eax	#
	movl	boot_cpu_data+148(%rip), %esi	# boot_cpu_data.x86_cache_alignment,
	call	printk	#
	popq	%rdx	#
	popq	%rbx	#
	popq	%r12	#
	popq	%rbp	#
	ret
	.size	kmem_cache_init, .-kmem_cache_init
	.globl	kmem_cache_init_late
	.type	kmem_cache_init_late, @function
kmem_cache_init_late:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	ret
	.size	kmem_cache_init_late, .-kmem_cache_init_late
	.text
	.p2align 4,,15
	.globl	__kmem_cache_alias
	.type	__kmem_cache_alias, @function
__kmem_cache_alias:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	subq	$16, %rsp	#,
	movl	slub_nomerge(%rip), %eax	# slub_nomerge,
	testl	%eax, %eax	#
	jne	.L1620	#,
	testl	$11078656, %ecx	#, flags
	jne	.L1620	#,
	testq	%r8, %r8	# ctor
	je	.L1639	#,
.L1620:
	xorl	%r15d, %r15d	# s
.L1629:
	addq	$16, %rsp	#,
	movq	%r15, %rax	# s,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1639:
	movq	%rsi, %rbx	# size, size
	movq	%rdi, %r13	# name, name
	movq	%rdx, %rsi	# align, align
	leaq	7(%rbx), %r12	#, size
	movq	%rcx, %rdi	# flags,
	movq	%rcx, -56(%rbp)	# flags, %sfp
	andq	$-8, %r12	#, size
	movq	%r12, %rdx	# size,
	call	calculate_alignment	#
	movq	-56(%rbp), %rcx	# %sfp, flags
	movq	%r13, %rsi	# name,
	leaq	-1(%r12,%rax), %r12	#, D.45483
	negq	%rax	# D.45483
	andq	%rax, %r12	# D.45483, size
	movq	%rax, -48(%rbp)	# D.45483, %sfp
	movq	%rcx, %rdi	# flags,
	call	kmem_cache_flags.isra.63	#
	movq	%rax, %r14	#, flags
	movq	slab_caches(%rip), %rax	# slab_caches.next, __mptr
	leaq	-104(%rax), %r15	#, s
	cmpq	$slab_caches, %rax	#, __mptr
	je	.L1620	#,
	.p2align 4,,10
	.p2align 3
.L1623:
	movq	%r15, %rdi	# s,
	call	slab_unmergeable	#
	testl	%eax, %eax	# D.45481
	jne	.L1621	#,
	movslq	24(%r15), %rax	# s_60->size, D.45483
	cmpq	%rax, %r12	# D.45483, size
	ja	.L1621	#,
	movq	%r14, %rcx	# flags, D.45483
	xorq	8(%r15), %rcx	# s_60->flags, D.45483
	testl	$147712, %ecx	#, D.45483
	jne	.L1621	#,
	movq	-48(%rbp), %rcx	# %sfp, D.45483
	andq	%rax, %rcx	# D.45483, D.45483
	cmpq	%rcx, %rax	# D.45483, D.45483
	je	.L1640	#,
	.p2align 4,,10
	.p2align 3
.L1621:
	movq	104(%r15), %rax	# s_60->list.next, __mptr
	leaq	-104(%rax), %r15	#, s
	cmpq	$slab_caches, %rax	#, __mptr
	jne	.L1623	#,
	jmp	.L1620	#
	.p2align 4,,10
	.p2align 3
.L1640:
	subq	%r12, %rax	# size, D.45483
	cmpq	$7, %rax	#, D.45483
	ja	.L1621	#,
	testq	%r15, %r15	# s
	je	.L1629	#,
	movl	28(%r15), %eax	# s_42->object_size, s_42->object_size
	movq	%r13, %rsi	# name,
	movq	%r15, %rdi	# s,
	addl	$1, 68(%r15)	#, s_42->refcount
	cmpl	%ebx, %eax	# size, s_42->object_size
	cmovle	%ebx, %eax	# s_42->object_size,, size, D.45481
	addl	$7, %ebx	#, __max2
	andl	$-8, %ebx	#, __max2
	movl	%eax, 28(%r15)	# D.45481, s_42->object_size
	movl	80(%r15), %eax	# s_42->inuse, s_42->inuse
	cmpl	%eax, %ebx	# s_42->inuse, __max2
	cmovl	%eax, %ebx	# __max2,, s_42->inuse, D.45481
	movl	%ebx, 80(%r15)	# D.45481, s_42->inuse
	call	sysfs_slab_alias	#
	testl	%eax, %eax	# D.45481
	je	.L1629	#,
	subl	$1, 68(%r15)	#, s_42->refcount
	xorl	%r15d, %r15d	# s
	jmp	.L1629	#
	.size	__kmem_cache_alias, .-__kmem_cache_alias
	.section	.rodata.str1.8
	.align 8
.LC76:
	.string	"\0013SLUB: Unable to allocate memory from node %d\n"
	.align 8
.LC77:
	.string	"\0013SLUB: Allocating a useless per node structure in order to be able to continue\n"
	.align 8
.LC78:
	.string	"Cannot create slab %s size=%lu realsize=%u order=%u offset=%u flags=%lx\n"
	.text
	.p2align 4,,15
	.globl	__kmem_cache_create
	.type	__kmem_cache_create, @function
__kmem_cache_create:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	movq	%rdi, %r12	# s, s
	movq	%rsi, %rdi	# flags, flags
	pushq	%rbx	#
	subq	$24, %rsp	#,
	movq	%rsi, -56(%rbp)	# flags, %sfp
	movq	96(%r12), %rsi	# s_5(D)->name, s_5(D)->name
	call	kmem_cache_flags.isra.63	#
	movl	$-1, %esi	#,
	movq	%r12, %rdi	# s,
	movq	%rax, 8(%r12)	# D.45718, s_5(D)->flags
	movl	$0, 88(%r12)	#, s_5(D)->reserved
	call	calculate_sizes	#
	testl	%eax, %eax	# D.45717
	je	.L1663	#,
	movl	disable_higher_order_debug(%rip), %r8d	# disable_higher_order_debug,
	movl	24(%r12), %eax	# s_5(D)->size, D.45717
	testl	%r8d, %r8d	#
	jne	.L1643	#,
.L1644:
	movq	boot_cpu_data+36(%rip), %rdx	# MEM[(const long unsigned int *)&boot_cpu_data + 36B], D.45718
	andb	$32, %dh	#, D.45718
	je	.L1645	#,
	movq	8(%r12), %rcx	# s_5(D)->flags, D.45718
	movq	%rcx, %rdx	# D.45718, D.45718
	andl	$2166016, %edx	#, D.45718
	je	.L1708	#,
.L1676:
	movl	$-1, %ecx	#, r
#APP
# 451 "./arch/x86/include/asm/bitops.h" 1
	bsrl %eax,%ecx	# D.45717, r
# 0 "" 2
#NO_APP
	movl	%ecx, %esi	# r, tmp194
	shrl	$31, %esi	#, tmp194
	addl	%esi, %ecx	# tmp194, D.45717
	sarl	%ecx	# D.45717
	movslq	%ecx, %rsi	# D.45717, min
	cmpq	$4, %rsi	#, min
	ja	.L1709	#,
	movl	$5, %ecx	#, min
.L1647:
	testq	%rdx, %rdx	# D.45718
	movq	%rcx, 16(%r12)	# min, MEM[(long unsigned int *)s_5(D) + 16B]
	jne	.L1710	#,
	cmpl	$4095, %eax	#, D.45717
	jbe	.L1650	#,
	movl	$2, 36(%r12)	#, s_5(D)->cpu_partial
.L1649:
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movl	$1000, 184(%r12)	#, s_5(D)->remote_node_defrag_ratio
	call	find_first_bit	#
	movl	$64, %r14d	#, node
	cmpl	$64, %eax	#, D.45718
	cmovle	%eax, %r14d	# D.45718,, node
	cmpl	$64, %r14d	#, node
	jne	.L1664	#,
	jmp	.L1653	#
	.p2align 4,,10
	.p2align 3
.L1716:
	movq	kmem_cache_node(%rip), %rdi	# kmem_cache_node, kmem_cache_node.801
	cmpl	$63, 24(%rdi)	#, kmem_cache_node.801_497->size
	jbe	.L1711	#,
	xorl	%esi, %esi	#
	movl	%r14d, %edx	# node,
	call	new_slab	#
	testq	%rax, %rax	# page
	movq	%rax, %r15	#, page
	je	.L1712	#,
	movq	(%rax), %rax	# MEM[(const struct page *)page_503], D.45718
	shrq	$39, %rax	#, D.45718
	andl	$63, %eax	#, D.45717
	cmpl	%eax, %r14d	# D.45717, node
	jne	.L1713	#,
.L1657:
	movq	16(%r15), %rbx	# page_503->D.11432.D.11414.freelist, n
	testq	%rbx, %rbx	# n
	je	.L1714	#,
	movq	kmem_cache_node(%rip), %rax	# kmem_cache_node, kmem_cache_node.801
	movl	$1, %esi	#,
	movslq	32(%rax), %rdx	# MEM[(struct kmem_cache *)kmem_cache_node.801_515 + 32B], D.45724
	movq	%rax, %rdi	# kmem_cache_node.801,
	movq	(%rbx,%rdx), %rdx	# *_518, D.45728
	movw	%si, 24(%r15)	#, page_503->D.11432.D.11431.D.11429.D.11427.D.11425.inuse
	movq	%rbx, %rsi	# n,
	andb	$127, 27(%r15)	#,
	movq	%rax, -48(%rbp)	# kmem_cache_node.801, %sfp
	movq	%rdx, 16(%r15)	# D.45728, page_503->D.11432.D.11414.freelist
	movslq	%r14d, %rdx	# node, D.45724
	leaq	(%rax,%rdx,8), %r13	#, D.45719
	movl	$204, %edx	#,
	movq	%rbx, 192(%r13)	# n, MEM[(struct kmem_cache *)_16 + 192B]
	call	init_object	#
	movq	-48(%rbp), %rax	# %sfp, kmem_cache_node.801
	testb	$1, 10(%rax)	#, kmem_cache_node.801_515->flags
	jne	.L1715	#,
.L1659:
	leaq	48(%rbx), %rax	#, D.45726
	xorl	%ecx, %ecx	#
	movq	$0, 8(%rbx)	#, n_511->nr_partial
	leaq	16(%rbx), %rdx	#, D.45726
	movw	%cx, (%rbx)	#, n_511->list_lock.D.5383.rlock.raw_lock.D.5358.head_tail
	movq	%rdx, 16(%rbx)	# D.45726, MEM[(struct list_head *)n_511 + 16B].next
	movq	%rdx, 24(%rbx)	# D.45726, MEM[(struct list_head *)n_511 + 16B].prev
	movq	$0, 32(%rbx)	#, MEM[(struct atomic64_t *)n_511 + 32B].counter
	movq	$0, 40(%rbx)	#, MEM[(struct atomic64_t *)n_511 + 40B].counter
	movq	%rax, 48(%rbx)	# D.45726, MEM[(struct list_head *)n_511 + 48B].next
	movq	%rax, 56(%rbx)	# D.45726, MEM[(struct list_head *)n_511 + 48B].prev
	movzwl	26(%r15), %esi	# *page_503, D.45730
	movq	192(%r13), %rax	# MEM[(struct kmem_cache *)_16 + 192B], D.45720
	andw	$32767, %si	#, D.45730
	testq	%rax, %rax	# D.45720
	je	.L1678	#,
#APP
# 86 "./arch/x86/include/asm/atomic64_64.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; incq 32(%rax)	# MEM[(struct atomic64_t *)_531].counter
# 0 "" 2
#NO_APP
	movzwl	%si, %esi	# D.45730, D.45721
#APP
# 45 "./arch/x86/include/asm/atomic64_64.h" 1
	.pushsection .smp_locks,"a"
.balign 4
.long 671f - .
.popsection
671:
	lock; addq %rsi,40(%rax)	# D.45721, MEM[(struct atomic64_t *)_532].counter
# 0 "" 2
#NO_APP
	movq	8(%rbx), %rax	# n_511->nr_partial, tmp252
	leaq	1(%rax), %rsi	#, D.45718
	movq	16(%rbx), %rax	# MEM[(struct list_head *)n_511 + 16B].next, D.45726
.L1660:
	movq	%rsi, 8(%rbx)	# D.45718, n_511->nr_partial
	leaq	32(%r15), %rsi	#, D.45726
	movq	%rsi, 8(%rax)	# D.45726, _237->prev
	movq	%rax, 32(%r15)	# D.45726, MEM[(struct list_head *)page_503 + 32B].next
	movq	%rdx, 40(%r15)	# D.45726, MEM[(struct list_head *)page_503 + 32B].prev
	movq	%rsi, 16(%rbx)	# D.45726, MEM[(struct list_head *)n_511 + 16B].next
.L1661:
	leal	1(%r14), %ecx	#, D.45717
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movslq	%ecx, %rdx	# D.45717, D.45718
	movl	$64, %r14d	#, node
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45718
	cmovle	%eax, %r14d	# D.45718,, node
	cmpl	$64, %r14d	#, node
	je	.L1653	#,
.L1664:
	movl	slab_state(%rip), %edi	# slab_state,
	testl	%edi, %edi	#
	je	.L1716	#,
	movq	kmem_cache_node(%rip), %rdi	# kmem_cache_node,
	movl	%r14d, %edx	# node,
	movl	$208, %esi	#,
	call	kmem_cache_alloc_node	#
	testq	%rax, %rax	# n
	je	.L1672	#,
	movslq	%r14d, %rdx	# node, node
	movq	%rax, 192(%r12,%rdx,8)	# n, s_5(D)->node
	xorl	%edx, %edx	#
	movw	%dx, (%rax)	#, n_488->list_lock.D.5383.rlock.raw_lock.D.5358.head_tail
	leaq	16(%rax), %rdx	#, D.45726
	movq	%rdx, 16(%rax)	# D.45726, MEM[(struct list_head *)n_488 + 16B].next
	movq	%rdx, 24(%rax)	# D.45726, MEM[(struct list_head *)n_488 + 16B].prev
	leaq	48(%rax), %rdx	#, D.45726
	movq	$0, 8(%rax)	#, n_488->nr_partial
	movq	$0, 32(%rax)	#, MEM[(struct atomic64_t *)n_488 + 32B].counter
	movq	$0, 40(%rax)	#, MEM[(struct atomic64_t *)n_488 + 40B].counter
	movq	%rdx, 48(%rax)	# D.45726, MEM[(struct list_head *)n_488 + 48B].next
	movq	%rdx, 56(%rax)	# D.45726, MEM[(struct list_head *)n_488 + 48B].prev
	jmp	.L1661	#
	.p2align 4,,10
	.p2align 3
.L1672:
	movq	%r12, %rdi	# s,
	call	free_kmem_cache_nodes	#
.L1663:
	testq	$262144, -56(%rbp)	#, %sfp
	jne	.L1717	#,
	movl	$-22, %eax	#, D.45717
.L1705:
	addq	$24, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1643:
	movslq	28(%r12), %rdi	# s_5(D)->object_size, D.45718
	movslq	%eax, %rdx	# D.45717, D.45718
	movl	$-1, %esi	#, tmp179
	subq	$1, %rdx	#, size
	movl	%esi, %ecx	# tmp179, bitpos
	shrq	$12, %rdx	#, size
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rdx,%rcx	# size, bitpos
# 0 "" 2
#NO_APP
	subq	$1, %rdi	#, size
	movl	%esi, %edx	# tmp179, bitpos
	addl	$1, %ecx	#, D.45717
	shrq	$12, %rdi	#, size
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rdi,%rdx	# size, bitpos
# 0 "" 2
#NO_APP
	addl	$1, %edx	#, D.45717
	cmpl	%edx, %ecx	# D.45717, D.45717
	jle	.L1644	#,
	andq	$-68609, 8(%r12)	#, s_5(D)->flags
	movq	%r12, %rdi	# s,
	movl	$0, 32(%r12)	#, s_5(D)->offset
	call	calculate_sizes	#
	testl	%eax, %eax	# D.45717
	je	.L1663	#,
	movl	24(%r12), %eax	# s_5(D)->size, D.45717
	jmp	.L1644	#
	.p2align 4,,10
	.p2align 3
.L1715:
	movq	%rbx, %rsi	# n,
	movq	%rax, %rdi	# kmem_cache_node.801,
	call	init_tracking.part.54	#
	jmp	.L1659	#
	.p2align 4,,10
	.p2align 3
.L1653:
	movl	$16, %esi	#,
	movl	$32, %edi	#,
	call	__alloc_percpu	#
	testq	%rax, %rax	# D.45728
	movq	%rax, (%r12)	# D.45728, s_5(D)->cpu_slab
	je	.L1672	#,
	movq	cpu_possible_mask(%rip), %rbx	# cpu_possible_mask, D.45725
	movl	$-1, %edx	#, cpu
	jmp	.L1673	#
	.p2align 4,,10
	.p2align 3
.L1665:
	movslq	%eax, %rsi	# D.45718, cpu
	movq	(%r12), %rcx	# MEM[(struct kmem_cache_cpu * *)s_5(D)], tmp228
	movl	%eax, %eax	# D.45718, tmp254
	addq	__per_cpu_offset(,%rsi,8), %rcx	# __per_cpu_offset, tmp228
	movq	%rax, 8(%rcx)	# tmp254, _543->tid
.L1673:
	addl	$1, %edx	#, D.45717
	movl	$64, %esi	#,
	movq	%rbx, %rdi	# D.45725,
	movslq	%edx, %rdx	# D.45717, D.45718
	call	find_next_bit	#
	cmpl	nr_cpu_ids(%rip), %eax	# nr_cpu_ids, D.45718
	movl	%eax, %edx	# D.45718, cpu
	jl	.L1665	#,
	cmpl	$4, slab_state(%rip)	#, slab_state
	ja	.L1718	#,
.L1674:
	addq	$24, %rsp	#,
	xorl	%eax, %eax	# D.45717
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1645:
	movq	8(%r12), %rdx	# s_5(D)->flags, D.45718
	andl	$2166016, %edx	#, D.45718
	jmp	.L1676	#
.L1709:
	movl	$10, %ecx	#, min
	cmpq	$10, %rsi	#, min
	cmovbe	%rsi, %rcx	# min,, min
	jmp	.L1647	#
	.p2align 4,,10
	.p2align 3
.L1650:
	cmpl	$1023, %eax	#, D.45717
	jle	.L1651	#,
	movl	$6, 36(%r12)	#, s_5(D)->cpu_partial
	jmp	.L1649	#
	.p2align 4,,10
	.p2align 3
.L1651:
	cmpl	$256, %eax	#, D.45717
	movl	$13, %edx	#, tmp245
	movl	$30, %eax	#, tmp246
	cmovl	%eax, %edx	# tmp246,, tmp245
	movl	%edx, 36(%r12)	# tmp245, s_5(D)->cpu_partial
	jmp	.L1649	#
	.p2align 4,,10
	.p2align 3
.L1708:
	orq	$1073741824, %rcx	#, tmp190
	movq	%rcx, 8(%r12)	# tmp190, s_5(D)->flags
	jmp	.L1676	#
.L1718:
	movq	%r12, %rdi	# s,
	call	sysfs_slab_add	#
	testl	%eax, %eax	# err
	movl	%eax, -48(%rbp)	# err, %sfp
	je	.L1674	#,
	movl	$32, %r8d	#,
	movl	$1, %ecx	#,
	movq	%r12, %rdx	# s,
	movq	$flush_cpu_slab, %rsi	#,
	movl	$64, %ebx	#, node
	movl	$64, %r14d	#, tmp248
	movq	$has_cpu_slab, %rdi	#,
	call	on_each_cpu_cond	#
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	call	find_first_bit	#
	cmpl	$64, %eax	#, D.45718
	cmovle	%eax, %ebx	# D.45718,, node
	cmpl	$64, %ebx	#, node
	jne	.L1703	#,
	jmp	.L1670	#
	.p2align 4,,10
	.p2align 3
.L1719:
	movq	192(%r15), %rax	# MEM[(struct kmem_cache *)_292 + 192B], D.45720
	movq	32(%rax), %rax	# MEM[(volatile long int *)_19 + 32B], D.45721
	testq	%rax, %rax	# D.45721
	jne	.L1681	#,
	addl	$1, %ebx	#, D.45717
	movl	$64, %esi	#,
	movq	$node_states+16, %rdi	#,
	movslq	%ebx, %rdx	# D.45717, D.45718
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45718
	movl	%eax, %ebx	# D.45718, node
	cmovg	%r14d, %ebx	# node,, tmp248, node
	cmpl	$64, %ebx	#, node
	je	.L1670	#,
.L1703:
	movslq	%ebx, %rax	# node, D.45724
	movq	%r12, %rdi	# s,
	leaq	(%r12,%rax,8), %r15	#, D.45719
	movq	192(%r15), %r13	# MEM[(struct kmem_cache *)_292 + 192B], D.45720
	movq	%r13, %rsi	# D.45720,
	call	free_partial	#
	cmpq	$0, 8(%r13)	#, _17->nr_partial
	je	.L1719	#,
.L1681:
	movl	-48(%rbp), %eax	# %sfp, D.45717
	jmp	.L1705	#
.L1670:
	movq	(%r12), %rdi	# s_5(D)->cpu_slab,
	call	free_percpu	#
	movq	%r12, %rdi	# s,
	call	free_kmem_cache_nodes	#
	movl	-48(%rbp), %eax	# %sfp, D.45717
	jmp	.L1705	#
.L1714:
#APP
# 2909 "mm/slub.c" 1
	1:	ud2
.pushsection __bug_table,"a"
2:	.long 1b - 2b, .LC2 - 2b	#
	.word 2909, 0	#
	.org 2b+12	#
.popsection
# 0 "" 2
#NO_APP
.L1678:
	movq	%rdx, %rax	# D.45726, D.45726
	movl	$1, %esi	#, D.45718
	jmp	.L1660	#
.L1711:
#APP
# 2898 "mm/slub.c" 1
	1:	ud2
.pushsection __bug_table,"a"
2:	.long 1b - 2b, .LC2 - 2b	#
	.word 2898, 0	#
	.org 2b+12	#
.popsection
# 0 "" 2
#NO_APP
.L1712:
#APP
# 2902 "mm/slub.c" 1
	1:	ud2
.pushsection __bug_table,"a"
2:	.long 1b - 2b, .LC2 - 2b	#
	.word 2902, 0	#
	.org 2b+12	#
.popsection
# 0 "" 2
#NO_APP
.L1713:
	movl	%r14d, %esi	# node,
	movq	$.LC76, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	movq	$.LC77, %rdi	#,
	xorl	%eax, %eax	#
	call	printk	#
	jmp	.L1657	#
.L1717:
	movq	-56(%rbp), %rax	# %sfp, flags
	movq	$.LC78, %rdi	#,
	movl	24(%r12), %ecx	# s_5(D)->size, D.45717
	movq	40(%r12), %r8	# MEM[(struct kmem_cache *)s_5(D) + 40B], MEM[(struct kmem_cache *)s_5(D) + 40B]
	movl	32(%r12), %r9d	# s_5(D)->offset, s_5(D)->offset
	movq	96(%r12), %rsi	# s_5(D)->name, s_5(D)->name
	movq	%rax, (%rsp)	# flags,
	xorl	%eax, %eax	#
	movslq	%ecx, %rdx	# D.45717, D.45718
	shrq	$16, %r8	#,
	call	panic	#
.L1710:
	movl	$0, 36(%r12)	#, s_5(D)->cpu_partial
	jmp	.L1649	#
	.size	__kmem_cache_create, .-__kmem_cache_create
	.p2align 4,,15
	.globl	__kmalloc_track_caller
	.type	__kmalloc_track_caller, @function
__kmalloc_track_caller:
	pushq	%rbp	#
	cmpq	$8192, %rdi	#, size
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movl	%esi, %r15d	# gfpflags, gfpflags
	pushq	%r14	#
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	ja	.L1739	#,
	movq	%rdx, %r13	# caller, caller
	call	kmalloc_slab	#
	cmpq	$16, %rax	#, s
	movq	%rax, %r14	#, s
	jbe	.L1735	#,
.L1729:
	movq	(%r14), %r8	# s_11->cpu_slab, tcp_ptr__
#APP
# 2428 "mm/slub.c" 1
	add %gs:this_cpu_off, %r8	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r8), %rdx	# c_98->tid, __o2
	movq	(%r8), %r12	# c_98->freelist, ret
	movq	16(%r8), %rax	# c_98->page, page
	testq	%r12, %r12	# ret
	je	.L1725	#,
	testq	%rax, %rax	# page
	je	.L1725	#,
	movslq	32(%r14), %rax	# MEM[(struct kmem_cache *)s_11 + 32B], D.45748
	leaq	1(%rdx), %rcx	#, D.45750
	movq	(%r14), %r8	# s_11->cpu_slab, D.45746
	movq	(%r12,%rax), %rbx	# *_112, D.45744
	movq	%r12, %rax	# ret, ret
#APP
# 2461 "mm/slub.c" 1
	661:
	leaq (%r8),%rsi	# _115->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%r8)	# _115->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1729	#,
	movslq	32(%r14), %rax	# MEM[(const struct kmem_cache *)s_11 + 32B], D.45748
	andl	$32768, %r15d	#, gfpflags
	prefetcht0	(%rbx,%rax)	#
	jne	.L1727	#,
.L1738:
	movq	%r12, %rax	# ret, D.45744
.L1735:
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1725:
	movl	%r15d, %esi	# gfpflags,
	movq	%r13, %rcx	# caller,
	movl	$-1, %edx	#,
	movq	%r14, %rdi	# s,
	call	__slab_alloc	#
	andl	$32768, %r15d	#, gfpflags
	movq	%rax, %r12	#, ret
	je	.L1738	#,
	testq	%rax, %rax	# ret
	je	.L1731	#,
.L1727:
	movslq	28(%r14), %rdx	# s_11->object_size, D.45750
	xorl	%esi, %esi	#
	movq	%r12, %rdi	# ret,
	call	memset	#
	jmp	.L1738	#
.L1739:
	leaq	-1(%rdi), %rdx	#, size
	orl	$-1, %eax	#, bitpos
	shrq	$12, %rdx	#, size
#APP
# 487 "./arch/x86/include/asm/bitops.h" 1
	bsrq %rdx,%rax	# size, bitpos
# 0 "" 2
#NO_APP
	leal	1(%rax), %edx	#, D.45745
	call	kmalloc_order	#
	jmp	.L1735	#
.L1731:
	xorl	%eax, %eax	# D.45744
	jmp	.L1735	#
	.size	__kmalloc_track_caller, .-__kmalloc_track_caller
	.p2align 4,,15
	.globl	__kmalloc_node_track_caller
	.type	__kmalloc_node_track_caller, @function
__kmalloc_node_track_caller:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movl	%esi, %r15d	# gfpflags, gfpflags
	pushq	%r14	#
	movl	%edx, %r14d	# node, node
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	subq	$8, %rsp	#,
	cmpq	$8192, %rdi	#, size
	movq	%rcx, -48(%rbp)	# caller, %sfp
	ja	.L1761	#,
	call	kmalloc_slab	#
	cmpq	$16, %rax	#, s
	movq	%rax, %r13	#, s
	jbe	.L1758	#,
.L1749:
	movq	0(%r13), %r8	# s_80->cpu_slab, tcp_ptr__
#APP
# 2428 "mm/slub.c" 1
	add %gs:this_cpu_off, %r8	# this_cpu_off, tcp_ptr__
# 0 "" 2
#NO_APP
	movq	8(%r8), %rdx	# c_93->tid, __o2
	movq	(%r8), %r12	# c_93->freelist, ret
	movq	16(%r8), %rax	# c_93->page, page
	testq	%r12, %r12	# ret
	je	.L1745	#,
	testq	%rax, %rax	# page
	je	.L1745	#,
	cmpl	$-1, %r14d	#, node
	je	.L1746	#,
	movq	(%rax), %rax	# MEM[(const struct page *)page_96], D.45764
	shrq	$39, %rax	#, D.45764
	andl	$63, %eax	#, D.45765
	cmpl	%eax, %r14d	# D.45765, node
	je	.L1746	#,
.L1745:
	movq	-48(%rbp), %rcx	# %sfp,
	movl	%r15d, %esi	# gfpflags,
	movl	%r14d, %edx	# node,
	movq	%r13, %rdi	# s,
	call	__slab_alloc	#
	andl	$32768, %r15d	#, gfpflags
	movq	%rax, %r12	#, ret
	jne	.L1744	#,
.L1760:
	movq	%r12, %rax	# ret, D.45762
.L1758:
	addq	$8, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
	.p2align 4,,10
	.p2align 3
.L1746:
	movslq	32(%r13), %rax	# MEM[(struct kmem_cache *)s_80 + 32B], D.45766
	leaq	1(%rdx), %rcx	#, D.45764
	movq	0(%r13), %rdi	# s_80->cpu_slab, D.45763
	movq	(%r12,%rax), %rbx	# *_111, D.45762
	movq	%r12, %rax	# ret, ret
#APP
# 2461 "mm/slub.c" 1
	661:
	leaq (%rdi),%rsi	# _114->freelist
	call this_cpu_cmpxchg16b_emu
	
662:
.pushsection .altinstructions,"a"
 .long 661b - .
 .long 6631f - .
 .word (4*32+13)
 .byte 662b-661b
 .byte 6641f-6631f
.popsection
.pushsection .discard,"aw",@progbits
 .byte 0xff + (6641f-6631f) - (662b-661b)
.popsection
.pushsection .altinstr_replacement, "ax"
6631:
	cmpxchg16b %gs:(%rdi)	# _114->freelist
	setz %al	# pdcrb_ret__
	
6641:
	.popsection
# 0 "" 2
#NO_APP
	testb	%al, %al	# pdcrb_ret__
	je	.L1749	#,
	movslq	32(%r13), %rax	# MEM[(const struct kmem_cache *)s_80 + 32B], D.45766
	andl	$32768, %r15d	#, gfpflags
	prefetcht0	(%rbx,%rax)	#
	je	.L1760	#,
.L1747:
	movslq	28(%r13), %rdx	# s_80->object_size, D.45764
	xorl	%esi, %esi	#
	movq	%r12, %rdi	# ret,
	call	memset	#
	jmp	.L1760	#
.L1761:
	call	kmalloc_large_node	#
	.p2align 4,,8
	jmp	.L1758	#
.L1744:
	testq	%rax, %rax	# ret
	.p2align 4,,5
	jne	.L1747	#,
	xorl	%eax, %eax	# D.45762
	.p2align 4,,6
	jmp	.L1758	#
	.size	__kmalloc_node_track_caller, .-__kmalloc_node_track_caller
	.p2align 4,,15
	.globl	sysfs_slab_remove
	.type	sysfs_slab_remove, @function
sysfs_slab_remove:
	cmpl	$4, slab_state(%rip)	#, slab_state
	ja	.L1767	#,
	ret
	.p2align 4,,10
	.p2align 3
.L1767:
	pushq	%rbp	#
	movl	$1, %esi	#,
	movq	%rsp, %rbp	#,
	pushq	%rbx	#
	leaq	120(%rdi), %rbx	#, D.45778
	movq	%rbx, %rdi	# D.45778,
	call	kobject_uevent	#
	movq	%rbx, %rdi	# D.45778,
	call	kobject_del	#
	movq	%rbx, %rdi	# D.45778,
	call	kobject_put	#
	popq	%rbx	#
	popq	%rbp	#
	ret
	.size	sysfs_slab_remove, .-sysfs_slab_remove
	.p2align 4,,15
	.globl	get_slabinfo
	.type	get_slabinfo, @function
get_slabinfo:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	pushq	%r15	#
	movl	$64, %r15d	#, node
	pushq	%r14	#
	movq	%rdi, %r14	# s, s
	movq	$node_states+8, %rdi	#,
	pushq	%r13	#
	pushq	%r12	#
	pushq	%rbx	#
	subq	$8, %rsp	#,
	movq	%rsi, -48(%rbp)	# sinfo, %sfp
	movl	$64, %esi	#,
	call	find_first_bit	#
	cmpl	$64, %eax	#, D.45781
	cmovle	%eax, %r15d	# D.45781,, node
	cmpl	$64, %r15d	#, node
	je	.L1773	#,
	xorl	%r13d, %r13d	# nr_free
	xorl	%r12d, %r12d	# nr_objs
	xorl	%ebx, %ebx	# nr_slabs
	.p2align 4,,10
	.p2align 3
.L1772:
	movslq	%r15d, %rax	# node, node
	movq	192(%r14,%rax,8), %rdi	# s_12(D)->node, D.45783
	testq	%rdi, %rdi	# D.45783
	je	.L1770	#,
	movq	32(%rdi), %rax	# MEM[(volatile long int *)_34 + 32B], D.45784
	movq	$count_free, %rsi	#,
	addq	%rax, %rbx	# D.45784, nr_slabs
	movq	40(%rdi), %rax	# MEM[(volatile long int *)_34 + 40B], D.45784
	addq	%rax, %r12	# D.45784, nr_objs
	call	count_partial	#
	addq	%rax, %r13	# D.45781, nr_free
.L1770:
	leal	1(%r15), %edx	#, D.45785
	movl	$64, %esi	#,
	movq	$node_states+8, %rdi	#,
	movslq	%edx, %rdx	# D.45785, D.45781
	movl	$64, %r15d	#, node
	call	find_next_bit	#
	cmpl	$64, %eax	#, D.45781
	cmovle	%eax, %r15d	# D.45781,, node
	cmpl	$64, %r15d	#, node
	jne	.L1772	#,
	movq	%r12, %rax	# nr_objs, D.45781
	subq	%r13, %rax	# nr_free, D.45781
.L1769:
	movq	-48(%rbp), %rcx	# %sfp, sinfo
	movq	%rax, (%rcx)	# D.45781, sinfo_22(D)->active_objs
	movq	%r12, 8(%rcx)	# nr_objs, sinfo_22(D)->num_objs
	movq	%rbx, 16(%rcx)	# nr_slabs, sinfo_22(D)->active_slabs
	movq	%rbx, 24(%rcx)	# nr_slabs, sinfo_22(D)->num_slabs
	movzwl	40(%r14), %eax	# MEM[(struct kmem_cache *)s_12(D) + 40B], tmp93
	movl	%eax, 52(%rcx)	# tmp93, sinfo_22(D)->objects_per_slab
	movq	40(%r14), %rax	# MEM[(struct kmem_cache *)s_12(D) + 40B], D.45781
	shrq	$16, %rax	#, D.45781
	movl	%eax, 56(%rcx)	# D.45781, sinfo_22(D)->cache_order
	addq	$8, %rsp	#,
	popq	%rbx	#
	popq	%r12	#
	popq	%r13	#
	popq	%r14	#
	popq	%r15	#
	popq	%rbp	#
	ret
.L1773:
	xorl	%eax, %eax	# D.45781
	xorl	%r12d, %r12d	# nr_objs
	xorl	%ebx, %ebx	# nr_slabs
	jmp	.L1769	#
	.size	get_slabinfo, .-get_slabinfo
	.p2align 4,,15
	.globl	slabinfo_show_stats
	.type	slabinfo_show_stats, @function
slabinfo_show_stats:
	pushq	%rbp	#
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	ret
	.size	slabinfo_show_stats, .-slabinfo_show_stats
	.p2align 4,,15
	.globl	slabinfo_write
	.type	slabinfo_write, @function
slabinfo_write:
	pushq	%rbp	#
	movq	$-5, %rax	#,
	movq	%rsp, %rbp	#,
	popq	%rbp	#
	ret
	.size	slabinfo_write, .-slabinfo_write
	.section	.data.unlikely,"aw",@progbits
	.type	__warned.31916, @object
	.size	__warned.31916, 1
__warned.31916:
	.zero	1
	.type	__warned.31911, @object
	.size	__warned.31911, 1
__warned.31911:
	.zero	1
	.section	.init.data,"aw",@progbits
	.align 32
	.type	boot_kmem_cache.31628, @object
	.size	boot_kmem_cache.31628, 704
boot_kmem_cache.31628:
	.zero	704
	.align 32
	.type	boot_kmem_cache_node.31629, @object
	.size	boot_kmem_cache_node.31629, 704
boot_kmem_cache_node.31629:
	.zero	704
	.section	.rodata
	.align 16
	.type	__func__.30346, @object
	.size	__func__.30346, 19
__func__.30346:
	.string	"slab_out_of_memory"
	.data
	.align 32
	.type	slub_oom_rs.30343, @object
	.size	slub_oom_rs.30343, 32
slub_oom_rs.30343:
# lock:
# raw_lock:
# <anonymous>:
# head_tail:
	.value	0
# interval:
	.zero	2
	.long	500
# burst:
	.long	10
	.zero	20
	.section	.initcall6.init,"aw",@progbits
	.align 8
	.type	__initcall_slab_sysfs_init6, @object
	.size	__initcall_slab_sysfs_init6, 8
__initcall_slab_sysfs_init6:
	.quad	slab_sysfs_init
	.local	alias_list
	.comm	alias_list,8,8
	.local	slab_kset
	.comm	slab_kset,8,8
	.section	.rodata
	.align 16
	.type	slab_uevent_ops, @object
	.size	slab_uevent_ops, 24
slab_uevent_ops:
# filter:
	.quad	uevent_filter
	.zero	16
	.data
	.align 32
	.type	slab_ktype, @object
	.size	slab_ktype, 40
slab_ktype:
# release:
	.quad	kmem_cache_release
# sysfs_ops:
	.quad	slab_sysfs_ops
	.zero	24
	.section	.rodata
	.align 16
	.type	slab_sysfs_ops, @object
	.size	slab_sysfs_ops, 16
slab_sysfs_ops:
# show:
	.quad	slab_attr_show
# store:
	.quad	slab_attr_store
	.data
	.align 32
	.type	slab_attr_group, @object
	.size	slab_attr_group, 32
slab_attr_group:
# attrs:
	.zero	16
	.quad	slab_attrs
	.zero	8
	.align 32
	.type	slab_attrs, @object
	.size	slab_attrs, 256
slab_attrs:
	.quad	slab_size_attr
	.quad	object_size_attr
	.quad	objs_per_slab_attr
	.quad	order_attr
	.quad	min_partial_attr
	.quad	cpu_partial_attr
	.quad	objects_attr
	.quad	objects_partial_attr
	.quad	partial_attr
	.quad	cpu_slabs_attr
	.quad	ctor_attr
	.quad	aliases_attr
	.quad	align_attr
	.quad	hwcache_align_attr
	.quad	reclaim_account_attr
	.quad	destroy_by_rcu_attr
	.quad	shrink_attr
	.quad	reserved_attr
	.quad	slabs_cpu_partial_attr
	.quad	total_objects_attr
	.quad	slabs_attr
	.quad	sanity_checks_attr
	.quad	trace_attr
	.quad	red_zone_attr
	.quad	poison_attr
	.quad	store_user_attr
	.quad	validate_attr
	.quad	alloc_calls_attr
	.quad	free_calls_attr
	.quad	cache_dma_attr
	.quad	remote_node_defrag_ratio_attr
	.quad	0
	.section	.rodata.str1.1
.LC79:
	.string	"remote_node_defrag_ratio"
	.data
	.align 32
	.type	remote_node_defrag_ratio_attr, @object
	.size	remote_node_defrag_ratio_attr, 32
remote_node_defrag_ratio_attr:
# attr:
# name:
	.quad	.LC79
# mode:
	.value	384
	.zero	6
# show:
	.quad	remote_node_defrag_ratio_show
# store:
	.quad	remote_node_defrag_ratio_store
	.section	.rodata.str1.1
.LC80:
	.string	"shrink"
	.data
	.align 32
	.type	shrink_attr, @object
	.size	shrink_attr, 32
shrink_attr:
# attr:
# name:
	.quad	.LC80
# mode:
	.value	384
	.zero	6
# show:
	.quad	shrink_show
# store:
	.quad	shrink_store
	.section	.rodata.str1.1
.LC81:
	.string	"free_calls"
	.data
	.align 32
	.type	free_calls_attr, @object
	.size	free_calls_attr, 32
free_calls_attr:
# attr:
# name:
	.quad	.LC81
# mode:
	.value	256
	.zero	6
# show:
	.quad	free_calls_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC82:
	.string	"alloc_calls"
	.data
	.align 32
	.type	alloc_calls_attr, @object
	.size	alloc_calls_attr, 32
alloc_calls_attr:
# attr:
# name:
	.quad	.LC82
# mode:
	.value	256
	.zero	6
# show:
	.quad	alloc_calls_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC83:
	.string	"validate"
	.data
	.align 32
	.type	validate_attr, @object
	.size	validate_attr, 32
validate_attr:
# attr:
# name:
	.quad	.LC83
# mode:
	.value	384
	.zero	6
# show:
	.quad	validate_show
# store:
	.quad	validate_store
	.section	.rodata.str1.1
.LC84:
	.string	"store_user"
	.data
	.align 32
	.type	store_user_attr, @object
	.size	store_user_attr, 32
store_user_attr:
# attr:
# name:
	.quad	.LC84
# mode:
	.value	384
	.zero	6
# show:
	.quad	store_user_show
# store:
	.quad	store_user_store
	.section	.rodata.str1.1
.LC85:
	.string	"poison"
	.data
	.align 32
	.type	poison_attr, @object
	.size	poison_attr, 32
poison_attr:
# attr:
# name:
	.quad	.LC85
# mode:
	.value	384
	.zero	6
# show:
	.quad	poison_show
# store:
	.quad	poison_store
	.section	.rodata.str1.1
.LC86:
	.string	"red_zone"
	.data
	.align 32
	.type	red_zone_attr, @object
	.size	red_zone_attr, 32
red_zone_attr:
# attr:
# name:
	.quad	.LC86
# mode:
	.value	384
	.zero	6
# show:
	.quad	red_zone_show
# store:
	.quad	red_zone_store
	.section	.rodata.str1.1
.LC87:
	.string	"trace"
	.data
	.align 32
	.type	trace_attr, @object
	.size	trace_attr, 32
trace_attr:
# attr:
# name:
	.quad	.LC87
# mode:
	.value	384
	.zero	6
# show:
	.quad	trace_show
# store:
	.quad	trace_store
	.section	.rodata.str1.1
.LC88:
	.string	"sanity_checks"
	.data
	.align 32
	.type	sanity_checks_attr, @object
	.size	sanity_checks_attr, 32
sanity_checks_attr:
# attr:
# name:
	.quad	.LC88
# mode:
	.value	384
	.zero	6
# show:
	.quad	sanity_checks_show
# store:
	.quad	sanity_checks_store
	.section	.rodata.str1.1
.LC89:
	.string	"total_objects"
	.data
	.align 32
	.type	total_objects_attr, @object
	.size	total_objects_attr, 32
total_objects_attr:
# attr:
# name:
	.quad	.LC89
# mode:
	.value	256
	.zero	6
# show:
	.quad	total_objects_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC90:
	.string	"slabs"
	.data
	.align 32
	.type	slabs_attr, @object
	.size	slabs_attr, 32
slabs_attr:
# attr:
# name:
	.quad	.LC90
# mode:
	.value	256
	.zero	6
# show:
	.quad	slabs_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC91:
	.string	"reserved"
	.data
	.align 32
	.type	reserved_attr, @object
	.size	reserved_attr, 32
reserved_attr:
# attr:
# name:
	.quad	.LC91
# mode:
	.value	256
	.zero	6
# show:
	.quad	reserved_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC92:
	.string	"destroy_by_rcu"
	.data
	.align 32
	.type	destroy_by_rcu_attr, @object
	.size	destroy_by_rcu_attr, 32
destroy_by_rcu_attr:
# attr:
# name:
	.quad	.LC92
# mode:
	.value	256
	.zero	6
# show:
	.quad	destroy_by_rcu_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC93:
	.string	"cache_dma"
	.data
	.align 32
	.type	cache_dma_attr, @object
	.size	cache_dma_attr, 32
cache_dma_attr:
# attr:
# name:
	.quad	.LC93
# mode:
	.value	256
	.zero	6
# show:
	.quad	cache_dma_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC94:
	.string	"hwcache_align"
	.data
	.align 32
	.type	hwcache_align_attr, @object
	.size	hwcache_align_attr, 32
hwcache_align_attr:
# attr:
# name:
	.quad	.LC94
# mode:
	.value	256
	.zero	6
# show:
	.quad	hwcache_align_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC95:
	.string	"reclaim_account"
	.data
	.align 32
	.type	reclaim_account_attr, @object
	.size	reclaim_account_attr, 32
reclaim_account_attr:
# attr:
# name:
	.quad	.LC95
# mode:
	.value	384
	.zero	6
# show:
	.quad	reclaim_account_show
# store:
	.quad	reclaim_account_store
	.section	.rodata.str1.1
.LC96:
	.string	"slabs_cpu_partial"
	.data
	.align 32
	.type	slabs_cpu_partial_attr, @object
	.size	slabs_cpu_partial_attr, 32
slabs_cpu_partial_attr:
# attr:
# name:
	.quad	.LC96
# mode:
	.value	256
	.zero	6
# show:
	.quad	slabs_cpu_partial_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC97:
	.string	"objects_partial"
	.data
	.align 32
	.type	objects_partial_attr, @object
	.size	objects_partial_attr, 32
objects_partial_attr:
# attr:
# name:
	.quad	.LC97
# mode:
	.value	256
	.zero	6
# show:
	.quad	objects_partial_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC98:
	.string	"objects"
	.data
	.align 32
	.type	objects_attr, @object
	.size	objects_attr, 32
objects_attr:
# attr:
# name:
	.quad	.LC98
# mode:
	.value	256
	.zero	6
# show:
	.quad	objects_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC99:
	.string	"cpu_slabs"
	.data
	.align 32
	.type	cpu_slabs_attr, @object
	.size	cpu_slabs_attr, 32
cpu_slabs_attr:
# attr:
# name:
	.quad	.LC99
# mode:
	.value	256
	.zero	6
# show:
	.quad	cpu_slabs_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC100:
	.string	"partial"
	.data
	.align 32
	.type	partial_attr, @object
	.size	partial_attr, 32
partial_attr:
# attr:
# name:
	.quad	.LC100
# mode:
	.value	256
	.zero	6
# show:
	.quad	partial_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC101:
	.string	"aliases"
	.data
	.align 32
	.type	aliases_attr, @object
	.size	aliases_attr, 32
aliases_attr:
# attr:
# name:
	.quad	.LC101
# mode:
	.value	256
	.zero	6
# show:
	.quad	aliases_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC102:
	.string	"ctor"
	.data
	.align 32
	.type	ctor_attr, @object
	.size	ctor_attr, 32
ctor_attr:
# attr:
# name:
	.quad	.LC102
# mode:
	.value	256
	.zero	6
# show:
	.quad	ctor_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC103:
	.string	"cpu_partial"
	.data
	.align 32
	.type	cpu_partial_attr, @object
	.size	cpu_partial_attr, 32
cpu_partial_attr:
# attr:
# name:
	.quad	.LC103
# mode:
	.value	384
	.zero	6
# show:
	.quad	cpu_partial_show
# store:
	.quad	cpu_partial_store
	.section	.rodata.str1.1
.LC104:
	.string	"min_partial"
	.data
	.align 32
	.type	min_partial_attr, @object
	.size	min_partial_attr, 32
min_partial_attr:
# attr:
# name:
	.quad	.LC104
# mode:
	.value	384
	.zero	6
# show:
	.quad	min_partial_show
# store:
	.quad	min_partial_store
	.section	.rodata.str1.1
.LC105:
	.string	"order"
	.data
	.align 32
	.type	order_attr, @object
	.size	order_attr, 32
order_attr:
# attr:
# name:
	.quad	.LC105
# mode:
	.value	384
	.zero	6
# show:
	.quad	order_show
# store:
	.quad	order_store
	.section	.rodata.str1.1
.LC106:
	.string	"objs_per_slab"
	.data
	.align 32
	.type	objs_per_slab_attr, @object
	.size	objs_per_slab_attr, 32
objs_per_slab_attr:
# attr:
# name:
	.quad	.LC106
# mode:
	.value	256
	.zero	6
# show:
	.quad	objs_per_slab_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC107:
	.string	"object_size"
	.data
	.align 32
	.type	object_size_attr, @object
	.size	object_size_attr, 32
object_size_attr:
# attr:
# name:
	.quad	.LC107
# mode:
	.value	256
	.zero	6
# show:
	.quad	object_size_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC108:
	.string	"align"
	.data
	.align 32
	.type	align_attr, @object
	.size	align_attr, 32
align_attr:
# attr:
# name:
	.quad	.LC108
# mode:
	.value	256
	.zero	6
# show:
	.quad	align_show
# store:
	.quad	0
	.section	.rodata.str1.1
.LC109:
	.string	"slab_size"
	.data
	.align 32
	.type	slab_size_attr, @object
	.size	slab_size_attr, 32
slab_size_attr:
# attr:
# name:
	.quad	.LC109
# mode:
	.value	256
	.zero	6
# show:
	.quad	slab_size_show
# store:
	.quad	0
	.globl	__ksymtab_kfree
	.section	___ksymtab+kfree,"a",@progbits
	.align 16
	.type	__ksymtab_kfree, @object
	.size	__ksymtab_kfree, 16
__ksymtab_kfree:
# value:
	.quad	kfree
# name:
	.quad	__kstrtab_kfree
	.section	__ksymtab_strings,"a",@progbits
	.type	__kstrtab_kfree, @object
	.size	__kstrtab_kfree, 6
__kstrtab_kfree:
	.string	"kfree"
	.section	___kcrctab+kfree,"a",@progbits
	.align 8
	.type	__kcrctab_kfree, @object
	.size	__kcrctab_kfree, 8
__kcrctab_kfree:
	.quad	__crc_kfree
	.globl	__ksymtab_ksize
	.section	___ksymtab+ksize,"a",@progbits
	.align 16
	.type	__ksymtab_ksize, @object
	.size	__ksymtab_ksize, 16
__ksymtab_ksize:
# value:
	.quad	ksize
# name:
	.quad	__kstrtab_ksize
	.section	__ksymtab_strings
	.type	__kstrtab_ksize, @object
	.size	__kstrtab_ksize, 6
__kstrtab_ksize:
	.string	"ksize"
	.section	___kcrctab+ksize,"a",@progbits
	.align 8
	.type	__kcrctab_ksize, @object
	.size	__kcrctab_ksize, 8
__kcrctab_ksize:
	.quad	__crc_ksize
	.globl	__ksymtab___kmalloc_node
	.section	___ksymtab+__kmalloc_node,"a",@progbits
	.align 16
	.type	__ksymtab___kmalloc_node, @object
	.size	__ksymtab___kmalloc_node, 16
__ksymtab___kmalloc_node:
# value:
	.quad	__kmalloc_node
# name:
	.quad	__kstrtab___kmalloc_node
	.section	__ksymtab_strings
	.type	__kstrtab___kmalloc_node, @object
	.size	__kstrtab___kmalloc_node, 15
__kstrtab___kmalloc_node:
	.string	"__kmalloc_node"
	.section	___kcrctab+__kmalloc_node,"a",@progbits
	.align 8
	.type	__kcrctab___kmalloc_node, @object
	.size	__kcrctab___kmalloc_node, 8
__kcrctab___kmalloc_node:
	.quad	__crc___kmalloc_node
	.globl	__ksymtab___kmalloc
	.section	___ksymtab+__kmalloc,"a",@progbits
	.align 16
	.type	__ksymtab___kmalloc, @object
	.size	__ksymtab___kmalloc, 16
__ksymtab___kmalloc:
# value:
	.quad	__kmalloc
# name:
	.quad	__kstrtab___kmalloc
	.section	__ksymtab_strings
	.type	__kstrtab___kmalloc, @object
	.size	__kstrtab___kmalloc, 10
__kstrtab___kmalloc:
	.string	"__kmalloc"
	.section	___kcrctab+__kmalloc,"a",@progbits
	.align 8
	.type	__kcrctab___kmalloc, @object
	.size	__kcrctab___kmalloc, 8
__kcrctab___kmalloc:
	.quad	__crc___kmalloc
	.section	.init.setup,"aw",@progbits
	.align 8
	.type	__setup_setup_slub_nomerge, @object
	.size	__setup_setup_slub_nomerge, 24
__setup_setup_slub_nomerge:
# str:
	.quad	__setup_str_setup_slub_nomerge
# setup_func:
	.quad	setup_slub_nomerge
# early:
	.long	0
	.zero	4
	.section	.init.rodata,"a",@progbits
	.type	__setup_str_setup_slub_nomerge, @object
	.size	__setup_str_setup_slub_nomerge, 13
__setup_str_setup_slub_nomerge:
	.string	"slub_nomerge"
	.section	.init.setup
	.align 8
	.type	__setup_setup_slub_min_objects, @object
	.size	__setup_setup_slub_min_objects, 24
__setup_setup_slub_min_objects:
# str:
	.quad	__setup_str_setup_slub_min_objects
# setup_func:
	.quad	setup_slub_min_objects
# early:
	.long	0
	.zero	4
	.section	.init.rodata
	.type	__setup_str_setup_slub_min_objects, @object
	.size	__setup_str_setup_slub_min_objects, 18
__setup_str_setup_slub_min_objects:
	.string	"slub_min_objects="
	.section	.init.setup
	.align 8
	.type	__setup_setup_slub_max_order, @object
	.size	__setup_setup_slub_max_order, 24
__setup_setup_slub_max_order:
# str:
	.quad	__setup_str_setup_slub_max_order
# setup_func:
	.quad	setup_slub_max_order
# early:
	.long	0
	.zero	4
	.section	.init.rodata
	.type	__setup_str_setup_slub_max_order, @object
	.size	__setup_str_setup_slub_max_order, 16
__setup_str_setup_slub_max_order:
	.string	"slub_max_order="
	.section	.init.setup
	.align 8
	.type	__setup_setup_slub_min_order, @object
	.size	__setup_setup_slub_min_order, 24
__setup_setup_slub_min_order:
# str:
	.quad	__setup_str_setup_slub_min_order
# setup_func:
	.quad	setup_slub_min_order
# early:
	.long	0
	.zero	4
	.section	.init.rodata
	.type	__setup_str_setup_slub_min_order, @object
	.size	__setup_str_setup_slub_min_order, 16
__setup_str_setup_slub_min_order:
	.string	"slub_min_order="
	.local	kmem_cache_node
	.comm	kmem_cache_node,8,8
	.local	slub_nomerge
	.comm	slub_nomerge,4,4
	.local	slub_min_objects
	.comm	slub_min_objects,4,4
	.data
	.align 4
	.type	slub_max_order, @object
	.size	slub_max_order, 4
slub_max_order:
	.long	3
	.local	slub_min_order
	.comm	slub_min_order,4,4
	.globl	__ksymtab_kmem_cache_free
	.section	___ksymtab+kmem_cache_free,"a",@progbits
	.align 16
	.type	__ksymtab_kmem_cache_free, @object
	.size	__ksymtab_kmem_cache_free, 16
__ksymtab_kmem_cache_free:
# value:
	.quad	kmem_cache_free
# name:
	.quad	__kstrtab_kmem_cache_free
	.section	__ksymtab_strings
	.type	__kstrtab_kmem_cache_free, @object
	.size	__kstrtab_kmem_cache_free, 16
__kstrtab_kmem_cache_free:
	.string	"kmem_cache_free"
	.section	___kcrctab+kmem_cache_free,"a",@progbits
	.align 8
	.type	__kcrctab_kmem_cache_free, @object
	.size	__kcrctab_kmem_cache_free, 8
__kcrctab_kmem_cache_free:
	.quad	__crc_kmem_cache_free
	.globl	__ksymtab_kmem_cache_alloc_node
	.section	___ksymtab+kmem_cache_alloc_node,"a",@progbits
	.align 16
	.type	__ksymtab_kmem_cache_alloc_node, @object
	.size	__ksymtab_kmem_cache_alloc_node, 16
__ksymtab_kmem_cache_alloc_node:
# value:
	.quad	kmem_cache_alloc_node
# name:
	.quad	__kstrtab_kmem_cache_alloc_node
	.section	__ksymtab_strings
	.type	__kstrtab_kmem_cache_alloc_node, @object
	.size	__kstrtab_kmem_cache_alloc_node, 22
__kstrtab_kmem_cache_alloc_node:
	.string	"kmem_cache_alloc_node"
	.section	___kcrctab+kmem_cache_alloc_node,"a",@progbits
	.align 8
	.type	__kcrctab_kmem_cache_alloc_node, @object
	.size	__kcrctab_kmem_cache_alloc_node, 8
__kcrctab_kmem_cache_alloc_node:
	.quad	__crc_kmem_cache_alloc_node
	.globl	__ksymtab_kmem_cache_alloc
	.section	___ksymtab+kmem_cache_alloc,"a",@progbits
	.align 16
	.type	__ksymtab_kmem_cache_alloc, @object
	.size	__ksymtab_kmem_cache_alloc, 16
__ksymtab_kmem_cache_alloc:
# value:
	.quad	kmem_cache_alloc
# name:
	.quad	__kstrtab_kmem_cache_alloc
	.section	__ksymtab_strings
	.type	__kstrtab_kmem_cache_alloc, @object
	.size	__kstrtab_kmem_cache_alloc, 17
__kstrtab_kmem_cache_alloc:
	.string	"kmem_cache_alloc"
	.section	___kcrctab+kmem_cache_alloc,"a",@progbits
	.align 8
	.type	__kcrctab_kmem_cache_alloc, @object
	.size	__kcrctab_kmem_cache_alloc, 8
__kcrctab_kmem_cache_alloc:
	.quad	__crc_kmem_cache_alloc
	.section	.init.setup
	.align 8
	.type	__setup_setup_slub_debug, @object
	.size	__setup_setup_slub_debug, 24
__setup_setup_slub_debug:
# str:
	.quad	__setup_str_setup_slub_debug
# setup_func:
	.quad	setup_slub_debug
# early:
	.long	0
	.zero	4
	.section	.init.rodata
	.type	__setup_str_setup_slub_debug, @object
	.size	__setup_str_setup_slub_debug, 11
__setup_str_setup_slub_debug:
	.string	"slub_debug"
	.local	disable_higher_order_debug
	.comm	disable_higher_order_debug,4,4
	.local	slub_debug_slabs
	.comm	slub_debug_slabs,8,8
	.local	slub_debug
	.comm	slub_debug,4,4
	.data
	.align 16
	.type	slab_notifier, @object
	.size	slab_notifier, 24
slab_notifier:
# notifier_call:
	.quad	slab_cpuup_callback
	.zero	16
	.weak	__crc_kmem_cache_alloc
	.weak	__crc_kmem_cache_alloc_node
	.weak	__crc_kmem_cache_free
	.weak	__crc___kmalloc
	.weak	__crc___kmalloc_node
	.weak	__crc_ksize
	.weak	__crc_kfree
	.ident	"GCC: (Gentoo 4.8.3 p1.1, pie-0.5.9) 4.8.3"
	.section	.note.GNU-stack,"",@progbits

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: 3.16.1 - general protection fault
  2014-09-24 16:44 3.16.1 - general protection fault Marcin Gibula
@ 2014-09-24 20:18 ` Dr. David Alan Gilbert
  2014-09-30 14:50   ` Dr. David Alan Gilbert
  0 siblings, 1 reply; 4+ messages in thread
From: Dr. David Alan Gilbert @ 2014-09-24 20:18 UTC (permalink / raw)
  To: Marcin Gibula; +Cc: linux-kernel, aarcange

* Marcin Gibula (m.gibula@gmail.com) wrote:

Hi Marcin,

> Hi,
> 
> I've been playing with 3.16 kernel on my test machine as a KVM
> hypervisor and encountered the following crash twice (almost identical
> backtraces).
> 
> Sep 24 09:39:31 dev4 kernel: general protection fault: 0000 [#1] SMP

<snip>

> This machine is serving as NFS client and KVM hypervisor. I'm still
> not sure how to trigger it reliably (right now, I just have to run
> ubuntu instalation in VM guest multiple times and sometimes it
> triggers).
> 
> Attaching .config, slub.s and disassembled __kmalloc_node_track_caller function.

Yes, I hit something similar:

http://www.spinics.net/lists/linux-nfs/msg46047.html 'nfs: disallow duplicate pages in pgio page vectors'
http://www.spinics.net/lists/linux-nfs/msg46048.html 'nfs: can_coalesce_requests must enforce contiguity'

seem to stop the GPF's/crashes, although there's still something else
going on with a corruption I'm seeing every so often.

Dave

-- 
 -----Open up your eyes, open up your mind, open up your code -------   
/ Dr. David Alan Gilbert    |       Running GNU/Linux       | Happy  \ 
\ gro.gilbert @ treblig.org |                               | In Hex /
 \ _________________________|_____ http://www.treblig.org   |_______/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: 3.16.1 - general protection fault
  2014-09-24 20:18 ` Dr. David Alan Gilbert
@ 2014-09-30 14:50   ` Dr. David Alan Gilbert
  2014-10-01  8:09     ` Marcin Gibula
  0 siblings, 1 reply; 4+ messages in thread
From: Dr. David Alan Gilbert @ 2014-09-30 14:50 UTC (permalink / raw)
  To: Marcin Gibula; +Cc: linux-kernel, aarcange

* Dr. David Alan Gilbert (dave@treblig.org) wrote:
> * Marcin Gibula (m.gibula@gmail.com) wrote:
> 
> Hi Marcin,
> 
> > Hi,
> > 
> > I've been playing with 3.16 kernel on my test machine as a KVM
> > hypervisor and encountered the following crash twice (almost identical
> > backtraces).
> > 
> > Sep 24 09:39:31 dev4 kernel: general protection fault: 0000 [#1] SMP
> 
> <snip>
> 
> > This machine is serving as NFS client and KVM hypervisor. I'm still
> > not sure how to trigger it reliably (right now, I just have to run
> > ubuntu instalation in VM guest multiple times and sometimes it
> > triggers).
> > 
> > Attaching .config, slub.s and disassembled __kmalloc_node_track_caller function.
> 
> Yes, I hit something similar:
> 
> http://www.spinics.net/lists/linux-nfs/msg46047.html 'nfs: disallow duplicate pages in pgio page vectors'
> http://www.spinics.net/lists/linux-nfs/msg46048.html 'nfs: can_coalesce_requests must enforce contiguity'
> 
> seem to stop the GPF's/crashes, although there's still something else
> going on with a corruption I'm seeing every so often.

And that 'something else' seems to be fixed by:

http://marc.info/?l=linux-nfs&m=141208464631105&w=2

Enjoy,

Dave
-- 
 -----Open up your eyes, open up your mind, open up your code -------   
/ Dr. David Alan Gilbert    |       Running GNU/Linux       | Happy  \ 
\ gro.gilbert @ treblig.org |                               | In Hex /
 \ _________________________|_____ http://www.treblig.org   |_______/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: 3.16.1 - general protection fault
  2014-09-30 14:50   ` Dr. David Alan Gilbert
@ 2014-10-01  8:09     ` Marcin Gibula
  0 siblings, 0 replies; 4+ messages in thread
From: Marcin Gibula @ 2014-10-01  8:09 UTC (permalink / raw)
  To: Dr. David Alan Gilbert; +Cc: linux-kernel, aarcange

>> Yes, I hit something similar:
>>
>> http://www.spinics.net/lists/linux-nfs/msg46047.html 'nfs: disallow duplicate pages in pgio page vectors'
>> http://www.spinics.net/lists/linux-nfs/msg46048.html 'nfs: can_coalesce_requests must enforce contiguity'
>>
>> seem to stop the GPF's/crashes, although there's still something else
>> going on with a corruption I'm seeing every so often.
>
> And that 'something else' seems to be fixed by:
>
> http://marc.info/?l=linux-nfs&m=141208464631105&w=2

Thanks !

-- 
mg

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-10-01  8:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-09-24 16:44 3.16.1 - general protection fault Marcin Gibula
2014-09-24 20:18 ` Dr. David Alan Gilbert
2014-09-30 14:50   ` Dr. David Alan Gilbert
2014-10-01  8:09     ` Marcin Gibula

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.