sm_warning
sm_warning("should '%s' be a 64 bit type?", str);
sm_warning("should '%s' be a 64 bit type?", name);
sm_warning("math in access_ok() is dangerous '%s'", name);
sm_warning("comparison of a potentially tagged address (%s, %d, %s)", get_function(), get_param_num(val), var_name);
sm_warning("this array is probably non-NULL. '%s'", str);
sm_warning("was '== %s' instead of '='", sval_to_str(val));
sm_warning("was '== %s' instead of '='", str);
sm_warning("'%s' is a shifter (not for '%s').",
sm_warning("bit shifter '%s' used for logical '%s'",
sm_warning("we never enter this loop");
sm_warning("is '%s' large enough for 'struct %s'? %s", name, left_type->ident ? left_type->ident->name : "<anon>", sval_to_str(min_size));
sm_warning("potential memory corrupting cast %d vs %d bytes",
sm_warning("can '%s' even be NULL?", name);
sm_warning("continue to end of do { ... } while(0); loop");
sm_warning("variable dereferenced before check '%s' (see line %d)", sm->name, sm->line);
sm_warning("dma_mapping_error() doesn't return an error code");
sm_warning("we tested '%s' before and it was '%s'", name, state->name);
sm_warning("passing freed memory '%s'", name);
sm_warning("returning freed memory '%s'", name);
sm_warning("'%s' was already freed.", name);
sm_warning("passing freed memory '%s'", name);
sm_warning("returning freed memory '%s'", name);
sm_warning("'%s' double freed", name);
sm_warning("'%s' was already freed.", name);
sm_warning("passing devm_ allocated variable to kfree. '%s'", name);
sm_warning("calling %s() when '%s' is always NULL.", fn, name);
sm_warning("check for integer over/underflow '%s'", name);
sm_warning("check for integer underflow '%s'", name);
sm_warning("check for integer overflow '%s'", name);
sm_warning("'%s' held on error path.",
sm_warning("masked condition '%s' is always %s.", str,
sm_warning("inconsistent indenting");
sm_warning("curly braces intended?");
sm_warning("possible info leak '%s'", name);
sm_warning("'%.2s' prefix is redundant when # flag is used", old_fmt-2);
sm_warning("'%.2s' prefix is confusing together with '%.*s' specifier",
sm_warning("passing string constant '%s' containing '%s' which is already part of the format string",
sm_warning("excess argument passed to '%s'", name);
sm_warning("invalid repeated qualifier '%c'", *fmt);
sm_warning("qualifier '%c' ignored for %%c specifier", qualifier);
sm_warning("qualifier '%c' ignored for %%s specifier", qualifier);
sm_warning("'%%p%c4' can only be followed by one of [hnbl], not '%c'", fmt[0], fmt[2]);
sm_warning("'%%p%c4' can only be followed by precisely one of [hnbl]", fmt[0]);
sm_warning("passing struct in_addr* to '%%p%c4%c', is the endianness ok?", fmt[0], fmt[2]);
sm_warning("'%%p%c6' can only be followed by c", fmt[0]);
sm_warning("'%%pi6' does not allow flag c");
sm_warning("'%%p%c6%c' cannot be followed by other alphanumerics", fmt[0], fmt[2]);
sm_warning("'%%p%cS' cannot be followed by '%c'", fmt[0], *f);
sm_warning("'%%ph' cannot be followed by '%c'", fmt[1]);
sm_warning("'%%ph' can be followed by at most one of [CDN], and no other alphanumerics");
sm_warning("%%pE can only be followed by a combination of [achnops]");
sm_warning("'%%p%c' cannot be followed by '%c'", fmt[0], fmt[1]);
sm_warning("'%%p%c' cannot be followed by '%c'", fmt[0], fmt[1]);
sm_warning("it is pointless to pass flag F to %%pm");
sm_warning("'%%p%c%c' cannot be followed by other alphanumeric", fmt[0], fmt[1]);
sm_warning("'%%p%c' expects argument of type u8 * or bdaddr_t *, argument %d has type '%s'",
sm_warning("'%%p%c' can only be followed by one of [234]", fmt[0]);
sm_warning("'%%p%c%c' cannot be followed by '%c'", fmt[0], fmt[1], fmt[2]);
sm_warning("'%%pC' can only be followed by one of [nr]");
sm_warning("'%%pC%c' cannot be followed by '%c'", fmt[1], fmt[2]);
sm_warning("%%pV cannot be followed by any alphanumerics");
sm_warning("%%pNF cannot be followed by '%c'", fmt[2]);
sm_warning("%%pg cannot be followed by '%c'", fmt[1]);
sm_warning("could not determine type of argument %d", vaidx);
sm_warning("'%%p%c' must be followed by one of [46S]", fmt[0]);
sm_warning("could not determine type of argument %d", vaidx);
sm_warning("argument %d to %.*s specifier has type '%s'",
sm_warning("KERN_* level not at start of string");
sm_warning("invalid KERN_* level: KERN_SOH_ASCII followed by '\\x%02x'", (unsigned char)f[1]);
sm_warning("format string contains non-ascii character '\\x%02x'", c);
sm_warning("format string contains unusual character '\\x%02x'", c);
sm_warning("format string contains name of enclosing function '%s' twice", caller);
sm_warning("argument %d to %.*s specifier is cast from pointer",
sm_warning("bug on allocation failure '%s'", name);
sm_warning("double check that we're allocating correct size: %d vs %s", data_size, sval_to_str(sval));
sm_warning("passing the wrong variable to kunmap()");
sm_warning("passing the wrong variable to kmap_atomic()");
sm_warning("overwrite may leak '%s'", name);
sm_warning("possible memory leak of '%s'", tmp->name);
sm_warning("should this be a bitwise op?");
sm_warning("should this be a bitwise op?");
sm_warning("side effect in macro '%s' doing '%s'",
sm_warning("the '%s' macro might need parens", name);
sm_warning("the '%s' macro might need parens", name);
sm_warning("calling memset(x, y, ARRAY_SIZE());");
sm_warning("min_t truncates here '%s' (%s vs %s)", name, sval_to_str(max_left), sval_to_str(max_right));
sm_warning("missing break? reassigning '%s'", name);
sm_warning("mod_timer() takes an absolute time not an offset.");
sm_warning("statement has no effect %d", expr->type);
sm_warning("if statement not indented");
sm_warning("for statement not indented");
sm_warning("potential off by one '%s[]' limit '%s'", array_name, equal_name);
sm_warning("potentially one past the end of array '%s[%s]'", array_str, offset_str);
sm_warning("was || intended here instead of &&?");
sm_warning("suspicious bitop condition");
sm_warning("bitwise AND condition is false here");
sm_warning("odd binop '0x%llx & 0x%llx'", left.uvalue, right.uvalue);
sm_warning("was && intended here instead of ||?");
sm_warning("perhaps platform_device_put() was intended here?");
sm_warning("potential pointer math issue ('%s' is a %d bit pointer)",
sm_warning("potential pointer math issue ('%s' is a %d bit pointer)",
sm_warning("add some parenthesis here?");
sm_warning("shift has higher precedence than mask");
sm_warning("compare has higher precedence than mask");
sm_warning("subtract is higher precedence than shift");
sm_warning("add some parenthesis here?");
sm_warning("maybe use && instead of &");
sm_warning("proc file '%s' is world writable", name);
sm_warning("this loop depends on readl() succeeding");
sm_warning("'%s' was not one of the resources you requested", name);
sm_warning("consider using resource_size() here");
sm_warning("unchecked '%s'", fn);
sm_warning("signedness bug returning '%s'", sval_to_str(sval));
sm_warning("maybe return -EFAULT instead of the bytes remaining?");
sm_warning("maybe return -EFAULT instead of the bytes remaining?");
sm_warning("returning -1 instead of -ENOMEM is sloppy");
sm_warning("returning -%s()", macro);
sm_warning("should this return really be negated?");
sm_warning("check that '%s' doesn't leak information", buf);
sm_warning("check that '%s' doesn't leak information (struct has a hole after '%s')",
sm_warning("check that '%s' doesn't leak information (struct has holes)",
sm_warning("boolean comparison inside select");
sm_warning("right shifting more than type allows %d vs %lld", type_bits(type), bits.value);
sm_warning("mask and shift to zero");
sm_warning("right shift assign to zero");
sm_warning("unsigned '%s' is never less than zero.", name);
sm_warning("impossible condition '(%s) => (%s %s %s)'", name,
sm_warning("always true condition '(%s) => (%s %s %s)'", name,
sm_warning("'%s' %s can't fit into %s '%s'",
sm_warning("assigning %s to unsigned variable '%s'",
sm_warning("value %s can't fit into %s '%s'",
sm_warning("signed overflow undefined. '%s %s %s'", left_name, show_special(expr->op), right_name);
sm_warning("potential negative subtraction from max '%s'", str);
sm_warning("sizeof(NUMBER)?");
sm_warning("sizeof(&pointer)?");
sm_warning("sizeof(sizeof())?");
sm_warning("taking sizeof binop");
sm_warning("was 'sizeof(*%s)' intended?", ptr_name);
sm_warning("was 'sizeof(*%s)' intended?", name);
sm_warning("'%s' returned from snprintf() might be larger than %d",
sm_warning("potential spectre issue '%s' [%s]%s",
sm_warning("'%s' puts %d bytes on stack", name, type_bytes(base));
sm_warning("%s() '%s' of unknown size might be too large for '%s'",
sm_warning("struct type mismatch '%s vs %s'", left_type->ident->name,
sm_warning("returned negative with %s semaphore held",
sm_warning("test_bit() takes a bit number");
sm_warning("passing uninitialized '%s'", name);
sm_warning("struct member %s is uninitialized", sm->name);
sm_warning("ignoring unreachable code.");
sm_warning("'%s' was not released on error", tmp->name);
sm_warning("WtoA call '%s()'", fn_name);
sm_warning("expected a buffer size but got a comparison '%s'", name);
sm_warning("passing zero to '%s'", fn);
sm_warning("passing a valid pointer to '%s'", fn);
sm_warning("%s is not accessible -- ignored.",
sm_warning("%s is not accessible.", dir);
sm_warning("Use --no-data or --data to suppress this message.");
sm_warning("potentially one past the end of array '%s[%s]'", array_str, offset_str);
sm_warning("potential off by one '%s[]' limit '%s'", array_name, equal_name);
sm_warning("if();");
sm_warning("Function too hairy. No more merges.");