⬢ DragonFlyBSD Kernel Audit
DF-2913 / kernel_disasm_plimit_testcpulimit.txt
← back to finding ↓ download raw
/boot/kernel/kernel:     file format elf64-x86-64


Disassembly of section .text:

ffffffff80655b00 <plimit_testcpulimit>:
ffffffff80655b00:	55                   	push   %rbp
ffffffff80655b01:	65 48 8b 04 25 00 00 	mov    %gs:0x0,%rax
ffffffff80655b08:	00 00 
ffffffff80655b0a:	48 89 e5             	mov    %rsp,%rbp
ffffffff80655b0d:	41 56                	push   %r14
ffffffff80655b0f:	41 55                	push   %r13
ffffffff80655b11:	49 89 f5             	mov    %rsi,%r13
ffffffff80655b14:	41 54                	push   %r12
ffffffff80655b16:	53                   	push   %rbx
ffffffff80655b17:	4c 8b 70 08          	mov    0x8(%rax),%r14
ffffffff80655b1b:	4c 8b 67 28          	mov    0x28(%rdi),%r12
ffffffff80655b1f:	4d 39 a6 30 01 00 00 	cmp    %r12,0x130(%r14)
ffffffff80655b26:	0f 84 ad 00 00 00    	je     ffffffff80655bd9 <plimit_testcpulimit+0xd9>
ffffffff80655b2c:	48 89 fb             	mov    %rdi,%rbx
ffffffff80655b2f:	48 8d bf 20 04 00 00 	lea    0x420(%rdi),%rdi
ffffffff80655b36:	41 83 86 d4 00 00 00 	addl   $0x1,0xd4(%r14)
ffffffff80655b3d:	01 
ffffffff80655b3e:	83 80 f0 36 00 00 01 	addl   $0x1,0x36f0(%rax)
ffffffff80655b45:	b8 01 00 00 00       	mov    $0x1,%eax
ffffffff80655b4a:	89 c2                	mov    %eax,%edx
ffffffff80655b4c:	f0 0f c1 93 20 04 00 	lock xadd %edx,0x420(%rbx)
ffffffff80655b53:	00 
ffffffff80655b54:	85 d2                	test   %edx,%edx
ffffffff80655b56:	0f 89 d9 00 00 00    	jns    ffffffff80655c35 <plimit_testcpulimit+0x135>
ffffffff80655b5c:	4c 8b 63 28          	mov    0x28(%rbx),%r12
ffffffff80655b60:	f0 41 83 84 24 08 01 	lock addl $0x1,0x108(%r12)
ffffffff80655b67:	00 00 01 
ffffffff80655b6a:	65 48 8b 04 25 00 00 	mov    %gs:0x0,%rax
ffffffff80655b71:	00 00 
ffffffff80655b73:	f0 83 83 20 04 00 00 	lock addl $0xffffffff,0x420(%rbx)
ffffffff80655b7a:	ff 
ffffffff80655b7b:	83 a8 f0 36 00 00 01 	subl   $0x1,0x36f0(%rax)
ffffffff80655b82:	48 8b 78 08          	mov    0x8(%rax),%rdi
ffffffff80655b86:	83 af d4 00 00 00 01 	subl   $0x1,0xd4(%rdi)
ffffffff80655b8d:	8b 87 d4 00 00 00    	mov    0xd4(%rdi),%eax
ffffffff80655b93:	85 c0                	test   %eax,%eax
ffffffff80655b95:	0f 88 95 00 00 00    	js     ffffffff80655c30 <plimit_testcpulimit+0x130>
ffffffff80655b9b:	48 8b 87 b8 00 00 00 	mov    0xb8(%rdi),%rax
ffffffff80655ba2:	f7 40 18 83 08 00 00 	testl  $0x883,0x18(%rax)
ffffffff80655ba9:	0f 85 d1 00 00 00    	jne    ffffffff80655c80 <plimit_testcpulimit+0x180>
ffffffff80655baf:	49 8b be 30 01 00 00 	mov    0x130(%r14),%rdi
ffffffff80655bb6:	48 85 ff             	test   %rdi,%rdi
ffffffff80655bb9:	74 17                	je     ffffffff80655bd2 <plimit_testcpulimit+0xd2>
ffffffff80655bbb:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
ffffffff80655bc0:	f0 0f c1 87 08 01 00 	lock xadd %eax,0x108(%rdi)
ffffffff80655bc7:	00 
ffffffff80655bc8:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
ffffffff80655bcd:	83 f8 01             	cmp    $0x1,%eax
ffffffff80655bd0:	74 7e                	je     ffffffff80655c50 <plimit_testcpulimit+0x150>
ffffffff80655bd2:	4d 89 a6 30 01 00 00 	mov    %r12,0x130(%r14)
ffffffff80655bd9:	49 8b 94 24 c0 00 00 	mov    0xc0(%r12),%rdx
ffffffff80655be0:	00 
ffffffff80655be1:	31 c0                	xor    %eax,%eax
ffffffff80655be3:	48 b9 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rcx
ffffffff80655bea:	ff ff 7f 
ffffffff80655bed:	48 39 ca             	cmp    %rcx,%rdx
ffffffff80655bf0:	74 2e                	je     ffffffff80655c20 <plimit_testcpulimit+0x120>
ffffffff80655bf2:	4c 39 ea             	cmp    %r13,%rdx
ffffffff80655bf5:	73 29                	jae    ffffffff80655c20 <plimit_testcpulimit+0x120>
ffffffff80655bf7:	48 ba db 34 b6 d7 82 	movabs $0x431bde82d7b634db,%rdx
ffffffff80655bfe:	de 1b 43 
ffffffff80655c01:	4c 89 e8             	mov    %r13,%rax
ffffffff80655c04:	48 f7 e2             	mul    %rdx
ffffffff80655c07:	49 8b 44 24 08       	mov    0x8(%r12),%rax
ffffffff80655c0c:	48 83 c0 05          	add    $0x5,%rax
ffffffff80655c10:	48 c1 ea 12          	shr    $0x12,%rdx
ffffffff80655c14:	48 39 c2             	cmp    %rax,%rdx
ffffffff80655c17:	0f 93 c0             	setae  %al
ffffffff80655c1a:	0f b6 c0             	movzbl %al,%eax
ffffffff80655c1d:	83 c0 01             	add    $0x1,%eax
ffffffff80655c20:	5b                   	pop    %rbx
ffffffff80655c21:	41 5c                	pop    %r12
ffffffff80655c23:	41 5d                	pop    %r13
ffffffff80655c25:	41 5e                	pop    %r14
ffffffff80655c27:	5d                   	pop    %rbp
ffffffff80655c28:	c3                   	retq   
ffffffff80655c29:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
ffffffff80655c30:	e8 9b d0 01 00       	callq  ffffffff80672cd0 <crit_panic>
ffffffff80655c35:	74 29                	je     ffffffff80655c60 <plimit_testcpulimit+0x160>
ffffffff80655c37:	48 c7 c6 28 47 d6 80 	mov    $0xffffffff80d64728,%rsi
ffffffff80655c3e:	e8 9d 88 02 00       	callq  ffffffff8067e4e0 <_spin_lock_shared_contested>
ffffffff80655c43:	e9 14 ff ff ff       	jmpq   ffffffff80655b5c <plimit_testcpulimit+0x5c>
ffffffff80655c48:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
ffffffff80655c4f:	00 
ffffffff80655c50:	e8 2b f2 ff ff       	callq  ffffffff80654e80 <plimit_free.part.3>
ffffffff80655c55:	e9 78 ff ff ff       	jmpq   ffffffff80655bd2 <plimit_testcpulimit+0xd2>
ffffffff80655c5a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)