Memory modified after free, seemingly geli related

Ed Maste emaste at freebsd.org
Thu Aug 6 03:57:57 UTC 2015


On 6 August 2015 at 03:11, Pawel Jakub Dawidek <pjd at freebsd.org> wrote:
>>
>> I'm seeing it too. I tracked it down to ZFS. The bio was last owned by
>> the ZFS::VDEV GEOM class, which is modyfing bio_error on freed bio. I'm
>> investigating further and will let you know here once I find the
>> cause.
>
> Ok. It was bio from ZFS in my case, but it was GELI which modified
> bio_error after delivering bio.

Ok, so this is (sadly) the same issue as PR 199705.

> I'm not fully convinced that panic is the right response to
> crypto_dispatch() failure. It means that the driver failed our request
> and didn't call our callback, which is bad as we never complete the I/O.
> The crypto drivers tend to return errors only if the request itself is
> bogus, but that is program's bug and not a runtime condition. In other
> words panic should be fine here.

The patch in the PR just discards the return value from
crypto_dispatch(). I'm happy either way, or perhaps a KASSERT.


More information about the freebsd-current mailing list