Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Console View


Tags: Architectures Distributions Performance Style Tests
Legend:   Passed Failed Warnings Failed Again Running Exception Offline No data

Architectures Distributions Performance Style Tests
Michael Niewöhner
initramfs/debian: use panic() instead of directly calling /bin/sh

Debian has a panic() function which makes it possible to disable shell
access in initramfs by setting the panic kernel parameter. Use it.

Signed-off-by: Michael Niewöhner <foss@mniewoehner.de>

Pull-request: #8448 part 1/1
Michael Niewöhner
initramfs/debian: use panic() instead of directly calling /bin/sh

Debian has a panic() function which makes it possible to disable shell
access in initramfs by setting the panic kernel parameter. Use it.

Signed-off-by: Michael Niewöhner <foss@mniewoehner.de>

Pull-request: #8448 part 1/1
Chris Zubrzycki
removed undeeded dep on zfs-zed

Signed-off-by: Chris Zubrzycki <github@mid-earth.net>

Pull-request: #8447 part 5/5
Chris
Merge https://github.com/zfsonlinux/zfs

Pull-request: #8447 part 4/5
Chris
Merge branch 'master' of https://github.com/beren12/zfs

Pull-request: #8447 part 3/5
Chris
off-by-1 error. Matters on tiny systems ;-)

Signed-off-by: Chris Zubrzycki <github@mid-earth.net>

Pull-request: #8447 part 2/5
Chris
off-by-1 error. Matters on tiny systems ;-)

Pull-request: #8447 part 1/5
Brian Behlendorf
Fix overly broad spa config lock

The spa_txg_history_init_io() and spa_txg_history_fini_io() were
mistakenly taking SCL_ALL when only SCL_CONFIG is required to
access the vdev stats.  This could result in a deadlock which
was observed when running ztest.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8445 part 1/1
loli10K
zvol: allow rename of in use ZVOL dataset

While ZFS allow renaming of in use ZVOLs at the DSL level without issues
the ZVOL layer does not correctly update the renamed dataset if the
device node is open (zv->zv_open_count > 0): trying to access the stale
dataset name, for instance during a zfs receive, will cause the
following failure:

VERIFY3(zv->zv_objset->os_dsl_dataset->ds_owner == zv) failed ((null) == ffff8800dbb6fc00)
PANIC at zvol.c:1255:zvol_resume()
Showing stack for process 1390
CPU: 0 PID: 1390 Comm: zfs Tainted: P          O  3.16.0-4-amd64 #1 Debian 3.16.51-3
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
0000000000000000 ffffffff8151ea00 ffffffffa0758a80 ffff88028aefba30
ffffffffa0417219 ffff880037179220 ffffffff00000030 ffff88028aefba40
ffff88028aefb9e0 2833594649524556 6f5f767a3e2d767a 6f3e2d7465736a62
Call Trace:
[<0>] ? dump_stack+0x5d/0x78
[<0>] ? spl_panic+0xc9/0x110 [spl]
[<0>] ? mutex_lock+0xe/0x2a
[<0>] ? zfs_refcount_remove_many+0x1ad/0x250 [zfs]
[<0>] ? rrw_exit+0xc8/0x2e0 [zfs]
[<0>] ? mutex_lock+0xe/0x2a
[<0>] ? dmu_objset_from_ds+0x9a/0x250 [zfs]
[<0>] ? dmu_objset_hold_flags+0x71/0xc0 [zfs]
[<0>] ? zvol_resume+0x178/0x280 [zfs]
[<0>] ? zfs_ioc_recv_impl+0x88b/0xf80 [zfs]
[<0>] ? zfs_refcount_remove_many+0x1ad/0x250 [zfs]
[<0>] ? zfs_ioc_recv+0x1c2/0x2a0 [zfs]
[<0>] ? dmu_buf_get_user+0x13/0x20 [zfs]
[<0>] ? __alloc_pages_nodemask+0x166/0xb50
[<0>] ? zfsdev_ioctl+0x896/0x9c0 [zfs]
[<0>] ? handle_mm_fault+0x464/0x1140
[<0>] ? do_vfs_ioctl+0x2cf/0x4b0
[<0>] ? __do_page_fault+0x177/0x410
[<0>] ? SyS_ioctl+0x81/0xa0
[<0>] ? async_page_fault+0x28/0x30
[<0>] ? system_call_fast_compare_end+0x10/0x15

Reviewed by: Tom Caputi <tcaputi@datto.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
Closes #6263
Closes #8371
loli10K
zpool reports 16E expandsize on disks with oddball number of sectors

The issue is caused by a small discrepancy in how userland creates the
partition layout and the kernel estimates available space:

* zpool command: subtract 9M from the usable device size, then align
  to 1M boundary. 9M is the sum of 1M "start" partition alignment + 8M
  EFI "reserved" partition.

* kernel module: subtract 10M from the device size. 10M is the sum of
  1M "start" partition alignment + 1m "end" partition alignment + 8M
  EFI "reserved" partition.

For devices where the number of sectors is not a multiple of the
alignment size the zpool command will create a partition layout which
reserves less than 1M after the 8M EFI "reserved" partition:

  Disk /dev/sda: 1024 MiB, 1073739776 bytes, 2097148 sectors
  Units: sectors of 1 * 512 = 512 bytes
  Sector size (logical/physical): 512 bytes / 512 bytes
  I/O size (minimum/optimal): 512 bytes / 512 bytes
  Disklabel type: gpt
  Disk identifier: 49811D40-16F4-4E41-84A9-387703950D7F

  Device      Start    End Sectors  Size Type
  /dev/sda1    2048 2078719 2076672 1014M Solaris /usr & Apple ZFS
  /dev/sda9  2078720 2095103  16384    8M Solaris reserved 1

When the kernel module vdev_open() the device its max_asize ends up
being slightly smaller than asize: this results in a huge number (16E)
reported by metaslab_class_expandable_space().

This change prevents bdev_max_capacity() from returing a size smaller
than bdev_capacity().

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: George Wilson <george.wilson@delphix.com>
Reviewed by: Sara Hartse <sara.hartse@delphix.com>
Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
Closes #1468
Closes #8391
Serapheim Dimitropoulos
Error path in metaslab_load_impl() forgets to drop ms_sync_lock

Signed-off-by: Serapheim Dimitropoulos <serapheim@delphix.com>

Pull-request: #8444 part 1/1
Serapheim Dimitropoulos
Error path in metaslab_load_impl() forgets to drop ms_sync_lock

Pull-request: #8444 part 1/1
DHE
zfs(8): improve document of compression behaviours

Issue #4660
Signed-off-by: DHE <git@dehacked.net>

Pull-request: #8423 part 1/1
Brian Behlendorf
Fix manual TRIM race

Before a metaslab can be unmarked and new allocations allowed, all
inflight TRIMs still being handled need to be complete.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 8/8
Brian Behlendorf
Additional fixes

* Allow additional interations for autotrim to complete.  A failure
  was observed by the CI where it hadn't quite trimmed everything.

* When a `zpool trim` is cancelled the previous trim rate should
  be reset, so it is not used for the next trim unless requested.
  Similarly when a trim is cancelled the offset should be reset.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 7/8
Brian Behlendorf
Autotrim should skip device w/out discard

When autotrim is enabled TRIM commands should never be issued
to devices which do not support it.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 6/8
Brian Behlendorf
Additional Fixes

* Generate full path names for vdevs.  When automatically adding
  vdevs to be trimmed for a pool use the full path name.  This
  ensures the correct device will be found even when using
  symlinks from non-standard locations.

* Assorted ZTS reliability improvements for issues encountered
  by the CI.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 5/8
Brian Behlendorf
Consolidate trim and autotrim priorities

While useful for debugging this particular distinction does not
need to be presented to users.  Consolidating the types allows
for further simplification of the code and CLI reporting.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 4/8
Brian Behlendorf
Additional fixes

* Adding missing zpool_trim.kshlib to Makefile.am

* space_map_allocated() should be metslab_allocated_space()

* The `zpool trim` command should not print an error for
  devices which do not support TRIM when only the pool name
  was given.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 3/8
Brian Behlendorf
Review Feedback

* Fix extended iostat reporting.  We should consider bundling
  the trim and autotrim IOs together to keep the reporting
  clear.  While useful during development I don't see a use
  case for keeping them split.

* Include aggregate TRIMs in request size histograms.  Currently
  TRIMs will never be aggregated but that's not set in stone.  So
  let's report this in the same way as all other IOs.  A module
  options was added to allow aggreation for testing.

* Adding missing NULL to IOS_LATENCY headers.

* Prevent print_iostat_labels from underflowing when calculating
  the number of spaces to print.

* Reduce number of threads allowing in TRIM taskq

* Updated man pages.

* Switched the functional/trim/* ZTS tests to file based vdev,
  this allows for testing raidz3.  Additionally, reduced the
  maximum file size and number of directories to speed up the
  test.

* In vdev_autotrim_thread() check the vdev_autotrim_thread under
  the appropriate lock.

* Fix ztest ASSERT where a top-level device is replaced by its
  sole child.  In this case the autotrim process must be stopped
  on the tlv and then restarted if needed on the new tld.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 2/8
Brian Behlendorf
Add UNMAP/TRIM functionality to ZFS [WIP]

Original-patch-by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Contributions-by: Tim Chase <tim@chase2k.com>
Contributions-by: Chunwei Chen <tuxoko@gmail.com>
Contributions-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 1/8
Brian Behlendorf
Additional fixes

* Allow additional interations for autotrim to complete.  A failure
  was observed by the CI where it hadn't quite trimmed everything.

* When a `zpool trim` is cancelled the previous trim rate should
  be reset, so it is not used for the next trim unless requested.
  Similarly when a trim is cancelled the offset should be reset.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 8/8
Brian Behlendorf
Autotrim should skip device w/out discard

When autotrim is enabled TRIM commands should never be issued
to devices which do not support it.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 7/8
Brian Behlendorf
Additional Fixes

* Generate full path names for vdevs.  When automatically adding
  vdevs to be trimmed for a pool use the full path name.  This
  ensures the correct device will be found even when using
  symlinks from non-standard locations.

* Assorted ZTS reliability improvements for issues encountered
  by the CI.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 6/8
Brian Behlendorf
Additional fixes

* Adding missing zpool_trim.kshlib to Makefile.am

* space_map_allocated() should be metslab_allocated_space()

* The `zpool trim` command should not print an error for
  devices which do not support TRIM when only the pool name
  was given.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 5/8
Brian Behlendorf
Consolidate trim and autotrim priorities

While useful for debugging this particular distinction does not
need to be presented to users.  Consolidating the types allows
for further simplification of the code and CLI reporting.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 4/8
Brian Behlendorf
Review Feedback

* Fix extended iostat reporting.  We should consider bundling
  the trim and autotrim IOs together to keep the reporting
  clear.  While useful during development I don't see a use
  case for keeping them split.

* Include aggregate TRIMs in request size histograms.  Currently
  TRIMs will never be aggregated but that's not set in stone.  So
  let's report this in the same way as all other IOs.  A module
  options was added to allow aggreation for testing.

* Adding missing NULL to IOS_LATENCY headers.

* Prevent print_iostat_labels from underflowing when calculating
  the number of spaces to print.

* Reduce number of threads allowing in TRIM taskq

* Updated man pages.

* Switched the functional/trim/* ZTS tests to file based vdev,
  this allows for testing raidz3.  Additionally, reduced the
  maximum file size and number of directories to speed up the
  test.

* In vdev_autotrim_thread() check the vdev_autotrim_thread under
  the appropriate lock.

* Fix ztest ASSERT where a top-level device is replaced by its
  sole child.  In this case the autotrim process must be stopped
  on the tlv and then restarted if needed on the new tld.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 3/8
Brian Behlendorf
Add UNMAP/TRIM functionality to ZFS [WIP]

Original-patch-by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Contributions-by: Tim Chase <tim@chase2k.com>
Contributions-by: Chunwei Chen <tuxoko@gmail.com>
Contributions-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 2/8
Brian Behlendorf
Fix overly broad spa config lock

The spa_txg_history_init_io() and spa_txg_history_fini_io() were
taking SCL_ALL when reading the vdev stats when only SCL_CONFIG
is required.  This change is independent of the TRIM feature but
was encountered when running ztest.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 1/8
Brian Behlendorf
Autotrim should skip device w/out discard

When autotrim is enabled TRIM commands should never be issued
to devices which do not support it.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 7/7
Brian Behlendorf
Additional Fixes

* Generate full path names for vdevs.  When automatically adding
  vdevs to be trimmed for a pool use the full path name.  This
  ensures the correct device will be found even when using
  symlinks from non-standard locations.

* Assorted ZTS reliability improvements for issues encountered
  by the CI.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 6/7
Brian Behlendorf
Additional fixes

* Adding missing zpool_trim.kshlib to Makefile.am

* space_map_allocated() should be metslab_allocated_space()

* The `zpool trim` command should not print an error for
  devices which do not support TRIM when only the pool name
  was given.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 5/7
Brian Behlendorf
Consolidate trim and autotrim priorities

While useful for debugging this particular distinction does not
need to be presented to users.  Consolidating the types allows
for further simplification of the code and CLI reporting.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Pull-request: #8419 part 4/7
Sean Eric Fagan
Another feedback (consistent use of braces).

Pull-request: #8418 part 4/4
Sean Eric Fagan
Changes from feedback on ZoL PR.  Thanks everyone!

Pull-request: #8418 part 3/4
Sean Eric Fagan
Allow an option to set the process title during a zfs send.

This code is modified from iXsystem's implementation.

Pull-request: #8418 part 2/4
Sean Eric Fagan
Make it possible for 'zfs send' to report progress via process title.

This is result of my project idea at the OpenZFS developer summit's
hackathon session on November 19th, 2013 at San Francisco.

Ticket: #3462
(cherry picked from commit 13cc5237d6dbed102722cf4d3655783ee7e32fa5)

Pull-request: #8418 part 1/4
Sean Eric Fagan
Changes from feedback on ZoL PR.  Thanks everyone!

Pull-request: #8418 part 3/3
Sean Eric Fagan
Allow an option to set the process title during a zfs send.

This code is modified from iXsystem's implementation.

Pull-request: #8418 part 2/3
Sean Eric Fagan
Make it possible for 'zfs send' to report progress via process title.

This is result of my project idea at the OpenZFS developer summit's
hackathon session on November 19th, 2013 at San Francisco.

Ticket: #3462
(cherry picked from commit 13cc5237d6dbed102722cf4d3655783ee7e32fa5)

Pull-request: #8418 part 1/3