OpenBSD laptops
tedunangst.com
tedunangst.com
I also didn't run in to this bug.
Edit: Also didn't test Bluetooth or WWAN.
Just anecdotally, my Nexus 9 does not even have the fstrim command anymore, nor do I see any discard options in the fstab. My Nexus 7 2012 had lots of interest about fstrim improving performance, but not my Nexus 9. I assumed the TRIM issue had disappeared.
Also, the OP is right: TRIM works by telling the SSD which blocks that were previously used are now unused, so that the SSD, at a lower level, can eventually erase the larger flash sector. There is literally no way for the SSD to know this intrinsically because SSDs do not expose a filesystem interface.
Another quick Googling seems to say improved garbage collection (in the SSD itself) has lessened the need for fstrim.
Hopefully someone who is knowledgeable will chime in.
You're correct in that trim is less necessary if a drive has good garbage collection. I don't know anything about the implementation of either, but I would expect trim to be easier, cheaper and better than GC. It seems like GC would require work to discover/remember things provided as input w/ trim. I've assumed that GC was only implemented by vendors in their controllers because trim wasn't available in the popular OSs yet, and/or because their controllers were already doing most of the work required by GC anyway so it was cheap to implement.
Finally, you can't equate SSDs with the SD or eMMC used in some of the phones/tablets. Yes it's all flash, but an SSD is typically multi-channel with many flash modules, a DRAM cache and a much more sophisticated controller implementing a standard storage interface (AHCI/SATA or SAS or NVMe). eMMC and SD are much simpler, cheaper and slower.
# fsck / | grep frag 6395 files, 106651 used, 409612 free (300 frags, 51164 blocks, 0.1% fragmentation)
# fsck /usr | grep frag 396741 files, 4832173 used, 19820289 free (4953 frags, 2476917 blocks, 0.0% fragmentation)
# fsck /home | grep frag 1192199 files, 27780639 used, 3176062 free (216374 frags, 369961 blocks, 0.7% fragmentation)
> ASUS X205TA is an example of a machine with reduced hardware ACPI. Also has Broadcom wifi. I don’t know of a particularly good choice in the netbook category.
The ASUS X205TA is a machine that is hostile to anything not Windows.
It doesn't have bios. It has 64 bit architecture, but a 32 bit EFI. That makes it harder ot install for example some Linuxes.
Here's a 51 page thread in the Ubuntu forums: http://ubuntuforums.org/showthread.php?t=2254322&page=51
Here's someone trying to write a driver for sound: http://comments.gmane.org/gmane.linux.alsa.devel/138822
Here's the guide to getting debian on it: https://wiki.debian.org/InstallingDebianOn/Asus/X205TA
Here's the (as usual, excellent) guide to getting Arch on it: https://wiki.archlinux.org/index.php/Asus_x205ta
I guess people using BSD are happy with installs that are more complex than "burn an image to a USB stick; boot from that USB stick; click a button". But here's an example of someone installing Arch: http://ifranali.blogspot.co.uk/2015/04/installing-arch-linux...
It's a shame it's so hostile because, considering the price, it's a nice enough machine. (The screen is lousy, and the sound is odd. If you liked the EEE PC 701, well, this isn't as good.)
I always thought "burn" referred to optical storage like CD-ROM?
Not sure about others, but when I do BSD installs I do not have to click any buttons. I do not need a mouse.
I can lazily use something as small as an 8M stick for the install image. It couldn't be much easier.
With the size of today's RAM (500M+), using the install image I can make the custom image with my personal kernel configs, utilities, and settings entirely in memory without needing to write anything to a HDD. Then I just dd the image to the removable media. That is the slowest step.
My custom images are quite small too, under 16M, and need no access to a HDD. The system runs just fine in RAM, no swap.
I guess I could do the same setup with "Arch" but I imagine it would take considerable work undoing pre-configurations based on assumptions about how I would want my system configured.
Easier perhaps to just compile my own custom Linux kernel and "initrd". Build from the ground up.
I like the flexibility and control with BSD. Not to say Linux does not have flexibility and control, too. It certainly does. I just rarely see ordinary Linux users making use of it when installing. Instead many if not all decisions have already been made, and everything is pre-configured. "One click..."
Kudos to the OpenBSD folks for the network drivers.
Also, if you learn to use installboot(8) you can make your own PXE bootable images.
I would read the Makefiles in the OpenBSD source tree to see how they make their install images.
Note I'm not an OpenBSD user and have not installed it in many years so I'm not the best person to ask. I use an earlier distribution, the one that spawned OpenBSD. Similar but not the same.
You can mirror the install sets locally (on a HTTP server) for performance reasons, if you like; otherwise, you can just download them from an HTTP mirror during the installation.
I've been working on automating the whole process (fully-automated installations for bringing up new VMs) and it's so much simpler than with other operating systems.
Does anyone know how much code FreeBSD and OpenBSD share? FreeNAS uses FreeBSD 9 and the forum is allergic to any mention of xhci. I've got it working on a Atom C2758 system but it runs at USB 2 speed.
I never see any news about NetBSD and hardly any about FreeBSD. Though quite a few about OpenBSD. Why?
As much as I love OpenBSD, this is a knock-out criterium to me. Has the situation improved significantly since 5.7?
"acpicpu(4) uses ACPI C-state information to reduce power consumption of idle CPUs. "
What C states does it currently support? My FreeBSD box spends most of its time in C8.
It seems to produce acceptable power draw figures on a ThinkPad X250 in any case.
Keyboards & trackpads over I2C? I liked the trend of moving everything to USB, even for internal devices.
> As ever, support for Broadcom wifi and Nvidia graphics is nonexistent.
This is exactly the big issue with adoption of any *nix system on laptop or desktop. No user wants to have to live with quirks. Users just want their system to work.
- My mid-2013 MBP has, several times this week, turned on while closed, and continued as if it was opened (playing YouTube videos or whatever else it be doing), only shutting back off after about 120 seconds or so
- Every time I turn this Mac Pro on, it doesn't recognize the wired Apple keyboard that's plugged into the Apple Cinema Display, and says it's looking for a bluetooth keyboard, until I unplug and replug the keyboard in at least 3 or 4 times
- My MBP once emitted a (very) loud buzzing sound from its speakers, for absolutely no reason, that lasted about 3 or 4 seconds, startling everyone nearby, when no sound-based programs were running
- My wife's Surface Pro 3 continually needs to be restarted because touch-screen controls simply stop being able to open programs on the home/grid page.
- If our family ASUS $800 computer is left on and falls asleep, it won't wake up, and will need to be manually shut down and restarted
These are just off the top of my head. Point is, Microsoft/Apple reliability is a complete myth. I'm tired of it and I'm tired of throwing extra money away for the sake of "higher reliability" and "fewer quirks".
I'm tired of the cult of perfection surrounding frankly middling proprietary operating systems.
- Every mac I've ever used has had Launchpad UI bugs requiring me to try several times to launch things.
- OS X has woeful graphics drivers, to the point where Mesa is doing better.
- My Air got erratically unusably laggy until I finally gave up on it.
- My MBP will occasionally forget that it has any integrated input devices, requiring me to either find a USB keyboard or reboot.
- Microsoft still hasn't resolved their graphics driver stability situation; blue screens are far from a relic of the past in my experience.
These are anecdotes, yes. Sure, some (rare) people might have a perfect experience with OS X or Windows. But the point is, free operating systems don't have a monopoly on driver and spitshine issues.
My MacBook works. It just works. No tinkering, compiling, fidgeting, anything -- and this is precisely why I like it and will continue to use it. I don't want my hardware getting in the way.
And reliability is certainly not a myth. In my days I've supported all three platforms and by far it was MPB that gave me the least grief. This is doubly true with hardware. Linux is close behind Mac but I think most engineers brave enough to venture it would competent to deal with problems on their own.
When a MPB has a problem: take it to a Mac store and get a replacement. When a Lenovo had a problem? Ship it to Virginia on your dime and wait 6 weeks.
I seriously suggest you take your MPB to a mac store and speak to them about your problem.
The point he wanted to make is most likely not that all Macs suck all the time, but that Mac does not automatically mean reliable or more reliable than any other OS/system. So while it might not be worse than other systems (I don't want to make a judgement based on the few Macs I had to fix for friends without ever having used them myself), it certainly is no super-reliable saint either.
And my limited first-hand experience agrees with him.
When I've had problems with US purchased Dell's, I had someone there within 48 hours with a replacement piece, despite being in 1) Austria and 2) Italy.
In the meanwhile I'd got a macbook so I could continue working. The mac was driving me crazy. The keyboard feel, the trackpad feel, the lack of nipple mouse, the every-changing UI that never does quite what I want it to.
When the Lenovo came back I tried it out, fell in love again, and moved back to it. At some point the SSD will die and I'll get another one. There's nothing close to a Thinkpad. To me, they feel like they built as tools in a way that other devices lack.
I've noticed some issues with the USB hub that is built into the Thunderbolt display whereby for some reason it doesn't enumerate correctly every 40 - 50 plug/unplug cycles while using my MBPr at work. It only happens when the Apple keyboard is plugged into the display, with alternate keyboards it doesn't happen.
So I personally feel like it is an issue with the Apple keyboard.
I'm not sure I'll ever buy another OEM PC. So much crapware comes pre-installed, and it's so difficult to get rid of it, that I usually wipe the disks and install Windows from an MSDN iso. Of course, there's still the drivers... And more importantly, the tens and hundreds of MB of shitware that comes bundled with a tiny device driver. No, I do not want the ASUS Smart Keyboard Whoop-dee-doo application launching at startup. I just want my keyboard to work like every other keyboard has worked for the last 30 years.
So for instance: Every Chromebook out there is running a Linux kernel, and they all have exemplary hardware support -- power management is great, trackpads are phenomenal, there are no issues with sound or wifi or GPU. BUT if you try to install Windows on them, it's super-awkward and hacky if you can get it to work at all.
For historical reasons, most people who try to install BSD or Linux are doing so on hardware that was designed for Windows, with components that were selected on the basis of how well they work with Windows, and driver work that is done for Windows. This does not lead to great outcomes, any more than buying a Chromebook and using it as a Windows machine would.
So in a sense "hardware makers aren't making hardware designed for Linux (other than Chromebooks) or BSD" is a problem for adoption of Linux/BSD, but it's a problem that can only be fixed by hardware makers.
But installing something that the manufacturer didn't supply is a deliberate choice. Any quirks get blamed directly on the changed software, even if there are actually fewer of them. The change becomes the issue.
This rings true for me very much this week. Even more fun when there are multiple changes, but rather than examine the situation and determine objectively which change caused a problem, whichever change is the biggest magnet for FUD gets blamed by default.
E.g., Linus himself was using a MacBook Air 11 late 2012 for some time. It works fantastically well on Linux. Newer MacBooks are sometimes not so well supported. Only thing lacking is no recognition of ACPI events to flag each time the battery discharges by 1% or below a threshold. But very few laptops have this.
Mini PCI Express is a standard (as was Mini PCI before it). Swapping out a laptop wireless card you don't like isn't that hard. I've done it several times (to get dual band support, for better Linux drivers, etc).
Spending around $100 (including installation if you don't want to do it yourself) may be annoying, but it shouldn't be a deal breaker.
Apart from reverse-engineering yet more hardware and writing more drivers, there is not much the OpenBSD project can do about this.
Fixing the root cause would be best. Vendors who do such things must be convinced to stop doing them.
If vendors also released freely available documentation for the hardware (read: freely accessible manuals for driver developers, no NDA required to read) then end users of free software could live in a world where wireless not working would be the exception.
OpenBSD attracts the type of users they want to support I imagine. Leave it to someone else to push the "Year of *nix desktop" agenda.
Makes no sense that the more niche, security focussed OpenBSD has the much better laptop support, until you consider that OpenBSD devs actually dogfood it on their laptops.
Many FreeBSD devs seem to run Macbooks for development, using FreeBSD only in a VM or via SSH.
I agree. Which is why I'm so frustrated at the moment, as I've had issues with my 1 year old rMBP, my girlfriend had issues with her Windows laptop, and my Ubuntu install on my HP 11" runs into the weirdest bugs.
It's 2016, and nothing works. I don't understand it.
[1]: https://medium.com/message/everything-is-broken-81e5f33a24e1
Is there anything significantly different right off the bat from someone coming from the FreeBSD world?
Unless you want to enjoy Bluetooth of course :)
There are many 3rd party packages in ports.
Known Bugs
vnode reclaiming deadlocks
vnode fsync bug
kmem_cache_alloc/ aka pool_cache_get panics
https://wiki.netbsd.org/users/haad/porting_zfs/Should also be noted that dtrace and zfs can never be actually integrated into OpenBSD due to them refusing to import CDDL licensed code.