Joined devRant on 8/28/2017
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
I have been working on a long time, low progress project of mine that keeps on giving and giving.
Let's begin like two years ago where I dipped my toes into "more then gigabit" networking thanks to a Linus Techtips video about infiniband.
I had the dream of booting my Workstation from my NAS, a so called diskless setup.
Well, since I run FreeNAS on my Nas , a very nice Freebsd based Nas OS, everything's gonna be good.
In the beginning, there was no infiniband support.
Turns out, you don't need it, since the mellanox CX2 nics can do ETH too.
Just took me a few weeks of anger.
So, to be able to boot something over the network, you need firmware that finds the bookable stuff and loads it.
That protocol and firmware is called PXE.
PXE needs a DHCP telling it what to do, and what is where and etc.
Freenas here I come! Installing dnsmasq on the actual freenas install turned out to be not that great of an idea because freenas thinks of itself as being an "appliance" that you don't fiddle with. So things work, until you update/ upgrade when everything will basically be wiped, except what you have done through the ui.
Ok. So I gona use a jail, a container like thing for that.
Everything is great, jail has internet, everything Installs fine, what could go wrong?
Dnsmasq can launch and work, but not as dhcp server. Some thing about permissions.
Turns out, jails have permission like things.
A few days of head scratching later, it has ALL the permissions.
Dnsmasq still can't work as DHCP server though, why you ask?
Because it needs a specific kernelmodule that isn't contained in the jail. Since jails are kind of like a docker container, they run on the same OS kernel, who does not have this module, I'd need to patch the freenas, which is an appliance, so fuck that.
Like a year later, freenas has finally added good VM support, so why not make a VM for the dhcpserver?
Well, about a year ago, I didn't know that the virtual Intel nic is a fucken unstable piece of garbage, crashing nearly any OS at some point.
So that was it for a while again.
Now to the last few weeks.
Finally dnsmasq is running in a freebsd VM with a good and working configuration which is rather simple, if those tutorial fuckers out there would explain shit instead of just telling you to copy, paste and replace X.
Now back to the PXE side.
I'm using iPXE because I have no clue how to boot anything over tftp so iSCSi it is, since that is what I can relate too.
The idea behind iscsi is to fake a SCSI disk over the network. Attached devices appear as if they are actually directly connected to the machine instead of over the network.
iPXE gets a lease from the server, can connect to it, everything is fucken great. Finally.
Except that if it "sanBoots" the iscsi drive, it can't find anything to boot.
If I attach a Linux live USB over iscsi, it boots, finds grub, and crashes because the live iso isn't configured for network-boot.
But it boots.
So what's so different?
Well iPXE is booted in legacy mode, where as the content of the target is windows 10 in efi mode.
Ok. Can I get iPXE to boot in EFI mode?
Well yes, after like 3 days fiddling with it.
But it only finds the onboard Intel nic instead of the new Mellanox CX3 cards, and can't even connect to the target....
Sooo, I guess my options are as follows.
Either, get PXE efi to work on the network cards directly, its called flexboot and might be able to since I just found some firmware options for that.
Or give up on efi and install windows in legacy mode.
Which isn't that easy when it has to end up on a drive on my nas.
Writing on a small c programm that somewhere calls a method that has a pwrite() in it.
I now wanted to know how long that method takes.
So I add a:
startTime = clock();
In front of it.
The funny thing is, that makes the pwrite fail.
I remove it, it works.
I add it, and it fails again.
What the actual fucking hell.4
Ordered something techy from the US and A, because it looked like what I wanted, smelled like what I wanted, and I thought it'll taste like what I wanted.
It arrived today and ooooohhh boy was I wrong.
It's kind of like if you won a car.
But you have no drivers license.
And it is so futuristic, it runs on unicorn piss.
Good luck getting that anywhere.
Another tech-brick on the wall.
Well i could write some tech publications to give them a chance to cover it in depth first, since everyone else will be gaged by NDAS until like q2 2019.
Naaaa, I probably wouldn't even respond to myself if I wrote.
"Nice try kiddo, did hell freeze over?"2
Friend of mine killed his MacBook with some Softdrink.
Just poured it all over his poor a1502.
He let it dry for a few days, it starts to work again.
Except the battery.
Goes on Amazon and buys a new battery.
New battery doesn't work either and so he tells me about it and I as stupid as I am couldn't resist the temptation to finally work on a MacBook like my "hero" Lois Rossmann does.
So turns out the board is good.
Cleaned it up and basically nothing happened to it.
So what's the deal with "los batlerias"?
The first got hit by liquid, the second had a broken connection to a cell.
That could have happened through my friend, installing it without testing it first, or at the seller, so it being a DOA battery.
Now away from the stupidity of my friend and the situation to the actual source for this rant.
Once something happens to a modern Managed battery, the Battery Management System (BMS) disconnects the voltage from the system and goes into an error state, staying there and not powering anything ever again.
For noobs, it's dead. Buy a new one.
But It can be reset, depending you know how to, and which passwords were set at the factory.
Yes, the common Texas instruments BQ20Zxx chips have default passwords, and apple seems to leav them at default.
The Usb to SMBus adaptors arrived a few days ago and I went to prod the BMS.
There is a very nice available for Windows called BE2works, that I used the demo of to go in and figure out stuff. The full version supports password cracking, the demo not.
After some time figuring out how Smart Battery Systems (SBS) "API" works, I got to actually enter the passwords into the battery to try get into manufacturer and full access mode.
Just to realise, they don't unlock the BMS.
So, to conclude, my friend bought a "new" battery that was most likely cut out of a used / dead macbook, which reports 3000mah as fully charged instead of the 6xxx mah that it should have, with 0 cycles and 0hours used.
And non default access.
This screams after those motherfuckers scaming the shit out of people on Amazon, with refurb, reset, and locked fucken batteries.
I could kill those people right now.
Last but not least,
My friend theoretically can't send it back because I opened the battery to fix the broken connection.
Though maybe, it'll get send back anyway, with some suprise in the package.9
Have defective supermicro server, but the ipmi is working and could tell me what's going on.
Only problem is, I don't have access to it since the last owner didn't provide it to me.
So I thought let's try metasploit.
Setup local network with a second server, connect to local* address.
"Welcome to intel integrated BMC web console"
What? Its a Supermicro, did the owner reflash the ipmi? What the heck.
Msf: scan adress ....
ipmi found bla bla bla.
Msf: zero cipher scan.
... Voulnerable to zero cipher.
Was pretty happy but the doubt kept creeping in.
On my WS that isn't connected to the ipmi of my server, I go to that ip address.
"Welcome to intel BMC ......"
What are the odds that some fucker has his ipmi open to the public on that exact same address that my board was configured to.
Well, actually pretty high I guess.
That didn't go as planned.
Managed to "finish reparing" my second Razer blade 14, swamped around some ssds and now both don't boot from my ssd.
So, I just disabled my mobile workstation.
3 days twiddling with it later and I still haven't managed to boot it.
Linux from a usb boots fine, Linux from the ssd, nope, no chance.
Csm looks good,
Bios sees the drive, should be good.
But I can only boot it legacy, which goes nowhere.
No uefi mode for the SSD.
But it worked before, so what the heck.
So when I boot grub of a usb stick, the live image runs fine.
I can also boot the ssd with the usb grub.
Most craziest thing for me right now is, I now have an nvme in the blade, but the blade doesn't fully support nvme as boot device.
And the external grub can boot it, and it seems to work properly once grub and the kernel take over, has full "support".
Just a side note, the other drive is a sata m.2 that worked fully before so i still have no reason why it isn't working.
So I thought I could now use a usb stick with grub to boot the nvme.
But nope, can't boot the usb stick anymore.
What the fuck is going on?!
And for all those realising that the nvme will not be running at pcie 3.0 by 4, yes, but it's not a high-end drive, Samsung pm951 so that doesn't matter.
Freenas update from 11.1 to 11.2 beta 2
They added experimental smb direct / multichannel support, yay.
Me tries to connect to the smb share:
->Connection timed out 🤔
->Connection refused 😐
Google foo ....
->Nope, no connection 😔
"Failed to retrieve list of shares from server"
Reinstalls freenas to be sure it's not some janky install.
Google some more
*Like a year later*
Look into /etc/samba/smb.conf
Client max protocol = NTLM1
Who thought that to be a good Idea!?
It's the default Manjaro smb conf from the official repository by the way.
Didn't even know there was a setting for max client protocol.
Thought it was a server only config.
Nope, some motherfucker trolled me long and hard this time. 😩
But back to getting smb direct working on my setup.
Thunar gvfs is like it's own completely separate thing.
Smb status, and all the other commands don't see any open connections anywhere.
Gvfs still connects fine to the share even though the smb.conf is deleted and everything else is complaining that there is no config.
On the one hand, it uses samba, on the other it's not actually.
Where the heck can I see the connection properties and wether rdma works or not?
Mother trucking, fracking, leg breaking piece of a dance type.1
Many small things.
I just realized, my phone number contains 1337. 😁
Didn't for a very very long time.🤔
College asked if I killed someone for it. 😉
have a dead lg29ea monitor that I planed to repair.
It shows randomly coloured stripes on the screen and no picture.🤔
Thought it was the controller.
New controller arrived today after I snatched it on eBay.😀
It's not the controller.
Fuuuuck! Son of a didly
Linux: Manjaro XFCE
I disabled WiFi in the manage networks widget because reasons.
Fuck! Can't enable it anymore.
More info in case you want to help me:
Widget sais: "Wifi Disabled" in grey letters and not clickable.
Googled around, debug info:
wlp3s0 ... State DOWN
$ip link enable wlp3s0
Error: locked by RF-Kill
Soft lock yes
Hard lock no
$ rfkill unblock 1
$ rfkill list
Soft lock no
Hard lock no
WiFi still disabled.
$ip link enable wlp3s0
wlp3s0 ... Down
WiFi still disabled.
$ cat ..../NetworkManager/NetworkManager.status
Wireless ... Disabled.
Restarts case rfkill soft lock again.
The laptop is a 2015 Razer Blade 14 and does not have hardware switches or shortcuts that I know of, that dis or enable wifi, or Bluetooth.
Long story short,
I made a repository on GitHub containing all the necessary files to build network-card specific firmware that the developer Mellanox does not suply openly to the general public anymore.
Can they (Mellanox) do something to me for that? 😨
And should i pick a license for that repo?
The files were grabbed from either an old russian ftp who grabbed them from the mellanox page years ago while they were available.
Or from some programs appdata tmp folder where they magically appeared during installation.
The files are 2 different kinds,
Either a core firmware textfile containing encoded binary 😵, or
Adapter specific config files that could also be dumped from the adapter card itself.
In total, mellanox provides version compiled 2.9.1000,
I obtained "sources" for
Which are massively better and needed for certain features and functionality. Like building in PXE.
Got a new motherboard today, a Asus crosshair vi hero, AM4 for amd ryzen.
Bought is as broken / defective, it supposedly works except 2 ram slots should not get detected.
On a closer look, the story of water-damage didn't seem right.
Disassembled everything and took another look.
😲😨 "Is that solder tin? What the actual fuck?"
*Scratche it with tweezers
*"Supposed solder tin" becomes liquid and moves
😱 "The fuck that's liquid metal"
😵 Who the fuck sprinkles liquid metal all over a board?
😳Ryzen is solderd why the fuck should someone use liquid metal?
What the heck16
I believe the biggest shortcoming of modern pc hardware like ryzen or
i(5|7|9)s is the lack of Ram support.
Buffered Vs Unbufered, registered or unregistered, what does it matter? It's just Ram!
I call that discrimination.
Reg ECC Discrimination!
Had a Nas with a single 3tb seagate HDD in it.
It ran well for half a year and it was my main backup and a time machine for my dad.
The time came that my budget was allowing a second drive for redundancy so I powered it off, added the second drive and powered it back on.
The drive did indeed die and yes, it was one of those drives with an extremely high failure rate.
My dad was pretty mad that his backups were gone even though he didn't need them.
So my biggest lesson from this was to always encrypt such drives because dads backup wasn't and my files and such weren't either, so someone could restore our hole life's from the drive.
So I can't Rma that fucker.
Zfs at rest encryption ftw!
By the way, writing this I noticed that I didn't need to power the Nas down to add the second drive....
Another more recent thing was a refurb 4tb we red that I bought used for a bargain.
It reported 2 unwritable sectors but I didn't care for the money.
After about a month, it died.
The interesting part is how it died.
It spinns up, gets detected, you can access the data.
You can copy the data.
But after a few moments of continues load, all operations start timing out and the drive either disconnects completely or the zpool degrades and shuts down.
In the first case, replugging brings the drive back untill it does it again.
On zpool degradation only a reboot brings it back.
Put a fan on it in case it was overheating but that didn't fix it.4
One of my hobbies is to repair stuff.
In front of me is a Xiaomi Notebook air 13.3", a very nicely build device.
But it's driving me nuts, the screen is completely glued onto the front glass.
How the fuck am I supposed to exchange that display with a new one?
The main problem with those devices seems to be the display-cable in the hinge.
It might short 3.3V to 19V backlight, killing the display, the hdmi controller and the audio-chip.
2 ez fixes so far, but that fucken display.
And the absolute worst is that there are 0 official replacement parts available for any of the Xiaomi notebook's.
Let's start by saying that I fucken know nothing.
Not even how to fucken start this rant.
I have to build a simple game for a university project.
Since everyone in my team chose plain swing/awt, and for many other reasons, I jumped on that band wagon.
Knowing myself and that I quit the project last year, I chose an extremely simple type of game with very simple goals and Use-cases.
So far so good.
Logic, layer, and nearly everything else is nearly finished.
Since about 3 month.
Friends helped me restructure my game for better layer separation and I couldn't be happier with how that turned out.
But all those 3 month, my main problem has persisted.
I can't get it to draw a thing on the jframe.
For 3 month.
3 fucken month.
And now I don't even get a jFrame anymore.
WHAT THE FUCK
Git, tell me, what have I changed?
Nothing related to construction of the frame?
Ok, I removed a call to repaint there.
Let's putt it back.
NOPE, no JFrame.
What the actual fucken hell?
This is where you can stop reading, after this there will only be me crying about everything.
Sweet tears. 😭
In-between I got a frame, and something was drawn onto it.
But only on construction.
I couldn't get the paint chain to run a single time after that.
I have a nice thread with some loops that is supposed to update the logic and make a call to repaint/ update/ refresh the frame so that the game runs nicely with 60fps.
Logic works fine, but no call to what ever does anything related to painting.
This morning I had the idea that it might be because of the thread.
Refactored that the game loop runs in the main thread and here I now am without a jFrame.
And still 3255 letters to go.
I don't even even even even even..,...5
Samba 4.7.? What the hell?
Some update broke all my plugins and shares.
And now windows refuses to open the fricken shared folder.
At least I can connect to the server again.
But still, wtf!
This thing is keeping me from enjoying my 40Gbit RDMA infiniband network, that little piece of fucken shit SAMBA.9
Build a testbench they said, it'll be fun.
Guess who just reversed the direction of the pump.
Pumping into the reservoir from the reservoir isn't such a great idea.
Someone once called me a hardware geek.
Hot-pluged another cpu yesterday.
😎 Third one in total.
Didn't notice that the board turned on and it ran for like 5min without a cooler.😨
Poor 130W tdp Xeon.
Still runs fine in my workstation
What the fuck?
My Witcher 3 save state has vanished.
I didn't delete that!
What the actual fuck?
Talked to long time friend a while back.
I think he freelances now and does some kind of web design stuff.
He said, he hates java, and I asked what he hates about it:
" Those stupid variable types, I only use VAR in PHP to get around that stupid stuff. And what is this Oop anyway?".
😵 Dude? The fuck?8
Found someone who had a similar idea then me.😮
(Except, mine was 2 years ago and I'm working on it since)😎
Thought i'd be nice, talk or write with him about stuff.
Went to his github repo and opened up a few issues about certain design decisions and problems that he and I face because of our environment.
His reaction was mostly like "meh, doesn't matter, to individual, trivial, ...
I think he didn't even try to understand me or what I meant, or what that implies.
I don't know if I behaved like a dick, or if he is.😑
Just tried to be nice and Interact in a usefull way.
The recent USB C/ no headphone-jack rant inspired me a bit and I noticed that two USB C ports might be a solution for me in regards to the headphone debate.
I'd still need a dongle for my headphones, but I can still charge.
Maybe I could get a audiophile grade dongle make myself def, that be great.
It would also be kind of useful for other stuff, you can't have enough usb ports on any device.
And then I started looking into that topic.
WTF one plus! Why did you make my op 3T USB 2.0 in type C !!!????
I'm not that stupid though. I know there are reasons, but this just upsets me, 3.0 at least please!
What is missing for you that you could use your phone instead of a PC for the most workloads of use-cases?
For me it's two high speed usb C ports with display connect capabilities + periferals.
I currently think that it would be a great thing to move most Noob users off their pcs onto their smartphones for that purpose.1
ArmA 3, a great sandbox that I "wasted" a lot time scripting modding or, if you like to call it that: developing for.
A game so great, the Multiplayer-server-browser stores the amount of players on a server in an 8 bit integer.
Someone complaint a few years ago.
Response: " be happy, it were 4 bits not to long ago"
There were Servers who ran into that problem.
To clarify, that only affected the shown number, not the amount of players, at least not directly.
Who likes to be lonely in a multiplayer game.1