Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Other Things Gentoo
  • Search

Illegal instruction(solved)

Still need help with Gentoo, and your question doesn't fit in the above forums? Here is your last bastion of hope.
Post Reply
Advanced search
33 posts
  • 1
  • 2
  • Next
Author
Message
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

Illegal instruction(solved)

  • Quote

Post by hedmo » Sat Apr 07, 2018 6:21 am

hi all

i have upgraded my box from fx8150 to ryzen and now everything i try to do gives me : Illegal instruction

Code: Select all

livecd 
/ # emerge --info
Illegal instruction
livecd / # gcc-config -l
 * gcc-config: Could not get portage CHOST!
 * gcc-config: You should verify that CHOST is set in one of these places:
 * gcc-config:  - //etc/portage/make.conf
 * gcc-config:  - active environment
 livecd / #cat /etc/portage/make.conf | grep CHOST
# WARNING: Changing your CHOST is not something that should be done lightly.
CHOST="x86_64-pc-linux-gnu"
livecd / #nano -w /etc/portage/make.conf
Illegal instruction
livecd / # 


regards hedmo
Last edited by hedmo on Fri Apr 13, 2018 7:47 pm, edited 1 time in total.
Top
bunder
Bodhisattva
Bodhisattva
Posts: 5956
Joined: Sat Apr 10, 2004 5:13 am

  • Quote

Post by bunder » Sat Apr 07, 2018 9:09 am

This means your fx8150 had cpu instructions that the ryzen does not have. In order to fix this, you'll probably want to (edit: never mind), but that's probably going to break a lot of stuff. you might be better off making a backup and reinstalling.
Last edited by bunder on Sat Apr 07, 2018 10:37 am, edited 2 times in total.
Neddyseagoon wrote:The problem with leaving is that you can only do it once and it reduces your influence.
banned from #gentoo since sept 2017
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56106
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Sat Apr 07, 2018 9:42 am

hedmo,

DON'T extract a stage 3 over your existing install.
Your existing install will be destroyed.

You may want to do binary installs of a few carefully selected packages until you get a working portage and toolchain.
At that point, the system can rebuild itself.

Code: Select all

/ # emerge --info
Illegal instruction
suggests that python will not run on your Ryzen.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Sun Apr 08, 2018 7:03 am

NeddySeagoon wrote:hedmo,

DON'T extract a stage 3 over your existing install.
Your existing install will be destroyed.

You may want to do binary installs of a few carefully selected packages until you get a working portage and toolchain.
At that point, the system can rebuild itself.

Code: Select all

/ # emerge --info
Illegal instruction
suggests that python will not run on your Ryzen.
NeddySeagoon

okej i am in the rescue chroot and installing some packages(/usr/portage/scripts/bootstrap.sh and emerge -ave system).i dont fully understand all off it.

1.what is happening to my old install :?:
2.when can i reboot to my old install and what shall i do :?:

regards hedmo
Top
krinn
Watchman
Watchman
User avatar
Posts: 7476
Joined: Fri May 02, 2003 6:14 am

  • Quote

Post by krinn » Sun Apr 08, 2018 8:21 am

1. Nothing special, you didn't took care of it prior the migration, you should had rebuild everything or critical packages to use a more generic cflags or compatible with the next cpu ; i'm not amd specialist, but i think amd has drop 3dnow and 3dnowext for ryzen ; so, just invalid opcodes for a ryzen.

2. once you have succeed at rebuilding "critical" packages that you would use to rebuild other incompatible packages.

I have cite twice time "critical packages", the list could be long, but it's just packages that would allow you to build another one (ie: the python use by portage, portage, gcc, glibc, binutils...). Once those ones are running fine, you could rebuild less critical ones with proper cflags set for the ryzen.
NeddySeagoon's link will help you get critical ones back, others will be handle by emerge -e
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56106
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Sun Apr 08, 2018 9:22 am

hedmo,

You are using the rescue chroot to build things that will run on your Ryzen.
Once they are built in the rescue chroot, they need to be installed into your real system, using the binary packages.
That's what

Code: Select all

emerge -K
does.

If emerge cannot be used each binary package is like a single package stage3 tarball.
It can be installed using tar, just like a stage3. If you need to do this, its essential to untar the package to the correct location, so it overwrites the package that generates the illegal instructions. There are probably more than one of them.

If python is a problem, you will need to use the tar method as portage is written in python.
Once emerge works, switch to

Code: Select all

emerge -K
-- edit --

krinns "critical packages" are the things needed to be able to chroot and build more packages. Its a part of the @system set.

We don't know what will fail. It depends on the instructions gcc used. Just because 3DNow! was available on the old CPU does not mean that gcc actually used it in a particular binary.
The only way to tell is trial and error.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Sun Apr 08, 2018 9:32 am

okay so if i get

Code: Select all

(chroot) livecd / # emerge -avK dev-lang/python
Illegal instruction
i have to use the tar option

Code: Select all

root #tar --xattrs -xpf /mnt/gentoo/usr/portage/packages/<package/atom> -C /mnt/gentoo
to every package i want to install :?:

ragards hedmo
Top
Naib
Watchman
Watchman
User avatar
Posts: 6101
Joined: Fri May 21, 2004 9:42 pm
Location: Removed by Neddy
Contact:
Contact Naib
Website

  • Quote

Post by Naib » Sun Apr 08, 2018 9:48 am

personally I would go for a reinstall. You will be up very,very quickly if you backup your /etc and /home (and some of /var)
Is it possible to recover from this? sure... selectively laying out binary packages until the toolchain is functional. HOWEVER... you may end up running into more blockers burning more time.
#define HelloWorld int
#define Int main()
#define Return printf
#define Print return
#include <stdio>
HelloWorld Int {
Return("Hello, world!\n");
Print 0;
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56106
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Sun Apr 08, 2018 9:53 am

hedmo,

The simple answer is Yes.

That message indicates that the selected python is probably broken.
You got into the chroot, so at least some of bash works and some of glibc. In fact, bash needs

Code: Select all

 $ lddtree /bin/bash
/bin/bash (interpreter => /lib64/ld-linux-x86-64.so.2)
    libreadline.so.7 => /lib64/libreadline.so.7
        libncurses.so.6 => /lib64/libncurses.so.6
            libdl.so.2 => /lib64/libdl.so.2
    libc.so.6 => /lib64/libc.so.6
so all those things are in use.

After you use the tar method for your active python, try emerge -K again.

A long time ago someone told me that it wasn't possible to do a Gentoo install using the liveDVD.
That would be late 2009, when the Gentoo 10fh birthday liveDVD was produced.
That was a challenge. :)
Here's how, look at section 5.
That's a list of all the packages I needed in an empty dir to be able to chroot and use emerge -K
Versions will have changed and there may be a few more dependencies but it will give you some idea of package names that may need tar.

Your chroot is your real system that's not working.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Sun Apr 08, 2018 4:51 pm

NeddySeagoon wrote:hedmo,

The simple answer is Yes.

That message indicates that the selected python is probably broken.
You got into the chroot, so at least some of bash works and some of glibc. In fact, bash needs

Code: Select all

 $ lddtree /bin/bash
/bin/bash (interpreter => /lib64/ld-linux-x86-64.so.2)
    libreadline.so.7 => /lib64/libreadline.so.7
        libncurses.so.6 => /lib64/libncurses.so.6
            libdl.so.2 => /lib64/libdl.so.2
    libc.so.6 => /lib64/libc.so.6
so all those things are in use.

After you use the tar method for your active python, try emerge -K again.

A long time ago someone told me that it wasn't possible to do a Gentoo install using the liveDVD.
That would be late 2009, when the Gentoo 10fh birthday liveDVD was produced.
That was a challenge. :)
Here's how, look at section 5.
That's a list of all the packages I needed in an empty dir to be able to chroot and use emerge -K
Versions will have changed and there may be a few more dependencies but it will give you some idea of package names that may need tar.

Your chroot is your real system that's not working.
NeddySeagoon

Before i do more damage!!!!!!!

Code: Select all


livecd / # tar --xattrs -xpf /mnt/gentoo/usr/portage/packages/dev-lang/python-3.5.4-r1.tbz2 -C /mnt/gentoo

bzip2: (stdin): trailing garbage after EOF ignored
livecd / # tar --xattrs -xpf /mnt/gentoo/usr/portage/packages/sys-devel/binutils-2.29.1-r1.tbz2 -C /mnt/gentoo

bzip2: (stdin): trailing garbage after EOF ignored
livecd / # chroot /mnt/gentoo /bin/bashlivecd / # emerge --info
bash: emerge: command not found
livecd / # ls /usr/bin | grep  emerge
emerge
emerge-webrsync
livecd / # 
"emerge is symlinks that does not exist"

do you want me to continue with section 5https://web.archive.org/web/20120102130 ... 0_10.1.xml.......

regards hedmo
Top
Tony0945
Watchman
Watchman
Posts: 5127
Joined: Tue Jul 25, 2006 12:19 am
Location: Illinois, USA

  • Quote

Post by Tony0945 » Sun Apr 08, 2018 6:33 pm

I've been googling to find the forum thread discussing the instruction set backward comparability but haven't found it. Supposedly march=k10 was OK but bulldozer was not.

IF the original hardware is still available (i.e. you just moved the hdd to a new drive" and you don't want to follow Neddy's procedure (I've done it and it's most educational) then I suggest you try the following which will consume real time but not much of your time.

1. Put the HDD back into the original box.
2. Change CFLAGS to march=generic and run "emerge -e world --keep-going"
3. A day or two later when emerge finishes and you have done any emerge-resumes required (you shouldn't have any with =generic)
4. Put the HDD back into the new box.
5. Restore your CFLAGS to zenver1 and ...
6. Run "emerge -e world --keep-going" again. It should take less than a day, maybe six or seven hours.

This was basically what I planned for ryzen upgrade, except now I have a Bristol Ridge (excavater/bulldozer) AM4, so I need only do the first emerge -e world, replace the CPU & cooler then boot up and do the second emerge -e world.

If you only changed motherboard, weigh the mechanical work vs the software work.


And yet... Doing it Neddy's way WILL teach you a lot about how your software system works.

So weigh your time priorities and decide.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Sun Apr 08, 2018 7:32 pm

Tony0945 wrote:I've been googling to find the forum thread discussing the instruction set backward comparability but haven't found it. Supposedly march=k10 was OK but bulldozer was not.

IF the original hardware is still available (i.e. you just moved the hdd to a new drive" and you don't want to follow Neddy's procedure (I've done it and it's most educational) then I suggest you try the following which will consume real time but not much of your time.

1. Put the HDD back into the original box.
2. Change CFLAGS to march=generic and run "emerge -e world --keep-going"
3. A day or two later when emerge finishes and you have done any emerge-resumes required (you shouldn't have any with =generic)
4. Put the HDD back into the new box.
5. Restore your CFLAGS to zenver1 and ...
6. Run "emerge -e world --keep-going" again. It should take less than a day, maybe six or seven hours.

This was basically what I planned for ryzen upgrade, except now I have a Bristol Ridge (excavater/bulldozer) AM4, so I need only do the first emerge -e world, replace the CPU & cooler then boot up and do the second emerge -e world.

If you only changed motherboard, weigh the mechanical work vs the software work.




And yet... Doing it Neddy's way WILL teach you a lot about how your software system works.

So weigh your time priorities and decide.
Tony0945

Code: Select all

/ # emerge --info
Illegal instruction 
and after the:

Code: Select all

livecd / # tar --xattrs -xpf(the packages i have unpacked )

=

Code: Select all

livecd / # emerge -k
bash: emerge: command not found
livecd / # 



i can not emerge a thing :evil:

i have to find the sources that have emerge in it and "tar in right order".i hope :oops:

regards hedmo
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56106
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Sun Apr 08, 2018 8:21 pm

hedmo,

Try running emerge explicitly.

Code: Select all

/usr/bin/emerge -K ...
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
Tony0945
Watchman
Watchman
Posts: 5127
Joined: Tue Jul 25, 2006 12:19 am
Location: Illinois, USA

  • Quote

Post by Tony0945 » Sun Apr 08, 2018 10:03 pm

hedmo wrote:

Code: Select all

livecd / # emerge -k
bash: emerge: command not found
livecd / # 



i can not emerge a thing :evil:

i have to find the sources that have emerge in it and "tar in right order".i hope :oops:

regards hedmo
That was after restoring the hardware.
Top
Naib
Watchman
Watchman
User avatar
Posts: 6101
Joined: Fri May 21, 2004 9:42 pm
Location: Removed by Neddy
Contact:
Contact Naib
Website

  • Quote

Post by Naib » Sun Apr 08, 2018 11:37 pm

I just want to point out, you would have had a new install up and running by now :)
#define HelloWorld int
#define Int main()
#define Return printf
#define Print return
#include <stdio>
HelloWorld Int {
Return("Hello, world!\n");
Print 0;
Top
Tony0945
Watchman
Watchman
Posts: 5127
Joined: Tue Jul 25, 2006 12:19 am
Location: Illinois, USA

  • Quote

Post by Tony0945 » Mon Apr 09, 2018 1:07 am

Naib wrote:I just want to point out, you would have had a new install up and running by now :)
With all the packages built and configuration set? Crontab restored? Better to just untar /bin, /lib, /usr/lib, /usr/bin from a snapshot instead of a full re-install then emerge -e world with march=native.
Top
krinn
Watchman
Watchman
User avatar
Posts: 7476
Joined: Fri May 02, 2003 6:14 am

  • Quote

Post by krinn » Mon Apr 09, 2018 4:39 am

you can also quickpkg packages from a livecd and use these binaries to install them in your chroot, they are generic (else livecd would fail) and you just need toolchain & friends (far less than world rebuild), i would say binutils, gcc, glibc, portage, python, automake, libtool ; maybe one or two more.

or even easier if someone point him to "generic binaries" provided by a farm, but i always forget the link to them :)

once the "critical packages" are fine, he can -e world with proper cflags set.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Mon Apr 09, 2018 8:53 am

okej.

emerge is up and running and i can install the binarys but not any other program

Code: Select all


livecd / # emerge -av python
hese are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  NS    ] dev-lang/python-3.6.5:3.6/3.6m::gentoo [2.7.14-r1:2.7::gentoo, 3.5.4-r1:3.5/3.5m::gentoo] USE="gdbm ipv6 ncurses readline sqlite ssl (threads) xml -build -examples -hardened -libressl {-test} -tk -wininst" 0 KiB

Total: 1 package (1 in new slot), Size of downloads: 0 KiB

Would you like to merge these packages? [Yes/No] 

>>> Verifying ebuild manifests
Illegal instruction
livecd / # 
regards hedmo
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56106
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Mon Apr 09, 2018 9:13 am

hedmo,

Now that emerge works, you can do

Code: Select all

emerge -eK @system
to do the whole of the system set in one go.
That's a lot more than you should need but it will be fast anyway.

If that fails due to missing binaries, change the -K to -k, then it will try to build things if it needs to.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Mon Apr 09, 2018 9:55 am

NeddySeagoon wrote:hedmo,

Now that emerge works, you can do

Code: Select all

emerge -eK @system
to do the whole of the system set in one go.
That's a lot more than you should need but it will be fast anyway.

If that fails due to missing binaries, change the -K to -k, then it will try to build things if it needs to.
NeddySeagoon.no i can not

Code: Select all

* Sanity check to keep you from breaking your system:
 *  Downgrading glibc is not supported and a sure way to destruction
 * ERROR: sys-libs/glibc-2.25-r11::gentoo failed (pretend phase):
 *   aborting to save your system
Top
Naib
Watchman
Watchman
User avatar
Posts: 6101
Joined: Fri May 21, 2004 9:42 pm
Location: Removed by Neddy
Contact:
Contact Naib
Website

  • Quote

Post by Naib » Mon Apr 09, 2018 11:35 am

Tony0945 wrote:
Naib wrote:I just want to point out, you would have had a new install up and running by now :)
With all the packages built and configuration set? Crontab restored? Better to just untar /bin, /lib, /usr/lib, /usr/bin from a snapshot instead of a full re-install then emerge -e world with march=native.
um yes :)

Posted: Sun Apr 08, 2018 9:48 am
Naib wrote:personally I would go for a reinstall. You will be up very,very quickly if you backup your /etc and /home (and some of /var)
Is it possible to recover from this? sure... selectively laying out binary packages until the toolchain is functional. HOWEVER... you may end up running into more blockers burning more time.
Posted: Sun Apr 08, 2018 11:37 pm
Naib wrote:I just want to point out, you would have had a new install up and running by now :)

Thats 14h 49min.
30min to layout a stage3, compile kernel, grub etc to be booting to your systems cli. Then it is just adding what you want
I built a ryzen system last year and I was into X very quickly (helps I am an openbox user so a light build) and I was playing CS:GO within 6hours

sure I held off the likes of openoffice (but that doesn't take too long to build). I was also installing to an M.2 and using old ssd's as rag drives so I was able to just mount the old drives to copy selective etc, home, var while compiling was occuring.
#define HelloWorld int
#define Int main()
#define Return printf
#define Print return
#include <stdio>
HelloWorld Int {
Return("Hello, world!\n");
Print 0;
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56106
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Mon Apr 09, 2018 1:46 pm

hedmo,

glibc in your rescue install is older that the one in the install you are trying to rescue.
You need to build the right version of glibc or pass --exclude="glibc" to the emerge command.

Code: Select all

 *  Downgrading glibc is not supported and a sure way to destruction
 * ERROR: sys-libs/glibc-2.25-r11::gentoo failed (pretend phase):
 *   aborting to save your system
is quite correct. Its a very bad thing to do.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Wed Apr 11, 2018 4:32 pm

NeddySeagoon wrote:hedmo,

glibc in your rescue install is older that the one in the install you are trying to rescue.
You need to build the right version of glibc or pass --exclude="glibc" to the emerge command.

Code: Select all

 *  Downgrading glibc is not supported and a sure way to destruction
 * ERROR: sys-libs/glibc-2.25-r11::gentoo failed (pretend phase):
 *   aborting to save your system
is quite correct. Its a very bad thing to do.
NeddySeagoon

yes it was older and my portage was broken to. had to --sync and chroot back to my rescue to build more pkgs.i am up and running
and rebuilding my @system and @world but some packages are still failing with:

Code: Select all

Illegal instruction
cmake is one of the packages that fails and it fails with the line :

Code: Select all

 cmake-utils_src_configure

regards hedmo
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56106
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Wed Apr 11, 2018 7:32 pm

hedmo,

The failure will be related to a tool package, not the package being built.
The packages being built is not being executed. Well, there are a few corner cases where the build system builds something then runs it as apart of the build.

Its the something that cmake is using, or a library called by that something that is the problem.
Its also something that has not yet been rebuilt but that may not help find it.

In short, building cmake triggers the problem but its not the cause.

Build cmake with MAKEOPTS="-j1" to get a nice easy to read build log them pastebin the entire build leg.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
hedmo
Veteran
Veteran
User avatar
Posts: 1338
Joined: Sat Aug 29, 2009 1:15 pm
Location: sweden

  • Quote

Post by hedmo » Thu Apr 12, 2018 12:54 pm

NeddySeagoon

here you go:

Code: Select all

https://paste.pound-python.org/show/W6kXzzU3TmconrqHQoWh/
regards hedmo
Top
Post Reply

33 posts
  • 1
  • 2
  • Next

Return to “Other Things Gentoo”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic