gaul's comments

gaul | 4 years ago

This is not a NOP; it explicitly clears the upper 32 bits of EDI since the compiler does not know that they are zero in this situation. If you change cc from an int to size_t (long on x86-64) the compiler will generate:

        mov     eax, OFFSET FLAT:.LC0
        cmp     rdi, 258
        ja      .L1
        mov     rax, QWORD PTR CSWTCH.1[0+rdi*8]
Note that in some cases the compiler can do this automatically via lifetime analysis but not in this freestanding example.

gaul | 5 years ago | on: The future of 32-bit Linux

The article mentions 32-bit Raspbian which is moving to 64-bit to better support the Raspberry Pi 4 with 8 GB of RAM. Both the RPi 3 and 4 have 64-bit support but earlier models, including the popular and still-on-sale Zero, do not support 64-bit. This platform will likely stick around for a long time; we need to continue to fix issues like this size_t/off_t one in s3fs:

https://github.com/s3fs-fuse/s3fs-fuse/pull/1039

gaul | 5 years ago | on: S3 Strong Consistency

Could you expand on this comment? s3fs uses multiple threads for uploading and populating readdir metadata via S3fsMultiCurl::MultiPerform. Earlier versions used curl_multi_perform which may have hidden some of the parallelism from you.

gaul | 5 years ago | on: S3 Strong Consistency

This is not expected behavior. An older version had pessimized locking which preventing concurrently adding a file to a directory and listing the directory simultaneously which is the most similar symptom. I recommend upgrading to the latest version, running with debug flags `-f -d -o curldbg`, and observing what's happening. Please open an issue at https://github.com/s3fs-fuse/s3fs-fuse/issues if your symptoms persist.

gaul | 5 years ago | on: Would you be willing to fund a Linux port to Apple Silicon?

I maintain mbpfan and have contributed to a few other Linux on Mac tools.

Linux on Mac is not worth the effort. I ran Ubuntu on a 2011 MacBook Air and now run Fedora on a 2014 MacBook Air. There were several papercuts even with these relatively open models where it took a while to get suspend, trackpad, fan, webcam, wifi, etc. working properly. You will need to use binary drivers for the latter two features and some strange EFI bootloader. It seems that newer MacBook compatibility is worse:

https://github.com/Dunedan/mbp-2016-linux

I use Debian on ThinkPad at work and plan to buy this or a Dell XPS for my next laptop.

gaul | 5 years ago | on: A better way to do remote presentations

Every talk should include a link to the slides at the beginning and end of the deck, preferably with a shortened URL. This allows live viewers random access but also improves recorded talks. I often want to evaluate the content of a talk to see if I should invest 30-60 minutes watching. This would also help users with accessibility needs.

gaul | 5 years ago | on: Backblaze B2 Cloud Storage Now Has S3 Compatible APIs

This changed in 1.86 and I updated the README as follows:

> random writes or appends to files require rewriting the entire object, optimized with multi-part upload copy

Now changing one bit means re-uploading 5 MB, the minimum S3 part size.

page 1