mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 13:58:15 -05:00
installer: Fix cow-store umount issue.
* gnu/installer/final.scm (kill-cow-users): Ignore exception that could be raised if a process disappears between reading its pid and its maps file.
This commit is contained in:
parent
5490b2c733
commit
f9b6f75d1c
1 changed files with 7 additions and 6 deletions
|
@ -111,12 +111,13 @@ (define %not-nul
|
||||||
|
|
||||||
(let ((pids
|
(let ((pids
|
||||||
(filter-map (lambda (pid)
|
(filter-map (lambda (pid)
|
||||||
(call-with-input-file
|
(false-if-exception
|
||||||
(string-append "/proc/" pid "/maps")
|
(call-with-input-file
|
||||||
(lambda (port)
|
(string-append "/proc/" pid "/maps")
|
||||||
(and (string-contains (get-string-all port)
|
(lambda (port)
|
||||||
cow-path)
|
(and (string-contains (get-string-all port)
|
||||||
(string->number pid)))))
|
cow-path)
|
||||||
|
(string->number pid))))))
|
||||||
(scandir "/proc" string->number))))
|
(scandir "/proc" string->number))))
|
||||||
(for-each (lambda (pid)
|
(for-each (lambda (pid)
|
||||||
;; cmdline does not always exist.
|
;; cmdline does not always exist.
|
||||||
|
|
Loading…
Reference in a new issue