|
Bugzilla – Full Text Bug Listing |
| Summary: | RN: loop block devices: Only /dev/loop0 usable if max_part parameter is used | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE 12.2 | Reporter: | Forgotten User 7XRNh5WElB <forgotten_7XRNh5WElB> |
| Component: | Release Notes | Assignee: | Karl Eichwalder <ke> |
| Status: | RESOLVED FIXED | QA Contact: | Stephan Kulow <coolo> |
| Severity: | Normal | ||
| Priority: | P3 - Medium | CC: | jeffm |
| Version: | Final | ||
| Target Milestone: | --- | ||
| Hardware: | x86-64 | ||
| OS: | openSUSE 12.2 | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Bug Depends on: | |||
| Bug Blocks: | 784364 | ||
|
Description
Forgotten User 7XRNh5WElB
2012-09-16 18:09:07 UTC
This isn't a bug but rather a change of how things work in the 3.4 kernel. There are two ways to have partitions for loopback devices. The first is with max_part and the second is with the -P parameter to losetup. They behave slightly differently since -P will dynamically allocate minor numbers for each device (including adding/removing them on the fly with blockdev --rereadpt). Using the max_part parameter causes each loop device to allocate that many minor numbers for each device. So when you use max_part = 8 and don't change max_loop, which defaults to 8, you're using all of the allocated minor numbers with the first device. The solution is either to use -P or to _also_ use max_loop. This should probably have a release note issued. Aha, things are working as expected now. Thanks, Jeff, for your detailed explanation, and sorry for reporting a non-bug. -- Yarny You reported a bug -- we didn't document the change. :) Here is my proposal for the release notes (broadly based on your input; is there a readme in the Kernel source docs that I can reference?): Specifying Partitions for Loopback Devices With Kernel 3.4 there are two ways to have partitions for loopback devices. The first is with max_part and the second is with the -P parameter to <command>losetup</command>. They behave slightly differently since -P will dynamically allocate minor numbers for each device (including adding or removing them on the fly with <command>blockdev --rereadpt</command>). Using the max_part parameter causes each loop device to allocate that many minor numbers for each device. So when you use max_part=8 and do not change max_loop, which defaults to 8, you are using all of the allocated minor numbers with the first device. The solution is either to use -P or to <emphasis>also</emphasis> use max_loop. Fixed in SVN. openSUSE-RU-2012:1407-1: An update that has four recommended fixes can now be installed. Category: recommended (low) Bug References: 780668,784291,784364,784757 CVE References: Sources used: openSUSE 12.2 (src): release-notes-openSUSE-12.2.9-1.12.1 |