Bill Traynor | 1 May 2012 15:29
Gravatar

immutable wiki?

I have an Editor account for the kernelnewbies.org wiki, but all pages
are currently immutable.  Was the wiki made read-only at some point?

Thanks
Bill
Anuz Pratap Singh Tomar | 1 May 2012 15:45
Picon

Re: immutable wiki?



On Tue, May 1, 2012 at 2:29 PM, Bill Traynor <wmat <at> alphatroop.com> wrote:
I have an Editor account for the kernelnewbies.org wiki, but all pages
are currently immutable.  Was the wiki made read-only at some point?

I just modified my own article with minor changes to test. It seems to be working fine for me.

Regards
Anuz
Thanks
Bill

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies <at> kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies <at> kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Jim Cromie | 1 May 2012 20:36
Picon

please report distros with CONFIG_DYNAMIC_DEBUG, using ddebug_query= boot param

hi all,

Ive been asked whether ddebug_query= boot param is used in any distros,
I think the question seeks to determine a good deprecation schedule for it
(its been obsoleted by dyndbg= in driver-core-next)

Would you all be so kind as to check your favorite distros, and report
the ones that
have one or both ?

Ubuntu 12.04 LTS lacks it:

jimc <at> chumly:~/projects/lx/linux-2.6$ grep DYNAMIC_DEBUG /boot/config*
/boot/config-3.0.0-17-generic:# CONFIG_DYNAMIC_DEBUG is not set
/boot/config-3.2.0-24-generic:# CONFIG_DYNAMIC_DEBUG is not set

Voyage linux also lacks it, (also debian based)

Fedora-16 has config option:

$ uname -a
Linux groucho.jimc.earth 3.3.2-6.fc16.x86_64 #1 SMP Sat Apr 21
12:43:20 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
$ grep DYNAMIC_DEBUG /boot/config-3.3.*
/boot/config-3.3.1-5.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y
/boot/config-3.3.2-1.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y
/boot/config-3.3.2-6.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y

but its not used by default. I have modified my grub defaults:

$ grep ddebug_query /etc/default/grub
GRUB_CMDLINE_LINUX='quiet rhgb loglevel=8 ddebug_query="module params
+p" dynamic_debug.verbose=1 nouveau.dyndbg nouveau.force_post=1
it87.dyndbg=+p nouveau.perflvl_wr=7777'

FYI, the above usage will eventually be unsupported,
it can be replaced in driver-core-next by either of:

  dyndbg="module params +p"
  params.dyndbg=+p
  params.dyndbg          # defaults to +p

the 2nd, 3rd forms also work for loadable modules (though params isnt
one of them)

thanks in advance
Jim
michi1 | 2 May 2012 12:52

Re: immutable wiki?

Hi!

On 09:29 Tue 01 May     , Bill Traynor wrote:
> I have an Editor account for the kernelnewbies.org wiki, but all pages
> are currently immutable.  Was the wiki made read-only at some point?

You must be on http://kernelnewbies.org/EditorsGroup to make changes. This
was made for spam procection. Everybody who is on the list can add you. What
is your username in the wiki?

	-Michi
--

-- 
programing a layer 3+4 network protocol for mesh networks
see http://michaelblizek.twilightparadox.com
Bill Traynor | 2 May 2012 14:06
Gravatar

Re: immutable wiki?

On Wed, May 2, 2012 at 6:52 AM,
<michi1 <at> michaelblizek.twilightparadox.com> wrote:
> Hi!
>
> On 09:29 Tue 01 May     , Bill Traynor wrote:
>> I have an Editor account for the kernelnewbies.org wiki, but all pages
>> are currently immutable.  Was the wiki made read-only at some point?
>
> You must be on http://kernelnewbies.org/EditorsGroup to make changes. This
> was made for spam procection. Everybody who is on the list can add you. What
> is your username in the wiki?

Thanks Michael, Rik already fixed it for me.

>
>        -Michi
> --
> programing a layer 3+4 network protocol for mesh networks
> see http://michaelblizek.twilightparadox.com
Panagiotis Sakkos | 2 May 2012 15:43
Picon
Picon

Crash when sending a lot of messages through a unix socket

Hi,

I am trying to log information from within the kernel with the use of a unix socket (/dev/log).
My code is a kprobe handler, so while executing I am atomic and uninterrupted.
The crashes begin when I do stress tests against my module, so i.e. more than 50 logs per second.
The crash messages I get every time are different (from NULL reference, unable to handle page request etc), so I suppose that something is overwritten and this leads to the crash.
 
I don't want to post the code here because it ~100 LOC but these are my steps:

Initialization:
       call sock_create_kern, with PF_UNIX, SOCK_DGRAM, 0 and the address of my socket,
       then I memset to 0 my sockaddr_un variable and then I set its sun_family to PF_UNIX and copy the "/dev/log" string to sun_path

Logging:
    I have the message that I want to log in variable called buffer and its length in variable called message_length,
    I set the msg_name of the msghdr to the address of my sockaddr_un variable, than the msn_namelen to sizeof(sockadrr_un), the msg_iov to an iovec variable which contains the buffer and the message_length values, msg_iovlen to 1 and msg_control, msg_controllen to 0.
    Then I set the fs to KERNEL_DS, call sock_sendmsg with parameters my socket, the address of my msghdr and the message_length and then I restore the fs that there was before setting it to KERNEL_DS.

Please note that my socket, sockadd_un and my buffer are static variables. Also I always use the socket which is initialized once in the Initialization state (function).

Do you see any "bad practice" or something that could lead to crashes when stressing with a lot of messages the socket?

Thank you in advance!
Panos
--
http://www.cern.ch/psakkos
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies <at> kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Vimal | 2 May 2012 18:17
Picon

Dropping one packet in a coalesced skb

Hi,

I have LSO enabled on my machine, and hence a single skb can
(possibly) be multiple packets on the wire.  I am writing a kernel
module that tries dropping packets.  Is there a way to drop just one
1500B sized TCP packet inside an skb that can be a 64KB TCP segment?
This segment has about 40 packets due to LSO, and I don't want to drop
all of them; just a few (2--3) packets.

Can the effect be achieved if I modify skb_shinfo(skb)->gso_segs, or nr_frags?

Thanks,
--

-- 
Vimal
Mulyadi Santosa | 2 May 2012 19:55
Picon

Re: Crash when sending a lot of messages through a unix socket

Hi :)

On Wed, May 2, 2012 at 8:43 PM, Panagiotis Sakkos <panos.sakkos <at> cern.ch> wrote:
> Hi,
>
> I am trying to log information from within the kernel with the use of a unix
> socket (/dev/log).
> My code is a kprobe handler, so while executing I am atomic and
> uninterrupted.
> The crashes begin when I do stress tests against my module, so i.e. more
> than 50 logs per second.
>

Maybe that's the problem......under "rapid" call, kprobe handler must
allocate stack for unwinding the call more and more. Not to mention
that it began to push reentrancy problem to the surface.

Regarding reentrancy, IMO think like this...your handler called
once...ok fine, twice, perhaps still fine...but maybe more than 50 per
sec, not to mention the possibility that they are executed by more
than 1 core at once, perhaps that's the problem. race condition....

--

-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com
Pranay Kumar Srivastava | 2 May 2012 22:31
Favicon

RE: Crash when sending a lot of messages through a unix socket

You mentioned your code is atomic. Are you certain that you can do a sock_sendmsg from a non process context?
I believe you can't do that from a non process context cuz sock_sendmsg-->udp_sendmsg for DGRAM and i
think that assumes you are in process context.

________________________________________
From: kernelnewbies-bounces <at> kernelnewbies.org [kernelnewbies-bounces <at> kernelnewbies.org] On
Behalf Of kernelnewbies-request <at> kernelnewbies.org [kernelnewbies-request <at> kernelnewbies.org]
Sent: Wednesday, May 02, 2012 9:30 PM
To: kernelnewbies <at> kernelnewbies.org
Subject: Kernelnewbies Digest, Vol 18, Issue 2

Send Kernelnewbies mailing list submissions to
        kernelnewbies <at> kernelnewbies.org

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
or, via email, send a message with subject or body 'help' to
        kernelnewbies-request <at> kernelnewbies.org

You can reach the person managing the list at
        kernelnewbies-owner <at> kernelnewbies.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Kernelnewbies digest..."

Today's Topics:

   1. please report distros with CONFIG_DYNAMIC_DEBUG, using
      ddebug_query=     boot param (Jim Cromie)
   2. Re: immutable wiki? (michi1 <at> michaelblizek.twilightparadox.com)
   3. Re: immutable wiki? (Bill Traynor)
   4. Crash when sending a lot of messages through a unix socket
      (Panagiotis Sakkos)

----------------------------------------------------------------------

Message: 1
Date: Tue, 1 May 2012 12:36:04 -0600
From: Jim Cromie <jim.cromie <at> gmail.com>
Subject: please report distros with CONFIG_DYNAMIC_DEBUG, using
        ddebug_query=   boot param
To: kernelnewbies <kernelnewbies <at> kernelnewbies.org>
Message-ID:
        <CAJfuBxw8aYimAU7kO42vh_e-zZBNSkw9Hd8Dx2tFCOWL4ueVgQ <at> mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1

hi all,

Ive been asked whether ddebug_query= boot param is used in any distros,
I think the question seeks to determine a good deprecation schedule for it
(its been obsoleted by dyndbg= in driver-core-next)

Would you all be so kind as to check your favorite distros, and report
the ones that
have one or both ?

Ubuntu 12.04 LTS lacks it:

jimc <at> chumly:~/projects/lx/linux-2.6$ grep DYNAMIC_DEBUG /boot/config*
/boot/config-3.0.0-17-generic:# CONFIG_DYNAMIC_DEBUG is not set
/boot/config-3.2.0-24-generic:# CONFIG_DYNAMIC_DEBUG is not set

Voyage linux also lacks it, (also debian based)

Fedora-16 has config option:

$ uname -a
Linux groucho.jimc.earth 3.3.2-6.fc16.x86_64 #1 SMP Sat Apr 21
12:43:20 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
$ grep DYNAMIC_DEBUG /boot/config-3.3.*
/boot/config-3.3.1-5.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y
/boot/config-3.3.2-1.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y
/boot/config-3.3.2-6.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y

but its not used by default. I have modified my grub defaults:

$ grep ddebug_query /etc/default/grub
GRUB_CMDLINE_LINUX='quiet rhgb loglevel=8 ddebug_query="module params
+p" dynamic_debug.verbose=1 nouveau.dyndbg nouveau.force_post=1
it87.dyndbg=+p nouveau.perflvl_wr=7777'

FYI, the above usage will eventually be unsupported,
it can be replaced in driver-core-next by either of:

  dyndbg="module params +p"
  params.dyndbg=+p
  params.dyndbg          # defaults to +p

the 2nd, 3rd forms also work for loadable modules (though params isnt
one of them)

thanks in advance
Jim

------------------------------

Message: 2
Date: Wed, 2 May 2012 12:52:38 +0200
From: michi1 <at> michaelblizek.twilightparadox.com
Subject: Re: immutable wiki?
To: Bill Traynor <wmat <at> alphatroop.com>
Cc: kernelnewbies <at> kernelnewbies.org
Message-ID: <20120502105237.GA2229 <at> grml>
Content-Type: text/plain; charset=us-ascii

Hi!

On 09:29 Tue 01 May     , Bill Traynor wrote:
> I have an Editor account for the kernelnewbies.org wiki, but all pages
> are currently immutable.  Was the wiki made read-only at some point?

You must be on http://kernelnewbies.org/EditorsGroup to make changes. This
was made for spam procection. Everybody who is on the list can add you. What
is your username in the wiki?

        -Michi
--
programing a layer 3+4 network protocol for mesh networks
see http://michaelblizek.twilightparadox.com

------------------------------

Message: 3
Date: Wed, 2 May 2012 08:06:36 -0400
From: Bill Traynor <wmat <at> alphatroop.com>
Subject: Re: immutable wiki?
To: michi1 <at> michaelblizek.twilightparadox.com
Cc: kernelnewbies <at> kernelnewbies.org
Message-ID:
        <CAGfZjq69kO91rbiG8R5jTUmRDq3ZJRjp_oTLqS8wji1M=1NJ-Q <at> mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1

On Wed, May 2, 2012 at 6:52 AM,
<michi1 <at> michaelblizek.twilightparadox.com> wrote:
> Hi!
>
> On 09:29 Tue 01 May ? ? , Bill Traynor wrote:
>> I have an Editor account for the kernelnewbies.org wiki, but all pages
>> are currently immutable. ?Was the wiki made read-only at some point?
>
> You must be on http://kernelnewbies.org/EditorsGroup to make changes. This
> was made for spam procection. Everybody who is on the list can add you. What
> is your username in the wiki?

Thanks Michael, Rik already fixed it for me.

>
> ? ? ? ?-Michi
> --
> programing a layer 3+4 network protocol for mesh networks
> see http://michaelblizek.twilightparadox.com

------------------------------

Message: 4
Date: Wed, 2 May 2012 13:43:41 +0000
From: Panagiotis Sakkos <panos.sakkos <at> cern.ch>
Subject: Crash when sending a lot of messages through a unix socket
To: "kernelnewbies <at> kernelnewbies.org"
        <kernelnewbies <at> kernelnewbies.org>
Message-ID:
        <A1F86B12A2E22C4CB3164ECFFD1C54DB08EC9407 <at> PLOXCHG03.cern.ch>
Keywords: CERN SpamKiller Note: -50
Content-Type: text/plain; charset="iso-8859-1"

Hi,

I am trying to log information from within the kernel with the use of a unix socket (/dev/log).
My code is a kprobe handler, so while executing I am atomic and uninterrupted.
The crashes begin when I do stress tests against my module, so i.e. more than 50 logs per second.
The crash messages I get every time are different (from NULL reference, unable to handle page request etc),
so I suppose that something is overwritten and this leads to the crash.

I don't want to post the code here because it ~100 LOC but these are my steps:

Initialization:
       call sock_create_kern, with PF_UNIX, SOCK_DGRAM, 0 and the address of my socket,
       then I memset to 0 my sockaddr_un variable and then I set its sun_family to PF_UNIX and copy the "/dev/log"
string to sun_path

Logging:
    I have the message that I want to log in variable called buffer and its length in variable called message_length,
    I set the msg_name of the msghdr to the address of my sockaddr_un variable, than the msn_namelen to
sizeof(sockadrr_un), the msg_iov to an iovec variable which contains the buffer and the message_length
values, msg_iovlen to 1 and msg_control, msg_controllen to 0.
    Then I set the fs to KERNEL_DS, call sock_sendmsg with parameters my socket, the address of my msghdr and the
message_length and then I restore the fs that there was before setting it to KERNEL_DS.

Please note that my socket, sockadd_un and my buffer are static variables. Also I always use the socket
which is initialized once in the Initialization state (function).

Do you see any "bad practice" or something that could lead to crashes when stressing with a lot of messages
the socket?

Thank you in advance!
Panos
--
http://www.cern.ch/psakkos
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120502/271a5a4d/attachment-0001.html

------------------------------

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies <at> kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

End of Kernelnewbies Digest, Vol 18, Issue 2
********************************************


::DISCLAIMER::
-----------------------------------------------------------------------------------------------------------------------

The contents of this e-mail and any attachment(s) are confidential and intended for the named
recipient(s) only.
E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted,
lost, destroyed, arrive late or incomplete, or contain viruses.The e mail and its contents (with or
without referred
errors) shall therefore not attach any liability on the originator or HCL or its affiliates. Any views or opinions
presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL or its
affiliates. Any form of reproduction, dissemination, copying, disclosure, Modification,
distribution and/or publication
of this message without the prior written consent of the author of this e-mail is strictly prohibited. If
you have
received this email in error please delete it and notify the sender immediately. Before opening any mail
and attachments
please check them for viruses and defect.

-----------------------------------------------------------------------------------------------------------------------
Panagiotis Sakkos | 2 May 2012 22:51
Picon
Picon

Re: Crash when sending a lot of messages through a unix socket

Hi Pranay,

This code logs the messages without problem if I don't stress it, so I suppose you can.
If you want I will commit tomorrow my changes on github and I will send you the url to have a look.

Cheers,
Panos

On May 2, 2012, at 10:31 PM, Pranay Kumar Srivastava wrote:

> You mentioned your code is atomic. Are you certain that you can do a sock_sendmsg from a non process
context? I believe you can't do that from a non process context cuz sock_sendmsg-->udp_sendmsg for DGRAM
and i think that assumes you are in process context.
> 
> ________________________________________
> From: kernelnewbies-bounces <at> kernelnewbies.org [kernelnewbies-bounces <at> kernelnewbies.org] On
Behalf Of kernelnewbies-request <at> kernelnewbies.org [kernelnewbies-request <at> kernelnewbies.org]
> Sent: Wednesday, May 02, 2012 9:30 PM
> To: kernelnewbies <at> kernelnewbies.org
> Subject: Kernelnewbies Digest, Vol 18, Issue 2
> 
> Send Kernelnewbies mailing list submissions to
>        kernelnewbies <at> kernelnewbies.org
> 
> To subscribe or unsubscribe via the World Wide Web, visit
>        http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
> or, via email, send a message with subject or body 'help' to
>        kernelnewbies-request <at> kernelnewbies.org
> 
> You can reach the person managing the list at
>        kernelnewbies-owner <at> kernelnewbies.org
> 
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Kernelnewbies digest..."
> 
> 
> Today's Topics:
> 
>   1. please report distros with CONFIG_DYNAMIC_DEBUG, using
>      ddebug_query=     boot param (Jim Cromie)
>   2. Re: immutable wiki? (michi1 <at> michaelblizek.twilightparadox.com)
>   3. Re: immutable wiki? (Bill Traynor)
>   4. Crash when sending a lot of messages through a unix socket
>      (Panagiotis Sakkos)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Tue, 1 May 2012 12:36:04 -0600
> From: Jim Cromie <jim.cromie <at> gmail.com>
> Subject: please report distros with CONFIG_DYNAMIC_DEBUG, using
>        ddebug_query=   boot param
> To: kernelnewbies <kernelnewbies <at> kernelnewbies.org>
> Message-ID:
>        <CAJfuBxw8aYimAU7kO42vh_e-zZBNSkw9Hd8Dx2tFCOWL4ueVgQ <at> mail.gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1
> 
> hi all,
> 
> Ive been asked whether ddebug_query= boot param is used in any distros,
> I think the question seeks to determine a good deprecation schedule for it
> (its been obsoleted by dyndbg= in driver-core-next)
> 
> Would you all be so kind as to check your favorite distros, and report
> the ones that
> have one or both ?
> 
> Ubuntu 12.04 LTS lacks it:
> 
> jimc <at> chumly:~/projects/lx/linux-2.6$ grep DYNAMIC_DEBUG /boot/config*
> /boot/config-3.0.0-17-generic:# CONFIG_DYNAMIC_DEBUG is not set
> /boot/config-3.2.0-24-generic:# CONFIG_DYNAMIC_DEBUG is not set
> 
> Voyage linux also lacks it, (also debian based)
> 
> 
> Fedora-16 has config option:
> 
> $ uname -a
> Linux groucho.jimc.earth 3.3.2-6.fc16.x86_64 #1 SMP Sat Apr 21
> 12:43:20 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
> $ grep DYNAMIC_DEBUG /boot/config-3.3.*
> /boot/config-3.3.1-5.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y
> /boot/config-3.3.2-1.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y
> /boot/config-3.3.2-6.fc16.x86_64:CONFIG_DYNAMIC_DEBUG=y
> 
> but its not used by default. I have modified my grub defaults:
> 
> $ grep ddebug_query /etc/default/grub
> GRUB_CMDLINE_LINUX='quiet rhgb loglevel=8 ddebug_query="module params
> +p" dynamic_debug.verbose=1 nouveau.dyndbg nouveau.force_post=1
> it87.dyndbg=+p nouveau.perflvl_wr=7777'
> 
> FYI, the above usage will eventually be unsupported,
> it can be replaced in driver-core-next by either of:
> 
>  dyndbg="module params +p"
>  params.dyndbg=+p
>  params.dyndbg          # defaults to +p
> 
> the 2nd, 3rd forms also work for loadable modules (though params isnt
> one of them)
> 
> 
> thanks in advance
> Jim
> 
> 
> 
> ------------------------------
> 
> Message: 2
> Date: Wed, 2 May 2012 12:52:38 +0200
> From: michi1 <at> michaelblizek.twilightparadox.com
> Subject: Re: immutable wiki?
> To: Bill Traynor <wmat <at> alphatroop.com>
> Cc: kernelnewbies <at> kernelnewbies.org
> Message-ID: <20120502105237.GA2229 <at> grml>
> Content-Type: text/plain; charset=us-ascii
> 
> Hi!
> 
> On 09:29 Tue 01 May     , Bill Traynor wrote:
>> I have an Editor account for the kernelnewbies.org wiki, but all pages
>> are currently immutable.  Was the wiki made read-only at some point?
> 
> You must be on http://kernelnewbies.org/EditorsGroup to make changes. This
> was made for spam procection. Everybody who is on the list can add you. What
> is your username in the wiki?
> 
>        -Michi
> --
> programing a layer 3+4 network protocol for mesh networks
> see http://michaelblizek.twilightparadox.com
> 
> 
> 
> ------------------------------
> 
> Message: 3
> Date: Wed, 2 May 2012 08:06:36 -0400
> From: Bill Traynor <wmat <at> alphatroop.com>
> Subject: Re: immutable wiki?
> To: michi1 <at> michaelblizek.twilightparadox.com
> Cc: kernelnewbies <at> kernelnewbies.org
> Message-ID:
>        <CAGfZjq69kO91rbiG8R5jTUmRDq3ZJRjp_oTLqS8wji1M=1NJ-Q <at> mail.gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1
> 
> On Wed, May 2, 2012 at 6:52 AM,
> <michi1 <at> michaelblizek.twilightparadox.com> wrote:
>> Hi!
>> 
>> On 09:29 Tue 01 May ? ? , Bill Traynor wrote:
>>> I have an Editor account for the kernelnewbies.org wiki, but all pages
>>> are currently immutable. ?Was the wiki made read-only at some point?
>> 
>> You must be on http://kernelnewbies.org/EditorsGroup to make changes. This
>> was made for spam procection. Everybody who is on the list can add you. What
>> is your username in the wiki?
> 
> Thanks Michael, Rik already fixed it for me.
> 
>> 
>> ? ? ? ?-Michi
>> --
>> programing a layer 3+4 network protocol for mesh networks
>> see http://michaelblizek.twilightparadox.com
> 
> 
> 
> ------------------------------
> 
> Message: 4
> Date: Wed, 2 May 2012 13:43:41 +0000
> From: Panagiotis Sakkos <panos.sakkos <at> cern.ch>
> Subject: Crash when sending a lot of messages through a unix socket
> To: "kernelnewbies <at> kernelnewbies.org"
>        <kernelnewbies <at> kernelnewbies.org>
> Message-ID:
>        <A1F86B12A2E22C4CB3164ECFFD1C54DB08EC9407 <at> PLOXCHG03.cern.ch>
> Keywords: CERN SpamKiller Note: -50
> Content-Type: text/plain; charset="iso-8859-1"
> 
> Hi,
> 
> I am trying to log information from within the kernel with the use of a unix socket (/dev/log).
> My code is a kprobe handler, so while executing I am atomic and uninterrupted.
> The crashes begin when I do stress tests against my module, so i.e. more than 50 logs per second.
> The crash messages I get every time are different (from NULL reference, unable to handle page request
etc), so I suppose that something is overwritten and this leads to the crash.
> 
> I don't want to post the code here because it ~100 LOC but these are my steps:
> 
> Initialization:
>       call sock_create_kern, with PF_UNIX, SOCK_DGRAM, 0 and the address of my socket,
>       then I memset to 0 my sockaddr_un variable and then I set its sun_family to PF_UNIX and copy the "/dev/log"
string to sun_path
> 
> Logging:
>    I have the message that I want to log in variable called buffer and its length in variable called message_length,
>    I set the msg_name of the msghdr to the address of my sockaddr_un variable, than the msn_namelen to
sizeof(sockadrr_un), the msg_iov to an iovec variable which contains the buffer and the message_length
values, msg_iovlen to 1 and msg_control, msg_controllen to 0.
>    Then I set the fs to KERNEL_DS, call sock_sendmsg with parameters my socket, the address of my msghdr and
the message_length and then I restore the fs that there was before setting it to KERNEL_DS.
> 
> Please note that my socket, sockadd_un and my buffer are static variables. Also I always use the socket
which is initialized once in the Initialization state (function).
> 
> Do you see any "bad practice" or something that could lead to crashes when stressing with a lot of messages
the socket?
> 
> Thank you in advance!
> Panos
> --
> http://www.cern.ch/psakkos
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120502/271a5a4d/attachment-0001.html
> 
> ------------------------------
> 
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies <at> kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
> 
> 
> End of Kernelnewbies Digest, Vol 18, Issue 2
> ********************************************
> 
> 
> 
> ::DISCLAIMER::
> -----------------------------------------------------------------------------------------------------------------------
> 
> The contents of this e-mail and any attachment(s) are confidential and intended for the named
recipient(s) only.
> E-mail transmission cannot be guaranteed to be secure or error-free as information could be
intercepted, corrupted,
> lost, destroyed, arrive late or incomplete, or contain viruses.The e mail and its contents (with or
without referred
> errors) shall therefore not attach any liability on the originator or HCL or its affiliates. Any views or opinions
> presented in this email are solely those of the author and may not necessarily reflect the opinions of HCL
or its
> affiliates. Any form of reproduction, dissemination, copying, disclosure, Modification,
distribution and/or publication
> of this message without the prior written consent of the author of this e-mail is strictly prohibited. If
you have
> received this email in error please delete it and notify the sender immediately. Before opening any mail
and attachments
> please check them for viruses and defect.
> 
> -----------------------------------------------------------------------------------------------------------------------

Gmane