Re: profile code added to netif_receive_skb function

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: kernel coder <lhrkernelcoder@...>
Cc: <linux-kernel@...>
Date: Tuesday, November 27, 2007 - 12:00 am

On Sun, 25 Nov 2007 21:46:26 PST, kernel coder said:

The trick is to write your code so it doesn't *matter* if other code runs.

For example - the timer interrupt almost certainly doesn't look at or modify
any of *your* code's variables.  So 98% of the kernel's code you don't
even have to *care* if it runs (as long as you aren't doing something
real-time or has similar response-time or throughput constraints).

And if you are worried about that other 2%, where related code, for example the
IRQ handler for a network interface, may have to look at and/or modify some of
your variables, that's when you should be using appropriate locking - there's
mutexes, semaphores, the whole RCU family, and more - none of which I'll
attempt to explain, because I'm not all that good at that stuff.

Basic rule of thumb - if you have something that will break if two things
access it at the same time, put a lock around it, so they take turns.
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
profile code added to netif_receive_skb function, kernel coder, (Mon Nov 26, 1:46 am)
Re: profile code added to netif_receive_skb function, , (Tue Nov 27, 12:00 am)