LWN.net Logo

Recently posted comments

The Design of LLVM (Dr. Dobb's)

Posted May 30, 2012 15:43 UTC (Wed) by djc (subscriber, #56880)
Parent article: The Design of LLVM (Dr. Dobb's)

It's worth to note that most of the content has already been published in the Architecture of Open Source Applications book, volume 1.

http://www.aosabook.org/en/llvm.html


GCC Explorer - an interactive take on compilation

Posted May 30, 2012 15:32 UTC (Wed) by jamesh (subscriber, #1159)
In reply to: GCC Explorer - an interactive take on compilation by jzbiciak
Parent article: GCC Explorer - an interactive take on compilation

Right, but you can mostly think of it as a superset of C for things that C compilers agreed on 15+ years ago. And this particular piece of code was just using basic types and syntax common to both languages, so you would expect it to behave similarly.


The Design of LLVM (Dr. Dobb's)

Posted May 30, 2012 15:30 UTC (Wed) by juliank (subscriber, #45896)
Parent article: The Design of LLVM (Dr. Dobb's)

I recommend the version you get when clicking the print button, instead of clicking through the three pages. Otherwise, a standard article about LLVM, not many new things to learn if you have read Chris Lattner's previous stuff on LLVM.


The CoDel queue management algorithm

Posted May 30, 2012 15:16 UTC (Wed) by nye (guest, #51576)
In reply to: The CoDel queue management algorithm by TomH
Parent article: The CoDel queue management algorithm

>The WAN ports were configured with separate public addresses - a unique one for each router.

Interesting, so this sounds like a different configuration than some bonding setups which appear to require only a single public IP address. I wonder if that's down to how the ISP configures their interfaces.

I suspect I could make a lot more progress here if experimentation didn't mean scheduling connection downtime of an unknown duration, which in practice means being physically present in a locked office building in the dead of night (for which honestly they Do Not Pay Me Enoughâ„¢).

At any rate, thanks for the information.


Preparing for nonvolatile RAM

Posted May 30, 2012 14:55 UTC (Wed) by daglwn (subscriber, #65432)
In reply to: Preparing for nonvolatile RAM by viro
Parent article: Preparing for nonvolatile RAM

Thanks, Al. Real classy. It truly makes me want to learn more.


The CoDel queue management algorithm

Posted May 30, 2012 14:55 UTC (Wed) by mtaht (subscriber, #11087)
In reply to: The CoDel queue management algorithm by job
Parent article: The CoDel queue management algorithm

fq_codel can cut 'sparse streams', such as voip, and gaming packets,
to absurdly low delays.

codel + qfq can do even better.

The 5ms target of the overall codel algorithm is just that - a target.
Sometimes it's more, usually it's less, and with fair queuing (fq_codel) applied on top...

it can be MUCH less, especially where you need it. As in sub 1ms. Which should make a lot of gamers and voip/videoconferencing people very happy.

Also, for 10gigE installations people have been using 500us as the target,
which seems to work well. I wouldn't recommend changing the target delay for anything else at the present time.

Rather than theorize can I merely recommend people try this stuff out for themselves and ask questions on the codel at lists.bufferbloat.net.


Preparing for nonvolatile RAM

Posted May 30, 2012 14:54 UTC (Wed) by daglwn (subscriber, #65432)
In reply to: Preparing for nonvolatile RAM by paulj
Parent article: Preparing for nonvolatile RAM

The VFS doesn't. The fs layers and drivers do.

I think the discussion is pretty pointless now...


The CoDel queue management algorithm

Posted May 30, 2012 14:50 UTC (Wed) by TomH (subscriber, #56149)
In reply to: The CoDel queue management algorithm by nye
Parent article: The CoDel queue management algorithm

Those routers allow the LAN interface to be given up to two aliases in addition to their primary address.

So what I did was to set the primary address to a unique RFC1918 address, which was just used for management purposes when I needed to telnet to a specific router, and then to set the alias on each router to the same, shared, public address.

I then added static routes on each router to pass traffic for our public IPs back to the linux box where the bonding was done.

The WAN ports were configured with separate public addresses - a unique one for each router.

Bridge mode wasn't used - they were acting as normal routers.

I wouldn't like to say if the P660 is particularly good or bad - they were the free routers our ISP provided with the lines.


Tablet

Posted May 30, 2012 14:44 UTC (Wed) by marduk (subscriber, #3831)
In reply to: Tablet by epa
Parent article: Google launches Chromebook, Chromebox and gets it right (GigaOm)

Wouldn't that compete with Android tablets?


Exploring options for the openSUSE security policy

Posted May 30, 2012 14:34 UTC (Wed) by job (subscriber, #670)
In reply to: Exploring options for the openSUSE security policy by nybble41
Parent article: Exploring options for the openSUSE security policy

For a truly personal computer however, there is no such thing as privilege escalation. All the stuff I care about are accessible from my account. There is nothing useful to an attacker outside my account.

The security model for this use case is clearly very different from a server with several daemons running, or even remotely logged in users.


The CoDel queue management algorithm

Posted May 30, 2012 14:32 UTC (Wed) by nye (guest, #51576)
In reply to: The CoDel queue management algorithm by TomH
Parent article: The CoDel queue management algorithm

>Well http://compton.nu/2009/12/per-packet-load-balancing-with-... explains how I bonded four ADSL links with the same ISP.

Thank you for that link. I hope nobody minds the thread-hijacking to ask a little more about this - it's not a topic that seems to have much Google juice.

With that setup, do I understand correctly that - assuming the ISP has the bonding set up on their end - configuring the TEQL interface as you have will work regardless of the connection method used? It looks like it's actually very simple so long as you know the secret sauce.

What I'm not sure about is the IP addresses on the routers. You say that they need to support two different *LAN* addresses; how are the WAN ports configured? Are they bridged or do they need an additional address?

Say for the sake of example that you have a /29 netblock, giving you 6 addresses once you've accounted for the network and broadcast addresses. You use one that's shared between the routers and one for the teql0 interface, leaving 4 available for other machines. Is that correct?

Incidentally, would you recommend the Zyxel P-660 series? I do wonder if a better modem/router might solve my periodic loss of ADSL synchronisation, and while I've tried two different models, it's entirely plausible that they're both fairly intolerant of noisy lines.


The CoDel queue management algorithm

Posted May 30, 2012 14:13 UTC (Wed) by Cyberax (subscriber, #52523)
In reply to: The CoDel queue management algorithm by dlang
Parent article: The CoDel queue management algorithm

In Ukraine no tax money go into ISP business. Indeed, competition is fierce.

Yet we get 100Mb for $8 a month in cities.


Fedora 17 released

Posted May 30, 2012 14:09 UTC (Wed) by drag (subscriber, #31333)
In reply to: Fedora 17 released by marcH
Parent article: Fedora 17 released

> Maybe explain a tiny bit what brtfs subvolumes are.

Btrfs allows you to pool storage volumes together in a manner similar to LVM.

Although, I believe, it operates at a logical data/file system layer rather then block layer like LVM does. This allows you to do fancy things like stripe your metadata using a 'RAID10' and make your data 'RAID1'. Another distinct advantage to this is that your volumes don't have to match sizes or be of even numbers. So I can create a 'RAID1' array of a 500GB disk drive with a 1TB disk drive and a third 2TB disk drive. The file system just logically makes sure that any hunk of data is available on at least two devices. Newer versions of Btrfs allow you to rebalance and restripe your volumes on the fly in addition to being able to remove and add storage devices whenever you feel like it.

Btrfs allows you to break up your pool into separate file systems. Each with their own metadata and other such things in their own namespace. These divisions are called 'subvolumes'. By using subvolumes you can take easier advantage of features like snapshotting, different mount options, quotas, and the like.

If you look at the 'root' btrfs volume then subvolumes will show up as things that are like "/.subvolname". Although you can individually mount them and access them without first mounting the root subvolume.

So on my 'home system' which I use to house many KVM guests in addition to being my main desktop system I have, IIRC, 3 1TB drives combined with 2 2TB drives in a BTRFS storage pool.

The various file systems that I use shows up on the btrfs root volume as:
/.rootfs
/.homefs
/.imagefs
etc etc.

The initrd for Fedora is sufficiently btrfs-aware that I can specify that it use a subvolume to be mounted as '/' for my OS during boot up.

Now the problem with Anaconda that I have ran into the past is that is unless it's able to support the file systems I am using that I cannot seem to be able to use it to install or upgrade Fedora.

I would like it if I could just tell Anaconda to skip the whole disk formatting and mounting BS and just use something like /mount/target/ and let me figure out how to setup the file systems after it's done it's install. If I could do that then that would be the preferred method for upgrading my OS as I can use a live CD to setup the volumes how I want it and then just use Anaconda from there.

I haven't really looked into it too deeply right now and as far as I know the 'target' option may exist. I just am not that familiar with it. I haven't had time to download the Fedora 17 installer and play around with it since my original post.


GCC Explorer - an interactive take on compilation

Posted May 30, 2012 14:03 UTC (Wed) by jzbiciak (✭ supporter ✭, #5246)
In reply to: GCC Explorer - an interactive take on compilation by jamesh
Parent article: GCC Explorer - an interactive take on compilation

Of course, GCC Explorer is showing us a C++ compiler, not a C compiler. There are many here who will point out that C++ isn't C or even a superset of C. ;-)


The CoDel queue management algorithm

Posted May 30, 2012 14:02 UTC (Wed) by job (subscriber, #670)
In reply to: The CoDel queue management algorithm by nye
Parent article: The CoDel queue management algorithm

Any hardcore gamer would tell you a 100ms connection is pretty detrimental to your game performance (hence LAN parties).

I have a few VoIP installations for small businesses, and I generally don't want to do them if I can't keep latency under 50ms. It starts to get very annoying before 100ms (as in the "satellite link" effect).

That's why I think queue management algorithms should not be tuned for overused DSL links. While that may be relevant to those who are stuck with them, the buffers in your DSL equipment will kill your latency anyway. Already LTE connections have latency under ten milliseconds if you can avoid keeping them filled.

I agree 10 ms per hop sounds like almost an order of magnitude off. The people for which that is relevant won't be helped by this anyway.


The CoDel queue management algorithm

Posted May 30, 2012 13:50 UTC (Wed) by job (subscriber, #670)
In reply to: The CoDel queue management algorithm by dlang
Parent article: The CoDel queue management algorithm

Higher population density? Late to the party? Please try to get your facts straight next time if you're going to waste electrons on a post.


Moving on

Posted May 30, 2012 12:17 UTC (Wed) by ssam (subscriber, #46587)
Parent article: Moving on

worth noting that just because you go over 700MB and move from CD to DVD it does not mean that you have to use 4.7GB. So we not make a 1GB iso for the standard install and a 200-300MB minimal (no GUI) version.


Moving on

Posted May 30, 2012 12:08 UTC (Wed) by ssam (subscriber, #46587)
In reply to: Moving on by djc
Parent article: Moving on

but a gentoo install takes up quite a bit of space, seen as you need to have a compiler and all the dev libraries. And portage takes up a fair about of space.


Runtime filesystem consistency checking

Posted May 30, 2012 11:50 UTC (Wed) by aigarius (subscriber, #7329)
Parent article: Runtime filesystem consistency checking

Would it not be easier to have a low priority kernel thread that runs in the background and periodically checks the integrity of the whole filesystem? It could then both fix it and also do the defrag actions in a continuous way.


GCC Explorer - an interactive take on compilation

Posted May 30, 2012 11:28 UTC (Wed) by jamesh (subscriber, #1159)
In reply to: GCC Explorer - an interactive take on compilation by jzbiciak
Parent article: GCC Explorer - an interactive take on compilation

That kind of thing only really happens when using a static initialiser for a character array. Since this was an array of pointers, that doesn't apply.

This is all part of the C standard, so I doubt you'd see much variation in any compiler made in the last 15 years (probably more).


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