ath9k: do not return invalid pointers as a *dentry
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2019 13:16:25 +0000 (14:16 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Thu, 7 Feb 2019 14:59:04 +0000 (16:59 +0200)
When calling debugfs functions, they can now return error values if
something went wrong.  If that happens, return a NULL as a *dentry to
the relay core instead of passing it an illegal pointer.

The relay core should be able to handle an illegal pointer, but add this
check to be safe.

Cc: Kalle Valo <kvalo@codeaurora.org>
Cc: QCA ath9k Development <ath9k-devel@qca.qualcomm.com>
Cc: linux-wireless@vger.kernel.org
Cc: netdev@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath9k/common-spectral.c

index 6aa3ec024ffae17431cb5b967495921d110ca563..21191955a7c1eb332e5917194df37a74802f0d2d 100644 (file)
@@ -1039,6 +1039,9 @@ static struct dentry *create_buf_file_handler(const char *filename,
 
        buf_file = debugfs_create_file(filename, mode, parent, buf,
                                       &relay_file_operations);
+       if (IS_ERR(buf_file))
+               return NULL;
+
        *is_global = 1;
        return buf_file;
 }