Skip to content

Commit 4de4ece

Browse files
authored
Merge pull request ceph#59912 from guits/drive-group-spec-bool-args-followup-qa-nvme_loop-fix
qa: remove all bluestore signatures on devices
2 parents fd1bafb + 902a45a commit 4de4ece

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

qa/tasks/nvme_loop.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ def task(ctx, config):
6767

6868
with contextutil.safe_while(sleep=1, tries=15) as proceed:
6969
while proceed():
70+
remote.run(args=['lsblk'], stdout=StringIO())
7071
p = remote.run(args=['sudo', 'nvme', 'list', '-o', 'json'], stdout=StringIO())
7172
new_devs = []
7273
# `nvme list -o json` will return the following output:
@@ -96,6 +97,7 @@ def task(ctx, config):
9697
vendor = device['ModelNumber']
9798
if dev.startswith('/dev/') and vendor == 'Linux':
9899
new_devs.append(dev)
100+
bluestore_zap(remote, dev)
99101
log.info(f'new_devs {new_devs}')
100102
assert len(new_devs) <= len(devs)
101103
if len(new_devs) == len(devs):
@@ -128,3 +130,13 @@ def task(ctx, config):
128130
data=old_scratch_by_remote[remote],
129131
sudo=True
130132
)
133+
134+
def bluestore_zap(remote, device: str) -> None:
135+
for offset in [0, 1073741824, 10737418240]:
136+
remote.run(args=['sudo', 'dd',
137+
'if=/dev/zero', f'of={device}',
138+
f'seek={offset}', 'bs=1',
139+
'count=4096'], stdout=StringIO())
140+
remote.run(args=['sudo', 'hexdump', '-n22',
141+
'-C', f'-s{offset}', f'{device}'],
142+
stdout=StringIO())

0 commit comments

Comments
 (0)