(self, block)
return array_bitmap_dict
Parse the bitmap status of the md array.

        >>> block = 'md0 : active raid1 sdd2[0] sdb2[2](S) sdc2[1]\n'
        >>>         '      100171776 blocks super 1.2 [2/2] [UU]\n'
        >>>         '      bitmap: 1/1 pages [4KB], 65536KB chunk\n\n'
        >>> print _parse_array_bitmap(block)
        {
            'total_pages': '1',
            'allocated_pages': '1',
            'page_size': 4096,
            'chunk_size': 67108864
        }

        :return: dictionary of bitmap status information
        :rtype: dict
Parse the bitmap status of the md array.
Parse the bitmap status of the md array .
def _parse_array_bitmap(self, block):
        """
        Parse the bitmap status of the md array.

        >>> block = 'md0 : active raid1 sdd2[0] sdb2[2](S) sdc2[1]\n'
        >>>         '      100171776 blocks super 1.2 [2/2] [UU]\n'
        >>>         '      bitmap: 1/1 pages [4KB], 65536KB chunk\n\n'
        >>> print _parse_array_bitmap(block)
        {
            'total_pages': '1',
            'allocated_pages': '1',
            'page_size': 4096,
            'chunk_size': 67108864
        }

        :return: dictionary of bitmap status information
        :rtype: dict
        """
        array_bitmap_regexp = re.compile(
            '^ *bitmap: (?P<allocated_pages>[0-9]*)/'
            '(?P<total_pages>[0-9]*) pages '
            '\[(?P<page_size>[0-9]*)KB\], '
            '(?P<chunk_size>[0-9]*)KB chunk.*$',
            re.MULTILINE
        )

        regexp_res = array_bitmap_regexp.search(block)

        # bitmap is optionally in mdstat
        if not regexp_res:
            return None

        array_bitmap_dict = regexp_res.groupdict()
        array_bitmap_dict_sanitizied = {}

        # convert all values to int
        for key, value in array_bitmap_dict.iteritems():
                if not value:
                    continue
                array_bitmap_dict_sanitizied[key] = int(value)

        # convert page_size to bytes
        array_bitmap_dict_sanitizied['page_size'] *= 1024

        # convert chunk_size to bytes
        array_bitmap_dict_sanitizied['chunk_size'] *= 1024

        return array_bitmap_dict
def _parse_array_bitmap ( self , block ) : array_bitmap_regexp = re . compile ( '^ *bitmap: (?P<allocated_pages>[0-9]*)/' '(?P<total_pages>[0-9]*) pages ' '\[(?P<page_size>[0-9]*)KB\], ' '(?P<chunk_size>[0-9]*)KB chunk.*$' , re . MULTILINE ) regexp_res = array_bitmap_regexp . search ( block ) # bitmap is optionally in mdstat if not regexp_res : return None array_bitmap_dict = regexp_res . groupdict ( ) array_bitmap_dict_sanitizied = { } # convert all values to int for key , value in array_bitmap_dict . iteritems ( ) : if not value : continue array_bitmap_dict_sanitizied [ key ] = int ( value ) # convert page_size to bytes array_bitmap_dict_sanitizied [ 'page_size' ] *= 1024 # convert chunk_size to bytes array_bitmap_dict_sanitizied [ 'chunk_size' ] *= 1024 return array_bitmap_dict