backports.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Remington Furman <remicles2@gmail.com>
To: backports@vger.kernel.org
Subject: Parse error with genl-const.cocci
Date: Thu, 30 Nov 2017 21:43:52 -0800	[thread overview]
Message-ID: <925f98d2-047f-785f-4162-21b53a77cd62@gmail.com> (raw)

Hello,

I'd like to say thank you for this very useful project.  I am
relatively new to kernel development, so it would be impossible
for me to sort out the "collateral evolutions" and history of the
linux internals without backports.

I am trying to backport the rtl8192cu driver from linux v4.14-rc4
to an Android 5.11 system running linux kernel v3.10.  My
development system is Linux Mint 17.1.  I chose v4.14-rc4 because
that's the latest tag in backports.  My backports repo and
linux-next repo are checked out to v4.14-rc4-1 and v4.14-rc4,
respectively.

I am getting an error when I try to create a backport package:

backports $ ./gentree.py --clean --verbose --git-revision v4.14-rc4 
../linux-next/ ../linux-backport/
Get original source files from git ...
Applying patches from patches to ../linux-backport/ ...
Applying patch 
0000-upstream-backport-changes/0005-uapi-compromise/mwifiex.patch
[...snip lots of good patches here...]
Applying SmPL patch 0027-genl-const/genl-const.cocci
Failed to process SmPL patch 0027-genl-const/genl-const.cocci with 1

Getting the output of pycocci:

backports $ ./devel/pycocci -j 1 -v 
./patches/0027-genl-const/genl-const.cocci ../linux-backport/
spatch --sp-file ./patches/0027-genl-const/genl-const.cocci --in-place 
--recursive-includes --relax-include-path --use-coccigrep --timeout 120 
--dir ../linux-backport/
Failed to apply changes from genl-const.cocci
Specific log output from change that failed using genl-const.cocci
init_defs_builtins: /usr/local/bin/../lib/coccinelle/standard.h
meta: parse error:
   File "./patches/0027-genl-const/genl-const.cocci", line 2, column 10, 
charpos = 13
   around = '__genl_const',
   whole content = attribute __genl_const;

Full log using genl-const.cocci
init_defs_builtins: /usr/local/bin/../lib/coccinelle/standard.h
meta: parse error:
   File "./patches/0027-genl-const/genl-const.cocci", line 2, column 10, 
charpos = 13
   around = '__genl_const',
   whole content = attribute __genl_const;
[...snip callstack...]

This is very similar to this problem:
<https://www.spinics.net/lists/backports/msg04216.html>
The conclusion of that thread is that the --integrate workflow is
no longer supported.

However, I am not using --integrate, and I am still getting
errors about parsing '__genl_const'.  Is that a bug in the patch
or possibly a regression in spatch?  I've tried v4.14-rc2 also,
but nothing older.

This page has a lot of great example info, and suggested that it
could be a problem with my version of spatch. Specifically, that
I was missing the menhir and libmenhir-ocaml-dev packages when
building Coccinelle and a rebuild should help.
<http://stonyslp.blogspot.com/2017/08/backport-driver.html>

Unfortunately, I still have the same errors after running make
distclean and rebuilding.

I have:
coccinelle $ git describe --tags
1.0.6-365-gd73c6e6
coccinelle $ spatch --version
spatch version 1.0.6-00365-gd73c6e6 compiled with OCaml version 4.01.0
Flags passed to the configure script: [none]
OCaml scripting support: yes
Python scripting support: yes
Syntax of regular expresssions: PCRE

I found this patch which describes how older versions can't
handle the __genl_const changes (20150209):
<https://www.spinics.net/lists/backports/msg03223.html>

But, I also see commit 748116c8 from shortly after (20150507)
which introduced genl-const.cocci and says only spatch 1.0.0-rc23
is needed.

I feel like I'm close to figuring this out, but would appreciate
any help or pointers.

Thank you,
Remington Furman
--
To unsubscribe from this list: send the line "unsubscribe backports" in

             reply	other threads:[~2017-12-01  5:43 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-01  5:43 Remington Furman [this message]
2017-12-01  8:27 ` Parse error with genl-const.cocci Johannes Berg
2017-12-01  9:18   ` [Cocci] " Julia Lawall
2017-12-01  9:29     ` Johannes Berg
2017-12-01 10:00       ` Julia Lawall
2017-12-12 15:19         ` Remington Furman
2017-12-14 15:16           ` Julia Lawall
2017-12-19  9:41             ` Johannes Berg
2018-06-25 20:33             ` Johannes Berg
2017-12-01 17:57   ` Remington Furman
2017-12-01 18:02     ` Johannes Berg
2017-12-01 18:09       ` Remington Furman
2017-12-01 23:48         ` Remington Furman
2017-12-02  7:47           ` Johannes Berg
2017-12-01 18:57       ` [Cocci] " Julia Lawall
2017-12-01 19:39         ` Johannes Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=925f98d2-047f-785f-4162-21b53a77cd62@gmail.com \
    --to=remicles2@gmail.com \
    --cc=backports@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).