NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.

Forum Discussion

gregb_pro's avatar
gregb_pro
Aspirant
Apr 12, 2014

ReadyNAS OS 6.x release notes and btrfs releases

ReadyNAS OS 6.x release notes provide some insight into changes, but the notes aren't very enlightening. For example, btrfs isn't referenced in any of the ReadyNAS OS 6.x release notes since initial release. DLNA is a popular release note topic. However, DLNA isn't the foundation of the NAS. The filesystem is the foundation of a NAS, and one of the primary features of ReadyNAS OS 6.x.

Many ReadyNAS forum notes imply significant stability issues with btrfs. Surely ReadyNAS OS 6.x isn't using the same btrfs release since the initial release of ReadyNAS OS 6.0.1. What btrfs release is included in each ReadyNAS OS 6.x ?

Please include broader and more detailed description of changes in ReadyNAS OS 6.x release notes.

Thanks, Greg

8 Replies

Replies have been turned off for this discussion
  • mdgm-ntgr's avatar
    mdgm-ntgr
    NETGEAR Employee Retired
    Download the GPL. You can see the BTRFS release used in that. I've compared the GPL for a number of firmware versions.

    The Release Notes are deliberately kept simple for non technical users.
  • It would be interesting to know about what had changed with btrfs since btrfs is directly related to the kernel version, not the btrfs-tools.

    I had done some benchmarking a few weeks ago (on a regular pc) comparing the kernel 3.11 and 3.13 and I got almost double the speed for disk access with 3.13. I also tested with encryption, md5 raid and btrfs raids.

    Here is a copy of it fwiw:

    All tests have large image file (53687091712 bytes) on ssd and rsync'ed to hdd
    All file systems are mounted with default mount settings
    System load is a =< 0.08 when starting
    All system loads are checked via 'uptime' right after transfer

    uptime && rsync --progress -av /root/file.img /mnt/<mounted_file_system> && uptime

    System:
    Intel 4th generation i7
    24GB DDR3 RAM
    6 Seagate 7200 RPM drives partitioned into 10 100GB sections for each file system type

    FREENAS (9.2.2)
    ---------------
    (source image file on SSD zfs partition)

    |---------------------> System load after rsync job
    | |-------------> Average speed of transfer (bytes/sec)
    | | |-> file system type / configuration
    X.XX - 225,130,588 - ZFS-raidz2


    UBUNTU 14.04 (3.13 kernel)
    --------------------------
    (source file on lvm2 + btrfs SSD partition)

    |---------------------> System load after rsync job
    | |-------------> Average speed of transfer (bytes/sec)
    | | |-> file system type / configuration
    2.50 - 126,502,235 - btrfs (btrfs single)
    1.98 - 128,315,887 - ext4 (ext4 single)
    2.18 - 382,506,707 - btrf_array (btrfs array of 6 disks)
    2.16 - 382,217,414 - btrfs_raid (btrfs raid 6 array of 6 disks)
    2.65 - 371,627,675 - btrfs_luks_raid (btrfs raid 6 on 6 individually encrypted disks)
    2.44 - 371,695,543 - mdraid6 (btrfs on mdraid 6 - no lvm)
    6.67 - 184,724,942 - mdraid_crypt (btrfs on luks on mdraid6)
    2.67 - 356,173,930 - ext4_mdraid (ext4 on mdraid 6 - no lvm)
    6.08 - 221,764,447 - ext4_raid_crypt (ext4 on luks on mdraid6)

    Notes:
    - No zfs tests since only fuse driver was available and had really poor performance
    - Writes to single drives are very slow
    - Writes to mdraid where a single luks volume is created on top on mdraid is slow and creates a high system load.
    - It seems when 6 luks volumes are created, then btrfs_raid added on top of that is an ideal configuration

    UBUNTU 13.10 (3.11.0-18 kernel)
    -------------------------------
    (source image file on ext4 SSD partition - no lvm2)

    |---------------------> System load after rsync job
    | |-------------> Average speed of transfer (bytes/sec)
    | | |-> file system type / configuration
    3.68 - 121,616,410 - btrfs (btrfs single)
    1.69 - 83,569,876 - ext4 (ext4 single)
    1.26 - 74,419,467 - btrf_array (btrfs array of 6 disks)
    1.41 - 77,090,661 - btrfs_raid (btrfs raid 6 array of 6 disks)
    37.40 - 124,723,915 - btrfs_luks_raid (btrfs raid 6 on 6 individually encrypted disks)
    1.31 - 64,886,580 - mdraid6 (btrfs on mdraid 6 - no lvm)
    7.04 - 74,009,159 - mdraid_crypt (btrfs on luks on mdraid6)
    1.43 - 49,831,689 - ext4_mdraid (ext4 on mdraid 6 - no lvm)
    1.89 - 81,415,686 - ext4_raid_crypt (ext4 on luks on mdraid6)
    1.19 - 95,285,972 - (zfs native 0.6.1 raidz2 on 6 disks)
  • mdgm-ntgr's avatar
    mdgm-ntgr
    NETGEAR Employee Retired
    NetGear makes use of an open source 3rd party enterprise kernel (which has changes backported) and also backports some patches, I think. Some of the things they've added have provided significant performance improvements. Still hopefully they will move to a newer longterm kernel at some point.
  • Here is a cross reference table of ReadyNAS OS versions with corresponding BTRFS version.
    It is expected to see a lag between BTRFS release and incorporation into ReadyNAS OS.

      RNOS Release (Release date): RNOS BTRFS reference = BTRFS version
      ReadyNAS OS V6.0.1 (12-Mar-2013): btrfs-tools-0.20+20130117 = v3.7 (Dec 2012)
      ReadyNAS OS V6.0.2 (20-Mar-2013): btrfs-tools-0.20+20130117 = v3.7 (Dec 2012)
      ReadyNAS OS V6.0.3 (25-Mar-2013): btrfs-tools-0.20+20130117 = v3.7 (Dec 2012)
      ReadyNAS OS V6.0.4 (01-Apr-2013): btrfs-tools-0.20+20130117 = v3.7 (Dec 2012)
      ReadyNAS OS V6.0.5 (Not released)
      ReadyNAS OS V6.0.6 (18-May-2013): btrfs-tools-0.20+20130117 = v3.7 (Dec 2012)
      ReadyNAS OS V6.0.7 (Not released)
      ReadyNAS OS V6.0.8 (23-Jun-2013): btrfs-tools-0.20+20130117 = v3.7 (Dec 2012)
      ReadyNAS OS V6.1.1 (25-Aug-2013): btrfs-tools-0.20+20130705 = v3.10 (Jun 2013)
      ReadyNAS OS V6.1.2 (12-Sep-2013): btrfs-tools-0.20+20130705 = v3.10 (Jun 2013)
      ReadyNAS OS V6.1.3 (08-Oct-2013): btrfs-tools-0.20+20130705 = v3.10 (Jun 2013)
      ReadyNAS OS V6.1.4 (24-Oct-2013): btrfs-tools-0.20+20130705 = v3.10 (Jun 2013)
      ReadyNAS OS V6.1.5 (26-Dec-2013): btrfs-tools-0.20+20130705 = v3.10 (Jun 2013)
      ReadyNAS OS V6.1.6 (06-Feb-2014)
      ReadyNAS OS V6.1.7 (11-Apr-2014): btrfs-tools-0.20+20131108 = v3.12 (Nov 2013)
      ReadyNAS OS V6.1.8 (13-May-2014): btrfs-tools-0.20+20131108 = v3.12 (Nov 2013)


    Three BTRFS versions have been released since Nov 2013 (still pending ReadyNAS OS incorporation):

      v3.13 (Jan 2014)
      v3.14 (Mar 2014)
      v3.15 (Jun 2014)


    Many BTRFS sites (circa 2012) claim BTRFS is not yet stable. However recent BTRFS release notes claim the updates are targeted at stability and bug fixes. When and how will it be obvious BTRFS is stable? Who will make that claim?

    Thanks, gregb
  • mdgm-ntgr's avatar
    mdgm-ntgr
    NETGEAR Employee Retired
    Obviously some testing has to be done to make sure that an update to BTRFS is stable on ReadyNAS devices before releasing it.

    BTRFS has many advantages over EXT4. The stability of BTRFS has improved greatly over time and it is used in production.
  • gregb-pro wrote:
    Here is a cross reference table of ReadyNAS OS versions with corresponding BTRFS version.
    It is expected to see a lag between BTRFS release and incorporation into ReadyNAS OS.


    The above cross reference table of ReadyNAS OS and BTRFS version used is extremely interesting (thanks for having produced that list): will be interesting to incorporate also ReadyNAS OS 6 Kernel version information into the picture.

    As example I have a ReadyNAS RN102 that came with ReadyNAS OS 6.0.8 (Factory Default) and today I upgraded it to ReadyNAS OS 6.1.9 (RC5 Beta), Linux Kernels and BTRFS Tools are, clearly, differents (someone may say that almost any package of ReadyNAS OS 6 changed along the way, that's true and so BTRFS Tools has nothing special even if it can impact on the ReadyNAS performance and stability. It will be nice to track down each package's change between releases):

    ReadyNAS OS 6.0.8:

    Linux Kernel: Linux version 3.0.79.RN_ARM.1 (jenkins@blocks) (gcc version 4.6.2 (Linaro GCC branch-4.6.2. Marvell GCC 201201-883.01c949de) ) #1 Tue Jun 18 10:56:51 PDT 2013
    BTRFS Tools: 0.20+20130117-1.netgear2

    ReadyNAS OS 6.1.9 (RC5):

    Linux Kernel: Linux version 3.0.101.RN_ARM.1 (jenkins@blocks) (gcc version 4.6.2 (Linaro GCC branch-4.6.2. Marvell GCC 201201-883.01c949de) ) #1 Thu Jun 19 12:44:04 PDT 2014
    BTRFS Tools: 0.20+20131108-netgear3

    Regards, Davide.
  • Recent btrfs releases appear targeted at stability and bug fixes (good).
    Recent ReadyNAS 6.2.X releases have been incorporating recent btrfs releases (good).
    Here's an update to the previous ReadyNAS OS6 - btrfs table posted 13-Jul-2014:

    [ ... ]
    ReadyNAS OS V6.1.8 (13-May-2014): btrfs-tools-0.20+20131108
    ReadyNAS OS V6.1.9 (17-Sep-2014): btrfs-tools-3.14.2
    ReadyNAS OS V6.2.0 (24-Nov-2014): btrfs-tools-3.17.1
    ReadyNAS OS V6.2.1 (19-Dec-2014): btrfs-tools-3.17.3

    When and how will it be obvious BTRFS is stable? Who will make that claim?
    Remaining issues appear to be how third party NAS products (e.g. ReadyNAS) integrate btrfs and achieve stability.

    Thanks, gregb