Bug #3645

dmu_send_impl: possibilty of pool hold leak

Added by Andriy Gapon about 1 year ago. Updated about 1 year ago.

Status:Closed Start date:2013-03-23
Priority:Normal Due date:
Assignee:Matthew Ahrens % Done:

100%

Category:zfs - Zettabyte File System Spent time: -
Target version:-
Difficulty:Bite-size Tags:needs-triage

Description

This can happen if dump_bytes fails.
Additionally, dsl_dataset_long_rele would be called without matching
dsl_dataset_long_hold.

dmu_send.c.patch (686 Bytes) Martin Matuška, 04/03/2013 10:40 am

History

Updated by Andriy Gapon about 1 year ago

Andriy Gapon wrote:

This can happen if dump_bytes fails.

The first call to dump_bytes, to be specific:
https://github.com/illumos/illumos-gate/blob/master/usr/src/uts/common/fs/zfs/dmu_send.c#L484

Updated by Martin Matuška about 1 year ago

Attaching patch that fixes the problem.

Updated by Matthew Ahrens about 1 year ago

See also bug 3695, which is a dup of this.

Updated by Matthew Ahrens about 1 year ago

  • Status changed from New to In Progress
  • Assignee set to Matthew Ahrens

Updated by Christopher Siden about 1 year ago

  • Status changed from In Progress to Closed
  • % Done changed from 0 to 100
commit de8d9cf
Author: Matthew Ahrens <mahrens@delphix.com>
Date:   Wed Apr 10 14:54:56 2013

    3645 dmu_send_impl: possibilty of pool hold leak
    3692 Panic on zfs receive of a recursive deduplicated stream
    Reviewed by: Adam Leventhal <ahl@delphix.com>
    Reviewed by: Christopher Siden <christopher.siden@delphix.com>
    Reviewed by: Dan McDonald <danmcd@nexenta.com>
    Approved by: Richard Lowe <richlowe@richlowe.net>

Also available in: Atom PDF