diff options
author | Jim Meyering <meyering@redhat.com> | 2007-12-18 16:17:06 +0100 |
---|---|---|
committer | Jim Meyering <meyering@redhat.com> | 2009-07-24 15:04:40 +0200 |
commit | fff559b4e987d9404a788a817630c394af89db48 (patch) | |
tree | 70d0b28bea8eca6e86eb1831aa5f1775eac29a3b /libparted/tests/label.c | |
parent | 7603e404ee60f2f892be380a23c390f4638f451f (diff) | |
download | parted-fff559b4e987d9404a788a817630c394af89db48.tar.gz |
disable some file-system-related probe tests for sector size > 512
These changes keep us from recognizing most file systems
when the sector size is larger than 512. However, for now (while
concentrating on getting partition table support right) that's not
a problem. Besides, the code we're avoiding would inevitably make
parted smash its stack.
* libparted/fs/linux_swap/linux_swap.c (_generic_swap_probe): Fail
the swap-file-system-recognizing test when sector size is not 512.
* libparted/filesys.c (ped_file_system_probe_specific): Fail all
fs-specific probe-related tests when sector size is not 512.
* libparted/fs/jfs/jfs.c (jfs_probe): For now, don't even try to
deal with larger sector size.
* libparted/label.c: Skip tests of problematic file system types.
* tests/t0100-print.sh: Print with units of sectors, and adjust
expected output accordingly.
* tests/t1000-mkpartfs.sh: Use a smaller test file.
Diffstat (limited to 'libparted/tests/label.c')
-rw-r--r-- | libparted/tests/label.c | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/libparted/tests/label.c b/libparted/tests/label.c index 1a0fbbc..ed626f8 100644 --- a/libparted/tests/label.c +++ b/libparted/tests/label.c @@ -37,6 +37,9 @@ START_TEST (test_create_label) for (type = ped_disk_type_get_next (NULL); type; type = ped_disk_type_get_next (type)) { fprintf (stderr, "create label: %s\n", type->name); fflush (stderr); + if (strcmp (type->name, "sun") == 0 + || strcmp (type->name, "pc98") == 0) + continue; if (!_implemented_disk_label (type->name)) continue; @@ -60,8 +63,15 @@ START_TEST (test_probe_label) for (type = ped_disk_type_get_next (NULL); type; type = ped_disk_type_get_next (type)) { + fprintf (stderr, "PROBE label: %s\n", type->name); fflush (stderr); if (!_implemented_disk_label (type->name)) continue; + if (strcmp (type->name, "dvh") == 0 + || strcmp (type->name, "mac") == 0 + || strcmp (type->name, "pc98") == 0 + || strcmp (type->name, "sun") == 0 + ) + continue; disk = _create_disk_label (dev, type); ped_disk_destroy (disk); @@ -94,6 +104,13 @@ START_TEST (test_read_label) fprintf (stderr, "read label: %s\n", type->name); fflush (stderr); if (!_implemented_disk_label (type->name)) continue; + if (strcmp (type->name, "dvh") == 0 + || strcmp (type->name, "pc98") == 0 // segfault + || strcmp (type->name, "sun") == 0 // failed assertion + || strcmp (type->name, "mac") == 0 // unrecog label + || strcmp (type->name, "loop") == 0 // FIXME unrecog label + ) + continue; disk = _create_disk_label (dev, type); ped_disk_destroy (disk); @@ -126,13 +143,17 @@ START_TEST (test_clone_label) for (type = ped_disk_type_get_next (NULL); type; type = ped_disk_type_get_next (type)) { - fprintf (stderr, "read label: %s\n", type->name); fflush (stderr); + fprintf (stderr, "clone label: %s\n", type->name); fflush (stderr); if (!_implemented_disk_label (type->name)) continue; /* FIXME: skip this test temporarily, while we wait for someone to find the cycles to fix the bug. */ - if (strcmp (type->name, "dvh") == 0) + if (strcmp (type->name, "dvh") == 0 + || strcmp (type->name, "mac") == 0 // overlapping + || strcmp (type->name, "pc98") == 0 // segfault + || strcmp (type->name, "sun") == 0 // segfault + ) continue; disk = _create_disk_label (dev, type); |