fix(usb_mass_storage): should use path instead of configPath

This commit is contained in:
Siyuan Miao 2025-03-19 17:43:19 +01:00
parent 8e2ed6059d
commit f3c49b853d
2 changed files with 13 additions and 4 deletions

View File

@ -128,6 +128,15 @@ func (u *UsbGadget) GetConfigPath(itemKey string) (string, error) {
return joinPath(u.kvmGadgetPath, item.configPath), nil return joinPath(u.kvmGadgetPath, item.configPath), nil
} }
// GetPath returns the path to the item.
func (u *UsbGadget) GetPath(itemKey string) (string, error) {
item, ok := u.configMap[itemKey]
if !ok {
return "", fmt.Errorf("config item %s not found", itemKey)
}
return joinPath(u.kvmGadgetPath, item.path), nil
}
func mountConfigFS() error { func mountConfigFS() error {
_, err := os.Stat(gadgetPath) _, err := os.Stat(gadgetPath)
// TODO: check if it's mounted properly // TODO: check if it's mounted properly

View File

@ -15,9 +15,9 @@ import (
"time" "time"
"github.com/gin-gonic/gin" "github.com/gin-gonic/gin"
"github.com/psanford/httpreadat"
"github.com/google/uuid" "github.com/google/uuid"
"github.com/pion/webrtc/v4" "github.com/pion/webrtc/v4"
"github.com/psanford/httpreadat"
"github.com/jetkvm/kvm/resource" "github.com/jetkvm/kvm/resource"
) )
@ -27,7 +27,7 @@ func writeFile(path string, data string) error {
} }
func setMassStorageImage(imagePath string) error { func setMassStorageImage(imagePath string) error {
massStorageFunctionPath, err := gadget.GetConfigPath("mass_storage_lun0") massStorageFunctionPath, err := gadget.GetPath("mass_storage_lun0")
if err != nil { if err != nil {
return fmt.Errorf("failed to get mass storage path: %w", err) return fmt.Errorf("failed to get mass storage path: %w", err)
} }
@ -39,7 +39,7 @@ func setMassStorageImage(imagePath string) error {
} }
func setMassStorageMode(cdrom bool) error { func setMassStorageMode(cdrom bool) error {
massStorageFunctionPath, err := gadget.GetConfigPath("mass_storage_lun0") massStorageFunctionPath, err := gadget.GetPath("mass_storage_lun0")
if err != nil { if err != nil {
return fmt.Errorf("failed to get mass storage path: %w", err) return fmt.Errorf("failed to get mass storage path: %w", err)
} }
@ -110,7 +110,7 @@ func rpcMountBuiltInImage(filename string) error {
} }
func getMassStorageMode() (bool, error) { func getMassStorageMode() (bool, error) {
massStorageFunctionPath, err := gadget.GetConfigPath("mass_storage_lun0") massStorageFunctionPath, err := gadget.GetPath("mass_storage_lun0")
if err != nil { if err != nil {
return false, fmt.Errorf("failed to get mass storage path: %w", err) return false, fmt.Errorf("failed to get mass storage path: %w", err)
} }