Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Please login to access the resource
SUSE:SLE-15:Update
device-mapper
bug-1095960_dev_io-no-discard-in-testmode.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bug-1095960_dev_io-no-discard-in-testmode.patch of Package device-mapper
From b8a7f6ba3de6aed38c2969693b6064a943ea8799 Mon Sep 17 00:00:00 2001 From: Zdenek Kabelac <zkabelac@redhat.com> Date: Sun, 8 Jul 2018 21:11:01 +0200 Subject: [PATCH] dev_io: no discard in testmode When lvm2 command is executed in test mode, discard ioctl is skipped. This may cause even data-loose in case, issuing discard for released areas was enabled and user 'tested' lvreduce. --- lib/device/dev-io.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/device/dev-io.c b/lib/device/dev-io.c index 145093f17..2a4967fc1 100644 --- a/lib/device/dev-io.c +++ b/lib/device/dev-io.c @@ -411,9 +411,11 @@ static int _dev_discard_blocks(struct device *dev, uint64_t offset_bytes, uint64 discard_range[0] = offset_bytes; discard_range[1] = size_bytes; - log_debug_devs("Discarding %" PRIu64 " bytes offset %" PRIu64 " bytes on %s.", - size_bytes, offset_bytes, dev_name(dev)); - if (ioctl(dev->fd, BLKDISCARD, &discard_range) < 0) { + log_debug_devs("Discarding %" PRIu64 " bytes offset %" PRIu64 " bytes on %s. %s", + size_bytes, offset_bytes, dev_name(dev), + test_mode() ? " (test mode - suppressed)" : ""); + + if (!test_mode() && ioctl(dev->fd, BLKDISCARD, &discard_range) < 0) { log_error("%s: BLKDISCARD ioctl at offset %" PRIu64 " size %" PRIu64 " failed: %s.", dev_name(dev), offset_bytes, size_bytes, strerror(errno)); if (!dev_close(dev)) -- 2.12.3
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor