OPNsense Forum

Archive => 20.7 Legacy Series => Topic started by: Ricardo on August 04, 2020, 12:01:41 pm

Title: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on August 04, 2020, 12:01:41 pm
Hi folks!

I prepared this thread as a community contributed gathering place for anyone out there who is running Opnsense on any of the PCEngines APU2/3/4 boards. Since Opnsense 20.7 is a big jump from the old FreeBSD/HardenedBSD 11.x to the new FreeBSD/HardenesBSD 12.1, I expect many compatibility, driver, and performance issues. So I definitely resist upgrading. I let others share their experience first :)

- what Coreboot BIOS you are currently using? Did Core Performance Boot (CPB), the Watchdog, PCIE energy saving, AMDTEMP CPU temperature sensor driver, APULED driver, CPU sysctls gone after Coreboot upgrade, and other recent features broke anything in your firewall?
- are you planning to compare the speed benchmark before 20.7 upgrade and after 20.7 upgrade? E.g. WAN throughput, VPN throughput, OpenSSL -EVP (AES-NI) speed test etc.
- Any igb NIC driver issues observed? Manual sysctl / tuned config file entries?
- ECC functions properly with the new 12.1 BSD? How can you prove it really works?
- does the new 12.1 BSD firmware boot-time microcode update works now properly? How can you prove?
- dmidecode output under 12.1 BSD versus dmidecode under 11.x BSD shows correct ACPI entries, RAM ECC-capable flag(s), RAM module speed vs bus speed reporting discrepancy, etc?
- the infamous terrible PPPoE performance has any improvement, or still limited to 200-400 Mbit max on a 1Gbit fibre WAN + NAT + pf?

And any other issues that are not obvious catch, if you dont have a proper testing checklist after every upgrade performed ("it works for me fine after the update" is a clear sign of no checklist used).
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: ruggerio on August 04, 2020, 03:48:42 pm
In short, i am on 20.7 with my apu4, it works (migrated - not a fresh install)

Ruggerio
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: aesth on August 04, 2020, 05:08:30 pm
Yep, same for me, also migrated (no checklists, no tests, sorry it just works). I am seeing slightly lower load average, much higher memory usage. Coreboot is v4.12.0.3.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: senser on August 04, 2020, 06:17:16 pm
apu2d4 here, full install on ssd.
I needed to disable circular logs in order to make firewall live logs work properly.

Other than that it works great for me so far.
My bios is    v4.12.0.2. I have disabled the watchdog because when enabled (60s), it would reboot right away. Maybe 60s is not enough?
My (pppoe) internet is just 50mbit so I dont have any performance issues.

Edit: I did a clean install using the importer. Previous version was 20.1
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Dieter Bosli on August 04, 2020, 09:20:50 pm
Seccessfuly migration of an apu4c4 with instlled coreboot v4.12.0.3 from OPNsense 20.1.9_1 without any problem.

Before i upgrade the second one in the cluster, i will observe the upgraded one for 24-48h. After it is working during this time properly i will upgrade the second one also to OPNsense 20.7.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: banym on August 04, 2020, 11:06:45 pm
Successful upgraded: apu1
Coreboot: v4.9.0.3

This old lady works like a charm.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: dju on August 05, 2020, 12:36:02 am
apu.2c4 successful fresh install OPNsense-20.7-OpenSSL-serial-amd64 on msata 128 go
don't work with sd card anymore

coreboot build 20203007 ( v4.12.0.3 )
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Darkopnsense on August 05, 2020, 09:30:21 am
Hello,
Upgrade of an apu4c4 from OPNsense 20.1.9 to OPNsense 20.7 then from coreboot v4.12.0.2 to coreboot v4.12.0.3 without any problem.
Regards,
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: hirschferkel on August 05, 2020, 09:48:19 am
Hi, I suffer this error codes, when I Install 20.7 on a APU2C4 machine:
Code: [Select]
2020-08-04T18:13:01 kernel: mmc0: Card at relative address 22964 failed to select
2020-08-04T18:13:01 kernel: mmc0: Card at relative address 22964 failed to select
2020-08-04T18:13:01 kernel: mmc0: CMD7 failed, RESULT: 1

@Darkopnsense wrote that it does not work with a SD card anymore but with Msata, did you suffer the same problem?
There is only a SD card slot offered in my Varia router but I found some Sata Slots, i guess, inside it, which are empty. But I do not know how to install the OS with Msata this way... kind of clueless at the moment. Any ideas how to fix it?

apu.2c4 successful fresh install OPNsense-20.7-OpenSSL-serial-amd64 on msata 128 go
don't work with sd card anymore

coreboot build 20203007 ( v4.12.0.3 )
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Darkopnsense on August 05, 2020, 10:05:33 am
Hello @hirschferkel,

In my experience your Msata disk is defective.
I have already had the case.
Either you change the disk, or you do a new installation by reformatting (pending the death of your disk)

Regards,
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: hirschferkel on August 05, 2020, 10:18:51 am
I use a SD card and I installed a fresh 20.1 nano image on the card and it runs perfect again.
Problems will only appear, when I try to install 20.7 on that same SD card. So I did not have any experience with Msata, as I do not have any idea how to install OPNsense with Msata?...

best


Hello @hirschferkel,

In my experience your Msata disk is defective.
I have already had the case.
Either you change the disk, or you do a new installation by reformatting (pending the death of your disk)

Regards,
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Darkopnsense on August 05, 2020, 11:09:55 am
Hello,

OPNsense installation on an mSATA:

Create a USB key with the OPNsense image.
APU off
Insert the usb key with OPNsense on the APU
Connect an APU serial cable from the apu to your pc
Start PUTTY
Power up your APU
Follow the instructions in PUTTY

Regards,
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: k0ns0l3 on August 05, 2020, 11:55:53 am
apu2 So far it runs without problems,

(https://i.postimg.cc/2LDw46nQ/11.png) (https://postimg.cc/2LDw46nQ)

(https://i.postimg.cc/Yvszd81q/38.png) (https://postimg.cc/Yvszd81q)

Regards  8)
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: 4r7ur on August 05, 2020, 05:52:10 pm
I have 2 APU2C4 running here, both on coreboot v4.0.30. No issues so far
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: iam on August 06, 2020, 12:18:02 am
I've observed a lesser WAN speed on my APU2:
https://forum.opnsense.org/index.php?topic=9264.msg83684#msg83684
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on August 06, 2020, 10:55:07 am
I have 2 APU2C4 running here, both on coreboot v4.0.30. No issues so far

You are running
1) legacy 4.0.x BIOS versus the mainline 4.10+ BIOS, and
2) you are behind the latest (4.0.32 is the latest, contains watchdog and PCIE addressing issues)
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: dave on August 06, 2020, 01:09:39 pm
Sorry to hijack this thread, but what does the watchdog feature actually do?
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: hirschferkel on September 04, 2020, 12:11:40 pm
Actually all problems with

https://forum.opnsense.org/index.php?topic=7645.msg34941#msg34941
Code: [Select]
kernel       ath0: stuck beacon; resetting (bmiss count 4)
Are gone, now. So it was actually a software problem of OPNsense.

https://forum.opnsense.org/index.php?topic=13792.msg64395#msg64395
Code: [Select]
Aug 26 00:33:29 kernel: pflog0: promiscuous mode enabled
Aug 26 00:33:29 kernel: pflog0: promiscuous mode disabled
Aug 26 00:32:32 kernel: pflog0: promiscuous mode enabled

These problems are history, too... without changing anything in settings.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on September 06, 2020, 02:39:59 pm
Updated today to 20.7.2
Sofar it seems I hit the syslog-ng defect, its unable to start, triggering manually results in service coredump. Hence no logs are available under System \ Logging :(
Would be worthy to mentio  in the release notes before people push the update button carelessly.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: franco on September 06, 2020, 03:03:30 pm
Sure, syslog-ng dlsym() crash was fixed. If you see another one just put in a qualified report and we shall solve it. That said, we expect you ran the workarounds other people shared already?

Judging from your other activity you have a lot of problems with OPNsense in general?


Cheers,
Franco
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on September 06, 2020, 09:47:16 pm
Sure, syslog-ng dlsym() crash was fixed. If you see another one just put in a qualified report and we shall solve it. That said, we expect you ran the workarounds other people shared already?

Judging from your other activity you have a lot of problems with OPNsense in general?


Cheers,
Franco

I was upgrading from 20.1.9 to 20.7.2, and saw the release notes said something about a resolved syslog-ng crash that I wasnt aware . As I did not look for it specifically: if that was fixed among otber fixed things, I did not check each of them whether any of them may still be unfixed. The release notes doesnt have known issues section, so I dont know what to expect. So if you say there is something wrong with syslong-ng on 20.7, then it seems I need to investigate. Adding a "known issues" section to release announcements could improve the experience for upgrades. You can call it "afterupdate-things-to-be-aware" if you dont like to call problematic things as "Known issues". But something should be there to make people aware, that not everything is perfectly working
 On twitter I saw explicitly mentioning @opnsense that there are no major upgrade issues with 20.7. Having syslog-ng break just after upgrade is still suspicious for me. At least now I know I have to look after this. Maybe I have some new syslogng problem, maybe its the same as others had.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: jassonmc on September 07, 2020, 12:50:57 am
I agree with Ricardo.
There should be a "known issues" section with update infos.
I also ran into the syslog-ng issue, just to find out it was known, but nobody actually cared to tell others, that this happening.

How about a dynamic update info when pressing the update button, that contains that "known issue" section?

Knowingly letting people run into an issue that's known and hoping for them to find a solution on the forums seems to be quite a poor solution...

Cheers
Juri
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: franco on September 07, 2020, 07:39:38 am
Yes, poor, average, convenient, appropriate, cost effective, free, limited liability, limited warranty. It is all the same.

Since you two agree now you only have to agree which one of you curates that list. ;)

In general there is a bug tracker that tracks open bugs: https://github.com/opnsense/core/issues?q=is%3Aopen+is%3Aissue+milestone%3A21.1+label%3Abug

We fixed 2 syslog-ng issues, if you see a third I'm still happily awaiting your detailed report.


Cheers,
Franco
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: jassonmc on September 07, 2020, 08:29:44 am
@Franco
That was no offence, just a feedback  :)

I am quite new to OPNsense and would be willing to assist in curating that info, but am not sure if I'm ready for it, since I'm an OPNsense user only since a few weeks.

But back to the point: I think it would be already of great help, if near the top of the update notice, a sticky note says: IMPORTANT: Please consult open bugs list, prior to updating.

There should be a link to github bug tracker.

That what probably already suffice, what do you think?
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: franco on September 07, 2020, 09:54:54 am
I'm not sure. We can't really tell people what to do and what not to do. Some complain about having to do (so many) updates, but the truth is they just can avoid pressing the update button. ;)

And as for reading what we write specifically... let's say it can be difficult for any number of reasons: time, language, context, larger version jumps, plugin use and other local complications.

We try to pack all release-relevant information into the releases notes and that includes current issues that a lot of people are struggling with, see the netmap information in 20.7.2 for example.

Syslog-ng had issues for sure, but so much that it kept crashing people's deployments completely so we have to weigh importance and for this reason syslog-ng did not meet the bar for inclusion.

A number of workarounds existed prior to 20.7.2 and if you need personal assistance there is also commercial things to be considered.

All of this is no substitute to test locally and roll back if you really need to. Snapshots and backups are great.

I know that people see their issues first and would like to not deal with them and ask us to be super up front and direct for every small issue, but this is neither done intentionally nor do we not work on fixes in the background in the scope of what impact is relevant for whom.

To circle back, a known issues section is more for something permanent that is unlikely to change for a longer period, not as transient bug. First releases of a major version are always a little noisy and if persistent issues emerge we shall document and report on them properly. So far we seem to be on a good standing for syslog-ng on 20.7.2.


Cheers,
Franco
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on September 08, 2020, 11:46:29 am
I'm not sure. We can't really tell people what to do and what not to do. Some complain about having to do (so many) updates, but the truth is they just can avoid pressing the update button. ;)

And as for reading what we write specifically... let's say it can be difficult for any number of reasons: time, language, context, larger version jumps, plugin use and other local complications.

We try to pack all release-relevant information into the releases notes and that includes current issues that a lot of people are struggling with, see the netmap information in 20.7.2 for example.

Syslog-ng had issues for sure, but so much that it kept crashing people's deployments completely so we have to weigh importance and for this reason syslog-ng did not meet the bar for inclusion.

A number of workarounds existed prior to 20.7.2 and if you need personal assistance there is also commercial things to be considered.

All of this is no substitute to test locally and roll back if you really need to. Snapshots and backups are great.

I know that people see their issues first and would like to not deal with them and ask us to be super up front and direct for every small issue, but this is neither done intentionally nor do we not work on fixes in the background in the scope of what impact is relevant for whom.

To circle back, a known issues section is more for something permanent that is unlikely to change for a longer period, not as transient bug. First releases of a major version are always a little noisy and if persistent issues emerge we shall document and report on them properly. So far we seem to be on a good standing for syslog-ng on 20.7.2.


Cheers,
Franco

@jassonmc: Welcome to the opensense community :D
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: franco on September 08, 2020, 09:27:25 pm
I'm not sure. We can't really tell people what to do and what not to do. Some complain about having to do (so many) updates, but the truth is they just can avoid pressing the update button. ;)

And as for reading what we write specifically... let's say it can be difficult for any number of reasons: time, language, context, larger version jumps, plugin use and other local complications.

We try to pack all release-relevant information into the releases notes and that includes current issues that a lot of people are struggling with, see the netmap information in 20.7.2 for example.

Syslog-ng had issues for sure, but so much that it kept crashing people's deployments completely so we have to weigh importance and for this reason syslog-ng did not meet the bar for inclusion.

A number of workarounds existed prior to 20.7.2 and if you need personal assistance there is also commercial things to be considered.

All of this is no substitute to test locally and roll back if you really need to. Snapshots and backups are great.

I know that people see their issues first and would like to not deal with them and ask us to be super up front and direct for every small issue, but this is neither done intentionally nor do we not work on fixes in the background in the scope of what impact is relevant for whom.

To circle back, a known issues section is more for something permanent that is unlikely to change for a longer period, not as transient bug. First releases of a major version are always a little noisy and if persistent issues emerge we shall document and report on them properly. So far we seem to be on a good standing for syslog-ng on 20.7.2.


Cheers,
Franco

@jassonmc: Welcome to the opensense community :D

Very in-depth, thoughtful and helpful comeback.  ¯\_(ツ)_/¯
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: rheller on September 09, 2020, 11:23:42 pm
I have an old APU1 up and running. Had some incident during the upgrade (it only upgraded base/kernel and not the rest), but with some help in another topic here (Thanks, Franco), that could be easily fixed.

Regards,
Ralph
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on November 08, 2020, 06:57:14 am
I'm not sure. We can't really tell people what to do and what not to do. Some complain about having to do (so many) updates, but the truth is they just can avoid pressing the update button. ;)

And as for reading what we write specifically... let's say it can be difficult for any number of reasons: time, language, context, larger version jumps, plugin use and other local complications.

We try to pack all release-relevant information into the releases notes and that includes current issues that a lot of people are struggling with, see the netmap information in 20.7.2 for example.

Syslog-ng had issues for sure, but so much that it kept crashing people's deployments completely so we have to weigh importance and for this reason syslog-ng did not meet the bar for inclusion.

A number of workarounds existed prior to 20.7.2 and if you need personal assistance there is also commercial things to be considered.

All of this is no substitute to test locally and roll back if you really need to. Snapshots and backups are great.

I know that people see their issues first and would like to not deal with them and ask us to be super up front and direct for every small issue, but this is neither done intentionally nor do we not work on fixes in the background in the scope of what impact is relevant for whom.

To circle back, a known issues section is more for something permanent that is unlikely to change for a longer period, not as transient bug. First releases of a major version are always a little noisy and if persistent issues emerge we shall document and report on them properly. So far we seem to be on a good standing for syslog-ng on 20.7.2.


Cheers,
Franco

@jassonmc: Welcome to the opensense community :D

Very in-depth, thoughtful and helpful comeback.  ¯\_(ツ)_/¯

I have to admit, that one wasnt my most helpful and constructive post. But sometimes it gets effective, though..

Anyway, to be ontopic:
would be really useful, if there was a page, dedicated to main releases e.g. one for 20.7, a separate one for 21.1, another one for 21.7 and so on, that tracks the most serious / showstopper upgrade-related bugs in that release branch. A simple table, nothing fancy. That describes what is the issue (e.g. Syslog-ng fails after upgrade to 20.7.0), when inside that release branch it was introduced (e.g upgrade from 20.1.x to 20.7.0), how to workaround (e.g. run from CLI: kill syslog-ng), when it was fixed (e.g. upgrade to 20.7.1). And you put a link to the release notes, that says: for any late-breaking upgrade info, check this known issues.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: l8gravely on November 16, 2020, 05:43:57 pm
Just to chime in here, I'm running 20.7.4 (just updated to it last night) on an APU2 and it's working ok.  In in the USA and have Charter/Spectrum for my WAN and it keeps dropping randomly at times.  I usually have to go into the web GUI and renew the GW lease.  I haven't been able to figure out what's going on here.

I've got the 4gb RAM APU2 with three GigE ports, no Wifi at all, it's just a router and that's it.  I'm using a 64Gb mSATA SSD as my boot device, but I've only got 32gb partitioned and even less in use.  I figure that's a great way to keep up longevity as the wear leveling should keep things going nicely.

I syslog to my main home machine, and I still don't see messages in the logs when the gateway goes down.

Any suggestions on how to debug this better?  Can I reset the WAN DHCP from the console so I can watch for errors?  It's driving me nuts since a reboot tends to fix up the problem right away.

This system has been ugpraded from older releases, so maybe I really need to do a fresh 20.7.4 install on a wiped system.  Should I try to save off the config and restore it?  Or should I just re-enter all my local firewall rules (just a couple for NAT'ing some devices on the inside) and local DNS entries?  It would be nice if there was a way to export/import a list of entries all at once. 

John
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: amichel on November 18, 2020, 08:30:58 pm
Hi,
just an idea here:
Any suggestions on how to debug this better?  Can I reset the WAN DHCP from the console so I can watch for errors?  It's driving me nuts since a reboot tends to fix up the problem right away.
Why don't you use monit to check for the connection?
You could for example create a connection test to any IP available from the firewall and in case it is not reachable you could initiate a reload afer let's say 5 missed attemts and initiate a reboot afer 15 attempts.
Thats the way I monitor my internet connection.
amichelf
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: almodovaris on November 19, 2020, 07:02:47 am
I have an APU2 4 GB. I always update to latest mainline BIOS and latest Opnsense, at most with one week delay. I have Ziggo 500 down 40 up. The APU2 is in the DMZ of my modem/router.

I have installed Sensei. No big problems that I could report.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: l8gravely on December 02, 2020, 04:19:47 am
I just recently upgraded my old APU1 running 20.7.<recent> to an APU4d4 because I keep getting drops of my WAN connection, it's like the DCHP times out and the router can't renew it properly.  I'm working along and suddenly things freeze and I can't work, or my kids come yelling that the Wifi is down.  Heh. 

So I goto Interfaces -> Overview -> igb3 and hit the 'renew' button.  Which usually works, but not always.  I might have to hit it multiple times. 

I log via syslog to my main home system which is on 24x7, so can anyone give good suggestions for what to look for in the logs to help diagnose this problem?  It's really frustrating when the kids are in school, or us parent's are on conference calls. 

Here's a snippet from my log:

 opnsense[32236]: /usr/local/etc/rc.configure_interface: The command '/sbin/dhclient -c '/var/etc/dhclient_wan.conf' -p '/var/run/dhclient.igb3.pid' 'igb3'' returned exit code '15', the output was 'dhclient 41052 - - Starting delete_old_states() dhclient 44642 - - Comparing IPs: Old: 66.189.75.104 New: dhclient 47831 - - Removing states from old IP '66.189.75.104' (new IP '') 0 states cleared killed 0 src nodes from 1 sources and 0 destinations DHCPREQUEST on igb3 to 255.255.255.255 port 67 DHCPREQUEST on igb3 to 255.255.255.255 port 67 DHCPREQUEST on igb3 to 255.255.255.255 port 67 DHCPDISCOVER on igb3 to 255.255.255.255 port 67 interval 2 DHCPDISCOVER on igb3 to 255.255.255.255 port 67 interval 3 DHCPDISCOVER on igb3 to 255.255.255.255 port 67 interval 3 DHCPDISCOVER on igb3 to 255.255.255.255 port 67 interval 6 DHCPDISCOVER on igb3 to 255.255.255.255 port 67 interval 8 DHCPDISCOVER on igb3 to 255.255.255.255 port 67 interval 19'
Dec  1 11:50:30 gw dhclient[3571]: Starting delete_old_states()

It looks like it's a failure to properly renew the WAN DHCP client IP address for some reason.  Has anyone else seen this issue?  Any suggestions on what I can do to make it work better?


Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: almodovaris on December 03, 2020, 04:47:43 am
Yup, give it a static lease. That means no bridge mode for your modem, use DMZ.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on December 03, 2020, 02:44:02 pm
Has anyone experienced lower than expected AES / VPN troughput recently?

I did a measurement on my APU2, and it performs significantly worse, than 2 years earlier:

openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 11056362 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 5231233 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 1850707 aes-128-cbc's in 3.05s
Doing aes-128-cbc for 3s on 1024 size blocks: 505589 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 8192 size blocks: 64769 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 16384 size blocks: 32500 aes-128-cbc's in 3.01s
OpenSSL 1.1.1d-freebsd  10 Sep 2019
built on: reproducible build, date unspecified
options:bn(64,64) rc4(8x,int) des(int) aes(partial) idea(int) blowfish(ptr)
compiler: clang
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc      58967.26k   111599.64k   155497.35k   172574.38k   176862.55k   177032.31k

--> approx. 172Mbit/sec traffic using 1024bytes blocks (measurement repeated multiple times, router is lightly loaded, 80+% idle)


Earlier (Opnsense 18.x, OpenSSL 1.0.2k-freebsd 26 Jan 2017): it was higher:

openssl speed -elapsed -evp aes-128-cbc

type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128-cbc 109850.66k 157501.93k 194130.64k 205928.11k 210187.46k

--> around 205-210 Mbit/sec

Thats quite a big steady 20% degradation.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: franco on December 03, 2020, 07:56:48 pm
The correct binary to check is (and always was) /usr/local/bin/openssl


Cheers,
Franco
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on December 04, 2020, 08:06:30 am
The correct binary to check is (and always was) /usr/local/bin/openssl


Cheers,
Franco

Did you spot any mistake?
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: hushcoden on December 04, 2020, 08:24:47 am
This is what I get with my apu2e4:
Code: [Select]
root@hush:~ # openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 15080231 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 7226969 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 2525328 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 1024 size blocks: 570466 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 8192 size blocks: 73644 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 16384 size blocks: 36643 aes-128-cbc's in 3.00s
OpenSSL 1.1.1d-freebsd  10 Sep 2019
built on: reproducible build, date unspecified
options:bn(64,64) rc4(8x,int) des(int) aes(partial) idea(int) blowfish(ptr)
compiler: clang
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc      80427.90k   154175.34k   215494.66k   194719.06k   201097.22k   200119.64k
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: franco on December 04, 2020, 08:31:25 am
Guys, for the love of the Gods please use /usr/local/bin/openssl ;)

# which openssl
/usr/bin/openssl


Cheers,
Franco
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: hushcoden on December 04, 2020, 09:00:55 am
Slightly better:
Code: [Select]
root@hush:~ # /usr/local/bin/openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 11289033 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 5595084 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 256 size blocks: 2235362 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 1024 size blocks: 690092 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 8192 size blocks: 89374 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 16384 size blocks: 44699 aes-128-cbc's in 3.00s
OpenSSL 1.1.1h  22 Sep 2020
built on: Tue Oct 20 22:46:58 2020 UTC
options:bn(64,64) rc4(8x,int) des(int) aes(partial) blowfish(ptr)
compiler: cc -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -O2 -pipe  -DHARDENEDBSD -fPIE -fPIC -fstack-protector-all -fno-strict-aliasing -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -D_THREAD_SAFE -D_REENTRANT -DNDEBUG
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc      60208.18k   119051.76k   190750.89k   235551.40k   244050.60k   244116.14k
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on December 04, 2020, 09:30:12 pm
Guys, for the love of the Gods please use /usr/local/bin/openssl ;)

# which openssl
/usr/bin/openssl


Cheers,
Franco

1) For the love of god, why do you guys deploy 2 different openssl versions on the same opnsense without describing this trapmine?

2) In my case, it didnt give better results:

~ # /usr/local/bin/openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 10431991 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 5030317 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 1792666 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 1024 size blocks: 505478 aes-128-cbc's in 3.02s
Doing aes-128-cbc for 3s on 8192 size blocks: 64928 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 16384 size blocks: 32502 aes-128-cbc's in 3.00s
OpenSSL 1.1.1h  22 Sep 2020
built on: Tue Oct 20 22:46:58 2020 UTC
options:bn(64,64) rc4(8x,int) des(int) aes(partial) blowfish(ptr)
compiler: cc -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -O2 -pipe  -DHARDENEDBSD -fPIE -fPIC -fstack-protector-all -fno-strict-aliasing -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -D_THREAD_SAFE -D_REENTRANT -DNDEBUG
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc      55637.29k   107313.43k   152974.17k   171642.52k   177296.73k   177504.26k
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: almodovaris on December 05, 2020, 03:39:39 am
Well, you should know that APUs are now considered low-end hardware. So be content with that it offers. For the home user (hobbyist) it is a perfect box. But it is not suitable for very demanding tasks.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Gary7 on December 05, 2020, 04:23:50 am
FWIW, I ran the same command on my APU2D4
~ # /usr/local/bin/openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 16220482 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 64 size blocks: 7941393 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 2918949 aes-128-cbc's in 3.02s
Doing aes-128-cbc for 3s on 1024 size blocks: 816008 aes-128-cbc's in 3.02s
Doing aes-128-cbc for 3s on 8192 size blocks: 105686 aes-128-cbc's in 3.02s
Doing aes-128-cbc for 3s on 16384 size blocks: 52871 aes-128-cbc's in 3.02s
OpenSSL 1.1.1h  22 Sep 2020
built on: Tue Oct 20 22:46:58 2020 UTC
options:bn(64,64) rc4(8x,int) des(int) aes(partial) blowfish(ptr)
compiler: cc -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -O2 -pipe  -DHARDENEDBSD -fPIE -fPIC -fstack-protector-all -fno-strict-aliasing -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -D_THREAD_SAFE -D_REENTRANT -DNDEBUG
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc      86284.54k   169416.38k   247793.06k   277087.57k   286356.08k   286507.81k

Coreboot:  v4.13.0.1
Core Performance Boost - Currently Enabled
I'm the only one on the system so I set:
vm.pmap.pti = 0
hw.ibrs_disable = 0
among some other optimization settings
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Gary7 on December 05, 2020, 05:48:40 pm
I don't remember when Meltdown mitigation and Spectre V2 mitigation was introduced.
We know that mitigating these issues in the O/S causes a performance "hit". I just don't know how much.

My APU2D4 is for my home network and all inbound traffic is disabled. So, disabling the mitigation was an acceptable risk for me in order to get best performance.

According to AMD, their CPUs are not vulnerable to the Meltdown vulnerability. So, it should be safe to disable Meltdown mitigation, vm.pmap.pti = 0
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: almodovaris on December 06, 2020, 06:23:29 am
Yup, on my APU2C4:

/usr/local/bin/openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 13947948 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 7114424 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 2589608 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 1024 size blocks: 733300 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 8192 size blocks: 93373 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 16384 size blocks: 45467 aes-128-cbc's in 3.00s
OpenSSL 1.1.1h  22 Sep 2020
built on: Tue Oct 20 22:46:58 2020 UTC
options:bn(64,64) rc4(8x,int) des(int) aes(partial) blowfish(ptr)
compiler: cc -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -O2 -pipe  -DHARDENEDBSD -fPIE -fPIC -fstack-protector-all -fno-strict-aliasing -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -D_THREAD_SAFE -D_REENTRANT -DNDEBUG
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc      74389.06k   151774.38k   220979.88k   250299.73k   254970.54k   248310.44k
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: almodovaris on December 06, 2020, 07:51:46 am
Another round:

 /usr/local/bin/openssl speed -elapsed -evp aes-128-cbc
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 16 size blocks: 15874993 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 7012502 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 2832566 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 1024 size blocks: 772744 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 8192 size blocks: 103137 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 16384 size blocks: 52408 aes-128-cbc's in 3.00s
OpenSSL 1.1.1h  22 Sep 2020
built on: Tue Oct 20 22:46:58 2020 UTC
options:bn(64,64) rc4(8x,int) des(int) aes(partial) blowfish(ptr)
compiler: cc -fPIC -pthread -Wa,--noexecstack -Qunused-arguments -O2 -pipe  -DHARDENEDBSD -fPIE -fPIC -fstack-protector-all -fno-strict-aliasing -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -D_THREAD_SAFE -D_REENTRANT -DNDEBUG
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
aes-128-cbc      84666.63k   149600.04k   241712.30k   263078.19k   281632.77k   286217.56k
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: franco on December 06, 2020, 09:30:59 am
1) For the love of god, why do you guys deploy 2 different openssl versions on the same opnsense without describing this trapmine?

I'm not sure if you are intentionally hard to work with or that it is just what it is.

FreeBSD requires an embedded base system OpenSSL library for bootstrap reasons, but this version cannot be changed on the fly without reinstalling the whole base system. That's why we use a package on top to allow quick updates and also the possibility to use LibreSSL.

This information isn't new and certainly not rocket science. Failure to learn from past threads which have plenty of information on the subject is on the individual user.


Cheers,
Franco
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: Ricardo on December 06, 2020, 01:38:46 pm
1) For the love of god, why do you guys deploy 2 different openssl versions on the same opnsense without describing this trapmine?

I'm not sure if you are intentionally hard to work with or that it is just what it is.

FreeBSD requires an embedded base system OpenSSL library for bootstrap reasons, but this version cannot be changed on the fly without reinstalling the whole base system. That's why we use a package on top to allow quick updates and also the possibility to use LibreSSL.

This information isn't new and certainly not rocket science. Failure to learn from past threads which have plenty of information on the subject is on the individual user.


Cheers,
Franco

All I can do, if I am in doubt of something, first I use the docs search function:
https://docs.opnsense.org/search.html?q=openssl&check_keywords=yes&area=default

It didnt help me to find your quoted sentence, which you suggest should be general public knowledge:

"FreeBSD requires an embedded base system OpenSSL library for bootstrap reasons, but this version cannot be changed on the fly without reinstalling the whole base system. That's why we use a package on top to allow quick updates and also the possibility to use LibreSSL."

Othwerwise you may add forum sticky permalinks into the docs articles, where it is written once already. Searching for "openssl" string under forum returns too many results, not rational to find that 1 statement.

"Failure to learn from past threads which have plenty of information on the subject is on the individual user."
No comment on this, we dont understand or willing to accept the others point of view.
Title: Re: PCEngines APU2/APU3/APU4 running on 20.7
Post by: banym on January 02, 2021, 11:57:46 pm
This is not a OPNsense related thing.
The location of custom software outside of base system comes from the way FreeBSD works using ports.

Further information on this topic:
https://www.freebsd.org/doc/handbook/dirstructure.html
https://www.freebsd.org/doc/handbook/ports.html#ports-synopsis