summary refs log tree commit diff
path: root/gnu/build/linux-modules.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/build/linux-modules.scm')
-rw-r--r--gnu/build/linux-modules.scm10
1 files changed, 5 insertions, 5 deletions
diff --git a/gnu/build/linux-modules.scm b/gnu/build/linux-modules.scm
index 9c8761527a..ae141b6f54 100644
--- a/gnu/build/linux-modules.scm
+++ b/gnu/build/linux-modules.scm
@@ -58,11 +58,10 @@
 
 (define (section-contents elf section)
   "Return the contents of SECTION in ELF as a bytevector."
-  (let* ((modinfo  (elf-section-by-name elf ".modinfo"))
-         (contents (make-bytevector (elf-section-size modinfo))))
-    (bytevector-copy! (elf-bytes elf) (elf-section-offset modinfo)
+  (let ((contents (make-bytevector (elf-section-size section))))
+    (bytevector-copy! (elf-bytes elf) (elf-section-offset section)
                       contents 0
-                      (elf-section-size modinfo))
+                      (elf-section-size section))
     contents))
 
 (define %not-nul
@@ -85,7 +84,8 @@ string list."
 key/value pairs.."
   (let* ((bv      (call-with-input-file file get-bytevector-all))
          (elf     (parse-elf bv))
-         (modinfo (section-contents elf ".modinfo")))
+         (section (elf-section-by-name elf ".modinfo"))
+         (modinfo (section-contents elf section)))
     (map key=value->pair
          (nul-separated-string->list (utf8->string modinfo)))))