|
|
Subscribe / Log in / New account

Recently posted comments

Managing sysctl knobs with BPF

Posted Apr 10, 2019 3:00 UTC (Wed) by wahern (subscriber, #37304)
In reply to: Managing sysctl knobs with BPF by Cyberax
Parent article: Managing sysctl knobs with BPF

The BPF train left the station years ago, LSM is just another inevitable victim.

What I find interesting is that the traditional BSD sysctl interface uses integer constants. And while most distributions have disabled the sysctl syscall, AFAIU /proc/sys was and continues to be just another interface to the same underlying mechanism. Are newer knobs no longer exposed via the old syscall interface? I ask because the new BPF interface exposes string paths, which seems not just unwise but possibly unnecessary if there already exist fixed integer identifiers.


Managing sysctl knobs with BPF

Posted Apr 10, 2019 1:18 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
Parent article: Managing sysctl knobs with BPF

Please stop. Just stop.

BPF is already running amok and it's basically impossible to debug when it inevitably goes wrong. You want to limit containers? Work with existing LSM folks. If the existing LSMs are not enough then extend THEM.

Oh, I see. People think that LSM equals unusable SELinux and LSM multiplexing is still not a thing.


Managing sysctl knobs with BPF

Posted Apr 10, 2019 0:50 UTC (Wed) by pj (subscriber, #4506)
Parent article: Managing sysctl knobs with BPF

Obvious follow-on question: Can other LSM functionality be replaced with hooks for BPF programs? Are such things always better/more general/appropriate than LSMs?


Working with UTF-8 in the kernel

Posted Apr 10, 2019 0:50 UTC (Wed) by dvdeug (guest, #10998)
In reply to: Working with UTF-8 in the kernel by mirabilos
Parent article: Working with UTF-8 in the kernel

Citation needed. If you're talking about the Capital Eszett, it has been explicitly excluded from case-folding because it is non-standard. If the German speakers really wanted a change, given they are the only modern language group using it, it would change in all locales.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 10, 2019 0:13 UTC (Wed) by codewiz (subscriber, #63050)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by leromarinvit
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Often, click-tracking has nothing to do with "tracking users". Knowing the frequency of clicks is an essential signal for search result ranking, among other things. For sponsored links, clicks are used for billing customers, so you'd go a long way to avoid miscounting.

I'm a privacy advocate, but I don't see anything wrong with encrypting the url in response to user agents not honoring the ping attribute and stripping redirects.


Program names and "pollution"

Posted Apr 9, 2019 23:35 UTC (Tue) by karkhaz (subscriber, #99844)
In reply to: Program names and "pollution" by nix
Parent article: Program names and "pollution"

You joke, but I'm pretty sure that Android did something similar to the delay thing...but I don't remember the details, maybe somebody else can furnish them. My recollection is that they wanted to force application developers to link against a new incompatible version of some library (maybe libc/bionic?). So they added a startup delay (I guess to _start() or something) and increased the delay every few weeks until the users noticed.


Program names and "pollution"

Posted Apr 9, 2019 22:54 UTC (Tue) by flussence (guest, #85566)
In reply to: Program names and "pollution" by zdzichu
Parent article: Program names and "pollution"

Why not both? And to keep things interesting, have them both implement similar functionality, but differ in behaviour just enough to have one completely break when used outside of a completely default setup.

/me glares in pulseaudio's general direction...


Program names and "pollution"

Posted Apr 9, 2019 22:43 UTC (Tue) by flussence (guest, #85566)
In reply to: Program names and "pollution" by buck
Parent article: Program names and "pollution"

daemontools and its lineage traditionally have a (cheerfully FHS-ignoring) "/command/" directory for exactly this reason. The idea is service supervisor processes get started with this in their PATH, containing all the service helper binaries (things like start-stop-daemon might be at home in there), and then the services and user sessions under them are run with /etc/profile's PATH as usual, so as to not pollute their namespace.

The choice of directory location is unfortunately vague and didn't age well, but at least it's an attempt.


The Debian project leader election

Posted Apr 9, 2019 20:55 UTC (Tue) by flussence (guest, #85566)
In reply to: The Debian project leader election by Kamilion
Parent article: The Debian project leader election

>The crowd of older folks using older hardware's being pushed away with the dropping of 32bit support, SSE2 in glibc forcing distros hands to some degree, and generally making maintenance difficult.

A hard SSE2 requirement in glibc would be the fault of whoever built it. The library can still work fine on CPUs as low as i586 (Geode and similar) — I don't think there are any plans to break Linux userspace on a whole line of fairly popular coreboot-supporting routers.

And if that day actually comes, musl is in pretty good shape already…


Program names and "pollution"

Posted Apr 9, 2019 20:11 UTC (Tue) by mirabilos (subscriber, #84359)
Parent article: Program names and "pollution"

There’s always 「dpkg -S $(which programname)」 if you need to figure out where a utility comes from…


Rethinking race-free process signaling

Posted Apr 9, 2019 19:50 UTC (Tue) by roc (subscriber, #30627)
In reply to: Rethinking race-free process signaling by quotemstr
Parent article: Rethinking race-free process signaling

Applications that launch a securely sandboxed child process need to do this in the child process before they exec. Leaking a file descriptor across the sandbox boundary would be devastating.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 19:43 UTC (Tue) by roc (subscriber, #30627)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by NAR
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

There is huge inertia, but code gets rewritten over time for various reasons, new sites or new versions of sites are deployed, etc.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 19:40 UTC (Tue) by flussence (guest, #85566)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by roc
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

My bad. I misread it as Google doing the worst imaginable thing (turning it *off*, so everyone continues to use JS tracking), but my imagination's clearly lacking.


How to (not) fix a security flaw

Posted Apr 9, 2019 19:29 UTC (Tue) by Yenya (subscriber, #52846)
In reply to: How to (not) fix a security flaw by tao
Parent article: How to (not) fix a security flaw

Sorry, I don't buy into this kind of newspeak. Either races do not exist, and so does racism, or they do, and racism has to be about races and nothing else.

That said, rmayr above is right, this is not a technical discussion, so I will stop here.

On the other hand, sml, I do not consider myself being a troll - the above statements are not intendent to provoke a flame war or anything, these are my genunie opinions. I am sorry if they do not match your narrow view of the universe.


Working with UTF-8 in the kernel

Posted Apr 9, 2019 18:30 UTC (Tue) by mirabilos (subscriber, #84359)
In reply to: Working with UTF-8 in the kernel by dvdeug
Parent article: Working with UTF-8 in the kernel

Except it doesn’t, any more, in German.


Rethinking race-free process signaling

Posted Apr 9, 2019 17:42 UTC (Tue) by rweikusat2 (subscriber, #117920)
In reply to: Rethinking race-free process signaling by nix
Parent article: Rethinking race-free process signaling

Signals don't cause "horrible bugs when innocent functions like malloc are being called". Broken code for handling signals might. As I already wrote: A signal handler must not call a function which isn't async signal safe it it interrupted another unsafe function. That's easy enough to guarantee (see other postings),

In the presence of signals, all functions defined by this volume of POSIX.1-2017 shall behave as defined when called from or interrupted by a signal-catching function, with the exception that when a signal interrupts an unsafe function or equivalent (such as the processing equivalent to exit() performed after a return from the initial call to main()) and the signal-catching function calls an unsafe function, the behavior is undefined.
That's part of section 2.4.3 of the following page:

http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04

The three usual approaches would be

  1. call only safe functions from signal handlers (eg, by using a pipe to notify an event loop of a signal)
  2. keep signals blocked unless a safe function is being executed (what I described)
  3. keep signals blocked and dequeue them synchronously via sigwait and friends
A UNIX signal is nothing but a level-triggered interrupt emulated in software. A lot of hardware (eg, PCI hardware) has used this model for event notification for an eternity and it's perfectly workable.

IMHO, thread cancellation is a braindead misfeature but that's a completely different discussion.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 16:56 UTC (Tue) by leromarinvit (subscriber, #56850)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by alonz
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

As someone who has to deal with such shite as a user, this is the reason the web sucks.

No offense meant against you personally, but the fact that people/companies feel the need to do such shady things is an indicator of a very sorry state of affairs.


Rethinking race-free process signaling

Posted Apr 9, 2019 16:39 UTC (Tue) by quotemstr (subscriber, #45331)
In reply to: Rethinking race-free process signaling by nix
Parent article: Rethinking race-free process signaling

> fds ('loop over lots of fds, close() them all, and hope you got them all' is still a thing a huge number of processes do),

I have zero qualms about breaking programs that are so obviously broken themselves. You don't free resources you didn't create: that's a rule for any system, not just unix. Just no. Let's no enable programs that break this rule.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 16:13 UTC (Tue) by micka (subscriber, #38720)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by nivedita76
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

You don't really need a "filter bubble" to have good search result. I'd even say you probably have better results overall without one.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 15:41 UTC (Tue) by nivedita76 (subscriber, #121790)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by brunowolff
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Doesn't Google also use this to improve search results, by determining which result was the one you actually wanted? Removing that information from them seems sub-optimal if you want good search results.


Working with UTF-8 in the kernel

Posted Apr 9, 2019 15:35 UTC (Tue) by foom (subscriber, #14868)
In reply to: Working with UTF-8 in the kernel by dvdeug
Parent article: Working with UTF-8 in the kernel

NTFS and exFAT only maps a single utf16 code unit to another single utf16 code unit, via a lookup table written to disk during filesystem creation. No unicode normalization, no multicharacter equivalencies, and no folding for any characters above FFFF.

You say that other cases "have to be dealt with"...but we have widely used examples showing that to not actually be the case.


They still ping google searches in Firefox

Posted Apr 9, 2019 15:22 UTC (Tue) by scientes (guest, #83068)
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

For Firefox user-agents, these still use javascipt to re-write urls when you click on them to go to https://www.google.com/url first, which then 403s you. If you use a user-agent that google doesn't think supports javascirpt, then the urls are this way by default (they only do the javascript trick so that the tooltip works).

If you spoof a chrome user-agent though, then don't send you the evil google redirect, which means you can copy urls no problem.

However, with a chrome user-agent youtube won't work anymore, because it will use chrome-specific extensions:

https://fossbytes.com/google-accused-of-sabotaging-micros...


Program names and "pollution"

Posted Apr 9, 2019 15:16 UTC (Tue) by nix (subscriber, #2304)
In reply to: Program names and "pollution" by k8to
Parent article: Program names and "pollution"

Hm, you could deprecate gracefully by producing a non-interruptible animation of a steam locomotive every time someone types the old names? :P :P


Rethinking race-free process signaling

Posted Apr 9, 2019 15:12 UTC (Tue) by nix (subscriber, #2304)
In reply to: Rethinking race-free process signaling by jkowalski
Parent article: Rethinking race-free process signaling

You can use pidfd for reaping, but can you use it for waitpid() in particular? ptrace() results are not only thread-directed but also only defined in terms of waitpid() output: most of the other wait-a-likes will not suffice (e.g. waitid() throws too much information away).

(If pidfds also wake you up when non-termination waitpid() results would be returned iff you did a waitpid(.., WNOHANG), then they do seem like a complete replacement for waitfd, which is great because it means I can drop another annoying invasive patch!)

btw, this does mean that you'd need to be able to get a pidfd not only at clone time but also at PTRACE_SEIZE time, or tracers could never get hold of a useful pidfd at all...


Rethinking race-free process signaling

Posted Apr 9, 2019 15:08 UTC (Tue) by nix (subscriber, #2304)
In reply to: Rethinking race-free process signaling by rweikusat2
Parent article: Rethinking race-free process signaling

No, a 'general purpose library' is any library which does not know what its caller is and what its caller expects in regard to process-global or thread-global attributes like the file descriptor table or signal dispositions. This includes most if not all core free software libraries. In particular it includes things like glibc, which cannot do a lot of things in the most obvious way because callers expect to have complete control over signals (except for a tiny set which glibc has reserved *forever* so can keep hold of without breaking existing users) and fds ('loop over lots of fds, close() them all, and hope you got them all' is still a thing a huge number of processes do), and processes, and threads... which makes it more or less impossible for glibc to do anything asynchronous without madness like the shared memory regions used by nscd (which have caused bugs in the past due to programs thinking they can MAP_FIXED in the same place and screaming when they couldn't). I do wonder how many programs the gai_*() APIs, which use threads, have broken -- probably not many since those APIs are Linux-specific and not terribly popular.


Rethinking race-free process signaling

Posted Apr 9, 2019 15:04 UTC (Tue) by nix (subscriber, #2304)
In reply to: Rethinking race-free process signaling by Cyberax
Parent article: Rethinking race-free process signaling

Let's make it really fun: asynchronous signals and asynchronous cancellation handlers, because having one horrible source of bugs that trigger very rarely when innocent functions like malloc() are called anywhere in the call stack was not enough, so they added another! (Unfortunately asynchronous cancellation handlers *are* used, as Debian code search makes clear, so libc authors have to go through hell making them work right: this is distinct from, say, seekdir(), which appears to be basically unused, with all the codesearch hits being wrappers or parts of the implementation.)


Making slab-allocated objects movable

Posted Apr 9, 2019 14:21 UTC (Tue) by Paf (subscriber, #91811)
In reply to: Making slab-allocated objects movable by ikm
Parent article: Making slab-allocated objects movable

Reading through the associated email chain, Al makes *very* clear he views dentries and inodes as entirely unrelocatable. As a file system developer, I am inclined to agree. It would be quite difficult to put the necessary hooks to relocate these things in to any complex FS, especially when considering the VFS layer accesses that can happen in parallel. Freeing them is pretty tough too, but we’ve got that working because there’s no choice. Adding another complex thing like that doesn’t feel fun or especially worth it...


Rethinking race-free process signaling

Posted Apr 9, 2019 14:21 UTC (Tue) by rweikusat2 (subscriber, #117920)
In reply to: Rethinking race-free process signaling by Cyberax
Parent article: Rethinking race-free process signaling

Different topic.

"A general purpose library", IOW, some random, binary only code with undefined behaviour (in the sense that no specific behaviour is ever defined when this 'argument' shows up) is a situation which cannot be handled.


Rethinking race-free process signaling

Posted Apr 9, 2019 14:18 UTC (Tue) by rweikusat2 (subscriber, #117920)
In reply to: Rethinking race-free process signaling by Cyberax
Parent article: Rethinking race-free process signaling

Feel free to prove my wrong instead of making (wrong) blanket assertion based on not knowing how to handle something I didn't explicitly mention. Eg, describe specific problem situation. The model I described maps naturally to multithreaded processes as well, it just needs to be applied to all threads --- they either block signals which are supposed to be handled or block inside a multiplexing call which atomically unblocks said signals. There's nothing special about realtime signals beyond that they can be queued and that it's possible to send some data alongside a signal.

With Linux, one can even build programs which are entirely signal-driven by using realtime signals for I/O readiness notification (see fcntl(2)) and sigwaitinfo instead of one of the file descriptor based I/O multiplexing calls. I've used that once for a moderately complex Perl program (about 25 kloc) because it was the easiest to use in this environment.


Schaller: Preparing for Fedora Workstation 30

Posted Apr 9, 2019 13:23 UTC (Tue) by micka (subscriber, #38720)
In reply to: Schaller: Preparing for Fedora Workstation 30 by jezuch
Parent article: Schaller: Preparing for Fedora Workstation 30

I've tried hard at the beginning of the year. From the top of my head, the more stressful ones were
- lack of middle click paste
- copy paste issues between xwayland apps and Wayland one, but I don't remember which way (maybe both ways)
- lack of a way to tell "this screen is the primary one" in dual screen context


How to (not) fix a security flaw

Posted Apr 9, 2019 13:17 UTC (Tue) by tao (subscriber, #17563)
In reply to: How to (not) fix a security flaw by Yenya
Parent article: How to (not) fix a security flaw

Considering that races are a social construct, rather than something biological, by your reasoning there's no such thing as racism.
To help you: in common parlance racism means discrimination or prejudice based on colour of skin, ethnicity, or region of origin.


Schaller: Preparing for Fedora Workstation 30

Posted Apr 9, 2019 11:38 UTC (Tue) by jezuch (subscriber, #52988)
In reply to: Schaller: Preparing for Fedora Workstation 30 by jem
Parent article: Schaller: Preparing for Fedora Workstation 30

OK, so it seems it's possible to make it work. I haven't really investigated the issue(s) besides some basic googling, just every time I tried to switch my KDE on Debian[1] to Wayland I basically got an unusable desktop. Unusable as in there was no window manager at all? So I don't know if Debian is doing something wrong or I'm just clueless :)

[1] It's supposed to be a matter of just installing specific packages. But maybe not? I don't know!


The return of the lockdown patches

Posted Apr 9, 2019 11:18 UTC (Tue) by mjthayer (guest, #39183)
In reply to: The return of the lockdown patches by thestinger
Parent article: The return of the lockdown patches

Actually I seem to recall that Matthew's original motivation with secure boot was preventing evil maid attacks, for which lockdown should not even be relevant - secure boot merely closed a vector for changing the system without authenticating. I would be quite interested in the use cases for kernel lockdown without user-space lockdown (I can see clear use cases for doing both together).


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 9:21 UTC (Tue) by NAR (subscriber, #1313)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by roc
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

some sites would stop implementing the redirect workaround,

I'm not sure how significant this would be. There's probably a huge inertia here, either in the "this is how it's usually done" form or in actual web frameworks. The frameworks need to be updated, the actual instances need to be upgraded, etc. before we see any of this.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 8:06 UTC (Tue) by alonz (subscriber, #815)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by MarcB
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

As someone who has actually implemented a click-tracking solution — it is relatively common practice to encrypt the real target URL, so the link you get from the original site only includes an opaque blob, and only the click-tracking redirector can decode and decrypt it.


Making slab-allocated objects movable

Posted Apr 9, 2019 7:17 UTC (Tue) by matthias (subscriber, #94967)
In reply to: Making slab-allocated objects movable by ikm
Parent article: Making slab-allocated objects movable

Maybe the intended meaning really is: "I need some space, please free these objects. If you cannot, then at least move them out of my view."

These functions will typically be called under memory pressure. Then reallocation cost can be quite high. Also, it should be easy to change the implementation in the future. It does not belong to the userspace interface. If one wants to implement a complete defrag at some time in the future, this should probably be changed. However, I do not really see a reason for a full defrag here. All objects in the dentry cache have the same size, so newly allocated entries can always go into existing holes.


How to (not) fix a security flaw

Posted Apr 9, 2019 4:54 UTC (Tue) by sml (guest, #75391)
In reply to: How to (not) fix a security flaw by rmayr
Parent article: How to (not) fix a security flaw

Yenya is known for disingenuous trolling along these lines[0] on LWN.

Reminder that comment filtering is available from your LWN account page.

[0] https://lwn.net/Articles/766080/


Schaller: Preparing for Fedora Workstation 30

Posted Apr 9, 2019 4:36 UTC (Tue) by jem (subscriber, #24231)
In reply to: Schaller: Preparing for Fedora Workstation 30 by Conan_Kudo
Parent article: Schaller: Preparing for Fedora Workstation 30

I have used KDE Plasma / Wayland for a long time and it has worked flawlessly. Maybe I haven't stressed it enough? I'm interested in what kind of problems people are running into, apart from "by design" issues like screen sharing. I'm running Arch Linux on machines with Intel graphics.


Schaller: Preparing for Fedora Workstation 30

Posted Apr 9, 2019 4:23 UTC (Tue) by gdt (subscriber, #6284)
In reply to: Schaller: Preparing for Fedora Workstation 30 by mageta
Parent article: Schaller: Preparing for Fedora Workstation 30

I'd be cautious about inferring from one large company's experience across all companies. As a counterpoint, I work in the university sector and I repeatedly see Zoom driving all the other videoconferencing solutions before it. But that sector plays to Zoom's strengths, so I wouldn't infer too widely from my experience either.


Rethinking race-free process signaling

Posted Apr 9, 2019 3:54 UTC (Tue) by quotemstr (subscriber, #45331)
In reply to: Rethinking race-free process signaling by jkowalski
Parent article: Rethinking race-free process signaling

For the moment, Linus seems to be of the opinion that pidfd_open would be redundant. I can't say I disagree.


Rethinking race-free process signaling

Posted Apr 9, 2019 3:52 UTC (Tue) by quotemstr (subscriber, #45331)
In reply to: Rethinking race-free process signaling by nix
Parent article: Rethinking race-free process signaling

That work is underway. I'm *very* interested in pollable processes. :-)


How to (not) fix a security flaw

Posted Apr 9, 2019 3:14 UTC (Tue) by rmayr (subscriber, #16880)
In reply to: How to (not) fix a security flaw by Yenya
Parent article: How to (not) fix a security flaw

I feel that this discussion doesn't help readers who come to lwn.net for technical content. Can we please stop it?


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 2:17 UTC (Tue) by roc (subscriber, #30627)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by flussence
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

What are you talking about? Firefox currently disables <a ping> by default.


Program names and "pollution"

Posted Apr 9, 2019 1:40 UTC (Tue) by k8to (guest, #15413)
In reply to: Program names and "pollution" by rossmohax
Parent article: Program names and "pollution"

This is an entertaining idea. My practical perspective is as a user I would not be entertained to debug this.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 9, 2019 1:38 UTC (Tue) by flussence (guest, #85566)
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Chrome's falling in line behind Firefox for a change.

Unfortunately, the change is to make privacy worse for everyone in the same way Microsoft sending DNT by default did.


Working with UTF-8 in the kernel

Posted Apr 8, 2019 23:30 UTC (Mon) by dvdeug (guest, #10998)
In reply to: Working with UTF-8 in the kernel by foom
Parent article: Working with UTF-8 in the kernel

What rules do they use?

In what way are the Unicode case-folding rules rather complex? They are for the most part fairly simple, one to one matchings of characters, with a few exceptions that you just have to deal with. The German ß and the various titlecase characters in Unicode are there and are going to have to be dealt with.


Rethinking race-free process signaling

Posted Apr 8, 2019 22:39 UTC (Mon) by roc (subscriber, #30627)
In reply to: Rethinking race-free process signaling by rweikusat2
Parent article: Rethinking race-free process signaling

Also, even when you can cobble together reliable signal handling out of the available APIs --- the APIs still suck. I just don't think it needs to be this hard.


Rethinking race-free process signaling

Posted Apr 8, 2019 22:23 UTC (Mon) by roc (subscriber, #30627)
In reply to: Rethinking race-free process signaling by rweikusat2
Parent article: Rethinking race-free process signaling

I like that approach, but it doesn't solve all the problems with signals:

Sometimes it's a problem to delay all signal handling until you return to the event loop; sometimes you really want signal handlers to be able to run during some long synchronous operation.

It doesn't solve the signal coalescing problem at all, making the data in siginfo impossible to use reliably in many situations.

It doesn't solve the problem that there are a finite and rather small set of signals available and you basically have to allocate them statically with no protocol for avoiding or handling conflicting uses of a signal.


Rethinking race-free process signaling

Posted Apr 8, 2019 22:08 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
In reply to: Rethinking race-free process signaling by rweikusat2
Parent article: Rethinking race-free process signaling

> Problem solved
Nope. And you haven't even gotten to the interesting stuff - multithreading and realtime signals.

Signals are basically impossible to use correctly.


Rethinking race-free process signaling

Posted Apr 8, 2019 22:04 UTC (Mon) by rweikusat2 (subscriber, #117920)
In reply to: Rethinking race-free process signaling by roc
Parent article: Rethinking race-free process signaling

This long rant can really be condensed down to "I have no friggin' clue and don't care!".

There's only one case where the behaviour of POSIX calls is undefined wrt signals: If a signal handler which interruped an unsafe function calls an unsafe function. The I/O-multiplexing calls are async signal safe, hence, the usually sensible way to marry signal handling and an I/O multiplexing loop is to block all handled signals, install signal handlers for them and then use pselect/ ppoll/ epoll_pwait to unblock handled signals only while the code is waiting for I/O. Signal handlers are then free to call whatever function they want as the sole interrupted function will be async signal safe. And the only function which can terminate with an EINTR condition will be the multiplexing call. Problem solved[*].

[*] Signals mask are inherited, hence, code creating new process has to deal with that. Just like it has to deal with all other inheritable things. BFD.


Rethinking race-free process signaling

Posted Apr 8, 2019 22:03 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
In reply to: Rethinking race-free process signaling by rweikusat2
Parent article: Rethinking race-free process signaling

The problem is not in pidfiles. It's the whole process management thingie, that is impossible to use safely in many cases.

For example, a general-purpose library can't even do something as simple as create a process and wait for it to finish. This is just ridiculous.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 21:56 UTC (Mon) by roc (subscriber, #30627)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by brunowolff
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

> Whether it's too annoying to have on by default depends on the mix of sites one typically visits.

It is arrogant to demand that Mozilla set Firefox default preferences to suit the needs of the incredibly rare user who blocks redirects.

> Mozilla does some things with the design of Firefox that do not maximalize privacy. There may be other reasons they do that, but it is reasonable to conclude that it is likely Google's money influences those decisions.

That's not reasonable at all, given that there are many things Google would like (or would have liked) Mozilla to do that Mozilla doesn't do (e.g. adopt Chromium, abandon Tracking Protection, support PNaCl). You have no evidence that something nefarious is going on and apparently expect Mozilla to somehow prove the complete absence of such influence. If you want Mozilla to turn down Google money on principle and go broke "for the good of the Web", then you are misguided because that wouldn't be good for the Web at all.

Honestly I don't think your position is rational at all. If Firefox shipped ping by default you'd disable it, sites would use it, you could easily see which sites and links are trying to use it, and you'd deal with less Web breakage because you would have to do less blocking of redirects. What's not to like?


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 21:56 UTC (Mon) by MarcB (guest, #101804)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by bokr
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Ping is in no way automatic. The link needs to be clicked. Javascript in mails is virtually never enabled.

So what would change with ping in mails or forums is precisely...nothing.

Redirects in mails are a "best-practice" for quite some time, for various reasons. Professional ESP add them, because interaction with those links is a valuable indicator if the sending customer is clean (low interactions indicated that the mails are unwanted). Additionally it is a marketing analytics tool they can sell.

Phishing uses redirects as well, because the indirection can delay take-downs or slow down recognition by spam filters if multiple domains are used.


Rethinking race-free process signaling

Posted Apr 8, 2019 21:51 UTC (Mon) by rweikusat2 (subscriber, #117920)
In reply to: Rethinking race-free process signaling by Cyberax
Parent article: Rethinking race-free process signaling

I don't know where the "pid files" etc hacks originated from but they aren't inherently associated with UNIX process management, just with some people's stubborn refusal to use that properly.


Working with UTF-8 in the kernel

Posted Apr 8, 2019 21:49 UTC (Mon) by foom (subscriber, #14868)
In reply to: Working with UTF-8 in the kernel by cpitrat
Parent article: Working with UTF-8 in the kernel

I don't know.

It does seem rather incongruous to me to justify the feature via by pointing to samba's emulation of NTFS case folding, and Android's emulation of FAT file name lookup rules, but then implementing unicode normalization and correct unicode case folding...which those don't do.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 21:23 UTC (Mon) by brunowolff (guest, #71160)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by roc
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

I'll give you most people won't notice. I did notice when Google started doing it. I notice when duck duck go does it. (The latter is affected by the link used to do the search.)

Lot's of sites work with redirects blocked. Whether it's too annoying to have on by default depends on the mix of sites one typically visits.

Google gives Mozilla money. Google is very interested in being able to track what people do on the web. Mozilla does some things with the design of Firefox that do not maximalize privacy. There may be other reasons they do that, but it is reasonable to conclude that it is likely Google's money influences those decisions.

I usually don't send a UA (it's officially an optional header), but pretending to be using a browser that doesn't allow disabling ping while actually disabling ping might be an easy way to avoid most link tracking. But that assumes the web site cares more about how the user preceives performance than being able to be able to track people, since the clients can't be trusted to honor ping, no matter what browser they claim to be.


Working with UTF-8 in the kernel

Posted Apr 8, 2019 21:18 UTC (Mon) by foom (subscriber, #14868)
In reply to: Working with UTF-8 in the kernel by dvdeug
Parent article: Working with UTF-8 in the kernel

> Fortunately, there are rules for locale-insensitive case-folding, and they aren't random or arbitrary.

That may be, but FAT, exFAT, and NTFS don't use the unicode case folding rules. If the justification is to make something compatible with those systems, do we actually need the (rather complex) unicode rules?


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 21:07 UTC (Mon) by brunowolff (guest, #71160)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by MarcB
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

I actually noticed when Google started doing that. On the few occasions I use them, I usually copy and paste the real links and edit them to keep google from getting a log of which links I used.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 21:02 UTC (Mon) by bokr (guest, #58369)
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

I am wondering what gui email readers do with ping= -- e.g. Thunderbird, which being
from Mozilla presumably is careful about html rendering in preview formats etc.

lynx presumably doesn't do js or images unless specifically extended and configured to do so,
and likewise mutt and emacs M-x eww, but who is keeping an eye out so it doesn't get snuck in somehow?

If it did get snuck in, how much damage could happen before it became a CVE and got corrected?

The question is what can <your idea of bad guys> do if they can insert involuntary action triggers
like ping= into email streams or html streams passing through their computers.

Ransom notes that you can't help acknowledging that your browser or gui email reader has seen? Nice ;-/

To get bad stuff to your html renderer, maybe more simply than owning the computers, buying an ad slot
and preparing html ad material for automatic insertion -- I have seen lots of ads injected locally by isps even
as I browse a foreign web site, and guess the local isp is getting paid by the advertiser to insert their stuff.
(idk how all that is arranged, and who sanitizes what, and who determines the final hrml my browser sees).

BTW, what would LWN do if I posted this post in HTML mode and included a ping= ? Could I do my own analytics
on the reading of my post? ;-)


VMware Suit Concludes in Germany

Posted Apr 8, 2019 20:56 UTC (Mon) by bkuhn (subscriber, #58642)
Parent article: VMware Suit Concludes in Germany

A few comments on various parts of this thread:

  • A lot more evidence than mere git blame was provided to the Court. Conservancy assisted Hellwig with this detailed analysis (which I did most of) and Hellwig included his own detailed analysis, too. Our understanding is the Court simply chose not to examine this evidence in detail, nor did they appoint an expert (not like experts in the USA system, more like a Special Master in the USA — an expert who works for the Court to help them understand the sisues), even though both sides wanted one appointed. This was an odd decision and was surely a factor in why the Court erred in their understanding of Hellwig's copyrights.
  • While this is obviously not an ideal ruling, the action has compeled VMware to comply — the only “loss” is they are not doing so in a reasonable timeframe, and it would have admittedly been nicer if the Court compeled celerity in those compliance efforts.
  • Either way, no precedent is set, as others mentioned. Germany isn't a common law legal system. The ultimate goal here was never to set precedent, but to compel VMware to DTRT and follow the requirements and terms of the GPL.
  • This case was much different than typical GPL violations on Linux, because VMware took only part of Linux to combine with their vmkernel; so fewer Linux copyrights were infringed than is typical in violations (and thus a fewer number of copyright holders were even able to bring an action). Much of the code in this subset that VMware misappropriated was not held by individuals, but companies. (Hellwig was smart to be sure to keep his own copyrights.) Red Hat (whom folks mentioned extensively in this thread) was indeed a large copyright holder in the copyrighted material VMware misapproriated, and Red Hat could have been a big help in this case but declined to assist (as did other copyright holders we asked).
  • Ultimately litigation is expensive and unpredictable, but is necessary in those last resort cases where companies are boldly refusing to follow the terms of the GPL. If no one ever sues over GPL violations, bad actors have no reason to comply, and that unfairly punishes the good actors who comply willingly and give up the opportunity for proprietary competitive advantages. Every historical attempt to protect communities from companies via litigation has faced losses, wins, and everything in between before they ultimately succeeeded. Software freedom via copyleft is a long strategy that requires careful, long-term work; no one expects one single lawsuit will decide everything about copyleft. Any single violation matter is just a step toward software freedom for users. In my view, only a community-oriented organization that puts user freedom first can take these steps; companies, even if they're generally friendly to FOSS will always prioritize their business interests over social good.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 20:53 UTC (Mon) by MarcB (guest, #101804)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by mathstuf
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Yes, that is often possible, but it is site-specific, could break at any time and could be made impossible if the site really wanted to (just use an ID that needs to be resolved server-side instead of the actual target in the redirect URL).

Any such extension could also be written for the ping attribute and would be complete site-agnostic, simpler and robuster.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 20:47 UTC (Mon) by MarcB (guest, #101804)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by brunowolff
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Modern tracking via redirects is not easily visible (see google.com), unless you disable Javascript. But users doing that might simply use the semi-hidden feature to disable ping.

The cost to the site operator is actually identical for redirects and ping. However, for the user, pings are cheaper, because the ping and the request to the link target can be done simultaneously while for redirects the client needs to wait for the first response to know the real target. Add to that the cost of the Javascript. Add to that the issue of broken link copying.

I doubt disabling redirects in general is actually feasible. Redirects are a core concept of HTTP and disabling them would break countless legitimate use cases (asking for permission would be quite annoying).


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 20:42 UTC (Mon) by mathstuf (subscriber, #69389)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by MarcB
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

There are extensions that remove that crap. Works on Reddit and many other sites which inject such things. Link following shortcut extensions also usually evade this problem.


Rethinking race-free process signaling

Posted Apr 8, 2019 20:41 UTC (Mon) by jkowalski (guest, #131304)
In reply to: Rethinking race-free process signaling by nix
Parent article: Rethinking race-free process signaling

There were plans of making the non-proc pidfds pollable and readable, but if you go with /proc descriptors you need to implement all of that over the dir fd's file ops.

That's not very problematic (from an API perspective it is very weird, but not internally), but my idea was pidfd_open could take some wait flags as waitfd did (and check if you're one of parent or real_parent, and only return a readable descriptor), among other things, and that intent cannot be described easily when opening a directory in /proc. This means everyone can poll but perhaps only parents (real or tracing) would be able to open a readable instance.

I can only hope this is taken into consideration (I raised this exact problem as I ran into it as well), and /proc descriptor stuff be removed, as it brings more problems for future extensions.

You could ofcourse resurrect a waitfd too, again, but I see no point when you could return a pollable/readable descriptor from clone and pidfd_open (and possibly even disable termination signals and autoreap them - the whole act of waiting is asynchronous). It also has a nice touch of consistency to it (and the fact that resources in a different namespace suddenly aren't addressable and can be taken a reference to from a different namespace - the filesystem), in that sense pidfd_open isn't very different from open, but it works like open only on PIDs you can *see* (unlike /proc, which is leaky across shared mount namespaces but separate PID namespaces).


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 20:32 UTC (Mon) by roc (subscriber, #30627)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by brunowolff
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

> It makes it less obvious that link tracking is going on.

It's actually the opposite situation. It's impossible for users to distinguish tracking redirects from other kinds of redirects, if they notice the redirect at all. On the other hand, with "ping" a single line of user CSS (e.g. delivered by a browser extension) will show you which links are tracked --- before you click on them:

a[ping]::before { content: "(tracked) "; }

> Forcing redirects on the service, makes them pay more for tracking (to handle more requests or to proxy requests) which discourages tracking.

Using redirects or "ping", the site has to handle the same number of requests. There is almost no difference in server work required. There is no evidence disabling "ping" discourages tracking in practice.

> It also makes it more obvious to the user if they have redirects blocked or needing approval.

Essentially nobody blocks redirects. Redirects are used for many things, many of which are essential to the function of sites (e.g. OAuth), so blocking them breaks the Web. "ping" on the other hand is a much narrower feature which makes far more sense to block.

> Mozilla doesn't do the right things because they get a lot of money from a company that wants tracking to be easier.

As someone who worked there for a long time but doesn't now: this is just not true. You don't have any evidence for such a connection, and you are just making stuff up.

> Arguably ping shouldn't have been implemented at all, because almost all sites that want that information don't want to let people opt out of it, so need to do it server side instead of client side anyway, leaving very few users of the feature.

That may have been true up to now, but now that Safari and Chrome prevent disabling "ping" I expect sites to use UA-sniffing to use "ping" instead of redirects for those browsers ... leaving Firefox users with a worse user experience for no privacy benefit.


Working with UTF-8 in the kernel

Posted Apr 8, 2019 20:30 UTC (Mon) by dvdeug (guest, #10998)
In reply to: Working with UTF-8 in the kernel by hkario
Parent article: Working with UTF-8 in the kernel

That's not an exception. In all locales, ß uppercases to SS.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 20:25 UTC (Mon) by MarcB (guest, #101804)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by rc
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

TL;DR actually is: Hopefully Firefox will also make disabling this hard so that anyone who feels the need to do this kind of tracking can rely on ping.

Otherwise they will just continue to do tracking via redirects (and then, optionally, hide the redirects again via Javascript) and get *exactly* the same information.

As a demonstration of this, visit google.com and search for "lwn".

Then admire the nice, first link seemingly pointing to https://lwn.net.

Then use the "copy link to clipboard" function and paste it in the address bar.

Then realize, that the link actually is https://www.google.com/url?sa=t&rct=j&q=&esrc... (will likely vary).

Then ask yourself what "ping" would make worse (I can tell you what it would improve: Copying links would work again).


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 20:10 UTC (Mon) by brunowolff (guest, #71160)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by roc
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

I disagree that enabling "ping" by default is a good feature. It makes it less obvious that link tracking is going on. Forcing redirects on the service, makes them pay more for tracking (to handle more requests or to proxy requests) which discourages tracking. It also makes it more obvious to the user if they have redirects blocked or needing approval.

Mozilla doesn't do the right things because they get a lot of money from a company that wants tracking to be easier.

Arguably ping shouldn't have been implemented at all, because almost all sites that want that information don't want to let people opt out of it, so need to do it server side instead of client side anyway, leaving very few users of the feature.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 20:06 UTC (Mon) by nilsmeyer (guest, #122604)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by roc
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

I currently use a plugin that extracts the original URL from those redirect links (if possible). This could be made a lot simpler if it could simply strip the "ping" attribute.


Rethinking race-free process signaling

Posted Apr 8, 2019 20:04 UTC (Mon) by nix (subscriber, #2304)
In reply to: Rethinking race-free process signaling by roc
Parent article: Rethinking race-free process signaling

My thoughts exactly. The terminal API is pretty appalling, too, though it's marginally less appalling now that the old ioctl interface to it is thankfully reduced. Even OS/2's Vio*() was cleaner...


Rethinking race-free process signaling

Posted Apr 8, 2019 19:59 UTC (Mon) by nix (subscriber, #2304)
In reply to: Rethinking race-free process signaling by roc
Parent article: Rethinking race-free process signaling

It is also desirable to be able to have a poll()able equivalent to waitpid() for ptracers so that one thread can ptrace things on behalf of other threads and/or processes, polling on fds that represent the processes being waited on and also on fds that represent ordinary pipes or something like that, that are used to transmit requests that the ptracer should fulfill. The waitfd() patches from Casey Dahlin at RH that would have allowed that were shot down many years ago on the grounds that you could always do what waitfd() did by creating another thread and waitpid()ing from that, and doing the poll and waitpid in separate threads.

I revived and unbroke them as part of DTrace for Linux (see e.g. https://oss.oracle.com/git/gitweb.cgi?p=dtrace-linux-kern...) because this argument only applies to process-directed waitpid() results: ptrace() is thread-directed, so if you kick off a new thread to handle the requests from other threads it cannot see any of the waitpid() results, and the thread that can see the waitpid() results isn't able to poll on the requests because it's too busy doing a waitpid() :( you'd have to busywait, or poll with pauses, and thus add huge latencies to signal handling in all your traced children: no thanks.


Rethinking race-free process signaling

Posted Apr 8, 2019 19:55 UTC (Mon) by roc (subscriber, #30627)
In reply to: Rethinking race-free process signaling by Cyberax
Parent article: Rethinking race-free process signaling

I heartily agree.

Though there are some other nasty areas of kernel API that might be worse than process management. Signals themselves, for example. https://ldpreload.com/blog/signalfd-is-useless


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 19:51 UTC (Mon) by roc (subscriber, #30627)
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

"ping" is actually a good feature and Firefox should enable it by default.

In practice, having it disabled does not improve anyone's privacy. Web sites still track link clicks; they just change the link to point to a URL on their own server which redirects to the actual destination. This is slower and more user-unfriendly than "ping" (e.g. it breaks "copy link URL to clipboard"). We rightly decry "security theatre"; disabling ping is privacy theatre.

In fact, enabling "ping" by default (but some browsers still allowing users to disable it) would probably be a net increase in privacy. If all major browsers enable ping by default, then some sites would stop implementing the redirect workaround, and the small set of users who manually disable the feature would get increased privacy.

This is a classic case of the Web being a complex ecosystem and users being unable or unwilling to understand the second-order effects of browser decisions. Unfortunately there are enough vocal critics of "ping" pressuring Firefox to do the wrong thing that Mozilla probably can't afford to do the right thing here.


How to (not) fix a security flaw

Posted Apr 8, 2019 19:47 UTC (Mon) by rweikusat2 (subscriber, #117920)
In reply to: How to (not) fix a security flaw by NYKevin
Parent article: How to (not) fix a security flaw

> 1. Somebody, probably in PR, gets told that "the software is vulnerable to an attack... here's an example using curl."
> 2. Over repeated rounds of transoceanic communication between PR and eng, this gradually mutates into "Our software must block
> curl."

Very complimentary assumption. Thanks to OpenBSD's tireless efforts in this respect, "security" is usually considered equivalent to "block known exploits". Hence "our software can be attacked with curl" => "block curl" is a completely natural reaction. After all, there's really no reason to spend a lot of time on this unless someone demonstrably comes up with an exploit which doesn't use curl.


Case-insensitive ext4

Posted Apr 8, 2019 19:38 UTC (Mon) by nix (subscriber, #2304)
In reply to: Case-insensitive ext4 by Wol
Parent article: Case-insensitive ext4

inodes have no name, and we already have a mechanism for one file having as many names as you like: hard links. I'm sure this can be repurposed somehow...


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 19:31 UTC (Mon) by remicardona (guest, #99141)
In reply to: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer) by rc
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Thank you, I couldn't make sense of blurb either.


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 19:28 UTC (Mon) by rc (subscriber, #108304)
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

I had a really hard time parsing the title and the summary. Basically, "ping" is an HTML attribute you can use for an <a> tag. When you click a link that has a ping attribute, the browser will POST information to the URL specified in ping= and you will get directed to the URL specified in href=. Some browsers had options to disable the "ping" (or never had it at all) but are removing those options. TL;DR is to use Firefox (or Brave) and make sure that browser.send_pings is set to false.


Making slab-allocated objects movable

Posted Apr 8, 2019 18:52 UTC (Mon) by ikm (guest, #493)
Parent article: Making slab-allocated objects movable

> The dentry cache implementation is relatively simple; rather than try to relocate cache entries, it simply frees those that have been targeted

This looks dubious. This hardcodes the decision that the cost of relocation multiplied by the probability that the node is going to be read later is smaller than a re-read of the entry from disk. I doubt that this is the place do make this sort of decision. Furthermore, this just looks semantically incorrect - if what is asked is relocation, than that is what should be done. Otherwise this could backfire in other possible use cases. For instance, suppose that for some reason the whole allocated space gets defragmented. Then, instead of the actual defragmentation, the whole dentry cache would be flushed, which is a completely different operation.


Rethinking race-free process signaling

Posted Apr 8, 2019 18:17 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
In reply to: Rethinking race-free process signaling by neilbrown
Parent article: Rethinking race-free process signaling

Please. Just don't.

Process management has been the most fucked-up part of Unix since forever. Adding FD-based interface will go a long way towards unfucking it. Adding more ad-hoc kludges won't.


Rethinking race-free process signaling

Posted Apr 8, 2019 17:58 UTC (Mon) by perennialmind (guest, #45817)
In reply to: Rethinking race-free process signaling by neilbrown
Parent article: Rethinking race-free process signaling

So add a /proc/$pid/pid-generation symlink or file and some kind of alias to the current /proc/$pid like /proc/pid-gen/$pid-$gen? PID remains a unique candidate key, subject to a version check. Sounds sane to me. I don't have any particular need for 4 million processes running at once.


Working with UTF-8 in the kernel

Posted Apr 8, 2019 17:53 UTC (Mon) by hkario (subscriber, #94864)
In reply to: Working with UTF-8 in the kernel by dvdeug
Parent article: Working with UTF-8 in the kernel

and German... SS being upper case of ß, but ss being the lower case of SS...


Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

Posted Apr 8, 2019 17:34 UTC (Mon) by hkario (subscriber, #94864)
Parent article: Major Browsers to Prevent Disabling of Click Tracking Privacy Risk (BleepingComputer)

good thing that everybody now is using the botnet advertising company "engine" to render pages /s


Re: BFQ (The creation of the io.latency block I/O controller)

Posted Apr 8, 2019 14:50 UTC (Mon) by frr (guest, #74556)
In reply to: The creation of the io.latency block I/O controller by juril
Parent article: The creation of the io.latency block I/O controller

I remember about a decade ago, when "dropbox style" services were all the rage, several "operators" of such services were among our potential customers for traditional RAID boxes with inexpensive SATA drives. One of the first morales was, that RAID makes the IOps math even more complicated, over bare disk drives :-) In the following text, I will abstract from the striped RAID nastiness, I'll refer to bare drives - and specifically spinning rust, as it has some cheap volume to offer.

Our potential customers' traffic pattern was: read-mostly, with numerous clients trying to download the bulk content from the servers. I.e., imagine a hundred HTTP server threads, each performing a sequential download of a large file - but in time, their individual read requests get interleaved, leading to a pretty good approximation of random access to the LBA address space of the disk (or RAID volume).

BFQ seems to promise to solve something similar: apparently it tries to keep some "flow stats" per "control group" (?) and if the summary pattern for the group amounts to sequential access, it can do transaction combining to achieve performace benefits. Similar but not the same, I suspect.

The "parallel readers" pattern is probably not what Facebook are facing - by the description they have a more varied mix of different load patterns, and basically consider the access paterns to be mostly random.

I also tested a scenario with many parallel *writing* threads. Imagine a storage back end for surveilance video recording from many cameras. Here the Linux kernel can offer a configurable and huge dirty cache, suitable for write-combining during write-back caching. Especially promising with the "deadline" scheduler. But, as you increase the load, the write-back pending times start growing, and unfortunately the "deadline" scheduler employs a strict timeout, after which the pending request is scheduled for "immediate" writeback = into a FIFO queue with no more ordering :-( So the promise of elevator-based optimization (albeit geologically slow) collapses into a pure FIFO and the show basically stops.

In the days when I was playing with this, the cheap bulky SATA drives could do about 100-130 MBps (nowadays north of 200 MBps) but during the years, the truly random IOps remains at just about 75. That's 75 random seeks per second. And to squeeze "close to sequential" MBps performance out of a cheap disk drive, you would need to combine the traffic into transactions no smaller than say 4 MB (10 MB would be even better). Here is a graph based on my simple measurements:
http://support.fccps.cz/download/adv/frr/hdd/perf_vs_tsiz...

And also the elevator-based ordering only has a limited room to scale the IOps thoughput - possibly bounded by the disk drive electronics processing horsepower for IOps:
http://support.fccps.cz/download/adv/frr/hdd/IOps_vs_qdep...

Once we get into SSD's, at a first glance there's no point in trying to order and combine the transactions, as there's no mechanical arm with magnetic heads to be moved about, there's no track seeking inertia, and the elevator sorting algorithms and "stream tracking stats" are too expensive (in terms of latency / crunching horsepower) to be any use.
The basic "page" or "row" for NAND Flash reading / writing is about 4 kB, i.e. just about one memory page of the host CPU.
Still, beware of writing. The erase block size (a binary number on the order of megabytes) may again be a good clue.
Even sequential writing may hit a hidden boundary after a couple hundred megabytes (or maybe gigabytes in the bigger drives), long before the drive's payload capacity is fully overwritten - allegedly because modern drives first start using the MLC/TLC chips in "SLC mode" (which is faster) and only when that space runs out, they need to fall back to the native "symbol depth".
Random writing of "much less than an erase block per transaction" is generally not a good idea, because it requires more "flash janitoring" to take place (allocation of pages from different erase blocks, wear leveling must "shuffle pages out of the way" etc) and can really slow things down...

It's a heap of factors to consider, between the application-level abstraction of a file (or database, or whatever) and the physical sectors on spinning rust or pages in NAND Flash chips. I've already hinted at the fun available in striped RAID, and also note that even sequential files need to store metadata, which may add some "out of sequence" seeks as well. Modulo barrier operations. Admittedly difficult to optimize for at the block level or just slightly above, while the apps not necessarily even care to use "hinting" about their future intentions ( fadvise() ) which is readily available from the kernel. Does the httpd even have some useful clues about the traffic pattern it is serving? Well at least it could know the size of a file being read from disk...

IMO it's really the user space apps that should be aware of their respective buffering needs, and should do the optimal stream buffering internally, keeping a suitably large buffer in the user space. Makes me wonder if mmapping the source file of a stream (rather than an explicit read() = copy into a user-space buffer) would give the kernel more opportunities for merging multiple parallel sessions, that are trying to "stream" the same popular file down a myriad independent TCP sessions running at different transfer rates... Not sure, maybe someone has already written an optimized "file-serving back-end httpd" during the decade that has passed, I'm not keeping an eye on it. Not sure though, people seem to be focusing more on building clouds of Java VM's, using JavaScript on the server side etc... and the most popular HTTP daemons apparently still have buckets or buffers in kilobyte sizes. And the "file download services" are tackling the issue using automatic Flash-SSD-based cache that caters for the popular downloads, so that the spinning rust does not need to be accessed so intensively.

This debate about storage IO bandwidth reservations feels like the "kernel and sysadmin team" fighting the "user-space apps team". Sounds odd to me. There should be an architect who would know better than play chess with himself on both sides of the checkerboard (on each side frantically trying to beat the opponent).


Schaller: Preparing for Fedora Workstation 30

Posted Apr 8, 2019 13:37 UTC (Mon) by bangert (subscriber, #28342)
In reply to: Schaller: Preparing for Fedora Workstation 30 by gdamjan
Parent article: Schaller: Preparing for Fedora Workstation 30

https://mirrors.dotsrc.org/fedora-buffet/fedora/linux/rel...

Looks like there is only x86_64 aka. AMD64 for now.


How to (not) fix a security flaw

Posted Apr 8, 2019 12:57 UTC (Mon) by Yenya (subscriber, #52846)
In reply to: How to (not) fix a security flaw by ceplm
Parent article: How to (not) fix a security flaw

For me, it does. I see lot of things around me being labeled "racism" where there are no races involved. As a side note, presumptions are not fear per se, so I would object against word "xenophobia" as well.


How to (not) fix a security flaw

Posted Apr 8, 2019 12:52 UTC (Mon) by Yenya (subscriber, #52846)
In reply to: How to (not) fix a security flaw by jospoortvliet
Parent article: How to (not) fix a security flaw

I hope I did not write anything which is in conflict wrt. your wording. Yes, I agree that part of the reason is "be cheap" as you wrote. I tried to make two points:

1) mentioning India in that context is not _racist_ (it might carry some presumptions about countries or whatever, but nothing about races per se)

2) there are indeed _some_ (not all, not even majority, nothing like that) barely competent just-out-of-college IT wokers in India.

As such, I fail to see a problem with the original post by mebrown (https://lwn.net/Articles/784998/).


How to (not) fix a security flaw

Posted Apr 8, 2019 12:39 UTC (Mon) by jospoortvliet (guest, #33164)
In reply to: How to (not) fix a security flaw by Yenya
Parent article: How to (not) fix a security flaw

Yet generalizations like that tend to stigmatize people which, esp given we are talking about one of the most populous countries on earth, is deeply unfair. So yeah, it would be nice not to get such gross over generalizations on LWN. I know this happens, no doubt, but at least refer to ‘low wage coutries’ as that emphasizes the problem (managements desire to cut cost at the expense of everything else) rather than sound like all people in India are low quality developers. Keep in mind that these developers do exactly as told: ‘be cheap’. It is in the end indeed a matter of bad management decisions, not bad people.


Schaller: Preparing for Fedora Workstation 30

Posted Apr 8, 2019 11:49 UTC (Mon) by Conan_Kudo (subscriber, #103240)
In reply to: Schaller: Preparing for Fedora Workstation 30 by jezuch
Parent article: Schaller: Preparing for Fedora Workstation 30

> Oh, so it's not just a quirk of my set up that prevents me from using it successfully :( :)

Sadly, neither Red Hat nor SUSE are helping to bring KDE into the Wayland world. The only reason GNOME has been able to make it is because Red Hat has developers pushing it forward for their commercial Linux desktops.

Even SUSE, who is a sponsor of KDE, does basically nothing with the desktop. :(

SUSE even ships GNOME with Wayland by default in SUSE Linux Enterprise 15.


How to (not) fix a security flaw

Posted Apr 8, 2019 11:45 UTC (Mon) by lkundrak (subscriber, #43452)
In reply to: How to (not) fix a security flaw by Yenya
Parent article: How to (not) fix a security flaw

> And we all know that IT companies often go to India when looking for extreamly cheap yet sometimes barely compentent workforce.

We also should all know that a lot of the most competent people in the industry come from India. The statement which was objected to is easily understood as making an assumption that only the less qualified group exists. That, I believe, is not fair.


How to (not) fix a security flaw

Posted Apr 8, 2019 9:28 UTC (Mon) by ceplm (subscriber, #41334)
In reply to: How to (not) fix a security flaw by Yenya
Parent article: How to (not) fix a security flaw

I see. Does it matter that much though? OK, so it is not racism per se, just different type of xenophobia.



Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds