wok-current rev 19906

Up pgrouting (2.4.1)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Mon Apr 10 16:50:02 2017 +0200 (2017-04-10)
parents e17c7b3f75a8
children e7715725d95b
files linld/stuff/src/VCPI.ASM pgrouting/receipt
line diff
     1.1 --- a/linld/stuff/src/VCPI.ASM	Mon Apr 10 09:25:19 2017 +0200
     1.2 +++ b/linld/stuff/src/VCPI.ASM	Mon Apr 10 16:50:02 2017 +0200
     1.3 @@ -102,7 +102,7 @@
     1.4  label sw2pm_params byte
     1.5  ;Note: base addrs will be fixed up in prepare_vcpi()
     1.6  label	pagedir_laddr   dword
     1.7 -sw2pm_cr3       dd      ?
     1.8 +sw2pm_cr3       dd      1000h
     1.9  sw2pm_gdtr_ptr  dw      offset gdtr,0
    1.10  sw2pm_idtr_ptr  dw      offset idtr,0
    1.11  sw2pm_ldtr      dw      0       ;we don't need it
    1.12 @@ -121,11 +121,6 @@
    1.13  
    1.14          segment _BSS byte public use16 'BSS'
    1.15  
    1.16 -;Pagedir/page0 addrs: linear, seg:0 and cs:ofs
    1.17 -page0_laddr     dd      ?
    1.18 -;pagedir_ofs     dw      ?
    1.19 -;page0_ofs       dw      ?
    1.20 -
    1.21  label   saved_ss_sp dword
    1.22  saved_sp        dw      ?
    1.23  saved_ss        dw      ?
    1.24 @@ -167,51 +162,35 @@
    1.25  ; Fix up base of some gdt descriptors
    1.26  ; Note: 'add [dword xx.base0],edx' actually updates 24 bit quantity!
    1.27  ; Do NOT replace with mov!
    1.28 -		xor	ebx,ebx
    1.29 -                add     [dword bx+si+sw2pm_idtr_ptr-gdt_vcpi],edx
    1.30 +		mov	bx,-28h
    1.31 +                add     [dword bx+si+sw2pm_idtr_ptr-gdt_vcpi+28h],edx
    1.32  @@fixup:
    1.33 -                add     [dword bx+si+(gdt_code.base0)-gdt_vcpi],edx
    1.34 +                add     [dword bx+si+(gdt_code.base0)-gdt_vcpi+28h],edx
    1.35  		add	bl,8
    1.36 -		cmp	bl,28h
    1.37 -		jb	@@fixup
    1.38 -                ;add     [dword si+(gdt_data.base0)-gdt_vcpi],edx
    1.39 -                ;add     [dword si+(gdt_tss.base0)-gdt_vcpi],edx
    1.40 -                ;add     [dword si+gdt_base-gdt_vcpi],edx
    1.41 -                ;add     [dword si+sw2pm_gdtr_ptr-gdt_vcpi],edx
    1.42 -                ;add     [dword si+sw2pm_idtr_ptr-gdt_vcpi],edx
    1.43 +		js	@@fixup
    1.44                  add     eax,edx
    1.45 -                mov     bx,0FFFh
    1.46 -                add     eax,ebx
    1.47 -		inc	bx		;ebx=00001000h
    1.48 -
    1.49 +		dec	eax
    1.50                  shr     eax,cl
    1.51 +		inc	ah
    1.52                  mov     al,0   ;eax = 4k aligned linear addr of pagebuf
    1.53                  mov     es,ax           ;es:0->page0,es:1000h->pagedir
    1.54                  shl     eax,cl          ;eax=page0 linear addr
    1.55 +                add     [si+sw2pm_cr3-gdt_vcpi],eax
    1.56 +                mov     di,ax
    1.57                  mov     al,3            ;add present+writable bits
    1.58 -                mov     [es:bx],eax     ;stuff it into pagedir[0]
    1.59 +                mov     [es:1000h],eax     ;stuff it into pagedir[0]
    1.60                  push    ds
    1.61                  pop     es
    1.62 -
    1.63 -		mov	al,0
    1.64 -                mov     [page0_laddr],eax
    1.65 -                add     eax,ebx
    1.66 -                ;mov     [pagedir_laddr],eax
    1.67 +                sub     di,dx           ;ES:DI => page0
    1.68                          ;page directory will use only one entry (4 bytes):
    1.69                          ;cr3 => pagedir => page0  => ########
    1.70                          ;      (1 entry)  (1024   => #  4M  #
    1.71                          ;                 entries)=> # page #
    1.72                          ;                         => ########
    1.73 -                mov     [sw2pm_cr3],eax
    1.74 -                sub     eax,edx         ;ax = offset in CS of pagedir
    1.75 -                ;mov     [pagedir_ofs],ax
    1.76 -                sub     ax,bx   ;ax-=1000
    1.77 -                ;mov     [page0_ofs],ax
    1.78 -                mov     di,ax          ;ES:DI => page0
    1.79  ; Return
    1.80                  ;pop     es
    1.81                  ;pop     esi
    1.82 -                add     ax,1004h
    1.83 +                lea     ax,[di+1004h]
    1.84  		extrn	_heap_top:word
    1.85  		mov	[_heap_top],ax
    1.86                  ;ret
    1.87 @@ -392,8 +371,8 @@
    1.88          ; Restore page mapping for page at 0
    1.89                 ;pop     eax             ;X
    1.90  @@set_mapping:
    1.91 -                mov     esi,[cs:page0_laddr]
    1.92 -                xchg    [esi],eax       ; restore page0[0]
    1.93 +                mov     esi,[cs:sw2pm_cr3]
    1.94 +                xchg    [esi-1000h],eax ; restore page0[0]
    1.95                  mov     ecx,cr3         ; reload TLB cache
    1.96                  mov     cr3,ecx         ;
    1.97  ; Return
     2.1 --- a/pgrouting/receipt	Mon Apr 10 09:25:19 2017 +0200
     2.2 +++ b/pgrouting/receipt	Mon Apr 10 16:50:02 2017 +0200
     2.3 @@ -1,7 +1,7 @@
     2.4  # SliTaz package receipt.
     2.5  
     2.6  PACKAGE="pgrouting"
     2.7 -VERSION="2.0.0"
     2.8 +VERSION="2.4.1"
     2.9  CATEGORY="misc"
    2.10  SHORT_DESC="provide geospatial routing for PostGIS / PostgreSQL."
    2.11  MAINTAINER="pascal.bellard@slitaz.org"