Hi Segher,

On Sun, Jul 21, 2019 at 01:01:50PM -0500, Segher Boessenkool wrote:
> On Sun, Jul 21, 2019 at 12:58:46AM -0700, Nathan Chancellor wrote:
> > I have attached the disassembly of arch/powerpc/kernel/mem.o with
> > clear_page (working) and broken_clear_page (broken), along with the side
> > by side diff. My assembly knowledge is fairly limited as it stands and
> > it is certainly not up to snuff on PowerPC so I have no idea what I am
> > looking for. Please let me know if anything immediately looks off or if
> > there is anything else I can do to help out.
> 
> You might want to use a disassembler that shows most simplified mnemonics,
> and you crucially should show the relocations.  "objdump -dr" works nicely.

Copy, those are attached below if you want to take a further look at
them.

> > 0000017c clear_user_page:
> >      17c: 38 80 00 80                       li 4, 128
> >      180: 7c 89 03 a6                       mtctr 4
> >      184: 7c 00 1f ec                       dcbz 0, 3
> >      188: 38 63 00 20                       addi 3, 3, 32
> >      18c: 42 00 ff f8                       bdnz .+65528
> 
> That offset is incorrectly disassembled, btw (it's a signed field, not
> unsigned).
> 
> > 0000017c clear_user_page:
> >      17c: 94 21 ff f0                       stwu 1, -16(1)
> >      180: 38 80 00 80                       li 4, 128
> >      184: 38 63 ff e0                       addi 3, 3, -32
> >      188: 7c 89 03 a6                       mtctr 4
> >      18c: 38 81 00 0f                       addi 4, 1, 15
> >      190: 8c c3 00 20                       lbzu 6, 32(3)
> >      194: 98 c1 00 0f                       stb 6, 15(1)
> >      198: 7c 00 27 ec                       dcbz 0, 4
> >      19c: 42 00 ff f4                       bdnz .+65524
> 
> Uh, yeah, well, I have no idea what clang tried here, but that won't
> work.  It's copying a byte from each target cache line to the stack,
> and then does clears the cache line containing that byte on the stack.
> 
> I *guess* this is about "Z" and not about "%y", but you'll have to ask
> the clang people.
> 
> Or it may be that they do not treat inline asm operands as lvalues
> properly?  That rings some bells.  Yeah that looks like it.
> 
> 
> Segher

Okay, I think I understand... I think this is enough to bring up an LLVM
bug report but I'll ask some of the LLVM folks I know before doing so.

Thank you for all of the input, I really appreciate it,
Nathan
mem-working.o:     file format elf32-powerpc


Disassembly of section .text:

00000000 <phys_mem_access_prot>:
   0:   7c 08 02 a6     mflr    r0
   4:   90 01 00 04     stw     r0,4(r1)
   8:   94 21 ff e0     stwu    r1,-32(r1)
   c:   93 a1 00 14     stw     r29,20(r1)
  10:   7c fd 3b 78     mr      r29,r7
  14:   3c e0 00 00     lis     r7,0
                        16: R_PPC_ADDR16_HA     ppc_md
  18:   38 e7 00 00     addi    r7,r7,0
                        1a: R_PPC_ADDR16_LO     ppc_md
  1c:   81 07 00 a0     lwz     r8,160(r7)
  20:   93 c1 00 18     stw     r30,24(r1)
  24:   28 08 00 00     cmplwi  r8,0
  28:   7c 7e 1b 78     mr      r30,r3
  2c:   41 82 00 20     beq     4c <phys_mem_access_prot+0x4c>
  30:   80 7d 00 00     lwz     r3,0(r29)
  34:   38 e1 00 08     addi    r7,r1,8
  38:   7d 09 03 a6     mtctr   r8
  3c:   90 61 00 08     stw     r3,8(r1)
  40:   7f c3 f3 78     mr      r3,r30
  44:   4e 80 04 21     bctrl
  48:   48 00 00 28     b       70 <phys_mem_access_prot+0x70>
  4c:   7c a3 2b 78     mr      r3,r5
  50:   48 00 00 01     bl      50 <phys_mem_access_prot+0x50>
                        50: R_PPC_PLTREL24      page_is_ram
  54:   28 03 00 00     cmplwi  r3,0
  58:   80 7d 00 00     lwz     r3,0(r29)
  5c:   40 82 00 10     bne     6c <phys_mem_access_prot+0x6c>
  60:   54 63 06 26     rlwinm  r3,r3,0,24,19
  64:   60 63 05 00     ori     r3,r3,1280
  68:   90 7d 00 00     stw     r3,0(r29)
  6c:   90 7e 00 00     stw     r3,0(r30)
  70:   83 c1 00 18     lwz     r30,24(r1)
  74:   83 a1 00 14     lwz     r29,20(r1)
  78:   80 01 00 24     lwz     r0,36(r1)
  7c:   38 21 00 20     addi    r1,r1,32
  80:   7c 08 03 a6     mtlr    r0
  84:   4e 80 00 20     blr

00000088 <free_initmem>:
  88:   7c 08 02 a6     mflr    r0
  8c:   90 01 00 04     stw     r0,4(r1)
  90:   94 21 ff f0     stwu    r1,-16(r1)
  94:   3c 60 00 00     lis     r3,0
                        96: R_PPC_ADDR16_HA     ppc_md
  98:   3c 80 00 00     lis     r4,0
                        9a: R_PPC_ADDR16_HA     ppc_printk_progress
  9c:   38 63 00 00     addi    r3,r3,0
                        9e: R_PPC_ADDR16_LO     ppc_md
  a0:   38 84 00 00     addi    r4,r4,0
                        a2: R_PPC_ADDR16_LO     ppc_printk_progress
  a4:   90 83 00 60     stw     r4,96(r3)
  a8:   48 00 00 01     bl      a8 <free_initmem+0x20>
                        a8: R_PPC_PLTREL24      mark_initmem_nx
  ac:   3c 60 00 00     lis     r3,0
                        ae: R_PPC_ADDR16_HA     init_mem_is_free
  b0:   38 80 00 01     li      r4,1
  b4:   98 83 00 00     stb     r4,0(r3)
                        b6: R_PPC_ADDR16_LO     init_mem_is_free
  b8:   3c 60 00 00     lis     r3,0
                        ba: R_PPC_ADDR16_HA     __init_begin
  bc:   3c 80 00 00     lis     r4,0
                        be: R_PPC_ADDR16_HA     __init_end
  c0:   3c a0 00 00     lis     r5,0
                        c2: R_PPC_ADDR16_HA     .rodata.str1.1+0x107
  c4:   38 63 00 00     addi    r3,r3,0
                        c6: R_PPC_ADDR16_LO     __init_begin
  c8:   38 84 00 00     addi    r4,r4,0
                        ca: R_PPC_ADDR16_LO     __init_end
  cc:   38 c5 00 00     addi    r6,r5,0
                        ce: R_PPC_ADDR16_LO     .rodata.str1.1+0x107
  d0:   38 a0 00 cc     li      r5,204
  d4:   48 00 00 01     bl      d4 <free_initmem+0x4c>
                        d4: R_PPC_PLTREL24      free_reserved_area
  d8:   80 01 00 14     lwz     r0,20(r1)
  dc:   38 21 00 10     addi    r1,r1,16
  e0:   7c 08 03 a6     mtlr    r0
  e4:   4e 80 00 20     blr

000000e8 <flush_dcache_page>:
  e8:   80 83 00 00     lwz     r4,0(r3)
  ec:   70 84 08 00     andi.   r4,r4,2048
  f0:   4d 82 00 20     beqlr
  f4:   38 80 08 00     li      r4,2048
  f8:   7c a0 18 28     lwarx   r5,0,r3
  fc:   7c a5 20 78     andc    r5,r5,r4
 100:   7c a0 19 2d     stwcx.  r5,0,r3
 104:   40 a2 ff f4     bne     f8 <flush_dcache_page+0x10>
 108:   4e 80 00 20     blr

0000010c <flush_dcache_icache_page>:
 10c:   7c 08 02 a6     mflr    r0
 110:   90 01 00 04     stw     r0,4(r1)
 114:   94 21 ff f0     stwu    r1,-16(r1)
 118:   80 82 00 00     lwz     r4,0(r2)
 11c:   38 84 00 01     addi    r4,r4,1
 120:   90 82 00 00     stw     r4,0(r2)
 124:   80 82 0a e4     lwz     r4,2788(r2)
 128:   38 84 00 01     addi    r4,r4,1
 12c:   90 82 0a e4     stw     r4,2788(r2)
 130:   3c 80 00 00     lis     r4,0
                        132: R_PPC_ADDR16_HA    mem_map
 134:   80 84 00 00     lwz     r4,0(r4)
                        136: R_PPC_ADDR16_LO    mem_map
 138:   7c 64 18 50     subf    r3,r4,r3
 13c:   3c 80 cc cc     lis     r4,-13108
 140:   54 63 e8 fe     rlwinm  r3,r3,29,3,31
 144:   60 84 d0 00     ori     r4,r4,53248
 148:   7c 63 21 d6     mullw   r3,r3,r4
 14c:   3c 63 c0 00     addis   r3,r3,-16384
 150:   48 00 00 01     bl      150 <flush_dcache_icache_page+0x44>
                        150: R_PPC_PLTREL24     __flush_dcache_icache
 154:   80 62 0a e4     lwz     r3,2788(r2)
 158:   38 63 ff ff     addi    r3,r3,-1
 15c:   90 62 0a e4     stw     r3,2788(r2)
 160:   80 62 00 00     lwz     r3,0(r2)
 164:   38 63 ff ff     addi    r3,r3,-1
 168:   90 62 00 00     stw     r3,0(r2)
 16c:   80 01 00 14     lwz     r0,20(r1)
 170:   38 21 00 10     addi    r1,r1,16
 174:   7c 08 03 a6     mtlr    r0
 178:   4e 80 00 20     blr

0000017c <clear_user_page>:
 17c:   38 80 00 80     li      r4,128
 180:   7c 89 03 a6     mtctr   r4
 184:   7c 00 1f ec     dcbz    0,r3
 188:   38 63 00 20     addi    r3,r3,32
 18c:   42 00 ff f8     bdnz    184 <clear_user_page+0x8>
 190:   80 65 00 00     lwz     r3,0(r5)
 194:   70 63 08 00     andi.   r3,r3,2048
 198:   4d 82 00 20     beqlr
 19c:   38 60 08 00     li      r3,2048
 1a0:   7c 80 28 28     lwarx   r4,0,r5
 1a4:   7c 84 18 78     andc    r4,r4,r3
 1a8:   7c 80 29 2d     stwcx.  r4,0,r5
 1ac:   40 a2 ff f4     bne     1a0 <clear_user_page+0x24>
 1b0:   4e 80 00 20     blr

000001b4 <copy_user_page>:
 1b4:   7c 08 02 a6     mflr    r0
 1b8:   90 01 00 04     stw     r0,4(r1)
 1bc:   94 21 ff f0     stwu    r1,-16(r1)
 1c0:   93 c1 00 08     stw     r30,8(r1)
 1c4:   7c de 33 78     mr      r30,r6
 1c8:   48 00 00 01     bl      1c8 <copy_user_page+0x14>
                        1c8: R_PPC_PLTREL24     copy_page
 1cc:   80 7e 00 00     lwz     r3,0(r30)
 1d0:   70 63 08 00     andi.   r3,r3,2048
 1d4:   41 82 00 18     beq     1ec <copy_user_page+0x38>
 1d8:   38 60 08 00     li      r3,2048
 1dc:   7c 80 f0 28     lwarx   r4,0,r30
 1e0:   7c 84 18 78     andc    r4,r4,r3
 1e4:   7c 80 f1 2d     stwcx.  r4,0,r30
 1e8:   40 a2 ff f4     bne     1dc <copy_user_page+0x28>
 1ec:   83 c1 00 08     lwz     r30,8(r1)
 1f0:   80 01 00 14     lwz     r0,20(r1)
 1f4:   38 21 00 10     addi    r1,r1,16
 1f8:   7c 08 03 a6     mtlr    r0
 1fc:   4e 80 00 20     blr

00000200 <flush_icache_user_range>:
 200:   7c 08 02 a6     mflr    r0
 204:   90 01 00 04     stw     r0,4(r1)
 208:   94 21 ff e0     stwu    r1,-32(r1)
 20c:   3c 60 00 00     lis     r3,0
                        20e: R_PPC_ADDR16_HA    .rodata.str1.1+0x115
 210:   93 81 00 10     stw     r28,16(r1)
 214:   7c 9c 23 78     mr      r28,r4
 218:   38 63 00 00     addi    r3,r3,0
                        21a: R_PPC_ADDR16_LO    .rodata.str1.1+0x115
 21c:   38 80 00 53     li      r4,83
 220:   93 a1 00 14     stw     r29,20(r1)
 224:   7c bd 2b 78     mr      r29,r5
 228:   38 a0 00 00     li      r5,0
 22c:   93 c1 00 18     stw     r30,24(r1)
 230:   7c de 33 78     mr      r30,r6
 234:   48 00 00 01     bl      234 <flush_icache_user_range+0x34>
                        234: R_PPC_PLTREL24     __might_sleep
 238:   3c 60 00 00     lis     r3,0
                        23a: R_PPC_ADDR16_HA    mem_map
 23c:   3c 80 cc cc     lis     r4,-13108
 240:   80 63 00 00     lwz     r3,0(r3)
                        242: R_PPC_ADDR16_LO    mem_map
 244:   60 84 d0 00     ori     r4,r4,53248
 248:   7c 63 e0 50     subf    r3,r3,r28
 24c:   54 63 e8 fe     rlwinm  r3,r3,29,3,31
 250:   7c 63 21 d6     mullw   r3,r3,r4
 254:   57 a4 05 3e     clrlwi  r4,r29,20
 258:   50 64 00 26     rlwimi  r4,r3,0,0,19
 25c:   3c 64 c0 00     addis   r3,r4,-16384
 260:   7c 83 f2 14     add     r4,r3,r30
 264:   48 00 00 01     bl      264 <flush_icache_user_range+0x64>
                        264: R_PPC_PLTREL24     flush_icache_range
 268:   83 c1 00 18     lwz     r30,24(r1)
 26c:   83 a1 00 14     lwz     r29,20(r1)
 270:   83 81 00 10     lwz     r28,16(r1)
 274:   80 01 00 24     lwz     r0,36(r1)
 278:   38 21 00 20     addi    r1,r1,32
 27c:   7c 08 03 a6     mtlr    r0
 280:   4e 80 00 20     blr

00000284 <update_mmu_cache>:
 284:   4e 80 00 20     blr

00000288 <devmem_is_allowed>:
 288:   7c 08 02 a6     mflr    r0
 28c:   90 01 00 04     stw     r0,4(r1)
 290:   94 21 ff f0     stwu    r1,-16(r1)
 294:   93 c1 00 08     stw     r30,8(r1)
 298:   7c 7e 1b 78     mr      r30,r3
 29c:   54 63 65 3e     rlwinm  r3,r3,12,20,31
 2a0:   57 c4 60 26     rlwinm  r4,r30,12,0,19
 2a4:   48 00 00 01     bl      2a4 <devmem_is_allowed+0x1c>
                        2a4: R_PPC_PLTREL24     iomem_is_exclusive
 2a8:   70 63 00 01     andi.   r3,r3,1
 2ac:   38 60 00 00     li      r3,0
 2b0:   41 81 00 14     bgt     2c4 <devmem_is_allowed+0x3c>
 2b4:   7f c3 f3 78     mr      r3,r30
 2b8:   48 00 00 01     bl      2b8 <devmem_is_allowed+0x30>
                        2b8: R_PPC_PLTREL24     page_is_ram
 2bc:   7c 63 00 34     cntlzw  r3,r3
 2c0:   54 63 df fe     rlwinm  r3,r3,27,31,31
 2c4:   83 c1 00 08     lwz     r30,8(r1)
 2c8:   80 01 00 14     lwz     r0,20(r1)
 2cc:   38 21 00 10     addi    r1,r1,16
 2d0:   7c 08 03 a6     mtlr    r0
 2d4:   4e 80 00 20     blr

Disassembly of section .init.text:

00000000 <mem_topology_setup>:
   0:   7c 08 02 a6     mflr    r0
   4:   90 01 00 04     stw     r0,4(r1)
   8:   94 21 ff f0     stwu    r1,-16(r1)
   c:   48 00 00 01     bl      c <mem_topology_setup+0xc>
                        c: R_PPC_PLTREL24       memblock_end_of_DRAM
  10:   54 84 a0 3e     rotlwi  r4,r4,20
  14:   3c a0 00 00     lis     r5,0
                        16: R_PPC_ADDR16_HA     max_pfn
  18:   50 64 a0 16     rlwimi  r4,r3,20,0,11
  1c:   3c 60 00 00     lis     r3,0
                        1e: R_PPC_ADDR16_HA     max_low_pfn
  20:   90 85 00 00     stw     r4,0(r5)
                        22: R_PPC_ADDR16_LO     max_pfn
  24:   38 a0 ff ff     li      r5,-1
  28:   90 83 00 00     stw     r4,0(r3)
                        2a: R_PPC_ADDR16_LO     max_low_pfn
  2c:   3c 60 00 00     lis     r3,0
                        2e: R_PPC_ADDR16_HA     min_low_pfn
  30:   38 80 00 00     li      r4,0
  34:   38 c0 ff ff     li      r6,-1
  38:   39 00 00 00     li      r8,0
  3c:   90 83 00 00     stw     r4,0(r3)
                        3e: R_PPC_ADDR16_LO     min_low_pfn
  40:   3c 60 00 00     lis     r3,0
                        42: R_PPC_ADDR16_HA     memblock
  44:   38 80 00 00     li      r4,0
  48:   38 63 00 00     addi    r3,r3,0
                        4a: R_PPC_ADDR16_LO     memblock
  4c:   38 e3 00 10     addi    r7,r3,16
  50:   38 60 00 00     li      r3,0
  54:   48 00 00 01     bl      54 <mem_topology_setup+0x54>
                        54: R_PPC_PLTREL24      memblock_set_node
  58:   80 01 00 14     lwz     r0,20(r1)
  5c:   38 21 00 10     addi    r1,r1,16
  60:   7c 08 03 a6     mtlr    r0
  64:   4e 80 00 20     blr

00000068 <initmem_init>:
  68:   7c 08 02 a6     mflr    r0
  6c:   90 01 00 04     stw     r0,4(r1)
  70:   94 21 ff f0     stwu    r1,-16(r1)
  74:   38 60 00 00     li      r3,0
  78:   48 00 00 01     bl      78 <initmem_init+0x10>
                        78: R_PPC_PLTREL24      
sparse_memory_present_with_active_regions
  7c:   80 01 00 14     lwz     r0,20(r1)
  80:   38 21 00 10     addi    r1,r1,16
  84:   7c 08 03 a6     mtlr    r0
  88:   4e 80 00 20     blr

0000008c <paging_init>:
  8c:   7c 08 02 a6     mflr    r0
  90:   90 01 00 04     stw     r0,4(r1)
  94:   94 21 ff d0     stwu    r1,-48(r1)
  98:   93 21 00 14     stw     r25,20(r1)
  9c:   93 41 00 18     stw     r26,24(r1)
  a0:   93 61 00 1c     stw     r27,28(r1)
  a4:   93 81 00 20     stw     r28,32(r1)
  a8:   93 a1 00 24     stw     r29,36(r1)
  ac:   93 c1 00 28     stw     r30,40(r1)
  b0:   48 00 00 01     bl      b0 <paging_init+0x24>
                        b0: R_PPC_PLTREL24      memblock_phys_mem_size
  b4:   7c 7e 1b 78     mr      r30,r3
  b8:   7c 9d 23 78     mr      r29,r4
  bc:   3f 40 ff fe     lis     r26,-2
  c0:   48 00 00 01     bl      c0 <paging_init+0x34>
                        c0: R_PPC_PLTREL24      memblock_end_of_DRAM
  c4:   7c 7c 1b 78     mr      r28,r3
  c8:   7c 9b 23 78     mr      r27,r4
  cc:   3b 20 00 00     li      r25,0
  d0:   38 e1 00 08     addi    r7,r1,8
  d4:   7f 43 d3 78     mr      r3,r26
  d8:   93 21 00 10     stw     r25,16(r1)
  dc:   38 a0 00 00     li      r5,0
  e0:   38 c0 00 00     li      r6,0
  e4:   93 21 00 08     stw     r25,8(r1)
  e8:   48 00 00 01     bl      e8 <paging_init+0x5c>
                        e8: R_PPC_PLTREL24      map_kernel_page
  ec:   3b 5a 10 00     addi    r26,r26,4096
  f0:   2c 1a f0 00     cmpwi   r26,-4096
  f4:   40 82 ff dc     bne     d0 <paging_init+0x44>
  f8:   3c 60 00 00     lis     r3,0
                        fa: R_PPC_ADDR16_HA     .rodata.str1.1
  fc:   4c c6 31 82     crclr   4*cr1+eq
 100:   7f 85 e3 78     mr      r5,r28
 104:   38 63 00 00     addi    r3,r3,0
                        106: R_PPC_ADDR16_LO    .rodata.str1.1
 108:   7f 66 db 78     mr      r6,r27
 10c:   7f c7 f3 78     mr      r7,r30
 110:   7f a8 eb 78     mr      r8,r29
 114:   48 00 00 01     bl      114 <paging_init+0x88>
                        114: R_PPC_PLTREL24     printk
 118:   7c 7d d8 10     subfc   r3,r29,r27
 11c:   4c c6 31 82     crclr   4*cr1+eq
 120:   7c be e1 10     subfe   r5,r30,r28
 124:   54 64 60 3e     rotlwi  r4,r3,12
 128:   3c 60 00 00     lis     r3,0
                        12a: R_PPC_ADDR16_HA    .rodata.str1.1+0x29
 12c:   50 a4 60 26     rlwimi  r4,r5,12,0,19
 130:   38 63 00 00     addi    r3,r3,0
                        132: R_PPC_ADDR16_LO    .rodata.str1.1+0x29
 134:   48 00 00 01     bl      134 <paging_init+0xa8>
                        134: R_PPC_PLTREL24     printk
 138:   3c 60 00 00     lis     r3,0
                        13a: R_PPC_ADDR16_HA    max_low_pfn
 13c:   80 83 00 00     lwz     r4,0(r3)
                        13e: R_PPC_ADDR16_LO    max_low_pfn
 140:   3c 60 00 00     lis     r3,0
                        142: R_PPC_ADDR16_HA    .bss+0x10
 144:   94 83 00 00     stwu    r4,0(r3)
                        146: R_PPC_ADDR16_LO    .bss+0x10
 148:   48 00 00 01     bl      148 <paging_init+0xbc>
                        148: R_PPC_PLTREL24     free_area_init_nodes
 14c:   83 c1 00 28     lwz     r30,40(r1)
 150:   83 a1 00 24     lwz     r29,36(r1)
 154:   83 81 00 20     lwz     r28,32(r1)
 158:   83 61 00 1c     lwz     r27,28(r1)
 15c:   83 41 00 18     lwz     r26,24(r1)
 160:   83 21 00 14     lwz     r25,20(r1)
 164:   80 01 00 34     lwz     r0,52(r1)
 168:   38 21 00 30     addi    r1,r1,48
 16c:   7c 08 03 a6     mtlr    r0
 170:   4e 80 00 20     blr

00000174 <mem_init>:
 174:   7c 08 02 a6     mflr    r0
 178:   90 01 00 04     stw     r0,4(r1)
 17c:   94 21 ff e0     stwu    r1,-32(r1)
 180:   3c 60 00 00     lis     r3,0
                        182: R_PPC_ADDR16_HA    max_low_pfn
 184:   3c 80 00 00     lis     r4,0
                        186: R_PPC_ADDR16_HA    max_pfn
 188:   93 81 00 10     stw     r28,16(r1)
 18c:   3f 80 00 00     lis     r28,0
                        18e: R_PPC_ADDR16_HA    high_memory
 190:   80 63 00 00     lwz     r3,0(r3)
                        192: R_PPC_ADDR16_LO    max_low_pfn
 194:   80 84 00 00     lwz     r4,0(r4)
                        196: R_PPC_ADDR16_LO    max_pfn
 198:   54 63 60 26     rlwinm  r3,r3,12,0,19
 19c:   3c 63 c0 00     addis   r3,r3,-16384
 1a0:   90 7c 00 00     stw     r3,0(r28)
                        1a2: R_PPC_ADDR16_LO    high_memory
 1a4:   3c 60 00 00     lis     r3,0
                        1a6: R_PPC_ADDR16_HA    max_mapnr
 1a8:   93 a1 00 14     stw     r29,20(r1)
 1ac:   93 c1 00 18     stw     r30,24(r1)
 1b0:   90 83 00 00     stw     r4,0(r3)
                        1b2: R_PPC_ADDR16_LO    max_mapnr
 1b4:   48 00 00 01     bl      1b4 <mem_init+0x40>
                        1b4: R_PPC_PLTREL24     memblock_free_all
 1b8:   38 60 00 00     li      r3,0
 1bc:   48 00 00 01     bl      1bc <mem_init+0x48>
                        1bc: R_PPC_PLTREL24     mem_init_print_info
 1c0:   3c 60 00 00     lis     r3,0
                        1c2: R_PPC_ADDR16_HA    .rodata.str1.1+0x44
 1c4:   4c c6 31 82     crclr   4*cr1+eq
 1c8:   38 63 00 00     addi    r3,r3,0
                        1ca: R_PPC_ADDR16_LO    .rodata.str1.1+0x44
 1cc:   48 00 00 01     bl      1cc <mem_init+0x58>
                        1cc: R_PPC_PLTREL24     printk
 1d0:   3c 80 ff fd     lis     r4,-3
 1d4:   3c 60 00 00     lis     r3,0
                        1d6: R_PPC_ADDR16_HA    .rodata.str1.1+0x65
 1d8:   4c c6 31 82     crclr   4*cr1+eq
 1dc:   60 9e f0 00     ori     r30,r4,61440
 1e0:   38 63 00 00     addi    r3,r3,0
                        1e2: R_PPC_ADDR16_LO    .rodata.str1.1+0x65
 1e4:   7f c4 f3 78     mr      r4,r30
 1e8:   38 a0 f0 00     li      r5,-4096
 1ec:   48 00 00 01     bl      1ec <mem_init+0x78>
                        1ec: R_PPC_PLTREL24     printk
 1f0:   3c 80 ff dd     lis     r4,-35
 1f4:   3c 60 00 00     lis     r3,0
                        1f6: R_PPC_ADDR16_HA    .rodata.str1.1+0x87
 1f8:   4c c6 31 82     crclr   4*cr1+eq
 1fc:   60 9d f0 00     ori     r29,r4,61440
 200:   38 63 00 00     addi    r3,r3,0
                        202: R_PPC_ADDR16_LO    .rodata.str1.1+0x87
 204:   7f a4 eb 78     mr      r4,r29
 208:   7f c5 f3 78     mr      r5,r30
 20c:   48 00 00 01     bl      20c <mem_init+0x98>
                        20c: R_PPC_PLTREL24     printk
 210:   3f c0 00 00     lis     r30,0
                        212: R_PPC_ADDR16_HA    ioremap_bot
 214:   3c 60 00 00     lis     r3,0
                        216: R_PPC_ADDR16_HA    .rodata.str1.1+0xb1
 218:   4c c6 31 82     crclr   4*cr1+eq
 21c:   80 9e 00 00     lwz     r4,0(r30)
                        21e: R_PPC_ADDR16_LO    ioremap_bot
 220:   38 63 00 00     addi    r3,r3,0
                        222: R_PPC_ADDR16_LO    .rodata.str1.1+0xb1
 224:   7f a5 eb 78     mr      r5,r29
 228:   48 00 00 01     bl      228 <mem_init+0xb4>
                        228: R_PPC_PLTREL24     printk
 22c:   80 7c 00 00     lwz     r3,0(r28)
                        22e: R_PPC_ADDR16_LO    high_memory
 230:   3c 80 01 00     lis     r4,256
 234:   4c c6 31 82     crclr   4*cr1+eq
 238:   38 63 ff ff     addi    r3,r3,-1
 23c:   80 be 00 00     lwz     r5,0(r30)
                        23e: R_PPC_ADDR16_LO    ioremap_bot
 240:   3c 63 10 00     addis   r3,r3,4096
 244:   54 63 00 06     rlwinm  r3,r3,0,0,3
 248:   50 64 02 0c     rlwimi  r4,r3,0,8,6
 24c:   3c 60 00 00     lis     r3,0
                        24e: R_PPC_ADDR16_HA    .rodata.str1.1+0xda
 250:   38 63 00 00     addi    r3,r3,0
                        252: R_PPC_ADDR16_LO    .rodata.str1.1+0xda
 254:   48 00 00 01     bl      254 <mem_init+0xe0>
                        254: R_PPC_PLTREL24     printk
 258:   83 c1 00 18     lwz     r30,24(r1)
 25c:   83 a1 00 14     lwz     r29,20(r1)
 260:   83 81 00 10     lwz     r28,16(r1)
 264:   80 01 00 24     lwz     r0,36(r1)
 268:   38 21 00 20     addi    r1,r1,32
 26c:   7c 08 03 a6     mtlr    r0
 270:   4e 80 00 20     blr

00000274 <add_system_ram_resources>:
 274:   7c 08 02 a6     mflr    r0
 278:   90 01 00 04     stw     r0,4(r1)
 27c:   94 21 ff c0     stwu    r1,-64(r1)
 280:   3c 60 00 00     lis     r3,0
                        282: R_PPC_ADDR16_HA    memblock
 284:   93 a1 00 34     stw     r29,52(r1)
 288:   3b a3 00 00     addi    r29,r3,0
                        28a: R_PPC_ADDR16_LO    memblock
 28c:   80 7d 00 10     lwz     r3,16(r29)
 290:   93 81 00 30     stw     r28,48(r1)
 294:   1c 63 00 18     mulli   r3,r3,24
 298:   83 9d 00 20     lwz     r28,32(r29)
 29c:   7c 7c 1a 14     add     r3,r28,r3
 2a0:   92 a1 00 14     stw     r21,20(r1)
 2a4:   7c 1c 18 40     cmplw   r28,r3
 2a8:   92 c1 00 18     stw     r22,24(r1)
 2ac:   92 e1 00 1c     stw     r23,28(r1)
 2b0:   93 01 00 20     stw     r24,32(r1)
 2b4:   93 21 00 24     stw     r25,36(r1)
 2b8:   93 41 00 28     stw     r26,40(r1)
 2bc:   93 61 00 2c     stw     r27,44(r1)
 2c0:   93 c1 00 38     stw     r30,56(r1)
 2c4:   40 80 00 ac     bge     370 <add_system_ram_resources+0xfc>
 2c8:   3c 60 00 00     lis     r3,0
                        2ca: R_PPC_ADDR16_HA    kmalloc_caches
 2cc:   3c 80 00 00     lis     r4,0
                        2ce: R_PPC_ADDR16_HA    .rodata.str1.1+0x199
 2d0:   3c a0 81 00     lis     r5,-32512
 2d4:   3c c0 00 00     lis     r6,0
                        2d6: R_PPC_ADDR16_HA    iomem_resource
 2d8:   3b 7c ff e8     addi    r27,r28,-24
 2dc:   3b 40 00 00     li      r26,0
 2e0:   3b 23 00 00     addi    r25,r3,0
                        2e2: R_PPC_ADDR16_LO    kmalloc_caches
 2e4:   3b 04 00 00     addi    r24,r4,0
                        2e6: R_PPC_ADDR16_LO    .rodata.str1.1+0x199
 2e8:   60 b7 02 00     ori     r23,r5,512
 2ec:   3b c6 00 00     addi    r30,r6,0
                        2ee: R_PPC_ADDR16_LO    iomem_resource
 2f0:   80 79 00 18     lwz     r3,24(r25)
 2f4:   38 80 0d c0     li      r4,3520
 2f8:   38 a0 00 28     li      r5,40
 2fc:   82 db 00 1c     lwz     r22,28(r27)
 300:   82 bb 00 24     lwz     r21,36(r27)
 304:   48 00 00 01     bl      304 <add_system_ram_resources+0x90>
                        304: R_PPC_PLTREL24     kmem_cache_alloc_trace
 308:   7c 64 1b 78     mr      r4,r3
 30c:   7c 63 00 34     cntlzw  r3,r3
 310:   28 04 00 00     cmplwi  r4,0
 314:   54 63 df fe     rlwinm  r3,r3,27,31,31
 318:   0f 03 00 00     twnei   r3,0
 31c:   41 82 00 34     beq     350 <add_system_ram_resources+0xdc>
 320:   7c 76 aa 14     add     r3,r22,r21
 324:   93 04 00 10     stw     r24,16(r4)
 328:   38 63 ff ff     addi    r3,r3,-1
 32c:   90 64 00 0c     stw     r3,12(r4)
 330:   7f c3 f3 78     mr      r3,r30
 334:   93 44 00 00     stw     r26,0(r4)
 338:   92 c4 00 04     stw     r22,4(r4)
 33c:   93 44 00 08     stw     r26,8(r4)
 340:   92 e4 00 14     stw     r23,20(r4)
 344:   48 00 00 01     bl      344 <add_system_ram_resources+0xd0>
                        344: R_PPC_PLTREL24     request_resource
 348:   54 63 0f fe     rlwinm  r3,r3,1,31,31
 34c:   0f 03 00 00     twnei   r3,0
 350:   80 7d 00 10     lwz     r3,16(r29)
 354:   3b 9c 00 18     addi    r28,r28,24
 358:   3b 7b 00 18     addi    r27,r27,24
 35c:   80 9d 00 20     lwz     r4,32(r29)
 360:   1c 63 00 18     mulli   r3,r3,24
 364:   7c 64 1a 14     add     r3,r4,r3
 368:   7c 1c 18 40     cmplw   r28,r3
 36c:   41 80 ff 84     blt     2f0 <add_system_ram_resources+0x7c>
 370:   38 60 00 00     li      r3,0
 374:   83 c1 00 38     lwz     r30,56(r1)
 378:   83 a1 00 34     lwz     r29,52(r1)
 37c:   83 81 00 30     lwz     r28,48(r1)
 380:   83 61 00 2c     lwz     r27,44(r1)
 384:   83 41 00 28     lwz     r26,40(r1)
 388:   83 21 00 24     lwz     r25,36(r1)
 38c:   83 01 00 20     lwz     r24,32(r1)
 390:   82 e1 00 1c     lwz     r23,28(r1)
 394:   82 c1 00 18     lwz     r22,24(r1)
 398:   82 a1 00 14     lwz     r21,20(r1)
 39c:   80 01 00 44     lwz     r0,68(r1)
 3a0:   38 21 00 40     addi    r1,r1,64
 3a4:   7c 08 03 a6     mtlr    r0
 3a8:   4e 80 00 20     blr
mem-broken.o:     file format elf32-powerpc


Disassembly of section .text:

00000000 <phys_mem_access_prot>:
   0:   7c 08 02 a6     mflr    r0
   4:   90 01 00 04     stw     r0,4(r1)
   8:   94 21 ff e0     stwu    r1,-32(r1)
   c:   93 a1 00 14     stw     r29,20(r1)
  10:   7c fd 3b 78     mr      r29,r7
  14:   3c e0 00 00     lis     r7,0
                        16: R_PPC_ADDR16_HA     ppc_md
  18:   38 e7 00 00     addi    r7,r7,0
                        1a: R_PPC_ADDR16_LO     ppc_md
  1c:   81 07 00 a0     lwz     r8,160(r7)
  20:   93 c1 00 18     stw     r30,24(r1)
  24:   28 08 00 00     cmplwi  r8,0
  28:   7c 7e 1b 78     mr      r30,r3
  2c:   41 82 00 20     beq     4c <phys_mem_access_prot+0x4c>
  30:   80 7d 00 00     lwz     r3,0(r29)
  34:   38 e1 00 08     addi    r7,r1,8
  38:   7d 09 03 a6     mtctr   r8
  3c:   90 61 00 08     stw     r3,8(r1)
  40:   7f c3 f3 78     mr      r3,r30
  44:   4e 80 04 21     bctrl
  48:   48 00 00 28     b       70 <phys_mem_access_prot+0x70>
  4c:   7c a3 2b 78     mr      r3,r5
  50:   48 00 00 01     bl      50 <phys_mem_access_prot+0x50>
                        50: R_PPC_PLTREL24      page_is_ram
  54:   28 03 00 00     cmplwi  r3,0
  58:   80 7d 00 00     lwz     r3,0(r29)
  5c:   40 82 00 10     bne     6c <phys_mem_access_prot+0x6c>
  60:   54 63 06 26     rlwinm  r3,r3,0,24,19
  64:   60 63 05 00     ori     r3,r3,1280
  68:   90 7d 00 00     stw     r3,0(r29)
  6c:   90 7e 00 00     stw     r3,0(r30)
  70:   83 c1 00 18     lwz     r30,24(r1)
  74:   83 a1 00 14     lwz     r29,20(r1)
  78:   80 01 00 24     lwz     r0,36(r1)
  7c:   38 21 00 20     addi    r1,r1,32
  80:   7c 08 03 a6     mtlr    r0
  84:   4e 80 00 20     blr

00000088 <free_initmem>:
  88:   7c 08 02 a6     mflr    r0
  8c:   90 01 00 04     stw     r0,4(r1)
  90:   94 21 ff f0     stwu    r1,-16(r1)
  94:   3c 60 00 00     lis     r3,0
                        96: R_PPC_ADDR16_HA     ppc_md
  98:   3c 80 00 00     lis     r4,0
                        9a: R_PPC_ADDR16_HA     ppc_printk_progress
  9c:   38 63 00 00     addi    r3,r3,0
                        9e: R_PPC_ADDR16_LO     ppc_md
  a0:   38 84 00 00     addi    r4,r4,0
                        a2: R_PPC_ADDR16_LO     ppc_printk_progress
  a4:   90 83 00 60     stw     r4,96(r3)
  a8:   48 00 00 01     bl      a8 <free_initmem+0x20>
                        a8: R_PPC_PLTREL24      mark_initmem_nx
  ac:   3c 60 00 00     lis     r3,0
                        ae: R_PPC_ADDR16_HA     init_mem_is_free
  b0:   38 80 00 01     li      r4,1
  b4:   98 83 00 00     stb     r4,0(r3)
                        b6: R_PPC_ADDR16_LO     init_mem_is_free
  b8:   3c 60 00 00     lis     r3,0
                        ba: R_PPC_ADDR16_HA     __init_begin
  bc:   3c 80 00 00     lis     r4,0
                        be: R_PPC_ADDR16_HA     __init_end
  c0:   3c a0 00 00     lis     r5,0
                        c2: R_PPC_ADDR16_HA     .rodata.str1.1+0x107
  c4:   38 63 00 00     addi    r3,r3,0
                        c6: R_PPC_ADDR16_LO     __init_begin
  c8:   38 84 00 00     addi    r4,r4,0
                        ca: R_PPC_ADDR16_LO     __init_end
  cc:   38 c5 00 00     addi    r6,r5,0
                        ce: R_PPC_ADDR16_LO     .rodata.str1.1+0x107
  d0:   38 a0 00 cc     li      r5,204
  d4:   48 00 00 01     bl      d4 <free_initmem+0x4c>
                        d4: R_PPC_PLTREL24      free_reserved_area
  d8:   80 01 00 14     lwz     r0,20(r1)
  dc:   38 21 00 10     addi    r1,r1,16
  e0:   7c 08 03 a6     mtlr    r0
  e4:   4e 80 00 20     blr

000000e8 <flush_dcache_page>:
  e8:   80 83 00 00     lwz     r4,0(r3)
  ec:   70 84 08 00     andi.   r4,r4,2048
  f0:   4d 82 00 20     beqlr
  f4:   38 80 08 00     li      r4,2048
  f8:   7c a0 18 28     lwarx   r5,0,r3
  fc:   7c a5 20 78     andc    r5,r5,r4
 100:   7c a0 19 2d     stwcx.  r5,0,r3
 104:   40 a2 ff f4     bne     f8 <flush_dcache_page+0x10>
 108:   4e 80 00 20     blr

0000010c <flush_dcache_icache_page>:
 10c:   7c 08 02 a6     mflr    r0
 110:   90 01 00 04     stw     r0,4(r1)
 114:   94 21 ff f0     stwu    r1,-16(r1)
 118:   80 82 00 00     lwz     r4,0(r2)
 11c:   38 84 00 01     addi    r4,r4,1
 120:   90 82 00 00     stw     r4,0(r2)
 124:   80 82 0a e4     lwz     r4,2788(r2)
 128:   38 84 00 01     addi    r4,r4,1
 12c:   90 82 0a e4     stw     r4,2788(r2)
 130:   3c 80 00 00     lis     r4,0
                        132: R_PPC_ADDR16_HA    mem_map
 134:   80 84 00 00     lwz     r4,0(r4)
                        136: R_PPC_ADDR16_LO    mem_map
 138:   7c 64 18 50     subf    r3,r4,r3
 13c:   3c 80 cc cc     lis     r4,-13108
 140:   54 63 e8 fe     rlwinm  r3,r3,29,3,31
 144:   60 84 d0 00     ori     r4,r4,53248
 148:   7c 63 21 d6     mullw   r3,r3,r4
 14c:   3c 63 c0 00     addis   r3,r3,-16384
 150:   48 00 00 01     bl      150 <flush_dcache_icache_page+0x44>
                        150: R_PPC_PLTREL24     __flush_dcache_icache
 154:   80 62 0a e4     lwz     r3,2788(r2)
 158:   38 63 ff ff     addi    r3,r3,-1
 15c:   90 62 0a e4     stw     r3,2788(r2)
 160:   80 62 00 00     lwz     r3,0(r2)
 164:   38 63 ff ff     addi    r3,r3,-1
 168:   90 62 00 00     stw     r3,0(r2)
 16c:   80 01 00 14     lwz     r0,20(r1)
 170:   38 21 00 10     addi    r1,r1,16
 174:   7c 08 03 a6     mtlr    r0
 178:   4e 80 00 20     blr

0000017c <clear_user_page>:
 17c:   94 21 ff f0     stwu    r1,-16(r1)
 180:   38 80 00 80     li      r4,128
 184:   38 63 ff e0     addi    r3,r3,-32
 188:   7c 89 03 a6     mtctr   r4
 18c:   38 81 00 0f     addi    r4,r1,15
 190:   8c c3 00 20     lbzu    r6,32(r3)
 194:   98 c1 00 0f     stb     r6,15(r1)
 198:   7c 00 27 ec     dcbz    0,r4
 19c:   42 00 ff f4     bdnz    190 <clear_user_page+0x14>
 1a0:   80 65 00 00     lwz     r3,0(r5)
 1a4:   70 63 08 00     andi.   r3,r3,2048
 1a8:   41 82 00 18     beq     1c0 <clear_user_page+0x44>
 1ac:   38 60 08 00     li      r3,2048
 1b0:   7c 80 28 28     lwarx   r4,0,r5
 1b4:   7c 84 18 78     andc    r4,r4,r3
 1b8:   7c 80 29 2d     stwcx.  r4,0,r5
 1bc:   40 a2 ff f4     bne     1b0 <clear_user_page+0x34>
 1c0:   38 21 00 10     addi    r1,r1,16
 1c4:   4e 80 00 20     blr

000001c8 <copy_user_page>:
 1c8:   7c 08 02 a6     mflr    r0
 1cc:   90 01 00 04     stw     r0,4(r1)
 1d0:   94 21 ff f0     stwu    r1,-16(r1)
 1d4:   93 c1 00 08     stw     r30,8(r1)
 1d8:   7c de 33 78     mr      r30,r6
 1dc:   48 00 00 01     bl      1dc <copy_user_page+0x14>
                        1dc: R_PPC_PLTREL24     copy_page
 1e0:   80 7e 00 00     lwz     r3,0(r30)
 1e4:   70 63 08 00     andi.   r3,r3,2048
 1e8:   41 82 00 18     beq     200 <copy_user_page+0x38>
 1ec:   38 60 08 00     li      r3,2048
 1f0:   7c 80 f0 28     lwarx   r4,0,r30
 1f4:   7c 84 18 78     andc    r4,r4,r3
 1f8:   7c 80 f1 2d     stwcx.  r4,0,r30
 1fc:   40 a2 ff f4     bne     1f0 <copy_user_page+0x28>
 200:   83 c1 00 08     lwz     r30,8(r1)
 204:   80 01 00 14     lwz     r0,20(r1)
 208:   38 21 00 10     addi    r1,r1,16
 20c:   7c 08 03 a6     mtlr    r0
 210:   4e 80 00 20     blr

00000214 <flush_icache_user_range>:
 214:   7c 08 02 a6     mflr    r0
 218:   90 01 00 04     stw     r0,4(r1)
 21c:   94 21 ff e0     stwu    r1,-32(r1)
 220:   3c 60 00 00     lis     r3,0
                        222: R_PPC_ADDR16_HA    .rodata.str1.1+0x115
 224:   93 81 00 10     stw     r28,16(r1)
 228:   7c 9c 23 78     mr      r28,r4
 22c:   38 63 00 00     addi    r3,r3,0
                        22e: R_PPC_ADDR16_LO    .rodata.str1.1+0x115
 230:   38 80 00 53     li      r4,83
 234:   93 a1 00 14     stw     r29,20(r1)
 238:   7c bd 2b 78     mr      r29,r5
 23c:   38 a0 00 00     li      r5,0
 240:   93 c1 00 18     stw     r30,24(r1)
 244:   7c de 33 78     mr      r30,r6
 248:   48 00 00 01     bl      248 <flush_icache_user_range+0x34>
                        248: R_PPC_PLTREL24     __might_sleep
 24c:   3c 60 00 00     lis     r3,0
                        24e: R_PPC_ADDR16_HA    mem_map
 250:   3c 80 cc cc     lis     r4,-13108
 254:   80 63 00 00     lwz     r3,0(r3)
                        256: R_PPC_ADDR16_LO    mem_map
 258:   60 84 d0 00     ori     r4,r4,53248
 25c:   7c 63 e0 50     subf    r3,r3,r28
 260:   54 63 e8 fe     rlwinm  r3,r3,29,3,31
 264:   7c 63 21 d6     mullw   r3,r3,r4
 268:   57 a4 05 3e     clrlwi  r4,r29,20
 26c:   50 64 00 26     rlwimi  r4,r3,0,0,19
 270:   3c 64 c0 00     addis   r3,r4,-16384
 274:   7c 83 f2 14     add     r4,r3,r30
 278:   48 00 00 01     bl      278 <flush_icache_user_range+0x64>
                        278: R_PPC_PLTREL24     flush_icache_range
 27c:   83 c1 00 18     lwz     r30,24(r1)
 280:   83 a1 00 14     lwz     r29,20(r1)
 284:   83 81 00 10     lwz     r28,16(r1)
 288:   80 01 00 24     lwz     r0,36(r1)
 28c:   38 21 00 20     addi    r1,r1,32
 290:   7c 08 03 a6     mtlr    r0
 294:   4e 80 00 20     blr

00000298 <update_mmu_cache>:
 298:   4e 80 00 20     blr

0000029c <devmem_is_allowed>:
 29c:   7c 08 02 a6     mflr    r0
 2a0:   90 01 00 04     stw     r0,4(r1)
 2a4:   94 21 ff f0     stwu    r1,-16(r1)
 2a8:   93 c1 00 08     stw     r30,8(r1)
 2ac:   7c 7e 1b 78     mr      r30,r3
 2b0:   54 63 65 3e     rlwinm  r3,r3,12,20,31
 2b4:   57 c4 60 26     rlwinm  r4,r30,12,0,19
 2b8:   48 00 00 01     bl      2b8 <devmem_is_allowed+0x1c>
                        2b8: R_PPC_PLTREL24     iomem_is_exclusive
 2bc:   70 63 00 01     andi.   r3,r3,1
 2c0:   38 60 00 00     li      r3,0
 2c4:   41 81 00 14     bgt     2d8 <devmem_is_allowed+0x3c>
 2c8:   7f c3 f3 78     mr      r3,r30
 2cc:   48 00 00 01     bl      2cc <devmem_is_allowed+0x30>
                        2cc: R_PPC_PLTREL24     page_is_ram
 2d0:   7c 63 00 34     cntlzw  r3,r3
 2d4:   54 63 df fe     rlwinm  r3,r3,27,31,31
 2d8:   83 c1 00 08     lwz     r30,8(r1)
 2dc:   80 01 00 14     lwz     r0,20(r1)
 2e0:   38 21 00 10     addi    r1,r1,16
 2e4:   7c 08 03 a6     mtlr    r0
 2e8:   4e 80 00 20     blr

Disassembly of section .init.text:

00000000 <mem_topology_setup>:
   0:   7c 08 02 a6     mflr    r0
   4:   90 01 00 04     stw     r0,4(r1)
   8:   94 21 ff f0     stwu    r1,-16(r1)
   c:   48 00 00 01     bl      c <mem_topology_setup+0xc>
                        c: R_PPC_PLTREL24       memblock_end_of_DRAM
  10:   54 84 a0 3e     rotlwi  r4,r4,20
  14:   3c a0 00 00     lis     r5,0
                        16: R_PPC_ADDR16_HA     max_pfn
  18:   50 64 a0 16     rlwimi  r4,r3,20,0,11
  1c:   3c 60 00 00     lis     r3,0
                        1e: R_PPC_ADDR16_HA     max_low_pfn
  20:   90 85 00 00     stw     r4,0(r5)
                        22: R_PPC_ADDR16_LO     max_pfn
  24:   38 a0 ff ff     li      r5,-1
  28:   90 83 00 00     stw     r4,0(r3)
                        2a: R_PPC_ADDR16_LO     max_low_pfn
  2c:   3c 60 00 00     lis     r3,0
                        2e: R_PPC_ADDR16_HA     min_low_pfn
  30:   38 80 00 00     li      r4,0
  34:   38 c0 ff ff     li      r6,-1
  38:   39 00 00 00     li      r8,0
  3c:   90 83 00 00     stw     r4,0(r3)
                        3e: R_PPC_ADDR16_LO     min_low_pfn
  40:   3c 60 00 00     lis     r3,0
                        42: R_PPC_ADDR16_HA     memblock
  44:   38 80 00 00     li      r4,0
  48:   38 63 00 00     addi    r3,r3,0
                        4a: R_PPC_ADDR16_LO     memblock
  4c:   38 e3 00 10     addi    r7,r3,16
  50:   38 60 00 00     li      r3,0
  54:   48 00 00 01     bl      54 <mem_topology_setup+0x54>
                        54: R_PPC_PLTREL24      memblock_set_node
  58:   80 01 00 14     lwz     r0,20(r1)
  5c:   38 21 00 10     addi    r1,r1,16
  60:   7c 08 03 a6     mtlr    r0
  64:   4e 80 00 20     blr

00000068 <initmem_init>:
  68:   7c 08 02 a6     mflr    r0
  6c:   90 01 00 04     stw     r0,4(r1)
  70:   94 21 ff f0     stwu    r1,-16(r1)
  74:   38 60 00 00     li      r3,0
  78:   48 00 00 01     bl      78 <initmem_init+0x10>
                        78: R_PPC_PLTREL24      
sparse_memory_present_with_active_regions
  7c:   80 01 00 14     lwz     r0,20(r1)
  80:   38 21 00 10     addi    r1,r1,16
  84:   7c 08 03 a6     mtlr    r0
  88:   4e 80 00 20     blr

0000008c <paging_init>:
  8c:   7c 08 02 a6     mflr    r0
  90:   90 01 00 04     stw     r0,4(r1)
  94:   94 21 ff d0     stwu    r1,-48(r1)
  98:   93 21 00 14     stw     r25,20(r1)
  9c:   93 41 00 18     stw     r26,24(r1)
  a0:   93 61 00 1c     stw     r27,28(r1)
  a4:   93 81 00 20     stw     r28,32(r1)
  a8:   93 a1 00 24     stw     r29,36(r1)
  ac:   93 c1 00 28     stw     r30,40(r1)
  b0:   48 00 00 01     bl      b0 <paging_init+0x24>
                        b0: R_PPC_PLTREL24      memblock_phys_mem_size
  b4:   7c 7e 1b 78     mr      r30,r3
  b8:   7c 9d 23 78     mr      r29,r4
  bc:   3f 40 ff fe     lis     r26,-2
  c0:   48 00 00 01     bl      c0 <paging_init+0x34>
                        c0: R_PPC_PLTREL24      memblock_end_of_DRAM
  c4:   7c 7c 1b 78     mr      r28,r3
  c8:   7c 9b 23 78     mr      r27,r4
  cc:   3b 20 00 00     li      r25,0
  d0:   38 e1 00 08     addi    r7,r1,8
  d4:   7f 43 d3 78     mr      r3,r26
  d8:   93 21 00 10     stw     r25,16(r1)
  dc:   38 a0 00 00     li      r5,0
  e0:   38 c0 00 00     li      r6,0
  e4:   93 21 00 08     stw     r25,8(r1)
  e8:   48 00 00 01     bl      e8 <paging_init+0x5c>
                        e8: R_PPC_PLTREL24      map_kernel_page
  ec:   3b 5a 10 00     addi    r26,r26,4096
  f0:   2c 1a f0 00     cmpwi   r26,-4096
  f4:   40 82 ff dc     bne     d0 <paging_init+0x44>
  f8:   3c 60 00 00     lis     r3,0
                        fa: R_PPC_ADDR16_HA     .rodata.str1.1
  fc:   4c c6 31 82     crclr   4*cr1+eq
 100:   7f 85 e3 78     mr      r5,r28
 104:   38 63 00 00     addi    r3,r3,0
                        106: R_PPC_ADDR16_LO    .rodata.str1.1
 108:   7f 66 db 78     mr      r6,r27
 10c:   7f c7 f3 78     mr      r7,r30
 110:   7f a8 eb 78     mr      r8,r29
 114:   48 00 00 01     bl      114 <paging_init+0x88>
                        114: R_PPC_PLTREL24     printk
 118:   7c 7d d8 10     subfc   r3,r29,r27
 11c:   4c c6 31 82     crclr   4*cr1+eq
 120:   7c be e1 10     subfe   r5,r30,r28
 124:   54 64 60 3e     rotlwi  r4,r3,12
 128:   3c 60 00 00     lis     r3,0
                        12a: R_PPC_ADDR16_HA    .rodata.str1.1+0x29
 12c:   50 a4 60 26     rlwimi  r4,r5,12,0,19
 130:   38 63 00 00     addi    r3,r3,0
                        132: R_PPC_ADDR16_LO    .rodata.str1.1+0x29
 134:   48 00 00 01     bl      134 <paging_init+0xa8>
                        134: R_PPC_PLTREL24     printk
 138:   3c 60 00 00     lis     r3,0
                        13a: R_PPC_ADDR16_HA    max_low_pfn
 13c:   80 83 00 00     lwz     r4,0(r3)
                        13e: R_PPC_ADDR16_LO    max_low_pfn
 140:   3c 60 00 00     lis     r3,0
                        142: R_PPC_ADDR16_HA    .bss+0x10
 144:   94 83 00 00     stwu    r4,0(r3)
                        146: R_PPC_ADDR16_LO    .bss+0x10
 148:   48 00 00 01     bl      148 <paging_init+0xbc>
                        148: R_PPC_PLTREL24     free_area_init_nodes
 14c:   83 c1 00 28     lwz     r30,40(r1)
 150:   83 a1 00 24     lwz     r29,36(r1)
 154:   83 81 00 20     lwz     r28,32(r1)
 158:   83 61 00 1c     lwz     r27,28(r1)
 15c:   83 41 00 18     lwz     r26,24(r1)
 160:   83 21 00 14     lwz     r25,20(r1)
 164:   80 01 00 34     lwz     r0,52(r1)
 168:   38 21 00 30     addi    r1,r1,48
 16c:   7c 08 03 a6     mtlr    r0
 170:   4e 80 00 20     blr

00000174 <mem_init>:
 174:   7c 08 02 a6     mflr    r0
 178:   90 01 00 04     stw     r0,4(r1)
 17c:   94 21 ff e0     stwu    r1,-32(r1)
 180:   3c 60 00 00     lis     r3,0
                        182: R_PPC_ADDR16_HA    max_low_pfn
 184:   3c 80 00 00     lis     r4,0
                        186: R_PPC_ADDR16_HA    max_pfn
 188:   93 81 00 10     stw     r28,16(r1)
 18c:   3f 80 00 00     lis     r28,0
                        18e: R_PPC_ADDR16_HA    high_memory
 190:   80 63 00 00     lwz     r3,0(r3)
                        192: R_PPC_ADDR16_LO    max_low_pfn
 194:   80 84 00 00     lwz     r4,0(r4)
                        196: R_PPC_ADDR16_LO    max_pfn
 198:   54 63 60 26     rlwinm  r3,r3,12,0,19
 19c:   3c 63 c0 00     addis   r3,r3,-16384
 1a0:   90 7c 00 00     stw     r3,0(r28)
                        1a2: R_PPC_ADDR16_LO    high_memory
 1a4:   3c 60 00 00     lis     r3,0
                        1a6: R_PPC_ADDR16_HA    max_mapnr
 1a8:   93 a1 00 14     stw     r29,20(r1)
 1ac:   93 c1 00 18     stw     r30,24(r1)
 1b0:   90 83 00 00     stw     r4,0(r3)
                        1b2: R_PPC_ADDR16_LO    max_mapnr
 1b4:   48 00 00 01     bl      1b4 <mem_init+0x40>
                        1b4: R_PPC_PLTREL24     memblock_free_all
 1b8:   38 60 00 00     li      r3,0
 1bc:   48 00 00 01     bl      1bc <mem_init+0x48>
                        1bc: R_PPC_PLTREL24     mem_init_print_info
 1c0:   3c 60 00 00     lis     r3,0
                        1c2: R_PPC_ADDR16_HA    .rodata.str1.1+0x44
 1c4:   4c c6 31 82     crclr   4*cr1+eq
 1c8:   38 63 00 00     addi    r3,r3,0
                        1ca: R_PPC_ADDR16_LO    .rodata.str1.1+0x44
 1cc:   48 00 00 01     bl      1cc <mem_init+0x58>
                        1cc: R_PPC_PLTREL24     printk
 1d0:   3c 80 ff fd     lis     r4,-3
 1d4:   3c 60 00 00     lis     r3,0
                        1d6: R_PPC_ADDR16_HA    .rodata.str1.1+0x65
 1d8:   4c c6 31 82     crclr   4*cr1+eq
 1dc:   60 9e f0 00     ori     r30,r4,61440
 1e0:   38 63 00 00     addi    r3,r3,0
                        1e2: R_PPC_ADDR16_LO    .rodata.str1.1+0x65
 1e4:   7f c4 f3 78     mr      r4,r30
 1e8:   38 a0 f0 00     li      r5,-4096
 1ec:   48 00 00 01     bl      1ec <mem_init+0x78>
                        1ec: R_PPC_PLTREL24     printk
 1f0:   3c 80 ff dd     lis     r4,-35
 1f4:   3c 60 00 00     lis     r3,0
                        1f6: R_PPC_ADDR16_HA    .rodata.str1.1+0x87
 1f8:   4c c6 31 82     crclr   4*cr1+eq
 1fc:   60 9d f0 00     ori     r29,r4,61440
 200:   38 63 00 00     addi    r3,r3,0
                        202: R_PPC_ADDR16_LO    .rodata.str1.1+0x87
 204:   7f a4 eb 78     mr      r4,r29
 208:   7f c5 f3 78     mr      r5,r30
 20c:   48 00 00 01     bl      20c <mem_init+0x98>
                        20c: R_PPC_PLTREL24     printk
 210:   3f c0 00 00     lis     r30,0
                        212: R_PPC_ADDR16_HA    ioremap_bot
 214:   3c 60 00 00     lis     r3,0
                        216: R_PPC_ADDR16_HA    .rodata.str1.1+0xb1
 218:   4c c6 31 82     crclr   4*cr1+eq
 21c:   80 9e 00 00     lwz     r4,0(r30)
                        21e: R_PPC_ADDR16_LO    ioremap_bot
 220:   38 63 00 00     addi    r3,r3,0
                        222: R_PPC_ADDR16_LO    .rodata.str1.1+0xb1
 224:   7f a5 eb 78     mr      r5,r29
 228:   48 00 00 01     bl      228 <mem_init+0xb4>
                        228: R_PPC_PLTREL24     printk
 22c:   80 7c 00 00     lwz     r3,0(r28)
                        22e: R_PPC_ADDR16_LO    high_memory
 230:   3c 80 01 00     lis     r4,256
 234:   4c c6 31 82     crclr   4*cr1+eq
 238:   38 63 ff ff     addi    r3,r3,-1
 23c:   80 be 00 00     lwz     r5,0(r30)
                        23e: R_PPC_ADDR16_LO    ioremap_bot
 240:   3c 63 10 00     addis   r3,r3,4096
 244:   54 63 00 06     rlwinm  r3,r3,0,0,3
 248:   50 64 02 0c     rlwimi  r4,r3,0,8,6
 24c:   3c 60 00 00     lis     r3,0
                        24e: R_PPC_ADDR16_HA    .rodata.str1.1+0xda
 250:   38 63 00 00     addi    r3,r3,0
                        252: R_PPC_ADDR16_LO    .rodata.str1.1+0xda
 254:   48 00 00 01     bl      254 <mem_init+0xe0>
                        254: R_PPC_PLTREL24     printk
 258:   83 c1 00 18     lwz     r30,24(r1)
 25c:   83 a1 00 14     lwz     r29,20(r1)
 260:   83 81 00 10     lwz     r28,16(r1)
 264:   80 01 00 24     lwz     r0,36(r1)
 268:   38 21 00 20     addi    r1,r1,32
 26c:   7c 08 03 a6     mtlr    r0
 270:   4e 80 00 20     blr

00000274 <add_system_ram_resources>:
 274:   7c 08 02 a6     mflr    r0
 278:   90 01 00 04     stw     r0,4(r1)
 27c:   94 21 ff c0     stwu    r1,-64(r1)
 280:   3c 60 00 00     lis     r3,0
                        282: R_PPC_ADDR16_HA    memblock
 284:   93 a1 00 34     stw     r29,52(r1)
 288:   3b a3 00 00     addi    r29,r3,0
                        28a: R_PPC_ADDR16_LO    memblock
 28c:   80 7d 00 10     lwz     r3,16(r29)
 290:   93 81 00 30     stw     r28,48(r1)
 294:   1c 63 00 18     mulli   r3,r3,24
 298:   83 9d 00 20     lwz     r28,32(r29)
 29c:   7c 7c 1a 14     add     r3,r28,r3
 2a0:   92 a1 00 14     stw     r21,20(r1)
 2a4:   7c 1c 18 40     cmplw   r28,r3
 2a8:   92 c1 00 18     stw     r22,24(r1)
 2ac:   92 e1 00 1c     stw     r23,28(r1)
 2b0:   93 01 00 20     stw     r24,32(r1)
 2b4:   93 21 00 24     stw     r25,36(r1)
 2b8:   93 41 00 28     stw     r26,40(r1)
 2bc:   93 61 00 2c     stw     r27,44(r1)
 2c0:   93 c1 00 38     stw     r30,56(r1)
 2c4:   40 80 00 ac     bge     370 <add_system_ram_resources+0xfc>
 2c8:   3c 60 00 00     lis     r3,0
                        2ca: R_PPC_ADDR16_HA    kmalloc_caches
 2cc:   3c 80 00 00     lis     r4,0
                        2ce: R_PPC_ADDR16_HA    .rodata.str1.1+0x199
 2d0:   3c a0 81 00     lis     r5,-32512
 2d4:   3c c0 00 00     lis     r6,0
                        2d6: R_PPC_ADDR16_HA    iomem_resource
 2d8:   3b 7c ff e8     addi    r27,r28,-24
 2dc:   3b 40 00 00     li      r26,0
 2e0:   3b 23 00 00     addi    r25,r3,0
                        2e2: R_PPC_ADDR16_LO    kmalloc_caches
 2e4:   3b 04 00 00     addi    r24,r4,0
                        2e6: R_PPC_ADDR16_LO    .rodata.str1.1+0x199
 2e8:   60 b7 02 00     ori     r23,r5,512
 2ec:   3b c6 00 00     addi    r30,r6,0
                        2ee: R_PPC_ADDR16_LO    iomem_resource
 2f0:   80 79 00 18     lwz     r3,24(r25)
 2f4:   38 80 0d c0     li      r4,3520
 2f8:   38 a0 00 28     li      r5,40
 2fc:   82 db 00 1c     lwz     r22,28(r27)
 300:   82 bb 00 24     lwz     r21,36(r27)
 304:   48 00 00 01     bl      304 <add_system_ram_resources+0x90>
                        304: R_PPC_PLTREL24     kmem_cache_alloc_trace
 308:   7c 64 1b 78     mr      r4,r3
 30c:   7c 63 00 34     cntlzw  r3,r3
 310:   28 04 00 00     cmplwi  r4,0
 314:   54 63 df fe     rlwinm  r3,r3,27,31,31
 318:   0f 03 00 00     twnei   r3,0
 31c:   41 82 00 34     beq     350 <add_system_ram_resources+0xdc>
 320:   7c 76 aa 14     add     r3,r22,r21
 324:   93 04 00 10     stw     r24,16(r4)
 328:   38 63 ff ff     addi    r3,r3,-1
 32c:   90 64 00 0c     stw     r3,12(r4)
 330:   7f c3 f3 78     mr      r3,r30
 334:   93 44 00 00     stw     r26,0(r4)
 338:   92 c4 00 04     stw     r22,4(r4)
 33c:   93 44 00 08     stw     r26,8(r4)
 340:   92 e4 00 14     stw     r23,20(r4)
 344:   48 00 00 01     bl      344 <add_system_ram_resources+0xd0>
                        344: R_PPC_PLTREL24     request_resource
 348:   54 63 0f fe     rlwinm  r3,r3,1,31,31
 34c:   0f 03 00 00     twnei   r3,0
 350:   80 7d 00 10     lwz     r3,16(r29)
 354:   3b 9c 00 18     addi    r28,r28,24
 358:   3b 7b 00 18     addi    r27,r27,24
 35c:   80 9d 00 20     lwz     r4,32(r29)
 360:   1c 63 00 18     mulli   r3,r3,24
 364:   7c 64 1a 14     add     r3,r4,r3
 368:   7c 1c 18 40     cmplw   r28,r3
 36c:   41 80 ff 84     blt     2f0 <add_system_ram_resources+0x7c>
 370:   38 60 00 00     li      r3,0
 374:   83 c1 00 38     lwz     r30,56(r1)
 378:   83 a1 00 34     lwz     r29,52(r1)
 37c:   83 81 00 30     lwz     r28,48(r1)
 380:   83 61 00 2c     lwz     r27,44(r1)
 384:   83 41 00 28     lwz     r26,40(r1)
 388:   83 21 00 24     lwz     r25,36(r1)
 38c:   83 01 00 20     lwz     r24,32(r1)
 390:   82 e1 00 1c     lwz     r23,28(r1)
 394:   82 c1 00 18     lwz     r22,24(r1)
 398:   82 a1 00 14     lwz     r21,20(r1)
 39c:   80 01 00 44     lwz     r0,68(r1)
 3a0:   38 21 00 40     addi    r1,r1,64
 3a4:   7c 08 03 a6     mtlr    r0
 3a8:   4e 80 00 20     blr
mem-working.o:     file format elf32-powerpc                  | mem-broken.o:   
  file format elf32-powerpc


Disassembly of section .text:                                   Disassembly of 
section .text:

00000000 <phys_mem_access_prot>:                                00000000 
<phys_mem_access_prot>:
   0:   7c 08 02 a6     mflr    r0                                 0:   7c 08 
02 a6     mflr    r0
   4:   90 01 00 04     stw     r0,4(r1)                           4:   90 01 
00 04     stw     r0,4(r1)
   8:   94 21 ff e0     stwu    r1,-32(r1)                         8:   94 21 
ff e0     stwu    r1,-32(r1)
   c:   93 a1 00 14     stw     r29,20(r1)                         c:   93 a1 
00 14     stw     r29,20(r1)
  10:   7c fd 3b 78     mr      r29,r7                            10:   7c fd 
3b 78     mr      r29,r7
  14:   3c e0 00 00     lis     r7,0                              14:   3c e0 
00 00     lis     r7,0
                        16: R_PPC_ADDR16_HA     ppc_md                          
        16: R_PPC_ADDR16_HA     ppc_md
  18:   38 e7 00 00     addi    r7,r7,0                           18:   38 e7 
00 00     addi    r7,r7,0
                        1a: R_PPC_ADDR16_LO     ppc_md                          
        1a: R_PPC_ADDR16_LO     ppc_md
  1c:   81 07 00 a0     lwz     r8,160(r7)                        1c:   81 07 
00 a0     lwz     r8,160(r7)
  20:   93 c1 00 18     stw     r30,24(r1)                        20:   93 c1 
00 18     stw     r30,24(r1)
  24:   28 08 00 00     cmplwi  r8,0                              24:   28 08 
00 00     cmplwi  r8,0
  28:   7c 7e 1b 78     mr      r30,r3                            28:   7c 7e 
1b 78     mr      r30,r3
  2c:   41 82 00 20     beq     4c <phys_mem_access_prot+0x4c     2c:   41 82 
00 20     beq     4c <phys_mem_access_prot+0x4c
  30:   80 7d 00 00     lwz     r3,0(r29)                         30:   80 7d 
00 00     lwz     r3,0(r29)
  34:   38 e1 00 08     addi    r7,r1,8                           34:   38 e1 
00 08     addi    r7,r1,8
  38:   7d 09 03 a6     mtctr   r8                                38:   7d 09 
03 a6     mtctr   r8
  3c:   90 61 00 08     stw     r3,8(r1)                          3c:   90 61 
00 08     stw     r3,8(r1)
  40:   7f c3 f3 78     mr      r3,r30                            40:   7f c3 
f3 78     mr      r3,r30
  44:   4e 80 04 21     bctrl                                     44:   4e 80 
04 21     bctrl
  48:   48 00 00 28     b       70 <phys_mem_access_prot+0x70     48:   48 00 
00 28     b       70 <phys_mem_access_prot+0x70
  4c:   7c a3 2b 78     mr      r3,r5                             4c:   7c a3 
2b 78     mr      r3,r5
  50:   48 00 00 01     bl      50 <phys_mem_access_prot+0x50     50:   48 00 
00 01     bl      50 <phys_mem_access_prot+0x50
                        50: R_PPC_PLTREL24      page_is_ram                     
        50: R_PPC_PLTREL24      page_is_ram
  54:   28 03 00 00     cmplwi  r3,0                              54:   28 03 
00 00     cmplwi  r3,0
  58:   80 7d 00 00     lwz     r3,0(r29)                         58:   80 7d 
00 00     lwz     r3,0(r29)
  5c:   40 82 00 10     bne     6c <phys_mem_access_prot+0x6c     5c:   40 82 
00 10     bne     6c <phys_mem_access_prot+0x6c
  60:   54 63 06 26     rlwinm  r3,r3,0,24,19                     60:   54 63 
06 26     rlwinm  r3,r3,0,24,19
  64:   60 63 05 00     ori     r3,r3,1280                        64:   60 63 
05 00     ori     r3,r3,1280
  68:   90 7d 00 00     stw     r3,0(r29)                         68:   90 7d 
00 00     stw     r3,0(r29)
  6c:   90 7e 00 00     stw     r3,0(r30)                         6c:   90 7e 
00 00     stw     r3,0(r30)
  70:   83 c1 00 18     lwz     r30,24(r1)                        70:   83 c1 
00 18     lwz     r30,24(r1)
  74:   83 a1 00 14     lwz     r29,20(r1)                        74:   83 a1 
00 14     lwz     r29,20(r1)
  78:   80 01 00 24     lwz     r0,36(r1)                         78:   80 01 
00 24     lwz     r0,36(r1)
  7c:   38 21 00 20     addi    r1,r1,32                          7c:   38 21 
00 20     addi    r1,r1,32
  80:   7c 08 03 a6     mtlr    r0                                80:   7c 08 
03 a6     mtlr    r0
  84:   4e 80 00 20     blr                                       84:   4e 80 
00 20     blr

00000088 <free_initmem>:                                        00000088 
<free_initmem>:
  88:   7c 08 02 a6     mflr    r0                                88:   7c 08 
02 a6     mflr    r0
  8c:   90 01 00 04     stw     r0,4(r1)                          8c:   90 01 
00 04     stw     r0,4(r1)
  90:   94 21 ff f0     stwu    r1,-16(r1)                        90:   94 21 
ff f0     stwu    r1,-16(r1)
  94:   3c 60 00 00     lis     r3,0                              94:   3c 60 
00 00     lis     r3,0
                        96: R_PPC_ADDR16_HA     ppc_md                          
        96: R_PPC_ADDR16_HA     ppc_md
  98:   3c 80 00 00     lis     r4,0                              98:   3c 80 
00 00     lis     r4,0
                        9a: R_PPC_ADDR16_HA     ppc_printk_pr                   
        9a: R_PPC_ADDR16_HA     ppc_printk_pr
  9c:   38 63 00 00     addi    r3,r3,0                           9c:   38 63 
00 00     addi    r3,r3,0
                        9e: R_PPC_ADDR16_LO     ppc_md                          
        9e: R_PPC_ADDR16_LO     ppc_md
  a0:   38 84 00 00     addi    r4,r4,0                           a0:   38 84 
00 00     addi    r4,r4,0
                        a2: R_PPC_ADDR16_LO     ppc_printk_pr                   
        a2: R_PPC_ADDR16_LO     ppc_printk_pr
  a4:   90 83 00 60     stw     r4,96(r3)                         a4:   90 83 
00 60     stw     r4,96(r3)
  a8:   48 00 00 01     bl      a8 <free_initmem+0x20>            a8:   48 00 
00 01     bl      a8 <free_initmem+0x20>
                        a8: R_PPC_PLTREL24      mark_initmem_                   
        a8: R_PPC_PLTREL24      mark_initmem_
  ac:   3c 60 00 00     lis     r3,0                              ac:   3c 60 
00 00     lis     r3,0
                        ae: R_PPC_ADDR16_HA     init_mem_is_f                   
        ae: R_PPC_ADDR16_HA     init_mem_is_f
  b0:   38 80 00 01     li      r4,1                              b0:   38 80 
00 01     li      r4,1
  b4:   98 83 00 00     stb     r4,0(r3)                          b4:   98 83 
00 00     stb     r4,0(r3)
                        b6: R_PPC_ADDR16_LO     init_mem_is_f                   
        b6: R_PPC_ADDR16_LO     init_mem_is_f
  b8:   3c 60 00 00     lis     r3,0                              b8:   3c 60 
00 00     lis     r3,0
                        ba: R_PPC_ADDR16_HA     __init_begin                    
        ba: R_PPC_ADDR16_HA     __init_begin
  bc:   3c 80 00 00     lis     r4,0                              bc:   3c 80 
00 00     lis     r4,0
                        be: R_PPC_ADDR16_HA     __init_end                      
        be: R_PPC_ADDR16_HA     __init_end
  c0:   3c a0 00 00     lis     r5,0                              c0:   3c a0 
00 00     lis     r5,0
                        c2: R_PPC_ADDR16_HA     .rodata.str1.                   
        c2: R_PPC_ADDR16_HA     .rodata.str1.
  c4:   38 63 00 00     addi    r3,r3,0                           c4:   38 63 
00 00     addi    r3,r3,0
                        c6: R_PPC_ADDR16_LO     __init_begin                    
        c6: R_PPC_ADDR16_LO     __init_begin
  c8:   38 84 00 00     addi    r4,r4,0                           c8:   38 84 
00 00     addi    r4,r4,0
                        ca: R_PPC_ADDR16_LO     __init_end                      
        ca: R_PPC_ADDR16_LO     __init_end
  cc:   38 c5 00 00     addi    r6,r5,0                           cc:   38 c5 
00 00     addi    r6,r5,0
                        ce: R_PPC_ADDR16_LO     .rodata.str1.                   
        ce: R_PPC_ADDR16_LO     .rodata.str1.
  d0:   38 a0 00 cc     li      r5,204                            d0:   38 a0 
00 cc     li      r5,204
  d4:   48 00 00 01     bl      d4 <free_initmem+0x4c>            d4:   48 00 
00 01     bl      d4 <free_initmem+0x4c>
                        d4: R_PPC_PLTREL24      free_reserved                   
        d4: R_PPC_PLTREL24      free_reserved
  d8:   80 01 00 14     lwz     r0,20(r1)                         d8:   80 01 
00 14     lwz     r0,20(r1)
  dc:   38 21 00 10     addi    r1,r1,16                          dc:   38 21 
00 10     addi    r1,r1,16
  e0:   7c 08 03 a6     mtlr    r0                                e0:   7c 08 
03 a6     mtlr    r0
  e4:   4e 80 00 20     blr                                       e4:   4e 80 
00 20     blr

000000e8 <flush_dcache_page>:                                   000000e8 
<flush_dcache_page>:
  e8:   80 83 00 00     lwz     r4,0(r3)                          e8:   80 83 
00 00     lwz     r4,0(r3)
  ec:   70 84 08 00     andi.   r4,r4,2048                        ec:   70 84 
08 00     andi.   r4,r4,2048
  f0:   4d 82 00 20     beqlr                                     f0:   4d 82 
00 20     beqlr
  f4:   38 80 08 00     li      r4,2048                           f4:   38 80 
08 00     li      r4,2048
  f8:   7c a0 18 28     lwarx   r5,0,r3                           f8:   7c a0 
18 28     lwarx   r5,0,r3
  fc:   7c a5 20 78     andc    r5,r5,r4                          fc:   7c a5 
20 78     andc    r5,r5,r4
 100:   7c a0 19 2d     stwcx.  r5,0,r3                          100:   7c a0 
19 2d     stwcx.  r5,0,r3
 104:   40 a2 ff f4     bne     f8 <flush_dcache_page+0x10>      104:   40 a2 
ff f4     bne     f8 <flush_dcache_page+0x10>
 108:   4e 80 00 20     blr                                      108:   4e 80 
00 20     blr

0000010c <flush_dcache_icache_page>:                            0000010c 
<flush_dcache_icache_page>:
 10c:   7c 08 02 a6     mflr    r0                               10c:   7c 08 
02 a6     mflr    r0
 110:   90 01 00 04     stw     r0,4(r1)                         110:   90 01 
00 04     stw     r0,4(r1)
 114:   94 21 ff f0     stwu    r1,-16(r1)                       114:   94 21 
ff f0     stwu    r1,-16(r1)
 118:   80 82 00 00     lwz     r4,0(r2)                         118:   80 82 
00 00     lwz     r4,0(r2)
 11c:   38 84 00 01     addi    r4,r4,1                          11c:   38 84 
00 01     addi    r4,r4,1
 120:   90 82 00 00     stw     r4,0(r2)                         120:   90 82 
00 00     stw     r4,0(r2)
 124:   80 82 0a e4     lwz     r4,2788(r2)                      124:   80 82 
0a e4     lwz     r4,2788(r2)
 128:   38 84 00 01     addi    r4,r4,1                          128:   38 84 
00 01     addi    r4,r4,1
 12c:   90 82 0a e4     stw     r4,2788(r2)                      12c:   90 82 
0a e4     stw     r4,2788(r2)
 130:   3c 80 00 00     lis     r4,0                             130:   3c 80 
00 00     lis     r4,0
                        132: R_PPC_ADDR16_HA    mem_map                         
        132: R_PPC_ADDR16_HA    mem_map
 134:   80 84 00 00     lwz     r4,0(r4)                         134:   80 84 
00 00     lwz     r4,0(r4)
                        136: R_PPC_ADDR16_LO    mem_map                         
        136: R_PPC_ADDR16_LO    mem_map
 138:   7c 64 18 50     subf    r3,r4,r3                         138:   7c 64 
18 50     subf    r3,r4,r3
 13c:   3c 80 cc cc     lis     r4,-13108                        13c:   3c 80 
cc cc     lis     r4,-13108
 140:   54 63 e8 fe     rlwinm  r3,r3,29,3,31                    140:   54 63 
e8 fe     rlwinm  r3,r3,29,3,31
 144:   60 84 d0 00     ori     r4,r4,53248                      144:   60 84 
d0 00     ori     r4,r4,53248
 148:   7c 63 21 d6     mullw   r3,r3,r4                         148:   7c 63 
21 d6     mullw   r3,r3,r4
 14c:   3c 63 c0 00     addis   r3,r3,-16384                     14c:   3c 63 
c0 00     addis   r3,r3,-16384
 150:   48 00 00 01     bl      150 <flush_dcache_icache_page    150:   48 00 
00 01     bl      150 <flush_dcache_icache_page
                        150: R_PPC_PLTREL24     __flush_dcach                   
        150: R_PPC_PLTREL24     __flush_dcach
 154:   80 62 0a e4     lwz     r3,2788(r2)                      154:   80 62 
0a e4     lwz     r3,2788(r2)
 158:   38 63 ff ff     addi    r3,r3,-1                         158:   38 63 
ff ff     addi    r3,r3,-1
 15c:   90 62 0a e4     stw     r3,2788(r2)                      15c:   90 62 
0a e4     stw     r3,2788(r2)
 160:   80 62 00 00     lwz     r3,0(r2)                         160:   80 62 
00 00     lwz     r3,0(r2)
 164:   38 63 ff ff     addi    r3,r3,-1                         164:   38 63 
ff ff     addi    r3,r3,-1
 168:   90 62 00 00     stw     r3,0(r2)                         168:   90 62 
00 00     stw     r3,0(r2)
 16c:   80 01 00 14     lwz     r0,20(r1)                        16c:   80 01 
00 14     lwz     r0,20(r1)
 170:   38 21 00 10     addi    r1,r1,16                         170:   38 21 
00 10     addi    r1,r1,16
 174:   7c 08 03 a6     mtlr    r0                               174:   7c 08 
03 a6     mtlr    r0
 178:   4e 80 00 20     blr                                      178:   4e 80 
00 20     blr

0000017c <clear_user_page>:                                     0000017c 
<clear_user_page>:
 17c:   38 80 00 80     li      r4,128                        |  17c:   94 21 
ff f0     stwu    r1,-16(r1)
 180:   7c 89 03 a6     mtctr   r4                            |  180:   38 80 
00 80     li      r4,128
 184:   7c 00 1f ec     dcbz    0,r3                          |  184:   38 63 
ff e0     addi    r3,r3,-32
 188:   38 63 00 20     addi    r3,r3,32                      |  188:   7c 89 
03 a6     mtctr   r4
 18c:   42 00 ff f8     bdnz    184 <clear_user_page+0x8>     |  18c:   38 81 
00 0f     addi    r4,r1,15
 190:   80 65 00 00     lwz     r3,0(r5)                      |  190:   8c c3 
00 20     lbzu    r6,32(r3)
 194:   70 63 08 00     andi.   r3,r3,2048                    |  194:   98 c1 
00 0f     stb     r6,15(r1)
 198:   4d 82 00 20     beqlr                                 |  198:   7c 00 
27 ec     dcbz    0,r4
 19c:   38 60 08 00     li      r3,2048                       |  19c:   42 00 
ff f4     bdnz    190 <clear_user_page+0x14>
 1a0:   7c 80 28 28     lwarx   r4,0,r5                       |  1a0:   80 65 
00 00     lwz     r3,0(r5)
 1a4:   7c 84 18 78     andc    r4,r4,r3                      |  1a4:   70 63 
08 00     andi.   r3,r3,2048
 1a8:   7c 80 29 2d     stwcx.  r4,0,r5                       |  1a8:   41 82 
00 18     beq     1c0 <clear_user_page+0x44>
 1ac:   40 a2 ff f4     bne     1a0 <clear_user_page+0x24>    |  1ac:   38 60 
08 00     li      r3,2048
 1b0:   4e 80 00 20     blr                                   |  1b0:   7c 80 
28 28     lwarx   r4,0,r5
                                                              |  1b4:   7c 84 
18 78     andc    r4,r4,r3
000001b4 <copy_user_page>:                                    |  1b8:   7c 80 
29 2d     stwcx.  r4,0,r5
 1b4:   7c 08 02 a6     mflr    r0                            |  1bc:   40 a2 
ff f4     bne     1b0 <clear_user_page+0x34>
 1b8:   90 01 00 04     stw     r0,4(r1)                      |  1c0:   38 21 
00 10     addi    r1,r1,16
 1bc:   94 21 ff f0     stwu    r1,-16(r1)                    |  1c4:   4e 80 
00 20     blr
 1c0:   93 c1 00 08     stw     r30,8(r1)                     |
 1c4:   7c de 33 78     mr      r30,r6                        | 000001c8 
<copy_user_page>:
 1c8:   48 00 00 01     bl      1c8 <copy_user_page+0x14>     |  1c8:   7c 08 
02 a6     mflr    r0
                        1c8: R_PPC_PLTREL24     copy_page     |  1cc:   90 01 
00 04     stw     r0,4(r1)
 1cc:   80 7e 00 00     lwz     r3,0(r30)                     |  1d0:   94 21 
ff f0     stwu    r1,-16(r1)
 1d0:   70 63 08 00     andi.   r3,r3,2048                    |  1d4:   93 c1 
00 08     stw     r30,8(r1)
 1d4:   41 82 00 18     beq     1ec <copy_user_page+0x38>     |  1d8:   7c de 
33 78     mr      r30,r6
 1d8:   38 60 08 00     li      r3,2048                       |  1dc:   48 00 
00 01     bl      1dc <copy_user_page+0x14>
 1dc:   7c 80 f0 28     lwarx   r4,0,r30                      |                 
        1dc: R_PPC_PLTREL24     copy_page
 1e0:   7c 84 18 78     andc    r4,r4,r3                      |  1e0:   80 7e 
00 00     lwz     r3,0(r30)
 1e4:   7c 80 f1 2d     stwcx.  r4,0,r30                      |  1e4:   70 63 
08 00     andi.   r3,r3,2048
 1e8:   40 a2 ff f4     bne     1dc <copy_user_page+0x28>     |  1e8:   41 82 
00 18     beq     200 <copy_user_page+0x38>
 1ec:   83 c1 00 08     lwz     r30,8(r1)                     |  1ec:   38 60 
08 00     li      r3,2048
 1f0:   80 01 00 14     lwz     r0,20(r1)                     |  1f0:   7c 80 
f0 28     lwarx   r4,0,r30
 1f4:   38 21 00 10     addi    r1,r1,16                      |  1f4:   7c 84 
18 78     andc    r4,r4,r3
 1f8:   7c 08 03 a6     mtlr    r0                            |  1f8:   7c 80 
f1 2d     stwcx.  r4,0,r30
 1fc:   4e 80 00 20     blr                                   |  1fc:   40 a2 
ff f4     bne     1f0 <copy_user_page+0x28>
                                                              |  200:   83 c1 
00 08     lwz     r30,8(r1)
00000200 <flush_icache_user_range>:                           |  204:   80 01 
00 14     lwz     r0,20(r1)
 200:   7c 08 02 a6     mflr    r0                            |  208:   38 21 
00 10     addi    r1,r1,16
 204:   90 01 00 04     stw     r0,4(r1)                      |  20c:   7c 08 
03 a6     mtlr    r0
 208:   94 21 ff e0     stwu    r1,-32(r1)                    |  210:   4e 80 
00 20     blr
 20c:   3c 60 00 00     lis     r3,0                          |
                        20e: R_PPC_ADDR16_HA    .rodata.str1. | 00000214 
<flush_icache_user_range>:
 210:   93 81 00 10     stw     r28,16(r1)                    |  214:   7c 08 
02 a6     mflr    r0
 214:   7c 9c 23 78     mr      r28,r4                        |  218:   90 01 
00 04     stw     r0,4(r1)
 218:   38 63 00 00     addi    r3,r3,0                       |  21c:   94 21 
ff e0     stwu    r1,-32(r1)
                        21a: R_PPC_ADDR16_LO    .rodata.str1. |  220:   3c 60 
00 00     lis     r3,0
 21c:   38 80 00 53     li      r4,83                         |                 
        222: R_PPC_ADDR16_HA    .rodata.str1.
 220:   93 a1 00 14     stw     r29,20(r1)                    |  224:   93 81 
00 10     stw     r28,16(r1)
 224:   7c bd 2b 78     mr      r29,r5                        |  228:   7c 9c 
23 78     mr      r28,r4
 228:   38 a0 00 00     li      r5,0                          |  22c:   38 63 
00 00     addi    r3,r3,0
 22c:   93 c1 00 18     stw     r30,24(r1)                    |                 
        22e: R_PPC_ADDR16_LO    .rodata.str1.
 230:   7c de 33 78     mr      r30,r6                        |  230:   38 80 
00 53     li      r4,83
 234:   48 00 00 01     bl      234 <flush_icache_user_range+ |  234:   93 a1 
00 14     stw     r29,20(r1)
                        234: R_PPC_PLTREL24     __might_sleep |  238:   7c bd 
2b 78     mr      r29,r5
 238:   3c 60 00 00     lis     r3,0                          |  23c:   38 a0 
00 00     li      r5,0
                        23a: R_PPC_ADDR16_HA    mem_map       |  240:   93 c1 
00 18     stw     r30,24(r1)
 23c:   3c 80 cc cc     lis     r4,-13108                     |  244:   7c de 
33 78     mr      r30,r6
 240:   80 63 00 00     lwz     r3,0(r3)                      |  248:   48 00 
00 01     bl      248 <flush_icache_user_range+
                        242: R_PPC_ADDR16_LO    mem_map       |                 
        248: R_PPC_PLTREL24     __might_sleep
 244:   60 84 d0 00     ori     r4,r4,53248                   |  24c:   3c 60 
00 00     lis     r3,0
 248:   7c 63 e0 50     subf    r3,r3,r28                     |                 
        24e: R_PPC_ADDR16_HA    mem_map
 24c:   54 63 e8 fe     rlwinm  r3,r3,29,3,31                 |  250:   3c 80 
cc cc     lis     r4,-13108
 250:   7c 63 21 d6     mullw   r3,r3,r4                      |  254:   80 63 
00 00     lwz     r3,0(r3)
 254:   57 a4 05 3e     clrlwi  r4,r29,20                     |                 
        256: R_PPC_ADDR16_LO    mem_map
 258:   50 64 00 26     rlwimi  r4,r3,0,0,19                  |  258:   60 84 
d0 00     ori     r4,r4,53248
 25c:   3c 64 c0 00     addis   r3,r4,-16384                  |  25c:   7c 63 
e0 50     subf    r3,r3,r28
 260:   7c 83 f2 14     add     r4,r3,r30                     |  260:   54 63 
e8 fe     rlwinm  r3,r3,29,3,31
 264:   48 00 00 01     bl      264 <flush_icache_user_range+ |  264:   7c 63 
21 d6     mullw   r3,r3,r4
                        264: R_PPC_PLTREL24     flush_icache_ |  268:   57 a4 
05 3e     clrlwi  r4,r29,20
 268:   83 c1 00 18     lwz     r30,24(r1)                    |  26c:   50 64 
00 26     rlwimi  r4,r3,0,0,19
 26c:   83 a1 00 14     lwz     r29,20(r1)                    |  270:   3c 64 
c0 00     addis   r3,r4,-16384
 270:   83 81 00 10     lwz     r28,16(r1)                    |  274:   7c 83 
f2 14     add     r4,r3,r30
 274:   80 01 00 24     lwz     r0,36(r1)                     |  278:   48 00 
00 01     bl      278 <flush_icache_user_range+
 278:   38 21 00 20     addi    r1,r1,32                      |                 
        278: R_PPC_PLTREL24     flush_icache_
 27c:   7c 08 03 a6     mtlr    r0                            |  27c:   83 c1 
00 18     lwz     r30,24(r1)
 280:   4e 80 00 20     blr                                   |  280:   83 a1 
00 14     lwz     r29,20(r1)
                                                              |  284:   83 81 
00 10     lwz     r28,16(r1)
00000284 <update_mmu_cache>:                                  |  288:   80 01 
00 24     lwz     r0,36(r1)
 284:   4e 80 00 20     blr                                   |  28c:   38 21 
00 20     addi    r1,r1,32
                                                              |  290:   7c 08 
03 a6     mtlr    r0
00000288 <devmem_is_allowed>:                                 |  294:   4e 80 
00 20     blr
 288:   7c 08 02 a6     mflr    r0                            |
 28c:   90 01 00 04     stw     r0,4(r1)                      | 00000298 
<update_mmu_cache>:
 290:   94 21 ff f0     stwu    r1,-16(r1)                    |  298:   4e 80 
00 20     blr
 294:   93 c1 00 08     stw     r30,8(r1)                     |
 298:   7c 7e 1b 78     mr      r30,r3                        | 0000029c 
<devmem_is_allowed>:
 29c:   54 63 65 3e     rlwinm  r3,r3,12,20,31                |  29c:   7c 08 
02 a6     mflr    r0
 2a0:   57 c4 60 26     rlwinm  r4,r30,12,0,19                |  2a0:   90 01 
00 04     stw     r0,4(r1)
 2a4:   48 00 00 01     bl      2a4 <devmem_is_allowed+0x1c>  |  2a4:   94 21 
ff f0     stwu    r1,-16(r1)
                        2a4: R_PPC_PLTREL24     iomem_is_excl |  2a8:   93 c1 
00 08     stw     r30,8(r1)
 2a8:   70 63 00 01     andi.   r3,r3,1                       |  2ac:   7c 7e 
1b 78     mr      r30,r3
 2ac:   38 60 00 00     li      r3,0                          |  2b0:   54 63 
65 3e     rlwinm  r3,r3,12,20,31
 2b0:   41 81 00 14     bgt     2c4 <devmem_is_allowed+0x3c>  |  2b4:   57 c4 
60 26     rlwinm  r4,r30,12,0,19
 2b4:   7f c3 f3 78     mr      r3,r30                        |  2b8:   48 00 
00 01     bl      2b8 <devmem_is_allowed+0x1c>
 2b8:   48 00 00 01     bl      2b8 <devmem_is_allowed+0x30>  |                 
        2b8: R_PPC_PLTREL24     iomem_is_excl
                        2b8: R_PPC_PLTREL24     page_is_ram   |  2bc:   70 63 
00 01     andi.   r3,r3,1
 2bc:   7c 63 00 34     cntlzw  r3,r3                         |  2c0:   38 60 
00 00     li      r3,0
 2c0:   54 63 df fe     rlwinm  r3,r3,27,31,31                |  2c4:   41 81 
00 14     bgt     2d8 <devmem_is_allowed+0x3c>
 2c4:   83 c1 00 08     lwz     r30,8(r1)                     |  2c8:   7f c3 
f3 78     mr      r3,r30
 2c8:   80 01 00 14     lwz     r0,20(r1)                     |  2cc:   48 00 
00 01     bl      2cc <devmem_is_allowed+0x30>
 2cc:   38 21 00 10     addi    r1,r1,16                      |                 
        2cc: R_PPC_PLTREL24     page_is_ram
 2d0:   7c 08 03 a6     mtlr    r0                            |  2d0:   7c 63 
00 34     cntlzw  r3,r3
 2d4:   4e 80 00 20     blr                                   |  2d4:   54 63 
df fe     rlwinm  r3,r3,27,31,31
                                                              >  2d8:   83 c1 
00 08     lwz     r30,8(r1)
                                                              >  2dc:   80 01 
00 14     lwz     r0,20(r1)
                                                              >  2e0:   38 21 
00 10     addi    r1,r1,16
                                                              >  2e4:   7c 08 
03 a6     mtlr    r0
                                                              >  2e8:   4e 80 
00 20     blr

Disassembly of section .init.text:                              Disassembly of 
section .init.text:

00000000 <mem_topology_setup>:                                  00000000 
<mem_topology_setup>:
   0:   7c 08 02 a6     mflr    r0                                 0:   7c 08 
02 a6     mflr    r0
   4:   90 01 00 04     stw     r0,4(r1)                           4:   90 01 
00 04     stw     r0,4(r1)
   8:   94 21 ff f0     stwu    r1,-16(r1)                         8:   94 21 
ff f0     stwu    r1,-16(r1)
   c:   48 00 00 01     bl      c <mem_topology_setup+0xc>         c:   48 00 
00 01     bl      c <mem_topology_setup+0xc>
                        c: R_PPC_PLTREL24       memblock_end_                   
        c: R_PPC_PLTREL24       memblock_end_
  10:   54 84 a0 3e     rotlwi  r4,r4,20                          10:   54 84 
a0 3e     rotlwi  r4,r4,20
  14:   3c a0 00 00     lis     r5,0                              14:   3c a0 
00 00     lis     r5,0
                        16: R_PPC_ADDR16_HA     max_pfn                         
        16: R_PPC_ADDR16_HA     max_pfn
  18:   50 64 a0 16     rlwimi  r4,r3,20,0,11                     18:   50 64 
a0 16     rlwimi  r4,r3,20,0,11
  1c:   3c 60 00 00     lis     r3,0                              1c:   3c 60 
00 00     lis     r3,0
                        1e: R_PPC_ADDR16_HA     max_low_pfn                     
        1e: R_PPC_ADDR16_HA     max_low_pfn
  20:   90 85 00 00     stw     r4,0(r5)                          20:   90 85 
00 00     stw     r4,0(r5)
                        22: R_PPC_ADDR16_LO     max_pfn                         
        22: R_PPC_ADDR16_LO     max_pfn
  24:   38 a0 ff ff     li      r5,-1                             24:   38 a0 
ff ff     li      r5,-1
  28:   90 83 00 00     stw     r4,0(r3)                          28:   90 83 
00 00     stw     r4,0(r3)
                        2a: R_PPC_ADDR16_LO     max_low_pfn                     
        2a: R_PPC_ADDR16_LO     max_low_pfn
  2c:   3c 60 00 00     lis     r3,0                              2c:   3c 60 
00 00     lis     r3,0
                        2e: R_PPC_ADDR16_HA     min_low_pfn                     
        2e: R_PPC_ADDR16_HA     min_low_pfn
  30:   38 80 00 00     li      r4,0                              30:   38 80 
00 00     li      r4,0
  34:   38 c0 ff ff     li      r6,-1                             34:   38 c0 
ff ff     li      r6,-1
  38:   39 00 00 00     li      r8,0                              38:   39 00 
00 00     li      r8,0
  3c:   90 83 00 00     stw     r4,0(r3)                          3c:   90 83 
00 00     stw     r4,0(r3)
                        3e: R_PPC_ADDR16_LO     min_low_pfn                     
        3e: R_PPC_ADDR16_LO     min_low_pfn
  40:   3c 60 00 00     lis     r3,0                              40:   3c 60 
00 00     lis     r3,0
                        42: R_PPC_ADDR16_HA     memblock                        
        42: R_PPC_ADDR16_HA     memblock
  44:   38 80 00 00     li      r4,0                              44:   38 80 
00 00     li      r4,0
  48:   38 63 00 00     addi    r3,r3,0                           48:   38 63 
00 00     addi    r3,r3,0
                        4a: R_PPC_ADDR16_LO     memblock                        
        4a: R_PPC_ADDR16_LO     memblock
  4c:   38 e3 00 10     addi    r7,r3,16                          4c:   38 e3 
00 10     addi    r7,r3,16
  50:   38 60 00 00     li      r3,0                              50:   38 60 
00 00     li      r3,0
  54:   48 00 00 01     bl      54 <mem_topology_setup+0x54>      54:   48 00 
00 01     bl      54 <mem_topology_setup+0x54>
                        54: R_PPC_PLTREL24      memblock_set_                   
        54: R_PPC_PLTREL24      memblock_set_
  58:   80 01 00 14     lwz     r0,20(r1)                         58:   80 01 
00 14     lwz     r0,20(r1)
  5c:   38 21 00 10     addi    r1,r1,16                          5c:   38 21 
00 10     addi    r1,r1,16
  60:   7c 08 03 a6     mtlr    r0                                60:   7c 08 
03 a6     mtlr    r0
  64:   4e 80 00 20     blr                                       64:   4e 80 
00 20     blr

00000068 <initmem_init>:                                        00000068 
<initmem_init>:
  68:   7c 08 02 a6     mflr    r0                                68:   7c 08 
02 a6     mflr    r0
  6c:   90 01 00 04     stw     r0,4(r1)                          6c:   90 01 
00 04     stw     r0,4(r1)
  70:   94 21 ff f0     stwu    r1,-16(r1)                        70:   94 21 
ff f0     stwu    r1,-16(r1)
  74:   38 60 00 00     li      r3,0                              74:   38 60 
00 00     li      r3,0
  78:   48 00 00 01     bl      78 <initmem_init+0x10>            78:   48 00 
00 01     bl      78 <initmem_init+0x10>
                        78: R_PPC_PLTREL24      sparse_memory                   
        78: R_PPC_PLTREL24      sparse_memory
  7c:   80 01 00 14     lwz     r0,20(r1)                         7c:   80 01 
00 14     lwz     r0,20(r1)
  80:   38 21 00 10     addi    r1,r1,16                          80:   38 21 
00 10     addi    r1,r1,16
  84:   7c 08 03 a6     mtlr    r0                                84:   7c 08 
03 a6     mtlr    r0
  88:   4e 80 00 20     blr                                       88:   4e 80 
00 20     blr

0000008c <paging_init>:                                         0000008c 
<paging_init>:
  8c:   7c 08 02 a6     mflr    r0                                8c:   7c 08 
02 a6     mflr    r0
  90:   90 01 00 04     stw     r0,4(r1)                          90:   90 01 
00 04     stw     r0,4(r1)
  94:   94 21 ff d0     stwu    r1,-48(r1)                        94:   94 21 
ff d0     stwu    r1,-48(r1)
  98:   93 21 00 14     stw     r25,20(r1)                        98:   93 21 
00 14     stw     r25,20(r1)
  9c:   93 41 00 18     stw     r26,24(r1)                        9c:   93 41 
00 18     stw     r26,24(r1)
  a0:   93 61 00 1c     stw     r27,28(r1)                        a0:   93 61 
00 1c     stw     r27,28(r1)
  a4:   93 81 00 20     stw     r28,32(r1)                        a4:   93 81 
00 20     stw     r28,32(r1)
  a8:   93 a1 00 24     stw     r29,36(r1)                        a8:   93 a1 
00 24     stw     r29,36(r1)
  ac:   93 c1 00 28     stw     r30,40(r1)                        ac:   93 c1 
00 28     stw     r30,40(r1)
  b0:   48 00 00 01     bl      b0 <paging_init+0x24>             b0:   48 00 
00 01     bl      b0 <paging_init+0x24>
                        b0: R_PPC_PLTREL24      memblock_phys                   
        b0: R_PPC_PLTREL24      memblock_phys
  b4:   7c 7e 1b 78     mr      r30,r3                            b4:   7c 7e 
1b 78     mr      r30,r3
  b8:   7c 9d 23 78     mr      r29,r4                            b8:   7c 9d 
23 78     mr      r29,r4
  bc:   3f 40 ff fe     lis     r26,-2                            bc:   3f 40 
ff fe     lis     r26,-2
  c0:   48 00 00 01     bl      c0 <paging_init+0x34>             c0:   48 00 
00 01     bl      c0 <paging_init+0x34>
                        c0: R_PPC_PLTREL24      memblock_end_                   
        c0: R_PPC_PLTREL24      memblock_end_
  c4:   7c 7c 1b 78     mr      r28,r3                            c4:   7c 7c 
1b 78     mr      r28,r3
  c8:   7c 9b 23 78     mr      r27,r4                            c8:   7c 9b 
23 78     mr      r27,r4
  cc:   3b 20 00 00     li      r25,0                             cc:   3b 20 
00 00     li      r25,0
  d0:   38 e1 00 08     addi    r7,r1,8                           d0:   38 e1 
00 08     addi    r7,r1,8
  d4:   7f 43 d3 78     mr      r3,r26                            d4:   7f 43 
d3 78     mr      r3,r26
  d8:   93 21 00 10     stw     r25,16(r1)                        d8:   93 21 
00 10     stw     r25,16(r1)
  dc:   38 a0 00 00     li      r5,0                              dc:   38 a0 
00 00     li      r5,0
  e0:   38 c0 00 00     li      r6,0                              e0:   38 c0 
00 00     li      r6,0
  e4:   93 21 00 08     stw     r25,8(r1)                         e4:   93 21 
00 08     stw     r25,8(r1)
  e8:   48 00 00 01     bl      e8 <paging_init+0x5c>             e8:   48 00 
00 01     bl      e8 <paging_init+0x5c>
                        e8: R_PPC_PLTREL24      map_kernel_pa                   
        e8: R_PPC_PLTREL24      map_kernel_pa
  ec:   3b 5a 10 00     addi    r26,r26,4096                      ec:   3b 5a 
10 00     addi    r26,r26,4096
  f0:   2c 1a f0 00     cmpwi   r26,-4096                         f0:   2c 1a 
f0 00     cmpwi   r26,-4096
  f4:   40 82 ff dc     bne     d0 <paging_init+0x44>             f4:   40 82 
ff dc     bne     d0 <paging_init+0x44>
  f8:   3c 60 00 00     lis     r3,0                              f8:   3c 60 
00 00     lis     r3,0
                        fa: R_PPC_ADDR16_HA     .rodata.str1.                   
        fa: R_PPC_ADDR16_HA     .rodata.str1.
  fc:   4c c6 31 82     crclr   4*cr1+eq                          fc:   4c c6 
31 82     crclr   4*cr1+eq
 100:   7f 85 e3 78     mr      r5,r28                           100:   7f 85 
e3 78     mr      r5,r28
 104:   38 63 00 00     addi    r3,r3,0                          104:   38 63 
00 00     addi    r3,r3,0
                        106: R_PPC_ADDR16_LO    .rodata.str1.                   
        106: R_PPC_ADDR16_LO    .rodata.str1.
 108:   7f 66 db 78     mr      r6,r27                           108:   7f 66 
db 78     mr      r6,r27
 10c:   7f c7 f3 78     mr      r7,r30                           10c:   7f c7 
f3 78     mr      r7,r30
 110:   7f a8 eb 78     mr      r8,r29                           110:   7f a8 
eb 78     mr      r8,r29
 114:   48 00 00 01     bl      114 <paging_init+0x88>           114:   48 00 
00 01     bl      114 <paging_init+0x88>
                        114: R_PPC_PLTREL24     printk                          
        114: R_PPC_PLTREL24     printk
 118:   7c 7d d8 10     subfc   r3,r29,r27                       118:   7c 7d 
d8 10     subfc   r3,r29,r27
 11c:   4c c6 31 82     crclr   4*cr1+eq                         11c:   4c c6 
31 82     crclr   4*cr1+eq
 120:   7c be e1 10     subfe   r5,r30,r28                       120:   7c be 
e1 10     subfe   r5,r30,r28
 124:   54 64 60 3e     rotlwi  r4,r3,12                         124:   54 64 
60 3e     rotlwi  r4,r3,12
 128:   3c 60 00 00     lis     r3,0                             128:   3c 60 
00 00     lis     r3,0
                        12a: R_PPC_ADDR16_HA    .rodata.str1.                   
        12a: R_PPC_ADDR16_HA    .rodata.str1.
 12c:   50 a4 60 26     rlwimi  r4,r5,12,0,19                    12c:   50 a4 
60 26     rlwimi  r4,r5,12,0,19
 130:   38 63 00 00     addi    r3,r3,0                          130:   38 63 
00 00     addi    r3,r3,0
                        132: R_PPC_ADDR16_LO    .rodata.str1.                   
        132: R_PPC_ADDR16_LO    .rodata.str1.
 134:   48 00 00 01     bl      134 <paging_init+0xa8>           134:   48 00 
00 01     bl      134 <paging_init+0xa8>
                        134: R_PPC_PLTREL24     printk                          
        134: R_PPC_PLTREL24     printk
 138:   3c 60 00 00     lis     r3,0                             138:   3c 60 
00 00     lis     r3,0
                        13a: R_PPC_ADDR16_HA    max_low_pfn                     
        13a: R_PPC_ADDR16_HA    max_low_pfn
 13c:   80 83 00 00     lwz     r4,0(r3)                         13c:   80 83 
00 00     lwz     r4,0(r3)
                        13e: R_PPC_ADDR16_LO    max_low_pfn                     
        13e: R_PPC_ADDR16_LO    max_low_pfn
 140:   3c 60 00 00     lis     r3,0                             140:   3c 60 
00 00     lis     r3,0
                        142: R_PPC_ADDR16_HA    .bss+0x10                       
        142: R_PPC_ADDR16_HA    .bss+0x10
 144:   94 83 00 00     stwu    r4,0(r3)                         144:   94 83 
00 00     stwu    r4,0(r3)
                        146: R_PPC_ADDR16_LO    .bss+0x10                       
        146: R_PPC_ADDR16_LO    .bss+0x10
 148:   48 00 00 01     bl      148 <paging_init+0xbc>           148:   48 00 
00 01     bl      148 <paging_init+0xbc>
                        148: R_PPC_PLTREL24     free_area_ini                   
        148: R_PPC_PLTREL24     free_area_ini
 14c:   83 c1 00 28     lwz     r30,40(r1)                       14c:   83 c1 
00 28     lwz     r30,40(r1)
 150:   83 a1 00 24     lwz     r29,36(r1)                       150:   83 a1 
00 24     lwz     r29,36(r1)
 154:   83 81 00 20     lwz     r28,32(r1)                       154:   83 81 
00 20     lwz     r28,32(r1)
 158:   83 61 00 1c     lwz     r27,28(r1)                       158:   83 61 
00 1c     lwz     r27,28(r1)
 15c:   83 41 00 18     lwz     r26,24(r1)                       15c:   83 41 
00 18     lwz     r26,24(r1)
 160:   83 21 00 14     lwz     r25,20(r1)                       160:   83 21 
00 14     lwz     r25,20(r1)
 164:   80 01 00 34     lwz     r0,52(r1)                        164:   80 01 
00 34     lwz     r0,52(r1)
 168:   38 21 00 30     addi    r1,r1,48                         168:   38 21 
00 30     addi    r1,r1,48
 16c:   7c 08 03 a6     mtlr    r0                               16c:   7c 08 
03 a6     mtlr    r0
 170:   4e 80 00 20     blr                                      170:   4e 80 
00 20     blr

00000174 <mem_init>:                                            00000174 
<mem_init>:
 174:   7c 08 02 a6     mflr    r0                               174:   7c 08 
02 a6     mflr    r0
 178:   90 01 00 04     stw     r0,4(r1)                         178:   90 01 
00 04     stw     r0,4(r1)
 17c:   94 21 ff e0     stwu    r1,-32(r1)                       17c:   94 21 
ff e0     stwu    r1,-32(r1)
 180:   3c 60 00 00     lis     r3,0                             180:   3c 60 
00 00     lis     r3,0
                        182: R_PPC_ADDR16_HA    max_low_pfn                     
        182: R_PPC_ADDR16_HA    max_low_pfn
 184:   3c 80 00 00     lis     r4,0                             184:   3c 80 
00 00     lis     r4,0
                        186: R_PPC_ADDR16_HA    max_pfn                         
        186: R_PPC_ADDR16_HA    max_pfn
 188:   93 81 00 10     stw     r28,16(r1)                       188:   93 81 
00 10     stw     r28,16(r1)
 18c:   3f 80 00 00     lis     r28,0                            18c:   3f 80 
00 00     lis     r28,0
                        18e: R_PPC_ADDR16_HA    high_memory                     
        18e: R_PPC_ADDR16_HA    high_memory
 190:   80 63 00 00     lwz     r3,0(r3)                         190:   80 63 
00 00     lwz     r3,0(r3)
                        192: R_PPC_ADDR16_LO    max_low_pfn                     
        192: R_PPC_ADDR16_LO    max_low_pfn
 194:   80 84 00 00     lwz     r4,0(r4)                         194:   80 84 
00 00     lwz     r4,0(r4)
                        196: R_PPC_ADDR16_LO    max_pfn                         
        196: R_PPC_ADDR16_LO    max_pfn
 198:   54 63 60 26     rlwinm  r3,r3,12,0,19                    198:   54 63 
60 26     rlwinm  r3,r3,12,0,19
 19c:   3c 63 c0 00     addis   r3,r3,-16384                     19c:   3c 63 
c0 00     addis   r3,r3,-16384
 1a0:   90 7c 00 00     stw     r3,0(r28)                        1a0:   90 7c 
00 00     stw     r3,0(r28)
                        1a2: R_PPC_ADDR16_LO    high_memory                     
        1a2: R_PPC_ADDR16_LO    high_memory
 1a4:   3c 60 00 00     lis     r3,0                             1a4:   3c 60 
00 00     lis     r3,0
                        1a6: R_PPC_ADDR16_HA    max_mapnr                       
        1a6: R_PPC_ADDR16_HA    max_mapnr
 1a8:   93 a1 00 14     stw     r29,20(r1)                       1a8:   93 a1 
00 14     stw     r29,20(r1)
 1ac:   93 c1 00 18     stw     r30,24(r1)                       1ac:   93 c1 
00 18     stw     r30,24(r1)
 1b0:   90 83 00 00     stw     r4,0(r3)                         1b0:   90 83 
00 00     stw     r4,0(r3)
                        1b2: R_PPC_ADDR16_LO    max_mapnr                       
        1b2: R_PPC_ADDR16_LO    max_mapnr
 1b4:   48 00 00 01     bl      1b4 <mem_init+0x40>              1b4:   48 00 
00 01     bl      1b4 <mem_init+0x40>
                        1b4: R_PPC_PLTREL24     memblock_free                   
        1b4: R_PPC_PLTREL24     memblock_free
 1b8:   38 60 00 00     li      r3,0                             1b8:   38 60 
00 00     li      r3,0
 1bc:   48 00 00 01     bl      1bc <mem_init+0x48>              1bc:   48 00 
00 01     bl      1bc <mem_init+0x48>
                        1bc: R_PPC_PLTREL24     mem_init_prin                   
        1bc: R_PPC_PLTREL24     mem_init_prin
 1c0:   3c 60 00 00     lis     r3,0                             1c0:   3c 60 
00 00     lis     r3,0
                        1c2: R_PPC_ADDR16_HA    .rodata.str1.                   
        1c2: R_PPC_ADDR16_HA    .rodata.str1.
 1c4:   4c c6 31 82     crclr   4*cr1+eq                         1c4:   4c c6 
31 82     crclr   4*cr1+eq
 1c8:   38 63 00 00     addi    r3,r3,0                          1c8:   38 63 
00 00     addi    r3,r3,0
                        1ca: R_PPC_ADDR16_LO    .rodata.str1.                   
        1ca: R_PPC_ADDR16_LO    .rodata.str1.
 1cc:   48 00 00 01     bl      1cc <mem_init+0x58>              1cc:   48 00 
00 01     bl      1cc <mem_init+0x58>
                        1cc: R_PPC_PLTREL24     printk                          
        1cc: R_PPC_PLTREL24     printk
 1d0:   3c 80 ff fd     lis     r4,-3                            1d0:   3c 80 
ff fd     lis     r4,-3
 1d4:   3c 60 00 00     lis     r3,0                             1d4:   3c 60 
00 00     lis     r3,0
                        1d6: R_PPC_ADDR16_HA    .rodata.str1.                   
        1d6: R_PPC_ADDR16_HA    .rodata.str1.
 1d8:   4c c6 31 82     crclr   4*cr1+eq                         1d8:   4c c6 
31 82     crclr   4*cr1+eq
 1dc:   60 9e f0 00     ori     r30,r4,61440                     1dc:   60 9e 
f0 00     ori     r30,r4,61440
 1e0:   38 63 00 00     addi    r3,r3,0                          1e0:   38 63 
00 00     addi    r3,r3,0
                        1e2: R_PPC_ADDR16_LO    .rodata.str1.                   
        1e2: R_PPC_ADDR16_LO    .rodata.str1.
 1e4:   7f c4 f3 78     mr      r4,r30                           1e4:   7f c4 
f3 78     mr      r4,r30
 1e8:   38 a0 f0 00     li      r5,-4096                         1e8:   38 a0 
f0 00     li      r5,-4096
 1ec:   48 00 00 01     bl      1ec <mem_init+0x78>              1ec:   48 00 
00 01     bl      1ec <mem_init+0x78>
                        1ec: R_PPC_PLTREL24     printk                          
        1ec: R_PPC_PLTREL24     printk
 1f0:   3c 80 ff dd     lis     r4,-35                           1f0:   3c 80 
ff dd     lis     r4,-35
 1f4:   3c 60 00 00     lis     r3,0                             1f4:   3c 60 
00 00     lis     r3,0
                        1f6: R_PPC_ADDR16_HA    .rodata.str1.                   
        1f6: R_PPC_ADDR16_HA    .rodata.str1.
 1f8:   4c c6 31 82     crclr   4*cr1+eq                         1f8:   4c c6 
31 82     crclr   4*cr1+eq
 1fc:   60 9d f0 00     ori     r29,r4,61440                     1fc:   60 9d 
f0 00     ori     r29,r4,61440
 200:   38 63 00 00     addi    r3,r3,0                          200:   38 63 
00 00     addi    r3,r3,0
                        202: R_PPC_ADDR16_LO    .rodata.str1.                   
        202: R_PPC_ADDR16_LO    .rodata.str1.
 204:   7f a4 eb 78     mr      r4,r29                           204:   7f a4 
eb 78     mr      r4,r29
 208:   7f c5 f3 78     mr      r5,r30                           208:   7f c5 
f3 78     mr      r5,r30
 20c:   48 00 00 01     bl      20c <mem_init+0x98>              20c:   48 00 
00 01     bl      20c <mem_init+0x98>
                        20c: R_PPC_PLTREL24     printk                          
        20c: R_PPC_PLTREL24     printk
 210:   3f c0 00 00     lis     r30,0                            210:   3f c0 
00 00     lis     r30,0
                        212: R_PPC_ADDR16_HA    ioremap_bot                     
        212: R_PPC_ADDR16_HA    ioremap_bot
 214:   3c 60 00 00     lis     r3,0                             214:   3c 60 
00 00     lis     r3,0
                        216: R_PPC_ADDR16_HA    .rodata.str1.                   
        216: R_PPC_ADDR16_HA    .rodata.str1.
 218:   4c c6 31 82     crclr   4*cr1+eq                         218:   4c c6 
31 82     crclr   4*cr1+eq
 21c:   80 9e 00 00     lwz     r4,0(r30)                        21c:   80 9e 
00 00     lwz     r4,0(r30)
                        21e: R_PPC_ADDR16_LO    ioremap_bot                     
        21e: R_PPC_ADDR16_LO    ioremap_bot
 220:   38 63 00 00     addi    r3,r3,0                          220:   38 63 
00 00     addi    r3,r3,0
                        222: R_PPC_ADDR16_LO    .rodata.str1.                   
        222: R_PPC_ADDR16_LO    .rodata.str1.
 224:   7f a5 eb 78     mr      r5,r29                           224:   7f a5 
eb 78     mr      r5,r29
 228:   48 00 00 01     bl      228 <mem_init+0xb4>              228:   48 00 
00 01     bl      228 <mem_init+0xb4>
                        228: R_PPC_PLTREL24     printk                          
        228: R_PPC_PLTREL24     printk
 22c:   80 7c 00 00     lwz     r3,0(r28)                        22c:   80 7c 
00 00     lwz     r3,0(r28)
                        22e: R_PPC_ADDR16_LO    high_memory                     
        22e: R_PPC_ADDR16_LO    high_memory
 230:   3c 80 01 00     lis     r4,256                           230:   3c 80 
01 00     lis     r4,256
 234:   4c c6 31 82     crclr   4*cr1+eq                         234:   4c c6 
31 82     crclr   4*cr1+eq
 238:   38 63 ff ff     addi    r3,r3,-1                         238:   38 63 
ff ff     addi    r3,r3,-1
 23c:   80 be 00 00     lwz     r5,0(r30)                        23c:   80 be 
00 00     lwz     r5,0(r30)
                        23e: R_PPC_ADDR16_LO    ioremap_bot                     
        23e: R_PPC_ADDR16_LO    ioremap_bot
 240:   3c 63 10 00     addis   r3,r3,4096                       240:   3c 63 
10 00     addis   r3,r3,4096
 244:   54 63 00 06     rlwinm  r3,r3,0,0,3                      244:   54 63 
00 06     rlwinm  r3,r3,0,0,3
 248:   50 64 02 0c     rlwimi  r4,r3,0,8,6                      248:   50 64 
02 0c     rlwimi  r4,r3,0,8,6
 24c:   3c 60 00 00     lis     r3,0                             24c:   3c 60 
00 00     lis     r3,0
                        24e: R_PPC_ADDR16_HA    .rodata.str1.                   
        24e: R_PPC_ADDR16_HA    .rodata.str1.
 250:   38 63 00 00     addi    r3,r3,0                          250:   38 63 
00 00     addi    r3,r3,0
                        252: R_PPC_ADDR16_LO    .rodata.str1.                   
        252: R_PPC_ADDR16_LO    .rodata.str1.
 254:   48 00 00 01     bl      254 <mem_init+0xe0>              254:   48 00 
00 01     bl      254 <mem_init+0xe0>
                        254: R_PPC_PLTREL24     printk                          
        254: R_PPC_PLTREL24     printk
 258:   83 c1 00 18     lwz     r30,24(r1)                       258:   83 c1 
00 18     lwz     r30,24(r1)
 25c:   83 a1 00 14     lwz     r29,20(r1)                       25c:   83 a1 
00 14     lwz     r29,20(r1)
 260:   83 81 00 10     lwz     r28,16(r1)                       260:   83 81 
00 10     lwz     r28,16(r1)
 264:   80 01 00 24     lwz     r0,36(r1)                        264:   80 01 
00 24     lwz     r0,36(r1)
 268:   38 21 00 20     addi    r1,r1,32                         268:   38 21 
00 20     addi    r1,r1,32
 26c:   7c 08 03 a6     mtlr    r0                               26c:   7c 08 
03 a6     mtlr    r0
 270:   4e 80 00 20     blr                                      270:   4e 80 
00 20     blr

00000274 <add_system_ram_resources>:                            00000274 
<add_system_ram_resources>:
 274:   7c 08 02 a6     mflr    r0                               274:   7c 08 
02 a6     mflr    r0
 278:   90 01 00 04     stw     r0,4(r1)                         278:   90 01 
00 04     stw     r0,4(r1)
 27c:   94 21 ff c0     stwu    r1,-64(r1)                       27c:   94 21 
ff c0     stwu    r1,-64(r1)
 280:   3c 60 00 00     lis     r3,0                             280:   3c 60 
00 00     lis     r3,0
                        282: R_PPC_ADDR16_HA    memblock                        
        282: R_PPC_ADDR16_HA    memblock
 284:   93 a1 00 34     stw     r29,52(r1)                       284:   93 a1 
00 34     stw     r29,52(r1)
 288:   3b a3 00 00     addi    r29,r3,0                         288:   3b a3 
00 00     addi    r29,r3,0
                        28a: R_PPC_ADDR16_LO    memblock                        
        28a: R_PPC_ADDR16_LO    memblock
 28c:   80 7d 00 10     lwz     r3,16(r29)                       28c:   80 7d 
00 10     lwz     r3,16(r29)
 290:   93 81 00 30     stw     r28,48(r1)                       290:   93 81 
00 30     stw     r28,48(r1)
 294:   1c 63 00 18     mulli   r3,r3,24                         294:   1c 63 
00 18     mulli   r3,r3,24
 298:   83 9d 00 20     lwz     r28,32(r29)                      298:   83 9d 
00 20     lwz     r28,32(r29)
 29c:   7c 7c 1a 14     add     r3,r28,r3                        29c:   7c 7c 
1a 14     add     r3,r28,r3
 2a0:   92 a1 00 14     stw     r21,20(r1)                       2a0:   92 a1 
00 14     stw     r21,20(r1)
 2a4:   7c 1c 18 40     cmplw   r28,r3                           2a4:   7c 1c 
18 40     cmplw   r28,r3
 2a8:   92 c1 00 18     stw     r22,24(r1)                       2a8:   92 c1 
00 18     stw     r22,24(r1)
 2ac:   92 e1 00 1c     stw     r23,28(r1)                       2ac:   92 e1 
00 1c     stw     r23,28(r1)
 2b0:   93 01 00 20     stw     r24,32(r1)                       2b0:   93 01 
00 20     stw     r24,32(r1)
 2b4:   93 21 00 24     stw     r25,36(r1)                       2b4:   93 21 
00 24     stw     r25,36(r1)
 2b8:   93 41 00 28     stw     r26,40(r1)                       2b8:   93 41 
00 28     stw     r26,40(r1)
 2bc:   93 61 00 2c     stw     r27,44(r1)                       2bc:   93 61 
00 2c     stw     r27,44(r1)
 2c0:   93 c1 00 38     stw     r30,56(r1)                       2c0:   93 c1 
00 38     stw     r30,56(r1)
 2c4:   40 80 00 ac     bge     370 <add_system_ram_resources    2c4:   40 80 
00 ac     bge     370 <add_system_ram_resources
 2c8:   3c 60 00 00     lis     r3,0                             2c8:   3c 60 
00 00     lis     r3,0
                        2ca: R_PPC_ADDR16_HA    kmalloc_cache                   
        2ca: R_PPC_ADDR16_HA    kmalloc_cache
 2cc:   3c 80 00 00     lis     r4,0                             2cc:   3c 80 
00 00     lis     r4,0
                        2ce: R_PPC_ADDR16_HA    .rodata.str1.                   
        2ce: R_PPC_ADDR16_HA    .rodata.str1.
 2d0:   3c a0 81 00     lis     r5,-32512                        2d0:   3c a0 
81 00     lis     r5,-32512
 2d4:   3c c0 00 00     lis     r6,0                             2d4:   3c c0 
00 00     lis     r6,0
                        2d6: R_PPC_ADDR16_HA    iomem_resourc                   
        2d6: R_PPC_ADDR16_HA    iomem_resourc
 2d8:   3b 7c ff e8     addi    r27,r28,-24                      2d8:   3b 7c 
ff e8     addi    r27,r28,-24
 2dc:   3b 40 00 00     li      r26,0                            2dc:   3b 40 
00 00     li      r26,0
 2e0:   3b 23 00 00     addi    r25,r3,0                         2e0:   3b 23 
00 00     addi    r25,r3,0
                        2e2: R_PPC_ADDR16_LO    kmalloc_cache                   
        2e2: R_PPC_ADDR16_LO    kmalloc_cache
 2e4:   3b 04 00 00     addi    r24,r4,0                         2e4:   3b 04 
00 00     addi    r24,r4,0
                        2e6: R_PPC_ADDR16_LO    .rodata.str1.                   
        2e6: R_PPC_ADDR16_LO    .rodata.str1.
 2e8:   60 b7 02 00     ori     r23,r5,512                       2e8:   60 b7 
02 00     ori     r23,r5,512
 2ec:   3b c6 00 00     addi    r30,r6,0                         2ec:   3b c6 
00 00     addi    r30,r6,0
                        2ee: R_PPC_ADDR16_LO    iomem_resourc                   
        2ee: R_PPC_ADDR16_LO    iomem_resourc
 2f0:   80 79 00 18     lwz     r3,24(r25)                       2f0:   80 79 
00 18     lwz     r3,24(r25)
 2f4:   38 80 0d c0     li      r4,3520                          2f4:   38 80 
0d c0     li      r4,3520
 2f8:   38 a0 00 28     li      r5,40                            2f8:   38 a0 
00 28     li      r5,40
 2fc:   82 db 00 1c     lwz     r22,28(r27)                      2fc:   82 db 
00 1c     lwz     r22,28(r27)
 300:   82 bb 00 24     lwz     r21,36(r27)                      300:   82 bb 
00 24     lwz     r21,36(r27)
 304:   48 00 00 01     bl      304 <add_system_ram_resources    304:   48 00 
00 01     bl      304 <add_system_ram_resources
                        304: R_PPC_PLTREL24     kmem_cache_al                   
        304: R_PPC_PLTREL24     kmem_cache_al
 308:   7c 64 1b 78     mr      r4,r3                            308:   7c 64 
1b 78     mr      r4,r3
 30c:   7c 63 00 34     cntlzw  r3,r3                            30c:   7c 63 
00 34     cntlzw  r3,r3
 310:   28 04 00 00     cmplwi  r4,0                             310:   28 04 
00 00     cmplwi  r4,0
 314:   54 63 df fe     rlwinm  r3,r3,27,31,31                   314:   54 63 
df fe     rlwinm  r3,r3,27,31,31
 318:   0f 03 00 00     twnei   r3,0                             318:   0f 03 
00 00     twnei   r3,0
 31c:   41 82 00 34     beq     350 <add_system_ram_resources    31c:   41 82 
00 34     beq     350 <add_system_ram_resources
 320:   7c 76 aa 14     add     r3,r22,r21                       320:   7c 76 
aa 14     add     r3,r22,r21
 324:   93 04 00 10     stw     r24,16(r4)                       324:   93 04 
00 10     stw     r24,16(r4)
 328:   38 63 ff ff     addi    r3,r3,-1                         328:   38 63 
ff ff     addi    r3,r3,-1
 32c:   90 64 00 0c     stw     r3,12(r4)                        32c:   90 64 
00 0c     stw     r3,12(r4)
 330:   7f c3 f3 78     mr      r3,r30                           330:   7f c3 
f3 78     mr      r3,r30
 334:   93 44 00 00     stw     r26,0(r4)                        334:   93 44 
00 00     stw     r26,0(r4)
 338:   92 c4 00 04     stw     r22,4(r4)                        338:   92 c4 
00 04     stw     r22,4(r4)
 33c:   93 44 00 08     stw     r26,8(r4)                        33c:   93 44 
00 08     stw     r26,8(r4)
 340:   92 e4 00 14     stw     r23,20(r4)                       340:   92 e4 
00 14     stw     r23,20(r4)
 344:   48 00 00 01     bl      344 <add_system_ram_resources    344:   48 00 
00 01     bl      344 <add_system_ram_resources
                        344: R_PPC_PLTREL24     request_resou                   
        344: R_PPC_PLTREL24     request_resou
 348:   54 63 0f fe     rlwinm  r3,r3,1,31,31                    348:   54 63 
0f fe     rlwinm  r3,r3,1,31,31
 34c:   0f 03 00 00     twnei   r3,0                             34c:   0f 03 
00 00     twnei   r3,0
 350:   80 7d 00 10     lwz     r3,16(r29)                       350:   80 7d 
00 10     lwz     r3,16(r29)
 354:   3b 9c 00 18     addi    r28,r28,24                       354:   3b 9c 
00 18     addi    r28,r28,24
 358:   3b 7b 00 18     addi    r27,r27,24                       358:   3b 7b 
00 18     addi    r27,r27,24
 35c:   80 9d 00 20     lwz     r4,32(r29)                       35c:   80 9d 
00 20     lwz     r4,32(r29)
 360:   1c 63 00 18     mulli   r3,r3,24                         360:   1c 63 
00 18     mulli   r3,r3,24
 364:   7c 64 1a 14     add     r3,r4,r3                         364:   7c 64 
1a 14     add     r3,r4,r3
 368:   7c 1c 18 40     cmplw   r28,r3                           368:   7c 1c 
18 40     cmplw   r28,r3
 36c:   41 80 ff 84     blt     2f0 <add_system_ram_resources    36c:   41 80 
ff 84     blt     2f0 <add_system_ram_resources
 370:   38 60 00 00     li      r3,0                             370:   38 60 
00 00     li      r3,0
 374:   83 c1 00 38     lwz     r30,56(r1)                       374:   83 c1 
00 38     lwz     r30,56(r1)
 378:   83 a1 00 34     lwz     r29,52(r1)                       378:   83 a1 
00 34     lwz     r29,52(r1)
 37c:   83 81 00 30     lwz     r28,48(r1)                       37c:   83 81 
00 30     lwz     r28,48(r1)
 380:   83 61 00 2c     lwz     r27,44(r1)                       380:   83 61 
00 2c     lwz     r27,44(r1)
 384:   83 41 00 28     lwz     r26,40(r1)                       384:   83 41 
00 28     lwz     r26,40(r1)
 388:   83 21 00 24     lwz     r25,36(r1)                       388:   83 21 
00 24     lwz     r25,36(r1)
 38c:   83 01 00 20     lwz     r24,32(r1)                       38c:   83 01 
00 20     lwz     r24,32(r1)
 390:   82 e1 00 1c     lwz     r23,28(r1)                       390:   82 e1 
00 1c     lwz     r23,28(r1)
 394:   82 c1 00 18     lwz     r22,24(r1)                       394:   82 c1 
00 18     lwz     r22,24(r1)
 398:   82 a1 00 14     lwz     r21,20(r1)                       398:   82 a1 
00 14     lwz     r21,20(r1)
 39c:   80 01 00 44     lwz     r0,68(r1)                        39c:   80 01 
00 44     lwz     r0,68(r1)
 3a0:   38 21 00 40     addi    r1,r1,64                         3a0:   38 21 
00 40     addi    r1,r1,64
 3a4:   7c 08 03 a6     mtlr    r0                               3a4:   7c 08 
03 a6     mtlr    r0
 3a8:   4e 80 00 20     blr                                      3a8:   4e 80 
00 20     blr

Reply via email to