Messages in this thread | | | From | "Allan, Bruce W" <> | Subject | RE: [PATCH] checkpatch: warn when patch exceeds a maximum message size | Date | Fri, 6 Jun 2014 15:08:05 +0000 |
| |
> -----Original Message----- > From: Joe Perches [mailto:joe@perches.com] > Sent: Thursday, June 05, 2014 6:36 PM > To: Allan, Bruce W > Cc: apw@canonical.com; linux-kernel@vger.kernel.org; postmaster > Subject: Re: [PATCH] checkpatch: warn when patch exceeds a maximum > message size > > On Thu, 2014-06-05 at 17:00 -0700, Bruce Allan wrote: > > the maximum message size (100,000 characters) allowed by Majordomo at > > vger.kernel.org since that is where most Linux email lists are served. > > I believe this is incorrect and the patch is unnecessary.
Actually, it is correct (it even says so at http://vger.kernel.org/majordomo-info.html). We just experienced 2 out of 4 patches in the initial RFC submittal of the Intel(R) QuickAssist Technology (QAT) driver being blocked by Majordomo from getting out on the linux-crypto mailing list. It took a while to figure out the problem and had to break up those two blocked patches into smaller ones which went through fine. I submitted this checkpatch patch in hopes to prevent others from having to figure out the same.
> > It'd maybe more interesting if the email header sizes > were calculated and if > 1024, then some bleating message > were emitted. > > > Also provide a command-line option to specify a different maximum size. > > > > Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> > > --- > > > > scripts/checkpatch.pl | 15 +++++++++++++++ > > 1 file changed, 15 insertions(+) > > > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > > index 34eb216..79bd7fd6 100755 > > --- a/scripts/checkpatch.pl > > +++ b/scripts/checkpatch.pl > > @@ -40,6 +40,7 @@ my @ignore = (); > > my $help = 0; > > my $configuration_file = ".checkpatch.conf"; > > my $max_line_length = 80; > > +my $max_msg_size = 100000; # Max allowed by Majordomo at > vger.kernel.org > > my $ignore_perl_version = 0; > > my $minimum_perl_version = 5.10.0; > > > > @@ -62,6 +63,7 @@ Options: > > --types TYPE(,TYPE2...) show only these comma separated message > types > > --ignore TYPE(,TYPE2...) ignore various comma separated message > types > > --max-line-length=n set the maximum line length, if exceeded, warn > > + --max-msg-size=n set the maximum message size, if exceeded, > warn > > --show-types show the message "types" in the output > > --root=PATH PATH to the kernel tree root > > --no-summary suppress the per-file summary > > @@ -130,6 +132,7 @@ GetOptions( > > 'types=s' => \@use, > > 'show-types!' => \$show_types, > > 'max-line-length=i' => \$max_line_length, > > + 'max-msg-size=i' => \$max_msg_size, > > 'root=s' => \$root, > > 'summary!' => \$summary, > > 'mailback!' => \$mailback, > > @@ -4600,6 +4603,18 @@ sub process { > > exit(0); > > } > > > > + # Warn if patch exceeds the maximum message size > > + if (!$file) { > > + my $cnt_chars = 0; > > + foreach my $rawline (@rawlines) { > > + $cnt_chars += length($rawline) + 1; > > + } > > + if ($cnt_chars > $max_msg_size) { > > + WARN("PATCH_TOO_LARGE", > > + "patch exceeds maximum message size > ($max_msg_size) and might be blocked by email list server(s).\n"); > > + } > > + } > > + > > if (!$is_patch) { > > ERROR("NOT_UNIFIED_DIFF", > > "Does not appear to be a unified-diff format patch\n"); > > > >
| |