unRAID Server Release 6.1.4 Available


limetech

Recommended Posts

Download

 

Clicking 'Check for Updates' on the Plugins page is the preferred way to upgrade.

 

Note:  If you are using plugins, please see this thread regarding plugin support.

 

This is another maintenance release to update a couple packages due to security advisories, add some requested kernel options, and to integrate latest work from bonienl (once again: great work and thanks!).

 

In addition we made a small change to parity sync/check engine that should result in restoring better performance, even with mvsas cards (without using the 'nr_requests' hack - please remove this if you have it in your 'go' file).  Please post here if it makes a difference for you.

 

Sorry it took so long to get this out: we have been very busy working on 6.2-beta which I wanted to release at the same time as 6.1.4; but, we still have a couple more issues to resolve before public beta of 6.2 is ready.

 

>
unRAID Server OS Change Log

Version 6.1.4 2015-11-15

</pre>
<ul>curl: 7.45.0 (SSA:2015-302-01)
linux: 4.1.13
linux: add kernel options (per user request):

CONFIG_BE2NET: ServerEngines 10Gbps NIC - BladeEngine

linux: [PATCH] ethernet: atheros driver support e2400
linux: [PATCH] scsi: mvsas support for Asus P9A-I SAS on-board controller
ntp: version 4.2.8p4 (SSA:2015-302-03)
ssmtp: fixed issue where '#' characters could not be used in email account passwords
unraid: introduce md_sync_thresh default set to md_sync_window/2 to improve parity sync/check
webGui: enable Apply button upon 'input change' per Eric
webGui: fix bug in Browse.page where presence of dotfiles messed up Location column
webGui: integrate numerous bergware changes:

Check docker enabled state for dockerupdate process
Array devices, remove unused variables
PHP CLI scripts updates
Monitor script update and add notifications for unassigned devices
DeviceList update
Improved handling of unassigned devices
Correction in SMART selftest
Show "please wait" message when moving thru disk pages
Fixed settings selection in Mover
Fixed size computation for shares with spaces in their name
Save notifications "message" and make them show/hide in archive
Add "Compute All" function to user and disk shares
Move "Archived Notifications" to Tools
Other improvements

</ul>
<h2>Version 6.1.3 2015-09-20</h2>

<ul>
firmware: version 20150820

These are firmware files for the linux kernel loaded into devices by certain drivers.  There are some
updates to Realtek firmware which may or may not improve certain Realtek NIC performance.
linux: version 4.1.7
linux: add kernel options (all per user request):

CONFIG_SENSORS_NCT7904: Nuvoton NCT7904
CONFIG_FMC_CHARDEV: FMC mezzanine driver that registers a char device
CONFIG_FMC_TRIVIAL: FMC trivial mezzanine driver (software testing)
CONFIG_FMC_WRITE_EEPROM: FMC mezzanine driver to write I2C EEPROM

linux: removed kernel options:

CONFIG_SCSI_AIC94XX: Adaptec AIC94xx SAS/SATA support

This was removed because required firmware file is not redistributable.  This is for an old PCI-X
card anyway.  If you are using this card contact s&#x75;&#x70;&#112;&#111;&#x72;&#x74;&#64;&#108;&#x69;&#x6d;&#101;&#45;&#x74;&#x65;&#99;&#104;&#x6e;&#x6f;&#108;&#111;g&#x79;&#x2e;&#99;o&#x6d;.
CONFIG_EXT2_FS: Second extended fs support
CONFIG_EXT3_FS: Ext3 journalling file system support

Removing these options omits the code for these file systems because the ext4 file system driver
now also handles ext2 and ext3 mounts.

php: version 5.4.45

This is a security update.  Refer to http://php.net/ChangeLog-5.php#5.4.45.
webGUI changes:

Remember view selection on Dashboard page
Correct disk utilization on dashboard page
Correction in days calculation of parity in statuscheck script
Return disk PoH value as years, months, days, hours
Allow SMART info for unassigned devices
Corrected display of flash device in Main
VM Manager: allow 128MB and 256MB memory options

</ul>
<h2>Version 6.1.2 2015-09-08</h2>

<ul>
emhttp: fix possible infinite loop if client closes HTTP connection during POST data transmission

This should fix some instances of webGui hanging.
emhttp: force close smb share connections if that share security mode or access list is changed

Used to be that Windows would close SMB connections shortly after last I/O to a server.  These days
Windows likes to keep conections open.  Consequently, changing a share security mode or user access
list would appear to not take effect.  This change fixes that behavior.
linux: add kernel options:

CONFIG_SCSI_MVSAS_TASKLET: Support for interrupt tasklet

The was removed to test effect on mvsas slowdown issue.  Since it did not fix the issue we are
restoring it.

slack: added a couple terminfo mappings (user request):

xterm-color
xterm-256color

</ul>
<h2>Version 6.1.1 2015-09-06</h2>

<ul>emhttp: fix: for new installations: disk share export set to 'Auto', user share export set to 'Yes'
docker: fix: create initial docker template repo
emhttp: for new installations: disk spindown delay set to 0 (never spin down)
linux: enable kernel options:

CONFIG_BLK_DEV_NVME: NVM Express block device
CONFIG_USB_ACM: USB Modem (CDC ACM) support

linux: remove kernel options:

CONFIG_SCSI_MVSAS_TASKLET: Support for interrupt tasklet

linux: patch to ignore logging those useless and harmless msr errors that flood the syslog when running VMs
qemu: ovmf: firmware Date: 20150904
qemu: remove unneeded UefiShell.iso file
VM Manager: noVNC: performance improvements and enhancements
</ul>
<h2>Version 6.1.0 2015-08-31</h2>

<ul>avahi: supress "Invalid response packet from host" messages
btrfs-progs: version 4.1.2
docker: less verbose logging by default
docker: version 1.7.1
emhttp: bridge forward delay configurable
emhttp: disk share export Yes/No/Auto support
emhttp: fix problem not able to start multiple btrfs scrubs
emhttp: get rid of passing arbitrary commands in URL
emhttp: let Pro start regardless of attached device count
emhttp: let Trial support disks in any slots
emhttp: properly handle non-rotational devices standby mode (ie, 'spindown')
emhttp: properly handle requests from localhost (IP address 127.0.0.1)
emhttp: require credentials on all accesses, not just webGui pages
gnutls: 3.3.17.1 (SSA:2015-233-01)
libvirt: version 1.2.18
linux: version 4.1.5
linux: support "Lite-On IT Corp. / Plextor M6e PCI Express SSD [Marvell 88SS9183] (rev 14)", see https://lkml.org/lkml/2015/2/2/226
mover: only move objects where "Use Cache" is set to "Yes" for a share
ntp: enable by default
ntp: 4.2.8p3 (SSA:2015-188-03)
OpenELEC: added 6.0-beta3 image (beta3 includes hdmi sound fixes for nvidia cards and corrected 'addon_url' to allow plugins in Kodi once again)
OpenELEC: use readonly for openelec disk image
openssl: 1.0.1p (SSA:2015-190-01)
php: enable pcntl
php: version 5.4.44
samba: include linux "dot" objects in directory listings
samba: version 4.1.19
slack: ca-certificates version 20150426
slack: check USB Flash device upon startup (set 6th field of fstab to 1)
unRAIDServer.plg: improvements in unRAID-5 update: ping google instead of local gateway to determine if network up
VM Manager: allow usb devices to be used that do not have a name/desciption
VM Manager: Fix: OVMF+Q35 needs the bus set to 'usb' instead of 'ide' for CD-ROMs
VM Manager: support OpenELEC template
VM Manager: Updated noVNC (using latest as of 8/5/15, commit 8f3c0f6)
webGui: Add APCUPS summary to dashboard page
webGui: Add refresh button to Docker Scrub operation
webGui: added "Hide dot files" control on SMB Settings page
webGUI: added banner and user thumbnail image upload support
webGui: additional options for text/graphical display of Used/Free.
webGui: all '#command' and 'cmd' values must reference scripts within /usr/local/emhttp/ jail.
webGui: Corrected: default settings were not applied for apcupsd
webGui: disable Array Stop button when mover is running
webGui: enhanced report generation
webGui: feedback for kool kids
webGui: fix issues with uploading thumbnails, banner
webGui: fix docker update regression introduced in 6.1-rc1
webGui: fixed memory max display in dashboard
webGui: fix notifications not initialized on reboot
webGui: force browser reload of selected scripts and css files
webGui: include linux "hidden" objects in directory listings
webGui: install key: accept pre-keyserver links to key files
webGui: integrate latest dynamix changes; many changes, refer to github
webGui: Only show docker utilization when docker is enabled
webGui: rearrange columns on Main page
webGui: Replace alert-box for SweetAlert (enhanced messaging)
webGui: use 'ftpusers' script to define ftp users
webGui: use 'agent' script to control notification agents
webGui: other misc. bug fixes and improvements
</ul>
<h2>Version 6.0.1 2015-06-26</h2>

<ul>linux: enable kernel options:

CONFIG_USB_PRINTER: USB Printer support
CONFIG_USB_SERIAL_CP210X: USB CP210x family of UART Bridge Controllers

openssl: 1.0.1o (SSA:2015-162-01)
php: 5.4.41 (SSA:2015-162-02)
unRAIDServer plugin (this file): be compatible with both unRAID-5 and unRAID-6
webGui: Docker: Fix: volume mappings with apostrophes not escaping correctly
webGui: integrate online feedback
wget: version 1.16.3
</ul>
<h2>Version 6.0.0 2015-06-15</h2>

<ul>docker: set default template repo
webGui: other cosmetic changes
</ul>
<h2>Version 6.0-rc6a</h2>

<ul>docker: fix bug in docker/daemon/container.go: /etc/resolv.conf permissions should be 0644 not 0600
webGui: add 'restart' to docker context menu
</ul>
<h2>Version 6.0-rc6</h2>

<ul>dhcpcd: update to 6.8.1
dhcpcd: put dhcpcd in background if no carrier and/or no IP address after 60 seconds
docker: trigger docker inotify watches on /etc/resolve.conf
emhttp: fix cache devices getting unassigned when array slot count decreased
slack: create informative /etc/issue file
slack: maintain /etc/hostname file
slack: added 'inet' command to /root - just a symlink to /etc/rc.d/rc.inet1
webGui: Info page memory display corrections; other misc. changes
webGui: other misc changes (see github)
</ul>
<h2>Version 6.0-rc5</h2>

<ul>bonding: fix to bring ethX i/f down before adding to bond; remove dhcp delay
emhttp: fix disk/share status indicators
emhttp: fix flash share comment not showing up, added flash share 'fsColor'
emhttp: fix possible deadlock if http connection closed with output still pending
emhttp: fix single-disk cache pool not mounting after format
linux: enable kernel options:

CONFIG_NFT_MASQ: Netfilter nf_tables masquerade support
CONFIG_NFT_REDIR: Netfilter nf_tables redirect support
CONFIG_NFT_MASQ_IPV4: IPv4 masquerading support for nf_tables
CONFIG_NFT_REDIR_IPV4: IPv4 redirect support for nf_tables

slack: fix ntp configuration handling
syslinx: fix bug where Xen menu options are present in 'default' syslinux.cfg file
webGui: added symlink to /usr/local/emhttp/plugins/dynamix/scripts/diagnostics in /usr/local/sbin
webGui: file browswer: do not let user traverse up the tree beyond the mount point
webGui: add rollover status indicator text for array status and user/disk share status
webGui: add disclaimer to Diagnostics page (3rd party plugins may or may not expose personal information)
webGui: custom user thumbnail/avatars support
webGui: fix docker image file delete
webGui: VM Manger changes (see github)
</ul>
<h2>Version 6.0-rc4</h2>

<ul>btrfs-progs: update to 4.0.1
emhttp: fix bug where /mnt/user0 could be mounted when slot count decreased
emhttp: do not count zero-size block devices against device limits
emhttp: handle querystring variables with embedded single-quotes
emhttp: added comment field for disk shares
libvirt: patched rc.libvirt to eliminate bogus errors output to syslog
libvirt: enabled virtual port capability
linux: enable kernel options:

CONFIG_MACVLAN: MAC-VLAN support
CONFIG_MACVTAP: MAC-VLAN based tap driver
CONFIG_NF_TABLES_BRIDGE: Ethernet Bridge nf_tables support
CONFIG_NFT_BRIDGE_META: Netfilter nf_table bridge meta support
CONFIG_BRIDGE_NF_EBTABLES: Ethernet Bridge tables (ebtables) support
CONFIG_BRIDGE_EBT_*: (19 total Ethernet bridge tables)

qemu: upgraded to SeaBIOS 1.8.1
shfs: add NOCOW share support
unRAIDServer plugin: preserve only "previous" release; removing current release will restore previous release
webGui: fix Active Directory export settings not being active
webGui: let user configure share COW flag
webGui: make apcupsd driver_loaded script executable
webGui: VM Manager: added Force Stop context menu option when VM is paused
webGui: VM Manager: Fix: raw disk size display and adjustment capabilities
webGUI: Docker: Fix: correctly calculate total data pulled stat
webGUI: Docker: permit image to exist on user share
webGUI: create Disk Shares page under Shares, move disk share settings
webGUI: correct handling of sinqle quotes in share names
webGUI: other misc changes/bug fixes
</ul>
<h2>Version 6.0-rc3</h2>

<ul>emhttp: fix Maintenance-mode array Start
emhttp: properly output 'progress' strings output by emhttp_event scripts
emhttp: let Pro start regardless of attached device count
linux: update to 4.0.4 (btrfs fix from 4.0.3, spinlock fix from 4.0.4, btrfs balance patch)
webGui: VM Manager bug fixes
webGui: integrated improvements to apcupsd component
</ul>
<h2>Version 6.0-rc2</h2>

<ul>emhttp: restore default number of array slots to 24 (from 5 introduced in -rc1)
slack: add package: patch version 2.7.4
webGui: expunge all Xen "hooks"
webGui: VM Manager bug fixes (refer to commit history on github)
</ul>
<h2>Version 6.0-rc1</h2>

<ul>docker: update to 1.6.2
webGui: support replacement keys
webGui: must be Stopped to change Identifcation settings
</ul

Link to comment
  • Replies 127
  • Created
  • Last Reply

Top Posters In This Topic

Did a few quick parity check tests with 8 x SSDs, looks promising so far:

 

SASLP: 71MB/s to 80MB/s (back to V5 speeds)

 

SAS2LP: 92MB/s to 256MB/s

 

Few other of things I noticed:

 

  • nr_requests has no effect for me with v6.1.4
     
  • optimal tunable settings are very different from v6.1.3, everyone with a SASLP or SAS2LP should re-run tunables tester
     
  • besides these 2 controllers also tested one Dell H310, speed decreased from 326MB/s to 248MB/s, I’m not complaining, 200MB/s+ is enough for any HDD, just in case it interests LT
     
  • SAS2LP was faster with v6.1.3 and nr_requests=8 (307MB/s vs 256Mb/s), again not complaining, just reporting

 

 

Will do some more tests during the weekend.

 

 

Link to comment

Did a few quick parity check tests with 8 x SSDs, looks promising so far:

 

SASLP: 71MB/s to 80MB/s (back to V5 speeds)

 

SAS2LP: 92MB/s to 256MB/s

 

Few other of things I noticed:

 

  • nr_requests has no effect for me with v6.1.4
     
  • optimal tunable settings are very different from v6.1.3, everyone with a SASLP or SAS2LP should re-run tunables tester
     
  • besides these 2 controllers also tested one Dell H310, speed decreased from 326MB/s to 248MB/s, I’m not complaining, 200MB/s+ is enough for any HDD, just in case it interests LT
     
  • SAS2LP was faster with v6.1.3 and nr_requests=8 (307MB/s vs 256Mb/s), again not complaining, just reporting

 

 

Will do some more tests during the weekend.

 

That's a great report, thank you!  There is a tunable called 'md_sync_thresh' which you can set with a command such as:

 

mdcmd set md_sync_thresh <N>

 

The value <N> is a count of 'stripes' from 0..md_sync_window.  The way it works is: when a parity sync/check starts, it queues up 'md_sync_window' number of 'stripes'.  Thus the maximum number of in-progress 'stripes' is md_sync_window.  As these 'stripes' complete the number in-progress obviously starts decreasing.  When it reaches 'md_sync_thresh' a thread awakens, queuing up more 'stripes' until md_sync_window number of 'stripes' are again in-progress.  The default value for 'md_sync_thresh' is md_sync_window/2.  In pre-6.1.4 it behaved as if md_sync_thresh was equal to md_sync_window-1 (that is immediately queued new 'stripe' each time in-progress 'stripe' completed).  In upcoming 6.2 this setting is configurable on Disk Settings page.

Link to comment

Thank you Tom!!

 

Quick report: (just ran a parity check to around 75 GB).

 

6.1.2 to 6.1.4

SASLP went from 70's to over 105(ish).

SAS2LP went from in the 50's to currently 130.

 

Extremely pleased.  I've never had speeds that high.  Whatever you tweaked, awesome job. 

 

I'll let the SAS2LP run it's course tonight and see where it winds up.

 

Thanks again!!  (hey tomorrow I'll go mark my SAS2LP thread solved)

 

Link to comment

That's a great report, thank you!  There is a tunable called 'md_sync_thresh' which you can set with a command such as:

 

mdcmd set md_sync_thresh <N>

 

The value <N> is a count of 'stripes' from 0..md_sync_window.  The way it works is: when a parity sync/check starts, it queues up 'md_sync_window' number of 'stripes'.  Thus the maximum number of in-progress 'stripes' is md_sync_window.  As these 'stripes' complete the number in-progress obviously starts decreasing.  When it reaches 'md_sync_thresh' a thread awakens, queuing up more 'stripes' until md_sync_window number of 'stripes' are again in-progress.  The default value for 'md_sync_thresh' is md_sync_window/2.  In pre-6.1.4 it behaved as if md_sync_thresh was equal to md_sync_window-1 (that is immediately queued new 'stripe' each time in-progress 'stripe' completed).  In upcoming 6.2 this setting is configurable on Disk Settings page.

 

Me not changing that tunable was the cause of the high-end loss of performance, good you going to make it tunable as different controllers like very different values, changing it brings maximum performance back to what I believe is close to the bandwidth limit of these controllers with 8 drives:

 

Dell H310 likes the old value, md_sync_window-1

 

V6.1.3 – 326MB/s

V6.1.4 – 321MB/s

 

 

SAS2LP likes the new value, md_sync_window/2

 

V6.1.3 with nr_reqs=8 – 307MB/s

V6.1.4 – 305MB/s

 

 

With this and the other reports on this thread I believe the issue is fixed, great work!

 

Now bring V6.2  :D

 

Link to comment

That's a great report, thank you!  There is a tunable called 'md_sync_thresh' which you can set with a command such as:

 

mdcmd set md_sync_thresh <N>

 

The value <N> is a count of 'stripes' from 0..md_sync_window.  The way it works is: when a parity sync/check starts, it queues up 'md_sync_window' number of 'stripes'.  Thus the maximum number of in-progress 'stripes' is md_sync_window.  As these 'stripes' complete the number in-progress obviously starts decreasing.  When it reaches 'md_sync_thresh' a thread awakens, queuing up more 'stripes' until md_sync_window number of 'stripes' are again in-progress.  The default value for 'md_sync_thresh' is md_sync_window/2.  In pre-6.1.4 it behaved as if md_sync_thresh was equal to md_sync_window-1 (that is immediately queued new 'stripe' each time in-progress 'stripe' completed).  In upcoming 6.2 this setting is configurable on Disk Settings page.

 

Me not changing that tunable was the cause of the high-end loss of performance, good you going to make it tunable as different controllers like very different values, changing it brings maximum performance back to what I believe is close to the bandwidth limit of these controllers with 8 drives:

 

Dell H310 likes the old value, md_sync_window-1

 

V6.1.3 – 326MB/s

V6.1.4 – 321MB/s

 

 

SAS2LP likes the new value, md_sync_window/2

 

V6.1.3 with nr_reqs=8 – 307MB/s

V6.1.4 – 305MB/s

 

 

With this and the other reports on this thread I believe the issue is fixed, great work!

 

Now bring V6.2  :D

 

I updated my mainserver to 6.1.4. Saw much lower parity check speeds immediately after reboot. The M1015s in my server after comparable to the H310 I think. Should I enter mdcmd set md_sync_thresh -1 from the command-line?

 

Link to comment

I updated my mainserver to 6.1.4. Saw much lower parity check speeds immediately after reboot. The M1015s in my server after comparable to the H310 I think. Should I enter mdcmd set md_sync_thresh -1 from the command-line?

 

M1015 should be the same as H310.

 

Go to > settings > disk settings and check you md_sync_window value, default is 384.

 

Use that value-1 for md_sync_thresh, for the default value would be:

 

mdcmd set md_sync_thresh 383

 

Link to comment

Thanks for clearing that up! I miss-interpreted it and stupidly just set it to -1! Perhaps that is why I get lower speeds than before.

 

And back to previous speeds after setting the tresh value correctly. Parity check speeds is held back by the slowest drive in the array. I don't thinks the tunables will help to further improve it. It gave a md sync window of 2480 earlier when it was on 6.1.0

Link to comment

I updated my mainserver to 6.1.4. Saw much lower parity check speeds immediately after reboot. The M1015s in my server after comparable to the H310 I think. Should I enter mdcmd set md_sync_thresh -1 from the command-line?

 

M1015 should be the same as H310.

 

Go to > settings > disk settings and check you md_sync_window value, default is 384.

 

Use that value-1 for md_sync_thresh, for the default value would be:

 

mdcmd set md_sync_thresh 383

 

im assuming the value for this setting is written to the flash drive yes?, as in it will be persistent and doesn't require re-applying on boot?

Link to comment

 

im assuming the value for this setting is written to the flash drive yes?, as in it will be persistent and doesn't require re-applying on boot?

 

I believe the setting md_sync_thresh will not survive a reboot and when unraid starts it will always be 192, half the default md_sync_window value of 384.

 

Note that although some controllers like the Dell H310 appear to work faster with the old setting, the improvement I felt was with SSDs only, the new default settings should be ok for normal HDDs up to 250MB/s, also Tom already said this will be a tunable setting in V6.2.

 

For the moment and if you need to change it you could add it to your go file.

 

Link to comment

parity is definitely faster, and i would like to try and improve it some more. On V5, i used this a long time ago. Is this still the tool to use to find better tunable attributes?

 

http://lime-technology.com/forum/index.php?topic=29009.0

 

I found that running tunables-tester makes much more difference on Marvell controllers, especially the SAS2LP where it can more than double the speed, naturally there’s no harm in trying but at least for me there’s zero to little difference using this on for example the Dell H310.

 

For the SAS2LP try it with the default md_sync_thresh value of 192 and a higher value, e.g. 1024, as it should improve speeds with md_sync_window values above 1024.

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.