[Cc'ing the list, in case others are interested. ] Stephen Powell wrote: > On Wed, 27 Oct 2010 06:08:14 -0400 (EDT), Jim Meyering wrote: >> Stephen Powell wrote: ... > But the new patch does assume, > just like the one above-mentioned one does, that the four context diffs > mentioned in your previous e-mail are already applied. ... > > OK, here is the new patch: > > http://www.wowway.com/~zlinuxman/parted/parted_fba_diag_patch.diff
Thank you. I confirmed that it applies and doesn't cause any trouble on x86_64/linux. I'll actually look at the code and make sure tests pass on an s390x next week, assuming I can get access. Speaking of tests, can you outline a couple that will exercise some (more the merrier) of this new code? > In order to make the DIAG driver work for FBA DASD with a block > size greater than 512, I had to make a rather awkward patch to > C function vtoc_read_volume_label in libparted/labels/vtoc.c. > The "right" logic would be "If this is an FBA DASD device > using the DIAG driver, and the effective block size used by the > DIAG driver is greater than 512, then do it this way. Else, > do it the normal way." (Note that when using the FBA driver, > the effective block size is always 512, regardless of the CMS > logical block size stored in the volume label. The DIAG driver, > on the other hand, honors the CMS logical block size.) > > The problem is that the information needed to make that decision > has not been provided to the routine (via the parameter list). > So what I ended up doing is assuming the normal way, then if > I don't find a recognized volume label header (VOL1, LNX1, > or CMS1, in EBCDIC), then I assumed that it must be the special > case. So in the special case I end up doing an unnecessary > read. It's a kludge, but it works. > > Now about the NEWS article. How about something like this? Great. I'll use it verbatim, with this tweak to the first sentence: Improve support of DASD devices on the s390 architecture. > o A number of improvements have been made to the support of DASD > devices on the s390 architecture. parted now supports all > DASD types (CKD and FBA), DASD formats (CDL, LDL, CMS > non-reserved, and CMS reserved), and DASD drivers (ECKD, FBA, > and DIAG) in all combinations supported by the Linux kernel. > As before, only CDL format on CKD DASD using the ECKD driver > is supported for read-write operations (create, delete, > move, re-size, etc.). However, the implicit partition > present on LDL- and CMS-formatted disks is now correctly > recognized for read-only operations. In detail: > > - parted now correctly handles LDL-format disks with a block > size other than 4096 (bug fix) > > - parted now recognizes the CMS disk format, both reserved > and non-reserved (enhancement) > > - parted now supports FBA DASD devices (enhancement) > > - parted now supports the DIAG driver when running in a > virtual machine under z/VM (enhancement) _______________________________________________ bug-parted mailing list bug-parted@gnu.org http://lists.gnu.org/mailman/listinfo/bug-parted