diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index e3920b693f04d1896f3d988b500676621674842d..cc3d164f56fb50c0bfbce6b2b648cbde9190c652 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -2956,7 +2956,7 @@ int hci_cancel_inquiry(struct hci_dev *hdev)
 	BT_DBG("%s", hdev->name);
 
 	if (!test_bit(HCI_INQUIRY, &hdev->flags))
-		return -EPERM;
+		return -EALREADY;
 
 	return hci_send_cmd(hdev, HCI_OP_INQUIRY_CANCEL, 0, NULL);
 }