!kyXJonZuBXCGzVwuSn:nixos.org

Systems Programming

175 Members
Kernel, stdenv, low-level hacking, patchelf, … 62 Servers

Load older messages


SenderMessageTime
8 Jul 2024
@nickkadutskyi:matrix.orgNick Kadutskyi joined the room.19:29:09
9 Jul 2024
@joerg:thalheim.ioMic92
In reply to @woobilicious:matrix.org
I guess linux-testing has some packaging changes. complaining about missing libtraceevent
if you come up with a patch that fixes testing, I can merge.
08:37:20
10 Jul 2024
@oak:universumi.fioak changed their profile picture.20:20:56
@zzantares:matrix.org@zzantares:matrix.org changed their display name from demo-reset to Hamlet'sPiedPlumber.23:02:30
12 Jul 2024
@valconius:matrix.org@valconius:matrix.org left the room.01:16:54
15 Jul 2024
@sielicki:matrix.orgsielicki left the room.00:28:03
@sielicki:matrix.orgsielicki joined the room.00:28:58
@sielicki:matrix.orgsielicki

looking for some feedback on what we should do with linuxPackages.ena (the driver for the ec2 nitro NICs). It's a bit complicated:

  1. ena has an upstreamed driver, available for a very long time and which gets regular updates in mainline, that will work for the large majority of cases. https://github.com/torvalds/linux/tree/master/drivers/net/ethernet/amazon/ena

  2. Development for that out-of-tree driver is released independently on a separate release cadence from the kernel here: https://github.com/amzn/amzn-drivers/ . It has more-frequent updates than what you can get on a stable kernel, and also contains some patches were rejected by upstream but are associated with performance improvements.

  3. I think it's also worth mentioning that there's a sort-of third variant of the driver in the form of https://github.com/amazonlinux/linux where they aggressively and quickly pick commits from (2) into the in-tree module.

Problems with this:

  1. Up until a few months ago, I was on the fw team for ena express and was paying close attention to all the driver releases for testing reasons, so I made an effort to make a PR to bump the ena module whenever I knew there was a new driver out, but A: it can be hard to get reviews and so they would tend to sit for a while, especially for a package like this that causes so much rebuilding, and 2. I now work more closely to EFA than ENA and I'm not able to stay on top of it anymore, so we can fall behind pretty quickly (as we have right now, see https://github.com/NixOS/nixpkgs/pull/313941 )

  2. when nixpkgs does fall behind from the latest release, if someone is using a newer mainline-ish kernel, there's a chance that we're effectively downgrading the module for them and the in-tree module has bugfixes that they're missing.

  3. I believe there's also the potential that the preference is not correct and the in-tree version gets loaded when it should not be, I need to check what happens here.

00:53:26
@sielicki:matrix.orgsielicki

I think my preference is:

  1. continue to have linuxPackages.ena, but make it opt-in. Should setup a nixpkgs-update script for it to watch for releases so we're sure it stays up to date, and document that it's only there if you're on a non-default kernel with a very outdated in-tree ena module. Ideally, restrict hydra to not build it everywhere, making the PRs more palatable to be merged quickly. People can opt into it if they prefer to, but just remove it from the default EC2 profile.

  2. the ec2 profile in nixpkgs should prefer to use the amazonlinux kernel from (3), as it contains fixes for a lot of other ec2-specific things, and it also brings in newer ena drivers, too.

00:59:04
@sielicki:matrix.orgsielickihow much pushback can I expect if I put up PRs for the above?01:00:16
@sielicki:matrix.orgsielicki *

looking for some feedback on what we should do with linuxPackages.ena (the driver for the ec2 nitro NICs). It's a bit complicated:

  1. ena has an upstreamed driver, available for a very long time and which gets regular updates in mainline, that will work for the large majority of cases. https://github.com/torvalds/linux/tree/master/drivers/net/ethernet/amazon/ena
  2. Development for that out-of-tree driver is released independently on a separate release cadence from the kernel here: https://github.com/amzn/amzn-drivers/ . It has more-frequent updates than what you can get on a stable kernel, and also contains some patches were rejected by upstream but are associated with performance improvements.
  3. I think it's also worth mentioning that there's a sort-of third variant of the driver in the form of https://github.com/amazonlinux/linux where they aggressively and quickly pick commits from (2) into the in-tree module.

Problems with this:

  1. Up until a few months ago, I was on the fw team for ena express and was paying close attention to all the driver releases for testing reasons, so I made an effort to make a PR to bump the ena module whenever I knew there was a new driver out, but A: it can be hard to get reviews and so they would tend to sit for a while, especially for a package like this that causes so much rebuilding, and 2. I now work more closely to EFA than ENA and I'm not able to stay on top of it anymore, so we can fall behind pretty quickly (as we have right now, see https://github.com/NixOS/nixpkgs/pull/313941 )
  2. when nixpkgs does fall behind from the latest release, if someone is using a newer mainline-ish kernel, there's a chance that we're effectively downgrading the driver for them and the in-tree module has bugfixes that they're missing in the out-of-date out-of-tree module.
  3. I believe there's also the potential that the preference is not correct and the in-tree version gets loaded when it should not be (might not be present in the initrd by default on all the profiles...), I need to check what happens here.
01:01:36
@sielicki:matrix.orgsielicki *

looking for some feedback on what we should do with linuxPackages.ena (the driver for the ec2 nitro NICs). It's a bit complicated:

  1. ena has an upstreamed driver, available for a very long time and which gets regular updates in mainline, that will work for the large majority of cases. https://github.com/torvalds/linux/tree/master/drivers/net/ethernet/amazon/ena
  2. Development for that driver is released independently on a separate release cadence from the kernel here as an out-of-tree module: https://github.com/amzn/amzn-drivers/ . This is what linuxPackages.ena represents. It has more-frequent updates than what you can get on a stable kernel, and also contains some patches were rejected by upstream but are associated with performance improvements.
  3. I think it's also worth mentioning that there's a sort-of third variant of the driver in the form of https://github.com/amazonlinux/linux where they aggressively and quickly pick commits from (2) into the in-tree module.

Problems with this:

  1. Up until a few months ago, I was on the fw team for ena express and was paying close attention to all the driver releases for testing reasons, so I made an effort to make a PR to bump the ena module whenever I knew there was a new driver out, but A: it can be hard to get reviews and so they would tend to sit for a while, especially for a package like this that causes so much rebuilding, and 2. I now work more closely to EFA than ENA and I'm not able to stay on top of it anymore, so we can fall behind pretty quickly (as we have right now, see https://github.com/NixOS/nixpkgs/pull/313941 )
  2. when nixpkgs does fall behind from the latest release, if someone is using a newer mainline-ish kernel, there's a chance that we're effectively downgrading the driver for them and the in-tree module has bugfixes that they're missing in the out-of-date out-of-tree module.
  3. I believe there's also the potential that the preference is not correct and the in-tree version gets loaded when it should not be (might not be present in the initrd by default on all the profiles...), I need to check what happens here.
01:02:24
@sielicki:matrix.orgsielicki *

looking for some feedback on what we should do with linuxPackages.ena (the driver for the ec2 nitro NICs). It's a bit complicated:

  1. ena has an upstreamed driver, available for a very long time and which gets regular updates in mainline, that will work for the large majority of cases. https://github.com/torvalds/linux/tree/master/drivers/net/ethernet/amazon/ena
  2. Development for that driver is released independently on a separate release cadence from the kernel here as an out-of-tree module: https://github.com/amzn/amzn-drivers/ . This is what linuxPackages.ena represents. It has more-frequent updates than what you can get on a stable kernel, and also contains some patches were rejected by upstream but are associated with performance improvements.
  3. I think it's also worth mentioning that there's a sort-of third variant of the driver in the form of https://github.com/amazonlinux/linux where they aggressively and quickly pick commits from (2) into the in-tree module.

Problems with this:

  1. Up until a few months ago, I was on the fw team for ena express and was paying close attention to all the driver releases for testing reasons, so I made an effort to make a PR to bump the ena module whenever I knew there was a new driver out, but A: it can be hard to get reviews and so they would tend to sit for a while, especially for a package like this that causes so much rebuilding, and B: I now work more closely to EFA than ENA and I'm not able to stay on top of it anymore, so we can fall behind pretty quickly (as we have right now, see https://github.com/NixOS/nixpkgs/pull/313941 )
  2. when nixpkgs does fall behind from the latest release, if someone is using a newer mainline-ish kernel, there's a chance that we're effectively downgrading the driver for them and the in-tree module has bugfixes that they're missing in the out-of-date out-of-tree module.
  3. I believe there's also the potential that the preference is not correct and the in-tree version gets loaded when it should not be (might not be present in the initrd by default on all the profiles...), I need to check what happens here.
01:02:54
@oak:universumi.fioak changed their profile picture.03:16:08
16 Jul 2024
@mfed3:matrix.org@mfed3:matrix.org left the room.00:05:36
18 Jul 2024
@tewi:queer.cattewi 🏳️‍⚧️ joined the room.00:24:52
@tewi:queer.cattewi 🏳️‍⚧️ changed their profile picture.23:50:51
@tewi:queer.cattewi 🏳️‍⚧️ removed their profile picture.23:52:42
@tewi:queer.cattewi 🏳️‍⚧️ set a profile picture.23:53:18
20 Jul 2024
@arianvp:matrix.orgArian joined the room.10:37:00
@joerg:thalheim.ioMic92 sielicki: I pinged the AMI maintainer in nixpkgs. 10:37:07
@joerg:thalheim.ioMic92 * sielicki: I pinged the AMI maintainer in nixpkgs and also assigned to the ena bump. 10:38:25
@joerg:thalheim.ioMic92 * sielicki: I pinged the AMI maintainer in nixpkgs and also assigned them to the ena bump. 10:38:40
@arianvp:matrix.orgArianHello that's me. I am happy with any solution. Also happy to review your PRs and be added to maintainers10:44:44
@arianvp:matrix.orgArianUsing the mainline ENA driver by default sounds like the least amount of maintenance burden. But if you think its safe enough we can also use the upstream driver by default 10:47:27
21 Jul 2024
@arianvp:matrix.orgArianDo we package the Amazon Linux kernel already in nixpkgs?15:39:57
@arianvp:matrix.orgArianI think running mainline kernel with mainline ENA driver is the easiest from a maintenance perspective. Because there is nothing to do for me. :') 15:40:43
@arianvp:matrix.orgArianBut if it is relatively easy for us to package the Amazon Linux kernel I'm open to that as well15:40:57
22 Jul 2024
@woobilicious:matrix.orgwoobilicious Arian: custom kernel builds are easy as long as there's some way to script update bumps. https://github.com/NixOS/nixpkgs/tree/master/pkgs/os-specific/linux/kernel 08:42:25
23 Jul 2024
@ezzobirbezziou:matrix.orgEzzobir Bezziou joined the room.08:20:13

Show newer messages


Back to Room ListRoom Version: 6