1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 <2020> 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: autosave 5-10-1 on RTEMS-4.10.2, mount failed |
From: | "Hu, Yong via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "Sintschuk, Michael" <michael.sintschuk at bam.de>, EPICS tech-talk <tech-talk at aps.anl.gov> |
Date: | Mon, 21 Sep 2020 20:02:31 +0000 |
Hi Michael, 1) You said this: And this is the exports file-entry for my autosave folder: /autosave 172.17.8.0/24(rw,no_subtree_check) 192.168.99.0/24(rw,no_subtree_check) Have you really created a folder “autosave” under the root directory “/”? Or you actually created “autosave” under /soft/epics/IOC/iocRtems/? If so, you need to do this in your NFS exports file-entry: /soft/epics/IOC/iocRtems 172.17.8.0/24(rw,no_subtree_check) 192.168.99.0/24(rw,no_subtree_check) And you need to change the autosave-related-path in your st.cmd accordingly: set_savefile_path("/soft/epics/IOC/iocRtems/autosave") set_requestfile_path("/soft/epics/IOC/iocRtems/autosave") save_restoreSet_NFSHost("nfsioc","192.168.99.1") Basically, on your NFS server, you need to create a directory “autosave” and make sure it is writable: mkdir -p autosave; chmod 777 -R autosave; 2) I do not see how the autosave request files (auto_positions.req,
auto_settings.req) are provided/generated. If you are using “info” in your .db, you should use something like below in your st.cmd to automatically generate those request files: makeAutosaveFileFromDbInfo("/soft/epics/IOC/iocRtems/autosave/auto_positions.req ", "autosaveFields_pass0") makeAutosaveFileFromDbInfo("/soft/epics/IOC/iocRtems/autosave/auto_
settings.req ", "autosaveFields_pass0") makeAutosaveFileFromDbInfo("/soft/epics/IOC/iocRtems/autosave/auto_
settings.req ", "autosaveFields_pass1") Good luck! Yong Hu NSLS-II Controls Group From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> Hi all, I’m setting up an IOC, BASE-3.15.7 and autosave 5-10-1, on an Motorola board MVME-2100 using RTEMS-4.10.2.
The comand save_restoreSet_NFSHost
fails on it with mount failed: Invalid argument .
But my IOC is using nfs to mount it’s “st.cmd” file, so I don’t know why it is not seeing the autosave folder, that is also exported via NFS. Here is my IOC Start-up: Copyright Motorola Inc. 1988 - 2004, All Rights Reserved PPC5 Debugger/Diagnostics Release Version 1.1 - 08/20/2004 RM04 COLD Start Local Memory Found =02000000 (&33554432) MPU Clock Speed =200Mhz BUS Clock Speed =67Mhz Reset Vector Location : ROM Bank B Mezzanine Configuration: Single-MPU Current 60X-Bus Master : MPU0 Idle MPU(s) : NONE L2Cache: NONE System Memory: 32MB, Parity NOT Enabled (Non-Parity-Memory Detected) SelfTest/Boots about to Begin... Press <BREAK> at anytime to Abort ALL NetBoot about to Begin... Press <ESC> to Bypass, <SPC> to Continue Network Booting from: DEC21143, Controller 0, Device 0 Device Name: /pci@fec00000/pci1011,19@e,0:0,0 Loading: epics/iocRtems/iocRtems.boot Client IP Address = 192.168.99.250 Server IP Address = 192.168.99.1 Gateway IP Address = 0.0.0.0 Subnet IP Address Mask = 255.255.255.0 Boot File Name = epics/iocRtems/iocRtems.boot Argument File Name = /soft/epics/IOC/iocRtems/iocBoot/iocRtems/st.cmd Network Boot File load in progress... To abort hit <BREAK> Bytes Received =&1183560, Bytes Loaded =&1183560 Bytes/Second =&591780, Elapsed Time =2 Second(s) Residual-Data Located at: $01F5511C Model: Motorola MVME2101 (e2) Serial: MOT0BC614E
Processor/Bus frequencies (Hz): 200003328/66667776 Time Base Divisor: 4000 Memory Size: 2000000 PCI: Probing PCI hardware RTEMS 4.x/PPC load:
Uncompressing the kernel... done Now booting... ----------------------------------------- Welcome to rtems-4.10.2(PowerPC/Generic (classic FPU)/mvme2100) on MVME 2100 ----------------------------------------- pci : Configuring interrupt routing for 'MVME 2100' pci : Device 0:0x00:0 routed to interrupt_line 16 pci : Device 0:0x0D:0 routed to interrupt_line 23 pci : Device 0:0x0E:0 routed to interrupt_line 17 WARNING: unable to allocate page table, keeping DBAT0 WARNING: unable to setup page tables VME bridge must share PCI space OpenPIC Version 1.2 (1 CPUs and 24 IRQ sources) at 0xFCE40000 OpenPIC Vendor 0 (Unknown), Device 0 (Unknown), Stepping 1 Overriding NumSources (24) from configuration with 16 OpenPIC timer frequency is 8333472 Hz Universe II PCI-VME bridge detected at 0xFCDFF000, IRQ 23 Universe Master Ports: Port VME-Addr Size PCI-Adrs Mode: 0: 0x20000000 0x0E000000 0x90000000 A32, D64 [MBLT], Dat, Sup 1: 0x00000000 0x00FF0000 0x9F000000 A24, D64 [MBLT], Dat, Sup 2: 0x00000000 0x00010000 0x9FFF0000 A16, D64, Dat, Sup Universe Slave Ports: Port VME-Addr Size PCI-Adrs Mode: 0: 0xC0000000 0x02000000 0x00000000 A32, Pgm, Dat, Sup, Usr, PWEN, PREN Registering /dev/console as minor 0 (==/dev/ttyS0) ***** RTEMS Version: rtems-4.10.2(PowerPC/Generic (classic FPU)/mvme2100) ***** Startup. ***** Initializing network ***** dec2114x : unit 1 base address FCDFEC00. dec2114x : driver attached dec2114x : driver tasks created dec2114x : 00:01:AF:15:AD:97 name 'dc1', io BFDF80, mem FCDFEC00, int 17 dec2114x: Installing IRQ 17 ***** Initializing NFS ***** Mount 192.168.99.1:/soft on /soft RTEMS-RPCIOD $Release$, Till Straumann, Stanford/SLAC/SSRL 2002, See LICENSE file for licensing info. RTEMS-NFS $Release$, Till Straumann, Stanford/SLAC/SSRL 2002, See LICENSE file for licensing info. Warning: No timezone information, times will be displayed in UTC. ***** Starting EPICS application ***** ## Example RTEMS startup script ## You may have to change iocRtems to something else ## everywhere it appears in this file < envPaths epicsEnvSet("IOC","iocRtems") epicsEnvSet("TOP","/soft/epics/IOC/iocRtems") epicsEnvSet("MODULES","/soft/epics/inst-3.15.7") epicsEnvSet("ASYN","/soft/epics/inst-3.15.7/asyn/4-40-1") epicsEnvSet("MOTOR","/soft/epics/inst-3.15.7/motor/7-2-1") epicsEnvSet("PSEUDOMOTAPPS","/soft/epics/inst-3.15.7/pseudoMotors/1-1") epicsEnvSet("SEQLONG","/soft/epics/inst-3.15.7/seqlong-1-0") epicsEnvSet("SSCAN","/soft/epics/inst-3.15.7/sscan/2-11-3") epicsEnvSet("CALC","/soft/epics/inst-3.15.7/calc/3-7-4") epicsEnvSet("AUTOSAVE","/soft/epics/inst-3.15.7/autosave/5-10-1") epicsEnvSet("IK342","/soft/epics/inst-3.15.7/IK342") epicsEnvSet("EPICS_BASE","/soft/epics/base") cd "/soft/epics/IOC/iocRtems" ## Register all support components dbLoadDatabase("dbd/iocRtems.dbd") iocRtems_registerRecordDeviceDriver(pdbbase) ## Load record instances #dbLoadTemplate("db/iocRtems.substitutions") dbLoadRecords("db/iocRtems.db", "user=bl") #var drvOms58debug 10 oms58Setup(11, 0x1000,180,5,2) IK342Setup(1,0xC000) set_savefile_path("/autosave/iocRtems") set_requestfile_path("/autosave/iocRtems") save_restoreSet_NFSHost("nfsioc","192.168.99.1") Mount nfsioc:/autosave/iocRtems on /autosave/iocRtems mount failed: Invalid argument save_restore: Can't mount '/autosave/iocRtems' set_pass0_restoreFile("auto_positions.sav") set_pass0_restoreFile("auto_settings.sav") #set_pass0_restoreFile("pseudoMotor.sav") set_pass1_restoreFile("auto_settings.sav") #set_pass1_restoreFile("detectors.sav") save_restoreSet_status_prefix("iocRtems:") save_restoreSet_DatedBackupFiles(1) save_restoreSet_NumSeqFiles(1) # Time interval between sequenced backups save_restoreSet_SeqPeriodInSeconds(600) iocInit Starting iocInit ############################################################################ ## EPICS R3.15.7 ## EPICS Base built Sep 1 2020 ############################################################################ *** IK342: Running IK342 Initialization IK342_drv_init ***
1 nIK342Cards, 0xc000. baseAddr libbspExt - Warning: it seems that MCP support is not available on your CPU or not implemented by your board. Address probing must be performed in polling mode with interrupts disabled ../drvIK342.c: card 0 present at addr 9FFFC000 version FF00 reboot_restore: entry for file 'auto_positions.sav' reboot_restore: Found filename 'auto_positions.sav' in restoreFileList. *** restoring from '/autosave/iocRtems/auto_positions.sav' at initHookState 6 (before record/device init) *** save_restore: Can't open file '/autosave/iocRtems/auto_positions.sav'. save_restore: Trying backup file '/autosave/iocRtems/auto_positions.savB' save_restore: Can't open file '/autosave/iocRtems/auto_positions.savB'. save_restore: Can't figure out which seq file is most recent, save_restore: so I'm just going to start with '/autosave/iocRtems/auto_positions.sav0'. save_restore: Trying backup file '/autosave/iocRtems/auto_positions.sav0' save_restore: Can't open file '/autosave/iocRtems/auto_positions.sav0'. save_restore: Can't find a file to restore from...save_restore: ...last tried '/autosave/iocRtems/auto_positions.sav0'. I give up. save_restore: ********************************** save_restore: Can't open save file.reboot_restore: entry for file 'auto_settings.sav' reboot_restore: Found filename 'auto_settings.sav' in restoreFileList. *** restoring from '/autosave/iocRtems/auto_settings.sav' at initHookState 6 (before record/device init) *** save_restore: Can't open file '/autosave/iocRtems/auto_settings.sav'. save_restore: Trying backup file '/autosave/iocRtems/auto_settings.savB' save_restore: Can't open file '/autosave/iocRtems/auto_settings.savB'. save_restore: Can't figure out which seq file is most recent, save_restore: so I'm just going to start with '/autosave/iocRtems/auto_settings.sav0'. save_restore: Trying backup file '/autosave/iocRtems/auto_settings.sav0' save_restore: Can't open file '/autosave/iocRtems/auto_settings.sav0'. save_restore: Can't find a file to restore from...save_restore: ...last tried '/autosave/iocRtems/auto_settings.sav0'. I give up. save_restore: ********************************** save_restore: Can't open save file.init_record: card = 0 channel = 0 init_record: card = 0 channel = 1 init_record: card = 0 channel = 2 init_record: card = 0 channel = 3 reboot_restore: entry for file 'auto_settings.sav' reboot_restore: Found filename 'auto_settings.sav' in restoreFileList. *** restoring from '/autosave/iocRtems/auto_settings.sav' at initHookState 7 (after record/device init) *** save_restore: Can't open file '/autosave/iocRtems/auto_settings.sav'. save_restore: Trying backup file '/autosave/iocRtems/auto_settings.savB' save_restore: Can't open file '/autosave/iocRtems/auto_settings.savB'. save_restore: Can't figure out which seq file is most recent, save_restore: so I'm just going to start with '/autosave/iocRtems/auto_settings.sav0'. save_restore: Trying backup file '/autosave/iocRtems/auto_settings.sav0' save_restore: Can't open file '/autosave/iocRtems/auto_settings.sav0'. save_restore: Can't find a file to restore from...save_restore: ...last tried '/autosave/iocRtems/auto_settings.sav0'. I give up. save_restore: ********************************** save_restore: Can't open save file.iocRun: All initialization complete epicsThreadSleep(10.) create_monitor_set("auto_positions.req", 5, "NULL") save_restore:readReqFile: unable to open file auto_positions.req. Exiting. Mount nfsioc:/autosave/iocRtems on /autosave/iocRtems create_monitor_set("auto_settings.req", 5, "NULL") mount failedsave_restore:readReqFile: unable to open file auto_settings.req. Exiting. : #create_monitor_set("pseudoMotor.req",5, "NULL") Invalid argument#create_monitor_set("detectors.req",5, "NULL") #fdbrestore("DMMarm.sav") save_restore: Can't mount '/autosave/iocRtems' ## Start any sequence programs #seq(sncxxx, "user=bl") 192.168.99.250> save_restore: Can't connect to all status PV(s) save_restore: attempting to remount filesystem Mount nfsioc:/autosave/iocRtems on /autosave/iocRtems mount failed: Invalid argument save_restore: failed to remount '/autosave/iocRtems'
192.168.99.250>192.168.99.250> This is how my dhcpd.conf for the MVME-2100 looks like (it is OpenSuse Leap 15.1): group { use-host-decl-names on; always-reply-rfc1048 on; server-name bam01; host vmecpu-20 { option host-name iocRtems; option script-name "/soft/epics/IOC/iocRtems/iocBoot/iocRtems/st.cmd"; hardware ethernet 00:01:af:15:ad:97; fixed-address 192.168.99.250; filename "epics/iocRtems/iocRtems.boot"; next-server 192.168.99.1; } And this is the exports file-entry for my autosave folder: /autosave 172.17.8.0/24(rw,no_subtree_check) 192.168.99.0/24(rw,no_subtree_check) The command
save_restoreSet_NFSHost("nfsioc","192.168.99.1") is using the
CNAME-Record “nfsioc” which is just an alias for my NFS-Server. If I set it to the real name of my NFS-Server (“bam01”), it results in the same error:
mount failed: Invalid argument So what argument am I missing? Does anyone know? Regards Michael Michael Sintschuk
P: +49 30 8104-4065 (BAM, Steglitz) |