diff
+#define CHECK_NULL(ptr, msg) do { \
+    if (!(ptr)) { \
+        pr_err("%s: %s is NULL\n", __func__, msg); \
+        return; \
+    } \
+} while (0)
+
 void drm_client_register(struct drm_client_dev *client)
 {
+        CHECK_NULL(client, "client");
+        CHECK_NULL(client->dev, "client->dev");
         struct drm_device *dev = client->dev;
         int ret;
         mutex_lock(&dev->clientlist_mutex);
         list_add(&client->list, &dev->clientlist);
