Comment 0 for bug 1762920

Revision history for this message
Tomo (tomoyuki) wrote :

I apologize for direct mentioning to the source codes.
Problem:
 try_mount() in casper-helpers script doesn't honor the mount-point parameter when mount-option != "ro".
 This is obvious on code, but it wouldn't what it meant to be.
 I guess,
   if the device is already mounted on A, and
     if the indicated mount point of which is the same as previous mounted (i.e. A; where_is_mounted() says),
      do mount -o remount ...
   else
      do mount -o bind ...
   whatever the indicated mount options are.

  This spec suffers in the case,
   setting persistence YES, boot media, especially USB, is multi-partitioned, and persistence data are on separated part from the base boot image.
      In that case, find_cow_device() falsely unmount /cdrom (because where_is_mounted() says '/cdrom' was
   previous mount point in the device searching iteration) and gone busybox prompt.
  There might be a fix find_cow_device() itself but, I thought that try_mount() is fundamental.

A patch attached is a sample to solve this.