From: Nathan Wharton <naw@greptar.com>
To: Sven Eckelmann <sven.eckelmann@gmx.de>
Cc: b.a.t.m.a.n@open-mesh.net, Marek Lindner <lindner_marek@yahoo.de>
Subject: Re: [B.A.T.M.A.N.] [PATCH] [batman] Add padding around allocation debugger structures
Date: Mon, 1 Jun 2009 16:50:36 -0500 [thread overview]
Message-ID: <4313f3060906011450i3b5bef03j73d1b9613bddf6f6@mail.gmail.com> (raw)
In-Reply-To: <200906012135.22488.sven.eckelmann@gmx.de>
On Mon, Jun 1, 2009 at 2:35 PM, Sven Eckelmann <sven.eckelmann@gmx.de> wrote:
> Ok, I think I see the problem. The malloc returned a valid aligned adress.
> list_add_tail will get a pointer to an element in hna_global_entry. This
> structure is packed and all operations on it should be non-alignment safe. If
> you look at it further you will notice that orig_list is at position 9
> (assuming 4 bytes for a pointer) - which will not be aligned to 4 bytes of
> course.....
> And here comes the problem: the compiler will only do the safe operations on
> non-aligned data if it knows that it is not alignent. Since a cast is done by
> calling list_add_tail it will not know that this parameter is not aligned and
> the non-alignment bug will occur.
>
> So my question to marek: Is it really needed to have "struct hna_global_entry"
> packed in hna.h:57? If not then we should remove it and this problem should be
> gone. And what is with "struct hna_element".
>
> Thank you for your work, Nathan :)
You are welcome, thanks for your help.
The crashing of batgat on unloading turns out to be socket 4306 not
being ready to be reused yet.
I worked around this by using:
batmand -c -r 0 ; sleep 1 ; batmand -c -g 11000
and
batmand -c -g 0 ; sleep 1 ; batmand -c -r 2
Marek helped figure that out on irc.
next prev parent reply other threads:[~2009-06-01 21:50 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-19 14:27 [B.A.T.M.A.N.] Kernel crashes with batgat installed Nathan Wharton
2009-05-19 19:21 ` Sven Eckelmann
2009-05-19 20:38 ` Nathan Wharton
2009-05-20 1:30 ` Marek Lindner
2009-05-20 14:34 ` Nathan Wharton
2009-05-20 16:10 ` Marek Lindner
2009-05-20 17:01 ` Nathan Wharton
2009-05-20 19:02 ` Marek Lindner
2009-05-20 19:39 ` Nathan Wharton
2009-05-28 10:40 ` [B.A.T.M.A.N.] [PATCH] [batman] Add padding around allocation debugger structures Sven Eckelmann
2009-05-29 7:02 ` Marek Lindner
2009-05-29 14:00 ` Nathan Wharton
2009-06-01 16:44 ` Sven Eckelmann
2009-06-01 18:03 ` Nathan Wharton
2009-06-01 19:35 ` Sven Eckelmann
2009-06-01 21:50 ` Nathan Wharton [this message]
2009-06-02 4:36 ` Marek Lindner
2009-06-02 17:50 ` [B.A.T.M.A.N.] " Sven Eckelmann
2009-06-02 17:56 ` [B.A.T.M.A.N.] [PATCH] [batman] Align pointers in hna list elements Sven Eckelmann
2009-06-02 18:56 ` Nathan Wharton
2009-06-03 10:39 ` [B.A.T.M.A.N.] [PATCHv2] " Sven Eckelmann
2009-06-03 11:16 ` Marek Lindner
2009-05-28 11:36 ` [B.A.T.M.A.N.] [PATCH 2/3] [batman] Make TYPE_OF_WORD the largest integral type Sven Eckelmann
2009-05-28 11:36 ` [B.A.T.M.A.N.] [PATCH 3/3] [batman] Word-Align char buffer which are later casted to larger data types Sven Eckelmann
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=4313f3060906011450i3b5bef03j73d1b9613bddf6f6@mail.gmail.com \
--to=naw@greptar.com \
--cc=b.a.t.m.a.n@open-mesh.net \
--cc=lindner_marek@yahoo.de \
--cc=sven.eckelmann@gmx.de \
/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).