|
|
Subscribe / Log in / New account

Recently posted comments

Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 26, 2019 13:30 UTC (Tue) by jani (subscriber, #74547)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by intgr
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

https://en.wikipedia.org/wiki/Law_of_the_instrument

Which I like to paraphrase as, "If all you have is Excel, everything looks like a spreadsheet."


Producing an application for both desktop and mobile

Posted Feb 26, 2019 12:47 UTC (Tue) by lpechacek (subscriber, #41796)
Parent article: Producing an application for both desktop and mobile

> ... he could find no other project that supports all of those environments from a single code base ...

As far as I can tell, Subsurface build target set is very similar to OpenOrienteering Mapper one.

https://github.com/OpenOrienteering/mapper/releases
https://github.com/OpenOrienteering/mapper/wiki/Target-sy...


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 26, 2019 12:31 UTC (Tue) by intgr (subscriber, #39733)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by h2
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

> I guess there will always be people out there who think tacking on more use cases a tool is not designed for is a positive.

Sounds terribly like web browsers of today. Not sure that replacing web apps with git apps would be such a bad thing. :)


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 26, 2019 9:34 UTC (Tue) by jani (subscriber, #74547)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by karim
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

Also food for thought from a decade ago:

> 5. Better to make a few users love you than a lot ambivalent.
>
> Ideally you want to make large numbers of users love you, but you
> can't expect to hit that right away. Initially you have to choose
> between satisfying all the needs of a subset of potential users,
> or satisfying a subset of the needs of all potential users. Take
> the first. It's easier to expand userwise than
> satisfactionwise. And perhaps more importantly, it's harder to
> lie to yourself. If you think you're 85% of the way to a great
> product, how do you know it's not 70%? Or 10%? Whereas it's easy
> to know how many users you have.

http://www.paulgraham.com/13sentences.html


Distribution quotes of the week

Posted Feb 26, 2019 9:30 UTC (Tue) by jezuch (subscriber, #52988)
In reply to: Distribution quotes of the week by iabervon
Parent article: Distribution quotes of the week

Remeber Doom and the first Quake on old 320x200 displays? When hooked to a "3D accelerator" with higher resolution, Quake looks awful, it's *meant* to be seen blocky and grainy ;)


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 26, 2019 7:16 UTC (Tue) by karim (subscriber, #114)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by rgmoore
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

Thanks for sharing this. I hadn't looked at it from this angle. Food for thought.


Memory-mapped I/O without mysterious macros

Posted Feb 26, 2019 5:16 UTC (Tue) by ejr (subscriber, #51652)
Parent article: Memory-mapped I/O without mysterious macros

We've come a long way from the days when mmap was inconsistent w.r.t. read/write (Ultrix). Thank you!


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 26, 2019 2:17 UTC (Tue) by rgmoore (✭ supporter ✭, #75)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by anselm
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

ou could make available the greatest social network ever – free, stuffed with useful and convenient features, privacy-conscious to a fault, etc. – but require people to go out of their way just a little bit to get access to it (especially when it's not obvious they'll have anyone to network with once they're there) and they're not going to be interested.

I think you're wrong about this. Inconvenience lowers the number of people potentially interested, but it doesn't make the project completely untenable. What it needs is a core group of users who understand the advantages and are interested in socializing with each other. If you have those two things, you can have a social network that is capable of surviving. It may not thrive, but so long as the users can support the network by themselves, it doesn't need to be able to beat Facebook to survive.

It seems to me that what it really needs is a use case that can bring in enough user/developers to get it off the ground, and that the most likely use case is a replacement for email lists as a way for developers to communicate with each other. Developers who already use git will have a lower activation energy to get involved, since they already have key enabling technology handy. And as articles here on LWN keep pointing out, there are serious ongoing problems with email lists as a way of handling development. So what it really needs is a customizable back-end that lets it substitute for LKML as a development discussion platform, and it has both an application and a group of interested users together.


What about async metadata

Posted Feb 26, 2019 1:53 UTC (Tue) by josh (subscriber, #17465)
In reply to: What about async metadata by epa
Parent article: Ringing in a new asynchronous I/O API

> It would be convenient to have a system call that declares 'I plan to read this file in the near future'.

The readahead system call does that.


Shrinking the kernel with link-time optimization

Posted Feb 25, 2019 20:05 UTC (Mon) by praveenv98 (guest, #116175)
Parent article: Shrinking the kernel with link-time optimization

Hi Great Article!

In this passage :

"When CONFIG_HIGHMEM is not defined, is_highmem_idx() (and PageHighMem() derived from it) return zero unconditionally. Any code within functions that follows the "if (PageHighMem(page))" pattern will be automatically optimized away as dead code.

But this works only because is_highmem_idx() is marked static; ".

Why this works only for static functions ? Static keyword implies only about the internal linkage right?

Thanks


The Linux Foundation Launches ELISA Project Enabling Linux In Safety-Critical Systems

Posted Feb 25, 2019 19:47 UTC (Mon) by rahvin (guest, #16953)
In reply to: The Linux Foundation Launches ELISA Project Enabling Linux In Safety-Critical Systems by darwish
Parent article: The Linux Foundation Launches ELISA Project Enabling Linux In Safety-Critical Systems

I thought one of the points of these systems was to not run kernel components that can't be verified. In that the point of these standards and certifications was to make it possible to set a baseline and provide the tools and processes necessary to move beyond this core in a safety conscience way?


Avoiding the coming IoT dystopia

Posted Feb 25, 2019 16:23 UTC (Mon) by Wol (subscriber, #4433)
In reply to: Avoiding the coming IoT dystopia by mjthayer
Parent article: Avoiding the coming IoT dystopia

Which plays straight into the hands of the American "tick the checkboxes oh we must be safe" mentality, and which dodges blame by saying "oh look we carried the procedures mandated by law".

European legislation on the other hand, as someone else pointed out, is more interested in outcomes. So you should legislate that "businesses must be able to demonstrate robust, working procedures for dealing with the bugs in the code in their products". In other words, if your reaction to a bug report is to sweep it under the carpet, or if it's a serious bug to run around like a headless chicken, then you're in breach of the legislation and liable for the consequences.

If, on the other hand, you have a mechanism for creating, and rolling out, bugfixes to your products to deal with problems then it's much easier to show compliance with the legislation - you just point to your security team and say "watch them triage bugs, create fixes, and roll them out". The system is there, it can be watched in action, and while it may not (indeed, pretty definitely won't) fix all the problems it will result in far fewer of them.

Cheers,
Wol


Distribution quotes of the week

Posted Feb 25, 2019 14:18 UTC (Mon) by make (subscriber, #62794)
In reply to: Distribution quotes of the week by pizza
Parent article: Distribution quotes of the week

> how exactly is any of that (or choice of desktop environment) supposed to have an effect on "The clarity and playback of digital music" given the same hardware?

Most likely not at all. There's so much superstition among audiophiles; this used to entertain me, but it got boring after a while.

A low-latency kernel can help, but this is very very unlikely. It will only help if the audio chip's buffer drains empty ("xrun") before the player software can refill it, because the CPU is hogged by other processes. A properly configured real-time kernel will try harder to give the player software a share of the CPU before the buffer drains empty.

An xrun is a very audible thing. If you don't hear it, it doesn't happen, and if it doesn't happen, a real-time kernel has no effect at all. Same goes for any other choice made by this distribution.

Of course, it's a good thing to be "free of unnecessary daemons and services", but that has nothing to do with audio quality.

There are choice which can affect audio quality, for example if the player software (for some reason) decides to resample, or convert to a different sample format. There are ways to avoid it or at least reduce the degradation.

As MPD developer (the player software chosen by Audiophile Linux), I spent a lot of time trying to avoid lossy audio format conversions during playback whenever possible. Even though I'm confident that many such optimizations cannot be possibly distinguished by even the best human ears on earth.


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 25, 2019 12:29 UTC (Mon) by anselm (subscriber, #2796)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by flussence
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

The problem is that in this area (as in many), the mediocre-but-easily-available is the enemy of the good-but-a-hassle-to-access. Right now everybody and their dog either has a Facebook account, or is two minutes of filling in a web form and checking some boxes away from one – and chances are that almost everyone they know is already on the service. What are a few pesky privacy scandals compared to that kind of convenience?

You could make available the greatest social network ever – free, stuffed with useful and convenient features, privacy-conscious to a fault, etc. – but require people to go out of their way just a little bit to get access to it (especially when it's not obvious they'll have anyone to network with once they're there) and they're not going to be interested.

Right now, if you want to be the next Facebook, or even a noticeable blip on the radar in the general area of Facebook, you have to be significantly and obviously better than Facebook for people to even take a second look – and since, privacy issues aside, Facebook is actually pretty good at what it does these days, that's not a trivial bar to clear.


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 25, 2019 10:46 UTC (Mon) by dunlapg (guest, #57764)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by Wol
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

Something that the GDPR's detractors repeatedly "forget" - the GDPR does NOT NOT NOT apply to original material. It only applies to search engines and indexes.

This is absolutely false. Shortly after it was passed, a European court ruled that it applied to hand-written personal notes taken by Jehovah's Witnesses about their door-to-door visits -- notes that are not collected or shared anywhere, but only used by the person who wrote them to refresh their memory on follow-up visits.


Containers as kernel objects — again

Posted Feb 25, 2019 8:18 UTC (Mon) by smcv (subscriber, #53363)
In reply to: Containers as kernel objects — again by NYKevin
Parent article: Containers as kernel objects — again

bubblewrap is an example of a program that forks into a container, turns the forked child into pid 1/the reaper for the container, and forks again to run the useful content of the container. It's the container-runner for Flatpak, among others (analogous to the role of runc in Docker), and Flatpak apps all run as pid 2 inside the container, unless they fork again.

The actual reaper process is very simple: it just calls wait() in a loop. The complicated parts of something like systemd (or even sysvinit) are the parts that set up and run all the services, not the part that reaps processes.


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 25, 2019 7:56 UTC (Mon) by joncb (guest, #128491)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by Wol
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

Article 17 of the GDPR is literally titled "right of erasure ('right to be forgotten')" so i don't agree that there is no "right to be forgotten".
It may have some difficulty applying generally but if a gitgeist poster :-
a) Doxxed someone
b) Posted pictures of them

Then almost certainly. There's a "journalistic, artistic, or literary exception" (Article 85) but it seems like that could be a legal nightmare of the "just cheaper to delete your account" kind.


Avoiding the coming IoT dystopia

Posted Feb 25, 2019 7:28 UTC (Mon) by smurf (subscriber, #17840)
In reply to: Avoiding the coming IoT dystopia by nybble41
Parent article: Avoiding the coming IoT dystopia

So what's the subtle harm in "forcing" people to not buy unsafe food or drugs?

I've got a more tangible harm of not doing that for you: the same people who are unlikely to buy safe food are also unlikely to voluntarily buy health insurance, therefore (when the unsafe food bites them or the unsafe drugs don't cure their disease) they end up as non-paying customers of the hospital's ER, thus forcing increased healthcare costs on the rest of us.

This is not hypothetical. In countries with mandatory insurance, going to a hospital costs an order of magnitude less than in the US.


Avoiding the coming IoT dystopia

Posted Feb 25, 2019 2:52 UTC (Mon) by nybble41 (subscriber, #55106)
In reply to: Avoiding the coming IoT dystopia by sfeam
Parent article: Avoiding the coming IoT dystopia

> Consumers want, and always wanted, safe food and safe medicine.

Not true. *All else being equal*, safe food and medicine are obviously preferable to unsafe food and medicine. However, that condition almost never holds. Safe food and medicine cost more—and given the choice, quite a few people would choose slightly more risky products over safe ones with higher prices. The FDA makes people safer (by some metrics) by forcing them to either pay the higher price or go without, thus trading one highly visible form of harm for another, more subtle kind.


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 25, 2019 1:50 UTC (Mon) by develop7 (guest, #75021)
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

To paraphrase, "everything is better with BluetoothGit"


Patch backports

Posted Feb 24, 2019 22:52 UTC (Sun) by nix (subscriber, #2304)
In reply to: Patch backports by NAR
Parent article: The case of the supersized shebang

I use stable kernels because I want serious bugfixes, stability fixes, and security fixes but don't want to run -rc kernels on the systems my job depends on that house all my data thankyouverymuch. This... does not seem like a terribly unusual requirement, to me. I specifically do not avoid updating because I "don't want the latest version": if I could reliably update without rebooting I'd do it within minutes of every stable kernel coming out (but ksplice is fiddly for a self-compiled kernel and requires patch-by-patch analysis to determine which changes can be applied and kgraft is just as bad, AIUI: not a thing you can just throw a new stable kernel at and say "magically update me to this without rebooting").

Like most people operating small numbers of machines rather than huge failovered farms, I upgrade at irregular intervals, when a stable kernel with a bugfix seemingly serious enough to make it worth the annoyance-cum-terror of rebooting and flushing all my caches comes along -- though I suspect most people don't routinely read the git log and patch series of everything that hits -stable the way I do. (Rebooting is much less bad for performance than it used to be, thanks to bcache caching all the seeky metadata, but rebooting my core server is *always* terrifying: what if it never comes back up? It always has so far but this is a PC which means it's shit by definition, and I am not confident that all-Intel-mobo-plus-Intel-UEFI-only-one-corp-to-blame means it's reliable before the OS has started, not when I've *seen* the thing lock up once or twice when trying to enumerate its USB ports, exhaust some sort of watchdog timer, and autoreboot again before completing POST. I'm tempted to switch to kexec just to avoid most of that terror, but unfortunately kexec is even *less* routinely tested so the terror quotient would be greater. Yes of course I have backups, and backups of backups, and backups of backups of backups, but terror does not yield to common sense. I keep the ludicrous levels of backups anyway.)


POP?

Posted Feb 24, 2019 22:41 UTC (Sun) by nix (subscriber, #2304)
In reply to: POP? by Wol
Parent article: Geary 0.13.0 released

I keep absolutely everything other than spam, and always have. Why not? It consumes essentially zero disk space, backups are incremental and deduplicating anyway and it means I can search right back to the year dot (which for me was 1994).

Nearly all of it is useless -- but when something from 1997 turns out to be useful people are amazed that I could dig whatever-it-was up. I have no idea why. Keeping data around and searching it is what computers are *good* at.


Avoiding the coming IoT dystopia

Posted Feb 24, 2019 20:27 UTC (Sun) by Wol (subscriber, #4433)
In reply to: Avoiding the coming IoT dystopia by sfeam
Parent article: Avoiding the coming IoT dystopia

Seatbelts in cars may also be a false example. I'm not aware of all the details, but in the UK, rear seatbelts became a mandatory requirement in 1986. But how many people realise that all vehicles SINCE THE EARLY SIXTIES were capable of having rear seatbelts fitted? BECAUSE IT WAS A LEGAL REQUIREMENT. There was no requirement to fit them, but the mounting points had to be there, and they had to be a manufacturer's option.

I don't know what the dates are for front seatbelts, but obviously they're earlier. But those dates mean that, for almost my entire lifetime, rear seatbelts have been an option on new cars. However, until they became mandatory, many cars didn't have them. I know - in my 1985 car - I had them fitted by the dealer before delivery, so they weren't that common.

Cheers,
Wol


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 24, 2019 19:34 UTC (Sun) by h2 (guest, #27965)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by pr1268
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

pr1268, even google admits that G+ is a total failure, and is shutting it down in April, a process hastened by yet another bug that could leak private user data "...the company reiterated that Google+ had low usage and acknowledged there are significant challenges with "maintaining a successful product."

So apparently the users here don't use g+ much. Even I, as a non user, knew it was shutting down since I had an account that I never used, and they emailed this notice out a month or two ago.

Sadly, there is a certain winner take all in these platforms, despite brave efforts to create more free alternatives.

I find the notion that git has to do everything kind of sad, but I guess there will always be people out there who think tacking on more use cases a tool is not designed for is a positive. Those are probably the same people who think using git to download a file is more sensible than using wget or curl...


Containers as kernel objects — again

Posted Feb 24, 2019 19:18 UTC (Sun) by NYKevin (subscriber, #129325)
In reply to: Containers as kernel objects — again by jejb
Parent article: Containers as kernel objects — again

> 1. It has a concept of init meaning it seems to require the PID namespace regardless of the flag.

I don't think that necessarily follows. See for example prctl(PR_SET_CHILD_SUBREAPER) (which lets a process become init-like with respect to its children, without having PID 1).

I do agree that running (for example) systemd with PID != 1 is likely to be a minor headache, but nobody said you have to use systemd (or whatever) as your init system. You could just as easily write a bespoke program that forks off some hard-coded set of children and wait()s for them.


POP?

Posted Feb 24, 2019 18:23 UTC (Sun) by Wol (subscriber, #4433)
In reply to: POP? by rahulsundaram
Parent article: Geary 0.13.0 released

And how much of those "archives" is oodles of crap they just haven't bothered to delete ...

To me, "archive" means stuff I've organised with the deliberate intention of saving - most of what I see is stuff that's forgotten but not gone ...

Cheers,
Wol


io_uring, SCM_RIGHTS, and reference-count cycles

Posted Feb 24, 2019 14:52 UTC (Sun) by Alex.C (guest, #130620)
Parent article: io_uring, SCM_RIGHTS, and reference-count cycles

For interest in sample code, here is a short code : https://github.com/acassen/socket-takeover

Use-case here was to provide a seamlessly takeover from one process to another for critical software upgrade (used for components on mobile core-network).


Containers as kernel objects — again

Posted Feb 24, 2019 11:14 UTC (Sun) by justincormack (subscriber, #70439)
In reply to: Containers as kernel objects — again by blackwood
Parent article: Containers as kernel objects — again

Process fds are a great idea, and sad that the Capsicum porting effort seems to have stalled a few years back.


The Linux Foundation Launches ELISA Project Enabling Linux In Safety-Critical Systems

Posted Feb 24, 2019 10:29 UTC (Sun) by darwish (guest, #102479)
Parent article: The Linux Foundation Launches ELISA Project Enabling Linux In Safety-Critical Systems

More details here (page 12, System Architecture C):

https://elinux.org/images/f/f3/2017-10-24_ELCE-2017_Bulwa...

Question is, how would you protect the safety application itself (e.g. its memory) from the kernel?

Even if you certify all the relevant kernel parts, how can you insure that the un-certified kernel components will not corrupt the certified ones (ISO-26262 freedom of interference within the kernel image)? This is a monolithic kernel.

Theoretically you can say, we'll certify the absolutely minimum set of defconfig necessary. But then for every feature you'd like to add (TCP/IP, CAN, etc.), you'll have to fully certify it too due to the shared address space.

(There are of course lots of other known challenges, but these two architectural points seem to be the toughest for me to grab my head around...)

P.S. Greenhills Integrity, which is commonly used in the automotive business, etc. solves this problem neatly by having a very tiny nano-kernel, certified at the maximum safety levels. Services on-top (e.g. a file system, a CAN stack, etc.) are still certified, but at less safety levels and so on. That is, freedom of interference has overly clear boundaries...

P.S.S. Of course Greenhills has its own set of problems, including overly ridiculous pricing (tens of thousands of euros for _each_ "extra stack" – anything above minimal IPC and memory management is sold separately – including nowaday basics like file systems, tcp/ip, can, and so on .... not to mention the tight coupling with their proprietary compiler (multi) and IDE, each sold separately too .... all of this is just the basics _before_ even "discussing" the price of a minimal booting BSP and any "customer-specific" request on top ... and they mandate royalties __per each__ HW unit deployed in production. Moreover, and on purpose, no deep knowledge about Integrity exists on the Internet, so you're 100% dependent on Greenhills support for every issue big and small .... This is ok for big fat military and government contractors, but it's no wonder that people in more financially-honest industries want to at least explore other solutions, including linux ....


The case of the supersized shebang

Posted Feb 24, 2019 9:17 UTC (Sun) by flussence (guest, #85566)
In reply to: The case of the supersized shebang by grawity
Parent article: The case of the supersized shebang

For a long time perl *also* had a bug where if the line looked like /path/to/perl$anyversion, it'd try to run it directly. That meant perl5 wouldn't run perl6 scripts at all, and probably would also break in weird situations with two perl5 environments on the system. It was fixed very recently, IIRC.


Development quotes of the week

Posted Feb 24, 2019 9:06 UTC (Sun) by flussence (guest, #85566)
In reply to: Development quotes of the week by nix
Parent article: Development quotes of the week

Yep, Emacs' usage pattern is probably close to exactly how X11 was originally designed, which is why it works so well. It helps that it was originally designed for serial terminals!

Unfortunately that kind of software design seems to be becoming a lost art; we can't just go and politely ask all the gtk/qt downstream users to please stop being so lax with the screen updates, so it's a hard problem to fix. For anything on a modern toolkit, all the compositing happens within the application and entire bitmaps are being shoved down the pipe instead. At that point VNC becomes a workaround for the damage (excuse the pun) by delta-encoding those redraws, at the cost of burning even more watts. Maybe all this is why Intel has been adding VP9 encoding to its chips lately…


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 24, 2019 7:13 UTC (Sun) by flussence (guest, #85566)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by roc
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

The main thing a social network needs is to enable social interaction, not to play mindless spreadsheet optimisation games with a body count as the target.

A lot of other web software also needs to back away from that race to the bottom.


Development statistics for the 5.0 kernel

Posted Feb 24, 2019 4:51 UTC (Sun) by spaetz (guest, #32870)
In reply to: Development statistics for the 5.0 kernel by kees
Parent article: Development statistics for the 5.0 kernel

> The result was the same as "who wrote the most code?" Which is really to be expected. :P
Germany has a saying (translates only clumsily): "Only those who create, create mistakes."


Design for security

Posted Feb 23, 2019 23:59 UTC (Sat) by excors (subscriber, #95769)
In reply to: Design for security by jezuch
Parent article: Design for security

> BTW, you may be confused that when you "close" an app it is in fact closed. More likely it is just removed from the list of recent apps, unless you're going to the settings > applications > particular app > stop process > yes, I really want to kill it and I know it may break the app. It gets tiresome really quick.

The "Recents" screen shows activities and tasks (which I think correspond to certain Java objects), not apps or processes. When the user closes something from that list, I think it does destroy the activity if it's still alive, per https://developer.android.com/guide/components/activities..., so it's doing more than just hiding it from the list. But it still probably won't terminate the process if that was its last activity - it just increases the likelihood of it being chosen by the Low Memory Killer when someone else wants the memory.

Conversely, an activity can remain in the Recents list after its process has been terminated by the LMK. A new process can be started and told to resume that activity. So there's little correlation between process lifetime and activity visibility.


Security quotes of the week

Posted Feb 23, 2019 23:49 UTC (Sat) by rra (subscriber, #99804)
In reply to: Security quotes of the week by mina86
Parent article: Security quotes of the week

Bruce is biased against cryptocurrencies in much the same way that writers are biased against illiteracy.


Patch backports

Posted Feb 23, 2019 21:32 UTC (Sat) by NAR (subscriber, #1313)
In reply to: Patch backports by nix
Parent article: The case of the supersized shebang

I guess people use -stable kernels because they explicitly do not want the latest version (due to fears about regressions, being locked to a version number, etc.). I don't know if they want a new -stable kernel every 3-4 days or just take a look at the top of their preferred -stable tree at their convenience (maybe once every quarter) and use that version.


Design for security

Posted Feb 23, 2019 17:34 UTC (Sat) by jezuch (subscriber, #52988)
In reply to: Design for security by fest3er
Parent article: Design for security

In addition to what others said...

How do you guarantee that the gateways do not cheat and are not sending data unencrypted? How do you verify this? It's like today's email: how do I know that my mail provider is not broadcasting my poorly written and utterly embarrassing (but really sweet to the addressee) love letters to other mail exchanges as plain text? (An obvious response to an obvious retort: mail encryption is rubbish and my girlfriend refuses to use it.)

BTW, you may be confused that when you "close" an app it is in fact closed. More likely it is just removed from the list of recent apps, unless you're going to the settings > applications > particular app > stop process > yes, I really want to kill it and I know it may break the app. It gets tiresome really quick.


Containers as kernel objects — again

Posted Feb 23, 2019 17:22 UTC (Sat) by drag (guest, #31333)
In reply to: Containers as kernel objects — again by jejb
Parent article: Containers as kernel objects — again

> 4. In kubernetes terms is your container id the container or the pod? The common audit use case seems to imply it should be the pod.

Not exactly sure what you are talking about here, but I would like to point out that in Kubernetes a pod can be made up of any number of containers. When you are doing things like sidecar containers or init containers (as in stuff that runs before the application starts) then you can have containers made by different projects and different people with different assumptions about uids and whatnot.

So certainly you want to be able to audit and interact with things on a per container level. Such interactions should be avoided as much as possible, but occasionally you need to still deal with individual containers. Usually when viewing logs or debugging things.


Containers as kernel objects — again

Posted Feb 23, 2019 17:16 UTC (Sat) by drag (guest, #31333)
In reply to: Containers as kernel objects — again by jhoblitt
Parent article: Containers as kernel objects — again

> I believe what most users actually want is the equivalent of an NFS uid squash between the system and the container userns

YES. THIS.

This would make life so much easier.


France enters the Matrix

Posted Feb 23, 2019 17:07 UTC (Sat) by notriddle (subscriber, #130608)
In reply to: France enters the Matrix by nim-nim
Parent article: France enters the Matrix

How is that comparable? It only affected Avast products, not all intercepting HTTPS proxies, and, based on what I'm reading in https://bugzilla.mozilla.org/show_bug.cgi?id=1523701, it's an actual bug, not an antifeature like the Chrome proposal. This isn't Firefox removing the ability to add your own root cert, this is Firefox bumping sqlite, causing a mismatch between its version and Avast's version that led to a corrupted cert database.


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 23, 2019 16:44 UTC (Sat) by Wol (subscriber, #4433)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by Karellen
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

Whoops - I think the OP may have conflated two different bits of legislation and I didn't spot that.

The GDPR if I have it right concerns the collection and processing of personal data. As such there is no "right to be forgotten", it's more "I don't want to be on your database, take me off" or "the info you have is wrong, fix it". Both are important - why should my details be on your database if I no longer want to "benefit" from it, or even more so if I didn't give you the information (and permission) in the first place! And especially so if said details are wrong!

The "right to be forgotten" is there to prevent old news being dragged back - in Europe we seem to have this quaint notion where convictions can be "spent" and no longer count against someone, and the right to be forgotten - quite deliberately - makes it *difficult* to find such information. But it does not give the subject the right to attempt to delete or alter primary sources. Do *you* think it right that an old man should be punished for the actions of a teenager? I don't think so, and the "right to be forgotten" would agree. And chances are, if the person really hasn't changed, there's a lot more recent stuff around that's easy to find.

Cheers,
Wol


Development statistics for the 5.0 kernel

Posted Feb 23, 2019 8:24 UTC (Sat) by error27 (subscriber, #8346)
In reply to: Development statistics for the 5.0 kernel by martinfick
Parent article: Development statistics for the 5.0 kernel

My impression is that this isn't really an issue in the kernel. Once you know the code at fault (and thus the author) then the fix is normally straight forward. The difficulty lies in figuring out which code is at fault.

The other issue in the kernel is that after two years the original author isn't around or doesn't want to fix bugs. I seldom bother reporting static analysis issues over two years old. If it's less than two years we are good at addressing those.

People take a lot of pride their work generally.


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 23, 2019 7:27 UTC (Sat) by tzafrir (subscriber, #11501)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by Wol
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

In this case everyone that follows you mirrors your repository.


Security quotes of the week

Posted Feb 23, 2019 6:42 UTC (Sat) by flussence (guest, #85566)
Parent article: Security quotes of the week

Bitcoin has been very successful in levelling the playing field between commoners and the 1%… in terms of how much damage to the climate each person is causing.


Patent exhaustion and open source

Posted Feb 23, 2019 3:29 UTC (Sat) by biergaizi (guest, #92498)
In reply to: Patent exhaustion and open source by rsidd
Parent article: Patent exhaustion and open source

"XOR cursor patent"... Thanks for your hilarious example, it is the joke of the day ;-)


Development statistics for the 5.0 kernel

Posted Feb 23, 2019 1:18 UTC (Sat) by johannbg (guest, #65743)
In reply to: Development statistics for the 5.0 kernel by neilbrown
Parent article: Development statistics for the 5.0 kernel

Time from report to fix, should be measured
aswell and responses between reporters and developers could be meaningful to have ( thou impossible to implement ).

Also there should be comparison between the kernel communities on all the *nix platforms.

How healthy are those,how do they compare to each other, are developers contributing between linux,bsd and solaris.

Is there rise or decline in one but not the others etc.

I dont think Jon and or other writers here have researched into that, gather the stats and written about it.


Containers as kernel objects — again

Posted Feb 23, 2019 0:51 UTC (Sat) by gutschke (subscriber, #27910)
Parent article: Containers as kernel objects — again

I don't see why fork_into_container() would necessarily be limited to being called once. We already know how to re-parent a process to the init process whenever its previous parent disappears. The same thing could be done when a process moves into the container. The container's init process now becomes this process's new parent.


Distribution quotes of the week

Posted Feb 23, 2019 0:44 UTC (Sat) by kjp (guest, #39639)
Parent article: Distribution quotes of the week

Uh, I thought the sound joke was funnier in 2013. On lwn no less:
https://lwn.net/Articles/542664/


Patent exhaustion and open source

Posted Feb 22, 2019 23:54 UTC (Fri) by NAR (subscriber, #1313)
In reply to: Patent exhaustion and open source by nowster
Parent article: Patent exhaustion and open source

I guess Microsoft owning GitHub doesn't necessarily means GitHub *is* Microsoft and that Microsoft's patents are licensed to GitHub. Also, downloading from GitHub doesn't necessarily means that it's GitHub that provides the software - it's the user who pushed the code to GitHub. I mean if I park my car at a parking house and my wife picks up the car from there, it won't be the parking house that gives the car to her - it's me.


Some quick questions

Posted Feb 22, 2019 23:15 UTC (Fri) by Arathorn (guest, #101018)
In reply to: Some quick questions by wiml
Parent article: France enters the Matrix

just to clarify on answer 2: identity servers simply map 3PIDs (e.g. email addresses) to MXIDs. They do not provide a directory service; homeservers provide this instead. The only exception is if the identity server implementation gutwrenchs into the rest of the protocol to override directory lookup APIs which would otherwise be provided by the homeserver.


Some quick questions

Posted Feb 22, 2019 23:13 UTC (Fri) by Arathorn (guest, #101018)
In reply to: Some quick questions by callegar
Parent article: France enters the Matrix

These are excellent questions.

1. Migration is currently a matter of using a script or other tool to invite your new account to all the rooms your old account was in, and then (optionally) parting the old account. It's a bit like migrating between IMAP servers, and generally cumbersome and suboptimal. We're trying to replace it by decentralising user IDs, so that user accounts can span multiple servers, at which point we get migration for free. This is https://github.com/matrix-org/matrix-doc/issues/1228.

2. There isn't a global user directory. Directories are instead done per homeserver, and search all users you share with a room with (or are present in public rooms existent on that server). In practice tends to work relatively well, though, as on a busy homeserver, many of the users you want to find will already be hanging out in public rooms (a bit like on IRC).

3. You have to run a TURN server, but we provide easy instructions for how to do so, and most of the docker or ansible setups automate this: https://github.com/matrix-org/synapse/blob/master/docs/tu.... We don't have the same problems that Jami has due to the thinclient nature. Even when we go fully P2P this shouldn't be a problem, given TURN & ICE is pretty straightforward (mainly due to pre-Matrix us being a VoIP stack shop...)


France enters the Matrix

Posted Feb 22, 2019 23:10 UTC (Fri) by Arathorn (guest, #101018)
In reply to: France enters the Matrix by donbarry
Parent article: France enters the Matrix

Well, the last half of the talk in the OP is discussing how we've implemented ZRTP-style verification for E2E, so that even if the servers can't be trusted, you still have trust through to the end parties you're talking to. So yes, we'd prefer not to be moving to conventional CAs, it's probably for the greater good right now (as fun as it'd be to be burning time reinventing CAs rather than building Matrix).


Development statistics for the 5.0 kernel

Posted Feb 22, 2019 23:09 UTC (Fri) by martinfick (subscriber, #4455)
In reply to: Development statistics for the 5.0 kernel by neilbrown
Parent article: Development statistics for the 5.0 kernel

I believe it could be helpful if new code contributions were throttled by ensuring that a contributor's known bugs were fixed before accepting new contributions from them. This is a policy I try to enforce on my team. That would probably be hard to do privately.


Development statistics for the 5.0 kernel

Posted Feb 22, 2019 22:40 UTC (Fri) by kees (subscriber, #27264)
In reply to: Development statistics for the 5.0 kernel by arekm
Parent article: Development statistics for the 5.0 kernel

I did this analysis a couple years ago but for CVEs. "Who introduced the most security bugs?" The result was the same as "who wrote the most code?" Which is really to be expected. :P


Some quick questions

Posted Feb 22, 2019 22:08 UTC (Fri) by wiml (guest, #130596)
In reply to: Some quick questions by callegar
Parent article: France enters the Matrix

1: My understanding is that, no, a user account is tied to a homeserver, much like an email address is tied to an email provider; there are plans to make it possible to move or share user ids at some point in the future.

Rooms, on the other hand, are IRC-like in that they aren't associated with any specific server but exist on all servers which have a participant.

2: That's handled by "identity providers" which are sort of outside the core Matrix protocol, and provide a mapping from third-party identifiers (email addresses, phone numbers, personal names, or other identifiers) to matrix user IDs. I don't know what the state of play is for those, really. They exist and have client integration but I think the system is still more of a usability hack than a polished design.


Development statistics for the 5.0 kernel

Posted Feb 22, 2019 21:39 UTC (Fri) by GustavoARSilva (subscriber, #112293)
In reply to: Development statistics for the 5.0 kernel by neilbrown
Parent article: Development statistics for the 5.0 kernel

I agree.

It'd be interesting to include such statistics in coming reports. In the meantime I took the time to get such data for the most active 5.0 developers.

$ git log --shortstat --author=<name> v4.20..v5.0-rc7 | grep 'Fixes:\s\+[0-9a-f]\{6,\}\s\+(".*")' | wc -l

Geert Uytterhoeven 44
Colin Ian King 30
Jens Axboe 18
Christoph Hellwig 16
Gustavo A. R. Silva 15
Ville Syrjälä 15
Linus Walleij 14
Arnaldo Carvalho de Melo 13
Boris Brezillon 10
Masahiro Yamada 10
Yue Haibing 7
Kuninori Morimoto 5
Andy Shevchenko 3
Rob Herring 3
Jakub Kicinski 2
Thierry Reding 2
Michael Straube 1
Maxime Ripard 1
Yangtao Li 1
Paul E. McKenney 0

I wanted to use grep 'Fixes:\s\+[0-9a-f]\{12\}\s\+(".*")' but some people don't use the canonical format. Also, I noticed that some people use this format: Fixes: commit 4d230d1271064. Which may be why this kind of info is not included in the report: it is prone to error. So, due this an other formatting issues, in more than three cases, I had to manually edit the final number.

--Gustavo


Containers as kernel objects — again

Posted Feb 22, 2019 20:47 UTC (Fri) by jejb (subscriber, #6654)
In reply to: Containers as kernel objects — again by bfields
Parent article: Containers as kernel objects — again

> I'm confused. David's container_create() still has a flags argument allowing the caller to choose which namespaces to inherit. So you're free to either create a new user namespace or not.

Allowing limited flexibility over the current interface doesn't make it non-pejorative. For instance:

1. It has a concept of init meaning it seems to require the PID namespace regardless of the flag.
2. requiring init also requires a container be populated by at least one process. This seems to completely deny the current concept of bind mounting a namespace (i.e. creating an empty container)
3. Nesting doesn't seem to be thought through
4. In kubernetes terms is your container id the container or the pod? The common audit use case seems to imply it should be the pod.
And so on ...

As I said: you can regard the above as bugs or features, but you can't deny it introduces a pejorative view of a kernel container.


Containers as kernel objects — again

Posted Feb 22, 2019 20:40 UTC (Fri) by blackwood (guest, #44174)
In reply to: Containers as kernel objects — again by josh
Parent article: Containers as kernel objects — again

Yeah, my reaction too. Process fds might also be really useful here and perhaps serve some of the same purposes.


Containers as kernel objects — again

Posted Feb 22, 2019 20:33 UTC (Fri) by bfields (subscriber, #19510)
In reply to: Containers as kernel objects — again by jejb
Parent article: Containers as kernel objects — again

I'm confused. David's container_create() still has a flags argument allowing the caller to choose which namespaces to inherit. So you're free to either create a new user namespace or not.


Containers as kernel objects — again

Posted Feb 22, 2019 20:26 UTC (Fri) by jejb (subscriber, #6654)
In reply to: Containers as kernel objects — again by jhoblitt
Parent article: Containers as kernel objects — again

OK, so it is possible to set up unprivileged docker and a few people are doing it. I always use unprivileged containers for my use case as well. However, I don't think you would argue that the number of people doing any form of unprivileged containers is dwarfed by the number of people who simply add privilege to the standard docker container to make it work (and usually this means real root). This is known to be a huge source of security issues (the latest being the runc CVE) but people do it anyway. Therefore, I stand by my statement that if you were to enforce the container description to be what the majority do today it would be without the user namespace. I'm in no way arguing this is right, and it's definitely not secure, but it is the majority container construction.

The meta point here, I think, is that the notion we've been experimenting long enough to have an idea of what a good container construction consists of is actually wrong and we're still need to experiment further. Which also means we really don't yet want to be pejorative about container constructions at the kernel level because that hobbles the experimentation.


Design for security

Posted Feb 22, 2019 19:36 UTC (Fri) by mpr22 (subscriber, #60784)
In reply to: Design for security by fest3er
Parent article: Design for security

One does not have to believe oneself to be a Designated Undesirable to prefer that one's internet traffic be end-to-end encrypted rather than per-hop encrypted.

My ISP's gateway, my bank's ISP's gateway, and the six other gateways between my ISP's gateway and my bank's ISP's gateway have no business being able to know my access credentials for my bank's online services.


Blacklisting insecure filesystems in openSUSE

Posted Feb 22, 2019 19:15 UTC (Fri) by Wol (subscriber, #4433)
In reply to: Blacklisting insecure filesystems in openSUSE by kmweber
Parent article: Blacklisting insecure filesystems in openSUSE

And in practice it very often isn't!

It's basically down to supply and demand. Why did we have the Renaissance? Because average *median* wealth rose dramatically as a result of the Black Death. That was what brought down the feudal system in a large chunk of Europe. We had the same effect after the First and Second World Wars.

Sadly now we have the opposite effect, where we have too many people chasing too little work, and even while the average *mean* wealth may be rising, the *median* wealth is falling. And politicians love to talk about the mean, while forgetting that in a skewed distribution like incomes, it has very little meaning.

Cheers,
Wol


Containers as kernel objects — again

Posted Feb 22, 2019 19:11 UTC (Fri) by jhoblitt (subscriber, #77733)
In reply to: Containers as kernel objects — again by jejb
Parent article: Containers as kernel objects — again

> The obvious answer might be what docker/kubernetes does, but some of those practices (like no user namespace, pod shared ipc and net namespace)

I'm not a docker apologist but I'd like to point out that docker certainly can take advantage of userns'. At my $day_job I have built a production service that makes use of this. However, userns has a few serious usability draw backs. While it does provide [the rather important] removal of true uid 0 processes from a container, it doesn't provide for unique uid reservations -- meaning it takes careful planning to keep other service role uids from overlapping with the range mapped into a userns. Another issue, specific to how docker uses userns, is that every container has the same system<->container uid mapping, resulting in the possibility for many processes in different containers to all share the real system uid. This isn't a major issue but it certainly feels untidy if the goal is maximum isolation. Finally, the most serious limitation is when trying to bind mount a filesystem into the container for persistence (yes, I'm aware that the "docker way" is use docker volumes but that isn't always convenient and has its own set of limitations) that the userns mapping system<->ns is a 1:1 range and no overlapping is allowed.

Suppose that you want to persist files with a system uid of 5000 and use the same uid inside the container. To do this with a single mapping for the namespace, you'd have to start the mapping at 0 and have a range of at least 5000 uids. That's a no go as then system uid 0 == container uid 0. This means for a lot of scenarios (say, systemd running the container) one mapping is needed for the root uid and one for uid 5000. However, there is now the problem that without caps, uid 0 in the container can't access uid 5000's files unless they are world accessible. It also means that every container run needs to to follow this uid pattern. Want to use a docker image packaged utility (terraform, etc.)? A "wrapper" image needs to be built to change the uids -- exactly the same as it was without userns except now knowledge of the mapping is also required.

I believe what most users actually want is the equivalent of an NFS uid squash between the system and the container userns -- I am aware of an example of this essentially being done using a k8s storage driver. While I am a heavy k8s user, it isn't a realistic to solution to the typical case of wanting to run multiple docker containers in a sequence that interact with the same files, which is why the DinD pattern ends up being employed in k8s pods. Docker storage volumes don't solve this issue either. Solutions other than uid squashing are painful: give up on posix semantics completely and move to object storage, use a utilty with caps to re-chown files, local NFS exports/mounts, and/or FUSE games.


Containers as kernel objects — again

Posted Feb 22, 2019 18:24 UTC (Fri) by josh (subscriber, #17465)
Parent article: Containers as kernel objects — again

While I'm not excited by the idea of having a kernel-wide concept of "container", I *do* love the idea of being able to create a new detached filesystem namespace, mount things into that namespace, and openat and fooat in that namespace.


Development statistics for the 5.0 kernel

Posted Feb 22, 2019 18:02 UTC (Fri) by Unknown118081 (guest, #118081)
Parent article: Development statistics for the 5.0 kernel

How are "(Consultant)" contributors counted?


Containers as kernel objects — again

Posted Feb 22, 2019 16:59 UTC (Fri) by jejb (subscriber, #6654)
Parent article: Containers as kernel objects — again

> perhaps the time has come to codify some of what has been understood into kernel features that make containers as a whole easier to deal with.

The problem still is that having a container construction imposed from userspace allows for huge flexibility and is incredibly powerful. The down side is that the kernel doesn't know what constitutes a container. The solution we came up with was to have userspace tell the kernel for audit purposes (the audit label) what the container is.

If the kernel is going to impose its view of what a container is, the question becomes which container construction should it be? The obvious answer might be what docker/kubernetes does, but some of those practices (like no user namespace, pod shared ipc and net namespace) are somewhat incompatible with what LXC does and they're definitely wholly incompatible with other less popular container use cases, like the architecture emulation containers I use to maintain cross arch builds of my projects. This is the fundamental problem: imposing a kernel view of container is pejorative and eliminates all other non-conforming uses. The argument is mostly about whether you see this as a bug or a feature.


Patch backports

Posted Feb 22, 2019 15:44 UTC (Fri) by nix (subscriber, #2304)
In reply to: Patch backports by Spack
Parent article: The case of the supersized shebang

If that was the way it worked, then even serious bugs wouldn't get fixed more often than once every three months. That would render the stable kernels almost pointless, since you could always just upgrade to the also-stable Linus kernel the fixes came out of instead.


Patent exhaustion and open source

Posted Feb 22, 2019 15:40 UTC (Fri) by hodgesrm (subscriber, #121150)
In reply to: Patent exhaustion and open source by dskoll
Parent article: Patent exhaustion and open source

Legal documents and code are not that different. Good contracts for example are designed to minimize edge cases, just as good code is.


Design for security

Posted Feb 22, 2019 15:22 UTC (Fri) by nix (subscriber, #2304)
In reply to: Design for security by fest3er
Parent article: Design for security

I haven't addressed buffer bloat.
These days, for wired Ethernet at least, just switching to fq_codel or CAKE on your bottleneck link with the default parameters (or default plus telling it what your ADSL encapsulation etc is) should be enough to fix that, as long as your NIC driver supports BQL, which most now do.


Design for security

Posted Feb 22, 2019 15:16 UTC (Fri) by nix (subscriber, #2304)
In reply to: Design for security by fest3er
Parent article: Design for security

The proper solution is host-to-gateway and gateway-to-gateway opportunistic encryption. Prevent deliberate, casual or incidental observation of private/confidential data, but allow perimeter firewalls to block trojans, viruses, ransomware, phishing, data theft, and other 'crimes'. (People who are terrified that someone might see what they're doing on an internetwork probably shouldn't be using the net in the first place. IMO.)
And what do you do when you work, as I used to, for a megacorp with a centralized, out-of-touch, uncontactable security department that listens mostly to expensive consultants and flatly refuses to allow things that entire national divisions need to do their jobs? Just sit there all day and do no work?

People bypass security when it impedes them. Otherwise, they mostly ignore it. You can't get rid of that by saying "but nothing should be encrypted except via gateways operated by the Right People": if the Right People are idiots, this will not help, and it makes the gateways into a huge target that attackers will naturally penetrate, and now they have everything so you are paying the cost of security for nothing.

Many smart phones have multi-GiB RAM because people don't know or don't care that they have 500 apps open. When I finish using an app on my phone, I close it; I think the most apps I ever had open at one time was 8.
This seems utterly bizarre to me. I just leave things open and let the phone transparently close things in the background when memory is short. Usually the only visible effect of this is having to go back in via the home screen, and a slight delay on switching back as the app reloads its state. Why do you care if the app is being persisted in normal use, any more than you care which pages are in the page cache in normal use? Why on earth would you try to kick things out, unless you like making your own life harder?


QObject facades in QML apps

Posted Feb 22, 2019 14:38 UTC (Fri) by bovinespirit (subscriber, #88348)
In reply to: Producing an application for both desktop and mobile by halla
Parent article: Producing an application for both desktop and mobile

Working on a proprietory app that added a QML front end we had a lot of issues with object lifetimes. Putting singleton objects into the context wasn't really a nice solution for large dynamic model objects, and didn't fit with the way the rest of the code worked.

In MVC and design patterns terms we found that the way to tackle it was to treat the QObjects (and QAbstractListModels) that provide data to the QML pages as part of the View, not part of the Model. The QML code will create and delete them as it pleases, but the objects don't hold any data, they just act as facades for the actual data models. We've not found a way to nicely separate out the 'Controller' parts, instead the facade objects' constructor is generally responsible for connecting the various signals up. What you end up with is lots of QObjects whose properties (as in Q_PROPERTY) are almost identical to that of the Models, and just exist to pass through data.

Our facade objects are registered with QML using qmlRegisterType<FacadeType>("com.example.myobjects", 1, 0, "FacadeType") then the QML uses import com.example.myobjects 1 0 then FacadeType { id: myFacade } to create a facade object.


The case of the supersized shebang

Posted Feb 22, 2019 8:31 UTC (Fri) by epa (subscriber, #39769)
In reply to: The case of the supersized shebang by foom
Parent article: The case of the supersized shebang

Sounds like a handy trick to speed up your shell scripts!


Development statistics for the 5.0 kernel

Posted Feb 22, 2019 7:40 UTC (Fri) by error27 (subscriber, #8346)
In reply to: Development statistics for the 5.0 kernel by arekm
Parent article: Development statistics for the 5.0 kernel

I haven't looked at this rigorously, but I suspect that most fixes tags are for an initial driver merge. So they're not regressions, they're support for new hardware but it has bugs.


Security quotes of the week

Posted Feb 22, 2019 5:44 UTC (Fri) by kmweber (guest, #114635)
Parent article: Security quotes of the week

Bitcoin is entirely self-defeating.

It wants to be a currency, but the fact that it is deflationary by design seriously hinders its usefulness as a currency by encouraging hoarding. And, in fact, its most significant usage nowadays is indeed a structured form of hoarding: as an investment vehicle. Except it's an exceptionally volatile investment, because its near-uselessness as a currency (the basket of legitimate goods and services you can purchase with it is comparatively limited) means that there's little of economic substance backing it up--so its ability to be traded for real currency is essentially arbitrary, subject to literal mood swings and propped up only by delusion rooted in economic illiteracy.

Bitcoin's greatest value, I think, is its ability to serve as a case study in why being brilliant in one area doesn't get you very far: everything you do has to interact with the wider social environment. Those humanities and social science general-education requirements were actually pretty damn important.


io_uring, SCM_RIGHTS, and reference-count cycles

Posted Feb 22, 2019 4:29 UTC (Fri) by scientes (guest, #83068)
Parent article: io_uring, SCM_RIGHTS, and reference-count cycles

The is some pretty atrocious code in systemd-journald (that I wrote) that uses proc to get the capabilities of the logging process for every logged message. My concern that this was too slow for the hot path was ignores and it was merged. It would be nice if SCM_RIGHTS of similar can allow removing this horrible code.


Producing an application for both desktop and mobile

Posted Feb 22, 2019 2:04 UTC (Fri) by pabs (subscriber, #43278)
In reply to: Producing an application for both desktop and mobile by halla
Parent article: Producing an application for both desktop and mobile

Hmm, there are multiple package managers for Windows:

https://en.wikipedia.org/wiki/List_of_software_package_ma...


Producing an application for both desktop and mobile

Posted Feb 22, 2019 0:51 UTC (Fri) by pabs (subscriber, #43278)
In reply to: Producing an application for both desktop and mobile by dirkhh
Parent article: Producing an application for both desktop and mobile

I guess that you have multiple copylefted dependencies and that their exception is workable for Signal because they do not.

I wonder if any LWN readers work for Apple and could escalate this issue.


Development statistics for the 5.0 kernel

Posted Feb 22, 2019 0:24 UTC (Fri) by neilbrown (subscriber, #359)
In reply to: Development statistics for the 5.0 kernel by arekm
Parent article: Development statistics for the 5.0 kernel

> I wonder if there are "who/which company produces bugs often" stats

I really don't think that pointing the finger at who produced a bug is ever helpful (except to quietly let them know so they might learn from the experience). All the bugs belong to all of us.

Conversely, highlighting people who fixed lots of bugs would do no harm and could be beneficial. Even better is highlighting people who fixed a bug and made it clear when the bug was introduced so that an informed backport to -stable is easier. This is a valuable contribution worth celebrating.


Distribution quotes of the week

Posted Feb 21, 2019 23:27 UTC (Thu) by jwilk (subscriber, #63328)
In reply to: Distribution quotes of the week by zdzichu
Parent article: Distribution quotes of the week


Development statistics for the 5.0 kernel

Posted Feb 21, 2019 23:06 UTC (Thu) by mchehab (subscriber, #41156)
In reply to: Development statistics for the 5.0 kernel by jani
Parent article: Development statistics for the 5.0 kernel

> > Daylight savings time can throw things off

> Indeed. Judging by a handful of European developers whose time zones I know, about half their commits to 5.0 are in DST, and if they're in any way representative, a significant portion of the results are tilted one time zone to East
Brazil was at GMT-2 also during part of the 5.0 development cycle.


Television sets

Posted Feb 21, 2019 22:47 UTC (Thu) by Wol (subscriber, #4433)
In reply to: Television sets by zdzichu
Parent article: Avoiding the coming IoT dystopia

Because the firmware's broken, maybe?

Now binned because it broke, but I had a Logik / JVC TV that used to crash when you tried to record to USB. It did it somewhat at random but that's obviously very annoying.

My car stereo now seems to spend an inordinate amount of time "scanning USB" which impacts quite seriously on its usability - I think that's a bug ...

And trying to get this sort of stuff fixed is a nightmare, as it's almost impossible to contact the manufacturer, and the retailer's attitude is "well almost everything works". The fact that the bit that doesn't is very important to you, isn't important to them.

Cheers,
Wol


Just to add to the discussion...

Posted Feb 21, 2019 22:36 UTC (Thu) by pr1268 (guest, #24648)
In reply to: Security quotes of the week by kjp
Parent article: Security quotes of the week

Just to add to this discussion (and perhaps reinforcing Bruce's argument[s]): Man died. $190 million in Bitcoin "lost" (er, frozen). Good luck repossessing your money!


Development statistics for the 5.0 kernel

Posted Feb 21, 2019 22:11 UTC (Thu) by arekm (guest, #4846)
Parent article: Development statistics for the 5.0 kernel

I wonder if there are "who/which company produces bugs often" stats based on "Fixes" info? Not something too useful though.


Definition of derived work

Posted Feb 21, 2019 20:40 UTC (Thu) by nybble41 (subscriber, #55106)
In reply to: Definition of derived work by mathstuf
Parent article: The proper use of EXPORT_SYMBOL_GPL()

Continuing the non-lawyer trend, but to me it seems ridiculous that we're even having this discussion. Based on the way "derivative work" is used in every domain other than software, the idea that one piece of source code is "derivative" of another just because it calls or otherwise links with interfaces exposed by the other piece is ludicrous. Copyright covers creative expression, not functionality. The creative elements of a piece of source code are not in any sense a copy, translation, or other transformation of the creative elements of whatever other software the source code refers to, or that the compiled object code may eventually be linked with.

The idea that mere linking make the source code a derivative work is akin to saying that any research paper is a derivative work of every piece of source material listed in its bibliography.

A *binary* distribution is a different matter, since it actually incorporates elements from all the different sources which are linked together. That wouldn't include any shared libraries, but it might include code in header files (e.g. macros or inline functions).


Producing an application for both desktop and mobile

Posted Feb 21, 2019 20:12 UTC (Thu) by halla (subscriber, #14185)
In reply to: Producing an application for both desktop and mobile by smurf
Parent article: Producing an application for both desktop and mobile

Things get complicated fast... iOS is a reasonable target because Qt supports the Pencil (which, imo, sucks...). It doesn't support the pen integration of Android or ChromeOS -- probably beccause of a lack of devices and therefore a lack of demand.

But I do have an Android and iOS device with a pen; I don't have a ChromeOS device with a pen.

Then there's the question of what the return on investment is going to be. It's clear that all three platforms are a huge headache. I already knew that, and after going through the subsurface code, I've got the headache, even without trying to do anything on my own.

Like the Windows Store and Steam binaries, if I'm going to suffer from headaches and ulcers, well, the binaries I make for those stores won't be free. iOS probably will return, Play Store might not, because of a lack of suitable devices. I have no idea about ChromeOS.

(Note that there has been at least one attempt at putting Krita in the Windows Store apart from the official one: the person who made the attempt failed to make a go of it, because they couldn't even manage to build Krita for Windows themselves. And they needed to do that to give the binary a distinctive name, because Krita is a TM.)

As the Subsurface documentation says,

Building Subsurface on Windows
------------------------------

This is NOT RECOMMENDED. To the best of our knowledge
 there is one single person who regularly does this. The 
Subsurface team does not provide support for Windows 
binary build from sources natively under Windows...

The lack of a working package management system for 
Windows makes it really painful to build Subsurface natively
under Windows, so we don't support that at all.

Unfortunately, one core library needed for Krita doesn't build with mxe or mingw on Linux at all, and mingw on Windows is needed... (It also doesn't build with msvc).

As for our equivalent for package management, look at the source code...


Yaghmour: gitgeist: a git-based social network proof of concept

Posted Feb 21, 2019 19:45 UTC (Thu) by roc (subscriber, #30627)
In reply to: Yaghmour: gitgeist: a git-based social network proof of concept by mjthayer
Parent article: Yaghmour: gitgeist: a git-based social network proof of concept

Yes, but social networks are special because the value to users is almost determined by the other users using the network --- they're almost entirely about network effects. This makes bootstrapping particularly difficult.


Distribution quotes of the week

Posted Feb 21, 2019 19:24 UTC (Thu) by iabervon (subscriber, #722)
In reply to: Distribution quotes of the week by smurf
Parent article: Distribution quotes of the week

It's a good thing, too, as I've discovered: some of the old recordings I've got sound terrible if your equipment is actually able to reproduce the encoded sound too faithfully (i.e., more faithfully that the sound engineer's setup of the time), but playing them through a lousy DAC and a gold cable sounds wonderful!


Security quotes of the week

Posted Feb 21, 2019 19:20 UTC (Thu) by excors (subscriber, #95769)
In reply to: Security quotes of the week by Karellen
Parent article: Security quotes of the week

> If the former, how do you imagine that financial / banking institutions lend more gold than they physically possess?

Probably by not lending physical gold, just giving out a transferable piece of paper saying "I promise to pay you 100 gold if you ask me to" while not having enough gold to cover all the notes they give out, and without those notes becoming ubiquitous enough or official enough to be counted as currency by any reasonable definition of "currency".

That depends on trusting the institutions giving out those notes that even though they don't have enough gold for everyone, they've been careful enough to be pretty certain that not everyone is going to ask for their gold at once. Experience shows that that generally works pretty well, but Bruce notes that Bitcoin was explicitly designed to avoid relying on trust in institutions. (And it doesn't even succeed at that, given how many people still trust their cryptocurrency to exchanges that invariably get hacked due to incompetence or simply steal their users' money.)


Producing an application for both desktop and mobile

Posted Feb 21, 2019 19:19 UTC (Thu) by smurf (subscriber, #17840)
In reply to: Producing an application for both desktop and mobile by khim
Parent article: Producing an application for both desktop and mobile

On the other hand, it might be better to go to the really different device first. The middle ground later should then be easy. However, if you go halfway first you might paint yourself into a coding corner you can't get out of without scrapping the attempt and doing it again.


Security quotes of the week

Posted Feb 21, 2019 19:18 UTC (Thu) by smoogen (subscriber, #97)
In reply to: Security quotes of the week by Karellen
Parent article: Security quotes of the week

They did this by debasing the gold/silver. Gold and silver was rarely 'pure' but mostly mixed with some other metal to make it more 'durable'. Records from the Babylonians onward show countries adding more metal when they needed to 'loan' out more currency than they had. It would usually work for a short period which many times was long enough for them to win whatever war, take the other countries gold/silver, and rebase their own. In later times, banks did the same thing... and then for various gold/silver shortages.. minted their own coins using lead and nickel that were redeemable at the store/city/etc.



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