AVX

2011-12-26 Thread Kostik Belousov
Hello,

The patch at
http://people.freebsd.org/~kib/misc/avx.1.patch
is the preliminary version, i.e. WIP, of the implementation of
variable-sized extended FPU states, as defined by Intel SDM. The
architecture (sometimes referred to as XSAVE) allows CPU to provide
additional context state data and report the details of context save
area layout to OS in the extendable form. AVX with it 256-bit YMM
register file is the first application of the architecture.

Due to extensibility and self-description of XSAVE area, by default
kernel allows all CPU extensions, i.e. also possible future features
of FPU. The tunable 'hw.xsave_allow_unknown' is provided, which
disables CPU features not known to the kernel. The tunable
'hw.use_xsave' may be used to disable XSAVE support at all.

The 'struct fpusave fpu_user_save' member was removed from amd64 pcb,
the save area is chopped from the top of the thread kernel kernel
stack (fpu_user_save was located there previously). I moved thread0
pcb set up after first stage of FPU initialization is done. Also,
there is a silent change in fpu init code, now we explicitely clear
XMM register file in the initial FPU state. At least on my
SandyBridge, XMM init state is garbage, could be some vacuum tubes
they stuff into chip were broken when machine crashed from 1 meter
down.

Since YMM file is part of the FPU state, it must be added to
mcontext_t.  Unfortunately, it is impossible to extend mcontext_t
in-place and not break present ABI without duplicating all syscalls
and libraries entries that use ucontext_t. The cause is that
ucontext_t layout puts mcontext_t into the middle of the structure,
frozing its size. The solution in the patch is to put extended save
area outside the mcontext_t, and place a pointer to area in
mcontext_t. Pointer validity is specified by _MC_HASFPXSTATE
mcontext_t flag.

Signal post provides the extended area on the signal stack frame
automagically. If pointers to area are in context, setcontext(2) uses
it. For getcontext(2), no easy solution exists. I tried to play with
providing libc wrapper for getcontext(2) that hides mcontext_t size
increase, but gave up due to ucontext_t embedding. Instead,
getcontextx(3) API is implemented that allocates the needed memory.

The patch defines ABI for both i386 and amd64 FreeBSD processes, but
the implementation is provided for amd64 kernel only for both ABIs. I
do not see any reason to run i386 kernel on machines capable of AVX.

The fpu_kern KPI has to be changed to accomodate for variable size

TODO items:
- I think we are eligible for XSAVEOPT use, but did not looked
into details yet;
- benchmark the cost for context switches and signal handlers
entry/sigreturn;
- makecontextx(3) ?;
- padlock(4) testing;
- make i386 fpu_kern KPI changes;
- implement (trivial) getcontextx(3) for other architectures.

Patch in the present form only usable on amd64 machine for both amd64
and i386 userspace.


pgpkxRMzXVqcl.pgp
Description: PGP signature


amd64/163625: Install problems of RC3 amd64 on ASRock N68 GE3 UCC

2011-12-26 Thread Norbert

>Number: 163625
>Category:   amd64
>Synopsis:   Install problems of RC3 amd64 on ASRock N68 GE3 UCC
>Confidential:   no
>Severity:   non-critical
>Priority:   medium
>Responsible:freebsd-amd64
>State:  open
>Quarter:
>Keywords:   
>Date-Required:
>Class:  sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Dec 26 08:10:13 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Norbert
>Release:AMD64 - 9.0 RC3
>Organization:
>Environment:
>Description:
Hello,

First I made an installation CD from the 9.0 RC3 AMD64 image and try to see 
where are the difference to 8.2.  Version 9.0 booted just fine, but 3 things I 
found after booting while installation is in progress:

(1) The network interface (nfe) is not recognized as gigabit (8.2 did it 
correct) - it is just a 10 mbit interface...

(2) The configured RAID on 2 discs in not mentioned (8.2 found an ar0* entry).  
The discs itself are mentioned in the installation menu - but no ar0* entry...

(3) While installing there is an root-suid error with the var folder (sorry, I 
don't know the exact message, because I am not at that computer).  The 
installation stopped.

Hopefully it could help fixing the last errors.  This would stop me using the 
new version - although I am very interested :-)

Many Regards, Norbert

>How-To-Repeat:

>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:
___
freebsd-amd64@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-amd64
To unsubscribe, send any mail to "freebsd-amd64-unsubscr...@freebsd.org"


Current problem reports assigned to freebsd-amd64@FreeBSD.org

2011-12-26 Thread FreeBSD bugmaster
Note: to view an individual PR, use:
  http://www.freebsd.org/cgi/query-pr.cgi?pr=(number).

The following is a listing of current problems submitted by FreeBSD users.
These represent problem reports covering all versions including
experimental development code and obsolete releases.


S Tracker  Resp.  Description

o amd64/163625 amd64  Install problems of RC3 amd64 on ASRock N68 GE3 UCC
o amd64/163568 amd64  hard drive naming
o amd64/163285 amd64  when installing gnome2-lite not all dependent packages
o amd64/163284 amd64  print manager failed to install correctly
o amd64/163114 amd64  no boot on Via Nanao netbook Samsung NC20
o amd64/163092 amd64  FreeBSD 9.0-RC2 fails to boot from raid-z2 if AHCI is 
o amd64/163048 amd64  normal user cant mount ntfs-3g
o amd64/162936 amd64  fails boot and destabilizes other OSes on FreeBSD 9 RC
o amd64/162708 amd64  FreeBSD 9.0-RC2 amd64 fails to boot on Dell Optiplex G
o amd64/162489 amd64  After some time X blanks the screen and does not respo
o amd64/162314 amd64  not able to install FreeBSD-8.2-RELEASE-amd64-dvd1 as 
o amd64/162219 amd64  [REGRESSION] In KDE 4.7.2 cant enable OpenGL,in 4.6.5 
o amd64/162170 amd64  Unable to install due to freeze at "run_interrupt_driv
o amd64/161974 amd64  FreeBSD 9 new installer installs succesful, renders ma
o kern/160833  amd64  Keyboard USB doesn't work
o amd64/160561 amd64  no C-states on atom D525
o amd64/157386 amd64  [powerd] Enabling powerd(8) with default settings on I
o amd64/156106 amd64  [boot] boot0 fails to start
o amd64/155135 amd64  [boot] Does Not Boot On a Very Standard Hardware
o amd64/154957 amd64  [boot] Install boot CD won't boot up - keeps rebooting
o amd64/154629 amd64  [panic] Fatal trap 9: general protection fault while i
o amd64/153935 amd64  [hang] system hangs while trying to do 'shutdown -h no
o amd64/153831 amd64  [boot] CD bootloader won't on Tyan s2912G2nr
o amd64/153496 amd64  [hyper-v] [install] Install on Hyper-V leaves corrupt 
o amd64/153372 amd64  [panic] kernel panic
o amd64/153175 amd64  [amd64] Kernel Panic on only FreeBSD 8 amd64
o amd64/152874 amd64  [install] 8.1 install fails where 7.3 works due to lac
o amd64/152430 amd64  [boot] HP ProLiant Microserver n36l cannot boot into i
f amd64/151385 amd64  [boot] Installation hangs on MacBook
o amd64/145991 amd64  [NOTES] [patch] Add a requires line to /sys/amd64/conf
o amd64/144405 amd64  [build] [patch] include /usr/obj/lib32 in cleanworld t
s amd64/143173 amd64  [ata] Promise FastTrack TX4 + SATA DVD, installer can'
p amd64/141413 amd64  [hang] Tyan 2881 m3289 SMDC freeze
f amd64/140715 amd64  [boot] Dell M600 Blade fails to boot 7.2+ 64 bit
f amd64/139998 amd64  [panic][net] 7.2 amd64 panic in rtrequest1_fib
f amd64/139924 amd64  [boot] cd or dvd not load
o amd64/137942 amd64  [pci] 8.0-BETA2 having problems with Asus M2N-SLI-delu
f amd64/135265 amd64  [mpt] Boot from install cd hangs on HP DL160 G5 with L
f amd64/135040 amd64  [ata] FreeBSD/amd64 does not (always) detect disk on S
f amd64/133977 amd64  [panic] [ffs] "panic: ffs_blkfree: freeing free block"
f amd64/133701 amd64  Recompiling the kernel with k8temp or smbios break GEO
f amd64/132574 amd64  [boot] [hang] Freeze on bootstrap loader (CD) using AT
f amd64/131456 amd64  [acpi] [ata] ACPI & ATA problems
f amd64/130368 amd64  [hang] Switching from xorg to console locks up compute
f amd64/129889 amd64  [boot] [hang] The booting process stops at the line mo
f amd64/129315 amd64  [em] amd64 motherboard: Intel DG965WH motherboard comp
o amd64/127640 amd64  [amd64] gcc(1) will not build shared libraries with -f
f amd64/125002 amd64  [install] amd64, SATA hard disks not detected
f amd64/124432 amd64  [panic] 7.0-STABLE panic: invalbuf: dirty bufs
f amd64/122549 amd64  7.0-RELEASE-amd64-bootonly.iso doesn't work w/ serial 
f amd64/120202 amd64  [amd64] [patch] [panic] kernel panic at start_all_aps,
o amd64/115194 amd64  LCD screen remains blank after Dell XPS M1210 lid is c
f amd64/91405  amd64  [asr] [panic] Kernel panic caused by asr on 6.0-amd64 

53 problems total.

___
freebsd-amd64@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-amd64
To unsubscribe, send any mail to "freebsd-amd64-unsubscr...@freebsd.org"