]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/base/core.c
Merge tag 'iommu-updates-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git...
[karo-tx-linux.git] / drivers / base / core.c
index 7b270a2e6ed57dcf3028ee8a91425cfc4705c995..14d162952c3bc21bdadf3966ccef0c7b2c43df91 100644 (file)
@@ -2010,6 +2010,8 @@ create_syslog_header(const struct device *dev, char *hdr, size_t hdrlen)
                return 0;
 
        pos += snprintf(hdr + pos, hdrlen - pos, "SUBSYSTEM=%s", subsys);
+       if (pos >= hdrlen)
+               goto overflow;
 
        /*
         * Add device identifier DEVICE=:
@@ -2041,7 +2043,14 @@ create_syslog_header(const struct device *dev, char *hdr, size_t hdrlen)
                                "DEVICE=+%s:%s", subsys, dev_name(dev));
        }
 
+       if (pos >= hdrlen)
+               goto overflow;
+
        return pos;
+
+overflow:
+       dev_WARN(dev, "device/subsystem name too long");
+       return 0;
 }
 
 int dev_vprintk_emit(int level, const struct device *dev,