View Incident:
http://co-op.engr.sgi.com/BugWorks/code/bwxquery.cgi?search=Search&wlong=1&view_type=Bug&wi=801613
Status : open Priority : 3
Assigned Engineer : dxm Submitter : dxm
*Modified User : dxm *Modified User Domain : engr
*Description :
XFS FSes with external logs are not compatible between IRIX
and Linux. IRIX external log filesystems are unmountable on
Linux XFS and Linux XFS external log filesystems on IRIX will
be unmountable at best.
This should be fixed for beta release.
==========================
ADDITIONAL INFORMATION (ADD)
From: dxm@engr (BugWorks)
Date: Sep 12 2000 04:59:40PM
==========================
My proposed fix is this:
- do away with the log footer introduced in the Linux
port
- having both IRIX and Linux cope with logs
with and without footers is a pain.
Instead:
- encode the FS uuid and "architecture" on which the
log was created in the header of each log record.
- This would allow:
- Linux to check for matching UUID between
FS and external log
- Linux to check for clean "IRIX style"
external logs, and still mount them
- Either OS to detect logs containing dirty
entries from the other OS and refuse to
mount them. (Only clean FSes may be moved
between IRIX & Linux)
- Initially, IRIX would completely ignore the extra
information an still happily mount clean Linux XFS
FSes meaning that any changes to IRIX could be done
at a leisurely pace.
Issues:
- handling of totally zeroed log (no entry in which
to encode uuid)
- either special case this (if the log is
zeroed, it should be fine to use)
- or have mkfs and repair generate a dummy
first "unmount record" which contains the
appropriate uuid etc.
- the xlog_rec_header_t is padded out to 512 bytes
in the log, allowing room for extra fields. The
extra space may or may not be zeroed normally.
This idea is still in its early stages, so I may have missed
something here. Feedback welcome.
|