
c02401d0 <__elv_add_request>:
c02401d0:	83 ec 10             	sub    $0x10,%esp
c02401d3:	89 1c 24             	mov    %ebx,(%esp)
c02401d6:	8b 5c 24 14          	mov    0x14(%esp),%ebx
c02401da:	89 74 24 04          	mov    %esi,0x4(%esp)
c02401de:	89 d6                	mov    %edx,%esi
c02401e0:	89 7c 24 08          	mov    %edi,0x8(%esp)
c02401e4:	89 c7                	mov    %eax,%edi
c02401e6:	89 6c 24 0c          	mov    %ebp,0xc(%esp)
c02401ea:	89 cd                	mov    %ecx,%ebp
c02401ec:	f6 42 08 0c          	testb  $0xc,0x8(%edx)
c02401f0:	0f 95 c2             	setne  %dl
c02401f3:	31 c0                	xor    %eax,%eax
c02401f5:	83 f9 03             	cmp    $0x3,%ecx
c02401f8:	0f 94 c0             	sete   %al
c02401fb:	85 c2                	test   %eax,%edx
c02401fd:	b8 02 00 00 00       	mov    $0x2,%eax
c0240202:	0f 45 e8             	cmovne %eax,%ebp
c0240205:	85 db                	test   %ebx,%ebx
c0240207:	75 37                	jne    c0240240 <__elv_add_request+0x70>
c0240209:	89 7e 5c             	mov    %edi,0x5c(%esi)
c024020c:	8b 87 f0 00 00 00    	mov    0xf0(%edi),%eax
c0240212:	f6 c4 01             	test   $0x1,%ah
c0240215:	74 49                	je     c0240260 <__elv_add_request+0x90>
c0240217:	8d 87 6c 01 00 00    	lea    0x16c(%edi),%eax
c024021d:	8b 50 04             	mov    0x4(%eax),%edx
c0240220:	89 06                	mov    %eax,(%esi)
c0240222:	89 70 04             	mov    %esi,0x4(%eax)
c0240225:	89 32                	mov    %esi,(%edx)
c0240227:	89 56 04             	mov    %edx,0x4(%esi)
c024022a:	8b 1c 24             	mov    (%esp),%ebx
c024022d:	8b 74 24 04          	mov    0x4(%esp),%esi
c0240231:	8b 7c 24 08          	mov    0x8(%esp),%edi
c0240235:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
c0240239:	83 c4 10             	add    $0x10,%esp
c024023c:	c3                   	ret    
c024023d:	8d 76 00             	lea    0x0(%esi),%esi
c0240240:	89 f8                	mov    %edi,%eax
c0240242:	e8 a9 23 00 00       	call   c02425f0 <blk_plug_device>
c0240247:	89 7e 5c             	mov    %edi,0x5c(%esi)
c024024a:	8b 87 f0 00 00 00    	mov    0xf0(%edi),%eax
c0240250:	f6 c4 01             	test   $0x1,%ah
c0240253:	75 c2                	jne    c0240217 <__elv_add_request+0x47>
c0240255:	8d 74 26 00          	lea    0x0(%esi),%esi
c0240259:	8d bc 27 00 00 00 00 	lea    0x0(%edi),%edi
c0240260:	8b 47 0c             	mov    0xc(%edi),%eax
c0240263:	89 e9                	mov    %ebp,%ecx
c0240265:	89 f2                	mov    %esi,%edx
c0240267:	8b 18                	mov    (%eax),%ebx
c0240269:	89 f8                	mov    %edi,%eax
c024026b:	ff 53 10             	call   *0x10(%ebx)
c024026e:	8b 87 f0 00 00 00    	mov    0xf0(%edi),%eax
c0240274:	a8 80                	test   $0x80,%al
c0240276:	74 b2                	je     c024022a <__elv_add_request+0x5a>
c0240278:	8b 47 14             	mov    0x14(%edi),%eax
c024027b:	8b 4f 10             	mov    0x10(%edi),%ecx
c024027e:	8b 97 5c 01 00 00    	mov    0x15c(%edi),%edx
c0240284:	01 c8                	add    %ecx,%eax
c0240286:	29 d0                	sub    %edx,%eax
c0240288:	39 87 88 00 00 00    	cmp    %eax,0x88(%edi)
c024028e:	7f 9a                	jg     c024022a <__elv_add_request+0x5a>
c0240290:	89 f8                	mov    %edi,%eax
c0240292:	8b 1c 24             	mov    (%esp),%ebx
c0240295:	8b 74 24 04          	mov    0x4(%esp),%esi
c0240299:	8b 7c 24 08          	mov    0x8(%esp),%edi
c024029d:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
c02402a1:	83 c4 10             	add    $0x10,%esp
c02402a4:	e9 37 24 00 00       	jmp    c02426e0 <__generic_unplug_device>
c02402a9:	8d b4 26 00 00 00 00 	lea    0x0(%esi),%esi

c02402b0 <elv_add_request>:
c02402b0:	83 ec 0c             	sub    $0xc,%esp
c02402b3:	89 5c 24 04          	mov    %ebx,0x4(%esp)
c02402b7:	89 74 24 08          	mov    %esi,0x8(%esp)
c02402bb:	9c                   	pushf  
c02402bc:	5e                   	pop    %esi
c02402bd:	fa                   	cli    
c02402be:	8b 5c 24 10          	mov    0x10(%esp),%ebx
c02402c2:	89 1c 24             	mov    %ebx,(%esp)
c02402c5:	e8 06 ff ff ff       	call   c02401d0 <__elv_add_request>
c02402ca:	56                   	push   %esi
c02402cb:	9d                   	popf   
c02402cc:	8b 5c 24 04          	mov    0x4(%esp),%ebx
c02402d0:	8b 74 24 08          	mov    0x8(%esp),%esi
c02402d4:	83 c4 0c             	add    $0xc,%esp
c02402d7:	c3                   	ret    
c02402d8:	90                   	nop    
c02402d9:	8d b4 26 00 00 00 00 	lea    0x0(%esi),%esi

c02402e0 <elv_next_request>:
c02402e0:	57                   	push   %edi
c02402e1:	56                   	push   %esi
c02402e2:	89 c6                	mov    %eax,%esi
c02402e4:	53                   	push   %ebx
c02402e5:	83 ec 0c             	sub    $0xc,%esp
c02402e8:	eb 1f                	jmp    c0240309 <elv_next_request+0x29>
c02402ea:	8d b6 00 00 00 00    	lea    0x0(%esi),%esi
c02402f0:	81 4b 08 00 20 00 00 	orl    $0x2000,0x8(%ebx)
c02402f7:	89 f9                	mov    %edi,%ecx
c02402f9:	31 d2                	xor    %edx,%edx
c02402fb:	89 d8                	mov    %ebx,%eax
c02402fd:	e8 7e 44 00 00       	call   c0244780 <end_that_request_chunk>
c0240302:	89 d8                	mov    %ebx,%eax
c0240304:	e8 87 44 00 00       	call   c0244790 <end_that_request_last>
c0240309:	8b 46 0c             	mov    0xc(%esi),%eax
c024030c:	8b 10                	mov    (%eax),%edx
c024030e:	89 f0                	mov    %esi,%eax
c0240310:	ff 52 0c             	call   *0xc(%edx)
c0240313:	85 c0                	test   %eax,%eax
c0240315:	74 29                	je     c0240340 <elv_next_request+0x60>
c0240317:	8b 50 08             	mov    0x8(%eax),%edx
c024031a:	f6 c2 10             	test   $0x10,%dl
c024031d:	74 21                	je     c0240340 <elv_next_request+0x60>
c024031f:	f6 c2 08             	test   $0x8,%dl
c0240322:	74 1c                	je     c0240340 <elv_next_request+0x60>
c0240324:	0f b6 8e 78 01 00 00 	movzbl 0x178(%esi),%ecx
c024032b:	84 c9                	test   %cl,%cl
c024032d:	0f 84 fc 00 00 00    	je     c024042f <elv_next_request+0x14f>
c0240333:	80 f9 02             	cmp    $0x2,%cl
c0240336:	0f 84 9b 00 00 00    	je     c02403d7 <elv_next_request+0xf7>
c024033c:	8d 74 26 00          	lea    0x0(%esi),%esi
c0240340:	85 c0                	test   %eax,%eax
c0240342:	89 c3                	mov    %eax,%ebx
c0240344:	0f 84 84 00 00 00    	je     c02403ce <elv_next_request+0xee>
c024034a:	8b 43 08             	mov    0x8(%ebx),%eax
c024034d:	83 c8 40             	or     $0x40,%eax
c0240350:	89 43 08             	mov    %eax,0x8(%ebx)
c0240353:	39 5e 08             	cmp    %ebx,0x8(%esi)
c0240356:	74 68                	je     c02403c0 <elv_next_request+0xe0>
c0240358:	84 c0                	test   %al,%al
c024035a:	78 72                	js     c02403ce <elv_next_request+0xee>
c024035c:	8b 4e 50             	mov    0x50(%esi),%ecx
c024035f:	85 c9                	test   %ecx,%ecx
c0240361:	74 6b                	je     c02403ce <elv_next_request+0xee>
c0240363:	89 da                	mov    %ebx,%edx
c0240365:	89 f0                	mov    %esi,%eax
c0240367:	ff d1                	call   *%ecx
c0240369:	85 c0                	test   %eax,%eax
c024036b:	74 61                	je     c02403ce <elv_next_request+0xee>
c024036d:	83 f8 02             	cmp    $0x2,%eax
c0240370:	74 7f                	je     c02403f1 <elv_next_request+0x111>
c0240372:	83 f8 01             	cmp    $0x1,%eax
c0240375:	0f 85 85 00 00 00    	jne    c0240400 <elv_next_request+0x120>
c024037b:	8b 43 24             	mov    0x24(%ebx),%eax
c024037e:	89 c7                	mov    %eax,%edi
c0240380:	c1 e7 09             	shl    $0x9,%edi
c0240383:	75 06                	jne    c024038b <elv_next_request+0xab>
c0240385:	8b bb 80 00 00 00    	mov    0x80(%ebx),%edi
c024038b:	8b 13                	mov    (%ebx),%edx
c024038d:	39 da                	cmp    %ebx,%edx
c024038f:	0f 84 8d 00 00 00    	je     c0240422 <elv_next_request+0x142>
c0240395:	8b 43 04             	mov    0x4(%ebx),%eax
c0240398:	89 42 04             	mov    %eax,0x4(%edx)
c024039b:	89 10                	mov    %edx,(%eax)
c024039d:	8b 43 60             	mov    0x60(%ebx),%eax
c02403a0:	89 1b                	mov    %ebx,(%ebx)
c02403a2:	89 5b 04             	mov    %ebx,0x4(%ebx)
c02403a5:	85 c0                	test   %eax,%eax
c02403a7:	0f 84 43 ff ff ff    	je     c02402f0 <elv_next_request+0x10>
c02403ad:	8b 43 5c             	mov    0x5c(%ebx),%eax
c02403b0:	89 da                	mov    %ebx,%edx
c02403b2:	e8 89 00 00 00       	call   c0240440 <elv_remove_request>
c02403b7:	e9 34 ff ff ff       	jmp    c02402f0 <elv_next_request+0x10>
c02403bc:	8d 74 26 00          	lea    0x0(%esi),%esi
c02403c0:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
c02403c7:	8b 43 08             	mov    0x8(%ebx),%eax
c02403ca:	84 c0                	test   %al,%al
c02403cc:	79 8e                	jns    c024035c <elv_next_request+0x7c>
c02403ce:	83 c4 0c             	add    $0xc,%esp
c02403d1:	89 d8                	mov    %ebx,%eax
c02403d3:	5b                   	pop    %ebx
c02403d4:	5e                   	pop    %esi
c02403d5:	5f                   	pop    %edi
c02403d6:	c3                   	ret    
c02403d7:	81 e2 00 00 40 00    	and    $0x400000,%edx
c02403dd:	0f 85 5d ff ff ff    	jne    c0240340 <elv_next_request+0x60>
c02403e3:	89 c2                	mov    %eax,%edx
c02403e5:	89 f0                	mov    %esi,%eax
c02403e7:	e8 74 09 00 00       	call   c0240d60 <blk_start_pre_flush>
c02403ec:	e9 4f ff ff ff       	jmp    c0240340 <elv_next_request+0x60>
c02403f1:	83 4b 08 04          	orl    $0x4,0x8(%ebx)
c02403f5:	83 c4 0c             	add    $0xc,%esp
c02403f8:	31 db                	xor    %ebx,%ebx
c02403fa:	89 d8                	mov    %ebx,%eax
c02403fc:	5b                   	pop    %ebx
c02403fd:	5e                   	pop    %esi
c02403fe:	5f                   	pop    %edi
c02403ff:	c3                   	ret    
c0240400:	89 44 24 08          	mov    %eax,0x8(%esp)
c0240404:	be 70 c0 32 c0       	mov    $0xc032c070,%esi
c0240409:	89 74 24 04          	mov    %esi,0x4(%esp)
c024040d:	c7 04 24 72 59 34 c0 	movl   $0xc0345972,(%esp)
c0240414:	e8 47 8e ed ff       	call   c0119260 <printk>
c0240419:	83 c4 0c             	add    $0xc,%esp
c024041c:	89 d8                	mov    %ebx,%eax
c024041e:	5b                   	pop    %ebx
c024041f:	5e                   	pop    %esi
c0240420:	5f                   	pop    %edi
c0240421:	c3                   	ret    
c0240422:	0f 0b                	ud2a   
c0240424:	66                   	data16
c0240425:	02 88 59 34 c0 e9    	add    0xe9c03459(%eax),%cl
c024042b:	66                   	data16
c024042c:	ff                   	(bad)  
c024042d:	ff                   	(bad)  
c024042e:	ff 0f                	decl   (%edi)
c0240430:	0b 66 01             	or     0x1(%esi),%esp
c0240433:	9f                   	lahf   
c0240434:	59                   	pop    %ecx
c0240435:	34 c0                	xor    $0xc0,%al
c0240437:	e9 04 ff ff ff       	jmp    c0240340 <elv_next_request+0x60>
c024043c:	8d 74 26 00          	lea    0x0(%esi),%esi

c0240440 <elv_remove_request>:
c0240440:	53                   	push   %ebx
c0240441:	8b 4a 08             	mov    0x8(%edx),%ecx
c0240444:	89 c3                	mov    %eax,%ebx
c0240446:	8b 40 0c             	mov    0xc(%eax),%eax
c0240449:	f6 c1 40             	test   $0x40,%cl
c024044c:	74 05                	je     c0240453 <elv_remove_request+0x13>
c024044e:	f6 c1 10             	test   $0x10,%cl
c0240451:	75 1e                	jne    c0240471 <elv_remove_request+0x31>
c0240453:	39 53 08             	cmp    %edx,0x8(%ebx)
c0240456:	74 28                	je     c0240480 <elv_remove_request+0x40>
c0240458:	8b 00                	mov    (%eax),%eax
c024045a:	8b 48 14             	mov    0x14(%eax),%ecx
c024045d:	85 c9                	test   %ecx,%ecx
c024045f:	75 02                	jne    c0240463 <elv_remove_request+0x23>
c0240461:	5b                   	pop    %ebx
c0240462:	c3                   	ret    
c0240463:	89 d8                	mov    %ebx,%eax
c0240465:	ff d1                	call   *%ecx
c0240467:	5b                   	pop    %ebx
c0240468:	90                   	nop    
c0240469:	8d b4 26 00 00 00 00 	lea    0x0(%esi),%esi
c0240470:	c3                   	ret    
c0240471:	ff 83 5c 01 00 00    	incl   0x15c(%ebx)
c0240477:	39 53 08             	cmp    %edx,0x8(%ebx)
c024047a:	75 dc                	jne    c0240458 <elv_remove_request+0x18>
c024047c:	8d 74 26 00          	lea    0x0(%esi),%esi
c0240480:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
c0240487:	eb cf                	jmp    c0240458 <elv_remove_request+0x18>
c0240489:	8d b4 26 00 00 00 00 	lea    0x0(%esi),%esi
