mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-18 11:00:25 +00:00
rbd: log stderror when running modprobe
logging the error is not user-friendly and it contains system error message. Log the stderr which is user-friendly error message for identifying the problem. Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
This commit is contained in:
parent
0311eb5f44
commit
46378f3bfc
@ -199,14 +199,15 @@ func waitForPath(ctx context.Context, pool, namespace, image string, maxRetries
|
|||||||
|
|
||||||
// set features available with rbd-nbd, and NBD module loaded status.
|
// set features available with rbd-nbd, and NBD module loaded status.
|
||||||
func setRbdNbdToolFeatures() {
|
func setRbdNbdToolFeatures() {
|
||||||
|
var stderr string
|
||||||
// check if the module is loaded or compiled in
|
// check if the module is loaded or compiled in
|
||||||
_, err := os.Stat(fmt.Sprintf("/sys/module/%s", moduleNbd))
|
_, err := os.Stat(fmt.Sprintf("/sys/module/%s", moduleNbd))
|
||||||
if os.IsNotExist(err) {
|
if os.IsNotExist(err) {
|
||||||
// try to load the module
|
// try to load the module
|
||||||
_, _, err = util.ExecCommand(context.TODO(), "modprobe", moduleNbd)
|
_, stderr, err = util.ExecCommand(context.TODO(), "modprobe", moduleNbd)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
hasNBD = false
|
hasNBD = false
|
||||||
log.WarningLogMsg("rbd-nbd: nbd modprobe failed with error %v", err)
|
log.WarningLogMsg("rbd-nbd: nbd modprobe failed (%v): %q", err, stderr)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -214,6 +214,7 @@ var supportedFeatures = map[string]imageFeature{
|
|||||||
// GetKrbdSupportedFeatures load the module if needed and return supported
|
// GetKrbdSupportedFeatures load the module if needed and return supported
|
||||||
// features attribute as a string.
|
// features attribute as a string.
|
||||||
func GetKrbdSupportedFeatures() (string, error) {
|
func GetKrbdSupportedFeatures() (string, error) {
|
||||||
|
var stderr string
|
||||||
// check if the module is loaded or compiled in
|
// check if the module is loaded or compiled in
|
||||||
_, err := os.Stat(krbdSupportedFeaturesFile)
|
_, err := os.Stat(krbdSupportedFeaturesFile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -223,9 +224,9 @@ func GetKrbdSupportedFeatures() (string, error) {
|
|||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
// try to load the module
|
// try to load the module
|
||||||
_, _, err = util.ExecCommand(context.TODO(), "modprobe", rbdDefaultMounter)
|
_, stderr, err = util.ExecCommand(context.TODO(), "modprobe", rbdDefaultMounter)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.ErrorLogMsg("modprobe failed: %v", err)
|
log.ErrorLogMsg("modprobe failed (%v): %q", err, stderr)
|
||||||
|
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user