On Sat, Jun 04, 2016 at 09:24:54AM -0700, Dan Williams wrote: > On Sat, Jun 4, 2016 at 4:01 AM, joeyli <jlee@xxxxxxxx> wrote: > > Hi Dan, > > > > Thanks for your review. > > > > On Fri, Jun 03, 2016 at 12:27:34PM -0700, Dan Williams wrote: > >> On Fri, Jun 3, 2016 at 12:13 AM, Lee, Chun-Yi <joeyli.kernel@xxxxxxxxx> wrote: > >> > This patch adds codes to treat a volatile virtual CD region as a > >> > read-only pmem region, then read-only /dev/pmem* device can be mounted > >> > with iso9660. > >> > > >> > It's useful to work with the httpboot in EFI firmware to pull a remote > >> > ISO file to the local memory region for booting and installation. > >> > > >> > Wiki page of UEFI HTTPBoot with OVMF: > >> > https://en.opensuse.org/UEFI_HTTPBoot_with_OVMF > >> > > >> > Signed-off-by: Lee, Chun-Yi <jlee@xxxxxxxx> > >> > Cc: Gary Lin <GLin@xxxxxxxx> > >> > Cc: Dan Williams <dan.j.williams@xxxxxxxxx> > >> > Cc: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx> > >> > Cc: "Rafael J. Wysocki" <rjw@xxxxxxxxxxxxx> > >> > --- > >> > drivers/acpi/nfit.c | 8 +++++++- > >> > drivers/nvdimm/region_devs.c | 26 +++++++++++++++++++++++++- > >> > include/linux/libnvdimm.h | 2 ++ > >> > 3 files changed, 34 insertions(+), 2 deletions(-) > >> > > >> > diff --git a/drivers/acpi/nfit.c b/drivers/acpi/nfit.c > >> > index 2215fc8..b100a17 100644 > >> > --- a/drivers/acpi/nfit.c > >> > +++ b/drivers/acpi/nfit.c > >> > @@ -1949,6 +1949,7 @@ static int acpi_nfit_init_mapping(struct acpi_nfit_desc *acpi_desc, > >> > switch (nfit_spa_type(spa)) { > >> > case NFIT_SPA_PM: > >> > case NFIT_SPA_VOLATILE: > >> > + case NFIT_SPA_VCD: > >> > nd_mapping->start = memdev->address; > >> > nd_mapping->size = memdev->region_size; > >> > break; > >> > >> Why do we need to distinguish NFIT_SPA_VOLATILE vs NFIT_SPA_VCD, i.e. > >> what happens if something writes to a VCD device? > > > > Actually I didn't try to write SPA-VCD device before. Every time I mount it > > that the system responses read-only: > > > > # mount /dev/pmem0 /mnt/ > > mount: /dev/pmem0 is write-protected, mounting read-only > > > > If it can be written, then I think there have no difference between > > NFIT_SPA_VOLATILE with NFIT_SPA_VCD region. > > > > I implemented this patch to treat VCD region as read-only pmem because the > > pmem region generates /dev/pmem* device that it can be mounted. > > > > Maybe I missed. Does NFIT_SPA_VOLATILE region also generate a device in /dev > > that it can be mounted with filesystem? Then I think treat the VCD region as > > a read-only VOLATILE region that's also a solution. > > My question is why does it need to be read-only? If it's a volatile > region, does it matter if we allow writes at the block device level? > Especially if it is formatted as iso9660, it won't be writable through > the filesystem anyway. The httpboot function of EFI firmware downloads iso image from http server , then it allocates a big enough continuity memory region and extract iso to the region. Actually you are right, it does not need to be read-only. It's similar with a volatile region, just the type is NFIT_SPA_VCD and it contains the data that extracted from a iso file. Do you have better approach to treat the SPA_VCD region as a block device that it can be mounted by iso9660? Maybe I missed something... Can I mount a volatile region with iso9660? If yes, maybe just treat VCD SPA as a VOLATILE region? Thanks a lot! Joey Lee -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html