bugGNU GRUB - Bugs: bug #42632, ZFS pool not detected when...

 
 

You are not allowed to post comments on this tracker with your current authentification level.

bug #42632: ZFS pool not detected when multiple pools exist

Submitted by:  Tim Chase <dweeezil>
Submitted on:  Fri 27 Jun 2014 04:13:32 AM UTC  
 
Category: FilesystemSeverity: Major
Priority: 5 - NormalItem Group: Software Error
Status: NonePrivacy: Public
Assigned to: NoneOriginator Name: 
Open/Closed: OpenRelease: 
Release: Git masterReproducibility: Every Time
Planned Release: None

Sat 28 Jun 2014 12:48:06 PM UTC, comment #3:

For some reason, the output from the fixed version was dropped in the last comment. Here it is:

Tim Chase <dweeezil>
Sat 28 Jun 2014 12:45:58 PM UTC, comment #2:

I've done some more experimentation and believe my fix is correct. Some pool combinations will "work" because the extra vdevs being included in the pool don't harm anything so long as the correct vdev is referenced when a file is accessed. Here's an example of the bug from current master code:

Test 1: A 3-vdev striped pool consisting of (hd2,gpt2), (hd3,gpt2) and (hd4,gpt2) is followed by a single-vdev pool in (hd5,gpt2). The guid of the first pool is 309552130814F499 and the guid of the second pool is 9CF96F0E0B19F229:

and this is with the fix:

Tim Chase <dweeezil>
Fri 27 Jun 2014 01:16:06 PM UTC, comment #1:

I should add that for some reason, this problem doesn't seem to occur for all types of pools. For example, a 3-disk striped pool followed by a single-disk pool seems to work. I need to investigate this further since it might indicate a different solution is in order.

Tim Chase <dweeezil>
Fri 27 Jun 2014 04:13:32 AM UTC, original submission:

The vdev-skipping logic causes pools to be missed in some cases when multiple pools exist on a system. For example, if a system has a 3-disk raidz in one pool followed by a single-disk pool, the scanning of the 4th disk will cause the first pool to not be seen.

The most typical failure scenario is a failure of the "search.fs_uuid" command when a root pool is "followed" by a data pool.

I've worked up a fix in https://github.com/dweeezil/grub/commit/e5d99839343a41dc1826ec6875230c557694497b. This is my first look at the grub code so I'm not sure if it's correct, but it does seem to fix the problem.

Tim Chase <dweeezil>

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by dweeezil (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    No Changes Have Been Made to This Item

    Back to the top


    Powered by Savane 3.1-cleanup