Announcement

Collapse
No announcement yet.

Linux 6.7 Adding New Feature To Btrfs For The Steam Deck

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by Chugworth View Post
    And two partitions would sit on a single SSD drive, which can fail. They could keep the system data on a read-only subvolume, and when an update happens, create a new read-only subvolume but not delete the first. They could have two separate copies of the system data, or as many as they desire.

    Though personally I think having two completely separate copies of the data is a waste of space for a gaming device where games take up a huge amount of storage. They should store the system data on a read-only subvolume, and use the Btrfs send/receive feature to receive an updated snapshot of the changed data. That would reduce download size as well as the amount of storage used. And applying the update would be almost instant once it's downloaded.
    Back in the day I was one of those weirdos that would put /home, /var, /usr, /etc, / all on different partitions so I know from experience on multi-partition setups how when the power is lost, horrible crashes occur, etc you can lose /var while the rest stays in tact and safe. While nothing will save a Deck user when the drive dies, splitting it in half can help reduce data corruption by always have a pristine copy in case shit happens. When you don't have two root drives, 2 partitions 1 drive is the next best thing.

    Ironically, everything you said could be done with ZFS and, IMHO, it'd be a better choice to use for a gaming device since ZFS can create datasets that are more inline with a Windows environment. ZFS's case insensitivity is a godsend of a feature when using Windows game mods on Linux. That's literally why Valve uses Ext4 for their external storage.

    Once ZFS gets reflink support it'll definitely be great choice for the Deck because reflinking while Zstd-ing Proton prefixes is basically the only reason Valve uses BTRFS for their root volume. There's a lot of space saved when every game can use the same files for their prefixes thanks to reflinks. When ZFS can fulfill all the roles Valve is using for both BTRFS and Ext4, they need to consider changing their root FS. Then Valve can start funding ZFS on Windows so Deck users can manage root images (zfs send|recv) and backups from any consumer OS in the world.

    Comment


    • #12
      Originally posted by carewolf View Post

      Yes it can.
      Is there any dock with HDMI, DP, USB, Ethernet etc ports?

      Comment


      • #13
        andrea76 Maybe not with displayport, but i don't think there are any docks for the steam deck without hdmi, usb and ethernet ports. Take a look at the official dock, that should have exactly what you are looking for. You can check it out over at https://store.steampowered.com/steamdeckdock

        Comment


        • #14
          Originally posted by vancha View Post
          andrea76 Maybe not with displayport, but i don't think there are any docks for the steam deck without hdmi, usb and ethernet ports. Take a look at the official dock, that should have exactly what you are looking for. You can check it out over at https://store.steampowered.com/steamdeckdock
          the official dock has displayport too

          Comment


          • #15
            It is generally recommended to mount filesystems by UUID. What happens then when you have two filesystems with the same UUID, will it just mount a random one? And even worse, in the multi-device case, will it mix-and-match between the two duplicates that may since have gone out of sync? (Just to be clear, these questions are already relevant today, but the answer is just "you don't".)

            Comment


            • #16
              Originally posted by skeevy420 View Post

              Back in the day I was one of those weirdos that would put /home, /var, /usr, /etc, / all on different partitions so I know from experience on multi-partition setups how when the power is lost, horrible crashes occur, etc you can lose /var while the rest stays in tact and safe. While nothing will save a Deck user when the drive dies, splitting it in half can help reduce data corruption by always have a pristine copy in case shit happens. When you don't have two root drives, 2 partitions 1 drive is the next best thing.

              Ironically, everything you said could be done with ZFS and, IMHO, it'd be a better choice to use for a gaming device since ZFS can create datasets that are more inline with a Windows environment. ZFS's case insensitivity is a godsend of a feature when using Windows game mods on Linux. That's literally why Valve uses Ext4 for their external storage.

              Once ZFS gets reflink support it'll definitely be great choice for the Deck because reflinking while Zstd-ing Proton prefixes is basically the only reason Valve uses BTRFS for their root volume. There's a lot of space saved when every game can use the same files for their prefixes thanks to reflinks. When ZFS can fulfill all the roles Valve is using for both BTRFS and Ext4, they need to consider changing their root FS. Then Valve can start funding ZFS on Windows so Deck users can manage root images (zfs send|recv) and backups from any consumer OS in the world.
              With ZFS they could also use the "copies" property to mirror the system data in two separate locations. I don't think Btrfs has an equivalent feature that could be applied just to one subvolume.

              I love ZFS for servers and NAS devices, but I would be hesitant to recommend it for desktop computers and especially gaming devices. The reason is, it's quite a large filesystem and it relies heavily on memory for its performance. If a game is using up most of the system's memory, that may cause poor performance with ZFS. Of course, I haven't really spent much time using ZFS in a desktop scenario so I'm not sure how much of an issue that would be on modern SSD drives.

              Comment


              • #17
                Originally posted by andrea76 View Post

                Is there any dock with HDMI, DP, USB, Ethernet etc ports?
                There is plenty, and there is even an official dock made by Valve, although it is quite expensive.

                Comment


                • #18
                  Originally posted by archkde View Post
                  It is generally recommended to mount filesystems by UUID. What happens then when you have two filesystems with the same UUID, will it just mount a random one? And even worse, in the multi-device case, will it mix-and-match between the two duplicates that may since have gone out of sync? (Just to be clear, these questions are already relevant today, but the answer is just "you don't".)
                  They can mount by PARTUUID in this case, or by PARTLABEL.

                  Comment


                  • #19
                    Originally posted by Chugworth View Post
                    With ZFS they could also use the "copies" property to mirror the system data in two separate locations. I don't think Btrfs has an equivalent feature that could be applied just to one subvolume.

                    I love ZFS for servers and NAS devices, but I would be hesitant to recommend it for desktop computers and especially gaming devices. The reason is, it's quite a large filesystem and it relies heavily on memory for its performance. If a game is using up most of the system's memory, that may cause poor performance with ZFS. Of course, I haven't really spent much time using ZFS in a desktop scenario so I'm not sure how much of an issue that would be on modern SSD drives.
                    Just fine for the past 7 years for me. Granted, I've only ever used ZFS on desktop Linux with 16GB, 48GB, 32GB, and 64GB memory systems so it's not like I was in memory starved situations. ZFS always gave up memory as necessary and I was almost always GPU limited. It wasn't until modern gaming that ZFS read/write speed was a factor, and using faster drives fixes that. You can also use an NVMe cache. I do, but it isn't necessarily optimal and can introduce read speed issues when things aren't cached...which is especially true since my pool is in transition from HDD to SSD and only has a single SSD.

                    Comment


                    • #20
                      Originally posted by aviallon View Post

                      They can mount by PARTUUID in this case, or by PARTLABEL.
                      Good point, but IIRC btrfs still finds the other devices by UUID, so that will only help you for the first half.

                      Comment

                      Working...
                      X