Hi, running xschem 3.4.5 on a Linux Centos 7 multi...
# xschem
t
Hi, running xschem 3.4.5 on a Linux Centos 7 multi-user system (for teaching chip design at university level). In the /tmp folder, there are folders like ’xschem_undo_dcdcabfdba” for users currently running the program, with their ownership. It looks like each folder name is unique. However, today there also appeared a ’xschem_web’ folder that is connected to one of the users. When I (as a another user) try to start xschem, there is the following error message: ”error deleting "/tmp/xschem_web": not owner” and xschem does not start. I have searched the internet, but no information. How was the ”xschem_web” created, i.e. which part/function in xschem use this? Is this a general problem and with a fix? /Ted
s
@Ted Johansson the
/tmp/xschem_undo_xxxx
directories are created when a running session of xschem is active and contains the undo ring buffer. These dirs are removed if xschem exits normally. If some of these directories are existing there is either a running xschem process or xschem was terminated or crashed. In this latter case you can safely remove these directories manualy. The
/tmp/xschem_web
directory is created when xschem downloads remote schematics, like: xschem https://raw.githubusercontent.com/w32agobot/SKY130_SAR-ADC/main/xschem/adc_top_tb.sch Once the objects are downloaded a cached copy is placed into
/tmp/xschem_web
for faster access. When xschem starts it will remove this directory. I will change the logic in order to clean up this directory (like for the undo buffers) when xschem exits, so there is no risk of trying to delete a /tmp/xschem_web created by others. Again you can safely remove this directory (and its content) manually. Thank you for pointing this issue, I will fix that.
t
Thanks for a good explanation! Always good to understand what is happening. Yes, the undo buffers works well with multiple users, this was an exception. I will remove it manually.
s
If system is configured such that each user can not touch / delete other users temporary files (and this is a good setup) then either root ot users themselves need to cleanup their /tmp files, if they kill xschem or if xschem crashes without cleaning up. If you experience crashes of course submit an issue. I have now modified the code for
xschem_web/
directories. these directories will now be uniquified, so each user will have its own
/tmp/xschem_xxxxx
directory if they open remote URLs. xschem will create this directory on startup and remove on exit , exactly as is done for
xschem_undo_xxxxx
. Again if you see dead
/tmp/xschem_web_xxxx
dirs and no xschem instance running it is fair to remove them manually. Since now
/tmp/xschem_web_xxxxx/
is unique per xschem session in no case will xschem try to create / delete a directory created by some other xschem instance.